??? 02/27/07 18:29 Read: times |
#133858 - delays aren't necessary if you monitor busy Responding to: ???'s previous message |
The HD44780 has a command/status register and a data register. The MSB of the status register (RS=0) is the busy flag. Once the HD44780 is initialized, which DOES require that you send the first few commands with "open-loop" timing in accordance with the datasheet, you need simply monitor the busy flag and wait for it to go false before you send the next command or data.
At 1/16 duty cycle, the specified command execution time is 40 microseconds. However, if you simply monitor the busy flag, you needn't concern yourself with either duty cycle or execution time. Moreover, if you pay attention to the entire instruction set of the HD44780, you may actually find more efficient ways of doing what you need to do. One example is that you can write directly to a specific location in the display rather than clearing and rewriting the display, or a part of it, as some folks are inclined to do. RE |