User manual

Code Mercenaries
15
II
II
OO
OO
--
--
WW
WW
aa
aa
rr
rr
rr
rr
ii
ii
oo
oo
rr
rr
55
55
66
66
To read data from the LCD module an output
report with ID 6 is sent to interface 1:
"flags" contains the following bits:
7 - RS, Register Select bit
6 - Select special
5 - data count MSB
4 - data count
3 - data count
2 - data count
1 - data count
0 - data count LSB
"RS" specifies which register is to be accessed.
"data count" sets the number of bytes to be read off
the LCD.
When in "Dual44780" mode the "Select Special"
bit selects which of the E lines is used for this
request. "Select Special" = 0 uses E1, "Select
Special" = 1 uses E2.
In "T6963" mode the "Select Special" bit selects if
the normal busy flag or the auto mode busy flag
should be checked. "Select Special" = 0 checks
STA0, 1 before writing to the LCD, "Select
Special" = 1 checks STA2.
Up to 63 bytes can be read with one request. The
data read from the LCD module is returned in input
reports with ID 6:
"count" specifies the number of bytes returned in
this report. If more than 62 bytes are requested the
data will be returned in multiple reports.
Following is a list of the LCD controllers that have
by now been tested with IOW56 and the mode byte
that is used for them. Additional chip types will be
added when tested.
Chip
HD44780
ST7920
mode
Remarks
$00 / $01
$00
mode = $01 for dual chip
HD61202
KS0108
S6B0108
S1D15xxx
SED152x
AX1520
NJU6450
S1D133xx
SED133x
T6963
$02
$02
May have two chips,
which means two CS
lines, either polarity
May have two chips, two
/CS lines, active low.
May require 18kHz clock
Superset of KS0108
$06
$0A
Select 6800 bus mode on
the module
May have a Font select
line
LC7981
HD61830
$16
V 1.0.3, November 6nd 2012 for chip version V1.1.0.1