I stumbled upon interesting requirement in HD44780 datasheet. On E (enable) pin they specify maximum rise and fall time of 20ns (in one datasheet, I found 25ns in another). For example here:
https://www.sparkfun.com/datasheets/LCD/HD44780.pdf . I'm driving it from ATTiny2313 on breadboard with 2 inch jumper wire, and even measuring rise from max low state (0.6V) to min high state (2.2V) I get rise time of 44ns. This is not a high bandwidth protocol, why such tight requirement?
I very much doubt that your actual rise time from the ATtiny is 44 ns.
What scope did you use to measure this with and what probing did you use?
Edit: Sorry I just saw your screen shot. Still what probing did you use for this...
The source current of an I/O pin on the ATTiny2323 is around 40 mA per data sheet for a 5V supply. Are you sure you have this set as a push-pull drive, not an open drain?
What is your fall time on this signal?
Drive the pin high, don't use an open-drain method.
The requirement implies it's driving sequential logic i.e. flip-flops, counters, registers (type D, not merely latched), that sort of thing.
I don't know what the internal logic on those devices actually is, but it's certainly not just an IO register (latched), and the timing requirements imply something more like a state machine doing sequential processing (i.e. counting through memory addresses, etc.), versus something more general-purpose (like a mask-programmed MCU), or something more direct and high performance (like interleaved access or dual-port RAM).
There's also numerous clones of them (often with improvements like SPI, larger display support, more CGRAM etc., I don't know?) so there may be different reasons each variety uses those timing restrictions for.
Tim
Seems like in the troubleshooting mess I wound up with 1k resistor in series with my probe
. Now it's 21ns, but now it's time for full swing from 0 to 5V. Same for falling edge. Now measured directly on display module pins, using spring contact for ground. Rising transition through 0.6-2.2V region takes 6.8ns. If these numbers sound correct, then I guess problem was between scope and chair.
Your probe is a whopping 40pF?!
Tim
Oh well check the risetime of that mode too. Even with a 50 ohm source you will find it's quite low (usually around 6MHz).
10x is better both because it gives full bandwidth, and loads the signal source less.
Tim
With 10X settings full rise time measures 8ns. Probe has 50 +-20pF in 1X and 10 +- 5pF in 10X. 8ns is well within spec so problem solved.