[vc_row][vc_column][vc_column_text]
Introduction
The serial UART 16×2 LCD allows you to control a parallel based LCD over a single-wire serial interface. The serial LCD takes care of all the HD44780 commands allowing seamless integration with any micro that can communicate over a wide range of TTL serial baud rates. The
Communication with Serial 16×2 LCD requires 5V TTL serial at a default baud rate of 9600bps (8-N-1). You can adjust the baud to any standard rate between 2400 and 38400bps. The power, ground and RX pins are all broken out to a 4-pin 2.54mm pitch header.
Serial 16×2 LCD has the ability to dim the backlight to conserve power if needed. There is also a potentiometer on the backpack to adjust the contrast.
[/vc_column_text][/vc_column][/vc_row][vc_row][vc_column width=”1/1″][vc_tour][vc_tab title=”Parts list” tab_id=”1394075283-1-63″][vc_column_text]one arduino uno
one Serial UART 16 × 2 LCD
Several DuPont wires[/vc_column_text][/vc_tab][vc_tab title=”Wiring diagram” tab_id=”1394075283-2-40″][vc_column_text]Serial UART 16×2 LCD GND -> Arduino GND
Serial UART 16×2 LCD 5V -> Arduino +5V
Serial UART 16×2 LCD Rx -> Arduino D3[/vc_column_text][/vc_tab][vc_tab title=”Test code” tab_id=”1394075522324-2-1″][vc_column_text]
#include <SoftwareSerial.h> #define txPin 2 SoftwareSerial LCD = SoftwareSerial(0, txPin); // since the LCD does not send data back to the Arduino, we should only define the txPin const int LCDdelay=10; // conservative, 2 actually works // wbp: goto with row & column void lcdPosition(int row, int col) { LCD.write(0xFE); //command flag LCD.write((col + row*64 + 128)); //position delay(LCDdelay); } void clearLCD(){ LCD.write(0xFE); //command flag LCD.write(0x01); //clear command. delay(LCDdelay); } void backlightOn() { //turns on the backlight LCD.write(0x7C); //command flag for backlight stuff LCD.write(157); //light level. delay(LCDdelay); } void backlightOff(){ //turns off the backlight LCD.write(0x7C); //command flag for backlight stuff LCD.write(128); //light level for off. delay(LCDdelay); } void serCommand(){ //a general function to call the command flag for issuing all other commands LCD.write(0xFE); } void setup() { pinMode(txPin, OUTPUT); LCD.begin(9600); backlightOn() ; clearLCD(); lcdPosition(0,0); LCD.print("Hello world from LinkSprite!"); } void loop() { }
[/vc_column_text][/vc_tab][vc_tab title=”The results” tab_id=”1394075523500-3-9″][vc_column_text][/vc_column_text][vc_column_text]
Serial UART 16×2 LCD display successfully:Hello World from LinkSprite.[/vc_column_text][/vc_tab][/vc_tour][/vc_column][/vc_row]
Leave a Reply
You must be logged in to post a comment.