A project of connecting
LCD display module to LPT printer port with multi lines and adjustable characters number. Included a VB6 software, Visual Studio 2005 VB and
a circuit diagram. There are several makes of this module that are interchangeable, the one I used is UC-16207. The LCD module has a 14 way connector, 8 pins are used for data, 2 for supply, register select(RS), read/write, enable (E) and contrast adj. The R/W input must be connected to earth to make sure that data lines are in input mode. The VB application has only basic functions, it can be changed to interface the display for a variety of inputs.
The LCD module requires a delay of 2 ms or longer for some of the commands and clock (Enable) of 10 us or longer. By loop counting during Timer1 of 100 ms interval the speed of the cpu can be assessed and used to set micro-second time base.
The io.dll file has to be in the same folder as the exe file.
You can read more about LPT interface in http://www.beyondlogic.org/spp/parallel.htm
The download includes a freeware DLL (io.dll) which can be updated from http://www.geekhideout.com/iodll.shtml
Keep the .exe file and .dll in the same folder. You are free to use the circuit diagram and the VB software with no
5 volt supply can be an external
power supply, using the hosting computer 5V is much preferred because
variation between the computer 5V and the external 5V can lead to
undesirable currents through the data lines. 5 volt supply is available
at a USB port or the 4 way peripherals connector from the internal
power supply unit.
Module can work with voltage range of 3.3 to 5 volts. Below 5 V the module doesn't initiate on power up so the VB extra instructions have to be enabled.
20K trimmer is needed to adjust the contrast voltage which vary with different batches of LCD.
Pins 7 to 14 of the LCD are data inputs. Pin 6 is clock input, enables LCD module to read the data.
Pin 4 is Register Select input, it is used for 16 bits instruction.
01.03.2020 - 17:01 Name: Moty Comment: Hi Leslie,
I don't have projects for Commodore, I've seen some on google. There are many projects for Commodore and Arduino:
01.03.2020 - 07:22 Name: Leslie Comment: do you have any projects for Commodore (Vic20, C64, C128) computers?
08.02.2020 - 23:59 Name: Moty Comment: Hi Leslie,
BASIC of Commodore is different to windows BASIC. It also differ from one Commodore to another. Unfortunately I forgot that language. Also the printer connectors are different so my code has to be rewritten. I don't know what your project is and I can only suggest to use a newish microcontroller because you can find more example code on the net.
08.02.2020 - 08:17 Name: Leslie Giannini Comment: would it be possible for you to write the software for this project
using BASIC so i can learn better ? i plan on making a stand-alone pcb board
using 6502 & 6522/6526 which would be based on Commodore pc's. i would really
appreciate it if you could do this for me. Thank you, Leslie.
09.10.2016 - 21:47 Name: Moty Comment: Hi Jim, check that your BIOS are set to ports 378h-37fh and LPT is enabled, see the link above for more information. Turn the 20K pot until you get light grey rectangles.
09.10.2016 - 03:54 Name: jim Comment: i got questions, it doesnt work on my unit, windows xp, vb6 is installed, the .exe program is opening but it doesn't show what i type at the program, please send me some help
18.04.2016 - 01:05 Name: elvis Comment: project OK
07.07.2015 - 17:52 Name: Moty Comment: Hi Alexander. for 20x4 you have to change the VB6 code.
07.07.2015 - 05:02 Name: Alexander Comment: How if we would like to use 20x4 LCD?
31.05.2015 - 16:02 Name: Hans Andersson Comment: I have not build it yet. But I will try. I seems to work fine.
17.10.2014 - 23:22 Name: kanishka Comment: great projet
29.03.2013 - 12:20 Name: steve Comment: Very Good Project