/*Author: BehindTheSciences.com */ #include // import the serial library #include #define trigPin 5 #define echoPin 6 #define RS 12 #define RW 2 #define EN 11 #define VO 13 #define D4 7 #define D5 8 #define D6 9 #define D7 10 SoftwareSerial ser(3, 4); // RX, TX String inData; // initialize the library with the numbers of the interface pins LiquidCrystal lcd(12, 11, 7, 8, 9, 10); void setup() { // Run Once Setup code ser.begin(9600); Serial.begin(9600); /*Initialisation of the LCD */ pinMode(D4, OUTPUT); pinMode(D5, OUTPUT); pinMode(D6, OUTPUT); pinMode(D7, OUTPUT); pinMode(EN, OUTPUT); digitalWrite(EN, HIGH); pinMode(RS, OUTPUT); digitalWrite(RS, LOW); pinMode(VO, OUTPUT); digitalWrite(VO, LOW); pinMode(RW, OUTPUT); digitalWrite(RW, LOW); delay(20); digitalWrite(D7, LOW); digitalWrite(D6, LOW); digitalWrite(D5, HIGH); digitalWrite(D4, HIGH); delay(10); digitalWrite(D7, LOW); digitalWrite(D6, LOW); digitalWrite(D5, HIGH); digitalWrite(D4, LOW); digitalWrite(D7, LOW); digitalWrite(D6, LOW); digitalWrite(D5, HIGH); digitalWrite(D4, LOW); digitalWrite(D7, HIGH); digitalWrite(D6, HIGH); digitalWrite(D7, LOW); digitalWrite(D6, LOW); digitalWrite(D5, LOW); digitalWrite(D4, LOW); digitalWrite(D7, HIGH); digitalWrite(D6, LOW); digitalWrite(D5, LOW); digitalWrite(D4, LOW); digitalWrite(D7, LOW); digitalWrite(D6, LOW); digitalWrite(D5, LOW); digitalWrite(D4, LOW); digitalWrite(D7, LOW); digitalWrite(D6, LOW); digitalWrite(D5, LOW); digitalWrite(D4, HIGH); digitalWrite(D7, LOW); digitalWrite(D6, LOW); digitalWrite(D5, LOW); digitalWrite(D4, LOW); digitalWrite(D7, LOW); digitalWrite(D6, HIGH); digitalWrite(D5, HIGH); digitalWrite(D4, HIGH); /*-----------------------*/ lcd.begin(16, 2); // Print a message to the LCD. lcd.setCursor(3, 0); lcd.print("Behind The"); lcd.setCursor(4, 1); lcd.print("Sciences"); delay(30); } void loop() { // put your main code here, to run repeatedly: while (ser.available() > 0) { char received = ser.read(); if (received != '\n'){ inData += received; } // Process message when new line character is received if (received == '\n') { lcd.clear(); lcd.setCursor(0, 0); lcd.print(inData); Serial.println(inData); inData = ""; // Clear received buffer } } delay(100);// Wait for 100 ms }