HD44780 LCDs

From DP

Jump to: navigation , search




The Bus Pirate can test HD44780 LCDs but it needs an IO expander chip. Currently it uses a simple 74HCT595 adapter, build your own or buy one here.


A/a/@ Toggle auxiliary pin. Capital “A” sets AUX high, small “a” sets to ground. @ sets aux to input (high impedance mode) and reads the pin value.
D/d Measure voltage on the ADC pin (v1+ hardware only).
W/w Capital ‘W’ enables the on-board power supplies. Small ‘w’ disables them. (v1+ hardware only).
{ or [ RS low. Next read/write is a COMMAND.
] or } RS high. Next read/write is TEXT/DATA.
r Read one byte (r:1…255 for bulk reads).
0b Write this binary value. Format is 0b00000000 for a byte, but partial bytes are also fine: 0b1001.
0x Write this HEX value. Format is 0×01. Partial bytes are fine: 0xA. A-F can be lower-case or capital letters.
0-255 Write this decimal value. Any number not preceded by 0x or 0b is interpreted as a decimal value.
"xxx" Write the ASCII text xxx to the LCD.
, Value delimiter. Use a coma or space to separate numbers. Any combination is fine, no delimiter is required between non-number values: {0xa6,0, 0 16 5 0b111 0xaF}.
& Delay 1uS. (&:1…255 for multiple delays)
(#) Run macro, (0) for macro list


0 Macro menu
1 LCD reset.
2 Init LCD.
3 Clear LCD.
4 Cursor position ex:(4:0).
5 Write test text. (deprecated)
6 Write :number test numbers ex:(6:80).
7 Write :number test characters ex:(7:80).