EM73C63 is an advanced single chip CMOS 4-bit micro-controller. It contains 32K-byte ROM, 500-nibble
RAM, 4-bit ALU, 13-level subroutine nesting, 22-stage time base, two 12-bit timer/counters for the kernel
function. EM73C63 is also equipped with 5 interrupt sources, 3 I/O ports (including 1 input port and 2 bidirection
ports), LCD display (40x16), built-in sound generator.
It's low power consumption and high speed feature are further strengten with DUAL, SLOW, IDLE and STOP
operation mode for optimized power saving.
FEATURES
• Operation voltage: 2.4V to 5.5V.
• Clock source: Dual clock system. Low-frequency oscillator is Crystal or RC oscillator (32KHz,
• Oscillation frequency : 480K, 1M, 2M and 4M Hz are both available for high frequency clock by mask option.
• Instruction set: 107 powerful instructions.
• Instruction cycle time : Up to 2 µs for 4 MHz (high speed clock).
• ROM capacity: 32768 X 8 bits.
• RAM capacity: 500 X 4 bits.
• Input port: 1 port (P0.0-P0.3), IDEL/STOP releasing function is available by mask option.(each
• Bidirection port: 2 ports (P4, P8). P4.0 and SOUND are available by mask option. IDEL/STOP
• 12-bit timer/counter: Two 12-bit timer/counters are programmable for timer, event counter and pulse width
• LCD driver: 40 X 16 dots, 1/16 duty, 1/5 bias with voltage multiplier.
• Sound effect: Tone generator, random generator and volume control.
• Power saving function: SLOW, IDLE, STOP operation modes.
• Package type: Chip form 84 pins, PLCC 84 pins.
EM73C63
4-BIT MICRO-CONTROLLER FOR LCD PRODUCT
Preliminary
connect a external resistor) by mask option and high-frequency oscillator is RC
oscillator (connect a external resistor and a capacitor).
External clock and internal clock is available by mask option.
244 µs for 32768 Hz (low speed clock).
input pin has a pull-up and pull-down resistor available by mask option).
releasing function for P8(0..3) is available by mask option.
measurement mode.
Internal . . . . . . 2 Timer overflow interrupts.
1 Time base interrupt.
* This specification are subject to be changed without notice.
Subroutine call entry address
designated by [LCALL a]
instruction
Data table for
[LDAX],[LDAXI]
instruction
Bank 4
Bank 5
Bank 6
Bank 7
* This specification are subject to be changed without notice.
8.11.2000
3
Page 4
EM73C63
4-BIT MICRO-CONTROLLER FOR LCD PRODUCT
User's program and fixed data are stored in the program ROM. User's program is executed using the PC value to fetch an
Preliminary
instruction code.
The 32Kx8 bits program ROM can be divided into 8 banks. There are 4Kx8 bits per bank.
The program ROM bank is selected by P3(2..0). The program counter is a 13-bit binary counter. The PC
and P3 are initialized to "0" during reset.
When P3(2..0)=000B, the bank0 and bank1 of program ROM will be selected. P3(2..0)=001B, the bank0 and
bank2 will be selected, and so on.
Fixed data can be read out by table-look-up instruction. Table-look-up instruction requires the Data point (DP)
to indicate the ROM address in obtaining the ROM code data (Except bank0) :
LDAXAcc
LDAXIAcc
←←
← ROM[DP]
←←
←←
← ROM[DP]H,DP+1
←←
L
DP is a 12-bit data register that stores the program ROM address as pointer for the ROM code data.
User has to initially load ROM address into DP with instructions "STADPL", and "STADPM", "STADPH",
then to obtain the lower nibble of ROM code data by instruction "LDAX" and higher nibble data by instruction
"LDAXI".
PROGRAM EXAMPLE: Read out the ROM code of address 1777h by table-look-up instruction.
LDIA #07h;
STADPL; [DP]L ← 07h
STADPM; [DP]M ← 07h
STADPH; [DP]H ← 07h, Load DP=777h
:
OUT #00H, P3 ; Set in bank 1
LDL #00h;
LDH #03h;
LDAX; ACC ← 6h
STAMI; RAM[30] ← 6h
LDAXI; ACC ← 5h
STAM; RAM[31] ← 5h
;
ORG 1777h
DATA 56h;
DATA RAM ( 500-nibble )
A total 500 - nibble data RAM is available from address 000 to 1FFh
Data RAM includes the zero page region, stacks and data areas.
* This specification are subject to be changed without notice.
8.11.2000
5
Page 6
Bank 0
Preliminary
Address
000h - 00Fh
010h - 01Fh
020h - 02Fh
:
:
:
EM73C63
4-BIT MICRO-CONTROLLER FOR LCD PRODUCT
Increment
Zero-page
Increment
Bank 1
0C0h - 0CFh
0D0h - 0DFh
0E0h - 0EFh
0F0h - 0F3h
100h - 10Fh
110h - 11Fh
1E0h - 1EFh
1F0h - 1FFh
Level 0
Level 4
Level 8
Level 12
:
:
:
Level 1
Level 5
Level 9
Level 2
Level 6
Level 10
Level 3
Level 7
Level 11
ZERO- PAGE:
From 000h to 00Fh is the zero-page location. It is used as the zero -page address mode pointer for the
instruction of "STD #k,y; ADD #k,y; CLR y,b; CMP k,y".
PROGRAM EXAMPLE: To write immediate data "07h" to RAM [03] and to clear bit 2 of RAM [0Eh].
There are 13 - level (maximum) stack levels that user can use for subroutine (including interrupt and CALL).
User can assign any level be the starting stack by providing the level number to stack pointer (SP) .
When an instruction (CALL or interrupt) is invoked, before enter the subroutine, the previous PC address
is saved into the stack until returned from those subroutines, the PC value is restored by the data saved
in stack.
DATA AREA:
Except the area used by user's application, the whole RAM can be used as data area for storing and loading
general data.
ADDRESSING MODE
The 500 nibble data memory consists of two banks (bank 0 and bank 1). There are 244x4 bits (address
000h~0F3h) in bank 0 and 256x4 bits (address 100h~1FFh) in bank 1.
* This specification are subject to be changed without notice.
8.11.2000
6
Page 7
EM73C63
R
4-BIT MICRO-CONTROLLER FOR LCD PRODUCT
Preliminary
The bank is selected by P9.3. When P9.3 is cleared to "0", the bank 0 is selected. When P9.3 is set to "1", the bank
1 is selected.
The Data Memory consists of three Address mode, namely -
(1) Indirect addressing mode:
The address in the bank is specified by the HL registers.
P9.3HRLR
AM address
PROGRAM EXAMPLE: Load the data of RAM address "143h" to RAM address "032h".
The zero-page is in the bank 0 (address 000h~00Fh). The address is the lower 4 bits code of the second byte
in the instruction field.
xxxxxxxx
instruction field
yyyy
RAM address
0
0000
yyyy
PROGRAM EXAMPLE: Write immediate "0Fh" to RAM address "005h".
STD #0Fh, 05h ; RAM[05h]← 0Fh
* This specification are subject to be changed without notice.
8.11.2000
7
Page 8
EM73C63
4-BIT MICRO-CONTROLLER FOR LCD PRODUCT
PROGRAM COUNTER (32K ROM)
Preliminary
Program counter ( PC ) is composed by a 13-bit counter, which indicates the next executed address for the
program ROM instruction.
For BRANCH and CALL instrcutions, PC is changed by instruction indicating. PC only can indicate the address
from 0000h~1FFFh. The bank number is decided by P3.
(1) Branch instruction:
SBR a
Object code: 00aa aaaa
Condition: SF=1; PC ← PC
( branch condition satisified )
12-6.a
PC Hold original PC value+1aaaaaa
SF=0; PC← PC +1( branch condition not satisified)
PC Original PC value + 1
LBR a
Object code: 1100 aaaa aaaa aaaa
Condition: SF=1; PC ← PC
Object code: 0100 1101
Condition : FLAG. PC ← STACK[SP]; EI ← 1; SP + 1
P CThe return address stored in stack
(3) Interrupt acceptance operation:
When an interrupt is accepted, the original PC is pushed into stack and interrupt vector will be loaded into
PC,The interrupt vectors are as follows:
INT0 (External interrupt from P8.2)
PC00000000000 1 0
TRGA (Timer A overflow interrupt)
PC0000000000 1 1 0
TRGB (Time B overflow interrupt)
PC00000000 0 1 0 0 0
TBI (Time base interrupt)
PC00000000 0 1 0 1 0
INT1 (External interrupt from P8.0)
PC00000000 0 1 1 0 0
(4) Reset operation:
PC00000000000 0 0
(5) Other operations:
For 1-byte instruction execution: PC + 1
For 2-byte instruction execution: PC + 2
For 3-byte instruction execution: PC + 3
* This specification are subject to be changed without notice.
8.11.2000
9
Page 10
EM73C63
4-BIT MICRO-CONTROLLER FOR LCD PRODUCT
Preliminary
ACCUMULATOR
Accumulator(ACC) is a 4-bit data register for temporary data storage. For the arithematic, logic and
comparative opertion.., ACC plays a role which holds the source data and result .
FLAGS
There are three kinds of flag, CF ( Carry flag ), ZF ( Zero flag ) and SF ( Status flag ), these three 1-bit flags
are included by the arithematic, logic and comparative .... operation .
All flags will be put into stack when an interrupt subroutine is served, and the flags will be restored after
RTI instruction is executed .
(1) Carry Flag ( CF )
The carry flag is affected by the following operations:
a. Addition : CF as a carry out indicator, under addition operation, when a carry-out occures, the CF is "1",
likewise, if the operation has no carry-out, the CF is "0".
b. Subtraction : CF as a borrow-in indicator, under subtraction operation, when a borrow occures, the CF
is "0", likewise, if there is no borrow-in, the CF is "1".
c. Comparision: CF as a borrow-in indicator for Comparision operation as in the subtraction operation.
d. Rotation: CF shifts into the empty bit of accumulator for the rotation and holds the shift out data after
rotation.
e. CF test instruction : Under TFCFC instruction, the CF content is sent into SF then clear itself as "0".
Under TTSFC instruction, the CF content is sent into SF then set itself as "1".
(2) Zero Flag ( ZF )
ZF is affected by the result of ALU, if the ALU operation generates a "0" result, the ZF is "1",
likewise, the ZF is "0".
(3) Status Flag ( SF )
The SF is affected by instruction operation and system status .
a. SF is initiated to "1" for reset condition .
b. Branch instruction is decided by SF, when SF=1, branch condition is satisified, likewise,
when SF = 0, branch condition is unsatisified .
PROGRAM EXAMPLE:
Check following arithematic operation for CF, ZF, SF
* This specification are subject to be changed without notice.
8.11.2000
10
Page 11
EM73C63
4-BIT MICRO-CONTROLLER FOR LCD PRODUCT
ALU
Preliminary
The arithematic operation of 4 - bit data is performed in ALU unit . There are 2 flags that can be affected by
the result of ALU operation, ZF and SF . The operation of ALU is affected by CF only .
ALU STRUCTURE
ALU supported user arithematic operation functions, including Addition, Subtraction and Rotaion.
DATA BUS
ALU
ZF CF SF
ALU FUNCTION
(1) Addition:
ALU supports addition function with instructions ADDAM, ADCAM, ADDM #k, ADD #k,y .... .
The addition operation affects CF and ZF. Under addition operation, if the result is "0", ZF will be "1",
otherwise, ZF will be "0", When the addition operation has a carry-out. CF will be "1", otherwise, CF will
be "0".
ALU supports subtraction function with instructions SUBM #k, SUBA #k, SBCAM, DECM... . The
subtraction operation affects CF and ZF, Under subtraction operation, if the result is negative, CF will
be "0", and a borrow out, otherwise, if the result is positive, CF will be "1". For ZF, if the result of subtraction
operation is "0", the ZF is "1", likewise, ZF is "1".
EXAMPLE:
Operation Carry Zero
8-4=410
7-F= -8(1000)00
9-9=011
* This specification are subject to be changed without notice.
8.11.2000
11
Page 12
EM73C63
4-BIT MICRO-CONTROLLER FOR LCD PRODUCT
(3) Rotation:
Preliminary
Two types of rotation operation are available, one is rotation left, the other is rotation right.
RLCA instruction rotates Acc value counter-clockwise, shift the CF value into the LSB bit of Acc and hold
the shift out data in CF.
MSBLSB
ACC
CF
RRCA instruction operation rotates Acc value clockwise, shift the CF value into the MSB bit of Acc and
hold the shift out data in CF.
MSBLSB
ACC
CF
PROGRAM EXAMPLE: To rotate Acc clockwise (right) and shift a "1" into the MSB bit of Acc .
TTCFS; CF ← 1
RRCA; rotate Acc right and shift CF=1 into MSB.
HL REGISTER
HL register are two 4-bit registers, they are used as a pair of pointer for the RAM memoryaddress. They are
used as also 2 independent temporary 4-bit data registers. For certain instructions, L register can be a pointer
to indicate the pin number ( Port4 only ) .
HL REGISTER STRUCTURE
3 2 1 0
H REGISTER
HL REGISTER FUNCTION
(1)HL register is used as a temporary register for instructions : LDL #k, LDH #k, THA, THL, INCL, DECL,
EXAL, EXAH, .
PROGRAM EXAMPLE:
LDL #05h;
LDH #0Dh;
(2) HL register is used as a pointer for the address of RAM memory for instructions : LDAM, STAM, STAMI ..,
Load immediate data "5h" into L register, "0Dh" into H register.
3 2 1 0
L REGISTER
PROGRAM EXAMPLE: Store immediate data "#0Ah" into RAM of address 35h.
* This specification are subject to be changed without notice.
8.11.2000
12
Page 13
EM73C63
4-BIT MICRO-CONTROLLER FOR LCD PRODUCT
LDL #5h;
Preliminary
LDH #3h;
STDMI #0Ah; RAM[35] ← Ah
(3) L register is used as a pointer to indicate the bit of I/O port for instructions : SELP, CLPL, TFPL,
(When LR = 0 indicate P4.0)
PROGRAM EXAMPLE: To set bit 0 of Port4 to "1"
LDL #00h;
SEPL ; P4.0 ← 1
STACK POINTER (SP)
Stack pointer is a 4-bit register that stores the present stack level number.
Before using stack, user must set the SP value first, CPU will not initiate the SP value after reset condition
. When a new subroutine is received, the SP is decreased by one automatically, likewise, if returning from
a subroutine, the SP is increased by one .
The data transfer between ACC and SP is done with instructions "LDASP" and "STASP".
DATA POINTER (DP)
Data pointer is a 12-bit register that stores the ROM address can indicating the ROM code data
specified by user (refer to data ROM).
CLOCK AND TIMING GENERATOR
The clock generator is supported by a dual clock system. The high-frequency oscillator is sourced from RC
oscillator, the working frequency range is 480 KHz to 4 MHz defined by the mask option. The low-frequency
oscillator may be sourced from crystal or RC oscillator as defined by mask option, the working frequency is
32 KHz.
CLOCK GENERATOR STRUCTURE
There are two clock generator for system clock control unit, P14 is the status register that hold the CPU
status. P16, P19 and P22 are the command register for system clock mode control.
LXIN
fc
System clock
fs
mode control
System control
LXIN
P14
P16
P19
P22
CLK
LXIN
LXOUT
Mask option for choose Crystal or RC oscillator
High-frequency
generator
Low-frequency
generator
LXOUT
Crystal connection
* This specification are subject to be changed without notice.
LXOUT
RC connection
8.11.2000
13
Page 14
EM73C63
4-BIT MICRO-CONTROLLER FOR LCD PRODUCT
Preliminary
SYSTEM CLOCK MODE CONTROL
The system clock mode controller can start or stop the high-frequency and low-frequency clock oscillator
and switch between the basic clocks. EM73C63 has four operation modes (DUAL, SLOW,IDLE and
STOP operation modes).
RESET
operation
Reset
Reset
I/O wakeup
Reset
Reset release
STOP
operation
mode
DUAL
operation
mode
Reset
IDLE
(CPU
stops)
Command
High osc : stopped
Low osc : stopped
(P16)
High osc : oscillating
Low osc : oscillating
Command
Command
(P22)
High osc : stopped
Low osc : oscillating
(P22)
Command
Command
(P19)
I/O or internal timer wakeup
(P16)
SLOW
operation
mode
High osc : stopped
Low osc : oscillating
Operation ModeOscillatorSystem ClockAvailable function One instruction cycle
DUALHigh, Low frequency High frequency clockLCD, sound generator8 / fc
SLOWLow frequencyLow frequency clockLCD8 / fs
IDLELow frequencyCPU stopsLCDSTOPNoneCPU stopsAll disable-
DUAL OPERATION MODE
The 4-bit µc is in the DUAL operation mode when the CPU is reseted. This mode is dual clock system
(high-frequency and low-frequency clocks oscillating). It can be changed to SLOW or STOP operation
mode with the command register (P22 or P16).
LCD display and sound generator are available for the DUAL operation mode.
SLOW OPERATION MODE
The SLOW operation mode is single clock system (low-frequency clock oscillating). It can be changed to
the DUAL operation mode with the command register (P22), STOP operation mode with P16 and IDEL
operation mode with P19.
LCD display and sound generator are available for the SLOW operation mode.
* This specification are subject to be changed without notice.
0LXIN source is not stable0DUAL operation mode
1LXIN source is stable1SLOW operation mode
WKSWakeup status
0Wakeup not by internal timer
1Wakeup by internal timer
EM73C63
Port14 is the status register for CPU. P14.0 (CPU status) and P14.1 (Low-frequency status) are read-only
bits. P14.2 (wakeup status) will be set as '1' when CPU is waked by internal timer. P14.2 will be cleared as
'0' when user out data to P14.
IDLE OPERATION MODE
The IDLE operation mode suspends all CPU functions except the low-frequency clock oscillation and the
LCD driver. It keeps the internal status with low power consumption without stopping the slow clock
oscillator and LCD display.
LCD display is available for the IDLE operation mode. Sound generator is disabled in this mode. The IDLE
operation mode will be wakeup and return to the SLOW operation mode by the internal timing generator or
I/O pins (P0(0..3)/WAKEUP 0..3 and P8(0..3)/WAKEUPA..D).
1Enable IDLE mode0 0P0(0..3), P8(0..3) pin input
0no function0 1P0(0..3), P8(0..3) pin input and 1 sec signal
1 0P0(0..3), P8(0..3) pin input and 0.5 sec signal
1 1P0(0..3), P8(0..3) pin input and 15.625 ms signal
STOP OPERATION MODE
The STOP operation mode suspends system operation and holds the internal status immediately before the
suspension with low power consumption. This mode will be released by reset or I/O pins (P0(0..3)/
WAKEUP 0..3 and P8(0..3)/WAKEUP A..D).
LCD display and sound generator are disabled in the STOP operation mode.
* This specification are subject to be changed without notice.
8.11.2000
15
Page 16
EM73C63
4-BIT MICRO-CONTROLLER FOR LCD PRODUCT
Preliminary
P163210Initial value : 0000
*SPMESWWT
SPMEEnable STOP modeSWWTSet wake-up warm-up time
1Enable STOP mode00218/CLK
0no function012
10216/CLK
11no function
TIME BASE INTERRUPT (TBI )
The time base can be used to generate a single fixed frequency interrupt . Eight types of frequencies can be
selected with the "P25" setting.
P25 3210
i
nitial value : 0000
P25DUAL operation modeSLOW operation mode
0 0 x xInterrupt disableInterrupt disable
0 1 0 0Interrupt frequency LXIN / 2
3
HzReserved
0 1 0 1Interrupt frequency LXIN / 24 HzReserved
0 1 1 0Interrupt frequency LXIN / 25 HzReserved
0 1 1 1Interrupt frequency LXIN / 2
14
HzInterrupt frequency LXIN / 2
1 1 0 0Interrupt frequency LXIN / 21 HzReserved
1 1 0 1Interrupt frequency LXIN / 26 HzInterrupt frequency LXIN / 26 Hz
1 1 1 0Interrupt frequency LXIN / 28 HzInterrupt frequency LXIN / 28 Hz
1 1 1 1Interrupt frequency LXIN / 2
10
HzInterrupt frequency LXIN / 2
1 0 x xReservedReserved
14
/CLK
14
10
Hz
Hz
TIMER / COUNTER ( TIMERA, TIMERB)
Timer/counters support three special functions:
1. Even counter
2. Timer.
3. Pulse-width measurement.
These three functions can be executed by 2 timer/counter independently.
With timerA, the counter data is saved in timer register TAH, TAM, TAL. User can set counter initial
value and read the counter value by instruction "LDATAH(M,L)" and "STATAH(M,L)". With timer B
register is TBH, TBM, TBL and the W/R instruction are "LDATBH (M,L)" and "STATBH (M,L)".
The basic structure of timer/counter is composed by two identical counter module , these two modules can
be set initial timer or counter value to the timer registers, P28 and P29 are the command registers for timerA
and timer B, user can choose different operation modes and internal clock rates by setting these two
registers. When timer/counter overflows, it will generate a TRGA(B) interrupt request to interrupt control
unit.
* This specification are subject to be changed without notice.
8.11.2000
16
Page 17
4-BIT MICRO-CONTROLLER FOR LCD PRODUCT
Preliminary
INTERRUPT CONTROL
EM73C63
TRGA request
TRGB request
DATA BUS
P8.3/
TRGA
internal clock
12 BIT COUNTER
EVENT COUNTER CONTROL
TIMER CONTROL
PULSE-WIDTH MEASUREMENT
P28
CONTROL
TMSAIPSA
12 BIT COUNTER
EVENT COUNTER CONTROL
TIMER CONTROL
PULSE-WIDTH MEASUREMENT
P29
CONTROL
TMSBIPSB
P8.1/
TRGB
internal clock
TIMER/COUNTER CONTROL
P8.1/TRGB, P8.3/TRGA are the external timer inputs for timerB and timerA, they are used in event
counter and pulse-width measurement mode.
Timer/counter command port: P28 is the command port for timer/counterA and P29 is for the timer/
counterB.
* This specification are subject to be changed without notice.
8.11.2000
17
Page 18
EM73C63
4-BIT MICRO-CONTROLLER FOR LCD PRODUCT
Preliminary
TIMER/COUNTER FUNCTION
Timer/counterA,B are programmable for timer, event counter and pulse width measurement mode. Each
timer/counter can execute any of these functions independently.
EVENT COUNTER MODE
under event counter mode, the timer/counter is increased by one at any rising edge of P8.1/TRGB for timerB
(P8.3/TRGA for timer A). When timerB (timerA) counts overflow, it will provide an interrupt request
TRGB (TRGA) to interrupt control unit.
P8.1/TRGB (P8.3/TRGA)
TimerB (TimerA) value nn+1n+2n+3n+4n+5n+6
PROGRAM EXAMPLE: Enable timerA with P28
LDIA #0100b;
OUTA P28; Enable timerA with event counter mode
TIMER MODE
Under timer mode ,the timer/counter is increased by one at any rising edge of internal pulse . User can choose
up to 4 types of internal pulse rate by setting IPSB for timerB (IPSA for timerA).
When timer/counter counts overflow, An interrupt request will be sent to interrupt control unit.
Internal pulse
TimerB (TimerA )value
nn+1n+2n+3n+4n+5n+6
n+7
PROGRAM EXAMPLE: To generate TRGA interrupt request after 60 ms with system clock LXlN=32KHz
NOTE:The preset value of timer/counter register is calculated as following procedure.
Internal pulse rate: LXIN/2
3
; LXIN = 32KHz
The time of timer counter count one = 23 /LXIN = 8/32768=0.244ms
The number of internal pulse to get timer overflow = 60 ms/ 0.244ms = 245.901= 0F6h
The preset value of timer/counter register = 1000h - 0F6h = F0Ah
PULSE WIDTH MEASUREMENT MODE
* This specification are subject to be changed without notice.
8.11.2000
18
Page 19
EM73C63
P
4-BIT MICRO-CONTROLLER FOR LCD PRODUCT
Under the pulse width measurement mode, the counter is incresed at the rising edge of internal pulse during
Preliminary
external timer/counter input (P8.1/TRGB, P8.3/TRGA ) in high level, interrupt request is generated as soon as
timer/counter count overflow.
8.1/TRGB(P8.3/TRGA)
Internal pulse
TimerB(TimerA) value
PROGRAM EXAMPLE: Enable timerA by pulse width measurement mode .
Five interrupt sources are available, 2 from external interrupt sources and 3 from internal interrupt sources
. Multiple interrupts are admitted according to their priority .
TypeInterrupt sourcePriorityInterruptInterruptProgram ROM
IL0-IL5: Interrupt latch . Hold all interrupt requests from all interrupt sources. IL's can not
be set by program, but can be reset by program or system reset, so IL can only
decide which interrupt source can be accepted.
MASK0-MASK3: Except for INT0 ,MASK register may promit or inhibit all interrupt sources.
* This specification are subject to be changed without notice.
8.11.2000
19
Page 20
EM73C63
4-BIT MICRO-CONTROLLER FOR LCD PRODUCT
EI: Enable interrupt Flip-Flop may promit or inhibit all interrupt sources, when inter-
rupt occurs, EI is auto cleared to "0", after RTI instruction is executed, EI is auto
set to "1" again.
Priority checker: Check interrupt priority when multiple interrupts occur.
INTERRUPT OPERATION
The procedure of interrupt operation:
1. Push PC and all flags to stack.
2. Set interrupt entry address into PC.
3. Set SF= 1.
4. Clear EI to inhibit other interrupts occur.
5. Clear the IL with which interrupt source has already been accepted.
6. Excute interrupt subroutine from the interrupt entry address.
7. CPU accept RTI, restore PC and flags from stack. Set EI to accept other interrupt requests.
PROGRAM EXAMPLE: To enable interrupt of "INT0, TRGA"
LDIA #0100B;
EXAE; set mask register "1100b"
EICIL 010111B ; enable interrupt F.F. and clear IL3 and IL5
Preliminary
LCD DRIVER
It can directly drive the liquid crystal display ( LCD ) and has 40 segments, 16 commons output pins or 8 commons
by music option. There are total 40x16 or 40x8 dots can be display.
(1) LCD driver command register:
Port27 3210 Initial value: 0000
LDC **
LCD DISPLAY CONTROL
LDCFunction description
0 0LCD display disable
01Blanking
1 0no function
1 1LCD display enable
* : Don't care.
P27 is the LCD driver command register. The initial value is 0000.
When LDC ( bit2 and bit3 of P27 ) is set to "00", the LCD display is disabled.
When LDC is set to "01", the LCD is blanking, the COM pins are inactive and the SEG pins
output the display data continuously.
When LDC is set to "11", the LCD display is enabled.
Under stop mode. LDC will be reset to "00".
(2) LCD display data area:
The LCD display data is stored in the display data area of the data memory ( RAM). The LCD display data
area is as illustrated below:
* This specification are subject to be changed without notice.
The display data from the display data area are automatically read out and send to the LCD driver directly by
the hardware. Therefore, the display patterns can be changed only by overwritting the contents of the
display data area through software.
The dispaly memory area that is not used to store the LCD display data could be used as the ordinary data
memory.
LCD display data area : (40x16 mode)
Bank1
P9.3=1
P26 is the start address register of LCD common pin.
Port263210 Initial value: 0000
P26 is the start address register of LCD common pin.
Port263210 Initial value: 0000
CSA
Common start address register
CSA
100-
110-
120-
130-
140-
150-
0000
0001
0010
0011
0100
0101
0110
109h
COM0
119h
COM1
COM0
129h
COM2
COM1
COM0
139h
COM3
COM2
COM1
COM0
149h
COM4
COM3
COM2
COM1
COM0
159h
COM5
COM4
COM3
COM2
COM1
COM0
160169h
COM6
COM5
COM4
COM3
COM2
COM1
COM0
0111
1000
COM7
1001
COM6
COM5
COM4
COM3
COM2
COM1
COM7
COM6
COM5
COM4
COM3
COM2
COM7
COM6
COM5
COM4
COM3
COM7
COM6
COM5
COM4
COM7
COM6
COM5
COM7
COM6
COM7
1010
1011
1100
1101
1110
1111
PROGRAM EXAMPLE:
LDIA#0000B
OUTAP26
LDIA#1100B ; LCD display enable
OUTAP27
LDIA#1010B ; store 1010B to RAM[101h]
SEPP9,3
STA01H
SEG27
SEG28
SEG29
RAM
170179h
COM7
COM6
COM5
COM4
COM3
COM2
COM1
COM0
SEG30
SEG31
SEG32
COM7
COM6
COM5
COM4
COM3
COM2
COM1
COM0
SEG33
SEG34
180189h
SEG35
SEG36
SEG37
190199h
COM7
COM6
COM5
COM4
COM3
COM2
COM1
COM0
SEG38
SEG39
1A01A9h
COM7
COM6
COM5
COM4
COM3
COM2
COM1
COM0
1B01B9h
COM7
COM6
COM5
COM4
COM3
COM2
COM1
COM0
1C01C9h
COM7
COM6
COM5
COM4
COM3
COM2
COM1
COM0
1D01D9h
COM7
COM6
COM5
COM4
COM3
COM2
COM1
COM0
1E01E9h
COM7
COM6
COM5
COM4
COM3
COM2
COM1
COM0
1F01F9h
COM7
COM6
COM5
COM4
COM3
COM2
COM1
COM0
* This specification are subject to be changed without notice.
8.11.2000
22
Page 23
EM73C63
4-BIT MICRO-CONTROLLER FOR LCD PRODUCT
(3) LCD waveform : (1/5 bias)
Preliminary
Although there are two LCD waveform types, but for the reason of the number of voltage transition point in type
A is greater than type B, So type B gets a better display performance.
COM0
COM7
S
E
G
0
: ON
: OFF
* TYPE A :
COM0
V5
V4
V3
V2
V1
Vss
COM1
SEG0
SEG0-COM0
ON
SEG0-COM1
OFF
Frame freq.=64Hz
* TYPE B :
COM0
V5
V4
V3
V2
V1
Vss
COM1
SEG0
SEG0-COM0
ON
SEG0-COM1
OFF
Frame freq.
=64Hz
(4) LCD bias resistor :
There are high and low resistance choices for LCD bias resistor. To choose low bias resistor will take more power
but get a better display performance.
(5) LCD bias supply :
The LCD bias voltage can be supplied by VDD or voltage multiplier, when the operating voltage of LCD panel
and VDD are the same, the LCD bias voltage pin (V5) connects to VDD directly.
VDD - V
LCD
VDD
VA
VB
VEE
V5
V4
V3
V2
V1
VSS
* This specification are subject to be changed without notice.
8.11.2000
23
Page 24
EM73C63
4-BIT MICRO-CONTROLLER FOR LCD PRODUCT
Preliminary
When the operating of LCD panel is higher than VDD, the LCD bias voltage is supplied by voltage multiplier.
(C=C1=0.1µF) In the case of user chooses a large bias resistor or uses a large LCD panel, to connect 4 capacitors
(C1) to V1~V4 can get a better display performance. Otherwise, you can open V1~V4 and ignore these 4
capacitors (C1).
V
DD
< V
V
DD
VSS
V
DD
VA
VB
VEE
< V
V5
V4
V3
V2
V1
LCD
C
C
C
C1
C1
C1
C1
or
V
DD
VSS
VA
VB
VEE
V5
V4
V3
V2
V1
LCD
C
C
C
C1
C1
C1
C1
SOUND EFFECT
EM73C63 has a built-in sound effect generator. It includes the tone generator, random generator and volume
control. The tone generator is a binary down counter and random generator is a 9-bit linear feedback shift register.
The sound generator is available for the DUAL operation mode only. When the CPU is reseted or in the SLOW,
IDLE, or STOP operation mode, the sound generator is disable and the P4.0/SOUND is in high state and SOUND
is in low state.
P30
P23,P24
f2
f1
240KHz
3 kinds
of divider
Tone
generator
f2x2
Random
generator
÷2
÷2
High
Output
control
SOUND
SOUND
PWM
volume control
* This specification are subject to be changed without notice.
8.11.2000
24
Page 25
EM73C63
4-BIT MICRO-CONTROLLER FOR LCD PRODUCT
Sound generator command register
Preliminary
Three basic frequencies for sound generator can be selected by P30. The output of sound effect generator can
be tone, random tone or both combination.
Port30
3 2 1 0
BFREQSMODEInitial value : 0000
BFREQ Basic frequency (f1) selectSMODESound generator mode
** f1=240K/2X, f2=f1/(TF+1)/2, TF=1~255, TF≠0
** Example : BFREQ=10, TF=00110001B.
⇒ f1=60K Hz, f2=60K Hz/50/2=600 Hz
Random generator
f(x)=x
9+x4
+1
123456789
+
Volume control register
The are 8 volume levels for sound generator. P17 is the volume control register.
Port17
Initial value : * 111
3 2 1 0
*VCR
VCRts/tp
1118/8
ts
1107/8
1016/8
1005/8
0114/8
tp
0103/8
0012/8
tp=
60KHz
0001/8
1
* This specification are subject to be changed without notice.
8.11.2000
25
Page 26
EM73C63
4-BIT MICRO-CONTROLLER FOR LCD PRODUCT
Preliminary
PROGRAM EXAMPLE:
LDIA#0011B ; volume control
OUTAP17
LDIA#0011B ; 600 Hz tone output
OUTAP24
LDIA#0001B
OUTAP23
LDIA#1001B ; basic frequency : 60 KHz tone output
OUTAP30
RESETTING FUNCTION
While CPU in normal working condition and RESET pin is held in low level for three instruction cycles at least,
then CPU begins to initialize the whole internal states, when RESET pin changes to high level, CPU begins
to work in normal condition.
The CPU internal state during reset condition is as following table :
Hardware condition in RESET stateInitial value
Program counter0000h
Status flag01h
Interrupt enable flip-flop ( EI )00h
MASK0 ,1, 2, 300h
Interrupt latch ( IL )00h
P3, 9, 14, 16, 17, 19, 22,25, 26, 27, 28, 29, 3000h
P4, 8, 17, 23, 240Fh
CLK, LXINStart oscillation
The RESET pin is a hysteresis input pin and it has a pull-up resistor available by mask option.
The simplest RESET circuit is connect RESET pin with a capacitor to VSS and a diode to VDD.
RESET
* This specification are subject to be changed without notice.
8.11.2000
26
Page 27
EM73C63
4-BIT MICRO-CONTROLLER FOR LCD PRODUCT
APPLICATION CIRCUIT
V
DD
0.1µF
3V
Preliminary
V
V
P0.0
P0.1
P0.2
DD
DD
VA
VB
SEG0~
SEG39
COM0~
COM15
0.1µF
LCD PANNEL
RESET
Buzzer
0.1µF
SOUND
P4.0/SOUND
RESET
LXOUT
VSS
EM73C63
VEE
V5
V4
V3
V2
V1
LXIN
CLK
all 0.1µF
20P
32.768KHz
20P
VDD
5.6KΩ
20P
Note : This application circuit (RC) is designed for fc=4MHz.
* This specification are subject to be changed without notice.
8.11.2000
27
Page 28
EM73C63
4-BIT MICRO-CONTROLLER FOR LCD PRODUCT
Preliminary
EM73C63 I/O PORT DESCRIPTION :
PortInput functionOutput functionNote
0EInput port , wakeup function
1---2---3--IP3(0..2) : ROM bank selection
4EInput portEOutput port, P4.0/SOUND
5---6---7---8EInput port, wakeup function,EOutput port
external interrupt input
9--IP9.3 : RAM bank selection
10---11---12---13---14ICPU status register-15---16ISTOP mode control register
17ISound effect volume control register
18-19IIDLE mode control register
20-21IDUAL/SLOW mode control register
22ISlow/Normal mode control register
23ISound effect frequency registerlow nibble
24ISound effect frequency registerhigh nibble
25ITimebase control register
26ILCD common start address register
27ILCD control register
28ITimer/counter A control register
29ITimer/counter B control register
30ISound effect command register
31--
* This specification are subject to be changed without notice.
Frequency stability-15-%Fc=4MHz, RC osc,[F(3V)-F(2.4V)]/F(3V)
Frequency variation-20-%Fc=4MHz, V
=3V,RC osc,
DD
[F(typical)-F(worse case)]/F(typical)
* This specification are subject to be changed without notice.
8.11.2000
30
Page 31
RESET PIN TYPE
TYPE RESET-A
EM73C63
4-BIT MICRO-CONTROLLER FOR LCD PRODUCT
Preliminary
RESET
OSCILLATION PIN TYPE
TYPE OSC-BTYPE OSC-C
LXIN
LXOUT
TYPE OSC-F
LXIN
mask option
Crystal
Osc.
RC Osc.
(inverter)
CLK
RC Osc.
(comparator)
LXOUT
INPUT PIN TYPE
TYPE INPUT-ATYPE INPUT-B
: mask option
* This specification are subject to be changed without notice.
WAKEUP function
mask option
P0/WAKEUP TYPE INPUT-A
8.11.2000
31
Page 32
4-BIT MICRO-CONTROLLER FOR LCD PRODUCT
Preliminary
I/O PIN TYPE
TYPE I/OTYPE I/O-L
mask option
TYPE I/O
WAKEUP function
mask option
TYPE I/O-NTYPE I/O-O
path B
path A
SEL
Output
data
latch
EM73C63
Special function
control input
Input
data
Output
data
: mask option
TYPE I/O-N
: mask option
path B
path A
Output
data
latch
Input
data
Output
data
Special function
output
Path A :For set and clear bit of port instructions, data goes through path A from output data latch to CPU.
Path B :For input and test instructions, data from output pin go through path B to CPU and the output data latch
will be set to high.
* This specification are subject to be changed without notice.