I find a mistake in library, it was in first version and migrate to all others:
In 3 phases of sending E changes 0>1>0, RS for data too 0>1>0 (but must stay 1), RS for instructions stays 0. In result system is very sensitive for timing.
In attach two repaired versions. [b:813088384c]i2c_lcd_suggestion[/b:813088384c] - with suggestion of pins (v.3) and [b:813088384c]i2c_lcd[/b:813088384c] - without it (v.1).
Now it works in hardware at any freq and delays and simulates in Proteus.
↧