|
|
|
/*
|
|
|
|
* 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 <SoftRS485.h>
|
|
|
|
|
|
|
|
#define Max485_RO 3 // read-output of Max485
|
|
|
|
#define Max485_RE 5 // not-read-enable of Max485
|
|
|
|
#define Max485_DE 9 // data enable of Max485
|
|
|
|
#define Max485_DI 8 // data input of Max485
|
|
|
|
|
|
|
|
#define PROGRAM "{hw:RS485-Nano rev 2.0,firmware:Transceiver,version:1.0}"
|
|
|
|
|
|
|
|
String message = "";
|
|
|
|
char c;
|
|
|
|
void setup() {
|
|
|
|
Serial.begin(115200);
|
|
|
|
init485(Max485_RO,Max485_RE,Max485_DE,Max485_DI); // library initialization:
|
|
|
|
send485(PROGRAM);
|
|
|
|
}
|
|
|
|
|
|
|
|
void loop() {
|
|
|
|
if (available485()) Serial.println(get485message());
|
|
|
|
if (Serial.available()) {
|
|
|
|
c = (char)Serial.read();
|
|
|
|
if (c == '\n') {
|
|
|
|
send485(message.c_str());
|
|
|
|
message = "";
|
|
|
|
} else {
|
|
|
|
message += c;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|