|
|
|
@ -23,17 +23,15 @@
@@ -23,17 +23,15 @@
|
|
|
|
|
|
|
|
|
|
#define PROGRAM "RS485-Nano 2.2 / 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); |
|
|
|
|
lcd.begin(16, 4); |
|
|
|
|
// Print a message to the LCD.
|
|
|
|
|
printMessage(PROGRAM); |
|
|
|
|
|
|
|
|
@ -41,15 +39,21 @@ void setup() {
@@ -41,15 +39,21 @@ void setup() {
|
|
|
|
|
|
|
|
|
|
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); |
|
|
|
|
}
|
|
|
|
|
lcd.clear();
|
|
|
|
|
int line = 0; |
|
|
|
|
int col = 0; |
|
|
|
|
auto cstr = s.c_str(); |
|
|
|
|
for (int i=0;i<s.length();i++){ |
|
|
|
|
if (col == 0 && cstr[i] == ' ') continue; |
|
|
|
|
if (cstr[i] == '{' || cstr[i] == '}') continue; |
|
|
|
|
lcd.print(cstr[i]); |
|
|
|
|
col++; |
|
|
|
|
if (cstr[i]==',' || col==16){ |
|
|
|
|
line++; |
|
|
|
|
col=0; |
|
|
|
|
lcd.setCursor(col, line); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
void loop() { |
|
|
|
|