How to connect a LCD to your TINI.

On these pages I will describe how you can connect a LCD to your TINI. There are several different ways you can actually do this e.g. using a parallell or serial LCD. Though this document only describes how to connect one using a parallel interface since it is a bit more complicated then using a serial port which is also quite common. To make this work you have to do some soldering and if you are not handy with soldering iron, there is the commercial alternative from Systronix and their SBX2 board.

Using a parallel interface is quite straight forward but there are a number of issues that can give you problems. The biggest problem is the load you put onto the TINI address- and data-bus. If it becomes to much, your TINI will not work properly, therefore keep all cables quite short. I have not yet experienced any problems with this but there are several others that have. Systronix has solved this on their SBX2 board by only presenting one CMOS load onto the bus.

You must know what kind of protocol your LCD is using to be able to communicate with it. Most parallell LCDs are using the same chipset, the Hitachi HD44780 or some kind of clone of it. If your LCD supports the same protocol as the Hitachi chip it will be compatible with the LCDPort class in the TINI firmware and you can use the included test software. That's why I choose it but also because I had already some LCD's with parallel interface using that chip. I have also written my own LCD control class which you can find here.

Connecting the LCD

The LCD has to be connected on to the data bus of the TINI. There are three different options for this,

  1. Connect it somehow directly onto the databus.
  2. Use the MEMORY EXPANSION/AUXILLIARY CONNECTOR on a 72-pin socket board.
  3. Use the circuits on a TINI Socket Eurocard 72-pin Revision A.

Note! None of these are actually the best way of doing this. As noted before the databus of the TINI shouldn't be loaded with too much load and if you overload it you will experience some really strange behaviors. The best solution is to have some kind of buffering. Bruce Boyes at Systronix sent out a mail to the mailinglist that explains this issue a bit and how the have solved it on their SBX2 boards. Now I have warned you so you know. Onto the hot stuff!

1. Directly to the Databus

The following drawing shows how you should connect a LCD to the TINI. It was sent out on the TINI-mailinglist by Chris Fox at Dallas Semiconductor (GIF or PDF).

It uses very few components, you only need one 74AC02, one potentiometer and one resistor(10 Ohm) if you have back lightning. I have used this drawing to either connect an LCD directly onto the data bus using the older 68-pin socket boards or using the expansion connector on the newer ones.

2. Expansion Connector

Using the expansion slot is more or less the same as connecting the LCD directly onot the databus, but since no flat cable is needed you will probably have less problems with this solution, see note above regarding bus load. I have used the Proto Module from Vinculum to solder the LCD and the control logics onto it. This page has some nice images on that board.

3. Revision A Socket Board

The revision A of the TINI Socket board from Dallas are already prepared for connecting a LCD on J17, see the schematics. To make this work you need the following components,

U10 - 74AC138
U2 - 74AC02
U4 - 74AC139
U3 -74AC32
R4 - 10K Ohm resistor
R5 - 2K Ohm potentiometer
R6 - 10 Ohm 1/4 watt Thru-hole
C5 - 47 U Capacitance

If you don't have back lightning on your LCD you don't need the R6. Also C5 is not necessary to make it work but good to have. Here are some images on my construction.

Useful links

HD44780U datasheets

Systronix

Vinculum

Back to TINI at DreamFabric

Last updated 2001-03-20 by Karl-Petter Åkesson