March 6, 2021

LCD display satellite name,azimuth and elevation. part-2

Thanks you all for your interesting in my previous post , the( LCD display Satellite Name,Azimuth and Elevation.)
Many asking for the Arduino code.so here is the code with some hints for the setup.

I added a label texts to the 2nd low row of the LCD. see below photos .



Download and unzip the DdeOrbitronToSerial to temp folder.
Copy the ( DDEOrbitronToSerial.exe) folder and place it inside Orbitron Config folder..
See photo.
Clear any old text below the [Drivers] at Orbitron\Config\Setup.cfg .





When you Click DRIVER button at Orbitron,a window will popup ask you where the the DDEOrbitronToSerial.exe application .
Browse to Orbitron Config file and select it , now the DDEOrbitronToSerial application should launch and you will be able to select your com port and output the satellite data to the serial port. .

I found the DDEOrbitronToSerial sent data to 1st row only. !! so I added in my code a label text to the 2nd row. see photos above...








...

More about DdeOrbitronToSerial see http://tripsintech.com/

//======================Arduino LCD display code==========================

//LCD DISPLAY SAT NAME ,AZ AND EL...DE ST2NH 1-3-2021
// include library ..

#include <LiquidCrystal.h>
//LCD pin to Arduino
const int pin_RS = 8;
const int pin_EN = 9;
const int pin_d4 = 4;
const int pin_d5 = 5;
const int pin_d6 = 6;
const int pin_d7 = 7;
const int pin_BL = 10;
LiquidCrystal lcd( pin_RS, pin_EN, pin_d4, pin_d5, pin_d6, pin_d7);

void setup() {
lcd.begin(16, 2); // this for lower row
Serial.begin(9600); // speed
lcd.print("WAITING FOR DATA ");
// delay(1000);
}
void loop() {
// seting LCD for the lower row (0, 2) to print satellite name/AZ/EL ..
//The firest row writing by the DDE and Orbitron software??? see the blog for more info....
//At Orbitron to Serial their are many chooses for the data to be print on the 1st row..

lcd.setCursor(0, 2); // low raw
lcd.print(" NAME AZ EL"); // adjust space between words
//to fit on the lcd display

if (Serial.available()) //data from PC available
{
//wait and clear the display !!
delay(100);
lcd.clear();

while (Serial.available() > 0) //if data is here from the PC write the 1st raw..

{
lcd.write(Serial.read());
}
}
}


//======================Arduino LCD display code==========================

No comments: