http://www.adafruit.com/datasheets/WS0010.pdf

文件編號 DOC# 版次 Rev
Title
001
WS-RD-0001
WS0010 Specification
生效日期 Effective Date :
OLED Driver/Controller
10/21/2010
Specification
2010.10.21
Written by
Approved by QRA Manager
Written by / Date
Issued by D.C.C.
Department
Research
&
Development
Controlled by DCC
Copy List
Code Name
Dept.
100
200
300
400
500
600
700
HR
S/M
MFG
R&D
CH
QRA
MIS
--
--
--
P
P
P
--
This document is the exclusive property of WINSTR (WINSTAR Display Co., Ltd.) and shall not be
reproduced or copied or transformed to any other format without prior permission of WINSTAR
本資料為華凌光電專有之財產,非經許可,不得複製,翻印或轉變成其他形式使用.
Page 0- 1
文件編號 DOC# 版次 Rev
Title
WS0010 Specification
001
WS-RD-0001
生效日期 Effective Date :
OLED Driver/Controller
10/21/2010
文件變更履歷頁
Document Change History
--
版次
變更項次
Rev.
Change
Items#
001
變更內容簡述
Change Description
碼
ECN #
撰寫者
Writer
E08090004
New Release
接續頁 CONTINUATION ---
變更依據文件號
是 YES;
生效日期
Eff. Date
08/06/2009
否 NO
This document is the exclusive property of WINSTR (WINSTAR Display Co., Ltd.) and shall not be
reproduced or copied or transformed to any other format without prior permission of WINSTAR
本資料為華凌光電專有之財產,非經許可,不得複製, 翻印或轉變成其他形式使用.
Page 0- 2
WINSTAR DISPLAY
WS0010
DESCRIPTION
WS0010 is an OLED Driver/Controller IC utilizing CMOS Technology specially designed to display
alphanumeric and Japanese kana characters as well as symbols and graphics. It can interface with
either 4-bit or 8-bit Microprocessor and display up to one 8-character line or two 8-character lines.
Display RAM, Character Generator, OLED Driver as well as a wide range of instruction functions such
as Display Clear, Cursor Home, Display ON/OFF, Cursor ON/OFF, Display Character Blink, Cursor
Shift, Display Shift are all incorporated into a single chip having the highest performance and reliability.
Pin assignments and application circuit are optimized for easy PCB layout and cost saving
advantages.
FEATURES
•
•
•
CMOS technology
Low power consumption
Microprocessor Interface
-- High-speed 8-bit parallel bi-directional interface with 6800-series or 8080-series
-- Serial interface available
•
•
•
•
•
•
•
•
•
•
•
•
•
•
4-bit or 8-Bit MPU interface
High speed MPU interface: 2MHz (VDD=5V)
128 x 8-bit display RAM (128 characters max.)
Auto reset function
5 x 8 and 5 x 10 dot matrix
Built-in oscillator with external resistors
Programmable duty cycle:
- 1/8 duty: (1 display line, 5 x 8 dots with cursor)
- 1/11 duty: (1 display line, 5 x 10 dots with cursor)
- 1/16 duty: (2 display lines, 5 x 8 dots with cursor)
Build-in selectable four sets of character generator ROM (CGROM)
- English Japanese Character
- Western European Character-I
- English Russian Character
- Western European Character-II
64 x 8-bits character generator RAM (CGRAM)
- Either 8 character fonts (5 x 8 dot matrix)
- or 4 character fonts ( 5 x 10 dot matrix)
16 common x 100 segment OLED drivers
Support graphic mode
Cascade application
Embedded DC-DC voltage converter
Package : bare die
Document No.:WS-RD-0001 Version: 001
1
OCT. 2010
WINSTAR DISPLAY
WS0010
FUNCTION DESCRIPTION
REGISTERS
WS0010 provides two types of 8-bit registers, namely: Instruction Register (IR) and Data Register (DR).
The register is selected using the RS Pin. When the RS pin is set to "0", the Instruction Register Type
is selected. When RS pin is set to "1", the Data Register Type is selected. Please refer to the table
below.
RS
R/WB
0
0
1
1
0
1
0
1
Operation
Instruction register write as an internal operation.
Read busy flag (DB7) and address counter (DB0 to DB6)
Data register write as an internal operation (DR to DDRAM or CGRAM)
Data register read as an internal operation (DDRAM or CGRAM to DR)
INSTRUCTION REGISTER (IR)
The Instruction Register is used to store the instruction code (i.e. Display Clear, Cursor Home and
others), Display Data RAM (DDRAM) Address, and the Character Generator RAM (CGRAM) Address.
Instruction register can only be written from the MPU.
DATA REGISTER (DR)
The Data Register is used as a temporary storage for data that are going to be written into the DDRAM
or CGRAM as well as those data that are going to be read from the DDRAM or CGRAM.
BUSY FLAG (BF)
The Busy Flag is used to determine whether WS0010 is idle or internally operating. When WS0010 is
performing some internal operations, the Busy Flag is set to "1". Under this condition, the no other
instruction will not be accepted. When RS Pin is set to "0" and R/WB Pin is set to "1", the Busy Flag will
be outputted to the DB7 pin.
When WS0010 is idle or has completed its previous internal operation, the Busy Flag is set to "0". The
next instruction can now be processed or executed.
ADDRESS COUNTER (AC)
The address counter is used to assign the Display Data RAM (DDRAM) Address and the Character
Generator RAM (CGRAM) Address. When Address information is written into the Instruction Register
(IR), this Address information is sent from the Instruction Register to the Address Counter. At the same
time, the nature of the Address (either CGRAM or DDRAM) is determined by the instruction.
After writing into or reading from the DDRAM or CGRAM, the Address Counter is automatically
increased or decreased by 1 (for Write or Read Function). It must be noted that when the RS pin is set
to "0" and R/WB is set to "1", the contents of the Address Counter are outputted to the pins -- DB0 to
DB6.
Document No.:WS-RD-0001 Version: 001
2
OCT. 2010
WINSTAR DISPLAY
WS0010
DISPLAY DATA RAM (DDRAM)
The Display Data RAM (DDRAM) is used to store the Display Data which is represented as 8-bit
character code. The Display Data RAM supports an extended capacity of 128 x 8-bits or 128 characters.
The Display Data RAM Address (ADD) is set in the Address Counter as a hexadecimal.
High Order Bits
Address Counter (hex)
AC6
AC5
Low Order Bits
AC4
AC3
AC2
AC1
AC0
An example of a DDRAM Address=39 is given below.
AC6
AC5
0
1
DDRAM Address: 39
AC4
AC3
AC2
1
1
AC1
AC0
0
1
0
1-LINE DISPLAY (N=0)
When the number of characters displayed is less than 128, the first character is displayed at the head
position. The relationship between the DDRAM Address and position on the OLED Panel is shown
below.
Display Position (digit)
DDRAM address
(hexadecimal)
1
2
3
4
………….
126
127
128
00
01
02
03
………….
7D
7E
7F
For example, when only 8 characters are displayed in one Display Line, the relationship between the
DDRAM Address and position on the OLED Panel is shown below.
Display Position
1
2
3
4
5
6
7
8
DDRAM address
00
01
02
03
04
05
06
07
Shift left
01
02
03
04
05
06
07
08
Shift right
7F
00
01
02
03
04
05
06
Document No.:WS-RD-0001 Version: 001
3
OCT. 2010
WINSTAR DISPLAY
WS0010
2-LINE DISPLAY (N=1)
Case 1: The Number of Characters displayed is less than 64 x 2 lines
When the number of characters displayed is less than 64 x 2 lines, then the first character of the first
and second lines are displayed starting from the head. It is important to note that every line reserve
64 x8bits DDRAM space. 1st line is 00 to 3F,second line is 40 to 7F.Please refer the figure below.
Display Position
DDRAM Address
(hexadecimal)
1
2
3
4
……….
61
62
63
64
00
40
01
41
02
42
03
43
……….
……….
3C
7C
3D
7D
3E
7E
3F
7F
To illustrate, for 2-line x 20 characters display, the relationship between the DDRAM address and
position of the OLED panel is shown below.
Display Position
1
2
3
4
……….
18
19
20
00
01
02
03
……….
11
12
13
40
41
42
43
……….
51
52
53
Shift left
01
41
02
42
03
43
04
44
……….
……….
12
52
13
53
14
54
Shift right
3F
7F
00
40
01
41
02
42
……….
……….
10
50
11
51
12
52
DDRAM address
(hexadecimal)
Case 2: 40-Character x 2 Lines Display
WS0010(Master) can be extended to display 40 characters x 2 lines by cascade the other
WS0010(Slave). When there is a Display Shift operation, the DDRAM Address is also shifted.
Please refer to the example below.
Display
1
2
3
4
5
6
7
8
9 10 11 …. 37 38 39
Position
40
00
DDRAM address 40
01
41
02 03 04 05 06 07
42 43 44 45 46 47
WS0010 display (Master)
08
48
09 0A …. 24 25 26 27
49 4A …. 64 65 66 67
Cascade 2nd WS0010(Slave)
Shift left
01
41
02
42
03
43
04
44
05
45
06
46
07
47
08
48
09
49
0A 0B …. 25
4A 4B …. 65
26
66
27
67
28
68
Shift right
3F
7F
00
40
01
41
02
42
03
43
04
44
05
45
06
46
07
47
08
48
…. 23
…. 63
24
64
25
65
26
66
Document No.:WS-RD-0001 Version: 001
4
09
49
OCT. 2010
WINSTAR DISPLAY
WS0010
CHARACTER GENERATOR ROM (CGROM)
WS0010 provides three set of character font. Character font can be selected by programming FT.
ENGLISH_JAPANESE CHARACTER FONT TABLE(default FT[1:0]= 00)
Document No.:WS-RD-0001 Version: 001
5
OCT. 2010
WINSTAR DISPLAY
WS0010
WESTERN EUROPEAN CHARACTER
FONT TABLE I (FT[1:0]=01)
Document No.:WS-RD-0001 Version: 001
6
OCT. 2010
WINSTAR DISPLAY
WS0010
ENGLISH_RUSSIAN CHARACTER FONT TABLE(FT[1:0]=10)
Document No.:WS-RD-0001 Version: 001
7
OCT. 2010
WINSTAR DISPLAY
WS0010
WESTERN EUROPEAN CHARACTER FONT TABLE II (FT[1:0]=11)
Document No.:WS-RD-0001 Version: 001
8
OCT. 2010
WINSTAR DISPLAY
WS0010
CHARACTER GENERATOR RAM (CGRAM)
The Character Generator RAM (CGRAM) is used to generate either 5 x 8 dot or 5 x 10 dot character
patterns. It can generate eight 5 x 8 dot character patterns or four 5 x 10 dot character patterns. The
character patterns generated by the CGRAM can be rewritten. User-defined character patterns for the
CGRAM are supported.
Document No.:WS-RD-0001 Version: 001
9
OCT. 2010
WINSTAR DISPLAY
WS0010
RELATIONSHIP BETWEEN CGRAM ADDRESS, DDRAM CHARACTER CODE AND CGRAM
CHARACTER PATTERNS (FOR 5 X 8 DOT CHARACTER PATTERN)
Character Codes
Character Patterns
(DDRAM Data)
CGRAM Address
(CGRAM Data)
7 6 5 4 3 2 1 0
5 4 3 2 1 0
7 6 5 4 3 2 1 0
High
High
High
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
Low
*
*
*
*
0 0 0
0 0 1
.
.
.
.
.
.
.
.
.
.
.
.
1 1 1
Low
Low
Character pattern 1
0 0 0
*
*
*
1 1 1 1 0
0 0 1
*
*
*
1 0 0 0 1
0 1 0
*
*
*
1 0 0 0 1
0 0 0 0 1 1
*
*
*
1 1 1 1 0
1 0 0
*
*
*
1 0 1 0 0
1 0 1
*
*
*
1 0 0 1 0
1 1 0
*
*
*
1 0 0 0 1
1 1 1
*
*
*
0 0 0 0 0
Cursor Position
0 0 0
*
*
*
1 0 0 0 1
Character pattern 2
0 0 1
*
*
*
0 1 0 1 0
0 1 0
*
*
*
1 1 1 1 1
0 0 1 0 1 1
*
*
*
0 0 1 0 0
1 0 0
*
*
*
1 1 1 1 1
1 0 1
*
*
*
0 0 1 0 0
1 1 0
*
*
*
0 0 1 0 0
1 1 1
*
*
*
0 0 0 0 0
.
.
.
.
.
.
.
.
*
*
*
.
.
.
.
0 0 0
*
*
*
0 0 0 0 0
0 0 1
*
*
*
0 1 0 1 0
0 1 0
*
*
*
0 0 0 0 0
1 1 1 0 1 1
*
*
*
0 0 0 0 0
1 0 0
*
*
*
1 0 0 0 1
1 0 1
*
*
*
0 1 1 1 0
1 1 0
*
*
*
0 0 1 0 0
1 1 1
*
*
*
0 0 0 0 0
Document No.:WS-RD-0001 Version: 001
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
10
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Cursor position
Character pattern
3~7
Character pattern 8
Cursor position
OCT. 2010
WINSTAR DISPLAY
WS0010
Notes:
1. * = Not Relevant
2. The character pattern row positions correspond to the CGRAM data bits -- 0 to 4, where bit 4 is in
the left position.
3. Character Code Bits 0 to 2 correspond to the CGRAM Address Bits 3 to 5 (3 bits: 8 types)
4. If the CGRAM Data is set to "1", then the selection is displayed. If the CGRAM is set to "0", there no
selection is made.
5. The CGRAM Address Bits 0 to 2 are used to define the character pattern line position. The 8th line
is the cursor position and its display is formed by the logical OR with the cursor. The 8th line
CGRAM data bits 0 to 4 must be set to "0". If any of the 8th line CGRAM data bits 0 to 4 is set to "1",
the corresponding display location will light up regardless of the cursor position.
6. When the Character Code Bits 4 to 7 are set to "0", then the CGRAM Character Pattern is selected.
It must be noted that Character Code Bit 3 is not relevant and will not have any effect on the
character display. Because of this, the first Character Pattern shown above (R) can be displayed
when the Character Code is 00H or 08H.
Document No.:WS-RD-0001 Version: 001
11
OCT. 2010
WINSTAR DISPLAY
WS0010
RELATIONSHIP BETWEEN CGRAM ADDRESS, DDRAM CHARACTER CODE AND CGRAM
CHARACTER PATTERNS (FOR 5 X10 DOT CHARACTER PATTERN)
Character Codes
(DDRAM Data)
7 6 5 4 3 2 1 0
High
Low
0 0 0 0
* 0 0
0 0 0 0
.
.
.
.
0 0 0 0
*
.
.
.
.
* 1 1
*
*
*
CGRAM Address
5 4 3 2 1 0
High
Low
0 0 0 0
0 0 0 1
0 0 1 0
0 0 1 1
0 1 0 0
0 1 0 1
0 1 1 0
0 1 1 1
0 0 1 0 0 0
1 0 0 1
1 0 1 0
1 0 1 1
1 1 0 0
1 1 0 1
1 1 1 0
1 1 1 1
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
0
0
0
0
0
0
0
0
1
1 1
1
1
1
1
1
1
1
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
Document No.:WS-RD-0001 Version: 001
Character Patterns
(CGRAM Data)
7 6 5 4 3 2 1 0
High
Low
* * * 0 0 1 0 0
* * * 0 1 1 1 0
* * * 1 0 1 0 1
* * * 1 0 1 0 0
* * * 0 1 1 0 0 Character pattern 1
* * * 0 0 1 1 0
* * * 0 0 1 0 1
* * * 1 0 1 0 1
* * * 0 1 1 1 0
* * * 0 0 1 0 0
* * * * * * * *
Cursor Position
* * * * * * * *
* * * * * * * *
* * * * * * * *
* * * * * * * *
* * * * * * * *
. . . . . Character pattern
2~3
. . . . .
* * *
. . . . .
. . . . .
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
12
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
1
1
1
1
0
0
0
1
0
0
*
*
*
*
*
*
0
1
1
1
1
0
0
0
1
0
*
*
*
*
*
*
1
1
1
1
1
1
1
1
1
1
*
*
*
*
*
*
0
1
1
1
1
0
0
0
1
0
*
*
*
*
*
*
1
1
1
1
0
0 Character pattern 4
0
1
0
0
*
Cursor Position
*
*
*
*
*
OCT. 2010
WINSTAR DISPLAY
WS0010
Notes:
1. * = Not Relevant
2. The character pattern row positions correspond to the CGRAM data bits -- 0 to 4, where bit 4 is in
the left position.
3. Character Code Bits 1 and 2 correspond to the CGRAM Address Bits -- 4 and 5 respectively (2 bits :
4 types)
4. If the CGRAM Data is set to "1", then the selection is displayed. If the CGRAM is set to "0", there no
selection is made.
5. The CGRAM Address Bits 0 to 3 are used to define the character pattern line position. The 11th line
is the cursor position and its display is formed by the logical OR with the cursor. The 11th line
CGRAM data bits 0 to 4 must be set to "0". If any of the 11th line CGRAM data bits 0 to 4 is set to "1",
the corresponding display location will light up regardless of the cursor position.
6. When the Character Code Bits 4 to 7 are set to "0", then the CGRAM Character Pattern is selected.
It must be noted that Character Code Bit -- 0 and 3 are not relevant and will not have any effect on
the character display. Because of this, the Character Pattern shown above ( $ ) can be displayed
when the Character Code is 00H, 01H, 08H or 09H.
Document No.:WS-RD-0001 Version: 001
13
OCT. 2010
WINSTAR DISPLAY
WS0010
TIMING GENERATION CIRCUIT
The timing signals for the internal circuit operations (i.e. DDRAM, CGRAM, and CGROM) are
generated by the Timing Generation Circuit. The timing signals for the MPU internal operation and
the RAM Read for Display are generated separately in order to prevent one from interfering with the
other. This means that, for example, when the data is being written into the DDRAM, there will be
no
unwanted interference such as flickering in areas other than the display area.
OLED DRIVER CIRCUIT
WS0010 provides 16 Common Drivers and 100 Segment Driver Outputs. When a character font and the
number of lines to be displayed have been selected, the corresponding Common Drivers output the
waveform automatically. A non-selection waveform will be outputted by the rest of the Common outputs.
CURSOR/BLINK CONTROL CIRCUIT
The cursor or character blinking is generated by the Cursor / Blink Control Circuit. The cursor or the
blinking will appear with the digit located at the Display Data RAM (DDRAM) Address Set in the Address
Counter (AC).
Address counter
AC6
AC5
AC4
AC3
AC2
AC1
AC0
0
0
0
0
1
1
1
CASE 1: FOR 1-LINE DISPLAY
Example: When the Address Counter (AC) is set to 0EH, the cursor position is displayed at DDRAM
Address 0EH.
Display position
DDRAM address
(hexadecimal)
1
2
3
4
5
……
14
15
……
19
20
00
01
02
03
04
……
0D
0E
……
12
13
|
Cursor Position
Note:
The cursor or blinking appears when the Address Counter (AC) selects the Character
Generator RAM (CGRAM). When the AC selects CGRAM Address, then the cursor or the blinking is
displayed in a irrelevant and meaningless position.
Document No.:WS-RD-0001 Version: 001
14
OCT. 2010
WINSTAR DISPLAY
WS0010
CASE 2: FOR 2-LINE DISPLAY
Example: When the Address Counter (AC) is set to 46H, the cursor position is displayed at DDRAM
Address 46H.
Display position
DDRAM address
(hexadecimal)
1
00
40
2
01
41
3
02
42
4
03
43
5
04
44
6
05
45
7
8
06
07
46
47
|
Cursor Position
……
……
……
19
09
49
20
13
53
Note:
The cursor or blinking appears when the Address Counter (AC) selects the Character Generator RAM
(CGRAM). When the AC selects CGRAM Address, then the cursor or the blinking is displayed in an
irrelevant and meaningless position.
Document No.:WS-RD-0001 Version: 001
15
OCT. 2010
WINSTAR DISPLAY
WS0010
INTERNAL RESET CIRCUIT INITIALIZATION
When power is turned ON, WS0010 is initialized automatically by an internal reset circuit . The following
items are set (default) during the initialization.
1. Display clear
2. Function set:
DL="1": 8-bit interface data
N="0": 1-line display
F="0": 5 x 8 dot character font
3. Power turn off
PWR=”0”
4. Display on/off control:
D="0": Display off
C="0": Cursor off
B="0": Blinking off
5. Entry mode set
I/D="1": Increment by 1
S="0": No shift
6. Cursor/Display shift/Mode / Pwr
S/C=”0”, R/L=”1”: Shifts cursor position to the right
G/C=”0”: Character mode
Pwr=”1”: Internal DCDC power on
The Busy Flag (BF) is in a busy state until the initialization is completed (BF="1"). The busy state will be
in effect 10 ms after VDD stabilization.
.
Document No.:WS-RD-0001 Version: 001
16
OCT. 2010
WINSTAR DISPLAY
WS0010
CHARACTER MODE ADDRESSING
WS0010 provides two kind of character mode. User can fill in 128 characters data (N=0, one line) or 64
characters data per line (N=1, two line) in embedded RAM to display graphic. Character mode address can
be controlled by DDRAM address instruction.
Address Format
CA (Character Address)
DB7
1
DB6
ADD6
DB5
ADD5
DB4
ADD4
DB3
ADD3
DB2
ADD2
DB1
ADD1
DB0
ADD0
……
……
CA=10111111
CA=11111111
……
……
……
CA=11111111
CA=11111110
……
CA=10111110
64
4
CA=11111110
CA=11111101
63
3
CA=10111101
CA=11111100
62
2
CA=11111101
CA=10000010
61
1
CA=10111100
CA=10000001
……
……
CA=11111100
128
CA=10000011
127
CA=10000011
126
CA=11000011
125
CA=10000010
……
CA=11000010
……
CA=10000001
4
CA=11000001
3
CA=10000000
2
CA=11000000
1
CA=10000000
(1)1-Line condition (N=0)
(2)2-Line condition (N=1)
Document No.:WS-RD-0001 Version: 001
17
OCT. 2010
WINSTAR DISPLAY
WS0010
GRAPHIC MODE ADDRESSING
WS0010 provides not only character mode but also graphic mode. User can fill in 100x16 data in
embedded RAM to display graphic. Graphic mode addressing is different from character mode.
Use DDRAM address instruction to set X-axis address of Graphic mode and CGRAM address instruction
to set Y-axis of Graphic mode.
GXA=10000011
GYA=01000000
GXA=10000011
GYA=01000001
98
99
100
……
……
18
GXA=11100011
GYA=01000000
GXA=10000010
GYA=01000000
GXA=10000010
GYA=01000001
97
……
GXA=11100011
GYA=01000001
GXA=10000001
GYA=01000000
GXA=10000001
GYA=01000001
DB2
ADD2
0
GXA=11100010
GYA=01000000
GXA=10000000
GYA=01000000
GXA=10000000
GYA=01000001
DB3
ADD3
0
GXA=11100010
GYA=01000001
CGA0=0
Document No.:WS-RD-0001 Version: 001
……
D0
D1
D2
D3
D4
D5
D6
D7
D0
D1
D2
D3
D4
D5
D6
D7
DB4
ADD4
0
GXA=11100001
GYA=01000000
4
DB5
ADD5
0
GXA=11100001
GYA=01000001
3
DB6
ADD6
1
GXA=11100000
GYA=01000000
2
DB7
1
0
GXA=11100000
GYA=01000001
1
CGA0=1
Address Format
GXA (Graphic X-axis Address)
GYA (Graphic Y-axis Address)
DB1
ADD1
0
DB0
ADD0
CGA0
OCT. 2010
WINSTAR DISPLAY
WS0010
INITIALIZATION BY INSTRUCTION
(1)8-bit mode
Document No.:WS-RD-0001 Version: 001
19
OCT. 2010
WINSTAR DISPLAY
WS0010
(2)4-bit mode
Document No.:WS-RD-0001 Version: 001
20
OCT. 2010
WINSTAR DISPLAY
WS0010
INSTRUCTIONS
WS0010's Instruction Register (IR) and Data Register (DR) are the only registers that can be controlled
by the MPU. Prior to the commencement of it internal operation, WS0010 temporarily stores the control
information to its Instruction Register (IR) and Data Register (DR) in order to easily facilitate interface with
various types of MPU. The internal operations of the WS0010 are determined by the signals (RS, R/WB,
DB0 to DB7) that are sent from the MPU. These signals are categorized into 4 instructions types, namely:
1.
2.
3.
4.
Function Setting Instructions (i.e. Display, Format, Data Length etc.)
Internal RAM Address Setting Instructions
Data Transfer with Internal RAM Instructions
Miscellaneous Function Instructions
The generally used instructions are those that execute data transfers with the internal RAM. However,
when the internal RAM addresses are auto incremented/decremented by 1 after each Data Write, the
program load of the MPU is lightened. The Display Shift Instruction can be executed at
the same time as the Display Data Write, thereby minimizing system development
time with maximum programming efficiency.
When an instruction is being executed for an internal operation, only the Busy Flag/Address Read
Instruction can be performed. The other instructions are not valid. It should be noted that during the
execution of an instruction, the Busy Flag is set to "1". The Busy Flag is set to "0" when the instructions
are can be accepted and executed. Therefore, the Busy Flag should be checked to make certain that
BF = "0" before sending another instruction from the MPU. If not, the time between the first instruction
and the next instruction is longer than the time it takes to execute the instruction itself.
Document No.:WS-RD-0001 Version: 001
21
OCT. 2010
WINSTAR DISPLAY
WS0010
Max.
Execution
Time when
fsp or fosc =
250KHz
Code
Instruction
Description
RS
Clear Display 0
Return Home 0
R/WB DB7
DB6
DB5
DB4
DB3
DB2
DB1
DB0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
Clears entire display.
Sets DDRAM Address 0 into the
Address Counter
Sets DDRAM Address 0 into the
Address Counter.
Returns shifted display to
original position. DDRAM
contents remain unchanged.
(DB0 is test pin. User should
set DB0=0 all the time)
Entry Mode
Set
0
0
0
0
0
0
0
1
I/D
S
Sets cursor move direction and
specifies display shift.
(These operations are
performed during data write and
read.)
Display
ON/OFF
Control
0
0
0
0
0
0
1
D
C
B
Sets entire Display (D) ON/OFF.
Sets Cursor (C) ON/OFF.
Sets Blinking (B) of Cursor
Position Character.
0
0
0
0
1
S/C
R/L
0
0
G/C
PWR
1
1
Cursor/
0
Display Shift/
Mode/ Pwr
Moves cursor & shifts display
without changing DDRAM
contents.
Sets Graphic/Character Mode
Sets internal power on/off
Sets interface data length (DL).
Sets number of display lines (N).
Sets Character Font (F).
Sets Font Table (FT)
Sets CGRAM Address. CGRAM
data is sent and received after this
setting.
6.2ms
0
0
0
0
0
Function Set
0
0
0
0
1
DL
N
F
FT1
FT0
et CGRAM
Address
0
0
0
1
ACG
ACG
ACG
ACG
ACG
ACG
et DDRAM
Address
0
0
1
ADD
ADD
ADD
ADD
ADD
ADD
ADD
Sets DDRAM Address. The
DDRAM data Is sent and
received after this setting.
0
AC
Reads Busy Flag (BF) indicating
that internal operation is being
performed.
Reads Address Counter
contents.
0
Read Busy
Flag &
Address
AC
AC
AC
AC
AC
AC
0
0
1
BF
Write data
into the
CGRAM or
DDRAM
1
0
Write Data
Writes data into the CGRAM or
DDRAM
0
Read Data
from the
CGRAM or
DDRAM
1
1
Read Data
Read data from the CGRAM or
DDRAM
0
Notes:
1. After the CGRAM/DDRAM Read or Write Instruction has been executed, the RAM Address
Counter is incremented or decremented by 1. After the Busy Flag is turned OFF, the RAM Address
is updated.
2. I/D=Increment/Decrement Bit
Document No.:WS-RD-0001 Version: 001
22
OCT. 2010
WINSTAR DISPLAY
WS0010
- I/D="1": Increment
- I/D="0": Decrement
3. S=Shift Entire Display Control Bit. When S=”0”, shift function disable.
4. BF=Busy Flag
- BF="1": Internal Operating in Progress
- BF="0": No Internal Operation is being executed, next instruction can be accepted.
5. R/L=Shift Right/Left
- R/L="1": Shift to the Right
- R/L="0": Shift to the Left
6. S/C=Display Shift/Cursor Move
- S/C="1": Display Shift
- S/C="0": Cursor Move
7. G/C=Graphic/Character mode selection. G/C=”0”, Character mode is selected. G/C=”1”, Graphic
mode is selected.
8. PWR=Internal DCDC on/of control. PWR=”1”, DCDC on. PWR=”0”, DCDC off.
9. DDRAM=Display Data RAM
10. CGRAM=Character Generator RAM
11. ACG=CGRAM Address
12. ADD=Address Counter Address (corresponds to cursor address)
13. AC=Address Counter (used for DDRAM and CGRAM Addresses)
14. F=Character Pattern Mode
- F="1": 5 x 10 dots
- F="0": 5 x 8 dots
15. N=Number of Lines Displayed
- N="1": 2 -Line Display
- N="0": 1-Line Display
Document No.:WS-RD-0001 Version: 001
23
OCT. 2010
WINSTAR DISPLAY
WS0010
INSTRUCTION DESCRIPTION
CLEAR DISPLAY INSTRUCTION
RS R/WB DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
0
0
0
0
0
0
0
0
0
1
This instruction is used to clear the Display Write Space 20H in all DDRAM Addresses. That is, the
character pattern for the Character Code 20H must be a BLANK pattern. It then sets the DDRAM Address
0 into the Address Counter and reverts the display to its original state (if the display has been shifted). The
display will be cleared and the cursor or blinking will go to the left edge of the display. If there are 2 lines
displayed, the cursor or blinking will go to the first line 's left edge of the display.
Under the Entry Mode, this instruction also sets the I/D to 1 (Increment Mode). The S Bit of the Entry
Mode does not change.
RETURN HOME INSTRUCTION
RS R/WB DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
0
0
0
0
0
0
0
0
1
*
Note: * = Not Relevant
This instruction is used to set the DDRAM Address 0 into the Address Counter and revert the display to
its original status (if the display has been shifted). The DDRAM contents do not change.
The cursor or blinking will go to the left edge of the display. If there are 2 lines displayed, the cursor or
blinking will go to the first line's left edge of the display.
Document No.:WS-RD-0001 Version: 001
24
OCT. 2010
WINSTAR DISPLAY
WS0010
ENTRY MODE SET INSTRUCTION
The Entry Mode Set Instruction has two controlling bits: I/D and S. Please refer to the table below.
RS R/WB DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
0
0
0
0
0
0
0
1
I/D
S
I/D IS THE INCREMENT/DECREMENT BIT.
When I/D is set to "1", the DDRAM Address is incremented by "1" when a character code is written into
or read from the DDRAM. An increment of 1 will move the cursor or blinking one step to the right.
When I/D is set to "0", the DDRAM is decremented by 1 when a character code is written into or read
from the DDRAM. A decrement of 1 will move the cursor or blinking one step to the left.
S: SHIFT ENTIRE DISPLAY CONTROL BIT
This bit is used to shift the entire display. When S is set to "1", the entire display is shifted to the right
(when I/D ="0") or left (when I/D ="1"). When S is set to "0", the display is not shifted.
Ex1 : I/D=1, S=1
Ex2 : I/D=0, S=1
Document No.:WS-RD-0001 Version: 001
25
OCT. 2010
WINSTAR DISPLAY
WS0010
DISPLAY ON/OFF CONTROL INSTRUCTION
The Display On / OFF Instruction is used to turn the display ON or OFF. The controlling bits are D, C
and B.
RS R/WB DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
0
0
0
0
0
0
1
D
C
B
D: DISPLAY ON/OFF BIT
When D is set to "1", the display is turned ON. When D is set to "0", the display is turned OFF and the
display data is stored in the DDRAM. The display data can be instantly displayed by setting D to "1".
C: CURSOR DISPLAY CONTROL BIT
When C is set to "1", the cursor is displayed. In a 5 x 8 dot character font, the cursor is displayed via the
5 dots in the 8th line. In a 5 x 10 dot character font, it is displayed via 5 dots in the 11th line.
When C is set to "0", the cursor display is disabled.
During a Display Data Write, the function of the I/D and others will not be altered even if the cursor is not
present. Please refer to the figure below.
5 x 8 Dot
Character
Font
5 x 10 Dot
Character
Font
Cursor
… Cursor
Document No.:WS-RD-0001 Version: 001
26
OCT. 2010
WINSTAR DISPLAY
WS0010
B: BLINKING CONTROL BIT
When B is set to '1", the character specified by the cursor blinks. The blinking feature is displayed by
switching between the blank dots and the displayed character at a speed of 409.6ms intervals when
the fcp or fosc is 250kHz. Please refer to the figure below.
Figure 1
Figure 2
Note: Figures 1 and 2 are alternately displayed
The cursor and the blinking can be set to display at the same time. The blinking frequency depends on
the fosc or the reciprocal of fcp.
To illustrate, when fosc=250K Hz, then, the blinking frequency=409.6 x 250/270=379.2ms
Document No.:WS-RD-0001 Version: 001
27
OCT. 2010
WINSTAR DISPLAY
WS0010
CURSOR/DISPLAY SHIFT INSTRUCTION
This instruction is used to shift the cursor or display position to the left or right without writing or reading
the Display Data. This function is used to correct or search the display. Please refer to the table below.
RS R/WB DB7 DB6 DB5 DB4 DB3 DB2 DB1
0
0
S/C
R/L
0
0
1
1
0
1
0
1
0
0
0
0
0
0
0
0
1
1
S/C R/L
G/C PW
0
1
DB0
0
1
Shift Function
Shifts the cursor position to the left. (AC is decremented by 1).
Shifts cursor position to the right. (AC incremented by 1).
Shifts entire display to the left. The cursor follows the display shift.
Shifts the entire display to the right. The cursor follows the display shift.
In a 2-line Display, the cursor moves to the second line when it passes the 40th digit of the first line.
The first and second line displays will shift at the same time.
When the displayed data is shifted repeatedly, each line moves only horizontally. The second line
display does not shift into the first line position.
The Address Counter (AC) contents will not change if the only action performed is a Display Shift.
G/C: GRAPHIC MODE / CHARACTER MODE SELECTION
This bit is used to select the display mode for further process.
When G/C = 1, the GRAPHIC MODE will be selected.
When G/C = 0, the CHARACTER MODE will be selected.
PWR: ENABLE/DISABLE INTERNAL POWER
This bit is used to turn ON or turn OFF the internal power.
When PWR = 1, the internal power is turned ON.
When PWR = 0, the internal power is turned OFF.
FUNCTION SET INSTRUCTION
The Function Set Instruction has three controlling 3 bits, namely: DL, N and F. Please refer to the table
below.
RS R/WB DB7 DB6 DB5 DB4 DB3 DB2 DB1
0
0
Document No.:WS-RD-0001 Version: 001
0
0
1
DL
28
N
F
FT1
DB0
FT0
OCT. 2010
WINSTAR DISPLAY
WS0010
DL: INTERFACE DATA LENGTH CONTROL BIT
This is used to set the interface data length. When DL is set to "1", the data is sent or received in 8-bit
length via the DB0 to DB7 (for an 8-Bit Data Transfer). When DL is set to "0", the data is sent
or received in 4-bit length via DB4 to DB7 (for a 4-Bit Data Transfer). When the 4-bit data
length is selected, the data must be sent or received twice.
N: NUMBER OF DISPLAY LINE
This is used to set the number of display lines. When N="1", the 2-line display is selected. When N is
set to "0", the 1-line display is selected.
F: CHARACTER FONT SET
This is used to set the character font set. When F is set to "0", the 5 x 8 dot character font is selected.
When F is set to "1", the 5 x 10 dot character font is selected.
It must be noted that the character font setting must be performed at the head of the program before
executing any instructions other than the Busy Flag and Address Instruction. Otherwise, the Function
Set Instruction cannot be executed unless the interface data length is changed.
FT1, FT0: FONT TABLE SELECTION
These two bits are used to select one font table out of the three for further process.
When (FT1, FT0) = (0, 0), the ENGLISH_JAPANESE CHARACTER FONT TABLE will be selected.
(FT1, FT0) = (0, 1), the WESTERN EUROPEAN CHARACTER FONT TABLE-I will be selected.
(FT1, FT0) = (1, 0), the ENGLISH_RUSSIAN CHARACTER FONT TABLE will be selected.
(FT1, FT0) = (1, 1), the WESTERN EUROPEAN CHARACTER FONT TABLE-II will be selected.
Note: The default setting for FT1 and FT0 is 0 and 0 respectively which means the default Font Table
is ENGLISH_JAPANESE CHARACTER FONT TABLE.
SET CGRAM ADDRESS INSTRUCTION
This instruction is used to set the CGRAM Address binary AAAAAA into the Address Counter. Data is
then written to or read from the MPU for CGRAM.
RS R/WB DB7 DB6 DB5 DB4 DB3 DB2 DB1
0
0
0
0 ACG ACG ACG ACG ACG
DB0
ACG
Note: ACG is the CGRAM Address
Document No.:WS-RD-0001 Version: 001
29
OCT. 2010
WINSTAR DISPLAY
WS0010
SET DDRAM ADDRESS INSTRUCTION
This instruction is used to set the DDRAM Address binary AAAAAAA into the Address Counter. The
data is written to or read from the MPU for the DDRAM. If 1-line display is selected (N="0"), then
AAAAAAA can be 00H to 4FH. When the 2-line display is selected, then AAAAAAA can be 00H to 27H
for the first line and 40H to 67H for the second line.
RS R/WB DB7 DB6
0
0
1
ADD
DB5
DB4
DB3
ADD ADD ADD
DB2
DB1
DB0
ADD ADD
ADD
Note: ADD = DDRAM Address
READ BUSY FLAG AND ADDRESS INSTRUCTION
This instruction is used to read the Busy Flag (BF) to indicate if WS0010 is internally operating on a
previously received instruction. If BF is set to "1", then the internal operation is in progress and the next
instruction will not be accepted. If the BF is set to "0", then the previously received instruction has been
executed and the next instruction can be accepted and processed. It is important to check the BF
status before proceeding to the next write operation. The value of the Address Counter in binary
AAAAAAA is simultaneously read out. This Address Counter is used by both the CGRAM and the
DDRAM and its value is determined by the previous instruction. The contents of the address are the
same as for the instructions -- Set CGRAM Address and Set DDRAM Address.
RS
0
R/WB
1
DB7
BF
AC
DB6
AC
DB5 DB4
AC
AC
DB3
AC
DB2
DB1 DB0
AC
AC
Notes:
1. BF=Busy Flag
2. AC=Address Counter
Document No.:WS-RD-0001 Version: 001
30
OCT. 2010
WINSTAR DISPLAY
WS0010
WRITE DATA TO CGRAM / DDRAM INSTRUCTION
This instruction writes 8-bit binary data -- DDDDDDDD to the CGRAM or the DDRAM. The previous
CGRAM or DDRAM Address setting determines whether a data is to be written into the CGRAM or the
DDRAM. After the write process is completed, the address is automatically incremented or
decremented by 1 in accordance with the Entry Mode instruction. It must be noted that the Entry Mode
instruction also determines the Display Shift.
RS R/WB DB7 DB6 DB5 DB4 DB3
1
0
D
D
D
D
D
DB2
D
DB1
D
DB0
D
READ DATA FROM THE CGRAM OR DDRAM INSTRUCTION
This instruction reads the 8-bit binary data -- DDDDDDDD from the CGRAM or the DDRAM. The Set
CGRAM Address or Set DDRAM Address Set Instruction must be executed before this instruction can
be performed, otherwise, the first Read Data will not be valid.
RS R/WB DB7 DB6 DB5 DB4 DB3
1
1
D
D
D
D
D
DB2
D
DB1
D
DB0
D
When the Read Instruction is executed in series, the next address data is normally read from the
Second Read. There is no need for the Address Set Instruction to be performed before this Read
instruction when using the Cursor Shift Instruction to shift the cursor (Reading the DDRAM). The
Cursor Shift Instruction has the same operation as that of the Set the DDRAM Address Instruction.
After a Read instruction has been executed, the Entry Mode is automatically incremented or
decremented by 1. It must be noted that regardless of the Entry Mode, the Display Shift is not
executed.
After the Write instruction to either the CGRAM or DDRAM has been performed, the Address Counter
is automatically increased or decreased by 1. The RAM data selected by the Address Counter cannot
be read out at this time even if the Read Instructions are executed. Therefore, in order to correctly read the
data, the following procedure has suggested:
1. Execute the Address Set or Cursor Shift (only with DDRAM) Instruction
2. Just before reading the desired data, execute the Read Instruction from the second time the
Read Instruction has been sent.
Document No.:WS-RD-0001 Version: 001
31
OCT. 2010
WINSTAR DISPLAY
WS0010
MPU INTERFACE
WS0010 provides High-speed 8-bit parallel bi-directional interface with 6800-series or 8080-series
and serial interface. User can choice by signal “PS” and “C68”.
68 – series interface
(a) 8-BIT mode(Not available for serial mode)
When WS0010 interfaces with an 8-bit MPU, DB0 to DB7 are used. The 8-bit data transfer starts
from the four high order bits --DB4 to DB7 followed by the four low order bits -- DB0 to DB3.
An example of a Busy Flag Check Timing in an 8-Bit MPU Interface is given in the diagram below.
RS
R/WB
E
INTERNAL
OPERATION
OPERATING
IDLE
DATA
DB7
INSTRUCTION
WRITE
BUSY
BUSY
BUSY FLAG
CHECK
BUSY FLAG
CHECK
DATA
BUSY FLAG
CHECK
INSTRUCTION
WRITE
(b) 4-BIT mode (Not available for serial mode)
WS0010 can be configured to interface with a 4-bit MPU and is selected via a program. If the I/O port of
the 4-Bit MPU from which WS0010 is connected to, is capable of transferring 8 bits, then an 8bit data transfer operation is executed. Otherwise, two 4-bit data transfer operations
are needed to satisfy one complete data transfer.
Under the 4-bit data transfer, DB4 to DB7 are used as bus lines. DB0 to DB3 are disabled. The data
transfer between WS0010 and MPU is completed after two 4-bit data have been
transferred. The Busy Flag must be checked (one instruction) after completion of the data transfer
(that is, 4-bit data has been transferred twice.). The Busy Flag must be checked after two
4-bits data transfer has been completed. Please refer to the diagram below for a 4-bit data
transfer timing sequence.
Document No.:WS-RD-0001 Version: 001
32
OCT. 2010
WINSTAR DISPLAY
WS0010
RS
R/WB
E
INTERNAL
OPERATION
DB7
OPERATING
IR7
IR3
INSTRUCTION WRITE
BUSY
AC3
IDLE
BUSY FLAG CHECK
AC3
BUSY FLAG CHECK
D7
D3
INSTRUCTION WRITE
where:
1. IR7=Instruction Bit 7
2. IR3=Instruction Bit 3
3. AC3=Address Counter 3
From the above timing diagram, it is important to note that the Busy Flag Check and the data transfer are
both executed twice.
Document No.:WS-RD-0001 Version: 001
33
OCT. 2010
WINSTAR DISPLAY
WS0010
80 – series interface
(a) 8-BIT mode
(a) 4-BIT mode
Document No.:WS-RD-0001 Version: 001
34
OCT. 2010
WINSTAR DISPLAY
WS0010
Serial interface
3-Line series Write/Read
Document No.:WS-RD-0001 Version: 001
35
OCT. 2010
WINSTAR DISPLAY
WS0010
OLED INTERFACE
WS0010 supports two display types, namely: 5 x 8 dots and 5 x 10 dots character fonts. Each of these
types includes a cursor display. Up to 2 lines may be displayed in a 5x 8 dot character font type and 1
line for a 5 x 10 dots character font type. The number of lines that can be displayed as well as the type
of font can be selected by using the software program. Please refer to the table below
Number of Display Line
Character Font Type
Number of Common Signals
Duty Factor
1
1
2
5 x 8 dots + cursor
5 x 10 dots + cursor
5 x 8 dots + cursor
8
11
16
1/8
1/11
1/16
As shown in the table above, three types of common signals are available. An example of each
configuration is shown in the examples below. It should be noted that every 5 segment signal lines
can display one digit, therefore, WS0010 can display up to 8 digits in a 1-line display and 16 digits
in a 2- line display.
Document No.:WS-RD-0001 Version: 001
36
OCT. 2010