Hey Steve.
I could be wrong, but I think it needs a fix.
The LCD will Power-up in 8-bit mode, but PBP will still be sending 4-bit.
So each nibble acts as a full command.
If you use $33 (twice), then it will get the "reset" 4 times, instead of $30,$00,$30,$00 ...
Then when it switches to 4-bit mode, it receives an extra nibble from the $20 which puts it out of sync with the rest of the data. By pulsing the E pin once it clocks in another $0 which is a "nothing" command and puts it back in sync.
Like this ...Code:ManualLCDInit: FLAGS=2 ' Void PBP lcd initialisation... it's a nice feature !!! PAUSE 500 Lcdout $FE, $33 Lcdout $FE, $33 Lcdout $FE, $20 ' official 4 bit mode @ bsf LCD_EREG, LCD_EBIT PAUSEUS 20 @ bcf LCD_EREG, LCD_EBIT ; -- rest is the same --




Bookmarks