updated TempSender and LCDReceiver
Signed-off-by: Stephan Richter <s.richter@srsoftware.de>
This commit is contained in:
@@ -23,36 +23,38 @@
|
||||
#define LCD_D6 12
|
||||
#define LCD_D7 13
|
||||
|
||||
|
||||
|
||||
// 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.
|
||||
Serial.println(PROGRAM);
|
||||
lcd.print(PROGRAM);
|
||||
printMessage(PROGRAM);
|
||||
}
|
||||
|
||||
void printMessage(String s){
|
||||
Serial.println(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;
|
||||
lcd.print(cstr[i]);
|
||||
col++;
|
||||
if (cstr[i]==',' || col==16){
|
||||
line++;
|
||||
col=0;
|
||||
lcd.setCursor(col, line);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void loop() {
|
||||
if (available485()) {
|
||||
String s = get485message();
|
||||
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);
|
||||
}
|
||||
printMessage(get485message());
|
||||
}
|
||||
}
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
#include <SoftRS485.h>
|
||||
#include <AM2302-Sensor.h>
|
||||
|
||||
#define PROGRAM "RS485-Nano 2.0 / TempSender 1.2"
|
||||
#define VERSION "1.2"
|
||||
|
||||
#define BTN_INT 2 // button interrupt pin
|
||||
#define Max485_RO 3 // read-output of Max485
|
||||
@@ -64,7 +64,9 @@ void setup(){
|
||||
|
||||
attachInterrupt(digitalPinToInterrupt(BTN_INT),isr,CHANGE);
|
||||
// Print a message to the LCD.
|
||||
Serial.println(PROGRAM);
|
||||
String s = "{nano:"+String(ID)+",revision:2.0,TempSender:"+VERSION+"}";
|
||||
Serial.println(s);
|
||||
send485(s.c_str());
|
||||
#ifdef LOG_TO_SERIAL
|
||||
Serial.println("14 15 16 17 18 19 20 21");
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user