EMC EM78P142SS10J

EM78P142
8-Bit Microprocessor
with OTP ROM
Product
Specification
DOC. VERSION 1.0
ELAN MICROELECTRONICS CORP.
January 2008
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 © 2008 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 308
Tel: +886 3 563-9977
Fax: +886 3 563-9966
http://www.emc.com.tw
Elan (HK) Microelectronics
Corporation, Ltd.
Flat A, 19F., World Tech Centre
95 How Ming Street, Kwun Tong
Kowloon, HONG KONG
Tel: +852 2723-3376
Fax: +852 2723-7780
elanhk@emc.com.hk
Elan Information
Technology Group (USA)
Shenzhen:
Shanghai:
Elan Microelectronics
Shenzhen, Ltd.
Elan Microelectronics
Shanghai, Ltd.
3F, SSMEC Bldg., Gaoxin S. Ave. I
Shenzhen Hi-tech Industrial Park
(South Area), Shenzhen
CHINA 518057
Tel: +86 755 2601-0565
Fax: +86 755 2601-0500
#23, Zone 115, Lane 572, Bibo Rd.
Zhangjiang Hi-Tech Park
Shanghai, CHINA 201203
Tel: +86 21 5080-3866
Fax: +86 21 5080-4600
P.O. Box 601
Cupertino, CA 95015
USA
Tel: +1 408 366-8225
Fax: +1 408 366-8225
Contents
Contents
1
2
3
4
General Description ................................................................................................ 1
Features ................................................................................................................... 1
Pin Assignment ....................................................................................................... 2
Pin Description........................................................................................................ 3
5
6
4.1 EM78P142SS10 ............................................................................................... 3
Block Diagram ......................................................................................................... 4
Function Description .............................................................................................. 5
6.1
Operational Registers ....................................................................................... 5
6.1.1
6.1.2
6.1.3
6.1.4
6.1.5
6.1.6
6.1.7
6.1.8
6.1.9
6.1.10
6.1.11
6.1.12
6.1.13
6.1.14
6.1.15
6.1.16
6.2
R0 (Indirect Address Register) .......................................................................... 5
R1 (Time Clock).................................................................................................. 5
R2 (Program Counter) and Stack ....................................................................... 5
6.1.3.1 Data Memory Configuration................................................................. 7
R3 (Status Register) ........................................................................................... 8
R4 (RAM Select Register) .................................................................................. 8
R5 ~ R6 (Port 5 ~ Port 6).................................................................................... 8
R7 (Port 7) .......................................................................................................... 9
R8 (AISR: ADC Input Select Register) ............................................................. 10
R9 (ADCON: ADC Control Register) ................................................................ 12
RA (ADOC: ADC Offset Calibration Register) .................................................. 13
RB (ADDATA: Converted Value of ADC) .......................................................... 13
RC (ADDATA1H: Converted Value of ADC) ..................................................... 13
RD (ADDATA1L: Converted Value of ADC) ...................................................... 14
RE (Interrupt Status 2 and Wake-up Control Register) .................................... 14
RF (Interrupt Status 2 Register)........................................................................ 15
R10 ~ R3F ........................................................................................................ 15
Special Purpose Registers.............................................................................. 16
6.2.1
6.2.2
6.2.3
6.2.4
6.2.5
6.2.6
6.2.7
6.2.8
6.2.9
6.2.10
6.2.11
6.2.12
6.2.13
6.2.14
A (Accumulator) ................................................................................................ 16
CONT (Control Register) .................................................................................. 16
IOC50 ~ IOC70 (I/O Port Control Register)...................................................... 16
IOC80 (TCCA Control Register) ....................................................................... 17
IOC90 (TCCB and TCCC Control Register) ..................................................... 17
IOCA0 (IR and TCCC Scale Control Register)................................................. 18
IOCB0 (Pull-down Control Register)................................................................. 19
IOCC0 (Open-drain Control Register) .............................................................. 19
IOCD0 (Pull-high Control Register) .................................................................. 19
IOCE0 (WDT Control Register and Interrupt Mask Register 2)........................ 20
IOCF0 (Interrupt Mask Register) ...................................................................... 21
IOC51 (TCCA Timer) ........................................................................................ 21
IOC61 (TCCB Timer) ........................................................................................ 22
IOC71 (TCCBH/MSB Timer)............................................................................. 22
Product Specification (V1.0) 01.25.2008
• iii
Contents
6.2.15
6.2.16
6.2.17
6.2.18
6.2.19
6.2.20
6.2.21
6.2.22
6.3
6.4
TCC/WDT and Prescaler ................................................................................ 27
I/O Ports ......................................................................................................... 28
6.4.1
6.5
IOC81 (TCCC Timer) ........................................................................................ 22
IOC91 (Low-Time Register).............................................................................. 23
IOCA1 (High Time Register)............................................................................. 23
IOCB1 High/Low Time Scale Control Register)................................................ 23
IOCC1 (TCC Prescaler Timer).......................................................................... 24
IOCD1 (LVD Control Register) ......................................................................... 25
IOCE1 (Output Sink Select Control Register) .................................................. 26
IOCF1 (Pull-high Control Register)................................................................... 27
Usage of Port 5 Input Change Wake-up/Interrupt Function ............................. 30
Reset and Wake-up ........................................................................................ 31
6.5.1
6.5.2
Reset and Wake-up Operation ......................................................................... 31
6.5.1.1 Wake-up and Interrupt Modes Operation Summary.......................... 33
6.5.1.2 Register Initial Values after Reset ..................................................... 38
6.5.1.3 Controller Reset Block Diagram ........................................................ 43
The T and P Status under Status Register ....................................................... 43
6.6
Interrupt .......................................................................................................... 44
6.7
Analog-To-Digital Converter (ADC) ................................................................. 46
6.7.1
6.7.2
6.7.3
6.7.4
6.7.5
6.7.6
6.8
Infrared Remote Control Application/PWM Waveform Generation .................. 53
6.8.1
6.8.2
6.8.3
6.9
ADC Control Register (AISR/R8, ADCON/R9, ADOC/RA)............................... 46
6.7.1.1 R8 (AISR: ADC Input Select Register) .............................................. 46
6.7.1.2 R9 (ADCON: ADC Control Register) ................................................. 47
6.7.1.3 RA (ADOC: AD Offset Calibration Register) ...................................... 48
ADC Data Register (ADDATA/RB, ADDATA1H/RC, ADDATA1L/RD) ............. 49
ADC Sampling Time ......................................................................................... 49
AD Conversion Time......................................................................................... 49
ADC Operation during Sleep Mode .................................................................. 49
Programming Process/Considerations ............................................................. 50
6.7.6.1 Programming Process ....................................................................... 50
6.7.6.2 Sample Demo Programs ................................................................... 51
Overview........................................................................................................... 53
Function Description ......................................................................................... 54
Programming the Related Registers ................................................................ 56
Timer .............................................................................................................. 57
6.9.1
6.9.2
6.9.3
Overview........................................................................................................... 57
Function Description ......................................................................................... 57
Programming the Related Registers ................................................................ 59
6.10 Oscillator ........................................................................................................ 60
6.10.1
6.10.2
6.10.3
6.10.4
iv •
Oscillator Modes ............................................................................................... 60
Crystal Oscillator/Ceramic Resonators (Crystal) .............................................. 61
External RC Oscillator Mode ............................................................................ 64
Internal RC Oscillator Mode ............................................................................. 65
Product Specification (V1.0) 01.25.2008
Contents
6.11 Power-on Considerations................................................................................ 66
6.11.1 Programmable WDT Time-out Period .............................................................. 66
6.11.2 External Power-on Reset Circuit ...................................................................... 66
6.11.3 Residual Voltage Protection ............................................................................. 67
6.12 Code Option ................................................................................................... 68
6.12.1 Code Option Register (Word 0) ........................................................................ 68
6.12.2 Code Option Register (Word 1) ........................................................................ 70
6.12.3 Customer ID Register (Word 2) ........................................................................ 71
6.13 Low Voltage Detector/Low Voltage Reset ....................................................... 72
6.13.1 Low Voltage Reset............................................................................................ 72
6.13.2 Low Voltage Detector........................................................................................ 72
6.13.2.1 IOCD1 (LVD Control Register) .......................................................... 72
6.13.2.2 RE (Interrupt Status 2 & Wake-up Control Register) ......................... 73
6.13.3 Programming Process ...................................................................................... 74
7
8
6.14 Instruction Set................................................................................................. 75
Absolute Maximum Ratings.................................................................................. 77
DC Electrical Characteristics................................................................................ 77
9
10
8.1 AD Converter Characteristic ........................................................................... 79
8.2 Device Characteristics .................................................................................... 80
AC Electrical Characteristic.................................................................................. 81
Timing Diagrams ................................................................................................... 82
APPENDIX
A
B
Package Type ........................................................................................................ 83
Packaging Configuration ...................................................................................... 84
C
B.1 EM78P142SS10 ............................................................................................. 84
Quality Assurance and Reliability ........................................................................ 85
D
E
C.1 Address Trap Detect ....................................................................................... 85
How to Use the ICE 341N ...................................................................................... 86
Comparison between V-Package and U-Package Version.................................. 89
EM78P142-V Package ............................................................................................ 89
EM78P142-U Package............................................................................................ 89
Product Specification (V1.0) 01.25.2008
•v
Contents
Specification Revision History
Doc. Version
1.0
Revision Description
Date
Initial released version
2008/01/25
Item
Level Voltage Reset
Crystal mode
Operating frequency range at 0°C~ 70°C
EM78P142
4.0V, 3.5V, 2.4V
DC ~ 16MHz, 4.5V
DC ~ 8MHz, 3.0V
DC ~ 4MHz, 2.1V
IRC mode wake-up time
( Sleep → Normal )
10µs
Condition: 5V, 4MHz
Code Option
vi •
Added a Code Option NRM
Product Specification (V1.0) 01.25.2008
EM78P142
8-Bit Microprocessor with OTP ROM
1
General Description
The EM78P142 is an 8-bit microprocessor designed and developed with low-power and high-speed CMOS technology.
The series have an on-chip 2K×13-bit Electrical One Time Programmable Read Only Memory (OTP-ROM). It provides a
protection bit to prevent intrusion of user’s OTP memory code. Three Code option bits are also available to meet user’s
requirements.
With enhanced OTP-ROM features, the EM78P142 provide a convenient way of developing and verifying user’s
programs. Moreover, this OTP device offers the advantages of easy and effective program updates, using development
and programming tools. User can avail of the ELAN Writer to easily program his development code.
2
Features
„
CPU configuration
•
•
•
•
•
•
•
•
„
•
•
•
•
•
•
„
Fast set-up time requires only 0.8ms (VDD: 5V
Crystal: 4MHz, C1/C2: 30pF) in HXT2 mode and 10µs
in IRC mode (VDD: 5V, IRC: 4 MHz)
„
Peripheral configuration
•
•
•
„
•
•
•
•
„
•
Operating frequency range (base on 2 clocks):
•
•
•
•
Crystal mode: DC ~ 16MHz, 4.5V;
DC ~ 8MHz, 3V; DC ~ 4MHz, 2.1V
ERC mode: DC ~ 16MHz, 4.5V;
DC ~ 125ns inst. cycle, 4.5V
DC ~ 8MHz, 3V; DC ~ 250ns inst. cycle, 3V
IRC mode
Oscillation mode: 16MHz, 4MHz, 1MHz, 455kHz
•
•
„
TCC, TCCA, TCCB, TCCC overflow interrupt
Input-port status changed interrupt (wake up from
sleep mode)
ADC completion interrupt
IR/PWM period match completion
Low voltage detect (LVD) interrupt
Special Features:
•
2.1V~5.5V at 0°C~70°C (commercial)
2.3V~5.5V at -40°C~85°C (industrial)
Easily implemented IR (infrared remote control)
8-bit real time clock (TCC) with overflow interrupt
8-bit real time clock (TCCA, TCCC) and 16-bit real
time clock (TCCB) with overflow interrupt
7-bit multi-channel Analog-to-Digital Converter with
12-bit resolution in Vref mode
Five available interrupts
•
3 bidirectional I/O ports: P5, P6, P7
8 I/O pins
Wake-up port : P5
5 programmable pull-down I/O pins
6 programmable pull-high I/O pins
1 programmable open-drain I/O pins
Operating voltage range:
•
„
•
I/O port configuration
•
„
2K×13 bits on-chip ROM
80×8 bits on-chip registers (SRAM)
8-level stacks for subroutine nesting
4 programmable Level Voltage Detector
(LVD) : 4.5V, 4.0V, 3.3V, 2.2V
3 programmable Level Voltage Reset
(LVR) : 4.0V, 3.5V, 2.4V
Less than 1.5 mA at 5V/4MHz
Typically 15 µA, at 3V/32kHz
Typically 2 µA, during sleep mode
Programmable free running Watchdog Timer
(4.5 ms : 18 ms)
Power saving Sleep mode
Selectable Oscillation mode
Power-on voltage detector available (1.7V ± 0.1V)
High EFT immunity (better performance at 4 MHz or
below)
Package Type:
•
10 pin SSOP 150mil
:
EM78P142SS10J/S
Note: Green products do not contain hazardous .substances.
Drift Rate
Internal RC
Frequency
„
Temperature
(-40°C~85°C)
Voltage
Process Total
(2.3V~5.5V)
4 MHz
±5%
±5%
±4%
±14%
16 MHz
±5%
±5%
±4%
±14%
1 MHz
±5%
±5%
±4%
±14%
455kHz
±5%
±5%
±4%
±14%
All the four main frequencies can be trimmed by
programming with four calibrated bits in the ICE341N
Simulator. OTP is auto trimmed by ELAN Writer.
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
•1
EM78P142
8-Bit Microprocessor with OTP ROM
3
Pin Assignment
Figure 3-1 EM78P142SS10
2•
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
EM78P142
8-Bit Microprocessor with OTP ROM
4
Pin Description
4.1 EM78P142SS10
Symbol
P50~P53
P55
P67
P70~P71
ADC0~ADC6
Pin No.
Type
Function
1~3, 9~10
I/O
5-bit General purpose input/output pins
Pull-high/Pull-down Function
Wake up from Sleep/Idle mode when the pin status
changes
Default value at power-on reset
6
I/O
1-bit General purpose input/output pin
Pull-high/Open-drain Function
Default value at power-on reset
8, 4
I/O
2-bit General purpose input/output pins
Default value at power-on reset
When P71 is used as output function, it is an open drain
pin
1~3, 6
8~10
I
7-bit channel Analog-to-Digital Converter with 12-bit
resolution.
Defined by ADCON (R9)<1:0>
/RESET
4
I
If it remains at logic low, the device will be reset
Wake-up from Sleep/Idle mode when pin status
changes
Voltage on /RESET must not exceed Vdd during normal
mode
OSCI
9
I
Crystal type: Crystal input terminal.
RC type: RC oscillator input pin
OSCO
8
O
Crystal type: Output terminal for crystal oscillator.
RC type: Clock output with a duration of one instruction
cycle time.
External clock signal input.
VDD
7
–
Power supply
VSS
5
–
Ground
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
•3
EM78P142
8-Bit Microprocessor with OTP ROM
5
Block Diagram
Figure 5 EM78P142 Block Diagram
4•
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
EM78P142
8-Bit Microprocessor with OTP ROM
6
Function Description
6.1 Operational Registers
6.1.1 R0 (Indirect Address Register)
R0 is not a physically implemented register. It is used as an indirect address pointer.
Any instruction using R0 as a pointer, actually accesses the data pointed by the RAM
Select Register (R4).
6.1.2 R1 (Time Clock)
„
Incremented by the instruction cycle clock.
„
Writable and readable as any other registers.
„
The TCC prescaler counter (IOCC1) is assigned to TCC
„
The contents of the IOCC1 register is cleared whenever –
•
a value is written to the TCC register.
•
a value is written to the TCC prescaler bits (Bits 3, 2, 1, 0 of the CONT register)
•
there is power-on reset, /RESET, or WDT time out reset.
6.1.3 R2 (Program Counter) and Stack
R3
A10
A9 A8
A7
~
Hardware Interrupt Vector
1 PAGE1 0400~07FF
000H
003H
~
021H
Stack Level 1
Stack Level 2
Stack Level 3
Stack Level 4
Stack Level 5
Stack Level 6
Stack Level 7
Stack Level 8
On-chip Program
Memory
User Memory Space
CALL
RET
RETL
RETI
0 PAGE0 0000~03FF
Reset Vector
A0
7FFH
Figure 6-1 Program Counter Organization
„
R2 and hardware stacks are 11-bit wide. The structure is depicted in the table
under Section 6.1.3.1 Data Memory Configuration.
„
The configuration structure generates 2K×13 bits on-chip ROM addresses to the
relative programming instruction codes. One program page is 1024 words long.
„
The contents of R2 are all set to "0"s when a reset condition occurs.
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
•5
EM78P142
8-Bit Microprocessor with OTP ROM
„
"JMP" instruction allows direct loading of the lower 10 program counter bits. Thus,
"JMP" allows PC to jump 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.
„
"LJMP" instruction allows direct loading of the program counter bits (A0~A10).
Therefore, "LJMP" allows PC to jump to any location within 2K (211).
„
"LCALL" instruction loads the program counter bits (A0 ~A10), and then PC+1 is
pushed into the stack. Thus, the subroutine entry address can be located
anywhere within 2K (211)
„
"RET" ("RETL k", "RETI") instruction loads the program counter with the contents
of the top of stack.
„
"ADD R2, A" allows a relative address to be added to the current PC, and the ninth
and above bits of the PC will increase progressively.
„
"MOV R2, A" allows loading of an address from the "A" register to the lower 8 bits of
the PC, and the ninth and tenth bits (A8 ~ A9) of the PC will remain unchanged.
„
Any instruction (except “ADD R2,A”) that is written to R2 (e.g., "MOV R2, A", "BC
R2, 6", etc.) will cause the ninth bit and the tenth bit (A8 ~ A9) of the PC to remain
unchanged.
„
All instructions are single instruction cycle (fclk/2) except “LCALL” and “LJMP”
instructions. The “LCALL” and “LJMP” instructions need two instructions cycle.
6•
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
EM78P142
8-Bit Microprocessor with OTP ROM
6.1.3.1
Data Memory Configuration
Address
R Page Registers
00
R0 (Indirect Addressing Register)
Reserve
Reserve
01
R1 (Timer Clock)
Reserve
Reserve
02
R2 (Program Counter)
Reserve
Reserve
03
R3 (Status Register)
Reserve
Reserve
04
R4 (RAM Select Register)
Reserve
Reserve
05
R5 (Port 5)
IOC50 (I/O Port Control Register)
IOC51 (TCCA Timer)
06
R6 (Port 6)
IOC60 (I/O Port Control Register)
IOC61 (TCCB LSB Timer)
07
R7 (Port 7)
IOC70 (I/O Port Control Register)
IOC71 (TCCB HSB Timer)
08
R8 (ADC Input Select Register
IOC80 (TCCA Control Register)
IOC81 (TCCC Timer)
09
R9 (ADC Control Register)
0A
0B
0C
0D
0E
0F
10
︰
1F
20
:
3F
RA (ADC Offset Calibration
Register)
(Converted
value
RB
AD11~AD4 of ADC)
RC (Converted value
AD11~AD8 of ADC)
(Converted value
RD
AD7~AD0 of ADC)
RE (Interrupt Status 2 and
Wake-up Control Register
RF (Interrupt Status Register 1)
IOCX0 Page Registers
IOC90 (TCCB and TCCC
Control Register)
(IR and TCCC Scale
IOCA0 Control Register)
IOCB0 (Pull-down Control
Register)
IOCC0 (Open-drain Control
Register)
IOCX1 Page Registers
IOC91 (Low-Time Register)
IOCA1 (High-Time Register)
IOCB1
(High-Time and Low-Time
Scale Control Register)
IOCC1 (TCC Prescaler Control)
IOCD0 (Pull-high Control Register) IOCD1 (LVD Control Register)
IOCE0 (WDT Control Register and
Interrupt Mask Register 2)
IOCE1 (High Output Sink Current)
IOCF0 (Interrupt Mask Register 1)
IOCF1 (Pull-high Control Register)
General Registers
Bank 0
Bank 1
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
•7
EM78P142
8-Bit Microprocessor with OTP ROM
6.1.4 R3 (Status Register)
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
RST
IOCS
-
T
P
Z
DC
C
Bit 7 (RST): Bit of reset type
Set to “1” if wake-up from sleep on pin change, comparator status
change, or AD conversion completed. Set to “0” if wake-up from other
reset types.
Bit 6 (IOCS): Select the Segment of IO control register
0 = Segment 0 (IOC50 ~ IOCF0) selected
1 = Segment 1 (IOC51 ~ IOCC1) selected
Bit 5:
Not used (reserved)
Bit 4 (T):
Time-out bit. Set to “1” by the "SLEP" and "WDTC" commands or during
power on, and reset to “0” by WDT time-out (for more details see Section
6.5.2, The T and P Status under Status Register).
Bit 3 (P):
Power-down bit. Set to “1” during power-on or by a "WDTC" command
and reset to “0” by a "SLEP" command (see Section 6.5.2, The T and P
Status under Status Register for more details).
Bit 2 (Z):
Zero flag. Set to "1" if the result of an arithmetic or logic operation is
zero.
Bit 1 (DC):
Auxiliary carry flag
Bit 0 (C):
Carry flag
6.1.5 R4 (RAM Select Register)
Bit 7:
Set to “0” all the time
Bit 6:
Used to select Bank 0 or Bank 1 of the register
Bits 5~0:
Used to select a register (Address: 00~0F, 10~3F) in indirect addressing
mode.
See table under Section 6.1.3.1 Data Memory Configuration.
6.1.6 R5 ~ R6 (Port 5 ~ Port 6)
R5 & R6 are I/O registers.
8•
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
EM78P142
8-Bit Microprocessor with OTP ROM
6.1.7 R7 (Port 7)
Bit
7
6
5
4
3
2
1
0
EM78P142
‘0’
‘0’
‘0’
‘0’
‘0’
‘0’
I/O
I/O
ICE341N
C3
C2
C1
C0
RCM1
RCM0
I/O
I/O
Note: R7 is an I/O register.
Bit 7 ~ Bit 2:
Unimplemented, read as ‘0’.
[With EM78P142]:
[With Simulator (C3~C0, RCM1, and RCM0)]: IRC calibration bits in IRC oscillator
mode. In IRC oscillator mode of ICE341N simulator, these
are the IRC mode selection bits and IRC calibration bits.
Bit 7 ~ Bit 4 (C3 ~ C0): Calibrator of internal RC mode
C3
C2
C1
C0
0
0
0
0
0
0
0
1
Frequency (MHz)
(1-36%) × F
(1-31.5%) × F
0
0
1
0
(1-27%) × F
0
0
1
1
(1-22.5%) × F
0
1
0
0
(1-18%) × F
0
1
0
1
(1-13.5%) × F
0
1
1
0
(1-9%) × F
0
1
1
1
(1-4.5%) × F
1
1
1
1
F (default)
1
1
1
0
(1+4.5%) × F
1
1
1
1
0
0
1
0
(1+9%) × F
(1+135%) × F
1
0
1
1
(1+18%) × F
1
0
1
0
(1+22.5%) × F
1
0
0
1
(1+27%) × F
1
0
0
0
(1+31.5%) × F
Note: 1. Frequency values shown are theoretical and taken from an instance of a high frequency mode.
Hence, they are shown for reference only. Definite values depend on the actual process.
2. Similar way of calculation is also applicable for low frequency mode.
Bit 3 and Bit 2 (RCM1, RCM0): IRC mode selection bits
RCM 1
RCM 0
1
1
4 (default)
1
0
16
0
1
1
0
0
455kHz
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
Frequency (MHz)
•9
EM78P142
8-Bit Microprocessor with OTP ROM
6.1.8 R8 (AISR: ADC Input Select Register)
The AISR register individually defines the I/O Port as analog input or as digital I/O.
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
‘0’
ADE6
ADE5
ADE4
ADE3
ADE2
ADE1
ADE0
Bit 7:
This bit must be set to “0” all the time.
Bit 6 (ADE6): AD converter enable bit of P55 pin
0 = Disable ADC6, P55 functions as I/O pin
1 = Enable ADC6 to function as analog input pin
Bit 5 (ADE5): AD converter enable bit of P70 pin
0 = Disable ADC5, P70 functions as I/O pin
1 = Enable ADC5 to function as analog input pin
Bit 4 (ADE4): AD converter enable bit of P67 pin
0 = Disable ADC4, P67 functions as I/O pin
1 = Enable ADC4 to function as analog input pin
Bit 3 (ADE3): AD converter enable bit of P53 pin
0 = Disable ADC3, P53 functions as I/O pin
1 = Enable ADC3 to function as analog input pin
Bit 2 (ADE2): AD converter enable bit of P52 pin
0 = Disable ADC2, P52 functions as I/O pin
1 = Enable ADC2 to function as analog input pin
Bit 1 (ADE1): AD converter enable bit of P51 pin
0 = Disable ADC1, P51 functions as I/O pin
1 = Enable ADC1 to function as analog input pin
Bit 0 (ADE0): AD converter enable bit of P50 pin
0 = Disable ADC0, P50 functions as I/O pin
1 = Enable ADC0 to function as analog input pin
10 •
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
EM78P142
8-Bit Microprocessor with OTP ROM
NOTE
The P55/OSCI/ADC6 pin cannot be applied to OSCI and ADC6 at the same time.
If P55/OSCI/ADC6 functions as OSCI oscillator input pin, then ADE6 bit for R8 must
be ”0” and ADIS2~0 do not select “ 110”. The P55/OSCI/ADC6 pin priority is as follows:
P55/OSCI/ADC6 Pin Priority
High
Medium
Low
OSCI
ADC6
P55
The P70/OSCO/ADC5 pin cannot be applied to OSCO and ADC5 at the same time.
If P70/OSCO/ADC5 acts as OSCO oscillator input pin, then ADE5 bit for R8 must be ”0”
and ADIS2~0 do not select “101”. The P70/OSCO/ADC5 pin priority is as follows:
P70/OSCO/ADC5 Pin Priority
High
Medium
Low
OSCO
ADC5
P70
The P67/IR OUT/ADC4 pin cannot be applied to IR OUT and ADC4 at the same time.
If P67/IR OUT/ADC4 functions as ADC4 analog input pin, then IROUTE bit for IOCA0
must be “0”..
If P67/IR OUT/ADC4 functions as IR OUT analog input pin, then ADE4 bit for R8 must
be ”0” and ADIS2~0 do not select “100”.
The P67/IR OUT/ADC4 pin priority is as follows:
P67/IR OUT/ADC4 Pin Priority
High
Medium
Low
ADC4
IR OUT
P67
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
• 11
EM78P142
8-Bit Microprocessor with OTP ROM
6.1.9 R9 (ADCON: ADC Control Register)
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
“0”
CKR1
CKR0
ADRUN
ADPD
ADIS2
ADIS1
ADIS0
This bit must be set to “0” all the time
Bit 7:
Bit 6 and Bit 5 (CKR1 and CKR0): The prescaler of the ADC oscillator clock rate
00 = 1: 16 (default value)
01 = 1: 4
10 = 1: 64
11 = 1: 8
CPUS
1
1
1
1
0
CKR1:CKR0
Operation Mode
Max. Operation Frequency
Fosc/16
Fosc/4
Fosc/64
Fosc/8
Internal RC
4 MHz
1 MHz
16 MHz
2 MHz
−
00
01
10
11
××
Bit 4 (ADRUN): ADC starts to RUN.
1 = an AD conversion is started. This bit can be set by software
0 = Reset upon completion of the conversion. This bit cannot be
reset through software
Bit 3 (ADPD):
ADC Power-down mode
1 = ADC is operating
0 = Switch off the resistor reference to save power even while the
CPU is operating.
Bit 2 ~ Bit 0 (ADIS2 ~ADIS0): Analog Input Select
000 = ADIN0/P50
001 = ADIN1/P51
010 = ADIN2/P52
011 = ADIN3/P53
100 = ADIN4/P67
101 = ADIN5/P70
110 = ADIN6/P55
111 = not used
These bits can only be changed when the ADIF bit and the ADRUN bit are both low.
See Section 6.1.14, RE (Interrupt Status 2 and Wake-up Control Register).
12 •
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
EM78P142
8-Bit Microprocessor with OTP ROM
6.1.10 RA (ADOC: ADC Offset Calibration Register)
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
CALI
SIGN
VOF[2]
VOF[1]
VOF[0]
“0”
“0”
“0”
Calibration enable bit for ADC offset
Bit 7 (CALI):
0 = disable Calibration
1 = enable Calibration
Polarity bit of offset voltage
Bit 6 (SIGN):
0 = Negative voltage
1 = Positive voltage
Bit 5 ~ Bit 3 (VOF[2] ~ VOF[0]): Offset voltage bits
VOF[2]
VOF[1]
VOF[0]
EM78P142
ICE341
0
0
0
0LSB
0LSB
0
0
1
2LSB
2LSB
0
1
0
4LSB
4LSB
0
1
1
6LSB
6LSB
1
1
0
0
0
1
8LSB
10LSB
8LSB
10LSB
1
1
0
12LSB
12LSB
1
1
1
14LSB
14LSB
Unimplemented, read as ‘0’
Bit 2 ~ Bit 0:
6.1.11 RB (ADDATA: Converted Value of ADC)
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
AD11
AD10
AD9
AD8
AD7
AD6
AD5
AD4
When the AD conversion is completed, the result is loaded into the ADDATA. The
ADRUN bit is cleared and the ADIF is set. See Section 6.1.14, RE (Interrupt Status 2
and Wake-up Control Register).
RB is read only.
6.1.12 RC (ADDATA1H: Converted Value of ADC)
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
“0”
“0”
“0”
“0”
AD11
AD10
AD9
AD8
When the AD conversion is completed, the result is loaded into the ADDATA1H. The
ADRUN bit is cleared and the ADIF is set. See Section 6.1.14, RE (Interrupt Status 2
and Wake-up Control Register).
RC is read only.
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
• 13
EM78P142
8-Bit Microprocessor with OTP ROM
6.1.13 RD (ADDATA1L: Converted Value of ADC)
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
AD7
AD6
AD5
AD4
AD3
AD2
AD1
AD0
When the AD conversion is completed, the result is loaded into the ADDATA1L. The
ADRUN bit is cleared and the ADIF is set. See Section 6.1.14, RE (Interrupt Status 2
and Wake-up Control Register).
RD is read only
6.1.14 RE (Interrupt Status 2 and Wake-up Control Register)
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
/LVD
LVDIF
ADIF
“0”
ADWE
“0”
ICWE
LVDWE
Note: 1. RE <6, 5> can be cleared by instruction but cannot be set.
2. IOCE0 is the interrupt mask register.
3. Reading RE will result to “logic AND” of the RE and IOCE0.
Bit 7 (/LVD):
Low voltage Detector state. This is a read only bit. When the VDD
pin voltage is lower than LVD voltage interrupt level (selected by
LVD1 and LVD0), this bit will be cleared.
0 = low voltage is detected
1 = low voltage is not detected or LVD function is disabled
Bit 6 (LVDIF):
Low Voltage Detector interrupt flag
LVDIF is reset to “0” by software.
Bit 5 (ADIF):
Interrupt flag for analog to digital conversion. Set when AD
conversion is completed. Reset by software.
0 = no interrupt occurs
1 = interrupt request
Bit 4:
This bit must be set to “0” all the time.
Bit 3 (ADWE):
ADC wake-up enable bit
0 = Disable ADC wake-up
1 = Enable ADC wake-up
When AD Conversion enters sleep/idle mode, this bit must be set to “Enable“.
Bit 2:
This bit must be set to “0” all the time.
Bit 1 (ICWE):
Port 5 input change to wake-up status enable bit
0 = Disable Port 5 input change to wake-up status
1 = Enable Port 5 input change to wake-up status
When Port 5 change enters sleep/idle mode, this bit must be set to “Enable“.
14 •
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
EM78P142
8-Bit Microprocessor with OTP ROM
Bit 0 (LVDWE): Low Voltage Detect wake-up enable bit
0 = Disable Low Voltage Detect wake-up
1 = Enable Low Voltage Detect wake-up
When the Low Voltage Detect is used to enter an interrupt vector or to
wake-up the IC from sleep/idle with Low Voltage Detect running, the
LVDWE bit must be set to “Enable“.
6.1.15 RF (Interrupt Status 2 Register)
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
LPWTIF
HPWTIF
TCCCIF
TCCBIF
TCCAIF
“0”
ICIF
TCIF
Note: 1. “1” means there is interrupt request, “0”
2. RF can be cleared by instruction but cannot be set.
3. IOCF0 is the interrupt mask register.
4. Reading RF will result to “logic AND” of the RF and IOCF0
Bit 7 (LPWTIF): Internal low-pulse width timer underflow interrupt flag for IR/PWM
function. Reset by software.
Bit 6 (HPWTIF): Internal high-pulse width timer underflow interrupt flag for IR/PWM
function. Reset by software.
Bit 5 (TCCCIF): TCCC overflow interrupt flag. Set when TCCC overflows. Reset by
software.
Bit 4 (TCCBIF): TCCB overflow interrupt flag. Set when TCCB overflows. Reset by
software.
Bit 3 (TCCAIF):
TCCA overflow interrupt flag. Set when TCCA overflows. Reset by
software.
Bit 2:
This bit must be set to “0” all the time.
Bit 1 (ICIF):
Port 5 input status change interrupt flag. Set when Port 5 input
changes. Reset by software.
Bit 0 (TCIF):
TCC overflow interrupt flag. Set when TCC overflows. Reset by
software.
6.1.16 R10 ~ R3F
All of these are 8-bit general-purpose registers.
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
• 15
EM78P142
8-Bit Microprocessor with OTP ROM
6.2 Special Purpose Registers
6.2.1 A (Accumulator)
Internal data transfer operation, or instruction operand holding usually involves the
temporary storage function of the Accumulator, which is not an addressable register.
6.2.2 CONT (Control Register)
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
“0”
INT
“0”
“0”
PSTE
PST2
PST1
PST0
Note: The CONT register is both readable and writable.
Bit 6 is read only.
Bit 7:
This bit must be set to “0” all the time.
Bit 6 (INT):
Interrupt enable flag
0 = masked by DISI or hardware interrupt
1 = enabled by the ENI/RETI instructions
This bit is readable only.
Bit 5 ~ Bit 4 :
These bits must set to “0” all the time.
Bit 3 (PSTE):
Prescaler enable bit for TCC
0 = prescaler disable bit. TCC rate is 1:1.
1 = prescaler enable bit. TCC rate is set as Bit 2 ~ Bit 0.
Bit 2 ~ Bit 0 (PST2 ~ PST0): TCC prescaler bits
PST2
PST1
PST0
TCC Rate
0
0
0
0
1
1
1
0
0
1
1
0
0
1
0
1
0
1
0
1
0
1:2
1:4
1:8
1:16
1:32
1:64
1:128
1
1
1
1:256
Note: Tcc time-out period [1/Fosc x prescaler x (256 − Tcc cnt) x 1
6.2.3 IOC50 ~ IOC70 (I/O Port Control Register)
"0" defines the relative I/O pin as output
"1" sets the relative I/O pin into high impedance
IOC50 <7, 6, 4>, IOC60 <6~0> :
These bits must set to “0” all the time,
Other bits could be readable and writable.
IOC70 registers are all readable and writable
16 •
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
EM78P142
8-Bit Microprocessor with OTP ROM
6.2.4 IOC80 (TCCA Control Register)
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
–
–
–
“0”
“0”
TCCAEN
“0”
“0”
Note: Bit 2 of the IOC80 register is both readable and writable.
Bits 7 ~ 5:
Not used
Bits 4 ~ 3:
These bits must set to “0” all the time.
Bit 2 (TCCAEN):
TCCA enable bit
0 = disable TCCA
1 = enable TCCA
These bits must set to “0” all the time.
Bits 1 ~ 0:
6.2.5 IOC90 (TCCB and TCCC Control Register)
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
TCCBHE
TCCBEN
“0”
“0”
–
TCCCEN
“0”
“0”
Bit 7 (TCCBHE): Control bit is used to enable the most significant byte of the timer
1 = Enable the most significant byte of TCCBH
TCCB is a 16-bit timer.
0 = Disable the most significant byte of TCCBH (default value)
TCCB is an 8-bit timer.
Bit 6 (TCCBEN): TCCB enable bit
0 = disable TCCB
1 = enable TCCB
Bits 5 ~ 4:
These bits must set to “0” all the time.
Bit 3:
Not used.
Bit 2 (TCCCEN): TCCC enable bit
0 = disable TCCC
1 = enable TCCC
Bits 1 ~ 0:
These bits must set to “0” all the time.
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
• 17
EM78P142
8-Bit Microprocessor with OTP ROM
6.2.6 IOCA0 (IR and TCCC Scale Control Register)
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
TCCCSE
TCCCS2
TCCCS1
TCCCS0
IRE
HF
LGP
IROUTE
Bit 7 (TCCCSE): Scale enable bit for TCCC
An 8-bit timer is provided as scale for TCCC and IR-Mode. When in
IR-Mode, TCCC timer scale uses the low-time segments of the
pulse generated by Fcarrier frequency modulation (see Figure 6-11
in Section 6.8.2, Function Description).
0 = scale disable bit, TCCC rate is 1:1
1 = scale enable bit, TCCC rate is set as Bit 6 ~ Bit 4
Bit 6 ~ Bit 4 (TCCCS2 ~ TCCCS0): TCCC scale bits
The TCCCS2 ~ TCCCS0 bits of the IOCA0 register are used to
determine the scale ratio of TCCC as shown below:
Bit 3 (IRE):
TCCCS2
TCCCS1
TCCCS0
TCCC Rate
0
0
0
1:2
0
0
1
1:4
0
1
0
1:8
0
1
1
1:16
1
0
0
1:32
1
0
1
1:64
1
1
1
1
0
1
1:128
1:256
Infrared Remote Enable bit
0 = Disable IRE, i.e., disable H/W Modulator Function. The IROUT
pin is fixed at a high level and the TCCC is an Up Timer.
1 = Enable IRE, i.e., enable H/W Modulator Function. Pin 67 is
defined as IROUT. If HF=1, the TCCC timer scale uses the
low-time segments of the pulse generated by the Fcarrier
frequency modulation (see Figure 6-11 in Section 6.8.2,
Function Description). When HF=0, the TCCC is an Up Timer
Bit 2 (HF):
High Frequency bit
0 = PWM application. IROUT waveform is achieved base on the
high-pulse width timer and low-pulse width timer which
determine the high time width and low time width respectively.
1 = IR application mode. The low-time segments of the pulse
generated by the Fcarrier frequency modulation (see Figure
6-11 in Section 6.8.2, Function Description)
18 •
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
EM78P142
8-Bit Microprocessor with OTP ROM
Long Pulse.
Bit 1 (LGP):
0 = The high-time and low-time registers are valid
1 = The high-time register is ignored. A single pulse is generated.
Bit 0 (IROUTE): Control bit used to define the P67 (IROUT) pin function
0 = P67 defined as bi-directional I/O pin
1 = P67 defined as IROUT. Under this condition, the I/O control bit
of P67 (Bit 7 of IOC60) must be set to “0”
6.2.7 IOCB0 (Pull-down Control Register)
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
“1”
“1”
/PD55
“1”
/PD53
/PD52
/PD51
/PD50
The IOCB0 register is both readable and writable.
Bits 7 ~ 6 and Bit 4: These bits must set to “1” all the time.
Bit 5 (/PD55): Control bit is used to enable the pull-down function of the P55 pin
0 = Enable internal pull-down
1 = Disable internal pull-down
Bit 3 (/PD53): Control bit is used to enable the pull-down function of the P53 pin
Bit 2 (/PD52): Control bit is used to enable the pull-down function of the P52 pin
Bit 1 (/PD51): Control bit is used to enable the pull-down function of the P51 pin
Bit 0 (/PD50): Control bit is used to enable the pull-down function of the P50 pin.
6.2.8 IOCC0 (Open-drain Control Register)
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
/OD67
“1”
“1”
“1”
“1”
“1”
“1”
“1”
The IOCC0 register is both readable and writable.
Bit 7 (/OD67): Control bit is used to enable the open-drain output of the P67 pin
0 = Enable open-drain output
1 = Disable open-drain output
Bits 6 ~ 0:
These bits must set to “1” all the time
6.2.9 IOCD0 (Pull-high Control Register)
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
“1”
“1”
/PH55
“1”
/PH53
/PH52
/PH51
/PH50
The IOCD0 register is both readable and writable.
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
• 19
EM78P142
8-Bit Microprocessor with OTP ROM
Bits 7 ~ 6 and Bit 4: These bits must set to “1” all the time.
Bit 5 (/PH55): Control bit is used to enable the pull-high function of the P55 pin
0 = Enable internal pull-high
1 = Disable internal pull-high
Bit 3 (/PH53): Control bit is used to enable the pull-high function of the P53 pin.
Bit 2 (/PH52): Control bit is used to enable the pull-high function of the P52 pin.
Bit 1 (/PH51): Control bit is used to enable the pull-high function of the P51 pin.
Bit 0 (/PH50): Control bit is used to enable the pull-high function of the P50 pin.
6.2.10 IOCE0 (WDT Control Register and Interrupt Mask Register 2)
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
WDTE
“0”
ADIE
“0”
PSWE
PSW2
PSW1
PSW0
Bit 7 (WDTE): Control bit used to enable Watchdog Timer
0 = Disable WDT
1 = Enable WDT
WDTE is both readable and writable.
Bit 6:
This bit must be set to “0” all the time.
Bit 5 (ADIE):
ADIF interrupt enable bit
0 = disable ADIF interrupt
1 = enable ADIF interrupt
Bit 4:
This bit must be set to “0” all the time.
Bit 3 (PSWE): Prescaler enable bit for WDT
0 = prescaler disable bit, WDT rate is 1:1
1 = prescaler enable bit, WDT rate is set as Bit 2 ~ Bit 0
Bit 2 ~ Bit 0 (PSW2 ~ PSW0): WDT prescaler bits
20 •
PSW2
PSW1
PSW0
WDT Rate
0
0
0
1:2
0
0
1
1:4
0
1
0
1:8
0
1
1
1:16
1
0
0
1:32
1
0
1
1:64
1
1
0
1:128
1
1
1
1:256
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
EM78P142
8-Bit Microprocessor with OTP ROM
6.2.11 IOCF0 (Interrupt Mask Register)
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
LPWTIE
HPWTIE
TCCCIE
TCCBIE
TCCAIE
“0”
ICIE
TCIE
Note: The IOCF0 register is both readable and writable.
Individual interrupt is enabled by setting to “1” its associated control bit in the IOCF0 and in IOCEO
Bits 4 and 5.
Global interrupt is enabled by the ENI instruction and is disabled by the DISI instruction. Refer to
Figure 6-7 Interrupt Input Circuit under Section 6 Interrupt.
Bit 7 (LPWTIE): LPWTIF interrupt enable bit
0 = Disable LPWTIF interrupt
1 = Enable LPWTIF interrupt
Bit 6 (HPWTIE): HPWTIF interrupt enable bit
0 = Disable HPWTIF interrupt
1 = Enable HPWTIF interrupt
Bit 5 (TCCCIE): TCCCIF interrupt enable bit
0 = Disable TCCCIF interrupt
1 = Enable TCCCIF interrupt
Bit 4 (TCCBIE): TCCBIF interrupt enable bit
0 = Disable TCCBIF interrupt
1 = Enable TCCBIF interrupt
Bit 3 (TCCAIE): TCCAIF interrupt enable bit
0 = Disable TCCAIF interrupt
1 = Enable TCCAIF interrupt
Bit 2:
This bit must be set to “0” all the time.
Bit 1 (ICIE):
ICIF interrupt enable bit
0 = Disable ICIF interrupt
1 = Enable ICIF interrupt
Bit 0 (TCIE):
TCIF interrupt enable bit.
0 = Disable TCIF interrupt
1 = Enable TCIF interrupt
6.2.12 IOC51 (TCCA Timer)
The IOC51 (TCCA) is an 8-bit clock timer. It is also an Up Timer and it can be read,
written to, and cleared on any reset condition.
TCCA Timeout period =
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
(
1
)
FOSC × 256 − TCCA cnt × 1
• 21
EM78P142
8-Bit Microprocessor with OTP ROM
6.2.13 IOC61 (TCCB Timer)
The IOC61 (TCCB) is an 8-bit clock timer for the least significant byte of TCCBX
(TCCB). It is also an Up Timer, and it can be read, written to, and cleared on any reset
condition.
6.2.14 IOC71 (TCCBH/MSB Timer)
The IOC71 (TCCBH/MSB) is an 8-bit clock Timer for the most significant byte of
TCCBX (TCCBH). It can be read, written to, and cleared on any reset condition.
When TCCBHE (IOC90) is “0,” then TCCBH is disabled. When TCCBHE is”1,” then
TCCB is a 16-bit timer.
When TCCBH is disabled:
TCCB Timeout period =
(
1
)
FOSC × 256 − TCCB cnt × 1
When TCCBH is enabled:
TCCB Timeout period =
FOSC ×
[ 65536
(
1
)
− TCCBH × 256 + TCCB cnt × 1
]
6.2.15 IOC81 (TCCC Timer)
IOC81 (TCCC) is an 8-bit clock timer that can be extended to 16-bit timer. It can be
read, written to and cleared on any reset condition.
If HF (Bit 2 of IOCA0) = 1 and IRE (Bit 3 of IOCA0) = 1, TCCC timer scale uses the
low-time segments of the pulse generated by the Fcarrier frequency modulation (see
Figure 6-11 in Section 6.8.2, Function Description). Then the TCCC value will be
TCCC predicted value.
When HF = 0 or IRE = 0, the TCCC is an Up Timer.
In TCCC Up Timer mode:
TCCC Timeout period =
1
(
)
FOSC × Scaler (IOCA0 ) × 256 − TCCC cnt × 1
When HF = 1 and IRE = 1, TCCC timer scale uses the low-time segments of the pulse
generated by the Fcarrier frequency modulation.
In IR mode:
FT
Fcarrier =
2
{ [ 1 + Decimal TCCC Value (IOC81) ] × TCCC Scale (IOCA0)}
where
22 •
FT =
FOSC
1
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
EM78P142
8-Bit Microprocessor with OTP ROM
6.2.16 IOC91 (Low-Time Register)
The 8-bit Low-time register controls the active or Low segment of the pulse.
The decimal value of its contents determines the number of oscillator cycles and verifies
that the IR OUT pin is active. The active period of IR OUT can be calculated as follows:
Low Time Width =
{ [ 1 + Decimal Low Time Value (IOC91)] × Low Time Scale (IOCB1) }
FT
where
FT =
FOSC
1
When an interrupt is generated by the Low time down counter underflow (when
enabled), the next instruction will be fetched from Address 015H (Low time).
6.2.17 IOCA1 (High Time Register)
The 8-bit High-time register controls the inactive or High period of the pulse.
The decimal value of its contents determines the number of oscillator cycles and
verifies that the IR OUT pin is inactive. The inactive period of IR OUT can be calculated
as follows:
High Time Width =
{ [ 1 + Decimal High Time Value (IOCA1)] × High Time Scale (IOCB1) }
FT
where
FT =
FOSC
1
When an interrupt is generated by the High time down counter underflow (when
enabled), the next instruction will be fetched from Address 012H (High time).
6.2.18 IOCB1 High/Low Time Scale Control Register)
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
HTSE
HTS2
HTS1
HTS0
LTSE
LTS2
LTS1
LTS0
Bit 7 (HTSE): High-time scale enable bit
0 = scale disable bit, High-time rate is 1:1
1 = scale enable bit, High-time rate is set as Bit 6~Bit 4.
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
• 23
EM78P142
8-Bit Microprocessor with OTP ROM
Bit 6 ~ Bit 4 (HTS2 ~ HTS0): High-time scale bits:
HTS2
HTS1
HTS0
High-time Rate
0
0
0
1:2
0
0
1
1:4
0
1
0
1:8
0
1
1
1:16
1
0
0
1:32
1
1
0
1
1
0
1:64
1:128
1
1
1
1:256
Bit 3 (LTSE): Low-time scale enable bit.
0 = scale disable bit, Low-time rate is 1:1
1 = scale enable bit, Low-time rate is set as Bit 2~Bit 0.
Bit 2 ~ Bit 0 (LTS2 ~ LTS0): Low-time scale bits:
LTS2
LTS1
LTS0
0
0
0
0
0
1
Low-time Rate
1:2
1:4
0
1
0
1:8
0
1
1
1:16
1
0
0
1:32
1
0
1
1:64
1
1
0
1:128
1
1
1
1:256
6.2.19 IOCC1 (TCC Prescaler Timer)
TCC prescaler timer can be read and written to:
PST2 PST1 PST0
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
TCC
Rate
0
0
0
-
-
-
-
-
-
-
V
1:2
0
0
1
-
-
-
-
-
-
V
V
1:4
0
1
0
-
-
-
-
-
V
V
V
1:8
0
1
1
0
1
0
-
-
-
V
V
V
V
V
V
V
V
V
1:16
1:32
1
0
1
-
-
V
V
V
V
V
V
1:64
1
1
0
-
V
V
V
V
V
V
V
1:128
1
1
1
V
V
V
V
V
V
V
V
1:256
V = valid value
The TCC prescaler timer is assigned to TCC (R1).
The contents of the IOCC1 register are cleared when one of the following occurs:
24 •
„
a value is written to the TCC register
„
a value is written to the TCC prescaler bits (Bits 3, 2, 1, 0 of CONT)
„
power-on reset, /RESET
„
WDT time out reset
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
EM78P142
8-Bit Microprocessor with OTP ROM
6.2.20 IOCD1 (LVD Control Register)
Bit
7
6
5
4
EM78P142
-
-
-
-
TYPE1
TYPE0
LVR1
LVR0
ICE341N
3
2
1
0
LVDIE LVDEN
LVD1
LVD0
LVDIE LVDEN
LVD1
LVD0
Bits 7~6 (Type 1 ~ Type 0): Type selection for EM78P142.
Type 1, Type 0
MCU Type
11
10
01
00
No use
No use
EM78P142 – 10Pin
No use
Bits 5~4 (LVR1 ~ LVR0): Low Voltage Reset enable bits.
LVR1, LVR0
VDD Reset Level
11
10
01
00
2.4V
3.5V
4.0V
VDD Release Level
NA (Power-on Reset)
2.6V
3.7V
4.2V
Note: The IOCD1 <3> register is both readable and writable.
Individual interrupt is enabled by setting to “1” its associated control bit in the IOCD1 <4>.
Global interrupt is enabled by the ENI instruction and is disabled by the DISI instruction. Refer to
Figure 6-8 Interrupt Input Circuit under Section 6.6 Interrupt.
Bit 3 (LVDIE): Low voltage Detector interrupt enable bit.
0 = Disable Low voltage Detector interrupt.
1 = Enable Low voltage Detector interrupt.
When a Low Voltage Detect is used to enter an interrupt vector or enter
next instruction, the LVDIE bit must be set to “Enable“.
Bit 2 (LVDEN): Low Voltage Detector enable bit
0 = Low voltage detector disable
1 = Low voltage detector enable
Bits 1~0 (LVD1:0): Low Voltage Detector level bits.
LVDEN
LVD1, LVD0
LVD Voltage Interrupt Level
/LVD
1
11
Vdd ≤ 2.2V
0
Vdd > 2.2V
1
10
Vdd ≤ 3.3V
0
Vdd > 3.3V
1
01
Vdd ≤ 4.0V
0
Vdd > 4.0V
1
1
00
Vdd ≤ 4.5V
0
0
××
Vdd > 4.5V
NA
1
0
1
1
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
• 25
EM78P142
8-Bit Microprocessor with OTP ROM
6.2.21 IOCE1 (Output Sink Select Control Register)
Bit
7
EM78P142
4
3
2
1
0
TIMERSC CPUS
IDLE
“0”
“0”
“0”
“0”
WDTPS TIMERSC CPUS
IDLE
“0”
“0”
“0”
“0”
-
ICE341N
Bit 7 (WDTPS):
6
5
WDT time-out period select bit.
0 : 4.5 ms
1 : 18 ms
Bit 6 (TIMERSC): TCC, TCCA, TCCB, TCCC clock sources select 0/1 → Fs/Fm*
Fs: sub frequency for WDT internal RC time base 15kHz ± 30%
Fm: main-oscillator clock
Bit 5 (CPUS):
CPU Oscillator Source Select
0 : sub-oscillator (fs)
1 : main oscillator (fosc)
When CPUS=0, the CPU oscillator select sub-oscillator and the
main oscillator is stopped.
Bit 4 (IDLE):
Idle Mode Enable Bit. From SLEP instruction, this bit will determine
as to which mode to go.
0 : Idle=”0”+SLEP instruction → sleep mode
1 : Idle=”1”+SLEP instruction → idle mode
CPU Operation Mode
RESET
Normal Mode
fosc:oscillation
fs: oscillation
Wake up
wake up
CPU: using fosc
IDLE="0"
+SLEP
SLEEP Mode
Wake up
fosc:stop
fs: stop
CPU: stop
CPUS="0"
CPUS="1"
Green Mode
IDLE="1"
+SLEP
IDLE="1
"+SLEP
fosc:stop
fs: oscillation
IDLE="0"
+ SLEP
CPU: using fs
IDLE Mode
fosc:stop
fs: oscillation
wake up
CPU: stop
Figure 6-2 CPU Operation Mode
Bits 3 ~ 0:
26 •
These bits must set to “0” all the time.
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
EM78P142
8-Bit Microprocessor with OTP ROM
6.2.22 IOCF1 (Pull-high Control Register)
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
/PH67
“1”
“1”
“1”
“1”
“1”
“1”
“1”
Note: The IOCD0 register is both readable and writable.
Bit 7 (/PH67): Control bit is used to enable the pull-high function of the P67 pin.
0 = Enable internal pull-high
1 = Disable internal pull-high
Bit 6 ~ 0:
These bits must set to “1” all the time.
6.3 TCC/WDT and Prescaler
There are two 8-bit timers available as prescalers that can be extended to 16-bit timer
for the TCC and WDT respectively. The PST2 ~ PST0 bits of the CONT register are
used to determine the ratio of the TCC prescaler, and the PSW2 ~ PSW0 bits of the
IOCE0 register are used to determine the prescaler of WDT. The prescaler timer is
cleared by the instructions each time such instructions are written into TCC. The WDT
and prescaler will be cleared by the “WDTC” and “SLEP” instructions. Figure 6-3
depicts the block diagram of TCC/WDT.
TCC (R1) is an 8-bit timer. The TCC clock source can be internal clock (Fosc).
NOTE
The internal TCC will stop running when in sleep mode. However, during AD
conversion, when TCC is set to “SLEP” instruction, if the ADWE bit of the RE register is
enabled, the TCC will keep on running.
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 in 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
through software programming. Refer to WDTE bit of IOCE0 register (Section 6.2.10
IOCE0 (WDT Control and Interrupt Mask Registers 2). With no prescaler, the WDT
1
2
time-out period is approximately 18ms or 4.5ms .
1
VDD=5V, WDT time-out period = 16.5ms ± 30%
VDD=3V, WDT time-out period = 18ms ± 30%
2
VDD=5V, WDT time-out period = 4.2ms ± 30%
VDD=3V, WDT time-out period = 4.5ms ± 30%
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
• 27
EM78P142
8-Bit Microprocessor with OTP ROM
Fosc/2
0
TCC Pin
1
8-Bit Counter (IOCC1)
Data Bus
MUX
8 to 1 MUX
TE (CONT)
TCC (R1)
Prescaler
TS (CONT)
WDT
TCC overflow
interrupt
PST2~0
(CONT)
8-Bit counter
8 to 1 MUX
Prescaler
WDTE
(IOCE0)
PSW2~0
(IOCE0)
WDT Time out
Figure 6-3 TCC and WDT Block Diagram
6.4 I/O Ports
The I/O registers (Port 5, Port 6, and Port 7) are bidirectional tri-state I/O ports. Port 5
is pulled-high and pulled-down internally by software. Likewise, P6 has its open-drain
output set through software. Port 5 features an input status changed interrupt (or
wake-up) function. Each I/O pin can be defined as "input" or "output" pin by the I/O
control register (IOC5 ~ IOC7). The I/O registers and I/O control registers are both
readable and writable. The I/O interface circuits for Port 5, Port 6, and Port 7 are
illustrated in Figures 6-4, 6-5, and 6-6.
28 •
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
EM78P142
8-Bit Microprocessor with OTP ROM
PCRD
P
R
Q
_
PORT
D
C LK
Q
PCW R
C
L
P
R
Q
IO D
D
C LK
_
PDW R
C
L
Q
PDRD
0
1
M
U
X
Note: Pull-high and Open-drain are not shown in the figure.
Figure 6-4 I/O Port and I/O Control Register Circuit for Port 6 and Port 7
PCRD
Q
_
Q
P
R
D
CLK
PCWR
C
L
P50 ~ P57
Q
PORT
_
Q
0
1
P
R
IOD
D
CLK
PDWR
C
L
M
U
X
PDRD
TI n
D
P
R
CLK
C
L
Q
_
Q
Note: Pull-high (down) and Open-drain are not shown in the figure.
Figure 6-5 I/O Port and I/O Control Register Circuit for Ports 50~57
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
• 29
EM78P142
8-Bit Microprocessor with OTP ROM
I O C F.1
R F.1
TI 0
TI 1
….
TI 8
Figure. 6-6 Port 5 Block Diagram with Input Change Interrupt/Wake-up
6.4.1 Usage of Port 5 Input Change Wake-up/Interrupt Function
(1) Wake-up
(2) Wake-up and Interrupt
(a) Before Sleep
(a) Before Sleep
1. Disable WDT
1. Disable WDT
2. Read I/O Port 5 (MOV R5, R5)
2. Read I/O Port 5 (MOV R5, R5)
3. Execute "ENI" or "DISI"
3. Execute "ENI" or "DISI"
4. Enable wake-up bit (Set RE ICWE =1)
4. Enable wake-up bit (Set RE
ICWE =1)
5. Execute "SLEP" instruction
5. Enable interrupt (Set IOCF ICIE =1)
(b) After wake-up
6. Execute "SLEP" instruction
→ Next instruction
(b) After wake-up
1. IF "ENI" → Interrupt vector (008H)
2. IF "DISI" → Next instruction
(3) Interrupt
(a) Before Port 5 pin change
1. Read I/O Port 5 (MOV R5,R5)
2. Execute "ENI" or "DISI"
3. Enable interrupt (Set IOCF ICIE =1)
(b) After Port 5 pin changed (interrupt)
1. IF "ENI" → Interrupt vector (006H)
2. IF "DISI" → Next instruction
30 •
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
EM78P142
8-Bit Microprocessor with OTP ROM
6.5 Reset and Wake-up
6.5.1 Reset and Wake-up Operation
A reset is initiated by one of the following events:
1. Power-on reset
2. /RESET pin input "low"
3. WDT time-out (if enabled)
3
The device is kept in reset condition for a period of approximately 18ms (except in LXT
mode) after the reset is detected. When in LXT2 mode, the reset time is 500 ms. Two
3
4
choices (18 ms or 4.5 ms ) are available for WDT-time out period. Once a reset occurs,
the following functions are performed (the initial Address is 000h):
„
The oscillator continues running, or will be started (if in sleep mode).
„
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 three bits of R3 is cleared
„
The IOCB0 register bits are set to all "1"
„
The IOCC0 register bits are set to all "1"
„
The IOCD0 register bits are set to all "1"
„
Bits 7, 5, and 4 of the IOCE0 register are cleared
„
Bits 5 and 4 of the RE register are cleared
„
RF and IOCF0 registers are cleared
Executing the “SLEP” instruction will assert the sleep (power down) mode (When
IDLE=”0”.). While entering into sleep mode, the Oscillator, TCC, TCCA, TCCB, and
TCCC are stopped. The WDT (if enabled) is cleared but keeps on running.
During AD conversion, when “SLEP” instruction is set; the Oscillator, TCC, TCCA,
TCCB, and TCCC keep on running. The WDT (if enabled) is cleared but keeps on
running.
The controller can be awakened by:
Case 1
External reset input on /RESET pin
Case 2
WDT time-out (if enabled)
Case 3
Port 5 input status changes (if ICWE is enabled)
3
VDD=5V, Setup time period = 16.5ms ± 30%.
VDD=3V, Setup time period = 18ms ± 30%.
4
VDD=5V, Setup time period = 4.2ms ± 30%.
VDD=3V, Setup time period = 4.5ms ± 30%.
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
• 31
EM78P142
8-Bit Microprocessor with OTP ROM
Case 4
AD conversion completed (if ADWE is enabled)
Case 5
Low Voltage Detector (if LVDWE is enabled)
The first two cases (1 and 2) will cause the EM78P142 to reset. The T and P flags of
R3 can be used to determine the source of the reset (wake-up). Cases 3, 4, and 5 are
considered the continuation of program execution and the global interrupt ("ENI" or
"DISI" being executed) determines 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 Address 0x06 (Case 3), 0x0C (Case 4), and 0x21 (Case 5) after
wake-up. If DISI is executed before SLEP, the execution will restart from the instruction
next to SLEP after wake-up.
Only one of Cases 2 to 5 can be enabled before entering into sleep mode. That is:
Case [a] If WDT is enabled before SLEP, all of the RE bit is disabled. Hence, the
EM78P142 can be awakened only with Case 1 or Case 2. Refer to the
section on Interrupt (Section 6.6) for further details.
Case [b] If Port 5 Input Status Change is used to wake up the EM78P142 and the
ICWE bit of the RE register is enabled before SLEP, and WDT must be
disabled. Hence, the EM78P142 can be awakened only with Case 3.
Wake-up time is dependent on the oscillator mode. In RC mode, Wake-up
time is 10µs (for stable oscillators). In HXT2 (4 MHz) mode, Wake-up time is
800 µs (for stable oscillators), and in LXT2 mode, Wake-up time is 2s ~ 3s.
Case [c] If AD conversion completed is used to wake-up the EM78P142 and ADWE bit
of RE register is enabled before SLEP, WDT must be disabled by software.
Hence, the EM78P142 can be awakened only with Case 4. The wake-up
time is 15 TAD (ADC clock period).
Case[d] If Low voltage detector is used to wake-up the EM78P142 and the LVDWE bit
of Bank 0-RE register is enabled before SLEP, WDT must be disabled by
software. Hence, the EM78P142 can be awakened only with Case 5.
Wake-up time is dependent on the oscillator mode.
If Port 5 Input Status Change Interrupt is used to wake up the EM78P142 (as in Case
[b] above), the following instructions must be executed before SLEP:
BC
MOV
IOW
WDTC
MOV
ENI (or DISI)
MOV
MOV
MOV
IOW
SLEP
32 •
R3, 6
A, @00xx1110b
IOCE0
R5, R5
A, @xxxxxx1xb
RE
A, @xxxxxx1xb
IOCF0
; Select Segment 0
; Select WDT prescaler and Disable WDT
;
;
;
;
Clear WDT and prescaler
Read Port 5
Enable (or disable) global interrupt
Enable Port 5 input change wake-up bit
; Enable Port 5 input change interrupt
; Sleep
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
EM78P142
8-Bit Microprocessor with OTP ROM
6.5.1.1
Wake-up and Interrupt Modes Operation Summary
The controller can be awakened from sleep mode and idle mode. The wake-up signals are listed as
follows.
Wake-up
Signal
Sleep Mode
Idle Mode
If enable ICWE bit
Wake-up + interrupt
(if interrupt is enabled)
+ next instruction
Wake-up + interrupt
TCC overflow
x
(if interrupt is enabled)
interrupt
+ next instruction
If enable ADWE bit
If enable ADWE bit
AD
Wake-up + interrupt
Wake-up + interrupt
conversion
(if interrupt is enabled) (if interrupt is enabled)
complete
+ next instruction
+ next instruction
interrupt
Fs and Fm don’t stop Fs and Fm don’t stop
High-pulse
Wake-up + interrupt
width timer
x
(if interrupt is enabled)
underflow
+ next instruction
interrupt
Low-pulse
Wake-up + interrupt
width timer
x
(if interrupt is enabled)
underflow
+ next instruction
interrupt
Wake-up + interrupt
TCCA
x
(if interrupt is enabled)
overflow
+ next instruction
interrupt
TCCB
Wake-up + interrupt
x
(if interrupt is enabled)
overflow
interrupt
+ next instruction
TCCC
Wake-up + interrupt
x
overflow
(if interrupt is enabled)
interrupt
+ next instruction
If Enable LVDWE bit
If Enable LVDWE bit
Low Voltage
Wake-up + interrupt
Wake-up + interrupt
Detector
(if interrupt is enabled) (if interrupt is enabled)
interrupt
+ next instruction
+ next instruction
WDT
Time out
Low Voltage
Reset
Port 5 pin
change
If enable ICWE bit
Wake-up + interrupt
(if interrupt is enabled)
+ next instruction
Green Mode
Normal Mode
Interrupt
(if interrupt is enabled)
or next instruction
Interrupt
(if interrupt is enabled)
or next instruction
Interrupt
(if interrupt is enabled)
or next instruction
Interrupt
(if interrupt is enabled)
or next instruction
Interrupt
×
(if interrupt is enabled)
Fs and Fm don’t stop
or next instruction
Interrupt
(if interrupt is enabled)
or next instruction
Interrupt
(if interrupt is enabled)
or next instruction
Interrupt
(if interrupt is enabled)
or next instruction
Interrupt
(if interrupt is enabled)
or next instruction
Interrupt
(if interrupt is enabled)
or next instruction
Interrupt
(if interrupt is enabled)
or next instruction
Interrupt
(if interrupt is enabled)
or next instruction
Interrupt
(if interrupt is enabled)
or next instruction
Interrupt
(if interrupt is enabled)
or next instruction
Interrupt
(if interrupt is enabled)
or next instruction
Interrupt
(if interrupt is enabled)
or next instruction
Interrupt
(if interrupt is enabled)
or next instruction
Reset
Reset
Reset
Reset
After wake up:
1. If interrupt is enabled → interrupt+ next instruction
2. If interrupt is disabled → next instruction
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
• 33
EM78P142
8-Bit Microprocessor with OTP ROM
Signal
Port 5 Input
Status
Change
TCC
Overflow
34 •
Sleep Mode
Idle Mode*
Normal Mode
Green Mode
RE (ICWE) Bit 1=0,
IOCF0 (ICIE) Bit 1=0
RE (ICWE) Bit 1=0, IOCF0
(ICIE) Bit 1=0
IOCF0 (ICIE) Bit 1=0
Oscillator, TCC, TCCX
and IR/PWM are
stopped.
Port 5 input status
changed wake-up is
invalid.
TCC, TCCX and IR/PWM
keep on running.
Port5 input status changed
wake-up is invalid.
Port 5 input status
Port 5 input status change
change interrupted is
interrupted is invalid
invalid
RE (ICWE) Bit 1=0,
IOCF0 (ICIE) Bit 1=1
RE (ICWE) Bit 1=0, IOCF0
(ICIE) Bit 1=1
NA
NA
Set RF (ICIF)=1,
Oscillator, TCC, TCCX
and IR/PWM are
stopped.
Port 5 input status
changed wake-up is
invalid.
Set RF (ICIF)=1,
TCC, TCCX and IR/PWM
keep on running.
Port5 input status changed
wake-up is invalid.
NA
NA
RE (ICWE) Bit 1=1,
IOCF0 (ICIE) Bit 1=0
RE (ICWE) Bit 1=1, IOCF0
(ICIE) Bit1=0
NA
NA
Wake-up + Next
Instruction
Oscillator, TCC, TCCX
and IR/PWM are
stopped.
Wake-up + Next Instruction
TCC, TCCX and IR/PWM
keep on running.
NA
NA
RE (ICWE) Bit1=1, DISI
+ IOCF0 (ICIE) Bit 1=1
RE (ICWE) Bit 1=1, DISI +
IOCF0 (ICIE) Bit 1=1
DISI + IOCF0 (ICIE)
Bit 1=1
DISI + IOCF0 (ICIE)
Bit 1=1
Wake-up + Next
Instruction + Set RF
(ICIF)=1
Oscillator, TCC, TCCX
and IR/PWM are
stopped.
Wake-up + Next Instruction
+ Set RF (ICIF)=1
TCC, TCCX and IR/PWM
keep on running.
Next Instruction
+ Set RF (ICIF)=1
Next Instruction
+ Set RF (ICIF)=1
RE (ICWE) Bit 1=1, ENI
+ IOCF0 (ICIE) Bit 1=1
RE (ICWE) Bit 1=1, ENI +
IOCF0 (ICIE) Bit 1=1
ENI + IOCF0 (ICIE)
Bit 1=1
ENI + IOCF0 (ICIE)
Bit 1=1
Wake-up + Interrupt
Vector (006H) + Set RF
(ICIF)=1
Oscillator, TCC, TCCX
and IR/PWM are
stopped.
Wake-up + Interrupt Vector
(006H) + Set RF (ICIF)=1
TCC, TCCX and IR/PWM
keep on running.
Interrupt Vector(006H)
+ Set RF (ICIF)=1
Interrupt Vector(006H)
+ Set RF (ICIF)=1
DISI+IOCF0(TCIE) Bit 0 =1
DISI + IOCF0 (TCIE)
Bit 0=1
DISI + IOCF0 (TCIE)
Bit 0=1
Wake-up + next instruction
Set RF (TCIF)=1
Next Instruction + Set RF
(TCIF)=1
Next Instruction + Set
RF (TCIF)=1
ENI + IOCF0(TCIE)
Bit 0 =1
ENI + IOCF0 (TCIE)
Bit 0=1
ENI + IOCF0 (TCIE)
Bit 0=1
Wake-up + Interrupt Vector
(009H) + Set RF (TCIF)=1
Interrupt Vector (009H) +
Set RF (TCIF)=1
Interrupt Vector (009H)
+ Set RF (TCIF)=1
NA
IOCF0 (ICIE) Bit 1=0
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
EM78P142
8-Bit Microprocessor with OTP ROM
Signal
Sleep Mode
RE (ADWE) Bit 3=0,
IOCE0 (ADIE) Bit 5=0
Clear R9 (ADRUN)=0,
ADC is stopped,
AD conversion wake-up
is invalid.
Oscillator, TCC, TCCX
and IR/PWM are
stopped.
RE (ADWE) Bit 3=0,
IOCE0 (ADIE) Bit 5=1
Set RF (ADIF)=1, R9
(ADRUN)=0, ADC is
stopped,
AD conversion wake-up
is invalid.
Oscillator, TCC, TCCX
and IR/PWM are
stopped.
AD
Conversion
Idle Mode*
RE (ADWE) Bit 3=0, IOCE0
(ADIE) Bit 5=0
AD conversion wake-up is
invalid.
RE (ADWE) Bit 3=0, IOCE0
(ADIE) Bit 5=1
AD conversion wake-up is
invalid.
Oscillator, TCC, TCCX
and IR/PWM keep on
running.
Wake-up when ADC
completed.
Oscillator, TCC, TCCX and
IR/PWM keep on running.
Oscillator, TCC, TCCX
and IR/PWM keep on
running.
Wake-up when ADC
completed.
NA
NA
NA
NA
NA
NA
NA
Wake-up when ADC
completed.
RE (ADWE) Bit 3=1, DISI +
IOCE0 (ADIE) Bit 5=1
DISI + IOCE0 (ADIE)
Bit 5=1
DISI + IOCE0 (ADIE)
Bit 5=1
Next Instruction
Next Instruction
+ RE (ADIF)=1
+ RE (ADIF)=1
ENI + IOCE0 (ADIE)
Bit 5=1
ENI + IOCE0 (ADIE)
Bit 5=1
Interrupt Vector (00CH)
Interrupt Vector (00CH)
+ Set RE (ADIF)=1
+ Set RE (ADIF)=1
Wake-up + Next Instruction
+ RE (ADIF)=1,
Oscillator, TCC, TCCX and
IR/PWM keep on running.
Wake-up when ADC
completed.
RE (ADWE) Bit 3=1, ENI RE (ADWE) Bit 3=1, ENI +
+ IOCE0 (ADIE) Bit 5=1 IOCE0 (ADIE) Bit 5=1
Wake-up + Interrupt
Vector (00CH)+ RE
(ADIF)=1,
NA
Oscillator, TCC, TCCX and
IR/PWM keep on running.
Wake-up + Next Instruction,
Wake-up + Next
Instruction + RE
(ADIF)=1,
AD conversion interrupted AD conversion
is invalid
interrupted is invalid
Set RF (ADIF)=1, R9
(ADRUN)=0, ADC is
stopped,
Wake-up + Next
Instruction,
RE (ADWE) Bit 3=1,
DISI + IOCE0 (ADIE)
Bit 5=1
IOCE0 (ADIE) Bit 5=0
Oscillator, TCC, TCCX and
IR/PWM keep on running.
RE (ADWE) Bit 3=1, IOCE0
(ADIE) Bit 5=0
Wake-up when ADC
completed.
IOCE0 (ADIE) Bit 5=0
Green Mode
Clear R9 (ADRUN)=0, ADC
is stopped,
RE (ADWE) Bit 3=1,
IOCE0 (ADIE) Bit 5=0
Oscillator, TCC, TCCX
and IR/PWM keep on
running.
Normal Mode
Wake-up + Interrupt Vector
(00CH)+ RE (ADIF)=1,
Oscillator, TCC, TCCX and
IR/PWM keep on running.
Wake-up when ADC
completed.
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
• 35
EM78P142
8-Bit Microprocessor with OTP ROM
Signal
Sleep Mode
IR/PWM
underflow
interrupt
(High-pulse
width timer
underflow
interrupt)
IR/PWM
underflow
interrupt
(Low-pulse
width timer
underflow
interrupt)
NA
NA
Idle Mode*
Normal Mode
Green Mode
DISI + IOCF0 (HPWTIE)
Bit 6=1
DISI + IOCF0 (HPWTIE)
Bit 6=1
DISI + IOCF0 (HPWTIE)
Bit 6=1
Wake-up +Next Instruction
+ Set RF (HPWTIF)=1
Next Instruction
+ Set RF (HPWTIF)=1
Next Instruction
+ Set RF (HPWTIF)=1
ENI
+ IOCF0 (HPWTIE) Bit 6 =1
ENI
+ IOCF0 (HPWTIE)
Bit 6 =1
ENI
+ IOCF0 (HPWTIE)
Bit 6 =1
Wake-up +Interrupt Vector
(012H)
+ Set RF (HPWTIF)=1
Interrupt Vector (012H)
+ Set RF (HPWTIF)=1
Interrupt Vector (012H)
+ Set RF (HPWTIF)=1
DISI + IOCF0 (LPWTIE)
Bit 7=1
DISI + IOCF0 (LPWTIE)
Bit 7=1
DISI + IOCF0 (LPWTIE)
Bit 7=1
Wake-up +Next Instruction
Next Instruction
Next Instruction
+ Set RF (LPWTIF)=1
+ Set RF (LPWTIF)=1
+ Set RF (LPWTIF)=1
ENI + IOCF0 (LPWTIE)
Bit 7 =1
ENI + IOCF0 (LPWTIE)
Bit 7 =1
ENI + IOCF0 (LPWTIE)
Bit 7 =1
Wake-up +Interrupt Vector
(015H)
Interrupt Vector (015H)
Interrupt Vector (015H)
+ Set RF (LPWTIF)=1
+ Set RF (LPWTIF)=1
DISI + IOCF0 (TCCAIE)
Bit 3=1
DISI + IOCF0 (TCCAIE)
Bit 3=1
DISI + IOCF0 (TCCAIE)
Bit 3=1
Wake-up +Next Instruction
Next Instruction
Next Instruction
+ Set RF (TCCAIF)=1
+ Set RF (TCCAIF)=1
+ Set RF (TCCAIF)=1
ENI + IOCF0 (TCCAIE)
Bit 3=1
ENI + IOCF0 (TCCAIE)
Bit 3=1
ENI + IOCF0 (TCCAIE)
Bit 3=1
Wake-up +Interrupt Vector
(018H)
Interrupt Vector (018H)
Interrupt Vector (018H)
+ Set RF (TCCAIF)=1
+ Set RF (TCCAIF)=1
DISI + IOCF0 (TCCBIE)
Bit 4=1
DISI + IOCF0 (TCCBIE)
Bit 4=1
DISI + IOCF0 (TCCBIE)
Bit 4=1
Wake-up +Next Instruction
Next Instruction
Next Instruction
+ Set RF (TCCBIF)=1
+ Set RF (TCCBIF)=1
+ Set RF (TCCBIF)=1
ENI + IOCF0 (TCCBIE)
Bit 4=1
ENI + IOCF0 (TCCBIE)
Bit 4=1
ENI + IOCF0 (TCCBIE)
Bit 4=1
Interrupt Vector (01BH)
Wake-up +Interrupt Vector
(01BH) + Set RF(TCCBIF)=1 + Set RF (TCCBIF)=1
Interrupt Vector (01BH)
DISI + IOCF0 (TCCCIE)
Bit 5=1
DISI + IOCF0 (TCCCIE)
Bit 5=1
DISI + IOCF0 (TCCCIE)
Bit 5=1
Wake-up +Next Instruction
Next Instruction
Next Instruction
+ Set RF (TCCCIF)=1
+ Set RF (TCCCIF)=1
+ Set RF (TCCCIF)=1
ENI + IOCF0 (TCCCIE)
Bit 5=1
ENI + IOCF0 (TCCCIE)
Bit 5=1
ENI + IOCF0 (TCCCIE)
Bit 5=1
Interrupt Vector (01EH)
Interrupt Vector (01EH)
+ Set RF (TCCCIF)=1
+ Set RF (TCCCIF)=1
+ Set RF (LPWTIF)=1
TCCA Over
Flow
NA
+ Set RF (TCCAIF)=1
TCCB Over
Flow
TCCC Over
Flow
NA
NA
Wake-up +Interrupt Vector
(01EH) + Set RF
(TCCCIF)=1
36 •
+ Set RF (TCCBIF)=1
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
EM78P142
8-Bit Microprocessor with OTP ROM
Signal
Sleep Mode
RE (LVDWE) Bit 0=0,
IOCD1 (LVDIE) Bit 3=0
Low voltage detector
wake-up is invalid.
Oscillator, TCC, TCCX
and IR/PWM are
stopped.
RE (LVDWE) Bit 0=0,
IOCD1 (LVDIE) Bit 3=1
Set RE (LVDIF)=1,
Low voltage detector
wake-up is invalid.
Oscillator, TCC, TCCX
and IR/PWM are
stopped.
RE (LVDWE) Bit 0=1,
IOCD1 (LVDIE) Bit 3=0
Idle Mode*
Normal Mode
RE (LVDWE) Bit 0=0, IOCD1
IOCD1 (LVDIE) Bit 3=0
(LVDIE) Bit 3=0
Low voltage detector
wake-up is invalid.
TCC, TCCX and IR/PWM
keep on running.
RE (LVDWE) Bit 0=0, IOCD1
(LVDIE) Bit 3=1
Low voltage detector
interrupted is invalid.
Green Mode
IOCD1 (LVDIE) Bit 3=0
Low voltage detector
interrupted is invalid.
NA
NA
NA
NA
NA
NA
NA
NA
Set RE (LVDIF)=1,
Low voltage detector
wake-up is invalid.
TCC, TCCX and IR/PWM
keep on running.
RE (LVDWE) Bit 0=1, IOCD1
(LVDIE) Bit 3=0
Wake-up + Next
Low Voltage Instruction,
Detector
Oscillator, TCC, TCCX
interrupt
and IR/PWM are
Wake-up + Next Instruction,
TCC, TCCX and IR/PWM
keep on running.
stopped.
RE (LVDWE) Bit =1,
DISI + IOCD1 (LVDIE)
Bit 3=1
Wake-up + Next
Instruction + Set RE
(LVDIF)=1,
Oscillator, TCC, TCCX
and IR/PWM are
stopped.
RE (LVDWE) Bit 2=1,
ENI + IOCD1 (LVDIE)
Bit 3=1
RE (LVDWE) Bit 0=1, DISI + DISI + IOCD1 (LVDIE)
IOCD1 (LVDIE) Bit 3=1
Bit 3=1
DISI + IOCD1 (LVDIE)
Bit 3=1
Wake-up + Next Instruction
+ Set RE (LVDIF)=1,
Next Instruction
Next Instruction
TCC, TCCX and IR/PWM
keep on running.
+ Set RE (LVDIF)=1
+ Set RE (LVDIF)=1
RE (LVDWE) Bit0=1, ENI +
IOCD1 (LVDIE) Bit 3=1
ENI + IOCD1 (LVDIE)
Bit 3=1
ENI + IOCD1 (LVDIE)
Bit 3=1
Wake-up + Interrupt
Wake-up + Interrupt Vector
Vector (021H) + Set RE
(021H) + Set RE (LVDIF)=1, Interrupt Vector (021H)
(LVDIF)=1,Oscillator,
TCC, TCCX and IR/PWM
+ Set RE (LVDIF)=1
TCC, TCCX and
keep on running.
IR/PWM are stopped.
WDT
Timeout
Wake-up + Reset
IOCE (WDTE) (Address 0x00)
Bit 7=1
Wake-up + Reset
Low voltage
reset
Wake-up + Reset
Wake-up + Reset
(Address 0x00)
(Address 0x00)
(Address 0x00)
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
Reset (Address 0x00)
Reset (Address 0x00)
Interrupt Vector (021H)
+ Set RE (LVDIF)=1
Reset (Address 0x00)
Reset (Address 0x00)
• 37
EM78P142
8-Bit Microprocessor with OTP ROM
6.5.1.2
Register Initial Values after Reset
The following summarizes the initialized values for registers.
Address
Name
Reset Type
Bit Name
NA
IOC50
NA
NA
IOC60
IOC70
IOC80
IOC90
NA
38 •
IOCA0
(IRCR)
IOCB0
(PDCR)
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
–
–
C55
–
C53
C52
C51
C50
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
/RESET and WDT
P
P
P
P
P
P
P
P
Wake-up from Pin
Change
1
1
1
1
1
1
1
1
C67
–
–
–
–
–
–
–
Type
1
1
1
1
1
1
1
1
Power-on
1
1
1
1
1
1
1
1
/RESET and WDT
P
P
P
P
P
P
P
P
Wake-up from Pin
Change
1
1
1
1
1
1
1
1
Bit Name
×
×
×
×
×
×
C71
C70
Power-on
0
0
0
0
0
0
1
1
/RESET and WDT
0
0
0
0
0
0
1
1
Wake-up from Pin
Change
P
P
P
P
P
P
P
P
Bit Name
×
×
–
–
–
TCCAEN
–
–
Power-on
0
0
0
0
0
0
0
0
/RESET and WDT
0
0
0
0
0
0
0
0
Wake-up from Pin
Change
P
P
P
P
P
P
P
P
–
–
×
TCCCEN
–
–
TCCBHE TCCBEN
Power-on
0
0
0
0
0
0
0
0
/RESET and WDT
0
0
0
0
0
0
0
0
Wake-up from Pin
Change
P
P
P
P
P
P
P
P
IRE
HF
LGP
IROUTE
Bit Name
NA
Bit 5
Power-on
Bit Name
NA
Bit 6
Type
Bit Name
NA
Bit 7
TCCCSE TCCCS2 TCCCS1 TCCCS0
Power-on
0
0
0
0
0
0
0
0
/RESET and WDT
0
0
0
0
0
0
0
0
Wake-up from Pin
Change
P
P
P
P
P
P
P
P
Bit Name
–
–
/PD55
–
/PD53
/PD52
/PD51
/PD50
Power-on
1
1
1
1
1
1
1
1
/RESET and WDT
1
1
1
1
1
1
1
1
Wake-up from Pin
Change
P
P
P
P
P
P
P
P
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
EM78P142
8-Bit Microprocessor with OTP ROM
Address
NA
NA
NA
Name
IOCC0
(ODCR)
IOCD0
(PHCR1)
IOCE0
Reset Type
NA
NA
IOCF0
IOC51
(TCCA)
IOC61
(TCCB)
NA
NA
IOC71
(TCCBH)
IOC81
(TCCC)
IOC91
(LTR)
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
/OD67
–
–
–
–
–
–
–
Power-on
1
1
1
1
1
1
1
1
/RESET and WDT
1
1
1
1
1
1
1
1
Wake-up from Pin
Change
P
P
P
P
P
P
P
P
Bit Name
–
–
/PH55
–
/PH53
/PH52
/PH51
/PH50
Power-on
1
1
1
1
1
1
1
1
/RESET and WDT
1
1
1
1
1
1
1
1
Wake-up from Pin
Change
P
P
P
P
P
P
P
P
Bit Name
WDTC
–
ADIE
–
PSWE
PSW2
PSW1
PSW0
Power-on
0
0
0
0
0
0
0
0
/RESET and WDT
0
0
0
0
0
0
0
0
Wake-up from Pin
Change
P
P
P
P
P
P
P
P
–
ICIE
TCIE
LPWTIE HPWTIE TCCCIE TCCBIE TCCAIE
Power-on
0
0
0
0
0
0
0
0
/RESET and WDT
0
0
0
0
0
0
0
0
Wake-up from Pin
Change
P
P
P
P
P
P
P
P
Bit Name
TCCA7
TCCA6
TCCA5
TCCA4
TCCA3
TCCA2
TCCA1
TCCA0
Power-on
0
0
0
0
0
0
0
0
/RESET and WDT
0
0
0
0
0
0
0
0
Wake-up from Pin
Change
P
P
P
P
P
P
P
P
Bit Name
TCCB7
TCCB6
TCCB5
TCCB4
TCCB3
TCCB2
TCCB1
TCCB0
Power-on
0
0
0
0
0
0
0
0
/RESET and WDT
0
0
0
0
0
0
0
0
Wake-up from Pin
Change
P
P
P
P
P
P
P
P
Bit Name
NA
Bit 6
Bit Name
Bit Name
NA
Bit 7
TCCBH7 TCCBH6 TCCBH5 TCCBH4 TCCBH3 TCCBH2 TCCBH1 TCCBH0
Power-on
0
0
0
0
0
0
0
0
/RESET and WDT
0
0
0
0
0
0
0
0
Wake-up from Pin
Change
P
P
P
P
P
P
P
P
Bit Name
TCCC7
TCCC6
TCCC5
TCCC4
TCCC3
TCCC2
TCCC1
TCCC0
Power-on
0
0
0
0
0
0
0
0
/RESET and WDT
0
0
0
0
0
0
0
0
Wake-up from Pin
Change
P
P
P
P
P
P
P
P
Bit Name
LTR7
LTR6
LTR5
LTR4
LTR3
LTR2
LTR1
LTR0
Power-on
0
0
0
0
0
0
0
0
/RESET and WDT
0
0
0
0
0
0
0
0
Wake-p from Pin
Change
P
P
P
P
P
P
P
P
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
• 39
EM78P142
8-Bit Microprocessor with OTP ROM
Address
NA
NA
Name
IOCA1
(HTR)
IOCB1
(HLTS)
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
Bit Name
Reset Type
HTR7
HTR6
HTR5
HTR4
HTR3
HTR2
HTR1
HTR0
Power-on
0
0
0
0
0
0
0
0
/RESET and WDT
0
0
0
0
0
0
0
0
Wake-up from Pin
Change
P
P
P
P
P
P
P
P
Bit Name
HTSE
HTS2
HTS1
HTS0
LTSE
LTS2
LTS1
LTS0
Power-on
0
0
0
0
0
0
0
0
/RESET and WDT
0
0
0
0
0
0
0
0
Wake-up from Pin
Change
P
P
P
P
P
P
P
P
Bit Name
NA
IOCC1
(TCCPC)
0
0
0
0
0
0
0
0
/RESET and WDT
0
0
0
0
0
0
0
0
Wake-up from Pin
Change
P
P
P
P
P
P
P
P
TYPE1
TYPE0
LVR1
LVR0
LVDIE
LVDEN
LVD1
LVD0
Bit Name
NA
Power-on
IOCD1
(LVD CR)
/RESET and WDT
(ROMLESS)
Wake-up from Pin
Change
HS1
NA
NA
NA
0x00
0x01
40 •
CONT
R0 (IAR)
R1 (TCC)
1
1
1
1
0
0
1
1
P
P
P
P
0
P
1
1
P
P
P
P
P
P
P
P
IDLE
–
–
–
–
1
1
1
1
0
0
0
0
P
1
1
1
0
0
0
0
P
P
P
P
P
P
P
P
Bit Name
/PH67
–
–
–
–
–
–
–
Power-on
1
1
1
1
1
1
1
1
/RESET and WDT
1
1
1
1
1
1
1
1
Wake-up from Pin
Change
P
P
P
P
P
P
P
P
Bit Name
–
INT
–
–
PSTE
PST2
PST1
PST0
Power-on
1
0
1
1
0
0
0
0
/RESET and WDT
1
0
1
1
0
0
0
0
Wake-up from Pin
Change
P
P
P
P
P
P
P
P
Bit Name
–
–
–
–
–
–
–
–
Power-on
U
U
U
U
U
U
U
U
/RESET and WDT
P
P
P
P
P
P
P
P
Wake-up from Pin
Change
P
P
P
P
P
P
P
P
Bit Name
–
–
–
–
–
–
–
–
Power-on
0
0
0
0
0
0
0
0
/RESET and WDT
0
0
0
0
0
0
00
0
Wake-up from Pin
Change
P
P
P
P
P
P
P
P
Power-on
IOCE1
(HSC)
/RESET and WDT
(ROMLESS)
Wake-up from Pin
Change
IOCF1
(PHCR2)
TCCPC7 TCCPC6 TCCPC5 TCCPC4 TCCPC3 TCCPC2 TCCPC1 TCCPC0
Power-on
WDPTS TIMERSC CPUS
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
EM78P142
8-Bit Microprocessor with OTP ROM
Address
0x02
Name
R2 (PC)
Reset Type
Bit 7
0x04
0x05
0x06
0x7
0x8
0x9
0xA
R3 (SR)
R4 (RSR)
R5
R6
R7
R8
(AISR)
R9
(ADCON)
RA
(ADOC)
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
Bit Name
–
–
–
–
–
–
–
–
Power-on
0
0
0
0
0
0
0
0
/RESET and WDT
0
0
0
0
0
0
0
0
Wake-up from Pin
Change
0x03
Bit 6
Jump to Address 0x06 or continue to execute next instruction
Bit Name
RST
IOCS
–
T
P
Z
DC
C
Power-on
0
0
0
1
1
U
U
U
/RESET and WDT
0
0
0
T
t
P
P
P
Wake-up from Pin
Change
P
P
P
T
t
P
P
P
Bit Name
×
BS
–
–
–
–
–
–
Power-on
0
0
U
U
U
U
U
U
/RESET and WDT
0
0
P
P
P
P
P
P
Wake-up from Pin
Change
0
P
P
P
P
P
P
P
Bit Name
–
–
P55
–
P53
P52
P51
P50
Power-on
1
1
1
1
1
1
1
1
/RESET and WDT
1
1
1
1
1
1
1
1
Wake-up from Pin
Change
P
P
P
P
P
P
P
P
Bit Name
P67
–
–
–
–
–
–
–
Power-on
1
1
1
1
1
1
1
1
/RESET and WDT
1
1
1
1
1
1
1
1
Wake-up from Pin
Change
P
P
P
P
P
P
P
P
Bit Name
–
–
–
–
–
–
P71
P70
Power-on
0
0
0
0
0
0
1
1
/RESET and WDT
0
0
0
0
0
0
1
1
Wake-up from Pin
Change
P
P
P
P
P
P
P
P
Bit Name
–
ADE6
ADE5
ADE4
ADE3
ADE2
ADE1
ADE0
Power-on
0
0
0
0
0
0
0
0
/RESET and WDT
0
0
0
0
0
0
0
0
Wake-up from Pin
Change
0
0
0
0
P
P
P
P
Bit Name
–
CKR1
CKR0
ADRUN
ADPD
ADIS2
ADIS1
ADIS0
Power-on
0
0
0
0
0
0
0
0
/RESET and WDT
0
0
0
0
0
0
0
0
Wake-up from Pin
Change
P
P
P
P
P
0
P
P
Bit Name
CALI
SIGN
VOF[2]
VOF[1]
VOF[0]
–
–
–
Power-on
0
0
0
0
0
0
0
0
/RESET and WDT
0
0
0
0
0
0
0
0
Wake-up from Pin
Change
P
P
P
P
P
P
P
P
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
• 41
EM78P142
8-Bit Microprocessor with OTP ROM
Address
0XB
0XC
Name
RB
(ADDATA)
Reset Type
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
Bit Name
AD11
AD10
AD9
AD8
AD7
AD6
AD5
AD4
Power-on
U
U
U
U
U
U
U
U
/RESET and WDT
U
U
U
U
U
U
U
U
Wake-up from Pin
Change
P
P
P
P
P
P
P
P
Bit Name
“0”
“0”
“0”
“0”
AD11
AD10
AD9
AD8
0
0
0
0
U
U
U
U
0
0
0
0
U
U
U
U
0
0
0
0
P
P
P
P
AD7
AD6
AD5
AD4
AD3
AD2
AD1
AD0
Power-on
RC
(ADDATA1H) /RESET and WDT
Wake-up from Pin
Change
Bit Name
0XD
0xE
Power-on
RD
(ADDATA1L) /RESET and WDT
Wake-up from Pin
Change
RE
(ISR2)
U
U
U
U
U
U
U
U
U
U
U
U
U
U
U
U
P
P
P
P
P
P
P
P
Bit Name
/LVD
LVDIF
ADIF
–
ADWE
–
ICWE
LVDWE
Power-on
0
0
0
0
0
0
0
0
/RESET and WDT
0
0
0
0
0
0
0
0
Wake-up from Pin
Change
P
P
P
P
P
P
P
P
–
ICIF
TCIF
Bit Name
0xF
0x10~0x3F
RF
(ISR1)
R10~R3F
Power-on
0
0
0
0
0
0
0
0
/RESET and WDT
0
0
0
0
0
0
0
0
Wake-up from Pin
Change
P
P
P
P
P
P
P
P
Bit Name
–
–
–
–
–
–
–
–
Power-on
U
U
U
U
U
U
U
U
/RESET and WDT
P
P
P
P
P
P
P
P
Wake-up from Pin
Change
P
P
P
P
P
P
P
P
Legend: “×” = not used
“u” = unknown or don’t care
42 •
LPWTIF HPWTIF TCCCIF TCCBIF TCCAIF
“P” = previous value before reset
“t” = check “Reset Type” Table in Section 6.5.2
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
EM78P142
8-Bit Microprocessor with OTP ROM
6.5.1.3
Controller Reset Block Diagram
VDD
D
Oscillator
Q
CLK
CLK
CLR
Power-on Reset
Voltage
Detector
ENWDTB
WDT Timeout
Reset
Setup time
WDT
/RESET
Figure 6-7 Controller Reset Block Diagram
6.5.2 The T and P Status under Status Register
A reset condition is initiated by one of the following events:
1. Power-on reset
2. /RESET pin input "low"
3. WDT time-out (if enabled)
The values of T and P as listed in the table below, are used to check how the processor
wakes up.
RST
T
P
Power-on
Reset Type
0
1
1
/RESET during Operating mode,
0
*P
*P
/RESET wake-up during Sleep mode
0
1
0
LVR during Operating mode,
LVR wake-up during Sleep mode
0
0
*P
1
*P
0
WDT during Operating mode
0
0
1
WDT wake-up during Sleep mode
0
0
0
Wake-up on pin change during Sleep mode
1
1
0
*P: Previous status before reset
The following shows the events that may affect the status of T and P.
Event
RST
T
P
Power-on
WDTC instruction
0
*P
1
1
1
1
WDT time-out
0
0
*P
SLEP instruction
*P
1
0
Wake-up on pin changed during Sleep mode
1
1
0
*P: Previous value before reset
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
• 43
EM78P142
8-Bit Microprocessor with OTP ROM
6.6 Interrupt
The EM78P142 has five interrupts enumerated below:
1. TCC, TCCA, TCCB, TCCC overflow interrupt
2. Port 5 Input Status Change Interrupt
3. Analog to Digital conversion completed
4. IR/PWM underflow interrupt
5. Low voltage detector interrupt
Before the Port 5 Input Status Change Interrupt is enabled, reading Port 5 (e.g. "MOV
R5, R5") is necessary. Each Port 5 pin will have this feature if its status changes. The
Port 5 Input Status Change Interrupt will wake up the EM78P142 from sleep mode if it is
enabled prior to going into sleep mode by executing SLEP instruction. When wake up
occurs, the controller will continue to execute program in-line if the global interrupt is
disabled. If enabled, the global interrupt will branch out to the Interrupt Vector 006H.
RF and RE are the interrupt status register that records the interrupt requests in the
relative flags/bits. IOCF0 and IOCE0 are interrupt mask registers. The global interrupt
is enabled by the ENI instruction and is disabled by the DISI instruction. 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 to avoid recursive interrupts.
When interrupt mask bits is “Enable”, the flag in the Interrupt Status Register (RF) is set
regardless of the ENI execution. Note that the result of RF will be the logic AND of RF
and IOCF0 (refer to figure below). The RETI instruction ends the interrupt routine and
enables the global interrupt (the ENI execution).
When an interrupt is generated by the Timer clock (when enabled), the next instruction
will be fetched from Address 009, 018, 01B, and 01EH (TCC, TCCA, TCCB, and TCCC
respectively).
When an interrupt generated by the AD conversion is completed (when enabled), the
next instruction will be fetched from Address 00CH
When an interrupt is generated by the High time / Low time down counter underflow
(when enabled), the next instruction will be fetched from Addresses 012 and 015H
(High time and Low time respectively).
When an interrupt is generated by the Low Voltage Detect (when enabled), the next
instruction will be fetched from Address 021 (Low Voltage Detector interrupt).
Before an interrupt subroutine is executed, the contents of ACC and the R3 and R4
registers are saved first by the hardware. If another interrupt occurs, the ACC, R3, and
R4 will be replaced by the new interrupt. After an interrupt service routine is completed,
the ACC, R3, and R4 registers are restored.
44 •
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
EM78P142
8-Bit Microprocessor with OTP ROM
VCC
D
/IRQn
P
R
CLK
C
L
Q
IRQn
INT
_
Q
IRQm
RFRD
RF
ENI/DISI
P
R
Q
IOCF
_
Q
C
L
IOD
D
CLK
IOCFWR
/RESET
IOCFRD
RFWR
Interrupt sources
ACC
Interrupt
occurs
Stack ACC
ENI/DISI
R3 (7~5, 2~0)
RETI
R4 (6~0)
Stack R3
Stack R4
Figure 6-8 Interrupt Back-up Diagram
In EM78P142, each individual interrupt source has its own interrupt vector as depicted
in the table below.
Interrupt Vector
Interrupt Status
Priority*
003H
NA
−
006H
Port 5 pin change
2
009H
TCC overflow interrupt
3
00CH
AD conversion complete interrupt
4
00FH
NA
−
012H
High-pulse width timer underflow interrupt
5
015H
Low-pulse width timer underflow interrupt
6
018H
TCCA overflow interrupt
7
01BH
TCCB overflow interrupt
8
01EH
TCCC overflow interrupt
9
021H
Low Voltage Detector interrupt
1
Note: *Priority: 1 = highest ; 9 = lowest priority
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
• 45
EM78P142
8-Bit Microprocessor with OTP ROM
6.7 Analog-To-Digital Converter (ADC)
The analog-to-digital circuitry consists of an 8-bit analog multiplexer; three control
registers (AISR/R8, ADCON/R9, & ADOC/RA), three data registers (ADDATA1/RB,
ADDATA1H/RC, and ADDATA1L/RD) and an ADC with 12-bit resolution as shown in
the functional block diagram below. The analog reference voltage (Vref) and the
analog ground are connected via separate input pins.
The ADC module utilizes successive approximation to convert the unknown analog
signal into a digital value. The result is fed to the ADDATA, ADDATA1H, and
ADDATA1L. Input channels are selected by the analog input multiplexer via the
ADCON register Bits ADIS1 and ADIS0.
ADC7
Vref
ADC6
h
c
t
i
w
S
g
o
l
a
n
A
1
8
ADC5
ADC4
ADC3
ADC2
ADC1
ADC0
Power-Down
ADC
( successive approximation )
Start to Convert
Fsco
4-1
MUX
Internal RC
7 ~ 0
1
0
6
ADCON
AISR
3
5
ADCON
11 10
RF
9
8
7
6
ADDATA1H
5
4
3
2
1
4
0
3
ADCON
ADDATA1L
DATA BUS
Figure 6-9 Analog-to-Digital Conversion Functional Block Diagram
6.7.1 ADC Control Register (AISR/R8, ADCON/R9, ADOC/RA)
6.7.1.1
R8 (AISR: ADC Input Select Register)
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
“0”
ADE6
ADE5
ADE4
ADE3
ADE2
ADE1
ADE0
The AISR register individually defines the P5, P6 and P7 pins as analog inputs or as
digital I/O.
Bit 7:
Bit 6 (ADE6):
This bit must be set to “0” all the time.
AD converter enable bit of P55 pin
0 : Disable ADC6, P55 functions as I/O pin
1 : Enable ADC6 to function as analog input pin
Bit 5 (ADE5):
AD converter enable bit of P70 pin
0 : Disable ADC5, P70 functions as I/O pin
1 : Enable ADC5 to function as analog input pin
46 •
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
EM78P142
8-Bit Microprocessor with OTP ROM
Bit 4 (ADE4):
AD converter enable bit of P67 pin
0 = Disable ADC4, P67 functions as I/O pin
1 = Enable ADC4 to function as analog input pin
Bit 3 (ADE3):
AD converter enable bit of P53 pin
0 = Disable ADC3, P53 functions as I/O pin
1 = Enable ADC3 to function as analog input pin
Bit 2 (ADE2):
AD converter enable bit of P52 pin
0 = Disable ADC2, P53 functions as I/O pin
1 = Enable ADC2 to function as analog input pin
Bit 1 (ADE1):
AD converter enable bit of P51 pin
0 = Disable ADC1, P51 acts as I/O pin
1 = Enable ADC1 acts as analog input pin
Bit 0 (ADE0):
AD converter enable bit of P50 pin
0 = Disable ADC0, P50 functions as I/O pin
1 = Enable ADC0 to function as analog input pin
6.7.1.2
R9 (ADCON: ADC Control Register)
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
“0”
CKR1
CKR0
ADRUN
ADPD
ADIS2
ADIS1
ADIS0
The ADCON register controls the operation of the AD conversion and decides which
pin should be currently active.
Bit 7: This bit must be set to “0” all the time
Bit 6 ~ Bit 5 (CKR1 ~ CKR0): The prescaler of ADC oscillator clock rate
00 = 1: 16 (default value)
01 = 1: 4
10 = 1: 64
11 = 1: 8
CPUS
CKR1: CKR0 Operation Mode Max. Operation Frequency
1
00
Fosc/16
4 MHz
1
01
Fosc/4
1 MHz
1
10
Fosc/64
16 MHz
1
11
Fosc/8
2 MHz
0
××
Internal RC
−
Bit 4 (ADRUN): ADC starts to RUN
0 : reset upon completion of the conversion. This bit cannot be reset
though software.
1 : an AD conversion is started. This bit can be set by software.
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
• 47
EM78P142
8-Bit Microprocessor with OTP ROM
Bit 3 (ADPD):
ADC Power-down mode
0 : switch off the resistor reference to conserve power even while the
CPU is operating
1 : ADC is operating
Bit 2 ~ Bit 0 (ADIS2 ~ ADIS0): Analog Input Select
000 = ADIN0/P50
001 = ADIN1/P51
010 = ADIN2/P52
011 = ADIN3/P53
100 = ADIN4/P67
101 = ADIN5/P70
110 = ADIN6/P55
111 = not used
These bits can only be changed when the ADIF bit and the ADRUN bit
are both LOW
6.7.1.3
RA (ADOC: AD Offset Calibration Register)
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
CALI
SIGN
VOF[2]
VOF[1]
VOF[0]
“0”
“0”
“0”
Bit 7 (CALI): Calibration enable bit for ADC offset
0 = disable Calibration
1 = enable Calibration
Bit 6 (SIGN): Polarity bit of offset voltage
0 = Negative voltage
1 = Positive voltage
Bit 5 ~ Bit 3 (VOF[2] ~ VOF[0]): Offset voltage bits.
VOF[2]
VOF[1]
VOF[0]
EM78P142
ICE341N
0
0
0
0LSB
0LSB
0
0
0
1
1
0
2LSB
4LSB
2LSB
4LSB
0
1
1
6LSB
6LSB
1
0
0
8LSB
8LSB
1
0
1
10LSB
10LSB
1
1
0
12LSB
12LSB
1
1
1
14LSB
14LSB
Bit 2 ~ Bit 0: Unimplemented, read as ‘0’.
48 •
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
EM78P142
8-Bit Microprocessor with OTP ROM
6.7.2 ADC Data Register (ADDATA/RB, ADDATA1H/RC,
ADDATA1L/RD)
When the AD conversion is completed, the result is loaded to the ADDATA, ADDATA1H
and ADDATA1L registers. The ADRUN bit is cleared, and the ADIF is set.
6.7.3 ADC Sampling Time
The accuracy, linearity, and speed of the successive approximation of the AD converter
are dependent on the properties of the ADC and the comparator. The source
impedance and the internal sampling impedance directly affect the time required to
charge the sample holding capacitor. The application program controls the length of
the sample time to meet the specified accuracy. Generally speaking, the program
should wait for 2µs for each KΩ of the analog source impedance and at least 2µs for
the low-impedance source. The maximum recommended impedance for analog
source is 10KΩ at Vdd=5V. After the analog input channel is selected, this acquisition
time must be done before the conversion is started.
6.7.4 AD Conversion Time
CKR1 and CKR0 select the conversion time (Tct), in terms of instruction cycles. This
allows the MCU to run at the maximum frequency without sacrificing the AD conversion
accuracy. For the EM78P142, the conversion time per bit is about 4µs. The table
below shows the relationship between Tct and the maximum operating frequencies.
CKR1:CKR0
Operation
Mode
Max. Operation Max. Conversion
Frequency
Rate/Bit
Max. Conversion Rate
00
Fosc/16
4 MHz
250kHz (4µs)
15×4µs=60µs (16.7kHz)
01
10
Fosc/4
Fosc/64
1 MHz
16 MHz
250kHz (4µs)
250kHz ( 4µs)
15×4µs=60µs (16.7kHz)
15×4µs=60µs (16.7kHz)
11
Fosc/8
2 MHz
250kHz ( 4µs)
15×4µs=60µs (16.7kHz)
NOTE
■ Pin not used as an analog input pin can be used as regular input or output pin.
■ During conversion, do not perform output instruction to maintain precision for all of
the pins.
6.7.5 ADC Operation during Sleep Mode
In order to obtain a more accurate ADC value and reduce power consumption, the AD
conversion remains operational during sleep mode. As the SLEP instruction is
executed, all the MCU operations will stop except for the Oscillator, TCC, TCCA,
TCCB, TCCC, and AD conversion.
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
• 49
EM78P142
8-Bit Microprocessor with OTP ROM
The AD Conversion is considered completed as determined by:
1. The ADRUN bit of the R9 register is cleared to “0”.
2. The ADIF bit of the RE register is set to “1”.
3. The ADWE bit of the RE register is set to “1.” Wakes up from ADC conversion
(where it remains in operation during sleep mode).
4. Wake up and execution of the next instruction if the ADIE bit of the IOCE0 is
enabled and the “DISI” instruction is executed.
5. Wake up and enters into Interrupt vector (Address 0x00C) if the ADIE bit of the
IOCE0 is enabled and the “ENI” instruction is executed.
6. Enters into Interrupt vector (Address 0x00C) if the ADIE bit of the IOCE0 is enabled
and the “ENI” instruction is executed.
The results are fed into the ADDATA, ADDATA1H, and ADDATA1L registers when the
conversion is completed. If the ADIE is enabled, the device will wake up. Otherwise,
the AD conversion will be shut off, no matter what the status of the ADPD bit is.
6.7.6 Programming Process/Considerations
6.7.6.1
Programming Process
Follow these steps to obtain data from the ADC:
1. Write to the eight bits (ADE7: ADE0) on the R8 (AISR) register to define the
characteristics of R5 (digital I/O, analog channels, or voltage reference pin)
2. Write to the R9/ADCON register to configure the AD module:
a) Select the ADC input channel ( ADIS2 : ADIS0 )
b) Define the AD conversion clock rate ( CKR1 : CKR0 )
c) Select the VREFS input source of the ADC
d) Set the ADPD bit to 1 to begin sampling
3. Set the ADWE bit, if the wake-up function is employed
4. Set the ADIE bit, if the interrupt function is employed
5. Write “ENI” instruction, if the interrupt function is employed
6. Set the ADRUN bit to 1
7. Write “SLEP” instruction or Polling.
8. Wait for wake-up or for the ADRUN bit to be cleared to “0” , interrupt flag (ADIF) is
set “1,” or ADC interrupt occurs.
9. Read the ADDATA or ADDATA1H and ADDATA1L conversion data registers. If the
ADC input channel changes at this time, the ADDATA, ADDATA1H, and
ADDATA1L values can be cleared to ‘0’.
50 •
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
EM78P142
8-Bit Microprocessor with OTP ROM
10. Clear the interrupt flag bit (ADIF).
11. For next conversions, go to Step 1 or Step 2 as required. At least two Tct is
required before the next acquisition starts.
NOTE
In order to obtain accurate values, it is necessary to avoid any data transition on I/O
pins during AD conversion
6.7.6.2
Sample Demo Programs
R_0 == 0
PSW == 3
PORT5 == 5
PORT6 == 6
R_E== 0XE
; Indirect addressing register
; Status register
; Interrupt status register
B. Define a Control Register
IOC50 == 0X5
IOC60 == 0X6
IOCE0== 0XE
C_INT== 0XF
;
;
;
;
Control Register of Port 5
Control Register of Port 6
Interrupt Mask Register 2
Interrupt Mask Register
C. ADC Control Register
ADDATA == 0xB
AISR == 0x08
ADCON == 0x9
; The contents are the results of ADC
; ADC input select register
; 7
6
5
4
3
2
1
0
; CKR1 CKR0 ADRUN ADPD ADIS2 ADIS1 ADIS0
D. Define Bits in ADCON
ADRUN == 0x4
ADPD == 0x3
; ADC is executed as the bit is set
; Power Mode of ADC
E. Program Starts
ORG 0
JMP INITIAL
; Initial address
;
ORG 0x0C
; Interrupt vector
JMP CLRRE
;
;(User program section)
;
CLRRE:
MOV A,RE
AND A, @0BXX0XXXXX ; To clear the ADIF bit, “X” by application
MOV RE,A
BS ADCON, ADRUN
; To start to execute the next AD conversion
; if necessary
RETI
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
• 51
EM78P142
8-Bit Microprocessor with OTP ROM
INITIAL:
MOV A,@0B00000001
MOV AISR,A
MOV A,@0B00001000
MOV ADCON,A
; To define P50 as an analog input
; To select P50 as an analog input channel, and
AD power on
; To define P50 as an input pin and set clock
rate at fosc/16
En_ADC:
MOV A, @0BXXXXXXX1 ; To define P50 as an input pin, and the others
; are dependent on applications
IOW PORT5
MOV A, @0BXXXX1XXX ; Enable the ADWE wake-up function of ADC, “X”
; by application
MOV RE,A
MOV A, @0BXX1XXXXX ; Enable the ADIE interrupt function of ADC,
; “X” by application
IOW IOCE0
ENI
; Enable the interrupt function
BS ADCON, ADRUN
; Start to run the ADC
; If the interrupt function is employed, the following three lines
may be ignored
;If Sleep:
SLEP
;
;(User program section)
;
or
;If Polling:
POLLING:
JBC ADCON, ADRUN
JMP POLLING
; To check the ADRUN bit continuously;
; ADRUN bit will be reset as the AD conversion
; is completed
;
;(User program section)
52 •
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
EM78P142
8-Bit Microprocessor with OTP ROM
6.8 Infrared Remote Control Application/PWM Waveform
Generation
6.8.1 Overview
This LSI can easily output infrared carrier or PWM standard waveform. As illustrated
below, the IR and PWM waveform generation function include an 8-bit down count
timer/counter, high-time, low-time, and IR control register. The IROUT pin waveform is
determined by IOCA0 (IR and TCCC scale control register), IOCB1 (high-time rate,
low-time rate control register), IOC81 (TCCC timer), IOCA1 (high-time register), and
IOC91 (low-time register).
Fosc
8-bit counter
8-bit counter
8-to-1 MUX
8-to-1 MUX
8-bit binary
down counter
8-bit binary
down counter
8-bit counter
Scale
(IOCA0)
Scale
(IOCB 1)
Scale
(IOCB1)
8-to-1 MUX
Auto-reload buffer
(High-time)(IOCA1)
8
8
Fcarrier
8
Auto-reload
buffer
(Low-time) (IOC91)
8
8-bit binary
down counter
H/W Modulator
8
Auto-reload buffer
(TCCC)(IOC81)
HF
LGP
IRE
IROUT pin
Underflow Interrupt
HPWTIF
LPWTIF
Figure 6-10 IR/PWM System Block Diagram
Details of the Fcarrier High Time Width and Low Time Width are shown below:
FT
Fcarrier =
2
where
FT =
{ [ 1 + Decimal TCCC Value (IOC81) ] × TCCC Scale (IOCA0)}
FOSC
1
High Time Width =
{ [ 1 + Decimal High Time Value (IOCA1)] × High Time Scale (IOCB1) }
Low Time Width =
{ [ 1 + Decimal Low Time Value (IOC91)] × Low Time Scale (IOCB1) }
FT
FT
When an interrupt is generated by the High time down counter underflow (when
enabled), the next instruction will be fetched from Address 018 and 01BH (High time
and Low time respectively).
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
• 53
EM78P142
8-Bit Microprocessor with OTP ROM
6.8.2 Function Description
The following figure shows LGP=0 and HF=1. The IROUT waveform modulates the
Fcarrier waveform at low-time segments of the pulse.
Fcarrier
low time width
high time width
low time width
high time width
HF
Start
IRE
IROUT
Figure 6-11a LGP=0, HF=1, IROUT Pin Output Waveform
The following figure shows LGP=0 and HF=0. The IROUT waveform cannot modulate
the Fcarrier waveform at low-time segments of the pulse. So IROUT waveform is
determined by the high time width and low time width instead. This mode can produce
standard PWM waveform.
Fcarrier
low time width
high time width
low time width
high time width
HF
Start
IRE
IROUT
Figure 6-11b LGP=0, HF=0, IROUT Pin Output Waveform
54 •
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
EM78P142
8-Bit Microprocessor with OTP ROM
The following figure shows LGP=0 and HF=1. The IROUT waveform modulates the
Fcarrier waveform at low-time segments of the pulse. When IRE goes low from high,
the output waveform of IROUT will keep transmitting until high-time interrupt occurs.
Fcarrier
low time width
high time width
low time width
high time width
HF
Start
IR disable
IRE
IROUT
Always high-level
Figure 6-11c LGP=0, HF=1, When IRE goes Low from High, IROUT Pin Outputs Waveform
The following figure shows LGP=0 and HF=0. The IROUT waveform cannot modulate
the Fcarrier waveform at low-time segments of the pulse. So IROUT waveform is
determined by high time width and low time width. This mode can produce standard
PWM waveform when IRE goes low from high. The output waveform of IROUT will
keep on transmitting until high-time interrupt occurs.
Fcarrier
low time width
high time width
low time width
high time width
HF
Start
IRE
IROUT
IR disable
Always high-level
Figure 6-11d LGP=0, HF=0, When IRE goes Low from High, Irout Pin Output Waveform
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
• 55
EM78P142
8-Bit Microprocessor with OTP ROM
The following figure shows LGP=1 and HF=1. When this bit is set to high level, the
high-time segment of the pulse is ignored. So, IROUT waveform output is determined
by low-time width.
Fcarrier
low time width
low time width
low time width
HF
Start
IR disable
IRE
IROUT
Always high-level
Figure 6-11e LGP=1 and HF=1, IROUT Pin Output Waveform
6.8.3 Programming the Related Registers
When defining IR/PWM, refer to the operation of the related registers as shown in the
tables below.
IR/PWM Related Control Registers
Address
Name
Bit 7
Bit 6
0x09
IOC90
0X0A
IR CR
TCCCSE/0 TCCCS2/0 TCCCS1/0 TCCCS0/0
/IOCA0
0x0F
IMR
/IOCF0
0X0B
HLTS
/IOCB1
TCCBHE/0TCCBEN/0
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
“0”
“0”
“0”
TCCCEN/0
“0”
“0”
IRE/0
HF/0
LGP/0
IROUTE/0
“0”
ICIE/0
TCIE/0
LTSE/0
LTS2/0
LTS1/0
LTS0/0
Bit 3
Bit 2
Bit 1
Bit 0
“0”
ICIF/0
TCIF/0
LPWTIE/0 HPWTIE/0 TCCCIE/0 TCCBIE/0 TCCAIE/0
HTSE/0
HTS2/0
HTS1/0
HTS0/0
IR/PWM Related Status/Data Registers
Address
Name
0x0F
ISR/RF
LPWTIF/0 HPWTIF/0 TCCCIF/0 TCCBIF/0 TCCAIF/0
0x06
TCCC
/IOC81
TCCC7/0 TCCC6/0 TCCC5/0 TCCC4/0 TCCC3/0 TCCC2/0 TCCC1/0 TCCC0/0
0X09
LTR
/IOC91
LTR7/0
LTR6/0
LTR5/0
LTR4/0
LTR3/0
LTR2/0
LTR1/0
LTR0/0
0X0A
HTR
/IOCA1
HTR7/0
HTR6/0
HTR5/0
HTR4/0
HTR3/0
HTR2/0
HTR1/0
HTR0/0
56 •
Bit 7
Bit 6
Bit 5
Bit 4
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
EM78P142
8-Bit Microprocessor with OTP ROM
6.9 Timer
6.9.1 Overview
Timer A (TCCA) is an 8-bit clock timer. Timer B (TCCB) is a 16-bit clock timer. Timer C
(TCCC) is an 8-bit clock timer that can be extended to 16-bit clock timer with
programmable scalers. TCCA, TCCB, and TCCC can be read and written to, and are
cleared at every reset condition.
6.9.2 Function Description
Set predict value
Set predict value
TCCAEN
Set predict value
TCCCEN
TCCBEN
Set TCCCIF
Set TCCBIF
Set TCCAIF
TCCC
TCCB
TCCA
Overflow
Overflow
Overflow
Fosc
Fosc
8-to-1 MUX
TCCCS1 ~ TCCCS0
8 Bit
counter
Fosc
Figure 6-12 Timer Block Diagram
Each signal and block of the above Timer block diagram is described as follows:
TCCX: Timer A~C register. TCCX is incremented until it matches with zero, and then
reloads the predicted value. When writing a value to TCCX, the predicted
value and TCCX value become the set value. When reading from TCCX, the
value will be the TCCX direct value. When TCCXEN is enabled, the reloading
of the predicted value to TCCX, TCCXIE is also enabled. TCCXIF will be set at
the same time. It is an up timer.
TCCA Timer (IOC51):
IOC51 (TCCA) is an 8-bit clock timer. It can be read, written to, and cleared on
any reset condition and it is also an Up Timer.
TCCA Timeout period =
(
1
)
FOSC × 256 − TCCA cnt × 1
TCCB Timer (IOC61):
IOC61 is an 8-bit clock timer for the least significant byte of TCCBX (TCCB). It
can be read, written, and cleared on any reset condition and it is also an Up
Timer.
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
• 57
EM78P142
8-Bit Microprocessor with OTP ROM
TCCBH / MSB Timer (IOC71):
IOC71 is an 8-bit clock timer for the most significant byte of TCCBX (TCCBH).
It can be read, written to, and cleared on any reset condition.
When TCCBHE (IOC90) is “0,” then TCCBH is disabled. When TCCBHE is”1,”
then TCCB is a 16-bit length timer.
When TCCBH is disabled:
TCCB Timeout period =
(
1
)
FOSC × 256 − TCCB cnt × 1
When TCCBH is enabled:
TCCB Timeout period =
FOSC ×
[ 65536
(
1
)
− TCCBH × 256 + TCCB cnt × 1
]
TCCC Timer (IOC81):
IOC81 (TCCC) is an 8-bit clock timer. It can be read, written to, and cleared on
any reset condition.
If HF (Bit 2 of IOCA0) = 1 and IRE (Bit 3 of IOCA0) = 1, TCCC timer scale uses
the low-time segments of the pulse generated by Fcarrier frequency
modulation (see Figure 6-11 in Section 6.8.2, Function Description). The
TCCC value will then be the TCCC predicted value.
When HF = 0 or IRE = 0. The TCCC is an Up Timer.
In TCCC Up Timer mode:
TCCC Timeout period =
1
(
)
FOSC × Scaler (IOCA0 ) × 256 − TCCC cnt × 1
When HF = 1 and IRE = 1, TCCC timer scale uses the low-time segments of
the pulse generated by the Fcarrier frequency modulation.
In IR mode:
FT
Fcarrier =
2
{ [ 1 + Decimal TCCC Value (IOC81) ] × TCCC Scale (IOCA0)}
where
58 •
FT =
FOSC
1
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
EM78P142
8-Bit Microprocessor with OTP ROM
6.9.3 Programming the Related Registers
When defining TCCX, refer to the operation of its related registers as shown in the
tables below.
TCCX Related Control Registers:
Address
Name
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
0x08
IOC80
-
-
-
“0”
“0”
TCCAEN/0
“0”
“0”
0x09
IOC90
TCCBHE/0 TCCBEN/0
“0”
“0”
“0”
TCCCEN/0
“0”
“0”
0x0A
IR CR
/IOCA0
TCCCSE/0 TCCCS2/0 TCCCS1/0 TCCCS0/0
IRE/0
HF/0
LGP/0
IROUTE/0
0x0F
IMR
/IOCF0
TCCAIE/0
“0”
ICIE/0
TCIE/0
LPWTE/0
HPWTE/0
TCCCIE/0
TCCBIE/0
Related TCCX Status/Data Registers:
Address
Name
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
0x0F
ISR/RF
LPWTF/0
HPWTF/0
TCCCIF/0
TCCBIF/0
TCCAIF/0
“0”
ICIF/0
TCIF/0
0x05
TCCA
/IOC51
TCCA7/0
TCCA6/0
TCCA5/0
TCCA4/0
TCCA3/0
TCCA2/0
TCCA1/0
TCCA0/0
0x06
TCCB
/IOC61
TCCB7/0
TCCB6/0
TCCB5/0
TCCB4/0
TCCB3/0
TCCB2/0
TCCB1/0
TCCB0/0
0x07
TCCBH
/IOC71
0x08
TCCC
/IOC81
TCCBH7/0 TCCBH6/0 TCCBH5/0 TCCBH4/0 TCCBH3/0 TCCBH2/0 TCCBH1/0 TCCBH0/0
TCCC7/0
TCCC6/0
TCCC5/0
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
TCCC4/0
TCCC3/0
TCCC2/0
TCCC1/0
TCCC0/0
• 59
EM78P142
8-Bit Microprocessor with OTP ROM
6.10 Oscillator
6.10.1 Oscillator Modes
The EM78P142 can be operated in six different oscillator modes, such as High Crystal
Oscillator Mode 1 (HXT1), High Crystal Oscillator Mode 2 (HXT2), Low Crystal
Oscillator Mode 1 (LXT1), Low Crystal Oscillator Mode 2 (LXT2), External RC
Oscillator Mode (ERC), and RC Oscillator Mode with Internal RC Oscillator Mode
(IRC). You can select one of them by programming the OSC2, OCS1, and OSC0 in the
Code Option register.
The Oscillator modes defined by OSC2, OCS1, and OSC0 are described below.
Oscillator Modes
OSC2
OSC1
OSC0
1
0
0
0
1
0
0
1
0
1
0
ERC (External RC oscillator mode); P70/OSCO acts as P70
ERC (External RC oscillator mode); P70/OSCO acts as OSCO
2
IRC (Internal RC oscillator mode); P70/OSCO acts as P70
2
IRC (Internal RC oscillator mode); P70/OSCO acts as OSCO
0
1
1
3
1
0
0
3
1
0
1
3
1
1
0
3
1
1
1
LXT1 (Frequency range of XT mode is 1MHz ~ 100kHz)
HXT1 (Frequency range of XT mode is 16 MHz ~ 6 MHz)
LXT2 (Frequency range of XT mode is 32kHz)
HXT2 (Frequency range of XT mode is 6 MHz ~ 1 MHz) (default)
1
In ERC mode, OSCI is used as oscillator pin. OSCO/P70 is defined by code option Word 0 Bit 6 ~ Bit 4.
2
In IRC mode, P55 is normal I/O pin. OSCO/P70 is defined by code option Word 0 Bit 6 ~ Bit 4.
3
In LXT1, LXT2, HXT1 and HXT2 modes; OSCI and OSCO are used as oscillator pins. These pins cannot
and should not be defined as normal I/O pins.
The maximum operating frequency limit of crystal/resonator at different VDDs, are as
follows:
Conditions
Two clocks
60 •
VDD
Max. Freq. (MHz)
2.1V
4
3.0V
8
4.5V
16
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
EM78P142
8-Bit Microprocessor with OTP ROM
6.10.2 Crystal Oscillator/Ceramic Resonators (Crystal)
The EM78P142 can be driven by an external clock signal through the OSCI pin as
illustrated below.
OSCI
OSCO
Figure 6-13 External Clock Input Circuit
In most applications, Pin OSCI and Pin OSCO can be connected with a crystal or
ceramic resonator to generate oscillation. Figure 6-14 below depicts such a circuit.
The same applies to the HXT1 mode, HTX2 mode, LXT1 mode and LXT2 mode.
C1
OSCI
Crystal
OSCO
RS
C2
Figure 6-14 Crystal/Resonator Circuit
The following table provides the recommended values for C1 and C2. Since each
resonator has its own attribute, user should refer to the resonator specifications for the
appropriate values of C1 and C2. RS, a serial resistor, maybe required for AT strip cut
crystal or low frequency mode. Figure 6-17 is PCB layout suggestion. When the
system works in Crystal mode (16MHz), a 10KΩ is connected between OSCI and
OSCO.
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
• 61
EM78P142
8-Bit Microprocessor with OTP ROM
Capacitor selection guide for crystal oscillator or ceramic resonators:
Oscillator Type
Frequency Mode
Frequency
LXT
(100K~1 MHz)
Ceramic Resonators
MXT
(1M~6 MHz)
LXT2 (32.768kHz)
LXT1
(100K~1 MHz)
Crystal Oscillator
HXT2
(1~6 MHz)
HXT1
(6~16 MHz)
C1(pF)
C2(pF)
100kHz
67pF
67pF
200kHz
30pF
30pF
455kHz
30pF
30pF
1MHz
30pF
30pF
1.0 MHz
30pF
30pF
2.0 MHz
30pF
30pF
4.0 MHz
30pF
30pF
32.768kHz
40pF
40pF
100kHz
67pF
67pF
200kHz
30pF
30pF
455kHz
30pF
30pF
1MHz
30pF
30pF
455kHz
30pF
30pF
1.0 MHz
30pF
30pF
2.0 MHz
30pF
30pF
4.0 MHz
30pF
30pF
6.0 MHz
30pF
30pF
6.0 MHz
30pF
30pF
8.0 MHz
30pF
30pF
10.0 MHz
30pF
30pF
12.0 MHz
30pF
30pF
16.0 MHz
15pF
15pF
Circuit diagrams for serial and parallel modes Crystal/Resonator:
330
330
C
OSCI
7404
7404
7404
Crysta l
Figure 6-15 Serial Mode Crystal/Resonator Circuit Diagram
62 •
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
EM78P142
8-Bit Microprocessor with OTP ROM
7404
4.7K
10K
Vdd
O S CI
10K
7404
C rystal
C1
10K
C2
Figure 6-16 Parallel Mode Crystal/Resonator Circuit Diagram
Figure 6-17 Parallel Mode Crystal/Resonator Circuit Diagram
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
• 63
EM78P142
8-Bit Microprocessor with OTP ROM
6.10.3 External RC Oscillator Mode
For some applications that do not require
Vcc
precise timing calculation, the RC
oscillator (Figure 6-18) could offer an
Rext
effective cost savings. Nevertheless, it
should be noted that the frequency of the
RC oscillator is influenced by the supply
OSCI
Cext
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.
Figure 6-18 External RC Oscillator Mode
Circuit
In order to maintain a stable system frequency, the values of the Cext should be no less
than 20 pF, and the value of Rext should not be greater than 1 MΩ. If the frequency
cannot be kept within this range, the frequency can be affected easily by noise,
humidity, and leakage.
The smaller the Rext in the RC oscillator is, 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 correctly discharge the capacitance current.
Based on the above reasons, it must be kept in mind that all supply voltage, the
operation temperature, the components of the RC oscillator, the package types, and
the way the PCB is layout, have certain effect on the system frequency.
64 •
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
EM78P142
8-Bit Microprocessor with OTP ROM
The RC Oscillator frequencies:
Cext
20 pF
100 pF
300 pF
Rext
Average Fosc 5V, 25°C
Average Fosc 3V, 25°C
3.3k
3.5 MHz
3.0 MHz
5.1k
2.4 MHz
2.2 MHz
10k
1.27 MHz
1.24 MHz
100k
140kHz
143kHz
3.3k
1.21 MHz
1.18 MHz
5.1k
805kHz
790kHz
10k
420kHz
418kHz
100k
45kHz
46kHz
3.3k
550kHz
526kHz
5.1k
364kHz
350kHz
10k
188kHz
185kHz
100k
20kHz
20kHz
1
Note: : Measured based on DIP packages.
2
: The values are for design reference only.
: The frequency drift is ± 30%
3
6.10.4 Internal RC Oscillator Mode
The EM78P142 offers a versatile internal RC mode with default frequency value of
4MHz. Internal RC oscillator mode has other frequencies (16MHz, 1MHz, and 455kHz)
that can be set by Code Option (Word 1), RCM1, and RCM0. The Table below
describes the EM78P142 internal RC drift with voltage, temperature, and process
variations.
Internal RC Drift Rate (Ta=25°C, VDD=5V±5%, VSS=0V)
Internal
RC Frequency
Drift Rate
Temperature
(-40°C ~+85°C)
Voltage
(2.3V~3.9V~5.5V)
Process
Total
±5%
±5%
±5%
±5%
±5%
±5%
±5%
±5%
±4%
±4%
±4%
±4%
±14%
±14%
±14%
±14%
4 MHz
16 MHz
1 MHz
455kHz
Note: Theoretical values are for reference only. Actual values may vary depending on the actual process.
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
• 65
EM78P142
8-Bit Microprocessor with OTP ROM
6.11 Power-on Considerations
Any microcontroller is not warranted to start operating properly before the power supply
stabilizes in steady state. The EM78P142 POR voltage range is 1.6V ~ 1.8V. Under
customer application, when power is switched OFF, Vdd must drop below 1.6V and
remains at OFF state for 10µs before power can be switched ON again. Subsequently,
the EM78P142 will reset and work normally. The extra external reset circuit will work
well if Vdd rises fast enough (50ms or less). However, under critical applications, extra
devices are still required to assist in solving power-on problems.
6.11.1 Programmable WDT Time-out Period
5
The Option word (WDTPS) is used to define the WDT time-out period (18ms or
6
4.5ms ). Theoretically, the range is from 4.5ms or 18ms. For most crystal or ceramic
resonators, the lower the operation frequency is, the longer is the required set-up time.
6.11.2 External Power-on Reset Circuit
The circuit shown in the
VDD
following figure implements
an external RC to produce a
/RESET
reset pulse. The pulse
R
D
width (time constant) should
be kept long enough to
Rin
allow the Vdd to reach the
C
minimum operating voltage.
This circuit is used when the
power supply has a slow
Figure 6-19 External Power-on Reset Circuit
power 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. This way, the voltage at Pin /RESET is held below 0.2V.
The diode (D) functions as a short circuit at power-down. The “C” capacitor is
discharged rapidly and fully. Rin, the current-limited resistor, prevents high current
discharge or ESD (electrostatic discharge) from flowing into Pin /RESET.
66 •
5
VDD=5V, WDT time-out period = 16.5ms ± 30%.
VDD=3V, WDT time-out period = 18ms ± 30%.
6
VDD=5V, WDT time-out period = 4.2ms ± 30%.
VDD=3V, WDT time-out period = 4.5ms ± 30%.
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
EM78P142
8-Bit Microprocessor with OTP ROM
6.11.3 Residual Voltage Protection
When the battery is replaced, device power (Vdd) is removed but residual voltage
remains. The residual voltage may trip below Vdd minimum, but not to zero. This
condition may cause a poor power-on reset. Figure 6-20 and Figure 6-21 show how to
create a protection circuit against residual voltage.
VDD
VDD
33K
Q1
10K
/RESET
100K
1N4684
Figure 6-20 Residual Voltage Protection Circuit 1
VDD
VDD
R1
Q1
/RESET
R3
R2
Figure 6-21 Residual Voltage Protection Circuit 2
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
• 67
EM78P142
8-Bit Microprocessor with OTP ROM
6.12 Code Option
EM78P142 has two CODE option words and one Customer ID word that are not part of
the normal program memory.
Word 0
Word1
Word 2
Bit 12 ~ Bit 0
Bit 12 ~ Bit 0
Bit12 ~ Bit 0
6.12.1 Code Option Register (Word 0)
Word 0
Bit
Bit 12 Bit 11 Bit 10 Bit 9
Bit 8
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Mne
LVR1 LVR0 TYPE1 TYPE0 CLKS ENWDTB OSC2 OSC1 OSC0
monic
Bit 2
Bit 1
−
Protect
1
High
High
High
High
4
clocks
Disable
High
High
High
−
Disable
0
Low
Low
Low
Low
2
clocks
Enable
Low
Low
Low
−
Enable
Bit 0
Bits 12~11 (LVR1 ~ LVR0): Low Voltage Reset enable bits
LVR1, LVR0
VDD Reset Level
11
10
01
00
2.4V
3.5V
4.0V
VDD Release Level
NA (Power-on Reset) (Default)
2.6V
3.7V
4.2V
Bits 10~9 (TYPE1 ~ TYPE0): Type selection for EM78P142.
TYPE 1, TYPE 0
68 •
MCU Type
00
Not used
01
EM78P142 – 10Pin
10
Not used
11
Not used
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
EM78P142
8-Bit Microprocessor with OTP ROM
Instruction period option bit
Bit 8 (CLKS):
0 = two oscillator periods
1 = four oscillator periods (default)
Refer to Section 6.15 for Instruction Set
Bit 7 (ENWDTB):
Watchdog timer enable bit
0 = Enable
1 = Disable (default)
Bits 6, 5 & 4 (OSC2, OSC1 & OSC0): Oscillator Modes Selection bits
OSC2
OSC1
OSC0
1
Oscillator Modes
0
0
0
1
0
0
1
0
1
0
ERC (External RC oscillator mode); P70/OSCO acts as P70
ERC (External RC oscillator mode); P70/OSCO acts as OSCO
2
IRC (Internal RC oscillator mode); P70/OSCO acts as P70
2
IRC (Internal RC oscillator mode); P70/OSCO acts as OSCO
0
1
1
3
1
0
0
3
1
0
1
3
1
1
0
3
1
1
1
LXT1 (Frequency range of XT, mode is 1MHz ~ 100kHz)
HXT1 (Frequency range of XT mode is 16MHz ~ 6MHz)
LXT2 (Frequency range of XT mode is 32kHz)
HXT2 (Frequency range of XT mode is 6MHz ~ 1MHz) (default)
1
In ERC mode, OSCI is used as oscillator pin. OSCO/P54 is defined by code option Word 0 Bit 6 ~ Bit 4.
2
In IRC mode, P54 is normal I/O pin. OSCO/P54 is defined by code option Word 0 Bit 6 ~ Bit 4.
3
In LXT1, LXT2, HXT1 and HXT2 modes; OSCI and OSCO are used as oscillator pins. These pins cannot
and should not be defined as normal I/O pins.
Bit 3: Not used, (reserved). This bit is set to “0” all the time.
Bits 2 ~ 0 (Protect): Protect Bits
Protect Bits
Protect
0
Enable
1
Disable (default)
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
• 69
EM78P142
8-Bit Microprocessor with OTP ROM
6.12.2 Code Option Register (Word 1)
Word 1
Bit
Bit 12 Bit 11 Bit 10 Bit 9
Bit 8
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
Mne
monic
–
–
–
RCOUT
–
–
–
C3
C2
C1
C0
1
–
–
–
System
_clk
–
–
–
High
High
High
High
High
High
0
–
–
–
Open_
drain
–
–
–
Low
Low
Low
Low
Low
Low
Bit 12:
Not used, (reserved). This bit is set to “0” all the time.
Bits 11~10:
Not used, (reserved). These bits are set to “1” all the time.
RCM1 RCM0
Bit 9 (RCOUT): Instruction clock output enable bit in IRC or ERC mode
0 = OSCO pin is open drain
1 = OSCO output instruction clock (default)
Bit 8 & Bit 7: These bits must set to “0” all the time
Bit 6:
Not used, (reserved). This bit is set to “1” all the time.
Bit 5, 4, 3, & Bit 2 (C3, C2, C1, C0): Calibrator of internal RC mode
C3, C2, C1, and C0 must be set to “1” only (auto-calibration).
Bit 1 & Bit 0 (RCM1, RCM0): RC mode selection bits
70 •
RCM 1
RCM 0
Frequency (MHz)
1
1
4 (Default)
1
0
16
0
1
1
0
0
455kHz
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
EM78P142
8-Bit Microprocessor with OTP ROM
6.12.3 Customer ID Register (Word 2)
Word 2
Bit
Bit 12 Bit 11 Bit 10 Bit 9
Bit 8
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
Mne
monic
–
–
–
NRM
RESET
ENB
–
WDTPS
ID5
ID4
ID3
ID2
ID1
ID0
1
–
–
–
MOD1
P71
–
18ms
High
High
High
High
High
High
0
–
–
–
MOD2 /RESET
–
4.5ms
Low
Low
Low
Low
Low
Low
Bits 12 ~ 11:
Not used (reserved). These bits are set to “1” all the time.
Bit 10:
Not used, (reserved). This bit is set to “0” all the time.
Bit 9 (NRM):
0 = Noise reject Mode 2,
For multi-time circuit use, such as key scan and LED output.
1 = Noise reject Mode 1. For General input or output use
(Default)
Bit 8 (RESETENB): RESET/P71 pin select bit
0 = P71 set to /RESET pin
1 = P71 is general purpose input pin or open-drain for output
Port (default)
Bit 7:
Not used (reserved). This bit is set to “1” all the time.
Bit 6 (WDTPS):
WDT Time-out Period Selection bit
WDT Time
Watchdog Timer*
1
18 ms (Default)
0
4.5 ms
*Theoretical values, for reference only
Bits 5 ~ 0:
Customer’s ID code
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
• 71
EM78P142
8-Bit Microprocessor with OTP ROM
6.13 Low Voltage Detector/Low Voltage Reset
The low voltage reset (LVR) and the low voltage detector (LVD) are designed for
unstable power situation, such as external power noise interference or in EMS test
condition.
When LVR is enabled, the system supply voltage (Vdd) drops below Vdd reset level
(VRESET) and remains at 10µs, the system reset will occur and the system will keep on
reset status. The system will remain at reset status until Vdd voltage rises above Vdd
release level. Refer to Figure 6-26.
If Vdd drops below low voltage detector level, /LVD (the Bit 7 of RE) is cleared to “0’ to
show low voltage signal when LVD is enabled. This signal can be used for low voltage
detection.
6.13.1 Low Voltage Reset
LVR property is set at Bits 12, 11 of Code Option Word 0. The detailed operation mode
is as follows:
Word 0
Bit 12 Bit 11 Bit 10 Bit 9
Bit 8
Bit 7
Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1
LVR1 LVR0 TYPE1 TYPE0 CLKS ENWDTB OSC2 OSC1 OSC0
−
Bit 0
Protect
Bits 12~11 (LVR1 ~ LVR0): Low Voltage Reset enable bits.
LVR1, LVR0
VDD Reset Level
VDD Release Level
11
10
01
NA (Power-on Reset)
2.4V
3.5V
2.6V
3.7V
00
4.0V
4.2V
6.13.2 Low Voltage Detector
LVD property is set at the register, detailed operation mode is as follows:
6.13.2.1 IOCD1 (LVD Control Register)
Bit
EM78P142
ICE341N
7
6
5
4
-
-
-
-
LVR1
LVR0
TYPE1 TYPE0
3
2
1
0
LVDIE LVDEN
LVD1
LVD0
LVDIE LVDEN
LVD1
LVD0
NOTE
■ IOCD1< 3 > register is both readable and writable
■ Individual interrupt is enabled by setting its associated control bit in the IOCD1< 4 >
to "1."
■ Global interrupt is enabled by the ENI instruction and is disabled by the DISI
instruction. Refer to Figure 6-8 (Interrupt Input Circuit) under Section 6.6 (Interrupt).
72 •
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
EM78P142
8-Bit Microprocessor with OTP ROM
Bit 3 (LVDIE): Low voltage Detector interrupt enable bit.
0 = Disable Low voltage Detector interrupt
1 = Enable Low voltage Detector interrupt
When the detect-low-level-voltage state is used to enter an interrupt
vector or enter next instruction, the LVDIE bit must be set to “Enable“.
Bit 2 (LVDEN): Low Voltage Detector Enable bit
0 = Low voltage detector disable
1 = Low voltage detector enable
Bits 1~0 (LVD1:0): Low Voltage Detector level bits.
LVDEN
LVD1, LVD0
1
11
1
10
1
01
1
00
0
××
LVD voltage Interrupt Level
Vdd ≤ 2.2V
Vdd > 2.2V
Vdd ≤ 3.3V
Vdd > 3.3V
Vdd ≤ 4.0V
Vdd > 4.0V
Vdd ≤ 4.5V
Vdd > 4.5V
NA
/LVD
0
1
0
1
0
1
0
1
0
6.13.2.2 RE (Interrupt Status 2 & Wake-up Control Register)
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
/LVD
LVDIF
ADIF
“0”
ADWE
“0”
ICWE
LVDWE
NOTE
■ RE < 6, 5 > can be cleared by instruction but cannot be set.
■ IOCE0 is the interrupt mask register.
■ Reading RE will result to "logic AND" of RE and IOCE0.
Bit 7 (/LVD):
Low voltage Detector state. This is a read only bit. When the VDD pin
voltage is lower than LVD voltage interrupt level (selected by LVD1 and
LVD0), this bit will be cleared.
0 = Low voltage is detected.
1 = Low voltage is not detected or LVD function is disabled.
Bit 6 (LVDIF): Low Voltage Detector interrupt flag
LVDIF reset to “0” by software or hardware.
Bit 0 (LVDWE): Low Voltage Detect wake-up enable bit.
0 = Disable Low Voltage Detect wake-up.
1 = Enable Low Voltage Detect wake-up.
When the Low Voltage Detect is used to enter an interrupt vector or to
wake up the IC from sleep/idle with Low Voltage Detect running, the
LVDWE bit must be set to “Enable“.
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
• 73
EM78P142
8-Bit Microprocessor with OTP ROM
6.13.3 Programming Process
Follow these steps to obtain data from the LVD:
1. Write to the two bits (LVD1: LVD0) on the LVDCR register to define the LVD level.
2. Set the LVDWE bit, if the wake-up function is employed.
3. Set the LVDIE bit, if the interrupt function is employed.
4. Write “ENI” instruction, if the interrupt function is employed.
5. Set LVDEN bit to 1
6. Write “SLEP” instruction or Polling /LVD bit.
7. Clear the low voltage detector interrupt flag bit (LVDIF) when Low Voltage Detector
interrupt occurred.
The LVD module uses the internal circuit. When LVDEN (Bit 2 of IOCD1) is set to “1”,
the LVD module is enabled.
When LVDWE (bit 0 of RE) is set to “1”, the LVD module will continue to operate during
sleep/idle mode. If Vdd drops slowly and crosses the detect point (VLVD), the LVDIF
(Bit 6 of RE) will be set to ”1”, the /LVD (Bit 7 of RE) will be cleared to “0”, and the
system will wake up from Sleep/Idle mode. When a system reset occurs, the LVDIF will
be cleared.
When Vdd remains above VLVD, LVDIF is kept at “0” and /LVD is kept at “1”. When
Vdd drops below VLVD, LVDIF is set to “1” and /LVD is kept at “0”. If ENI instruction is
executed, LVDIF will be set to “1”, and the next instruction will branch to interrupt Vector
021H. The LVDIF is cleared to “0” by software. Refer Figure 6-24 below.
LVDIF is cleared by
software
Vdd
VLVD
VRESET
LVDIF
Internal
Reset
<LVR Voltage drop
>LVR Voltage drop
Vdd < Vreset not longer than 10us, the system still keeps on operating
18ms
System occur reset
Figure 6-22 LVD/LVR Waveform Situation
74 •
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
EM78P142
8-Bit Microprocessor with OTP ROM
6.14 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 two oscillator time periods), unless the program
counter is changed by instructions "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 addition, the instruction set has the following features:
1. Every bit of any register can be set, cleared, or tested directly.
2. The I/O registers can be regarded as general registers. That is, the same
instruction can operate on I/O registers.
The following symbols are used in the Instruction Set table:
Convention:
R = Register designator that specifies which one of the registers (including operation and general purpose
registers) is to be utilized by the instruction.
Bits 6 and 7 in R4 determine the selected register bank.
b = Bit field designator that selects the value for the bit located in the register R and which affects the
operation.
k = 8 or 10-bit constant or literal value
Binary Instruction
0
0
0
0
0
0
0
0
0
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0001
0001
0001
0000
0001
0010
0011
0100
rrrr
0000
0001
0010
Hex
0000
0001
0002
0003
0004
000r
0010
0011
0012
Mnemonic
NOP
DAA
CONTW
SLEP
WDTC
IOW R
ENI
DISI
RET
0 0000 0001 0011 0013
RETI
0
0
0
0
0
0
0
0
0
0
0
CONTR
IOR R
MOV R,A
CLRA
CLR R
SUB A,R
SUB R,A
DECA R
DEC R
OR A,R
OR R,A
0000
0000
0000
0000
0000
0001
0001
0001
0001
0010
0010
0001
0001
01rr
1000
11rr
00rr
01rr
10rr
11rr
00rr
01rr
0100
rrrr
rrrr
0000
rrrr
rrrr
rrrr
rrrr
rrrr
rrrr
rrrr
0014
001r
00rr
0080
00rr
01rr
01rr
01rr
01rr
02rr
02rr
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
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
0→R
R-A → A
R-A → R
R-1 → A
R-1 → R
A ∨ VR → A
A ∨ VR → R
Status Affected
None
C
None
T, P
T, P
1
None
None
None
None
None
None
1
None
None
Z
Z
Z, C, DC
Z, C, DC
Z
Z
Z
Z
• 75
EM78P142
8-Bit Microprocessor with OTP ROM
Binary Instruction
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0010
0010
0011
0011
0011
0011
0100
0100
0100
0100
0101
0101
0101
0101
Mnemonic
Operation
Status Affected
Z
Z
Z
Z
Z, C, DC
Z, C, DC
Z
Z
Z
Z
Z
Z
None
None
JMP k
MOV A,k
OR A,k
AND A,k
XOR A,k
RETL k
SUB A,k
BANK k
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
k →R4(6)
1EAK
LCALL k
PC+1→[SP], k→PC
None
1EBK
LJMP k
k→PC
None
02rr
02rr
03rr
03rr
03rr
03rr
04rr
04rr
04rr
04rr
05rr
05rr
05rr
05rr
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
07rr
07rr
07rr
0xxx
0xxx
0xxx
0xxx
SWAP R
JZA R
JZ R
BC R,b
BS R,b
JBC R,b
JBS R,b
1 00kk kkkk kkkk
1kkk
CALL k
1 01kk kkkk kkkk
1 1000 kkkk kkkk
1 1001 kkkk kkkk
1 1010 kkkk kkkk
1 1011 kkkk kkkk
1 1100 kkkk kkkk
1 1101 kkkk kkkk
1 1110 1001 000k
1 1110 1010 kkkk
k kkkk kkkk kkkk
1 1110 1011 kkkk
k kkkk kkkk kkkk
1kkk
18kk
19kk
1Akk
1Bkk
1Ckk
1Dkk
1E9k
Note:
1
2
3
76 •
Hex
rrrr
rrrr
rrrr
rrrr
rrrr
rrrr
rrrr
rrrr
rrrr
rrrr
rrrr
rrrr
rrrr
rrrr
0111
0111
0111
100b
101b
110b
111b
10rr
11rr
00rr
01rr
10rr
11rr
00rr
01rr
10rr
11rr
00rr
01rr
10rr
11rr
01rr
10rr
11rr
bbrr
bbrr
bbrr
bbrr
rrrr
rrrr
rrrr
rrrr
rrrr
rrrr
rrrr
C
C
C
C
None
None
None
None
2
None
3
None
None
None
None
None
None
Z
Z
Z
None
Z, C, DC
None
This instruction is applicable to IOC50~IOCF0, IOC51 ~ IOCF1 only.
This instruction is not recommended for RF operation.
This instruction cannot operate under RF.
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
EM78P142
8-Bit Microprocessor with OTP ROM
7
Absolute Maximum Ratings
Items
8
Rating
Temperature under bias
-40°C
to
85°C
Storage temperature
-65°C
to
150°C
Input voltage
Vss-0.3V
to
Vdd+0.5V
Output voltage
Vss-0.3V
to
Vdd+0.5V
Working Voltage
2.3V
to
5.5V
Working Frequency
DC
to
16MHz
DC Electrical Characteristics
Ta= 25°C, VDD= 5.0V, VSS= 0V
Symbol
Parameter
Condition
Min.
Typ.
Max.
Unit
32.768k
4
16
MHz
FXT
Crystal: VDD to 5V
Two cycle with two clocks
ERC
ERC: VDD to 5V
R: 5.1KΩ, C: 100 pF
760
950
1140
kHz
VIHRC
Input High Threshold
Voltage (Schmitt Trigger)
OSCI in RC mode
3.9
4
4.1
V
IERC1
Sink current
VI from low to high, VI=5V
21
22
23
mA
VILRC
Input Low Threshold
Voltage (Schmitt Trigger)
OSCI in RC mode
1.7
1.8
1.9
V
IERC2
Sink current
VI from high to low, VI=2V
16
17
18
mA
IIL
Input Leakage Current for
VIN = VDD, VSS
input pins
-1
0
1
µA
VIH1
Input High Voltage
(Schmitt Trigger)
Ports 5, 6, 7
0.7Vdd
−
Vdd+0.3V
V
VIL1
Input Low Voltage
(Schmitt Trigger )
Ports 5, 6, 7
-0.3V
−
0.3Vdd
V
VIHT1
Input High Threshold
Voltage (Schmitt Trigger)
/RESET
0.7Vdd
−
Vdd+0.3V
V
VILT1
Input Low Threshold
Voltage (Schmitt trigger)
/RESET
-0.3V
−
0.3Vdd
V
VIHT2
Input High Threshold
Voltage (Schmitt Trigger)
TCC,INT
0.7Vdd
−
Vdd+0.3V
V
VILT2
Input Low Threshold
Voltage (Schmitt Trigger)
TCC,INT
-0.3V
−
0.3Vdd
V
VIHX1
Clock Input High Voltage
OSCI in crystal mode
2.9
3.0
3.1
V
VILX1
Clock Input Low Voltage
OSCI in crystal mode
1.7
1.8
1.9
V
IOH1
Output High Voltage
(Ports 5, 6, 7)
VOH = 0.9VDD
−
-10
−
mA
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
• 77
EM78P142
8-Bit Microprocessor with OTP ROM
Symbol
Parameter
Condition
Min.
Typ.
Max.
Unit
−
20
−
mA
IOL1
Output Low Voltage
(Ports 5, 6,7)
VOL = 0.1VDD
IPH
Pull-high current
Pull-high active, input pin at VSS
-50
−
-90
µA
IPL
Pull-low current
Pull-low active, input pin at Vdd
20
−
60
µA
ISB1
Power down current
All input and I/O pins at VDD,
output pin floating, WDT disabled
−
−
2.0
µA
ISB2
Power down current
All input and I/O pins at VDD,
output pin floating, WDT enabled
−
−
10
µA
/RESET= 'High', Fosc=32kHz
(Crystal type, CLKS="0"),
Output pin floating, WDT disabled
−
15
20
µA
/RESET= 'High', Fosc=32kHz
(Crystal type,CLKS="0"), output
pin floating, WDT enabled
−
15
25
µA
/RESET= 'High', Fosc=4MHz
(Crystal type, CLKS="0"), output
pin floating, WDT enabled
−
1.5
1.7
mA
/RESET= 'High', Fosc=10MHz
(Crystal type, CLKS="0"),
Output pin floating, WDT enabled
−
2.8
3.0
mA
ICC1
ICC2
ICC3
ICC4
Operating supply current
at two clocks
Operating supply current
at two clocks
Operating supply current
at two clocks
Operating supply current
at two clocks
Note: 1. These parameters are hypothetical (not tested) and are provided for design reference use only.
2. Data under minimum, typical, & maximum (Min, Typ, & Max) columns are based on hypothetical results at 25°C.
These data are for design reference only.
Internal RC Electrical Characteristics (Ta=25°C, VDD=5 V, VSS=0V)
Internal RC
Drift Rate
Temperature
Voltage
Min.
Typ.
Max.
4 MHz
25°C
5V
3.84 MHz
4 MHz
4.16 MHz
16 MHz
25°C
5V
15.36 MHz
16 MHz
16.64 MHz
1 MHz
25°C
5V
0.96 MHz
1 MHz
1.04 MHz
455kHz
25°C
5V
436.8kHz
455kHz
473.2kHz
Internal RC Electrical Characteristics (Ta=-40 ~85°C, VDD=2.2~5.5 V, VSS=0V)
Drift Rate
Internal RC
78 •
Temperature
Voltage
Min.
Typ.
Max.
4 MHz
-40°C ~85°C
2.2V~5.5V
3.44 MHz
4 MHz
4.56 MHz
16 MHz
-40°C ~85°C
2.2V~5.5V
13.76 MHz
16 MHz
18.24 MHz
1 MHz
-40°C ~85°C
2.2V~5.5V
0.86 MHz
1 MHz
1.14 MHz
455kHz
-40°C ~85°C
2.2V~5.5V
391.3kHz
455kHz
518.7kHz
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
EM78P142
8-Bit Microprocessor with OTP ROM
8.1 AD Converter Characteristic
Vdd=2.5V to 5.5V, Vss=0V, Ta=-40 to 85°C
Symbol
VAREF
Parameter
Analog reference voltage
Condition
VAREF - VASS ≥ 2.5V
Min.
Typ.
Max.
Unit
2.5
−
Vdd
V
Vss
−
Vss
V
Analog input voltage
−
VASS
−
VAREF
V
Analog supply current
VDD=VAREF=5.0V, VASS = 0.0V
(V reference from Vdd)
750
850
1000
µA
-10
0
+10
µA
Analog supply current
VDD=VAREF=5.0V, VASS = 0.0V
(V reference from VREF)
500
600
820
µA
200
250
300
µA
IOP
OP current
VDD=5.0V, OP used
Output voltage swing from 0.2V
to 4.8V
450
550
650
µA
RN1
Resolution
ADREF=0, Internal VDD
VDD=5.0V, VSS = 0.0V
−
9
−10
Bits
RN2
Resolution
−
11
12
Bits
VASS
VAI
IAI1
IAI2
Ivdd
Ivref
Ivdd
IVref
ADREF=1, External VREF
VDD=VREF=5.0V, VSS = 0.0V
LN1
Linearity error
VDD = 2.5 to 5.5V Ta=25°C
0
±4
±8
LSB
LN2
Linearity error
VDD= 2.5 to 5.5V Ta=25°C
0
±2
±4
LSB
DNL
Differential nonlinear error
VDD = 2.5 to 5.5V Ta=25°C
0
±0.5
±0.9
LSB
FSE1
Full scale error
VDD=VAREF=5.0V, VASS = 0.0V
±0
±4
±8
LSB
FSE2
Full scale error
VDD=VREF=5.0V, VSS = 0.0V
±0
±2
±4
LSB
OE
Offset error
VDD=VAREF=5.0V, VASS = 0.0V
±0
±2
±4
LSB
ZAI
Recommended impedance of
analog voltage source
−
0
8
10
KΩ
TAD
ADC clock duration
VDD=VAREF=5.0V, VASS = 0.0V
4
−
−
µs
TCN
AD conversion time
VDD=VAREF=5.0V, VASS = 0.0V
15
−
15
TAD
ADIV
ADC OP input voltage range
VDD=VAREF=5.0V, VASS = 0.0V
0
−
VAREF
V
ADOV
ADC OP output voltage swing
VDD=VAREF=5.0V, VASS =0.0V,
RL=10KΩ
0
0.2
0.3
4.7
4.8
5
ADSR
ADC OP slew rate
VDD=VAREF=5.0V, VASS = 0.0V
0.1
0.3
−
V/µs
Power Supply Rejection
VDD=5.0V±0.5V
±0
−
±2
LSB
PSR
V
Note: 1. These parameters are hypothetical (not tested) and are provided for design reference use only.
2. There is no current consumption when ADC is off other than minor leakage current.
3. AD conversion result will not decrease when an increase of input voltage and no missing code will result.
4. These parameters are subject to change without further notice.
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
• 79
EM78P142
8-Bit Microprocessor with OTP ROM
8.2 Device Characteristics
The graphs below were derived based on a limited number of samples and they are
provided for reference only. Hence, the device characteristic shown herein cannot be
guaranteed as fully accurate. In these graphs, the data may be out of the specified
operating warranted range.
IRC OSC Frequency (VDD=3V)
9
Frequency (MHz) .
8
7
6
5
4
3
2
1
0
-40
-20
0
25
70
50
85
Temperature oC
Figure 8-1 Internal RC OSC Frequency vs. Temperature, VDD=3V
IRC OSC Frequency (VDD=5V)
10
Frequency (M Hz) .
9
8
7
6
5
4
3
2
1
0
-40
-20
0
25
50
70
85
Temperature (℃)
Figure 8-2 Internal RC OSC Frequency vs. Temperature, VDD=5V
80 •
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
EM78P142
8-Bit Microprocessor with OTP ROM
9
AC Electrical Characteristic
Ta=-40 to 85°C, VDD=5V±5%, VSS=0V
Symbol
Parameter
Conditions
Min
Type
Max
Unit
–
45
50
55
%
Crystal type
100
–
DC
ns
RC type
500
–
DC
ns
(Tins+20)/N*
–
–
ns
Dclk
Input CLK duty cycle
Tins
Instruction cycle time
(CLKS="0")
Ttcc
TCC input time period
Tdrh
Device reset hold time
Ta = 25°C
11.3
16.2
21.6
ms
Trst
/RESET pulse width
Ta = 25°C
2000
–
–
ns
Twdt
Watchdog timer duration
Ta = 25°C
11.3
16.2
21.6
ms
Tset
Input pin setup time
–
–
0
–
ns
Thold
Input pin hold time
–
15
20
25
ns
Tdelay
Output pin delay time
Cload = 20 pF
45
50
55
ns
Tdrc
ERC delay time
Ta = 25°C
1
3
5
ns
–
Note:1. *N = selected prescaler ratio
2. Twdt1: The Option Word 1 (WDTPS) is used to define the oscillator set-up time. WDT timeout
length is the same as set-up time (18ms).
3. Twdt2: The Option Word 1 (WDTPS) is used to define the oscillator set-up time. WDT timeout
length is the same as set-up time (4.5ms).
4. These parameters are hypothetical (not tested) and are provided for design reference only.
5. Data under Minimum, Typical, and Maximum (Min, Typ, and Max) columns are based on
hypothetical results at 25°C. These data are for design reference use only.
6. The Watchdog timer duration is determined by code option Word1 (WDTPS).
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
• 81
EM78P142
8-Bit Microprocessor with OTP ROM
10 Timing Diagrams
AC Test Input/Output Waveform
VDD-0.5V
0.75VDD
0.75VDD
0.25VDD
0.25VDD
TEST POINTS
GND+0.5V
AC Testing : Input is driven at VDD-0.5V for logic "1",and GND+0.5V for logic "0".Timing
measurements are made at 0.75VDD for logic "1",and 0.25VDD for logic "0".
RESET Timing (CLK="0")
NOP
Instruction 1
Executed
CLK
/RESET
Tdrh
TCC Input Timing (CLKS="0")
Tins
CLK
TCC
Ttcc
82 •
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
EM78P142
8-Bit Microprocessor with OTP ROM
APPENDIX
A Package Type
OTP MCU
Package Type
Pin Count
Package Size
SSOP
10
150 mil
EM78P142SS10J/S
Green products do not contain hazardous substances.
The third edition of Sony SS-00259 standard.
Pb contents should be less the 100ppm
Pb contents comply with Sony specs.
Part No.
EM78P142xJ/xS
Electroplate type
Pure Tin
Ingredient (%)
Sn: 100%
Melting point (°C)
232°C
Electrical resistivity
(µΩ-cm)
11.4
Hardness (hv)
8~10
Elongation (%)
>50%
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
• 83
EM78P142
8-Bit Microprocessor with OTP ROM
B Packaging Configuration
B.1 EM78P142SS10
Symbal
A
A1
A2
D
E
E1
b
b1
c
c1
L
e
θ
Min
1.35
0.075
1.18
4.7
5.8
3.7
0.406
0.406
0.178
0.178
0.55
0°
Normal
1.55
0.175
1.38
4.9
6.0
3.9
0.65
1.00TYP
-
Max
1.75
0.275
1.58
5.1
6.2
4.1
0.496
0.456
0.278
0.228
0.75
7°
TITLE:
SSOP 10L (150MIL)PACKAGE
OUTLINE DIMENSION
File :
Edtion: A
SSOP 10 L
Unit : mm
Scale: Free
Material:
Sheet:1 of 1
Figure B-1 EM78P142 10-pin SSOP Package Type
84 •
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
EM78P142
8-Bit Microprocessor with OTP ROM
C Quality Assurance and Reliability
Test Category
Solderability
Test Conditions
Remarks
Solder temperature=245 ± 5°C, for 5 seconds up to the
stopper using a rosin-type flux
−
Step 1: TCT, 65°C (15mins)~150°C (15mins), 10 cycles
Step 2: Bake at 125°C, TD (durance)=24 hrs
Step 3: Soak at 30°C /60% , TD (durance)=192 hrs
Pre-condition
Step 4: IR flow 3 cycles
(Pkg thickness ≥ 2.5mm or
3
Pkg volume ≥ 350mm ----225 ± 5°C)
For SMD IC (such as
SOP, QFP, SOJ, etc)
(Pkg thickness ≤ 2.5mm or
3
Pkg volume ≤ 350mm ----240 ± 5°C )
Temperature cycle test
-65° (15mins)~150°C (15mins), 200 cycles
−
Pressure cooker test
TA =121°C, RH=100%, pressure=2 atm,
TD (durance) = 96 hrs
−
High temperature /
High humidity test
TA=85°C , RH=85% , TD (durance)=168 , 500 hrs
−
High-temperature
storage life
TA=150°C, TD (durance)=500, 1000 hrs
−
High-temperature
operating life
TA=125°C, VCC=Max. operating voltage,
TD (durance) =168, 500, 1000 hrs
−
Latch-up
TA=25°C, VCC=Max. operating voltage, 150mA/20V
−
ESD (HBM)
TA=25°C, ≥ | ± 3KV |
IP_ND,OP_ND,IO_ND
IP_NS,OP_NS,IO_NS
IP_PD,OP_PD,IO_PD,
ESD (MM)
TA=25°C, ≥ | ± 300V |
IP_PS,OP_PS,IO_PS,
VDD-VSS(+),VDD_VSS
(-)mode
C.1 Address Trap Detect
An address trap detect is one of the MCU embedded fail-safe functions that detects
MCU malfunction caused by noise or the like. Whenever the MCU attempts to fetch an
instruction from a certain section of ROM, an internal recovery circuit is auto started. If
a noise-caused address error is detected, the MCU will repeat execution of the
program until the noise is eliminated. The MCU will then continue to execute the next
program.
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
• 85
EM78P142
8-Bit Microprocessor with OTP ROM
D How to Use the ICE 341N
ICE 341 for EM78P142
W1
W1
P55/OSCI Pin Select
OSCI P55
I/O Port (P55)
OSCI P55
Crystal, ERC (OSCI)
Oscillator IRC Modes select I/O Port (P55)
Oscillator Crystal, ERC Modes select Crystal (OSCI)
86 •
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
EM78P142
8-Bit Microprocessor with OTP ROM
JP3
2
20
P56
P52
P53
P54
RESE
T/P71
GND
P60
P61
P62
P63
P57
P51
P50
P55
P70
VDD
P67
P66
P65
P64
1
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
19
• 87
EM78P142
8-Bit Microprocessor with OTP ROM
DIP IDC PLUG
1
1
10
P56
P57
P52
P51
P53
P50
P54
P55
RESE
T/P71
P70
GND
VDD
P60
P67
P61
P66
P62
P65
P63
P64
20
20
11
DIP IDC PLUG
10
88 •
11
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
EM78P142
8-Bit Microprocessor with OTP ROM
E
Comparison between V-Package and U-Package Version
This microcontroller device is comprised of the older V-package version and the newer
U-package version. In the newer U-package version, a Code Option NRM is added
and various features such as Crystal mode Operating frequency range and IRC mode
wake-up time from sleep mode to normal mode, have been modified to favorably meet
users’ requirements. The following table is provided for quick comparison between the
two package version and for user convenience in the choice of the most suitable
product for their application.
Item
EM78P142-V
EM78P142-U
Level Voltage Reset
4.0V, 3.5V, 2.7V
4.0V, 3.5V, 2.4V
Crystal mode
Operating frequency range
at 0°C~ 70°C
DC ~ 12 MHz, 4.5V
DC ~ 16 MHz, 4.5V
DC ~ 8 MHz, 3.0V
DC ~ 8 MHz, 3.0V
DC ~ 4 MHz, 2.1V
DC ~ 4 MHz, 2.1V
IRC mode wake-up time
( Sleep → Normal )
80µs
10µs
Condition: 5V, 4 MHz
Code Option
EM78P142-V Package
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)
×
Added a Code Option NRM
EM78P142-U Package
• 89
EM78P142
8-Bit Microprocessor with OTP ROM
90 •
Product Specification (V1.0) 01.25.2008
(This specification is subject to change without further notice)