2
\$\begingroup\$

A friend recently gave me a set of three (old) 16x2 LCD displays. (datasheet)

However, I'm having difficulty thinking through how to connect one to my Arduino. Particularly, each LCD has 14 (!) pins, of which 7 are denoted "data bus line" on the datasheet.

In the past, I've connected my Arduino to a LCD screen using serial connection, and I have an I2C LCD that I won at a competition recently (I've yet to use that one, though--I'm waiting on a specific type of jumper cable).

However, I've never used an LCD with this many pins, and certainly don't want to hog all the pins on my Arduino (Uno). So, my question is:

How do I communicate with this LCD, using my Arduino? (While keeping in mind that I want to do other things with the pins.)

\$\endgroup\$
  • \$\begingroup\$ You can do 4-bit an completely ignore 4 of the pins \$\endgroup\$ – Polar Apr 14 '13 at 0:59
  • \$\begingroup\$ Actually there are 8 data pins, but as Polar said you can go by using only 4 of them \$\endgroup\$ – rslite Apr 14 '13 at 2:42
4
\$\begingroup\$

There are a few methods to do what you want to, and you will have to dedicate 4 or 8 pins to the LCD. Looking at the datasheet you provided, the LCD is driven by a HD44780, and this has been interfaced with Arduino many times - there is a subsection of the Arduino site's LCD page devoted to it (scroll down to find it). There are a few libraries that you can use - I would recommend Liquid Crystal as it provides both 4 and 8-bit modes, and apparently comes with the Arduino software. You probably could reuse the pins though by making use of enable/chipselect pins and then attaching boards/shields on top. This question may assist with that.

\$\endgroup\$
4
\$\begingroup\$

The data sheet indicates that your LCD has an HD44780 controller. It is pin compatible with some of the most common 16x2 LCDs. It should be compatible with the single color 16x2 LCDs in this tutorial. That should get you started with both the hardware hookup and the software.

\$\endgroup\$
  • \$\begingroup\$ +1 for using a backpack on the LCD. I have also used the board from modern device (shop.moderndevice.com/products/lcd117-kit) and it works well. These kinds of boards take it from 8 pins down to 1 pin on the arduino. You can also use the software serial library for communication to the LCD board. I've done this a lot. \$\endgroup\$ – Steve Cooley Apr 14 '13 at 17:56

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.