??? 03/08/10 01:17 Modified: 03/08/10 01:22 Read: times |
#173925 - just a minute ... Responding to: ???'s previous message |
Jan Waclawek said:
Joel Ward said:
Not only this but you will notice that the enable is strobed low then high, strobing the enable pin as usual does not print the character. If the controller is HD44780-compatible indeed, this is a clear indication that you do something very, very wrong. Joel Ward said: Surely it will. Get delay correct first. Chances are, that your delay is completely optimised away by the compiler. If you make E strobe "correct" polarity, it may be too short then, or it may change too soon after other signals change or both. That may be the reason why it did not work. I know the delays are completely inaccurate but this should not affect the display? Now, I haven't done this for a long time, but ... IIRC ... the signals all have to be stabile, and only then can the E strobe be raised. The signals must never, Never, NEVER change during the posititive phase of the E strobe, and only after the E strobe is low once again, may the remaining signals and data change. This protocol was "stolen" from MOTOROLA, which used it with a number of its devices, notably the MC6845, where the timing was similar, and the protocol was the same. Joel Ward said:
I am not using the busy pin as I do not have a soldering iron to make a jumper to enable the busy pin. Does this module have a jumper for this? It is then not HD44780-compatible, as busy is there signaled through a data line, D7, which must be connected for normal operation anyway. But, regardless of all that above, get a soldering iron, some solder, and a pair of sharp pliers, as soon as possible. It's just a couple of pounds and an investment well worth. Jan Waclawek The clearly idiotic practice of grounding the nWE signal in order to avoid using one pin has become entirely too widespread. It was commonly done when people were unable to change the direction of their PC printer port back in the '80's, when people were "playing" with LCD's on their PC printer port, and, for some inane reason has persisted. If you can't "afford" the one pin for the R/W signal, then go to 4-bit mode ... it's not slower, since the typical HD44780 instruction execution time was specified at 40 microseconds. As an alternative, you might consider memory mapping the LCD onto the MCU and operating it at a rate compatible with your LCD, since few MCU's can extend their external bus cycle timing. RE |
Topic | Author | Date |
Display problems | 01/01/70 00:00 | |
forgot to mention! | 01/01/70 00:00 | |
read the datasheet and buy the iron | 01/01/70 00:00 | |
just a minute ... | 01/01/70 00:00 | |
If you can't "afford" the one pin for the R/W signal | 01/01/70 00:00 | |
Why not address his question instead of wasting more money? | 01/01/70 00:00 | |
odd behaviour | 01/01/70 00:00 | |
Magic? | 01/01/70 00:00 | |
oscilloscope is fine, but in this case... | 01/01/70 00:00 | |
Both, I think | 01/01/70 00:00 | |
"magic" is synonym for "luck" | 01/01/70 00:00 | |
working | 01/01/70 00:00 | |
min & max limits | 01/01/70 00:00 | |
Delay lengths | 01/01/70 00:00 | |
If only folks would do what we once always did ...![]() | 01/01/70 00:00 | |
RW pin is defined but | 01/01/70 00:00 |