![]() |
Connecting LCD module to RC
(I know I have started a similar thread in the programming forum, but this concerns the electrical side of the project , so I feel that this thread should be here.)
I am working on a project for our future FRC robots. I want to create a GUI through an LCD module for program selection, autonomous selection, system testing etc. We thought of buying a serial interface touch panel LCD, but found them to be too expensive. Instead, I found an old LCD module in our robotics lab. Here is the schematic for it: Intech ITM 2004a. Because it is not a regular serial interface LCD, I couldn't figure out how to connect it to the RC. I would really appreciate any help I can get with this. Basically I just want to get it hooked up to the RC (preferably through the programming port and not the TTL serial port) so it will print the text I tell it to. Later I will connect regular digital switches so I can navigate through menus etc. Thanks in advance David |
Re: Connecting LCD module to RC
This appears to be a Hitachi based LCD, which can be driven with a "bit-banged" software serial port and 4 digital I/Os.
http://www.doc.ic.ac.uk/~ih/doc/lcd/ That's a good reference, by manipulating the R/W, RS, Data and EN lines you can easily transmit serial data and commands to the device with a timer based software controller, that's probably going to be simpler then interfacing and writing a serial port driver for it. If you'd like to discuss this more personally with me, as I have experience with Hitachi LCDs, please use the "Email Member" feature in my profile, I'd be happy to offer any assistance I can. |
Re: Connecting LCD module to RC
Yes, that looks like the standard HD44780 parallel display interface, google for 'HD44780 datasheet' and you should find all the information you need.
Its nice and simple, Ive played around with writing code for them for a 16F PIC in assembly, and even that was simple, especially after I got a bit-banging sub-routine written. You only need 7 digital IO's also. The RS, R/W and E lines are required, and you can use a 4-bit mode with the 44780 controler so you dont need all 8 data lines. Just read up in the datasheet, give it a bit to sink in some, then maybe read over some sections again, and you should have all that you need to know down. Matt, what are you talking about with the serial port for the LCD? Using a shift register to convert it to parallal? |
Re: Connecting LCD module to RC
sparkfun.com sells this module LCD Backback v2. It's easy to use and they have the schmatic and code at the bottom of that page.
|
Re: Connecting LCD module to RC
There is a standard for parallel controlled LCDs called HD44780. It looks like this module follows that standard. Basically you have 8 data pins and an RS E and RW line. Each of these gets connected to the digital IO pins on the RC. The LCD is capable of operating in a 4 bit mode in which only 4 of the data pins are used if you are tight on available digitla IOs. You can draw power from the gnd and 5v lines of one of the digital IOs. You will need a 10k potetiometer with the wiper connected to VEE pin and the other two pins conencted to ground and 5v. This allows you to adjust the contrast on the LCD. The programming is fairly straigntforward, just google hd44780 for info on how to control it.
If you want to drive this off any of the serial ports, i would recommend getting a different LCD that is serial to start with or buying a backpack like the one mentioned above. |
Re: Connecting LCD module to RC
What I was trying to point out is that the code to run the lcd from a 16f688 is available for educational purposes here. The schematic is avaiable also here or from the link I posted above.
This is the code for the serial backpack, but it is very easy to move to the RC or another chip. I'm working on a LCD terminal similar to what you described and I've found the serial backpack is the simplest way to run an LCD(even easier if you by an LCD with the backpack attached ;) . look at the bottom of this page for those. ). Hope this helps. |
| All times are GMT -5. The time now is 10:13. |
Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Copyright © Chief Delphi