How to interface this 16x2 RGB LCD?

Skip to first unread message

Apr 1, 2018, 9:59:57 PM4/1/18
to BeagleBoard
I am planning to interface this 16x2 LCD (datasheet: from to the Pocket Beagle.

But I don't know where to start.

Thanks and I am looking forward to your help.


Apr 2, 2018, 9:29:38 AM4/2/18
to BeagleBoard
Well. this is an old design, so it uses 5 Volts.interface. (preliminary data sheet from 2003)
The I/O on a Pocket-Beagle is 3.3 Volts.
You have to figure out how you  will deal with that.

It is a common 2 line LCD interface, so lots of sample code examples out there, but none ported to the PocketBeagle that I have seen.

You need to decide whether you will use the 4 data line interface, or the 8 data line interface version of the interface.

Although it is a common interface, it does not correspond to any of the hardware peripherals built into the PocketBeagle, so you will need to bit bang the interface on seven or eleven GPIO lines.

You will need to give us a clue as to which language you will be programming in, when you re-write the driver from sample code you can find.

--- Graham


Dennis Lee Bieber

Apr 2, 2018, 10:21:42 AM4/2/18
On Sun, 1 Apr 2018 18:59:57 -0700 (PDT), declaimed the

>I am planning to interface this 16x2 LCD (datasheet:
>from to the Pocket Beagle.
>But I don't know where to start.

The first step might be with bi-directional level shifters. The IN/OUT
voltages look be following TTL transition levels, and while the minimum
value for H is safe, the maximum value could be too high for the 3.3V
Beagles. You /might/ be able to drive it if you never connect to a
read-back pin, though you'll still need to provide it with a 5V power

This is a Parallel type display, and even in 4-bit mode, will require 7
GPIO pins (and 3 more if you don't hardwire the backlight color). In 8-bit
mode, you are looking at 11 GPIO (14 with backlight). I haven't checked the
processor documentation enough to know if there is a quick "port I/O"
capability -- having to set the data bits individually could be a bit
tedious (Yay! Subroutines!).
is the old Parallax (BASIC Stamp) documentation for a parallel LCD display;
the odds are good that the unit you are looking at has very similar

However, even Parallax have stopped selling a naked parallel LCD --
some years back they incorporated an add-on microprocessor to convert them
into a Serial interface (plain old UART -- but one-way, no ability to read
data from the display)
Still at 5V, however, but only needs a uni-directional level shifter for
one GPIO/UART line.

In contrast, their OLED unit is compatible with both 3.3 and 5V
systems, using a SPI interface...

(Unfortunately, their web site seems to have hidden all the old
documentation links; kept having to use Google to find things)

Wulfraed Dennis Lee Bieber AF6VN HTTP://


Apr 2, 2018, 3:24:04 PM4/2/18
to BeagleBoard
Hardware wise you need 3 to 5v level shifters. Unidirectional should be fine. Software wise you should be able to use the hd44780 driver which is in the upstream kernel 4.14.x or so.

Eric Sales

Jun 3, 2019, 7:51:35 AM6/3/19
to BeagleBoard
this Driver IC is SPLC780D, it support 3.3V.  you can find spec here, in page23.

the only problem is, I guess, when you connect to 3.3V, the display shows very light image. 
when you use 3.3V, the IC won't damage. you can try:)

i'm working in, as a LCD/TFT engineer, any question about LCD/TFT, you can write to me.
best regards!

在 2018年4月2日星期一 UTC+8上午9:59:57,engine...@gmail.com写道:
Reply all
Reply to author
0 new messages