We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
Hi, I work on ST10F168 and i search an lcd which can i control by externel bus (P0/P1). So if someone have already do it succesfully, please indicate me what sort of lcd or lcd controller do you use ? Thanks in advance! Regards
I omit the size : approximately 2*16
Hello Jean Marc, almost all LCD char displays are driven by an HD44780 LCD controller; interfacing to them is a bit tricky, since they use a Motorola bus interface, while C166 has an Intel like bus architecture. Look at the memory mapped mode in this appnote, it is for Atmel but it fits the C166 equally well. http://homepage.sunrise.ch/mysunrise/pfleury/avr-lcd44780.html Please note: we had bus problems in the past using this LCD, always place a bus transceiver between the C166 data bus and the LCD data bus, otherwise the LCD controller may interfere with the configuration read from P0 during startup. Ciao Bruno
Hi Bruno, Thanks for your answer ! My LCD controller is a Samsung KS0066U , i think it is compatible with yours and it can works with ST10. If you have any suggestions? Regards
Take a look to: http://www.keil.com/appnotes/docs/apnt_161.asp This is an 8051 project, but might help you also here to connect your LCD display.
A note to Keil International Support: Your solution works equally well, it mimics the Motorola bus behaviour, but it is not equally fast as mapping the LCD controller in the microcontroller ram space and it uses a lot of I/O pins. The solution into Keil Appnote makes use of C16x (or 8051) I/O ports to interface the LCD controller, while the "Atmel" solution allows the user to map the LCD on the Data Bus and access the LCD controller as if it were a RAM cell mapped into the addressable RAM space of the microcontroller; this same strategy can be applied on the C16x or 8051 without modifications and saves I/O pins. Ciao Bruno
Ok thanks all ! it works correctly
Hi Bruno, I use external bus to interface Lcd with data on P0 and adress selection like a Ram chip ! It save I/O pins and it's very fast and easy to use. It's same your solution i think ! Thanks Regards
Hi Jon, yes, I agree with you that this is a VERY GOOD reason to use I/O instead of bus interfacing ;-) Fortunately the bus interface on the C16x is much more flexible. Thank you, ciao Bruno
It used to be that interfacing some LCD panels to the data/address bus of the 8051 failed because the LCD interface was not fast enough. Jon