Page 1 of 1

A 2-Bit Interface For Character LCDs

PostPosted: Tue Jun 02, 2015 4:06 am
by Joseph Watson
There is a new way to interface to the common character LCD displays such as 16x1, 16x2, 20x4, etc. These are the displays that use the HD44780 LCD controller or the equivalent. Even if you ground the RW input to an LCD module, in 8-bit mode, 10 I/O pins of a microcontroller are required to drive it. If you use the 4-bit mode, you still need 6 I/O pins. Now you can do it with only 3 I/O pins with only the addition of 3 resistors and 3 small capacitors. I have been using it for a while with many different LCD displays and it seems to work well for me. I have even been doing it with a PIC18F25K20 which is a 3.3 Volt chip so its logic levels are weak compared to what the LCD modules are expecting when they are powered by 5 Volts.

This page shows how it is done:

Re: A 2-Bit Interface For Character LCDs

PostPosted: Wed Jun 03, 2015 3:25 am
by AussieSusan
While it does not help for many existing character displays, I note that there are a number of LCD character displays on the market that have SPI and I2C interfaces. Also you can get "back boards" for the older displays that have SPI/I2C on one side and the parallel interface to the LCD on the other.

Re: A 2-Bit Interface For Character LCDs

PostPosted: Sat Jun 25, 2016 4:56 pm
by JanJansen
Hi, this is new to me, nice, i Always like to save a few pins, so i took a look :
You need the time to wait, in loop updating will be variable timing so it wont work exact there i think.

The real problem is these 28 pin DIP chips, why they are not in 40 pins version ?, must have some reason.

Re: A 2-Bit Interface For Character LCDs

PostPosted: Sun Jun 26, 2016 8:21 pm
by Joseph Watson

The only important timing considerations are described in my page. I might also add that if you implement this technique and use some system or language that cannot achieve the appropriate timing (which could happen with some slower interpretive languages, for example), simply scale up the time periods by some factor (maybe double, triple, or quadruple them, for example) and then scale up the capacitance of the capacitors by the same factor.

Personally, I stick with PIC18 series chips. With them, most every 28-pin version has a 40-pin version as well. Just look for the same part number with a 4 in place of the first 2. For example, the PIC18F2620 has a 40-pin version with part number PIC18F4620.