/* * Demonstrates how to use LCDisplay in conjunction with SoftRS485: * * The main _loop_ of this program listens on the RS485 bus. * Whenever a message is received from the bus, it is displayed on the LCD. */ // include the library code: #include #include #define Max485_RO 2 // read-output of Max485 #define Max485_RE 8 // not-read-enable of Max485 #define Max485_DE 8 // data enable of Max485 #define Max485_DI 9 // data input of Max485 #define LCD_RS 10 #define LCD_EN 11 #define LCD_D4 4 #define LCD_D5 5 #define LCD_D6 6 #define LCD_D7 7 #define PROGRAM "RS485-Nano 2.1 / LCDReceive 1.2" // initialize the library by associating any needed LCD interface pin with the arduino pin number it is connected to LiquidCrystal lcd(LCD_RS, LCD_EN, LCD_D4, LCD_D5, LCD_D6, LCD_D7); void setup() { Serial.begin(115200); init485(Max485_RO,Max485_RE,Max485_DE,Max485_DI); // library initialization: invert485polarity(true); // set up the LCD's number of columns and rows: lcd.begin(16, 2); // Print a message to the LCD. printMessage(PROGRAM); } void printMessage(String s){ Serial.println(s); lcd.clear(); lcd.setCursor(0, 0); lcd.print(s); if (s.length()>16) { lcd.setCursor(0, 1); s=s.substring(16); s.trim(); lcd.print(s); } } void loop() { if (available485()) { printMessage(get485message()); } }