ST7066U
ST7066U
ST7066U
Sitronix
n Features
l l l l 5 x 8 and 5 x 11 dot matrix possible Low power operation support: -- 2.7 to 5.5V Wide range of LCD driver power -- 3.0 to 10V Correspond to high speed MPU bus interface -- 2 MHz (when VCC = 5V) 4-bit or 8-bit MPU interface enabled 80 x 8-bit display RAM (80 characters max.) 13,200-bit character generator ROM for a total of 240 character fonts(5 x 8 dot or 5 x 11 dot) 64 x 8-bit character generator RAM -- 8 character fonts (5 x 8 dot) -- 4 character fonts (5 x 11 dot) l l
ST7066U
Dot Matrix LCD Controller/Driver
l l l
l l l l
16-common x 40-segment liquid crystal display driver Programmable duty cycles -- 1/8 for one line of 5 x 8 dots with cursor -- 1/11 for one line of 5 x 11 dots & cursor -- 1/16 for two lines of 5 x 8 dots & cursor Wide range of instruction functions: Display clear, cursor home, display on/off, cursor on/off, display character blink, cursor shift, display shift Automatic reset circuit that initializes the controller/driver after power on Internal oscillator with external resistors Low power consumption QFP80 and Bare Chip available
n Description
The ST7066U dot-matrix liquid crystal display controller and driver LSI displays alphanumeric, Japanese kana characters, and symbols. It can be configured to drive a dot-matrix liquid crystal display under the control of a 4- or 8-bit microprocessor. Since all the functions such as display RAM, character generator, and liquid crystal driver, required for driving a dot-matrix liquid crystal display are internally provided on one chip, a minimal system can be interfaced with this controller/driver. The ST7066U character generator ROM is extended to generate 240 5x8(5x11) dot character fonts for a total of 240 different character fonts. The low power supply (2.7V to 5.5V) of the ST7066U is suitable for any portable battery-driven product requiring low power dissipation. The ST7066U LCD driver consists of 16 common signal drivers and 40 segment signal drivers which can extend display size by cascading segment driver ST7065 or ST7063. The maximum display size can be either 80 characters in 1-line display or 40 characters in 2-line display. A single ST7066U can display up to one 8-character line or two 8-character lines.
Product Name
ST7066U-0A ST7066U-0B ST7066U-0E
Support Character
English / Japan English / European English / European
V2.2
1/42
2006/05/11
ST7066U
ST7066 Serial Specification Revision History Version Date Description
1.7
1. Added 8051 Example Program Code(Page 21,23) 2. Added Annotated Flow Chart : 2000/10/31 BF cannot be checked before this instruction 3. Changed Maximum Ratings Power Supply Voltage:+5.5V +7.0V(Page 28) 2000/11/14 Added QFP Pad Configuration(Page 5) 1. Moved QFP Package Dimensions(Page 39) to Page 5 2000/11/30 2. Changed DC Characteristics Ratings(Page 32,33) 2001/03/01 Transition to ST7066U 2006/04/10 1. 2. Add Power Supply Conditions (Page 31); Modify reset description on Page 22.
1.8
1.8a
V2.2
2/42
2006/05/11
CPG
Instruction decoder
RS RW E
COM1 to COM16
MPU interface Address counter 40-bit shift register Data register (DR) Input/ output buffer LCD drive voltage selector 40-bit latch circuit Segment signal driver
SEG1 to SEG40
DB4 to DB7
DB0 to DB3
Busy flag
Vcc V1 V2 V3 V4 V5
V2.2
3/42
2006/05/11
SEG22 SEG21 SEG20 SEG19 SEG18 SEG17 SEG16 SEG15 SEG14 SEG13 SEG12 SEG11 SEG10 SEG09 SEG08 SEG07 SEG06 SEG05 SEG04 SEG03 SEG02 SEG01 GND OSC1
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64 63
SEG39 SEG40 COM16 COM15 COM14 COM13 COM12 COM11 COM10 COM09 COM08 COM07 COM06 COM05 COM04 COM03 COM02 COM01 DB7 DB6 DB5 DB4 DB3 DB2
ST7066U
62 61 60 59 58 57
(0,0)
56 55 54 53
Chip Size : 2300x3000m Coordinate : Pad Center Origin : Chip Center Min Pad Pitch : 120m Pad Size : 96x96m
52 51 50 49 48 47 46 45 44 43 42
25
OSC2
26
V1
27
V2
28
V3
29
V4
30
V5
31
CL1
32
CL2
33
Vcc
3
M
35
D
36
RS
37
R/W
38
E
39
DB0
40
DB1
41
V2.2
4/42
2006/05/11
V2.2
5/42
2006/05/11
S 2 3 8 0
S 2 4 7 9
S 2 5 7 8
S 2 6 7 7
S 2 7 7 6
S 2 8 7 5
S 2 9 7 4
S 3 0 7 3
S 3 1 7 2
S 3 2 7 1
S 3 3 7 0
S 3 4 6 9
S 3 5 6 8
S 3 6 6 7
S 3 7 6 6
S 3 8 6 5
S22 S21 S20 S19 S18 S17 S16 S15 S14 S13 S12 S11 S10 S09 S08 S07 S06 S05 S04 S03 S02 S01 GND OSC1
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
64 63 62 61 60 59 58 57 56 55 54 53 52 51 50 49 48 47 46 45 44 43 42
S39 S40 C16 C15 C14 C13 C12 C11 C10 C09 C08 C07 C06 C05 C04 C03 C02 C01 DB7 DB6 DB5 DB4 DB3 DB2
2 5
2 6
2 7
2 8
2 9
3 0
3 1
3 2
3 3
3 4
3 5
3 6
3 7
3 8
3 9
4 0
41
O S C 2
V 1
V 2
V 3
V 4
V 5
C L 1
C L 2
V C C
M D
R S
R E W
D B 0
D B 1
V2.2
6/42
2006/05/11
ST7066U
n Pad Location Pad No. Function
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 SEG22 SEG21 SEG20 SEG19 SEG18 SEG17 SEG16 SEG15 SEG14 SEG13 SEG12 SEG11 SEG10 SEG9 SEG8 SEG7 SEG6 SEG5 SEG4 SEG3 SEG2 SEG1 GND OSC1 OSC2 V1 V2 V3 V4 V5 CL1 CL2 Vcc M D RS RW E DB0 DB1
Coordinates
X
-1040 -1040 -1040 -1040 -1040 -1040 -1040 -1040 -1040 -1040 -1040 -1040 -1040 -1040 -1040 -1040 -1040 -1040 -1040 -1040 -1040 -1040 -1040 -1040 -910 -780 -660 -540 -420 -300 -180 -60 60 180 300 420 540 660 780 910
Y
1400 1270 1140 1020 900 780 660 540 420 300 180 60 -60 -180 -300 -420 -540 -660 -780 -900 -1020 -1140 -1270 -1400 -1400 -1400 -1400 -1400 -1400 -1400 -1400 -1400 -1400 -1400 -1400 -1400 -1400 -1400 -1400 -1400
X
1040 1040 1040 1040 1040 1040 1040 1040 1040 1040 1040 1040 1040 1040 1040 1040 1040 1040 1040 1040 1040 1040 1040 1040 910 780 660 540 420 300 180 60 -60 -180 -300 -420 -540 -660 -780 -910
Y
-1400 -1270 -1140 -1020 -900 -780 -660 -540 -420 -300 -180 -60 60 180 300 420 540 660 780 900 1020 1140 1270 1400 1400 1400 1400 1400 1400 1400 1400 1400 1400 1400 1400 1400 1400 1400 1400 1400
V2.2
7/42
2006/05/11
Number
1
Function
Select registers. 0: Instruction register (for write) Busy flag: address counter (for read) 1: Data register (for write and read) Select read or write. 0: Write 1: Read Starts data read/write. Four high order bi-directional tristate data bus pins. Used for data transfer and receive between the MPU and the ST7066U. DB7 can be used as a busy flag. Four low order bi-directional tristate data bus pins. Used for data transfer and receive between the MPU and the ST7066U. These pins are not used during 4-bit operation. Clock to latch serial data D sent to the extension driver Clock to shift serial data D Switch signal for converting the liquid crystal drive waveform to AC Character pattern data corresponding to each segment signal Common signals that are not used are changed to non-selection waveform. COM9 to COM16 are non-selection waveforms at 1/8 duty factor and COM12 to COM16 are non-selection waveforms at 1/11 duty factor. Segment signals Power supply for LCD drive VCC - V5 = 10 V (Max) VCC : 2.7V to 5.5V, GND: 0V When crystal oscillation is performed, a resistor must be connected externally. When the pin input is an external clock, it must be input to OSC1.
1 1 4
I I I/O
DB0 to DB3
I/O
MPU
CL1 CL2 M D COM1 to COM16 SEG1 to SEG40 V1 to V5 VCC , GND OSC1, OSC2
1 1 1 1
O O O O
16
LCD
40 5 2 2
O -
OSC1 R
OSC1
OSC2
V2.2
8/42
2006/05/11
RS R/W
L L H H L H L H
Operation
Instruction Write operation (MPU writes Instruction code into IR) Read Busy Flag(DB7) and address counter (DB0 ~ DB6) Data Write operation (MPU writes data into DR) Data Read operation (MPU reads data from DR)
Table 1. Various kinds of operations according to RS and R/W bits. l Busy Flag (BF) When BF = "High, it indicates that the internal operation is being processed. So during this time the next instruction cannot be accepted. BF can be read, when RS = Low and R/W = High (Read Instruction Operation), through DB7 port. Before executing the next instruction, be sure that BF is not High. Before checking BF, be sure to wait at least 80us. Please refer to Page 27 for the example. Do NOT keep E always High for checking BF. l Address Counter (AC) Address Counter(AC) stores DDRAM/CGRAM address, transferred from IR. After writing into (reading from) DDRAM/CGRAM, AC is automatically increased (decreased) by 1. When RS = "Low" and R/W = "High", AC can be read through DB0 ~ DB6 ports.
V2.2
9/42
2006/05/11
ST7066U
l Display Data RAM (DDRAM) Display data RAM (DDRAM) stores display data represented in 8-bit character codes. Its extended capacity is 80 x 8 bits, or 80 characters. The area in display data RAM (DDRAM) that is not used for display can be used as general data RAM. See Figure 1 for the relationships between DDRAM addresses and positions on the liquid crystal display. The DDRAM address (ADD ) is set in the address counter (AC) as hexadecimal. 1-line display (N = 0) (Figure 2) When there are fewer than 80 display characters, the display begins at the head position. For example, if using only the ST7066U, 8 characters are displayed. See Figure 3. When the display shift operation is performed, the DDRAM address shifts. See Figure 3.
78
79
80
01
02
03
04
05
..
4D 4E
4F
00
01
02
03
04
05
06
07
01
02
03
04
05
06
07
08
4F
00
01
02
03
04
05
06
2-line display (N = 1) (Figure 4) Case 1: When the number of display characters is less than 40 2 lines, the two lines are displayed from the head. Note that the first line end address and the second line start address are not consecutive. For example, when just the ST7066U is used, 8 characters 2 lines are displayed. See Figure 5.
V2.2
10/42
2006/05/11
ST7066U
When display shift operation is performed, the DDRAM address shifts. See Figure 5.
Display Position
38
39
40
01 41
02 42
03 43
04 44
05 45
.. ..
25 65
26 66
27 67
00 40
01 41
02 42
03 43
04 44
05 45
06 46
07 47
01 41
02 42
03 43
04 44
05 45
06 46
07 47
08 48
27 67
00 40
01 41
02 42
03 43
04 44
05 45
06 46
Figure 5 2-Line by 8-Character Display Example Case 2: For a 16-character 2-line display, the ST7066U can be extended using one 40-output extension driver. See Figure 6. When display shift operation is performed, the DDRAM address shifts. See Figure 6.
Display
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
01 41
02 42
03 43
04 44
05 45
06 46
07 47
08 48
09 49
0A 4A
0B 0C 0D 0E 4B 4C 4D 4E
0F 4F
01 41
02 42
03 43
04 44
05 45
06 46
07 47
08 48
09 49
0A 4A
0B 0C 0D 0E 4B 4C 4D 4E
0F 4F
10 50
27 67
00 40
01 41
02 42
03 43
04 44
05 45
06 46
07 47
08 48
09 49
0A 4A
0B 0C 0D 0E 4B 4C 4D 4E
V2.2
11/42
2006/05/11
ST7066U
l Character Generator ROM (CGROM) The character generator ROM generates 5 x 8 dot or 5 x 11 dot character patterns from 8-bit character codes. It can generate 240 5 x 8 dot character patterns. User-defined character patterns are also available by mask-programmed ROM. l Character Generator RAM (CGRAM) In the character generator RAM, the user can rewrite character patterns by program. For 5 x 8 dots, eight character patterns can be written, and for 5 x 11 dots, four character patterns can be written. Write into DDRAM the character codes at the addresses shown as the left column of Table 4 to show the character patterns stored in CGRAM. See Table 5 for the relationship between CGRAM addresses and data and display patterns. Areas that are not used for display can be used as general data RAM. l Timing Generation Circuit The timing generation circuit generates timing signals for the operation of internal circuits such as DDRAM, CGROM and CGRAM. RAM read timing for display and internal operation timing by MPU access are generated separately to avoid interfering with each other. Therefore, when writing data to DDRAM, for example, there will be no undesirable interference, such as flickering, in areas other than the display area. l LCD Driver Circuit LCD Driver circuit has 16 common and 40 segment signals for LCD driving. Data from CGRAM/CGROM is transferred to 40 bit segment latch serially, and then it is stored to 40 bit shift latch. When each common is selected by 16 bit common register, segment data also output through segment driver from 40 bit segment latch. In case of 1-line display mode, COM1 ~ COM8 have 1/8 duty or COM1 ~ COM11 have 1/11duty , and in 2-line mode, COM1 ~ COM16 have 1/16 duty ratio. l Cursor/Blink Control Circuit It can generate the cursor or blink in the cursor/blink control circuit. The cursor or the blink appears in the digit at the display data RAM address set in the address counter.
V2.2
12/42
2006/05/11
ST7066U
Table 4 Correspondence between Character Codes and Character Patterns (ROM Code: 0A)
V2.2
13/42
2006/05/11
ST7066U
Table 4(Cont.) (ROM Code: 0B)
V2.2
14/42
2006/05/11
ST7066U
Table 4(Cont.) (ROM Code: 0E)
V2.2
15/42
2006/05/11
ST7066U
Character Code (DDRAM Data)
b7 b6 b5 b4 b3 b2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 b1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
CGRAM Address
b0 b5 b4 b3 b2 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 1 0 1 1 0 1 0 1 0 1 0 0 0 1 1 1 1 1 1 1 1 1 b1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1
Table 5 Relationship between CGRAM Addresses, Character Codes (DDRAM) and Character patterns (CGRAM Data) Notes: 1. Character code bits 0 to 2 correspond to CGRAM address bits 3 to 5 (3 bits: 8 types). 2. CGRAM address bits 0 to 2 designate the character pattern line position. The 8th line is the cursor position and its display is formed by a logical OR with the cursor. Maintain the 8th line data, corresponding to the cursor display position, at 0 as the cursor display. If the 8th line data is 1, 1 bits will light up the 8th line regardless of the cursor presence. 3. Character pattern row positions correspond to CGRAM data bits 0 to 4 (bit 4 being at the left). 4. As shown Table 5, CGRAM character patterns are selected when character code bits 4 to 7 are all 0. However, since character code bit 3 has no effect, the R display example above can be selected by either character code 00H or 08H. 5. 1 for CGRAM data corresponds to display selection and 0 to non-selection. -: Indicates no effect.
V2.2
16/42
2006/05/11
ST7066U n Instructions
There are four categories of instructions that: l Designate ST7066U functions, such as display format, data length, etc. l Set internal RAM addresses l Perform data transfer with internal RAM l Others Instruction Table:
Instruction Code
RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
Description
Write "20H" to DDRAM. and set DDRAM address to "00H" from AC Set DDRAM address to "00H" from AC and return cursor to its original position if shifted. The contents of DDRAM are not changed. Sets cursor move direction and specifies display shift. These operations are performed during data write and read. D=1:entire display on C=1:cursor on B=1:cursor position on Set cursor moving and display shift control bit, and the direction, without changing DDRAM data. DL:interface data is 8/4 bits N:number of line is 2/1 F:font size is 5x11/5x8 Set CGRAM address in address counter
Description Time
(270KHz)
1.52 ms
1.52 ms
Entry Mode Set Display ON/OFF Cursor or Display Shift Function Set Set CGRAM address Set DDRAM address Read Busy flag and address Write data to RAM Read data from RAM
I/D
37 us
37 us
S/C
R/L
37 us
DL
37 us 37 us 37 us 0 us
0 0
0 0
0 1
BF
D7
D7
Set DDRAM address in address counter Whether during internal operation or not can be AC6 AC5 AC4 AC3 AC2 AC1 AC0 known by reading BF. The contents of address counter can also be read. Write data into internal D6 D5 D4 D3 D2 D1 D0 RAM (DDRAM/CGRAM) Read data from internal D6 D5 D4 D3 D2 D1 D0 RAM (DDRAM/CGRAM)
AC6 AC5 AC4 AC3 AC2 AC1 AC0
37 us 37 us
Note: Be sure the ST7066U is not in the busy state (BF = 0) before sending an instruction from the MPU to the ST7066U. If an instruction is sent without checking the busy flag, the time between the first instruction and next instruction will take much longer than the instruction time itself. Refer to Instruction Table for the list of each instruction execution time.
V2.2
17/42
2006/05/11
Code
Clear all the display data by writing "20H" (space code) to all DDRAM address, and set DDRAM address to "00H" into AC (address counter). Return cursor to the original status, namely, bring the cursor to the left edge on first line of the display. Make entry mode increment (I/D = "1"). l Return Home
RS RW DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
Code
Return Home is cursor return home instruction. Set DDRAM address to "00H" into the address counter. Return cursor to its original site and return display to its original status, if shifted. Contents of DDRAM does not change. l Entry Mode Set
RS RW DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
Code
I/D
Set the moving direction of cursor and display. I/D : Increment / decrement of DDRAM address (cursor or blink) When I/D = "High", cursor/blink moves to right and DDRAM address is increased by 1. When I/D = "Low", cursor/blink moves to left and DDRAM address is decreased by 1. * CGRAM operates the same as DDRAM, when read from or write to CGRAM. S: Shift of entire display When DDRAM read (CGRAM read/write) operation or S = "Low", shift of entire display is not performed. If S = "High" and DDRAM write operation, shift of entire display is performed according to I/D value (I/D = "1" : shift left, I/D = "0" : shift right).
S
H H
I/D
H L
Description
Shift the display to the left Shift the display to the right
V2.2
18/42
2006/05/11
ST7066U
l Display ON/OFF
RS RW DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
Code
Control display/cursor/blink ON/OFF 1 bit register. D : Display ON/OFF control bit When D = "High", entire display is turned on. When D = "Low", display is turned off, but display data is remained in DDRAM. C : Cursor ON/OFF control bit When C = "High", cursor is turned on. When C = "Low", cursor is disappeared in current display, but I/D register remains its data. B : Cursor Blink ON/OFF control bit When B = "High", cursor blink is on, that performs alternate between all the high data and display character at the cursor position. When B = "Low", blink is off. l Cursor or Display Shift
RS RW DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
Code
S/C R/L
Without writing or reading of display data, shift right/left cursor position or display. This instruction is used to correct or search display data. During 2-line mode display, cursor moves to the 2nd line after 40th digit of 1st line. Note that display shift is performed simultaneously in all the line. When displayed data is shifted repeatedly, each line shifted individually. When display shift is performed, the contents of address counter are not changed.
S/C
L L H H
R/L
L H L H
Description
Shift cursor to the left Shift cursor to the right Shift display to the left. Cursor follows the display shift
AC Value
AC=AC-1 AC=AC+1 AC=AC
Shift display to the right. Cursor follows the display shift AC=AC
Function Set
RS RW DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
Code
DL
V2.2
19/42
2006/05/11
ST7066U
DL : Interface data length control bit When DL = "High", it means 8-bit bus mode with MPU. When DL = "Low", it means 4-bit bus mode with MPU. So to speak, DL is a signal to select 8-bit or 4-bit bus mode. When 4-bit bus mode, it needs to transfer 4-bit data by two times. N : Display line number control bit When N = "Low", it means 1-line display mode. When N = "High", 2-line display mode is set. F : Display font type control bit When F = "Low", it means 5 x 8 dots format display mode When F = "High", 5 x11 dots format display mode.
N
L L H l
F
L H x
RS
RW
DB7
DB6
DB5
DB4
DB3
DB2
DB1
DB0
Code
Set CGRAM address to AC. This instruction makes CGRAM data available from MPU. l Set DDRAM Address
RS RW DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
Code
Set DDRAM address to AC. This instruction makes DDRAM data available from MPU. When 1-line display mode (N = 0), DDRAM address is from "00H" to "4FH". In 2-line display mode (N = 1), DDRAM address in the 1st line is from "00H" to "27H", and DDRAM address in the 2nd line is from "40H" to "67H".
V2.2
20/42
2006/05/11
ST7066U
l Read Busy Flag and Address
RS RW DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
Code
BF
When BF = High, indicates that the internal operation is being processed.So during this time the next instruction cannot be accepted. The address Counter (AC) stores DDRAM/CGRAM addresses, transferred from IR. After writing into (reading from) DDRAM/CGRAM, AC is automatically increased (decreased) by 1. l Write Data to CGRAM or DDRAM
RS RW DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
Code
D7 D6 D5 D4 D3 D2 D1 D0
Write binary 8-bit data to DDRAM/CGRAM. The selection of RAM from DDRAM, CGRAM, is set by the previous address set instruction : DDRAM address set, CGRAM address set. RAM set instruction can also determine the AC direction to RAM. After write operation, the address is automatically increased/decreased by 1, according to the entry mode. l Read Data from CGRAM or DDRAM
RS RW DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
Code
D7 D6 D5 D4 D3 D2 D1 D0
Read binary 8-bit data from DDRAM/CGRAM. The selection of RAM is set by the previous address set instruction. If address set instruction of RAM is not performed before this instruction, the data that read first is invalid, because the direction of AC is not determined. If you read RAM data several times without RAM address set instruction before read operation, you can get correct RAM data from the second, but the first data would be incorrect, because there is no time margin to transfer RAM data. In case of DDRAM read operation, cursor shift instruction plays the same role as DDRAM address set instruction : it also transfer RAM data to output data register. After read operation address counter is automatically increased/decreased by 1 according to the entry mode. After CGRAM read operation, display shift may not be executed correctly. * In case of RAM write operation, after this AC is increased/decreased by 1 like read operation. In this time, AC indicates the next address position, but you can read only the previous data by read instruction.
V2.2
21/42
2006/05/11
V2.2
22/42
2006/05/11
Function set
RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 0 0 0 0 1 1 N F X X
Function set
RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 0 0 0 0 1 1 N F X X
Display clear
RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 0 0 0 0 0 0 0 0 0 1
Initialization end
V2.2
23/42
2006/05/11
ST7066U
Initial Program Code Example For 8051 MPU(8 Bit Interface): ;--------------------------------------------------------------------------------INITIAL_START: CALL DELAY40mS MOV CALL CALL MOV CALL CALL MOV CALL CALL MOV CALL CALL A,#38H ;FUNCTION SET WRINS_NOCHK ;8 bit,N=1,5*7dot DELAY37uS A,#38H ;FUNCTION SET WRINS_NOCHK ;8 bit,N=1,5*7dot DELAY37uS A,#0FH WRINS_CHK DELAY37uS A,#01H WRINS_CHK DELAY1.52mS ;DISPLAY ON
;CLEAR DISPLAY
MOV A,#06H ;ENTRY MODE SET CALL WRINS_CHK ;CURSOR MOVES TO RIGHT CALL DELAY37uS ;--------------------------------------------------------------------------------MAIN_START: XXXX XXXX XXXX XXXX . . . . ;--------------------------------------------------------------------------------WRINS_CHK: CALL CHK_BUSY WRINS_NOCHK: CLR RS ;EX:Port 3.0 CLR RW ;EX:Port 3.1 SETB E ;EX:Port 3.2 MOV P1,A ;EX:Port 1=Data Bus CLR E MOV P1,#FFH ;For Check Busy Flag RET ;--------------------------------------------------------------------------------CHK_BUSY: ;Check Busy Flag CLR RS SETB RW SETB E JB P1.7,$ CLR E RET
V2.2
24/42
2006/05/11
ST7066U
l 4-bit Interface (fosc=270KHz)
POWER ON Wait time >40mS After Vcc >4.5V
Function set
RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 0 0 0 0 1 1 X X X X Wait time >37uS
Function set
RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 0 0 0 0 1 0 X X X X 0 0 N F X X X X X X Wait time >37uS
Function set
RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 0 0 0 0 1 0 X X X X 0 0 N F X X X X X X Wait time >37uS
Display clear
RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 0 0 0 0 0 0 X X X X 0 0 0 0 0 1 X X X X Wait time >1.52mS
V2.2
25/42
2006/05/11
ST7066U
Initial Program Code Example For 8051 MPU(4 Bit Interface): ;------------------------------------------------------------------WRINS_CHK: CALL CHK_BUSY WRINS_NOCHK: PUSH A ANL A,#F0H CLR RS ;EX:Port 3.0 CLR RW ;EX:Port 3.1 SETB E ;EX:Port 3.2 MOV P1,A ;EX:Port1=Data Bus CLR E POP A SWAP A WRINS_ONCE: ANL A,#F0H CLR RS CLR RW SETB E MOV P1,A CLR E MOV P1,#FFH ;For Check Bus Flag RET ;------------------------------------------------------------------CHK_BUSY: ;Check Busy Flag PUSH A MOV P1,#FFH $1 CLR RS SETB RW SETB E MOV A,P1 CLR E MOV P1,#FFH CLR RS SETB RW SETB E NOP CLR E JB A.7,$1 POP A RET
;------------------------------------------------------------------INITIAL_START: CALL DELAY40mS MOV CALL CALL MOV CALL CALL MOV CALL CALL MOV CALL CALL MOV CALL CALL A,#38H WRINS_ONCE DELAY37uS ;FUNCTION SET ;8 bit,N=1,5*7dot
A,#28H ;FUNCTION SET WRINS_NOCHK ;4 bit,N=1,5*7dot DELAY37uS A,#28H ;FUNCTION SET WRINS_NOCHK ;4 bit,N=1,5*7dot DELAY37uS A,#0FH WRINS_CHK DELAY37uS A,#01H WRINS_CHK DELAY1.52mS ;DISPLAY ON
;CLEAR DISPLAY
MOV A,#06H ;ENTRY MODE SET CALL WRINS_CHK CALL DELAY37uS ;------------------------------------------------------------------MAIN_START: XXXX XXXX XXXX XXXX . . . . . . . . . .
. .
V2.2
26/42
2006/05/11
RS
R /W
D e la y (> 8 0 u s )
In te r n a l o p e r a tio n
F u n c t io n in g
DB7
IR 7
IR 3
AC3
N ot Busy
AC3
IR 7
IR 3
In s t r u c t io n w r it e
B u s y f la g c h e c k
B u s y f la g c h e c k
I n s tr u c t io n w r it e
RS R/W E
SEG1 to SEG40
40
ST7066U
V2.2
27/42
2006/05/11
ST7066U
l For 8-bit interface data, all eight bus lines (DB0 to DB7) are used.
R /W
D e la y (> 8 0 u s )
In te r n a l o p e r a t io n
F u n c t io n in g
DB7
D a ta
B usy
B usy
N ot Busy B u s y f la g c h e c k
D a ta
I n s t r u c t io n w r ite
B u s y f la g c h e c k
B u s y f la g c h e c k
I n s t r u c tio n w r it e
RS R/W E
SEG1 to SEG40
40
ST7066U
V2.2
28/42
2006/05/11
Duty Factor
1/8, 1/11 1/16
VCC(+5V)
VCC(+5V)
-5V
-5V
V2.2
29/42
2006/05/11
DB0-DB7
Valid data tC
DB0-DB7
V2.2
30/42
2006/05/11
ST7066U
l Interface Timing with External Driver
tct VOH2 CL1 tCWH tCWH VOL2
Symbol
tPOR tIOL tPW 1.
Characteristics
Power rise time I/O Low time Enable pulse width
Description
Power rise time that will trigger internal power on reset circuit The period that I/O is kept low.
Min.
0.1 40
Typ.
Max.
100
Unit
ms ms
During tPOR, VDD noise should be reduced (especially close to 2.0V). Otherwise the Power-ON-Reset function might be triggered several times and maybe cause unexpected result.
2.
During tIOL, the I/O ports of the interface (control and data signals) should be kept at Low.
V2.2
31/42
2006/05/11
ST7066U n AC Characteristics
(TA = 25, VCC = 2.7V) Symbol Characteristics
fOSC OSC Frequency
Test Condition
Internal Clock Operation R = 75KW External Clock Operation
Unit
KHz
fEX
125 45 -
270 50 -
410 55 0.2
KHz % ms
TR,TF
Rise/Fall Time
Write Mode (Writing data from MPU to ST7066U) TC TPW TR,TF TAS TAH TDSW TH Enable Cycle Time Pin E 1200 460 0 10 80 10 25 ns ns ns ns ns ns ns
Enable Pulse Width Pin E Enable Rise/Fall Time Pin E Address Setup Time Pins: RS,RW,E Address Hold Time Data Setup Time Data Hold Time Pins: RS,RW,E Pins: DB0 - DB7 Pins: DB0 - DB7
Read Mode (Reading Data from ST7066U to MPU) TC TPW TR,TF TAS TAH TDDR TH Enable Cycle Time Pin E 1200 480 0 10 10 25 320 ns ns ns ns ns ns ns
Enable Pulse Width Pin E Enable Rise/Fall Time Pin E Address Setup Time Pins: RS,RW,E Address Hold Time Data Setup Time Data Hold Time Pins: RS,RW,E Pins: DB0 - DB7 Pins: DB0 - DB7
Interface Mode with LCD Driver(ST7065) TCWH TCWL TCST TSU TDH TDM Clock Pulse with High Pins: CL1, CL2 Clock Pulse with Low Pins: CL1, CL2 Clock Setup Time Data Setup Time Data Hold Time M Delay Time Pins: CL1, CL2 Pin: D Pin: D Pin: M 800 800 500 300 300 0 2000 ns ns ns ns ns ns
V2.2
32/42
2006/05/11
ST7066U n AC Characteristics
(TA = 25, VCC = 5V) Symbol Characteristics
fOSC OSC Frequency
Test Condition
Internal Clock Operation R = 91KW External Clock Operation
Unit
KHz
fEX
125 45 -
270 50 -
410 55 0.2
KHz % ms
TR,TF
Rise/Fall Time
Write Mode (Writing data from MPU to ST7066U) TC TPW TR,TF TAS TAH TDSW TH Enable Cycle Time Pin E 1200 140 0 10 40 10 25 ns ns ns ns ns ns ns
Enable Pulse Width Pin E Enable Rise/Fall Time Pin E Address Setup Time Pins: RS,RW,E Address Hold Time Data Setup Time Data Hold Time Pins: RS,RW,E Pins: DB0 - DB7 Pins: DB0 - DB7
Read Mode (Reading Data from ST7066U to MPU) TC TPW TR,TF TAS TAH TDDR TH Enable Cycle Time Pin E 1200 140 0 10 10 25 100 ns ns ns ns ns ns ns
Enable Pulse Width Pin E Enable Rise/Fall Time Pin E Address Setup Time Pins: RS,RW,E Address Hold Time Data Setup Time Data Hold Time Pins: RS,RW,E Pins: DB0 - DB7 Pins: DB0 - DB7
Interface Mode with LCD Driver(ST7065) TCWH TCWL TCST TSU TDH TDM Clock Pulse with High Pins: CL1, CL2 Clock Pulse with Low Pins: CL1, CL2 Clock Setup Time Data Setup Time Data Hold Time M Delay Time Pins: CL1, CL2 Pin: D Pin: D Pin: M 800 800 500 300 300 0 2000 ns ns ns ns ns ns
V2.2
33/42
2006/05/11
Symbol
VCC VLCD VIN TA TSTO
Value
-0.3 to +7.0 VCC-10.0 to VCC+0.3 -0.3 to VCC+0.3 -40 C to + 90 C -55 C to + 125 C
o o o o
n DC Characteristics
( TA = 25 , VCC = 2.7 V 4.5 V ) Symbol Characteristics Test Condition
VCC VLCD ICC VIH1 VIL1 VIH2 VIL2 VOH1 VOL1 VOH2 VOL2 RCOM RSEG ILEAK IPUP Operating Voltage LCD Voltage Power Supply Current Input High Voltage (Except OSC1) Input Low Voltage (Except OSC1) Input High Voltage (OSC1) Input Low Voltage (OSC1) Output High Voltage (DB0 - DB7) Output Low Voltage (DB0 - DB7) Output High Voltage (Except DB0 - DB7) Output Low Voltage (Except DB0 - DB7) Common Resistance Segment Resistance Input Leakage Current Pull Up MOS Current VCC-V5 fOSC = 270KHz VCC=3.0V IOH = -0.1mA IOL = 0.1mA IOH = -0.04mA IOL = 0.04mA VLCD = 4V, Id = 0.05mA VLCD = 4V, Id = 0.05mA VIN = 0V to VCC VCC = 3V
Unit
V V mA V V V V V V V V KW KW mA mA
V2.2
34/42
2006/05/11
ST7066U n DC Characteristics
( TA = 25, VCC = 4.5 V - 5.5 V ) Symbol Characteristics
VCC VLCD ICC VIH1 VIL1 VIH2 VIL2 VOH1 VOL1 VOH2 VOL2 RCOM RSEG ILEAK IPUP Operating Voltage LCD Voltage Power Supply Current Input High Voltage (Except OSC1) Input Low Voltage (Except OSC1) Input High Voltage (OSC1) Input Low Voltage (OSC1) Output High Voltage (DB0 - DB7) Output Low Voltage (DB0 - DB7) Output High Voltage (Except DB0 - DB7) Output Low Voltage (Except DB0 - DB7) Common Resistance Segment Resistance Input Leakage Current Pull Up MOS Current
Test Condition
VCC-V5 fOSC = 270KHz VCC=5.0V IOH = -0.1mA IOL = 0.1mA IOH = -0.04mA IOL = 0.04mA VLCD = 4V, Id = 0.05mA VLCD = 4V, Id = 0.05mA VIN = 0V to VCC VCC = 5V
Unit
V V mA V V V V V V V V KW KW mA mA
V2.2
35/42
2006/05/11
Vcc V1 V2 COM1 V3 V4 V5
Vcc V1 V2 COM2 V3 V4 V5
Vcc V1 V2 COM16 V3 V4 V5
V2.2
36/42
2006/05/11
ST7066U
l Assume the oscillation frequency is 270KHZ, 1 clock cycle time = 3.7us, 1/11 duty; 1/4 bias,1 frame = 3.7us x 400 x 11 = 16280us=16.3ms (61.3Hz)
400 clocks 1 2 3 4 11 1 2 3 4 11 1 2 3 4 11
Vcc V1 COM1 V2 V3 V4 V5
Vcc V1 COM2 V2 V3 V4 V5
Vcc V1 COM11 V2 V3 V4 V5
V2.2
37/42
2006/05/11
ST7066U
l Assume the oscillation frequency is 270KHZ, 1 clock cycle time = 3.7us, 1/8 duty; 1/4 bias,1 frame = 3.7us x 400 x 8 = 11840us=11.8ms (84.7Hz)
400 clocks 1 2 3 4 8 1 2 3 4 8 1 2 3 4 8
Vcc V1 COM1 V2 V3 V4 V5
Vcc V1 COM2 V2 V3 V4 V5
Vcc V1 COM8 V2 V3 V4 V5
V2.2
38/42
2006/05/11
VCC PMOS
VCC PMOS
VCC PMOS
NMOS
NMOS
VCC
NMOS
Data NMOS
I/O PAD:DB0-DB7
V2.2
39/42
2006/05/11
ST7066U
ST7066U
V2.2
40/42
2006/05/11
ST7066U
ST7066U
ST7066U
V2.2
41/42
2006/05/11
Seg 1-40
Seg 1-40
Seg 1-40
DR2
DL2
DR1
ST7065
ST7065
CL1
CL2
V3
V4
V5
V6
ST7066U
VCC GND CL2 CL1
n Application Circuit
ST7066U
-V or GND
To MPU
VR=10K~30Kohm
V2.2
Note:Regsister=2.2K~10K ohm
42/42
2006/05/11