EMC EM78P157NBP

EM78P157N
8-Bit Microcontroller
with OTP ROM
Product
Specification
Doc. Version 1.0
ELAN MICROELECTRONICS CORP.
September 2005
Trademark Acknowledgments:
IBM is a registered trademark and PS/2 is a trademark of IBM.
Windows is a trademark of Microsoft Corporation
ELAN and ELAN logo
are trademarks of ELAN Microelectronics Corporation
Copyright © 2005 by ELAN Microelectronics Corporation
All Rights Reserved
Printed in Taiwan
The contents of this specification are subject to change without further notice. ELAN Microelectronics assumes
no responsibility concerning the accuracy, adequacy, or completeness of this specification. ELAN
Microelectronics makes no commitment to update, or to keep current the information and material contained in
this specification. Such information and material may change to conform to each confirmed order.
In no event shall ELAN Microelectronics be made responsible for any claims attributed to errors, omissions, or
other inaccuracies in the information or material contained in this specification. ELAN Microelectronics shall not
be liable for direct, indirect, special incidental, or consequential damages arising from the use of such information
or material.
The software (if any) described in this specification is furnished under a license or nondisclosure agreement, and
may be used or copied only in accordance with the terms of such agreement.
ELAN Microelectronics products are not intended for use in life support appliances, devices, or systems. Use of
ELAN Microelectronics product in such applications is not supported and is prohibited.
NO PART OF THIS SPECIFICATION MAY BE REPRODUCED OR TRANSMITTED IN ANY FORM OR BY
ANY MEANS WITHOUT THE EXPRESSED WRITTEN PERMISSION OF ELAN MICROELECTRONICS.
ELAN MICROELECTRONICS CORPORATION
Headquarters:
Hong Kong:
USA:
No. 12, Innovation Road 1
Hsinchu Science Park
Hsinchu, Taiwan 30077
Tel: +886 3 563-9977
Fax: +886 3 563-9966
http://www.emc.com.tw
Elan (HK) Microelectronics
Corporation, Ltd.
Elan Information
Technology Group
Rm. 1005B, 10/F Empire Centre
68 Mody Road, Tsimshatsui
Kowloon , HONG KONG
Tel: +852 2723-3376
Fax: +852 2723-7780
[email protected]
1821 Saratoga Ave., Suite 250
Saratoga, CA 95070
USA
Tel: +1 408 366-8223
Fax: +1 408 366-8220
Europe:
Shenzhen:
Shanghai:
Elan Microelectronics Corp.
(Europe)
Elan Microelectronics
Shenzhen, Ltd.
Elan Microelectronics
Shanghai Corporation, Ltd.
Siewerdtstrasse 105
8050 Zurich, SWITZERLAND
Tel: +41 43 299-4060
Fax: +41 43 299-4079
http://www.elan-europe.com
SSMEC Bldg., 3F, Gaoxin S. Ave.
Shenzhen Hi-Tech Industrial Park
Shenzhen, Guandong, CHINA
Tel: +86 755 2601-0565
Fax: +86 755 2601-0500
23/Bldg. #115 Lane 572, Bibo Road
Zhangjiang Hi-Tech Park
Shanghai, CHINA
Tel: +86 021 5080-3866
Fax: +86 021 5080-4600
Contents
Contents
1
2
3
General Description ...................................................................................... 1
Features ......................................................................................................... 1
Pin Assignments and Descriptions.............................................................. 2
3.1
Pin Assignments ................................................................................................. 2
3.2
Pin Descriptions ................................................................................................. 3
3.2.1
3.2.2
3.2.3
3.2.4
4
EM78P157NBP and EM78P157NBM Pin Descriptions ......................................3
EM78P157NAP and EM78P157NAM Pin Descriptions ......................................3
EM78P157NAAS Pin Descriptions......................................................................4
EM78P157NAKM Pin Descriptions .....................................................................4
Function Description..................................................................................... 5
4.1
Operational Registers......................................................................................... 5
4.1.1
4.1.2
4.1.3
4.1.4
4.1.5
4.1.6
4.1.7
4.1.8
4.2
Special Purpose Registers ................................................................................. 8
4.2.1
4.2.2
4.2.3
4.2.4
4.2.5
4.2.6
4.2.7
4.2.8
4.2.9
4.3
4.4
Port 6 Input Change Wake-up/Interrupt Function Usage..................................16
RESET and Wake-up ....................................................................................... 17
4.5.1
4.5.2
4.6
Accumulator (A) Register ....................................................................................8
Control (CONT ) Register....................................................................................9
I/O Port Control (IOC5 ~ IOC6) Registers...........................................................9
Prescaler Counter (IOCA ) Register....................................................................9
Pull-Down Control (IOCB) Register...................................................................10
Open-Drain Control (IOCC ) Register ...............................................................10
Pull-High Control (IOCD) Register ....................................................................11
WDT Control (IOCE) Register ...........................................................................11
IOCF (Interrupt Mask Register).........................................................................12
TCC/WDT & Prescaler ..................................................................................... 12
I/O Ports ........................................................................................................... 13
4.4.1
4.5
Indirect Addressing (R0) Register .......................................................................6
Time Clock / Counter (R1) Register ....................................................................6
Program Counter and Stack (R2) Register .........................................................6
Status (R3) Register ............................................................................................7
RAM Select (R4) Register...................................................................................7
Port 5 ~ Port 6 (R5 ~ R6) Registers ....................................................................8
Interrupt Status (RF) Register .............................................................................8
General Purpose (R10 ~ R3F) Registers............................................................8
Summary of Initialized Values for Registers......................................................19
The Status of RST, T, and P of STATUS Register .............................................21
4.5.2.1 RST, T and P after RESET Values .....................................................21
4.5.2.2 Event Affecting T and P Status ...........................................................21
Interrupt ............................................................................................................ 22
Product Specification (V1.0) 09.22.2005
• iii
Contents
4.7
Oscillator .......................................................................................................... 23
4.7.1
4.7.2
4.7.3
4.8
CODE Option Register ..................................................................................... 26
4.8.1
4.8.2
4.9
Oscillator Modes................................................................................................23
4.7.1.1 Oscillator Modes Defined by OSC, HLF, and HLP.............................23
4.7.1.2 The Summary of Maximum Operating Speeds ..................................23
Crystal Oscillator/Ceramic Resonators (XTAL) .................................................23
4.7.2.1 Capacitor Selection Guide for Crystal Oscillator or
Ceramic Resonator ............................................................................24
External RC Oscillator Mode.............................................................................25
4.7.3.1 RC Oscillator Frequencies .................................................................26
Code Option Register (Word 0).........................................................................26
Customer ID Register (Word 1).........................................................................27
Power-On Considerations ................................................................................ 28
4.10 External Power-On Reset Circuit .................................................................... 28
4.11 Residual-Voltage Protection ............................................................................. 29
4.12 Instruction Set .................................................................................................. 30
4.13 Timing Diagrams .............................................................................................. 32
4.13.1 AC Test Input/Output Waveform........................................................................32
4.13.2 RESET Timing (CLK = ”0”)................................................................................32
4.13.3 TCC Input Timing (CLKS = ”0”) .........................................................................32
5
6
Absolute Maximum Ratings........................................................................ 33
Electrical Characteristics............................................................................ 33
6.1
DC Electrical Characteristic.............................................................................. 33
6.2
AC Electrical Characteristics ............................................................................ 34
6.3
Device Characteristics...................................................................................... 35
6.3.1
6.3.2
6.3.3
6.3.4
6.3.5
Port 6 Vih/Vil vs. VDD (Input Pin with Schmitt Inverter) ....................................35
Port 5 Input Threshold Voltage (Vth) vs. VDD...................................................35
Ports 5 & Port 6 Voh vs. Ioh, VDD=5V and 3V .................................................36
Ports 5 & Port 6 Vol vs. Iol, VDD=5V and 3V....................................................36
WDT Time Out Period vs. VDD (Prescaler Set to 1:1)......................................37
6.3.6
Typical RC OSC Frequency vs. VDD (Cext = 100pF, Temp. = 25℃) ..............38
6.3.7
Typical RC OSC Frequency vs. VDD
(with R and C under Ideal Conditions) ..............................................................38
Typical and Maximum Operating Current
(ICC1/2/3/4) vs. Temperature ............................................................................39
Typical and Maximum Standby Current
(ISB1 and ISB2) vs. Temperature .....................................................................41
6.3.8
6.3.9
6.3.10 Operating Voltage under Temperature Range of 0°C to 70°C
and –40°C to 85°C ............................................................................................42
6.3.11 Operating Current Range (Based on High and Low Freq. @ =25℃)
vs. Voltage.........................................................................................................43
iv •
Product Specification (V1.0) 09.22.2005
Contents
APPENDIX
A
Package Types............................................................................................. 44
A..1 Package Detailed Information .......................................................................... 44
A.1.1
A.1.2
A.1.3
A.1.4
A.1.5
B
C
14-Lead Plastic Dual in line (PDIP) — 300 Mil .................................................44
14-Lead Plastic Small Outline (SOP) — 150 Mil...............................................45
18-Lead Plastic Dual in Line (PDIP) — 300 Mil ................................................46
18-Lead Plastic Small Outline (SOP) — 300 Mil...............................................47
20-Lead Plastic Small Outline (SSOP) — 209 Mil ............................................48
Quality Assurance and Reliability .............................................................. 49
Address Trap Detect.................................................................................... 50
Product Specification (V1.0) 09.22.2005
•v
Contents
Specification Revision History
Doc. Version
1.0
vi •
Revision Description
Initial version
Date
09/22/2005
Product Specification (V1.0) 09.22.2005
EM78P157N
8-Bit Microcontroller with OTP ROM
1
General Description
EM78P157N is an 8-bit microprocessor designed and developed with low-power,
high-speed CMOS technology. It is equipped with 1K*13-bits Electrical One Time
Programmable Read Only Memory (OTP-ROM). It provides three PROTECTION bits
to prevent user’s code in the OTP memory from being intruded. Eight OPTION bits are
also provided to meet user’s additional requirements.
With its OTP-ROM feature, the EM78P157N is able to offer a convenient way of
developing and verifying user’s programs. Moreover, user can take advantage of
ELAN DWriter to easily program his development code.
2
Features
„
Operating voltage range: 2.5V~5.5V
„
Operating temperature range: -40°C~85°C
„
Operating frequency range (base on 2 clocks ):
• Crystal mode: DC~20MHz at 5V, DC~8MHz at 3V, DC~4MHz at 2.5V.
• ERC mode: DC~4MHz at 5V, DC~4MHz at 3V, DC~4MHz at 2.5V.
„
Low power consumption:
• Less then 2 mA at 5V/4MHz
• Typically 20 µA at 3V/32KHz
• Typically 1 µA during sleep mode
„
1K × 13 bits on chip ROM
„
One security register to prevent intrusion of OTP memory codes
„
One configuration register to accommodate user’s requirements
„
48× 8 bits on chip registers (SRAM, general purpose register)
„
2 bi-directional I/O ports
„
5 level stacks for subroutine nesting
„
8-bit real time clock/counter (TCC) with selective signal sources, trigger edges, and
overflow interrupt
„
Two clocks per instruction cycle
„
Power down (SLEEP) mode
„
Three available interruptions
• TCC overflow interrupt
• Input-port status changed interrupt (wake up from sleep mode)
• External interrupt
Product Specification (V1.0) 09.22.2005
(This specification is subject to change without further notice)
•1
EM78P157N
8-Bit Microcontroller with OTP ROM
„
Programmable free running watchdog timer
„
8 programmable pull-high pins
„
7 programmable pull-down pins
„
8 programmable open-drain pins
„
2 programmable R-option pins
„
Package types:
•
•
•
•
•
•
3
14 pin DIP
300mil : EM78P157NBP
14 pin SOP
150mil : EM78P157NBM
18 pin DIP
300mil : EM78P157NAP
18 pin SOP
300mil : EM78P157NAM
20 pin SSOP 209mil : EM78P157NAAS
20 pin SSOP 209mil
: EM78P157NAKM
„
99.9% single instruction cycle commands
„
The transient point of system frequency between HXT and LXT is around 400KHz
Pin Assignments and Descriptions
3.1 Pin Assignments
TCC
3
/RESET
4
Vss
5
P60/INT
6
P61
2
14
13
P51
P50
1
18
P51
P53
2
17
P50
TCC
3
16
OSCI
/RESET
4
15
OSCO
Vss
5
P60/INT
6
VDD
P61
7
9
P67
P62
8
7
8
P66
P63
9
12
OSCI
11
OSCO
10
EM78P157NAP
EM78P157NAM
1
EM78P157NBP
EM78P157NBM
P52
P53
P52
14
VDD
13
P67
12
P66
11
P65
10
P64
20
NC
P52
1
20
P51
2
19
P51
P53
2
19
P50
P53
3
18
P50
TCC
3
18
OSCI
TCC
4
17
OSCI
/RESET
4
/RESET
5
16
OSCO
Vss
5
15
VDD
Vss
6
14
EM78P157NAKM
1
EM78P157NAAS
NC
P52
17
OSCO
16
VDD
15
VDD
Vss
6
P60/INT
7
P67
P60/INT
7
14
P67
P61
8
13
P66
P61
8
13
P66
P62
9
12
P65
P62
9
12
P65
P63
10
11
P64
P63
10
11
P64
Fig. 1-1 Pin Assignments
2•
Product Specification (V1.0) 09.22.2005
(This specification is subject to change without further notice)
EM78P157N
8-Bit Microcontroller with OTP ROM
3.2 Pin Descriptions
3.2.1 EM78P157NBP and EM78P157NBM Pin Descriptions
Symbol Pin No.
Type
VDD
10
–
OSCI
12
I
OSCO
11
I/O
TCC
3
I
/RESET
4
I
P50~P53
13, 14,
1, 2
I/O
P60~P61
6~7
I/O
P66~P67
8~9
I/O
/INT
VSS
6
5
I
–
Function
y Power supply
y XTAL type: Crystal input terminal or external clock input pin
y ERC type: RC oscillator input pin
y XTAL type: Output terminal for crystal oscillator or external clock input pin
y RC type: Instruction clock output
y External clock signal input
y The real time clock/counter (with Schmitt trigger input pin), must be tied
to VDD or VSS if not in use
y Input pin with Schmitt trigger. If this pin remains at logic low, the controller
will also remain at reset condition.
y P50~P53 are bi-directional I/O pins
y P50 and P51 can also be defined as the R-option pins
y P50~P52 can be set as pull-down by software
y P60~P61 are bi-directional I/O pins
y These pins can be set as pull-high, pull-down, or open-drain through
software programming
y P66~P67 are bi-directional I/O pins
y These pins can be set as pull-high or open-drain through software
programming
y External interrupt pin triggered by falling edge
y Ground
3.2.2 EM78P157NAP and EM78P157NAM Pin Descriptions
Symbol Pin No.
Type
VDD
14
–
OSCI
16
I
OSCO
15
I/O
TCC
3
I
/RESET
4
I
P50~P53
17,18,
1, 2
I/O
P60~P67
6~13
I/O
/INT
VSS
6
5
I
–
Function
y Power supply
y XTAL type: Crystal input terminal or external clock input pin
y ERC type: RC oscillator input pin
y XTAL type: Output terminal for crystal oscillator or external clock input pin
y RC type: Instruction clock output
y External clock signal input
y The real time clock/counter (with Schmitt trigger input pin), must be tied to
VDD or VSS if not in use
y Input pin with Schmitt trigger. If this pin remains at logic low, the controller
will also remain at reset condition.
y P50~P53 are bi-directional I/O pins
y P50 and P51 can also be defined as the R-option pins
y P50~P52 can be set as pull-down by software
y P60~P67 are bi-directional I/O pins
y These pins can be set as pull-high or open-drain through software
programming
y P60~P63 can also be set as pull-down by software
y External interrupt pin triggered by falling edge
y Ground
Product Specification (V1.0) 09.22.2005
(This specification is subject to change without further notice)
•3
EM78P157N
8-Bit Microcontroller with OTP ROM
3.2.3 EM78P157NAAS Pin Descriptions
Symbol Pin No.
Type
Function
y Power supply
y XTAL type: Crystal input terminal or external clock input pin
y ERC type: RC oscillator input pin
VDD
15
–
OSCI
17
I
OSCO
16
I/O
TCC
4
I
/RESET
5
I
P50~P53
18, 19,
2, 3
I/O
P60~P67
7~14
I/O
/INT
VSS
7
6
I
–
y XTAL type: Output terminal for crystal oscillator or external clock input pin
y RC type: Instruction clock output
y External clock signal input
y The real time clock/counter (with Schmitt trigger input pin), must be tied to
VDD or VSS if not in use
y Input pin with Schmitt trigger. If this pin remains at logic low, the controller
will also remain at reset condition.
y P50~P53 are bi-directional I/O pins
y P50 and P51 can also be defined as the R-option pins
y P50~P52 can be set as pull-down by software
y P60~P67 are bi-directional I/O pins
y These pins can be set as pull-high or open-drain through software
programming
y P60~P63 can also be set as pull-down by software
y External interrupt pin triggered by falling edge
y Ground
3.2.4 EM78P157NAKM Pin Descriptions
4•
Symbol
Pin No.
Type
VDD
15,16
–
OSCI
18
I
OSCO
17
I/O
TCC
3
I
/RESET
4
I
Function
y
y
y
y
y
y
y
y
P50~P53 19, 20, 1, 2
I/O
P60~P67
7~14
I/O
y
y
y
y
y
/INT
VSS
7
5, 6
I
–
y
y
y
Power supply
XTAL type: Crystal input terminal or external clock input pin
ERC type: RC oscillator input pin
XTAL type: Output terminal for crystal oscillator or external clock input pin
RC type: Instruction clock output
External clock signal input
The real time clock/counter (with Schmitt trigger input pin), must be tied to
VDD or VSS if not in use
Input pin with Schmitt trigger. If this pin remains at logic low, the controller
will also remain at reset condition.
P50~P53 are bi-directional I/O pins
P50 and P51 can also be defined as the R-option pins
P50~P52 can be set as pull-down by software
P60~P67 are bi-directional I/O pins
These pins can be set as pull-high or open-drain through software
programming
P60~P63 can also be set as pull-down by software
External interrupt pin triggered by falling edge
Ground
Product Specification (V1.0) 09.22.2005
(This specification is subject to change without further notice)
EM78P157N
8-Bit Microcontroller with OTP ROM
4
Function Description
OSCO
/RESET
OSCI
TCC
WDT timer
/INT
Oscillator/Timing
Control
R2
ROM
Prescaler
Stack
IOCA
R4
ALU
Instruction
Register
Interrupt
Controller
RAM
R3
R1(TCC)
Instruction
Decoder
ACC
DATA & CONTROL BUS
IOC6
R6
P60//INT
P61
P62
P63
P64
P65
P66
P67
I/O
PORT 6
IOC5
R5
I/O
PORT 5
P50
P51
P52
P53
Fig. 4-1 Function Block Diagram
4.1 Operational Registers
The following is the operational registers’ data memory configuration.
Address
R PAGE Registers
IOC PAGE Registers
00
01
02
03
R0
R1
R2
R3
(IAR)
(TCC)
(PC)
(Status)
Reserve
CONT
Reserve
Reserve
04
05
06
07
08
09
0A
0B
0C
0D
0E
0F
10
︰
3F
R4
R5
R6
Reserve
Reserve
Reserve
Reserve
Reserve
Reserve
Reserve
Reserve
RF
(RSR)
(Port5)
(Port6)
Reserve
IOC5
IOC6
Reserve
Reserve
Reserve
IOCA
IOCB
IOCC
IOCD
IOCE
IOCF
(Interrupt Status)
(Control Register)
(I/O Port Control Register)
(I/O Port Control Register)
(Prescaler Control Register)
(Pull-down Register)
(Open-drain Control)
(Pull-high Control Register)
(WDT Control Register)
(Interrupt Mask Register)
General Registers
Product Specification (V1.0) 09.22.2005
(This specification is subject to change without further notice)
•5
EM78P157N
8-Bit Microcontroller with OTP ROM
4.1.1 Indirect Addressing (R0) Register
R0 is not a physically implemented register. Its major function is to perform as an
indirect addressing pointer. Any instruction using R0 as a pointer actually accesses
data pointed by the RAM Select Register (R4).
4.1.2 Time Clock / Counter (R1) Register
„
Increased by an external signal edge, which is defined by TE bit (CONT-4) through
the TCC pin, or by the instruction cycle clock.
„
Writable and readable as any other registers.
„
Defined by resetting PAB (CONT-3).
„
The prescaler is assigned to TCC, if the PAB bit (CONT-3) is reset.
„
The contents of the prescaler counter will be cleared only when TCC register is
written with a value.
4.1.3 Program Counter and Stack (R2) Register
„
Depending on the device type, R2 and hardware stack are 10-bits wide. The R2
structure is depicted in Fig. 4-2 below.
„
Generates 1024×13 bits on-chip OTP ROM addresses to the relative programming
instruction codes. One program page is 1024 words long.
„
R2 is set as all “0” when under RESET condition.
„
"JMP" instruction allows direct loading of the lower 10 program counter bits. Thus,
"JMP" allows PC to go to any location within a page.
„
"CALL" instruction loads the lower 10 bits of the PC, and then PC+1 is pushed into
the stack. Thus, the subroutine entry address can be located anywhere within a
page.
„
"RET" ("RETL k," "RETI") instruction loads the program counter with the contents
of the top-level stack.
„
"ADD R2, A" allows the contents of ‘A’ to be added to the current PC, and the ninth
and tenth bits of the PC are cleared.
„
"MOV R2, A" allows to load an address from the "A" register to the lower 8 bits of
the PC, and the ninth and tenth bits of the PC are cleared.
„
Any instruction that writes to R2 (e.g., "ADD R2,A," "MOV R2,A," "BC R2,6",⋅etc.)
will cause the ninth and tenth bits (A8~A9) of the PC to be cleared. Thus, the
computed jump is limited to the first 256 locations of a page.
„
All instructions are single instruction cycle (fclk/2 or fclk/4) except for the instruction
that would change the contents of R2. Such instruction will need one more
instruction cycle.
6•
Product Specification (V1.0) 09.22.2005
(This specification is subject to change without further notice)
EM78P157N
8-Bit Microcontroller with OTP ROM
Reset Vector
Interrupt Vector
PC (A9 ~ A0)
000H
008H
User Memory
Space
On-chip Program
Memory
Stack Level 1
Stack Level 2
Stack Level 3
Stack Level 4
Stack Level 5
3FFH
Fig. 4-2 R2 (Program Counter) & Stack Organization
4.1.4 Status (R3) Register
Bit 7
GP2
Bit 0 (C):
Bit 6
GP1
Bit 5
GP0
Bit 4
T
Bit 3
P
Bit 2
Z
Bit 1
DC
Bit 0
C
Carry flag
Bit 1 (DC): Auxiliary carry flag
Bit 2 (Z):
Zero flag
Set to "1" if the result of an arithmetic or logic operation is zero
Bit 3 (P):
Power down bit
Set to “1” during power on or by a "WDTC" command
Reset to “0” by a "SLEP" command
Bit 4 (T):
Time-out bit
Set to “1” with the "SLEP" and "WDTC" commands, or during power up
Reset to “0” by WDT time-out
Bit 5~7 (GP0 ~ 2): General-purpose read/write bits
4.1.5 RAM Select (R4) Register
Bit 7
Bit 6
Bit 5
Bit 4
Not used (read only)
Bit 3
Bit 2
Bit 1
Bit 0
Select Registers
Z flag of R3 will set to “1” when R4 content is equal to “3F.” When R4=R4+1, R4
content will function as R0. See the data memory configuration shown in Section 4.1.
Bits 0~5:
are used to select registers (Address: 00~06, 0F~3F) in indirect address
mode
Bits 6~7:
are not used (read only)
Bits 6~7 are set to “1” all the time
Product Specification (V1.0) 09.22.2005
(This specification is subject to change without further notice)
•7
EM78P157N
8-Bit Microcontroller with OTP ROM
4.1.6 Port 5 ~ Port 6 (R5 ~ R6) Registers
R5 and R6 are I/O registers. Only the lower 4 bits of R5 are available.
4.1.7 Interrupt Status (RF) Register
Bit 7
-
Bit 6
Bit 5
-
Bit 4
-
Bit 3
-
-
Bit 2
EXIF
Bit 1
ICIF
Bit 0
TCIF
RF can be cleared by instruction but cannot be set
IOCF is the interrupt mask register (see Section 4.2.9)
NOTE
The result of reading RF is the "logic AND" of RF and IOCF.
0: disable interrupt request
1: enable interrupt request
Bit 0 (TCIF): TCC overflow interrupt flag
Set when TCC overflows. Reset by software.
Bit 1 (ICIF): Port 6 input status change interrupt flag
Set when Port 6 input changes. Reset by software.
Bit 2 (EXIF): External interrupt flag
Set by falling edge on /INT pin. Reset by software.
Bits 3 ~ 7:
Not used
4.1.8 General Purpose (R10 ~ R3F) Registers
R10 ~ R3F are all 8-bit general-purpose registers
4.2 Special Purpose Registers
4.2.1 Accumulator (A) Register
8•
„
Internal data transfer, or instruction operand holding
„
It cannot be addressed
Product Specification (V1.0) 09.22.2005
(This specification is subject to change without further notice)
EM78P157N
8-Bit Microcontroller with OTP ROM
4.2.2 Control (CONT ) Register
Bit 7
-
Bit 6
Bit 5
Bit 4
/INT
TS
TE
Bit 3
PAB
Bit 2
Bit 1
Bit 0
PSR2
PSR1
PSR0
CONT register is both readable and writable
Bit 0 ~ Bit 2 (PSR0 ~ PSR2): TCC/WDT prescaler bits
PSR2
PSR1
PSR0
TCC Rate
WDT Rate
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
1:2
1:4
1:8
1:16
1:32
1:64
1:128
1:256
1:1
1:2
1:4
1:8
1:16
1:32
1:64
1:128
Bit 3 (PAB): Prescaler assignment bit
0: TCC
1: WDT
Bit 4 (TE):
TCC signal edge
0: increment if the transition from low to high takes place on TCC pin
1: increment if the transition from high to low takes place on TCC pin
Bit 5 (TS):
TCC signal source
0: internal instruction cycle clock
1: transition on TCC pin
Bit 6 (/INT): Interrupt enable flag
0: masked by DISI or hardware interrupt
1: enabled by ENI/RETI instructions
Bit 7:
Not used
4.2.3 I/O Port Control (IOC5 ~ IOC6) Registers
„
0: defines the relative I/O pin as output
1: put the relative I/O pin into high impedance
„
Only the lower 4 bits of IOC5 can be defined.
„
IOC5 and IOC6 registers are both readable and writable
4.2.4 Prescaler Counter (IOCA ) Register
„
IOCA register is readable
„
The value of IOCA is equal to the contents of Prescaler counter
„
Down counter
Product Specification (V1.0) 09.22.2005
(This specification is subject to change without further notice)
•9
EM78P157N
8-Bit Microcontroller with OTP ROM
4.2.5 Pull-Down Control (IOCB) Register
Bit 7
/PD7
Bit 6
/PD6
Bit 5
/PD5
Bit 4
/PD4
Bit 3
-
Bit 2
/PD2
Bit 1
/PD1
Bit 0
/PD0
IOCB Register is both readable and writable.
Bit 0 (/PD0): Control bit is used to enable the P50 pin pull-down
0: Enable internal pull-down
1: Disable internal pull-down
Bit 1 (/PD1): Control bit is used to enable the P51 pin pull-down
Bit 2 (/PD2): Control bit is used to enable the P52 pin pull-down
Bit 3:
Not used
Bit 4 (/PD4): Control bit is used to enable the P60 pin pull-down
Bit 5 (/PD5): Control bit is used to enable the P61 pin pull-down
Bit 6 (/PD6): Control bit is used to enable the P62 pin pull-down
Bit 7 (/PD7): Control bit is used to enable the P63 pin pull-down
4.2.6 Open-Drain Control (IOCC ) Register
Bit 7
OD7
Bit 6
OD6
Bit 5
OD5
Bit 4
OD4
Bit 3
OD3
Bit 2
OD2
Bit 1
OD1
Bit 0
OD0
IOCC Register is both readable and writable.
Bit 0 (OD0): Control bit is used to enable the P60 pin open-drain
0: Disable open-drain output
1: Enable open-drain output
Bit 1 (OD1): Control bit is used to enable the P61 pin open-drain
Bit 2 (OD2): Control bit is used to enable the P62 pin open-drain
Bit 3 (OD3): Control bit is used to enable the P63 pin open-drain
Bit 4 (OD4): Control bit is used to enable the P64 pin open-drain
Bit 5 (OD5): Control bit is used to enable the P65 pin open-drain
Bit 6 (OD6): Control bit is used to enable the P66 pin open-drain
Bit 7 (OD7): Control bit is used to enable the P67 pin open-drain
10 •
Product Specification (V1.0) 09.22.2005
(This specification is subject to change without further notice)
EM78P157N
8-Bit Microcontroller with OTP ROM
4.2.7 Pull-High Control (IOCD) Register
Bit 7
/PH7
Bit 6
/PH6
Bit 5
/PH5
Bit 4
/PH4
Bit 3
/PH3
Bit 2
/PH2
Bit 1
/PH1
Bit 0
/PH0
IOCD Register is both readable and writable
Bit 0 (/PH0): Control bit is used to enable the P60 pin pull-high
0: Enable internal pull-high
1: Disable internal pull-high
Bit 1 (/PH1): Control bit is used to enable the P61 pin pull-high
Bit 2 (/PH2): Control bit is used to enable the P62 pin pull-high
Bit 3 (/PH3): Control bit is used to enable the P63 pin pull-high
Bit 4 (/PH4): Control bit is used to enable the P64 pin pull-high
Bit 5 (/PH5): Control bit is used to enable the P65 pin pull-high
Bit 6 (/PH6): Control bit is used to enable the P66 pin pull-high
Bit 7 (/PH7): Control bit is used to enable the P67 pin pull-high
4.2.8 WDT Control (IOCE) Register
Bit 7
WDTE
Bits 0~3, 5:
Bit 6
EIS
Bit 5
-
Bit 4
Bit 3
ROC
Bit 2
-
Bit 1
-
-
Bit 0
-
Not used
Bit 4 (ROC): ROC is used for the R-option
Setting the ROC to "1" will enable the status of R-option pins (P50∼P51)
that are read by the controller. Clearing the ROC will disable the
R-option function. If the R-option function is selected, you must connect
the P51 pin or/and P50 pin to VSS with a 430KΩ external resistor (Rex).
If the Rex is connected or disconnected, the status of P50 (P51) is read
as "0" or "1" respectively Refer to Fig. 4-6 under Section 4.4.
Bit 6 (EIS):
Control bit is used to define the P60 (/INT) pin function
0: P60, bi-directional I/O pin
1: /INT, external interrupt pin. In this case, the I/O control bit of P60
(bit 0 of IOC6) must be set to "1"
EIS is both readable and writable.
When EIS is "0," the path of /INT is masked. When EIS is "1,” the status
of /INT pin can also be read by way of reading Port 6 (R6). Refer to Fig.
4-5(a) under Section 4.4.
Bit 7 (WDTE): Control bit is used to enable Watchdog timer
0: Disable WDT
1: Enable WDT
WDTE is both readable and writable
Product Specification (V1.0) 09.22.2005
(This specification is subject to change without further notice)
• 11
EM78P157N
8-Bit Microcontroller with OTP ROM
4.2.9 IOCF (Interrupt Mask Register)
Bit 7
-
Bit 6
-
Bit 5
Bit 4
-
-
Bit 3
-
Bit 2
EXIE
Bit 1
ICIE
Bit 0
TCIE
Individual interrupt is enabled by setting its associated control bit in the IOCF to "1."
Global interrupt is enabled by the ENI instruction and is disabled by the DISI instruction.
Refer to Fig. 4-8 under Section 4.6.
IOCF register is both readable and writable.
Bit 0 (TCIE): TCIF interrupt enable bit
0: disable TCIF interrupt
1: enable TCIF interrupt
Bit 1 (ICIE): ICIF interrupt enable bit
0: disable ICIF interrupt
1: enable ICIF interrupt
Bit 2 (EXIE): EXIF interrupt enable bit
0: disable EXIF interrupt
1: enable EXIF interrupt
Bits 3~7:
Not used.
4.3 TCC/WDT & Prescaler
An 8-bit counter available as prescaler for the TCC or WDT. The prescaler is available
for either the TCC or WDT only at any given time, and the PAB bit of the CONT register
is used to determine the prescaler assignment. The PSR0~PSR2 bits determine the
ratio. The prescaler is cleared each time the instruction is written to TCC under TCC
mode. The WDT and prescaler, when assigned to WDT mode, are cleared by the
“WDTC” or “SLEP” instructions. Fig. 4-3 below, depicts the circuit diagram of
TCC/WDT.
„
12 •
R1 (TCC) is an 8-bit timer/counter. The clock source of TCC can be internal or
external clock input (edge selectable from TCC pin). If TCC signal source is from
internal clock, TCC will increase by 1 at every instruction cycle (without prescaler).
Referring to Fig. 4-3 below, CLK=Fosc/2 or CLK=Fosc/4 application is determined
by the CODE Option bit CLK status. CLK=Fosc/2 is used when CLK bit is "0," and
CLK=Fosc/4 is used when CLK bit is "1." If TCC signal source comes from external
clock input, TCC is increased by 1 at every falling edge or rising edge of TCC pin.
Product Specification (V1.0) 09.22.2005
(This specification is subject to change without further notice)
EM78P157N
8-Bit Microcontroller with OTP ROM
„
The watchdog timer is a free running on-chip RC oscillator. The WDT will keep on
running even when the oscillator driver has been turned off (i.e., in sleep mode).
During normal operation or sleep mode, a WDT time-out (if enabled) will cause the
device to reset. The WDT can be enabled or disabled any time during normal
mode by software programming. Refer to WDTE bit of IOCE register. Without
prescaler, the WDT time-out period is approximately 18 ms1 (default).
Data Bus
CLK(=Fosc/2 or Fosc/4)
0
TCC
Pin
1
1
M
U
X
0
M
U
X
SYNC
2 cycles
TE
TS
TCC (R1)
TCC overflow interrupt
PAB
0
WDT
1
WTE
(in IOCE)
M
U
X
8-bit Counter
PAB
8-to-1 MUX
M
U
X
IOCA
PAB
PSR0~PSR2
0
Initial
value
1
MUX
PAB
WDT time-out
Fig. 4-3 TCC and WDT Block Diagram
4.4 I/O Ports
The I/O registers, both Port 5 and Port 6, are bi-directional tri-state I/O ports. Port 6 can
be set as pull-high internally by software. Furthermore, Port 6 can also be set as
open-drain output by software and supports input status change interrupt (or wake-up)
function. P50 ~ P52 and P60 ~ P63 pins can be pulled down by software. Each I/O pin
can be defined as "input" or "output" pin by the I/O control register (IOC5 ~ IOC6). P50
~ P51 are the R-option pins which are enabled by setting the ROC bit in the IOCE
register to “1.” When the R-option function is used, it is recommended that P50 ~ P51
are used as output pins. When R-option is in enabled state, P50 ~ P51 must be
programmed as input pins. Under R-option mode, the current/power consumption by
Rex should be taken into the consideration to promote energy conservation.
The I/O registers and I/O control registers are both readable and writable. The I/O
interface circuits for Port 5 and Port 6 are depicted in Figures 4-4, 4-5(a), 4-5(b), and
4-6 shown below.
1
Vdd = 5V, set up time period = 16.8ms ± 30%
Vdd = 3V, set up time period = 18ms ± 30%
Product Specification (V1.0) 09.22.2005
(This specification is subject to change without further notice)
• 13
EM78P157N
8-Bit Microcontroller with OTP ROM
PCRD
P
R
Q
_
Q
PORT
C
L
D
P
R
Q
_
Q
C
L
PCW R
CLK
IO D
D
PDW R
CLK
PDRD
0
1
M
U
X
NOTE: Pull-down is not shown in the figure
Fig. 4-4(a) I/O Port and I/O Control Register Port 5 Circuit Diagram
PC R D
Q
_
Q
P
R D
C L K
C
L
Q
_
Q
P
R D
C L K
C
L
PC W R
P 6 0 /I N T
PO R T
B it 6 o f I O C E
P
R
C L K
C
L
D
0
Q
1
_
Q
IO D
PD W R
M
U
X
PD R D
P
R
C L K
C
L
D
T 10
Q
_
Q
IN T
NOTE: Pull-high/down and open-drain are not shown in the figure
Fig. 4-5(b) I/O Port and I/O Control Register P60 (/INT) Circuit Diagram
14 •
Product Specification (V1.0) 09.22.2005
(This specification is subject to change without further notice)
EM78P157N
8-Bit Microcontroller with OTP ROM
PCRD
P61~P67
PORT
0
1
Q
_
Q
P
R D
CLK
C
L
Q
_
Q
P
R D
CLK
C
L
PCWR
IOD
PDWR
M
U
X
TIN
PDRD
P
R
CLK
C
L
D
Q
_
Q
NOTE: Pull-high/down and open-drain are not shown in the figure
Fig. 4-5(c) I/O Port and I/O Control Register for P61~P67 Circuit Diagram
IOCE.1
D
P
R
Q
Interrupt
CLK
_
C Q
L
RE.1
ENI Instruction
P
D R Q
T10
T11
CLK
_
C
L Q
P
Q R
D
CLK
_
Q C
L
T17
DISI Instruction
/SLEP
Interrupt
(Wake-up from SLEEP)
Next Instruction
(Wake-up from SLEEP)
Fig. 4-5(d) Block Diagram on I/O Port 6 with Input Change Interrupt/Wake-up
Product Specification (V1.0) 09.22.2005
(This specification is subject to change without further notice)
• 15
EM78P157N
8-Bit Microcontroller with OTP ROM
4.4.1 Port 6 Input Change Wake-up/Interrupt Function Usage
(I) Wake-up from Port 6 Input Status Change
(II) Port 6 Input Status Change Interrupt
(a) Before SLEEP
1. Read I/O Port 6 (MOV R6,R6)
1. Disable WDT* (using very carefully)
2. Execute "ENI"
2. Read I/O Port 6 (MOV R6,R6)
3. Enable interrupt (Set IOCF.1)
3. Execute "ENI" or "DISI"
4. IF Port 6 change (interrupt)
→ Interrupt vector (008H)
4. Enable interrupt (Set IOCF.1)
5. Execute "SLEP" instruction
(b) After Wake-up
1. IF "ENI" → Interrupt vector (008H)
2. IF "DISI" → Next instruction
* Software disables WDT (watchdog timer) but hardware must be enabled before applying the Port 6 Change
Wake-Up function (CODE Option Register and Bit 11 (ENWDTB-) set to “1”).
PCRD
VCC
ROC
Q
P
R
Q
C
L
Q
P
R
Q
C
L
Weakly
Pull-up
PORT
D
CLK
PCWR
IOD
D
PDWR
PDRD
0
Rex*
1
M
U
X
*The Rex is a 430K ohm external
resistor
Fig. 4-6 I/O Port with R-option (P50,P51) Circuit Diagram
16 •
Product Specification (V1.0) 09.22.2005
(This specification is subject to change without further notice)
EM78P157N
8-Bit Microcontroller with OTP ROM
4.5 RESET and Wake-up
A RESET is initiated by one of the following events:
1. Power on reset
2. /RESET pin input "low," or
3. WDT time-out (if enabled)
The device is kept in a RESET condition for a period of approximately 18ms2 (one
oscillator start-up timer period) after the reset is detected. Once the RESET occurs, the
following functions are performed (see Fig. 4-7 under Section 4.5.2.1)
„
The oscillator is running, or will be started.
„
The Program Counter (R2) is set to all "0."
„
All I/O port pins are configured as input mode (high-impedance state).
„
The Watchdog timer and prescaler are cleared.
„
When power is switched on, the upper 3 bits of R3 are cleared.
„
All the CONT register bits are set to "1" except for the Bit 6 (INT flag).
„
All the IOCA register bits are set to "1."
„
All the IOCB register bits are set to "1."
„
The IOCC register is cleared.
„
All the IOCD register bits are set to "1."
„
Bit 7 of the IOCE register is set to "1," and Bits 4 and 6 are cleared.
„
Bits 0 ~2 of RF and bits 0 ~2 of IOCF registers are cleared.
The sleep (power down) mode is asserted by executing the “SLEP” instruction. While
entering sleep mode, WDT (if enabled) is cleared but keeps on running. The controller
can be awakened by:
1. External reset input on /RESET pin,
2. WDT time-out (if enabled), or
3. Port 6 input status changes (if enabled).
The first two cases will cause the EM78P157N to reset. The T and P flags of R3 can be
used to determine the source of the reset (wake-up). The last case is considered the
continuation of the program execution. The global interrupt ("ENI" or "DISI" being
executed) decides whether or not the controller branches to the interrupt vector
following wake-up. If ENI is executed before SLEP, the instruction will begin to execute
from the address 008H after wake-up. If DISI is executed before SLEP, the operation
will restart from the succeeding instruction right next to SLEP after wake-up.
2
Vdd = 5V, set up time period = 16.8ms ± 30%
Vdd = 3V, set up time period = 18ms ± 30%
Product Specification (V1.0) 09.22.2005
(This specification is subject to change without further notice)
• 17
EM78P157N
8-Bit Microcontroller with OTP ROM
Only one of Cases 2 and 3 can be enabled before entering into sleep mode, i.e.,
[a] if Port 6 Input Status Change Interrupt is enabled before SLEP, WDT must be
disabled by software. However, the WDT bit in the option register remains enabled.
Hence, the EM78P157N can be awakened only by either Case 1 or 3.
[b] if WDT is enabled before SLEP, Port 6 Input Status Change Interrupt must be
disabled. Hence, the EM78P157N can only be awakened by either Case 1 or 2.
Refer to the section (Section 4.6) on Interrupt.
If Port 6 Input Status Change Interrupt is used to wake-up the EM78P157N (Case [a]
above), the following instructions must be executed before SLEP:
MOV A, @xx000110b
CONTW
CLR R1
MOV A, @xxxx1110b
CONTW
WDTC
MOV A, @0xxxxxxxb
IOW RE
MOV R6, R6
MOV A, @00000x1xb
IOW RF
ENI (or DISI)
SLEP
; Select internal TCC clock
; Clear TCC and prescaler
; Select WDT prescaler
; Clear WDT and prescaler
; Disable WDT
; Read Port 6
; Enable Port 6 input change interrupt
; Enable (or disable) global interrupt
; Sleep
NOP
One problem you should be aware of is that after waking up from the sleep mode, WDT
is enabled automatically. The WDT operation (being enabled or disabled) should be
handled appropriately by software after waking up from the sleep mode.
18 •
Product Specification (V1.0) 09.22.2005
(This specification is subject to change without further notice)
EM78P157N
8-Bit Microcontroller with OTP ROM
4.5.1 Summary of Initialized Values for Registers
Legend:
U = Unknown or don’t care
Address
Name
Reset Type
P = Previous value before reset
Bit 7
Bit 6
Bit 5
X
X
X
Bit Name
N/A
N/A
N/A
0x00
0x01
0x02
0x03
0x04
0x05
IOC5
IOC6
CONT
R0(IAR)
R1(TCC)
R2(PC)
R3(SR)
R4(RSR)
P5
t = Check with Section 4.5.2.1
Bit 4 Bit 3
X
Bit 2
Bit 1
Bit 0
C53
C52
C51
C50
Power-On
U
U
U
U
1
1
1
1
/RESET and WDT
Wake-Up from Pin
Change
Bit Name
U
U
U
U
1
1
1
1
U
U
U
U
P
P
P
P
C67
C66
C65
C64
C63
C62
C61
C60
Power-On
1
1
1
1
1
1
1
1
/RESET and WDT
Wake-Up from Pin
Change
Bit Name
1
1
1
1
1
1
1
1
P
P
P
P
P
P
P
P
X
/INT
TS
TE
PAB
1
1
0
0
1
1
1
1
1
1
1
1
1
1
1
1
P
P
P
P
P
P
P
P
Power-On
/RESET and WDT
Wake-Up from Pin
Change
Bit Name
PSR2 PSR1 PSR0
-
-
-
-
-
-
-
-
Power-On
/RESET and WDT
Wake-Up from Pin
Change
Bit Name
U
P
U
P
U
P
U
P
U
P
U
P
U
P
U
P
P
P
P
P
P
P
P
P
-
-
-
-
-
-
-
-
Power-On
/RESET and WDT
Wake-Up from Pin
Change
Bit Name
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
P
P
P
P
P
P
P
P
Power-On
/RESET and WDT
Wake-Up from Pin
Change
Bit Name
-
-
-
-
-
-
-
-
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
*0/P
*0/P
*0/P
*0/P
*1/P
*0/P
*0/P
*0/P
GP2
GP1
GP0
T
P
Z
DC
C
0
0
0
0
0
0
1
t
1
t
U
P
U
P
U
P
P
P
P
t
t
P
P
P
Power-On
/RESET and WDT
Wake-Up from Pin
Change
Bit Name
Power-On
/RESET and WDT
Wake-Up from Pin
Change
Bit Name
-
-
-
-
-
-
-
-
1
1
1
1
U
P
U
P
U
P
U
P
U
P
U
P
1
1
P
P
P
P
P
P
X
X
X
X
P53
P52
P51
P50
Power-On
0
0
0
0
U
U
U
U
/RESET and WDT
0
0
0
0
P
P
P
P
Wake-Up from Pin
0
0
0
0
P
P
P
P
Change
* Jump to address 0x08, or execute the instruction following the “SLEP” instruction.
Product Specification (V1.0) 09.22.2005
(This specification is subject to change without further notice)
• 19
EM78P157N
8-Bit Microcontroller with OTP ROM
Address
0x06
0x0F
0x0A
0x0B
0x0C
0x0D
0x0E
0x0F
Name
P6
RF(ISR)
IOCA
IOCB
IOCC
IOCD
IOCE
IOCF
0x10~0x2F R10~R2F
20 •
Reset Type
Bit 7
Bit 6
Bit 5
Bit 4 Bit 3
Bit 2
Bit 1
Bit 0
Bit Name
P67
P66
P65
P64
P63
P62
P61
P60
Power-On
U
U
U
U
U
U
U
U
/RESET and WDT
Wake-Up from Pin
Change
Bit Name
P
P
P
P
P
P
P
P
P
P
P
P
P
P
P
P
X
X
X
X
X
EXIF
ICIF
TCIF
Power-On
U
U
U
U
U
0
0
0
/RESET and WDT
Wake-Up from Pin
Change
Bit Name
U
U
U
U
U
0
0
0
U
U
U
U
U
P
P
P
-
-
-
-
-
-
-
-
Power-On
1
1
1
1
1
1
1
1
/RESET and WDT
Wake-Up from Pin
Change
Bit Name
1
1
1
1
1
1
1
1
P
P
P
P
P
P
P
P
/PD7
/PD6
/PD5
/PD4
X
/PD2
/PD1
/PD0
Power-On
1
1
1
1
U
1
1
1
/RESET and WDT
Wake-Up from Pin
Change
Bit Name
1
1
1
1
U
1
1
1
P
P
P
P
U
P
P
P
OD7
OD6
OD5
OD4
OD3
OD2
OD1
OD0
Power-On
0
0
0
0
0
0
0
0
/RESET and WDT
Wake-Up from Pin
Change
Bit Name
0
0
0
0
0
0
0
0
P
P
P
P
P
P
P
P
/PH7
/PH6
/PH5
/PH4
/PH3
/PH2
/PH1
/PH0
Power-On
1
1
1
1
1
1
1
1
/RESET and WDT
Wake-Up from Pin
Change
Bit Name
1
1
1
1
1
1
1
1
P
P
P
P
P
P
P
P
WDTE
EIS
X
ROC
X
X
X
X
Power-On
1
0
U
0
U
U
U
U
/RESET and WDT
Wake-Up from Pin
Change
Bit Name
1
0
U
0
U
U
U
U
1
P
U
P
U
U
U
U
X
X
X
X
X
EXIE
ICIE
TCIE
Power-On
U
U
U
U
U
0
0
0
/RESET and WDT
Wake-Up from Pin
Change
Bit Name
U
U
U
U
U
0
0
0
U
U
U
U
U
P
P
P
-
-
-
-
-
-
-
-
Power-On
U
U
U
U
U
U
U
U
/RESET and WDT
Wake-Up from Pin
Change
P
P
P
P
P
P
P
P
P
P
P
P
P
P
P
P
Product Specification (V1.0) 09.22.2005
(This specification is subject to change without further notice)
EM78P157N
8-Bit Microcontroller with OTP ROM
4.5.2 The Status of RST, T, and P of STATUS Register
A RESET condition is initiated by the following events:
1. A power-on condition
2. A high-low-high pulse on /RESET pin
3. Watchdog timer time-out
4.5.2.1 RST, T and P after RESET Values
The values of T (Time-out) and P (Power-down) as listed below are used to verify how
the processor wakes up.
Reset Type
T
Power on
/RESET during Operating mode
/RESET wake-up during SLEEP mode
WDT during Operating mode
WDT wake-up during SLEEP mode
Wake-Up on pin change during SLEEP mode
P
1
1
*P
*P
1
0
0
1
0
*P
0
0
*P = Previous status before reset
4.5.2.2 Event Affecting T and P Status
The table below shows the events that may affect the status of T (Time-out) and
P (Power-down).
Event
T
P
Power on
1
1
WDTC instruction
1
1
WDT time-out
0
*P
SLEP instruction
1
0
Wake-Up on pin change during SLEEP mode
1
0
*P = Previous status before reset
VDD
D
CLK
Oscillator
Q
CLK
CLR
Power-on
Reset
Voltage
Detector
WDTE
WDT
WDT Timeout
Setup Time
RESET
/RESET
Fig. 4-7 Controller Reset Block Diagram
Product Specification (V1.0) 09.22.2005
(This specification is subject to change without further notice)
• 21
EM78P157N
8-Bit Microcontroller with OTP ROM
4.6 Interrupt
The EM78P157N has three falling-edge interrupts as listed below:
1. TCC overflow interrupt
2. Port 6 Input Status Change Interrupt
3. External interrupt [(P60, /INT) pin].
Before the Port 6 Input Status Change Interrupt is enabled, reading Port 6 (e.g.,
"MOV R6,R6") is necessary. Each Port 6 pin of will have this feature when its status
changes. Any pin configured as output or P60 pin configured as “/INT,” is excluded
from this function. The Port 6 Input Status Change Interrupt can wake up the
EM78P157N from the sleep mode if Port 6 is enabled prior to going into the sleep mode
by executing SLEP instruction. When the chip wakes-up, the controller will continue to
execute the succeeding address if the global interrupt is disabled or branches to the
interrupt vector 008H if the global interrupt is enabled.
RF is the interrupt status register that records the interrupt requests in the relative
flags/bits. IOCF is an interrupt mask register. The global interrupt is enabled by the
ENI instruction and is disabled by the DISI instruction. When one of the enabled
interrupts occurs, the next instruction will be fetched from address 008H. Once in the
interrupt service routine, the source of an interrupt can be determined by polling the flag
bits in RF. The interrupt flag bit must be cleared by instructions before leaving the
interrupt service routine and before interrupts are enabled to avoid recursive interrupts.
The flag (except ICIF bit) in the Interrupt Status Register (RF) is set regardless of the
status of its mask bit or ENI execution. Note that the outcome of RF will be the logic
AND of RF and IOCF (refer to Fig. 4-7 above). The RETI instruction ends the interrupt
routine and enables the global interrupt (execution of ENI).
When an interrupt is generated by the INT instruction (enabled), the next instruction will
be fetched from address 001H.
VCC
D
/IRQn
P
R
CLK
C
L
Q
IRQn
INT
_
Q
RFRD
IRQm
RF
ENI/DISI
Q
IOCF
_
Q
P
R
C
L
IOD
D
CLK
IOCFWR
/RESET
IOCFRD
RFWR
Fig. 4-8 Interrupt Input Circuit
22 •
Product Specification (V1.0) 09.22.2005
(This specification is subject to change without further notice)
EM78P157N
8-Bit Microcontroller with OTP ROM
4.7 Oscillator
4.7.1 Oscillator Modes
The EM78P157N can be operated in three different oscillator modes, namely, External
RC oscillator mode (ERC), High XTAL oscillator mode (HXT), and Low XTAL oscillator
mode (LXT). User can select one of them by programming OSC, HLF, and HLP in the
CODE option register. The following table depicts how these three modes are defined.
4.7.1.1 Oscillator Modes Defined by OSC, HLF, and HLP
Mode
OSC
HLF
ERC (External RC oscillator mode)
0
1
1
X
1
1
0
HXT (High XTAL oscillator mode)
1
LXT (Low XTAL oscillator mode)
1
2
HLP
2
2
X
2
X
0
The transient point of system frequency between HXT and LXY is around 400 kHz
X = Don’t care
4.7.1.2 The Summary of Maximum Operating Speeds
The maximum operational frequency of crystal/resonator under different VDDs is as
listed below.
Condition
Two cycles with two clocks
VDD
Fxt Max Freq.
3.0
8.0 MHz
5.0
20.0 MHz
4.7.2 Crystal Oscillator/Ceramic Resonators (XTAL)
EM78P157N can be driven by an external clock signal through the OSCI pin as
illustrated in the following figure.
OSCI
Ext. Clock
OSCO
EM78P157N
Fig. 4-9 External Clock Input Circuit
Product Specification (V1.0) 09.22.2005
(This specification is subject to change without further notice)
• 23
EM78P157N
8-Bit Microcontroller with OTP ROM
In most applications, Pin OSCI and Pin OSCO can connected with a crystal or ceramic
resonator to generate oscillation. The figure below depicts such circuit. The same
thing is applicable whether it is in the HXT mode or LXT mode. Table below provides
the recommended values of C1 and C2. Since each resonator has its own attribute,
you should refer to its specification for the appropriate values of C1 and C2. RS, a
serial resistor, may be necessary for AT strip cut crystal or low frequency mode.
C1
OSCI
EM78P157N
XTAL
OSCO
RS
C2
Fig. 4-10 Crystal/Resonator Circuit
4.7.2.1 Capacitor Selection Guide for Crystal Oscillator or Ceramic
Resonator
The table below provides the recommended values of C1 and C2. Since each
resonator has its own attribute, you should refer to its specification for the appropriate
values of C1 and C2. RS, a serial resistor, may be necessary for AT strip cut crystal or
low frequency mode.
Oscillator Type
Frequency Mode
Frequency
C1(pF)*
C2(pF)*
Ceramic Resonators
HXT
455 kHz
2.0 MHz
4.0 MHz
100~150
20~40
10~30
100~150
20~40
10~30
LXT
32.768kHz
100KHz
200KHz
25
25
25
15
25
25
HXT
455KHz
1.0MHz
2.0MHz
4.0MHz
20~40
15~30
15
15
20~150
15~30
15
15
Crystal Oscillator
* The values shown for capacitors C1 & C2 are for reference only.
24 •
Product Specification (V1.0) 09.22.2005
(This specification is subject to change without further notice)
EM78P157N
8-Bit Microcontroller with OTP ROM
4.7.3 External RC Oscillator Mode
For some applications that do not need a very precise timing calculation, the RC
oscillator (Fig. 4-11 below) offers a lot of cost savings. Nevertheless, it should be noted
that the frequency of the RC oscillator is influenced by the supply voltage, the values of
the resistor (Rext), the capacitor (Cext), and even by the operation temperature.
Moreover, the frequency also changes slightly from one chip to another due to the
manufacturing process variation.
In order to maintain a stable system frequency, the values of the Cext should not be
less than 20pF, and that the value of Rext should not be greater than 1 MΩ. If they
cannot be kept in this range, the frequency is easily affected by noise, humidity, and
leakage.
The smaller the Rext in the RC oscillator, the faster its frequency will be. On the
contrary, for very low Rext values, for instance, 1 KΩ, the oscillator will become
unstable because the NMOS cannot accurately discharge the current of the
capacitance.
Based on the above factors, it must be kept in mind that all of the supply voltage, the
operation temperature, the components of the RC oscillator, the package types, the
way the PCB is laid out, will affect the system frequency.
Vcc
Rext
OSCI
Cext
EM78P157N
Fig. 4-11 External RC Oscillator Mode Circuit
Product Specification (V1.0) 09.22.2005
(This specification is subject to change without further notice)
• 25
EM78P157N
8-Bit Microcontroller with OTP ROM
4.7.3.1 RC Oscillator Frequencies
Cext
Rext
Average Fosc
5V, 25°C
Average Fosc
3V, 25°C
3.3k
3.92 MHz
3.65 MHz
5.1k
2.67 MHz
2.60 MHz
10k
1.39MHz
1.40 MHz
20 pF
100k
149 KHz
156 KHz
3.3k
1.39 MHz
1.33 MHz
5.1k
10k
940 KHz
480 KHz
920 KHz
475 KHz
100k
52 KHz
50 KHz
3.3k
595 KHz
560 KHz
5.1k
400 KHz
390 KHz
10k
200 KHz
200 KHz
100k
21 KHz
20 KHz
100 pF
300 pF
NOTE: 1. Values derived and measured from DIP packages
2. Values are for design references only
3. The frequency drift is about ±30%
4.8 CODE Option Register
The EM78P157N has a CODE option word that is not a part of the normal program
memory. The option bits cannot be accessed during normal program execution.
The following is the Code Option Register and Customer ID Register arrangement
distribution:
Word 0
Word 1
Bit12~Bit0
Bit12~Bit0
4.8.1 Code Option Register (Word 0)
WORD 0
Bit12 Bit11 Bit10
-
-
-
Bit9
Bit8
Bit7
Bit6
Bit5
Bit4
Bit3
Bit2
Bit1
Bit0
-
CLKS
ENWDTB
-
HLF
OSC
HLP
PR2
PR1
PR0
Bit 9~Bit 12: Not used (reserved)
This bit is set to “1” all the time
Bit 8 (CLKS): Instruction period option bit
0: two oscillator periods
1: four oscillator periods
(Refer to Section 4-12, Instruction Set)
Bit 7 (ENWDTB): Watchdog timer enable bit
0: Enable
1: Disable
Bit 6:
Not used (reserved)
This bit is set to “1” all the time
26 •
Product Specification (V1.0) 09.22.2005
(This specification is subject to change without further notice)
EM78P157N
8-Bit Microcontroller with OTP ROM
Bit 5 (HLF):
XTAL frequency selection
0: XTAL2 type (low frequency, 32.768KHz)
1: XTAL1 type (high frequency)
This bit will affect system oscillation only when Bit 4 (OSC) is “1.” When
OSC is”0,” HLF must be “0”.
NOTE
The transient point of system frequency between HXT and LXY is around 400 KHz.
Bit 4 (OSC): Oscillator type selection
0: RC type
1: XTAL type (XTAL1 and XTAL2)
Bit 3 (HLP):
Power selection
0: Low power
1: High power
Bit 2 ~ Bit 0 (PR2 ~ PR0): Protect bits
PR2 ~ PR0 are protect bits that can be set as follows:
PR2
PR1
PR0
Protect
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
Enable
Enable
Enable
Enable
Enable
Enable
Enable
Disable
4.8.2 Customer ID Register (Word 1)
Bit 12 ~ Bit 0
XXXXXXXXXXXXX
Bit 12 ~ Bit 0: Customer’s ID code
Product Specification (V1.0) 09.22.2005
(This specification is subject to change without further notice)
• 27
EM78P157N
8-Bit Microcontroller with OTP ROM
4.9 Power-On Considerations
Any microcontroller is not guaranteed to start to operate properly before the power
supply stays at its steady state.
EM78P157N POR voltage range is 1.2V~1.8V. Under customer application, when
power is OFF, Vdd must drop to below 1.2V and remains OFF for 10µs before power
can be switched ON again. This way, the EM78P157N will reset and works normally.
The extra external reset circuit will work well if Vdd can rise at very fast speed (50 ms or
less). However, under most cases where critical applications are involved, extra
devices are required to assist in solving the power-up problems.
4.10 External Power-On Reset Circuit
The circuit shown below implements an external RC to produce the reset pulse. The
pulse width (time constant) should be kept long enough for Vdd to reach the minimum
operation voltage. This circuit is used when the power supply has a slow rise time.
Because the current leakage from the /RESET pin is about ±5µA, it is recommended
that R should not be greater than 40K. In this way, the /RESET pin voltage is held
below 0.2V. The diode (D) acts as a short circuit at the moment of power down. The
capacitor C will discharge rapidly and fully. Rin, the current-limited resistor, will prevent
high current or ESD (electrostatic discharge) from flowing into /RESET pin.
Vdd
R
/RESET
D
EM78P157N
Rin
C
Fig. 4-12 External Power-Up Reset Circuit
28 •
Product Specification (V1.0) 09.22.2005
(This specification is subject to change without further notice)
EM78P157N
8-Bit Microcontroller with OTP ROM
4.11 Residual-Voltage Protection
When battery is replaced, device power (Vdd) is taken off but residual-voltage remains.
The residual-voltage may trips below Vdd minimum, but not to zero. This condition
may cause a poor power-on reset. Figures 4-13 and 4-14 illustrate how to build a
residual-voltage protection circuit.
Vdd
Vdd
33K
EM78P157N
Q1
10K
/RESET
40K
1N4684
Fig. 4-13 Circuit 1 for the Residue Voltage Protection
Vdd
Vdd
R1
EM78P157N
Q1
/RESET
40K
R2
Fig. 4-14 Circuit 2 for the Residue Voltage Protection
Product Specification (V1.0) 09.22.2005
(This specification is subject to change without further notice)
• 29
EM78P157N
8-Bit Microcontroller with OTP ROM
4.12
Instruction Set
Each instruction in the instruction set is a 13-bit word divided into an OP code and one
or more operands. Normally, all instructions are executed within one single instruction
cycle (one instruction consists of 2 oscillator periods), unless the program counter is
changed by instruction "MOV R2,A," "ADD R2,A," or by instructions of arithmetic or
logic operation on R2 (e.g., "SUB R2,A," "BS(C) R2,6," "CLR R2," etc.). In this case,
the execution takes two instruction cycles.
If for some reasons, the specification of the instruction cycle is not suitable for certain
applications, try modifying the instruction as follows:
1. Change one instruction cycle to consist of 4 oscillator periods.
2. "JMP,” "CALL," "RET," "RETL," and "RETI," or the conditional skip ("JBS," "JBC,"
"JZ," "JZA," "DJZ," and "DJZA") commands which were tested to be true, are
executed within two instruction cycles. The instructions that are written to the
program counter also take two instruction cycles.
Case (1) is selected by the CODE Option bit, called CLK. One instruction cycle
consists of two oscillator clocks if CLK is low, and four oscillator clocks if CLK is high.
Note that once the 4 oscillator periods within one instruction cycle is selected as in
Case (A), the internal clock source to TCC should be CLK=Fosc/4, instead of Fosc/2 as
indicated in Fig. 4-3 (TCC and WDT Block Diagram) in Section 4.3.
Furthermore, the instruction set has the following features:
1. Every bit of any register can be set, cleared, or tested directly.
2. The I/O register can be regarded as general register. That is, the same instruction
can operate on I/O register.
LEGEND: "R" represents a register designator that specifies which one of the registers (including operational registers
and general purpose registers) is to be utilized by the instruction.
"b" represents a bit field designator that selects the value for the bit which is located in the register "R" and
affects operation.
"k" represents an 8 or 10-bit constant or literal value.
Instruction Binary
0
0
0
0
0
0
0
0
0
0000
0001
0002
0003
0004
000r
0010
0011
0012
NOP
DAA
CONTW
SLEP
WDTC
IOW R
ENI
DISI
RET
0 0000 0001 0011
0013
RETI
0
0
0
0
0014
001r
00rr
0080
CONTR
IOR R
MOV R,A
CLRA
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0001
0001
0001
Mnemonic
0000
0001
0010
0011
0100
rrrr
0000
0001
0010
30 •
0000
0000
0000
0000
0000
0000
0000
0000
0000
Hex
0001
0001
01rr
1000
0100
rrrr
rrrr
0000
Operation
No Operation
Decimal Adjust A
A → CONT
0 → WDT, Stop oscillator
0 → WDT
A → IOCR
Enable Interrupt
Disable Interrupt
[Top of Stack] → PC
[Top of Stack] → PC, Enable
Interrupt
CONT → A
IOCR → A
A→R
0→A
Status Affected
None
C
None
T,P
T,P
1
None
None
None
None
None
None
1
None
None
Z
Product Specification (V1.0) 09.22.2005
(This specification is subject to change without further notice)
EM78P157N
8-Bit Microcontroller with OTP ROM
Instruction Binary
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0000
0001
0001
0001
0001
0010
0010
0010
0010
0011
0011
0011
0011
0100
0100
0100
0100
0101
0101
0101
0101
Mnemonic
Status Affected
Z
Z,C,DC
Z,C,DC
Z
Z
Z
Z
Z
Z
Z
Z
Z,C,DC
Z,C,DC
Z
Z
Z
Z
Z
Z
None
None
SUB A,k
INT
PC+1 → [SP], 001H → PC
None
ADD A,k
k+A → A
Z,C,DC
00rr
01rr
01rr
01rr
01rr
02rr
02rr
02rr
02rr
03rr
03rr
03rr
03rr
04rr
04rr
04rr
04rr
05rr
05rr
05rr
05rr
CLR R
SUB A,R
SUB R,A
DECA R
DEC R
OR A,R
OR R,A
AND A,R
AND R,A
XOR A,R
XOR R,A
ADD A,R
ADD R,A
MOV A,R
MOV R,R
COMA R
COM R
INCA R
INC R
DJZA R
DJZ R
0 0110 00rr rrrr
06rr
RRCA R
0 0110 01rr rrrr
06rr
RRC R
0 0110 10rr rrrr
06rr
RLCA R
0 0110 11rr rrrr
06rr
RLC R
0 0111 00rr rrrr
07rr
SWAPA R
0
0
0
0
0
0
0
1
1
1
1
1
1
rrrr
rrrr
rrrr
rrrr
rrrr
rrrr
rrrr
kkkk
kkkk
kkkk
kkkk
kkkk
kkkk
07rr
07rr
07rr
0xxx
0xxx
0xxx
0xxx
1kkk
1kkk
18kk
19kk
1Akk
1Bkk
SWAP R
JZA R
JZ R
BC R,b
BS R,b
JBC R,b
JBS R,b
CALL k
JMP k
MOV A,k
OR A,k
AND A,k
XOR A,k
1 1100 kkkk kkkk
1Ckk
RETL k
1 1101 kkkk kkkk
1Dkk
1 1110 0000 0001
1E01
1 1111 kkkk kkkk
1Fkk
01rr
10rr
11rr
bbrr
bbrr
bbrr
bbrr
kkkk
kkkk
kkkk
kkkk
kkkk
kkkk
Operation
0→R
R-A → A
R-A → R
R-1 → A
R-1 → R
A∨R→A
A∨R→R
A&R→A
A&R→R
A⊕R→A
A⊕R→R
A+R→A
A+R→R
R→A
R→R
/R → A
/R → R
R+1 → A
R+1 → R
R-1 → A, skip if zero
R-1 → R, skip if zero
R(n) → A(n-1),
R(0) → C, C → A(7)
R(n) → R(n-1),
R(0) → C, C → R(7)
R(n) → A(n+1),
R(7) → C, C → A(0)
R(n) → R(n+1),
R(7) → C, C → R(0)
R(0-3) → A(4-7),
R(4-7) → A(0-3)
R(0-3) ↔ R(4-7)
R+1 → A, skip if zero
R+1 → R, skip if zero
0 → R(b)
1 → R(b)
if R(b)=0, skip
if R(b)=1, skip
PC+1 → [SP], (Page, k) → PC
(Page, k) → PC
k→A
A∨k→A
A&k→A
A⊕k→A
k → A,
[Top of Stack] → PC
k-A → A
rrrr
rrrr
rrrr
rrrr
rrrr
rrrr
rrrr
rrrr
rrrr
rrrr
rrrr
rrrr
rrrr
rrrr
rrrr
rrrr
rrrr
rrrr
rrrr
rrrr
rrrr
0111
0111
0111
100b
101b
110b
111b
00kk
01kk
1000
1001
1010
1011
11rr
00rr
01rr
10rr
11rr
00rr
01rr
10rr
11rr
00rr
01rr
10rr
11rr
00rr
01rr
10rr
11rr
00rr
01rr
10rr
11rr
Hex
C
C
C
C
None
None
None
None
2
None
3
None
None
None
None
None
None
Z
Z
Z
None
Z,C,DC
1
This instruction is applicable to IOC5 ~ IOC6 and IOCB ~ IOCF only
This instruction is not recommended for RF operation
3
This instruction cannot operate under RF
2
Product Specification (V1.0) 09.22.2005
(This specification is subject to change without further notice)
• 31
EM78P157N
8-Bit Microcontroller with OTP ROM
4.13 Timing Diagrams
4.13.1
AC Test Input/Output Waveform
2.4
2.0
0.8
TEST POINTS
2.0
0.8
0.4
AC Testing : Input is driven at 2.4V for logic "1",and 0.4V for logic "0".Timing measurements are
made at 2.0V for logic "1",and 0.8V for logic "0".
Fig. 4-15 AC Test Input/Output Waveform Timing Diagram
4.13.2
RESET Timing (CLK = ”0”)
Instruction 1
Executed
NOP
CLK
/RESET
Tdrh
Fig. 4-16 RESET Timing (CLK = ”0”)Timing Diagram
4.13.3
TCC Input Timing (CLKS = ”0”)
Tins
CLK
TCC
Ttcc
Fig. 4-17 TCC Input Timing (CLKS = ”0”) Timing Diagram
32 •
Product Specification (V1.0) 09.22.2005
(This specification is subject to change without further notice)
EM78P157N
8-Bit Microcontroller with OTP ROM
5
Absolute Maximum Ratings
„
EM78P157N
Items
6
Rating
Temperature under bias
–40°C to 85°C
Storage temperature
–65°C to 150°C
Working voltage
2.5 to 5.5V
Working frequency
DC to 20MHz
Input voltage
Vss-0.3V to Vdd+0.5V
Output voltage
Vss-0.3V to Vdd+0.5V
Electrical Characteristics
6.1 DC Electrical Characteristic
(Ta=25 °C, VDD=5V±5%, VSS=0V)
Symbol
FXT
ERC
IIL
VIH1
VIL1
VIHT1
VILT1
VIHX1
VILX1
VIH2
VIL2
VIHT2
VILT2
VIHX2
VILX2
Parameter
XTAL: VDD to 3V
XTAL: VDD to 5V
ERC: VDD to 5V
Input Leakage Current for input
pins
Input High Voltage (VDD=5V)
Input Low Voltage (VDD=5V)
Input High Threshold Voltage
(VDD=5V)
Input Low Threshold Voltage
(VDD=5V)
Clock Input High Voltage
(VDD=5V)
Clock Input Low Voltage
(VDD=5V)
Input High Voltage (VDD=3V)
Input Low Voltage (VDD=3V)
Input High Threshold Voltage
(VDD=3V)
Input Low Threshold Voltage
(VDD=3V)
Clock Input High Voltage
(VDD=3V)
Clock Input Low Voltage
(VDD=3V)
Condition
Two cycle with two clocks
Two cycle with two clocks
R: 5.1KΩ, C: 100 pF
Min
DC
DC
F±30%
VIN = VDD, VSS
Ports 5, 6
Ports 5, 6
2.0
/RESET, TCC(Schmitt trigger)
2.0
/RESET, TCC(Schmitt trigger)
OSCI
Max
Unit
940
8.0
20.0
F±30%
MHz
MHz
kHz
±1
µA
0.8
V
V
V
0.8
3.5
OSCI
Ports 5, 6
Ports 5, 6
1.5
/RESET, TCC(Schmitt trigger)
1.5
/RESET, TCC(Schmitt trigger)
OSCI
Typ
V
1.5
V
0.4
V
V
V
0.4
2.1
OSCI
V
V
V
0.9
V
VOH1
Output High Voltage (Ports 5)
IOH = -12.0 mA
2.4
V
VOH1
Output High Voltage (Ports 6)
(Schmitt trigger)
IOH = -12.0 mA
2.4
V
VOL1
Output Low Voltage(Port5)
IOL = 12.0 mA
Product Specification (V1.0) 09.22.2005
(This specification is subject to change without further notice)
0.4
V
• 33
EM78P157N
8-Bit Microcontroller with OTP ROM
Symbol
Parameter
VOL1
Output Low Voltage (Ports 6)
(Schmitt trigger)
IPH
Pull-high current
IPD
Pull-down current
ISB1
Power down current
ISB2
Power down current
ICC1
Operating supply current
(VDD=3V)
at two cycles/four clocks
ICC2
Operating supply current
(VDD=3V)
at two cycles/four clocks
ICC3
Operating supply current
(VDD=5.0V)
at two cycles/two clocks
ICC4
Operating supply current
(VDD=5.0V)
at two cycles/four clocks
Condition
Min
Typ
IOL = 12.0 mA
Pull-high active, input pin at
VSS
Pull-down active, input pin at
VDD
All input and I/O pins at VDD,
output pin floating, WDT
disabled
All input and I/O pins at VDD,
output pin floating, WDT
enabled
/RESET= 'High', Fosc=32KHz
(Crystal type,CLKS="0"),
output pin floating, WDT
disabled
/RESET= 'High', Fosc=32KHz
(Crystal type,CLKS="0"),
output pin floating, WDT
enabled
/RESET= 'High', Fosc=4MHz
(Crystal type, CLKS="0"),
output pin floating, WDT
enabled
/RESET= 'High', Fosc=10MHz
(Crystal type, CLKS="0"),
output pin floating, WDT
enabled
Max
Unit
0.4
V
–50
–70
–240
µA
25
50
120
µA
1
2
µA
15
µA
20
30
µA
25
35
µA
2.0
mA
4.0
mA
Typ
Max
Unit
50
55
%
15
6.2 AC Electrical Characteristics
(Ta=25 °C, VDD=5V±5%, VSS=0V)
Symbol
Parameter
Dclk
Input CLK duty cycle
Tins
Instruction cycle time
(CLKS="0")
Conditions
Min
45
Crystal type
100
DC
ns
RC type
500
DC
ns
Ttcc
TCC input period
(Tins+20)/N*
Tdrh
Device reset hold time
11.8
Trst
/RESET pulse width
Ta = 25°C
2000
Twdt
Watchdog timer period
Ta = 25°C
11.8
Tset
Input pin setup time
0
ns
Thold
Input pin hold time
20
ns
Tdelay
Output pin delay time
50
ns
Cload=20pF
ns
16.8
21.8
ms
ns
16.8
21.8
ms
*N = selected prescaler ratio
34 •
Product Specification (V1.0) 09.22.2005
(This specification is subject to change without further notice)
EM78P157N
8-Bit Microcontroller with OTP ROM
6.3 Device Characteristics
The graphs provided in the following pages were derived based on a limited number of
samples and are shown herein for reference purposes only and are not guaranteed for
its accuracy. In some graphs, the data may be out of the specified warranted operating
range.
6.3.1 Port 6 Vih/Vil vs. VDD (Input Pin with Schmitt Inverter)
Vih/Vil (Input Pins with Schmitt Inverter)
2.5
Vih max (-40℃ to 85℃)
Vih/Vil (Volt)
2
Vih typ 25℃
Vih min (-40℃ to 85℃)
1.5
1
Vil max (-40℃ to 85℃)
0.5
Vil typ 25℃
0
2.5
3
3.5
Vil min ( 40℃ to 85℃)
4
4.5
5
5.5
VDD (Volt)
Fig. 6-1 Graph on Port 6 Vih/Vil vs. VDD
6.3.2 Port 5 Input Threshold Voltage (Vth) vs. VDD
Vth (Input Threshold Voltage) of I/O pins
2
Max(-40℃ to 85℃)
Vth (Volt)
1.5
Typ 25℃
1
Min(-40℃ to 85℃)
0.5
0
2.5
3
3.5
4
4.5
5
5.5
VDD (Volt)
Fig. 6-2 Graph on Port 5 Input Threshold Voltage (Vth) vs. VDD
Product Specification (V1.0) 09.22.2005
(This specification is subject to change without further notice)
• 35
EM78P157N
8-Bit Microcontroller with OTP ROM
6.3.3 Ports 5 & Port 6 Voh vs. Ioh, VDD=5V and 3V
Voh/Ioh (3V)
0
0
-5
-2
-10
-4
Ioh (mA)
Ioh (mA)
Voh/Ioh (5V)
Min 85℃
Min 85℃
-6
-15
Typ 25℃
Typ 25℃
-8
-20
Max –40
Max –40
-10
-25
1.5
2
2.5
3
3.5
4
4.5
0
5
0.5
1
1.5
2
2.5
3
Voh (Volt)
Voh (Volt)
Fig. 6-3 Graph on Ports 5 & 6 Voh vs. Ioh, VDD=5V
Fig. 6-4 Graph on Ports 5 & 6 Voh vs. Ioh, VDD=3V
6.3.4 Ports 5 & Port 6 Vol vs. Iol, VDD=5V and 3V
Vol/Iol (5V)
Vol/Iol (3V)
45
100
90
Max -40
40
80
35
70
30
60
50
Min 85℃
40
Iol (mA)
Iol (mA)
Typ 25℃
Typ 25℃
25
Min 85℃
20
15
30
10
20
5
10
0
0
0
0.5
1
1.5
2
2.5
3
Vol (Volt)
Fig. 6-5 Graph on Ports 5 & 6 Vol vs. Ioh, VDD=5V
36 •
Max -40
0
0.5
1
1.5
2
2.5
3
Vol (Volt)
Fig. 6-6 Graph on Ports 5 & 6 Voh vs. Iol, VDD=3V
Product Specification (V1.0) 09.22.2005
(This specification is subject to change without further notice)
EM78P157N
8-Bit Microcontroller with OTP ROM
6.3.5 WDT Time Out Period vs. VDD (Prescaler Set to 1:1)
WDT Time out
45
40
WDT period (mS)
35
Max 85℃
30
Max 70℃
25
Typ 25℃
20
Min 0℃
15
Min -40℃
10
5
0
2
3
4
5
6
VDD (Volt)
Fig. 6-7 Graph on WDT Time Out Period vs. VDD (Perscaler Set to 1:1)
Product Specification (V1.0) 09.22.2005
(This specification is subject to change without further notice)
• 37
EM78P157N
8-Bit Microcontroller with OTP ROM
6.3.6 Typical RC OSC Frequency vs. VDD
(Cext = 100pF, Temp. = 25℃)
Cext = 100pF, Typical RC Frequency vs. VDD
1.6
R = 3.3K
1.4
Frequency (M Hz)
1.2
R = 5.1K
1
0.8
R = 10K
0.6
0.4
0.2
R = 100K
0
3
3.5
4
4.5
VDD (Volt)
5
5.5
Fig. 6-8 Graph on Typical RC OSC Frequency vs. VDD (Cext = 100pF, Temperature at 25℃)
6.3.7 Typical RC OSC Frequency vs. VDD
(with R and C under Ideal Conditions)
VDD = 5V
VDD = 3V
Fig. 6-9 Graph on Typical RC OSC Frequency vs. VDD (with R & C under Ideal Conditions)
38 •
Product Specification (V1.0) 09.22.2005
(This specification is subject to change without further notice)
EM78P157N
8-Bit Microcontroller with OTP ROM
6.3.8 Typical and Maximum Operating Current (ICC1/2/3/4) vs.
Temperature
The following four conditions exist with the Operating Current ICC1 to ICC4:
„
ICC1: VDD=3V, Fosc=32K Hz, 2 clocks, WDT disabled
„
ICC2: VDD=3V, Fosc=32K Hz, 2 clocks, WDT enabled
„
ICC3: VDD=5V, Fosc=4M Hz, 2 clocks, WDT enabled
„
ICC4: VDD=5V, Fosc=10M Hz, 2 clocks, WDT enabled
Typical ICC1 and ICC2 vs. Temperature
Current (uA)
15
12
9
6
3
0
-40
-20
0
20
40
60
80
Temperature (℃)
Fig. 6-10 Graph on Typical Operating Current (ICC1 and ICC2) vs. Temperature
Maximum ICC1 and ICC2 vs. Temperature
21
Current (uA)
18
15
12
9
6
-40
-20
0
20
40
60
80
Temperature (℃)
Fig. 6-11 Graph on Maximum Operating Current (ICC1 and ICC2) vs. Temperature
Product Specification (V1.0) 09.22.2005
(This specification is subject to change without further notice)
• 39
EM78P157N
8-Bit Microcontroller with OTP ROM
Current (mA)
Typical ICC3 and ICC4 vs. Temperature
4
3.5
3
2.5
2
1.5
1
0.5
0
Typ ICC4
Typ ICC3
-40
-20
0
20
40
60
80
Temperature (℃)
Fig. 6-12 Graph on Typical Operating Current (ICC3 and ICC4) vs. Temperature
Maximum ICC3 and ICC4 vs. Temperature
4.5
Max ICC4
Current (mA)
4
3.5
3
2.5
Max ICC3
2
1.5
1
-40
-20
0
20
40
60
80
Temperature (℃)
Fig. 6-13 Graph on Maximum Operating Current (ICC3 and ICC4) vs. Temperature
40 •
Product Specification (V1.0) 09.22.2005
(This specification is subject to change without further notice)
EM78P157N
8-Bit Microcontroller with OTP ROM
6.3.9 Typical and Maximum Standby Current (ISB1 and ISB2) vs.
Temperature
The following two conditions exist with the Standby Current ISB1 and ISB2:
„
ISB1: VDD=5V, WDT disabled
„
ISB2: VDD=5V, WDT enabled
Typical ISB1 and ISB2 vs. Temperature
12
Current (uA)
10
Typ ISB2
8
6
4
Typ ISB1
2
0
-40
-20
0
20
40
60
80
Temperature (℃)
Fig. 6-14 Graph on Typical Standby Current (ISB1 and ISB2) vs. Temperature
Maximum ISB1 and ISB2 vs. Temperature
Current (uA)
12
10
8
6
4
2
0
-40
-20
0
20
Temperature (℃)
40
60
80
Fig. 6-15 Graph on Maximum Standby Current (ISB1 and ISB2) vs. Temperature
Product Specification (V1.0) 09.22.2005
(This specification is subject to change without further notice)
• 41
EM78P157N
8-Bit Microcontroller with OTP ROM
6.3.10 Operating Voltage under Temperature Range of
0°C to 70°C and –40°C to 85°C
Fig. 6-16 Graph on Operating Voltage under Temperature Range of 0°C to 70°C
Fig. 6-17 Graph on Operating Voltage under Temperature Range of –40°C to 85°C
42 •
Product Specification (V1.0) 09.22.2005
(This specification is subject to change without further notice)
EM78P157N
8-Bit Microcontroller with OTP ROM
6.3.11 Operating Current Range (Based on High and
Low Freq. @ =25℃) vs. Voltage
EM78P157N HXT V-I
2.5
2.25
2
I(mA)
1.75
1.5
1.25
1
0.75
0.5
0.25
0
2.3
2.8
3.3
3.8
4.3
4.8
5.3
Voltage(V)
Fig. 34 Operating Current Range (Based on High Freq. @ =25℃) vs. Voltage
EM78P157N LXT V-I
40
35
30
I(uA)
25
20
15
10
5
0
2.3
2.8
3.3
3.8
4.3
4.8
5.3
Voltage(V)
Fig. 35 Operating Current Range (Based on Low Freq. @ =25℃) vs. Voltage
Product Specification (V1.0) 09.22.2005
(This specification is subject to change without further notice)
• 43
EM78P157N
8-Bit Microcontroller with OTP ROM
APPENDIX
A Package Types
OTP MCU
Package Type
Pin Count
Package Size
EM78P157NBP
DIP
14
300 mil
EM78P157NBM
SOP
14
150 mil
EM78P157NAP
DIP
18
300 mil
EM78P157NAM
SOP
18
300 mil
EM78P157NAAS
SSOP
20
209 mil
EM78P157NAKM
SSOP
20
209 mil
A.1 Package Detailed Information
A.1.1
44 •
14-Lead Plastic Dual in line (PDIP) — 300 Mil
Product Specification (V1.0) 09.22.2005
(This specification is subject to change without further notice)
EM78P157N
8-Bit Microcontroller with OTP ROM
A.1.2
14-Lead Plastic Small Outline (SOP) — 150 Mil
Product Specification (V1.0) 09.22.2005
(This specification is subject to change without further notice)
• 45
EM78P157N
8-Bit Microcontroller with OTP ROM
A.1.3
46 •
18-Lead Plastic Dual in Line (PDIP) — 300 Mil
Product Specification (V1.0) 09.22.2005
(This specification is subject to change without further notice)
EM78P157N
8-Bit Microcontroller with OTP ROM
A.1.4
18-Lead Plastic Small Outline (SOP) — 300 Mil
Product Specification (V1.0) 09.22.2005
(This specification is subject to change without further notice)
• 47
EM78P157N
8-Bit Microcontroller with OTP ROM
A.1.5
48 •
20-Lead Plastic Small Outline (SSOP) — 209 Mil
Product Specification (V1.0) 09.22.2005
(This specification is subject to change without further notice)
EM78P157N
8-Bit Microcontroller with OTP ROM
B Quality Assurance and Reliability
Test Category
Solderability
Test Conditions
Remarks
Solder temperature=245±5℃,for 5 seconds up to the stopper
using a rosin-type flux
Step1: TCT ,65℃(15mins)~150℃(15mins),10 cycles
For SMD IC(such as
SOP, QFP, SOJ, etc.)
Step2: bake 125℃,TD(durance)=24 hrs
Pre-condition
Step3:soak 30°C /60%,TD(durance)=192hrs
Step4:IR flow 3cycles
(Pkg thickness≧2.5mm or Pkg volume≧350mm3 ----225±5℃)
(Pkg thickness≦2.5mm or Pkg volume≦350mm3 ----240±5℃)
Temperature cycle
test
–65℃(15mins)~150℃(15mins) , 200 cycles
Pressure cooker test
TA =121℃,RH=100%,pressure=2atm, TD(durance)= 96 Hrs
High temperature
/high humidity test
TA=85℃ , RH=85%,TD(durance)=168 ,500 Hrs
High-temperature
storage life
TA=150℃, TD(durance)=500,1000Hrs
High-temperature
operating life
TA=125 ℃ , VCC=Max. operating voltage, TD(durance)
=168,500,1000Hrs
Latch-up
TA=25℃, VCC=Max. operating voltage, 150mA/20V
ESD(HBM)
TA=25℃, ≧∣±3KV∣
ESD(MM)
TA=25℃, ≧∣±300V∣
Product Specification (V1.0) 09.22.2005
(This specification is subject to change without further notice)
IP_ND,OP_ND,IO_ND
IP_NS,OP_NS,IO_NS
IP_PD,OP_PD,IO_PD,
IP_PS,OP_PS,IO_PS,
VDD-VSS(+),VDD_V
SS(-)mode
• 49
EM78P157N
8-Bit Microcontroller with OTP ROM
C Address Trap Detect
An address trap detect is one of the fail-safe function that detects CPU malfunction
caused by noise or the like. If the CPU attempts to fetch an instruction from a part of
RAM, an internal recovery circuit will auto started. Until CPU got the correct function, it
will execute the next program that follows.
Vdd
Tvr
/Reset
Tvd
Internal POR
Tpor
Power on
Reset
Symbol
Parameter
Condition
Min.
Typ.
Max.
Unit
Tpor
Power on reset time
Vdd = 5V, -40℃ to 85℃
10.5
16.8
22
ms
Tvd
Vdd Voltage drop time
Vdd = 5V, -40℃ to 85℃
-
-
1*
us
Tvr
Vdd Voltage rise time
Vdd = 5V, -40℃ to 85℃
-
-
1**
us
* Tvd is the period of Vdd voltage less than POR voltage 1.9 volts.
** Tvr is the period of Vdd voltage higher than 5.5 volts.
50 •
Product Specification (V1.0) 09.22.2005
(This specification is subject to change without further notice)