Go Down

Topic: Serial Enabled 16x2 LCD - Red on Black 3.3V (Read 2202 times) previous topic - next topic



I'm interested in these LCDs, since they use serial they do not consume alot of pins right?

But, is there a libary for these? And are there a guide to show whats pins goes where and etc.

- thanks
I'm from Norway!


Jul 31, 2009, 06:55 pm Last Edit: Jul 31, 2009, 07:06 pm by Sean Reason: 1
Power, Ground and a RX data pin that can either hook to your Arduino TXData pin 1 or any pin of your choice when using the SoftSerial library. So, basically Signal Ground and one Arduino pin are necessary for communications. If using Arduino pin 1, Serial.print with the necessary positioning and/or clear screen commands get you up and running pretty quickly on displaying output.

And note that the SparkFun display you mention is 3.3 Volts. If you are using the Arduino 2009, this might be supplied from the 3.3V pin but the current is limited, on other iterations like Boarduinos, you will need to arrange for 3.3V regulated. The spec on the SparkFun board
The SerLCD v2 has the ability to drive up to 1A directly for backlight control or as a general purpose high-power control pin.
kind of worries me, so I'd arrange a separate regulator circuit for it.

Modern Device http://www.moderndevice.com/LCD.shtml has a 5V Serial Kit I've built with great success that I use for my projects.

Ron C

Jul 31, 2009, 07:34 pm Last Edit: Jul 31, 2009, 07:35 pm by ronczap Reason: 1
I have the 5v white on black version and it works great http://www.sparkfun.com/commerce/product_info.php?products_id=813.

Not sure why you want the 3.3v or if that could be a problem with the Arduino 5v signals.

I use the NewSoftSerial library and the following constants
Code: [Select]
#define lcdcmd        0xFE   //command prefix
#define lcdcmd2      0x7C   //special command prefix
#define clrLCD        0x01   //Clear entire LCD screen
#define displayOff   0x08   //Display off
#define displayOn   0x0C   //Display on
#define noCurs       0x0C   //Make cursor invisible
#define ulCurs        0x0E   //Show underline cursor
#define blkCurs      0x0D   //Show blinking block cursor
#define curpos       0x80   //set cursor  + position  (row 1=0 to 15, row 2 = 64 to 79)
#define scrollRight 0x1C
#define scrollLeft   0x18
#define curRight    0x14
#define curLeft      0x10

#include <NewSoftSerial.h>
NewSoftSerial serLCD(255, 3);        //tx only
serLCD.print(lcdcmd, BYTE);
serLCD.print(curpos+2, BYTE);


I have one of these LCD's  using the hardware serial port, all commands work fine.  but with NewSoftSerial  the clear command just prints || across the screen.  Baudrate is 9600 on both Hardware and Software.

The other thing i notice when using hardware, when i set the line to 1 the text prints dark, when i set the line to2 (2x16 LCD 5v from sparkfun) the text is very light

Go Up