16x2 LCD module 3 wire Interface using SHIFT register


I am new to forum so i would like to say hello to everyone here. I have designed a circuit for interfacing 16x2 HD44780 based lcd using 3 wires with the help of a Serial in Parallel Out (SIPO) shift Register (CD4094).

Its working and i have interfaced it with ATMEGA8 and I am actually kind of driving it with a software SPI type stuff( Bit- Banging). But i have written the Program in AVR GCC and don’t have much expertise to write a Arduino specific library for my code and LCD Adapter.

So if anyone here is willing to lend me a hand in it i would be very grateful. Because this could be very useful for arduino as it is interfaced using only 3 wires and not specific to any particular type of I/o pin. We can use any I/O pin to send data.

So here is the code, schematic and some images of it.

SIPO_4B_Lcd.zip (32.6 KB)

Try this first... It's already been done and rather well at that... 1602 and 2004 displays serial, OR parallel 74C165, CD4094 and 74HC595...


@ Docedison Thanks for pointing me in the right direction actually i was trying to make a low pin interface for LCD using shift register and i new this kind of stuff existed but didn't know that it was already compatible for arduino. Now i can connect use my arduino sketch with my LCD thanks again. :slight_smile: