added LCDReceive example
Signed-off-by: Stephan Richter <s.richter@srsoftware.de>
This commit is contained in:
81
examples/LCDReceive/LCDReceive.ino
Normal file
81
examples/LCDReceive/LCDReceive.ino
Normal file
@@ -0,0 +1,81 @@
|
|||||||
|
/*
|
||||||
|
LiquidCrystal Library - Hello World
|
||||||
|
|
||||||
|
Demonstrates the use a 16x2 LCD display. The LiquidCrystal
|
||||||
|
library works with all LCD displays that are compatible with the
|
||||||
|
Hitachi HD44780 driver. There are many of them out there, and you
|
||||||
|
can usually tell them by the 16-pin interface.
|
||||||
|
|
||||||
|
This sketch prints "Hello World!" to the LCD
|
||||||
|
and shows the time.
|
||||||
|
|
||||||
|
The circuit:
|
||||||
|
* LCD RS pin to digital pin 12
|
||||||
|
* LCD Enable pin to digital pin 11
|
||||||
|
* LCD D4 pin to digital pin 5
|
||||||
|
* LCD D5 pin to digital pin 4
|
||||||
|
* LCD D6 pin to digital pin 3
|
||||||
|
* LCD D7 pin to digital pin 2
|
||||||
|
* LCD R/W pin to ground
|
||||||
|
* LCD VSS pin to ground
|
||||||
|
* LCD VCC pin to 5V
|
||||||
|
* 10K resistor:
|
||||||
|
* ends to +5V and ground
|
||||||
|
* wiper to LCD VO pin (pin 3)
|
||||||
|
|
||||||
|
Library originally added 18 Apr 2008
|
||||||
|
by David A. Mellis
|
||||||
|
library modified 5 Jul 2009
|
||||||
|
by Limor Fried (http://www.ladyada.net)
|
||||||
|
example added 9 Jul 2009
|
||||||
|
by Tom Igoe
|
||||||
|
modified 22 Nov 2010
|
||||||
|
by Tom Igoe
|
||||||
|
modified 7 Nov 2016
|
||||||
|
by Arturo Guadalupi
|
||||||
|
|
||||||
|
This example code is in the public domain.
|
||||||
|
|
||||||
|
http://www.arduino.cc/en/Tutorial/LiquidCrystalHelloWorld
|
||||||
|
|
||||||
|
*/
|
||||||
|
|
||||||
|
// include the library code:
|
||||||
|
#include <LiquidCrystal.h>
|
||||||
|
#include <SoftRS485.h>
|
||||||
|
|
||||||
|
// initialize the library by associating any needed LCD interface pin
|
||||||
|
// with the arduino pin number it is connected to
|
||||||
|
const int rs = 12, en = 11, d4 = 4, d5 = 5, d6 = 6, d7 = 7;
|
||||||
|
LiquidCrystal lcd(rs, en, d4, d5, d6, d7);
|
||||||
|
|
||||||
|
void setup() {
|
||||||
|
Serial.begin(115200);
|
||||||
|
// set up the LCD's number of columns and rows:
|
||||||
|
lcd.begin(16, 2);
|
||||||
|
// Print a message to the LCD.
|
||||||
|
lcd.print("hello, world!");
|
||||||
|
init485(2,3,8,9); // library initialization:
|
||||||
|
// connect pin 2 to RO of Max485
|
||||||
|
// connect pin 3 to ^RE of Max485
|
||||||
|
// connect pin 8 to DE of Max485
|
||||||
|
// connect pin 9 to DI of Max485
|
||||||
|
}
|
||||||
|
|
||||||
|
void loop() {
|
||||||
|
|
||||||
|
if (available485()) {
|
||||||
|
// set the cursor to column 0, line 1
|
||||||
|
// (note: line 1 is the second row, since counting begins with 0):
|
||||||
|
String s = get485message();
|
||||||
|
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);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -19,6 +19,7 @@ void setup() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
void loop() {
|
void loop() {
|
||||||
|
delay(2000);
|
||||||
// read without samples.
|
// read without samples.
|
||||||
byte temperature = 0;
|
byte temperature = 0;
|
||||||
byte humidity = 0;
|
byte humidity = 0;
|
||||||
@@ -29,7 +30,6 @@ void loop() {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
count++;
|
count++;
|
||||||
String s = String(count)+" - Sample OK: "+ String(temperature)+" *C, "+String(humidity)+"% rel";
|
String s = "Sample "+String(count)+" ok: "+ String(temperature)+" *C, "+String(humidity)+"% rel";
|
||||||
send485(s.c_str());
|
send485(s.c_str());
|
||||||
delay(5000);
|
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user