EM78447S

EM78447S
8位
OTP ROM微控制器
微控制器
产品规格书
版本 1.2
义隆电子股份有限公司
2010.2
商标告知:
IBM 为一个注册商标,PS/2 是 IBM 的商标之一。
Windows 是微软公司的商标。
ELAN 和 ELAN 标志
是义隆电子股份有限公司的商标。
版权所有 © 2014 义隆电子股份有限公司
所有权利保留
台湾印制
本使用说明文件内容如有变动恕不另作通知。关于该规格书的准确性、适当性或者完整性,义隆电子股
份有限公司不承担任何责任。义隆电子股份有限公司不承诺对本使用说明文件之内容及信息有更新及校
正之义务。本规格书的内容及信息将为符合确认之指示而变更。
在任何情况下,义隆电子股份有限公司对本使用说明文件中的信息或内容的错误、遗漏,或者其它不准
确性不承担任何责任。由于使用本使用说明文件中的信息或内容而导致的直接,间接,特别附随的或结
果的损害,义隆电子股份有限公司没有义务负责。
本规格书中提到的软件(如果有),都是依据授权或保密合约所合法提供的,并且只能在这些合约的许
可条件下使用或者复制。
义隆电子股份有限公司的产品不是专门设计来应用于生命维持的用具,装置或者系统。义隆电子股份有
限公司的产品不支持而且禁止在这些方面的应用。
未经义隆电子股份有限公司书面同意,任何个人或公司不得以任何形式或方式对本使用说明文件的内容
之任一部分进行复制或传输。
义隆电子股份有限公司
总公司:
总公司
地址:台湾新竹科学园区
创新一路 12 号
电话:+886 3 563-9977
传真:+886 3 563-9966
[email protected]
http://www.emc.com.tw
香港分公司:
香港分公司
USA:
义隆电子(
义隆电子(香港)
香港)有限公司
九龙观塘巧明街 95 号世达中心
19 楼 A 室
电话:+852 2723-3376
传真:+852 2723-7780
[email protected]
Elan Information
Technology Group (USA)
深圳分公司:
深圳分公司
上海分公司:
上海分公司
义隆电子(
义隆电子(深圳)
深圳)有限公司
深圳市南山区高新技术产业园南
区高新南六道迈科龙大厦 8A
邮编:518057
电话:+86 755 2601-0565
传真:+86 755 2601-0500
义隆电子(
义隆电子(上海)
上海)有限公司
地址:上海市浦东新区张江高
科碧波路 5 号科苑大楼 6 楼
邮编:201203
电话:+86 21 5080-3866
传真:+86 21 5080-0273
[email protected]
[email protected]
P.O. Box 601
Cupertino, CA 95015
USA
Tel: +1 408 366-8225
Fax:+1 408 366-8225
目录
目录
1 概述........................................................................................................................
1
概述
2 功能特点 ................................................................................................................ 1
3 引脚分配 ................................................................................................................ 2
3.1 EM78447S 各种引脚分配........................................................................................ 2
3.2 EM78447SAP 和 EM78447SAM 引脚描述 .............................................................. 3
3.3 EM78447SAS 引脚描述........................................................................................... 3
3.4 EM78447SBP 和 EM78447SBWM 引脚描述 ........................................................... 4
4 功能描述 ................................................................................................................ 5
4.1 操作寄存器............................................................................................................ 5
4.1.1
4.1.2
4.1.3
4.1.4
4.1.5
4.1.6
4.1.7
4.1.8
R0 (间接寻址寄存器)................................................................................................... 5
R1 (定时器 /计数器) .................................................................................................... 5
R2(程序计数器)和堆栈 ................................................................................................ 6
R3 (状态寄存器) .......................................................................................................... 8
R4 (RAM 选择寄存器) ................................................................................................. 8
R5~R7 (Port 5 ~ Port 7) .............................................................................................. 8
R8~R1F 和 R20~R3E (通用寄存器)............................................................................ 9
R3F(中断状态寄存器).................................................................................................. 9
4.2 特殊功能寄存器 ....................................................................................................... 9
4.2.1
4.2.2
4.2.3
4.2.4
4.2.5
4.2.6
A (累加器) ................................................................................................................... 9
CONT (控制寄存器) .................................................................................................... 9
IOC5 ~ IOC7 (I/O 口控制寄存器) .............................................................................. 10
IOCB (P6 口唤醒控制寄存器).................................................................................... 10
IOCE (WDT 控制寄存器 ).......................................................................................... 11
IOCF (中断屏蔽寄存器 )............................................................................................ 12
4.3 TCC/WDT 和预分频器 ........................................................................................... 13
4.4 I/O 端口 ................................................................................................................. 14
4.5 复位和唤醒 ............................................................................................................ 15
4.5.1 复位 ........................................................................................................................... 15
4.5.2 状态寄存器的 RST, T, 和 P 的状态 ........................................................................... 19
4.6 中断....................................................................................................................... 20
4.7 振荡器 ................................................................................................................... 21
4.7.1 振荡模式.................................................................................................................... 21
4.7.2 晶体振荡器/陶瓷谐振器(晶体) ................................................................................... 22
4.7.3 外部 RC 振荡模式 ..................................................................................................... 23
4.8 代码选项寄存器 ..................................................................................................... 25
4.9 上电参考................................................................................................................ 26
4.9.1 外部上电复位电路 ..................................................................................................... 26
4.9.2 残留电压保护 ............................................................................................................ 27
4.10 指令集.................................................................................................................. 28
4.10.1
EM78447S 指令集表格 ........................................................................................... 29
版本号 (V1.2) 02.04.2010
iii
目录
5 时序图 .................................................................................................................. 31
6 最大绝对值...........................................................................................................
最大绝对值
32
7 电气特性 .............................................................................................................. 32
7.1 直流电气特性......................................................................................................... 32
7.2 交流电气特性......................................................................................................... 33
附录
附录 ........................................................................................................................... 34
A 封装类型 .............................................................................................................. 34
A.1 封装材料说明........................................................................................................ 34
B 封装信息 .............................................................................................................. 35
B.1 28-引脚塑封双列直插封装(DIP) - 600 mil ............................................................ 35
B.2 32-引脚塑封双列直插封装(DIP) - 600 mil ............................................................ 35
B.3 28-引脚塑封小外型封装(SOP) - 300 mil .............................................................. 36
B.4 32-引脚塑封小外型封装(SOP) - 450 mil .............................................................. 37
B.5 28-引脚塑封缩小外形封装 (SSOP) - 209 mil ....................................................... 38
iv •
版本号 (V1.2) 02.04.2010
目录
版本号 (V1.2) 02.04.2010
v
目录
规格修订历史
Doc.版本
版本
修订描述
1.0
初始版本
1.1
修改上电复位内容
1.2
2. 修改了对 SLEEP2 的模式的描述
日期
2003/06/25
1.修改温度
2010/02/04
3. 增加了封装配置制图
vi •
版本号 (V1.2) 02.04.2010
EM78447S
8位
位OTP微控制器
微控制器
1
概述
EM78447S是采用低功耗高速CMOS工艺设计开发的高抗杂性的8位单片机。一个简单
的芯片包含有看门狗(WDT),RAM,ROM和实时时钟定时/计数器。外部中断,省
电模式,和标准I/O口。
2
功能特点
工作电压范围:
:
● 2.3V ~ 5.5V
基于 0°C ~ 70°C
● 2.5V ~ 5.5V
基于 –20°C ~ 70°C
工作频率范围(2CLKS):
● 晶振模式:
:
DC ~ 20MHz @ 5V
DC ~ 8MHz @ 3V
DC ~ 4MHz @ 2.3V
5级堆栈用于子程序嵌套
8位可以选择时钟源,边沿触发和溢出中断的实
时时钟/计数器
指令周期为2个时钟周期
省电(休眠)模式
2个有效中断源
● RC模式:
:
DC ~ 4MHz @ 5V
DC ~ 4MHz @ 3V
DC ~ 4MHz @ 2.3V
•
TCC 溢出中断
•
外部中断(/INT)
可编程的自由运行看门狗定时器
10个可编程上拉引脚
2个可编程漏极开路引脚
● 5V/4MHz工作条件下功耗低于2.2mA
2个可编程R-Option引脚
● 3V/32KHz工作条件下功耗典型值30 µA
封装类型:
:
• 28 引脚DIP 600mil:
:
EM78447SAP
• 28 引脚SOP(SOIC) 300mil:
:
EM78447SAM
• 28 引脚SSOP 209mil:
EM78447SAS
:
低功耗:
:
● 休眠模式下功耗典型值 1 µA
4K×13 位片内ROM
一个配置寄存器适应用户的ID请求
148×8 位片内寄存器 (SRAM和通用寄存器)
• 32 引脚DIP 600mil:
:
EM78447SBP
• 32 引脚SOP(SOIC) 450mil:
:
EM78447SBWM
3 个双向 I/O端口
版本号 (V1.2) 02.04.2010
(产品更新后规格书不保证同步更新)
99.9%都是单指令周期命令
HXT和LXT之间频率临界点大约是400KHz
1
EM78447S
8位
位OTP微控制器
微控制器
3
引脚分配
EM78447S 各种引脚分配
3.1
EM78447SAP
EM78447SAM
EM78447SAS
EM78447SBP
EM78447SBWM
TCC
1
28
/RESET VSS
1
28
/RESET
P55
1
32
P56
VDD
2
27
OSCI
TCC
2
27
OSCI
P54
2
31
P57
NC
3
26
OSCO
VDD
3
26
OSCO
TCC
3
30
/RESET
VSS
4
25
P77
/INT
4
25
P77
VDD
4
29
OSCI
/INT
5
24
P76
P50
5
24
P76
NC
5
28
OSCO
P50
6
23
P75
P51
6
23
P75
VSS
6
27
P77
P51
7
22
P74
P52
7
22
P74
/INT
7
26
P76
P52
8
21
P73
P53
8
21
P73
P50
8
25
P75
P53
9
20
P72
P60
9
20
P72
P51
9
24
P74
P60
10
19
P71
P61
10
19
P71
P52
10
23
P73
P61
11
18
P70
P62
11
18
P70
P53
11
22
P72
P62
12
17
P67
P63
12
17
P67
P60
12
21
P71
P63
13
16
P66
P64
13
16
P66
P61
13
20
P70
P64
14
15
P65
VSS
14
15
P65
P62
14
19
P67
P63
15
18
P66
P64
16
17
P65
DIP
SOP
SOIC
SSOP
DIP
SOP
SOIC
图 3-1 引脚分配
2•
版本号(V1.2)
02.04.2010
版本号
(产品更新后规格书不保证同步更新)
EM78447S
8位
位OTP微控制器
微控制器
3.2
EM78447SAP 和 EM78447SAM 引脚描述
符号
3.3
引脚号
类型
功能
VDD
2
-
OSCI
27
I
OSCO
26
I/O
TCC
1
I
/RESET
28
I
P50~P53
6~9
I/O
P60~P67
10~17
I/O
P70~P77
18~25
I/O
/INT
5
I
下降沿触发的外部中断引脚
VSS
4
-
地
NC
3
-
未连接
电源
晶振类型:
晶振或外部时钟输入端
RC 类型:
RC 振荡器输入端
晶振类型:
晶振输出或外部时钟输入端
RC 类型:
指令时钟输出端
外部时钟信号输入
实时定时计数器(施密特触发)输入引脚,不用时必须与 VDD
或 VSS 连接
施密特触发器输入端,若该引脚保持低电平,其控制器也将保持
在复位状态.
4 位双向 I/O 引脚
8 位双向 I/O 引脚
都可由软件设为上拉
8 位双向 I/O 引脚
P74~P75 可由软件设为内部上拉
P76~P77 可由软件设为漏极开路
P70 和 P71 也可定义为 R-option 引脚
EM78447SAS 引脚描述
符号
引脚号
类型
VDD
3
-
OSCI
27
I
OSCO
26
I/O
TCC
2
I
/RESET
28
I
P50~P53
5~8
I/O
P60~P67
9~13,
15~17
I/O
功能
电源
晶振类型:
晶振或外部时钟输入端
RC 类型:
RC 振荡器输入端
晶振类型:
晶振输出或外部时钟输入端
RC 类型:
指令时钟输出端
外部时钟信号输入
实时定时计数器(施密特触发)输入引脚,不用时必须与 VDD
或 VSS 连接。
施密特触发器输入端,若该引脚保持低电平,其控制器也将保持
在复位状态.
4 位双向 I/O 引脚
8 位双向 I/O 引脚
都可由软件设为上拉
8 位双向 I/O 引脚
P70~P77 18~25
I/O
P74~P75 可由软件设为内部上拉
P76~P77 可由软件设为漏极开路
P70 和 P71 也可定义为 R-option 引脚
/INT
4
I
下降沿触发的外部中断引脚.
VSS
1, 14
-
地
版本号 (V1.2) 02.04.2010
(产品更新后规格书不保证同步更新)
3
EM78447S
8位
位OTP微控制器
微控制器
3.4
EM78447SBP 和 EM78447SBWM 引脚描述
符号
4•
引脚号 类型
功能
电源
VDD
4
-
OSCI
29
I
OSCO
28
I/O
TCC
3
I
/RESET
30
I
P50~P57
8~11,
2~1,
32~31
I/O
P60~P67
12~19
I/O
P70~P77
20~27
I/O
/INT
7
I
下降沿触发的外部中断引脚
VSS
6
-
地
NC
5
-
未连接
晶振类型:晶振或外部时钟输入端
RC 类型: RC 振荡器输入端
晶振类型:晶振输出或外部时钟输入端
RC 类型:指令时钟输出端
外部时钟信号输入
实时定时计数器(施密特触发)输入引脚,不用时必须与 VDD
或 VSS 连接
施密特触发器输入端,若该引脚保持低电平,其控制器也将保
持在复位状态
8 位双向 I/O 引脚.
8 位双向 I/O 引脚.
都可由软件设为上拉.
8 位双向 I/O 引脚:
P74~P75 可由软件设为上拉
P76~P77 可由软件设为漏极开路
P70 和 P71 也能定义为 R-option 引脚
版本号(V1.2)
02.04.2010
版本号
(产品更新后规格书不保证同步更新)
EM78447S
8位
位OTP微控制器
微控制器
4
OSCI
功能描述
/RESET
OSCO
看看看看时
程 WDT
TCC /INT
程序程程程
堆堆堆 1
振振程 /时序控控
堆堆堆 2
堆堆堆 3
预分预预
r
程序程程程
ROM
WDT
溢溢
中中
控控
指指
寄程程
R1(TCC)
休休
堆堆堆 4
堆堆堆 5
RAM
算算算算算
元
指指指指
R3
唤唤
控控
ACC
RAM 选选寄程程 R4
程数控控数数
IOC5
R5
IOC6
R6
PPPPPPPP
55555555
01234567
PPPPPPPP
66666666
01234567
IOC7
R7
PPPPPPPP
77777777
01234567
图 4-1 EM78447S 功能模块图
4.1 操作寄存器
4.1.1 R0 (间接寻址寄存器)
R0 并非实际存在的寄存器。它的主要功能是作为间接寻址指针。任何以R0为指针的指
令实际上是对RAM选择寄存器R4所指的数据进行操作。
4.1.2 R1 (定时器 /计数器)
由TCC引脚输入的外部信号边沿(由CONT-4:TE设定)或指令周期时钟触发加1。
与其它寄存器一样可读写
通过重置 PAB(CONT-3)来定义.
如果PAB 位(CONT-3)重置,可将预分频器分配给TCC。
只有当TCC寄存器写入值时,预分频器的内容才能被清零。
版本号 (V1.2) 02.04.2010
(产品更新后规格书不保证同步更新)
5
EM78447S
8位
位OTP微控制器
微控制器
4.1.3 R2(程序计数器)和堆栈
图 4-2 (程序计数器)和堆栈框图
根据控制器的类型,R2和硬件堆栈为10位宽。参见上图4-2所示的结构图。
产生1024×13位片内OTP ROM 地址以获取对应的程序指令编码。一个程序页是1024
字长。
在复位状态下R2所有位被置“1“ 。.
"JMP"指令允许直接装载程序计数器的低10位值。因此 "JMP"可以让 PC在一个程序
页中任意跳转。
"CALL"指令装载程序计数器的低10 位值,并将PC+1的值入栈。因此子程序的入口
地址可以在一个程序页任意地方。
"RET" ("RETL k", "RETI")指令将栈顶的数据装载到程序计数器中。
"ADD R2, A"允许把A的内容加到当前PC上,同时PC的第9位和第10位被清零。
"MOV R2, A" 允许将A寄存器的内容装载到PC的低8位,同时PC的第9位和第10位被
清零。.
任何对R2进行直接修改的指令 (如: "ADD R2,A", "MOV R2,A", "BC
R2,6",⋅⋅⋅⋅⋅) 都将会引起程序计数器的第9、10位(A8~A9)清零,因此产生的跳转
只限于一程序页前256个地址。
除了改变R2的指令需要2个指令周期外,其余的指令只需要一个指令周期(fclk/2
或 fclk/4)。
6•
版本号(V1.2)
02.04.2010
版本号
(产品更新后规格书不保证同步更新)
EM78447S
8位
位OTP微控制器
微控制器
程数程程配置
程数程程配置
00
R0
01
02
R1(TCC)
R2(PC)
03
04
R3(Status)
05
06
R5(Port5)
R6(Port6)
IOC5
IOC6
07
08
R7(Port7)
R8
IOC7
09
0A
0B
R9
RA
RB
0C
0D
RC
RD
0E
0F
RE
RF
Stack
(5 level)
R4(RSR)
IOCB
IOCE
IOCF
10
:
:
16x8
Common
Register
1F
00
20
31x8
Bank
Register
(Bank 0)
:
:
3E
3F
01
10
31x8
Bank
Register
(Bank 1)
31x8
Bank
Register
(Bank 2)
11
31x8
Bank
Register
(Bank 3)
R3F
图 4-3 数据存储结构图
版本号 (V1.2) 02.04.2010
(产品更新后规格书不保证同步更新)
7
EM78447S
8位
位OTP微控制器
微控制器
4.1.4 R3 (状态寄存器)
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
GP
PS1
PS0
T
P
Z
DC
C
Bit 7 (GP): 通用读写位
Bits 6 (PS1) ~ 5 (PS0):页面选择位。PS0,PS1用于选择程序存储器页面。当执行
“JMP”,“CALL”或其它改变R2的指令时(例如 MOV R2, A),PS0、PS1被装入PC的第
11,12位,以选择一个有效的程序存储页面。
注意
RET(RETL、RETI)指令不改变PS0、PS1。也就是说,直接返回到子程式
被调用的页面,不管当前PS0、PS1值。
Bit 4 (T):
PS1
PS0
程序存储器页 [地址
地址]
地址
0
0
页 0 [000-3FF]
0
1
页 1 [400-7FF]
1
0
页 2 [800-BFF]
1
1
页 3 [C00-FFF]
时间溢出位。
执行 "SLEP"和 "WDTC" 指令或上电后该位置1, WDT 溢出清零。
Bit 3 (P):
掉电标志位。
执行 "WDTC"指令或上电后该位置1,执行 "SLEP" 指令后该位清零。
Bit 2 (Z):
零标志位。
当算术运算或逻辑运算的结果为0时,该位置1。
Bit 1 (DC): 辅助进位标志。
Bit 0 (C):
进位标志。
4.1.5 R4 (RAM 选择寄存器)
Bits 7~6: 决定4个bank中的哪一个是被选用的.
Bits 5~0: 在间接寻址方式中用于选择寄存器(地址: 00~3F)。
如果不使用间址寻址,RSR也可被用作8位通用读写寄存器
参见上图4-3 数据存储结构图。
4.1.6 R5~R7 (Port 5 ~ Port 7)
R5、R6、R7 是输入/输出寄存器。
8•
版本号(V1.2)
02.04.2010
版本号
(产品更新后规格书不保证同步更新)
EM78447S
8位
位OTP微控制器
微控制器
4.1.7 R8~R1F 和 R20~R3E (通用寄存器)
R8~R1F,和R20~R3E(包括Bank0~3)是通用寄存器
4.1.8 R3F(中断状态寄存器)
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
-
-
-
-
EXIF
-
-
TCIF
Bit 3 (EXIF):
外部中断标志。由/INT引脚的下降沿置1,软件清零。
Bits 1, 2和
和4~7: 未使用,读为0。
Bit 0 (TCIF):
TCC 溢出中断标志。当 TCC 溢出时置1,软件清零。
“0” 表示没有中断发生。
“1” 表示有中断申请
R3F 可通过指令清零,但不能置1。
IOCF 是中断屏蔽寄存器。
注意
读出的R3F的值是 R3F和 IOCF逻辑与的结果
4.2 特殊功能寄存器
4.2.1 A (累加器)
用于内部数据传输或指令操作数暂存,它不可寻址。
4.2.2 CONT (控制寄存器)
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
/PHEN
/INT
TS
TE
PAB
PSR2
PSR1
PSR0
CONT 寄程程可读写.
Bit 7 (/PHEN): P60~67,P74和P75引脚的上拉使能控制位。
0:使能内部上拉。
1:不使能内部上拉。
Bit 6 (/INT):
中断允许标志位。
0: 由DISI指令或硬件中断屏蔽。
1:由 ENI/RETI 指令允许中断。
Bit 5 (TS):
TCC 信号源选择位。
0:内部指令周期时钟。
版本号 (V1.2) 02.04.2010
(产品更新后规格书不保证同步更新)
9
EM78447S
8位
位OTP微控制器
微控制器
1:TCC 引脚状态变化。
Bit 4 (TE):
TCC 信号沿选择位。
0:当TCC引脚发生由低到高的变化时R1 加1。
1:当TCC引脚发生由高到低的变化时R1 加1。
Bit 3 (PAB): 预分频器分配位
0: TCC
1: WDT
Bit 2 (PSR2) ~ Bit 0 (PSR0): TCC/WDT 预分频位
PSR2
PSR1
PSR0
TCC 预分频比
预分频比
WDT 预分频比
预分频比
0
0
0
1:2
1:1
0
0
1
1:4
1:2
0
1
0
1:8
1:4
0
1
1
1:16
1:8
1
0
0
1:32
1:16
1
0
1
1:64
1:32
1
1
0
1:128
1:64
1
1
1
1:256
1:128
4.2.3 IOC5 ~ IOC7 (I/O 口控制寄存器)
0: 定义相关 I/O 引脚为输出
1: 定义相关 I/O 引脚为高阻输入状态
IOC5, IOC6, 与 IOC7 寄存器都是可读可写的.
4.2.4 IOCB (P6口唤醒控制寄存器)
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
/WUE7
/WUE6
/WUE5
/WUE4
/WUE3
/WUE2
/WUE1
/WUE0
Bit 7 (/WUE7):.使能 P67 引脚唤醒功能的控制位
Bit 6 (/WUE6): 使能 P66 引脚唤醒功能的控制位.
Bit 5 (/WUE5): 使能 P65 引脚唤醒功能的控制位.
Bit 4 (/WUE4): 使能 P64 引脚唤醒功能的控制位.
Bit 3 (/WUE3): 使能 P63 引脚唤醒功能的控制位.
Bit 2 (/WUE2): 使能 P62 引脚唤醒功能的控制位.
Bit 1 (/WUE1): 使能 P61 引脚唤醒功能的控制位.
Bit 0 (/WUE0): 使能 P60 引脚唤醒功能的控制位.
10 •
版本号(V1.2)
02.04.2010
版本号
(产品更新后规格书不保证同步更新)
EM78447S
8位
位OTP微控制器
微控制器
0: 使能内部唤醒
1: 禁止内部唤醒
IOCB 寄存器是可读写的.
4.2.5 IOCE (WDT控制寄存器 )
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
-
ODE
WDTE
SLPC
ROC
-
-
/WUE
Bit 6 (ODE):
P76及P77脚漏极开路使能控制位
0:禁止漏极开路输出
1:使能漏极开路输出
ODE位可以读/写
Bit 5 (WDTE): 看门狗使能控制位
只在代码选项的ENWDT为0时该位才有效,此时WDT是否工作由
WDTE决定。
0:禁止WDT
1:使能WDT
代码选项的ENWDT为1时WDTE无用,也就是,如果ENWDT为1,无
论WDTE为0或1,WDT禁止
WDTE位可读写
Bit 4 (SLPC): 该位由唤醒信号低电平引起硬件触发置1,由软件清0,SLPC用于控制
振荡器的工作。在SLPC位从1变成0時,振荡器被禁止(振荡器停止,
单片机进入休眠模式2),在SLPC位从0变成1,振荡器使能(单片机
由休眠模式2唤醒)。为了确保振荡器输出信号稳定,一旦振荡器再次
1
起振,在执行下条指令前会有18ms (振荡器起振时间,OST)的延
时,OST总是在休眠模式唤醒后可被激活,无论代码选项的ENWDT为
0或其他。唤醒后,如果代码选项中ENWDT为1,则WDT将被使能,休
眠模式2的输入唤醒方框图如图4-4。SLPC位可读写
1
Vdd = 5V, 建立时间周期 = 16.2ms ± 30%
Vdd = 3V, 建立时间周期 = 19.6ms ± 30%
版本号 (V1.2) 02.04.2010
(产品更新后规格书不保证同步更新)
11
EM78447S
8位
位OTP微控制器
微控制器
/WUE0
振振程
使能
禁禁
/WUE1
复复
Q
Q
PR D
CL
K
VCC
CL
清清
置复
/WUE7
8
来来S/W
P60~P67
VCC
/WUE
/PHEN
2
P74~P75
图 4-4 I/O口休眠模式与唤醒电路框图
Bit 3 (ROC):
ROC 用于 R-option 功能。设 置 ROC 为 1,使能 R-option 功能,其引
脚 P70∼P71 的状态可由控控程读溢。 ROC 清零禁禁 R-option 功能。
否则 R-option 功能被使用,用户必须使 P71 引脚和/或 P70 引脚通过一
个 430KΩ 外接电阻 r (Rex)与 VSS 相连。若 Rex 接入/未接到 VDD,
读到 P70 (P71) 的状态是 0/1。参考 4.4 章节的图 4-6b 所示。ROC 复
可读写
Bits 1~2, & 7: 未使用
Bit 0 (/WUE): 使能 P74、P75 引脚唤醒功能的控制位
0: 使能唤醒功能
1: 禁止唤醒功能
/WUE 可读可写。
4.2.6 IOCF (中断屏蔽寄存器 )
Bit 7
Bit 6
Bit5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
-
-
-
-
EXIE
-
-
TCIE
Bit 3 (EXIE): EXIF 中断使能位。
12 •
版本号(V1.2)
02.04.2010
版本号
(产品更新后规格书不保证同步更新)
EM78447S
8位
位OTP微控制器
微控制器
0:
:禁止 EXIF 中断。
1:
:使能 EXIF 中断。
Bits 1, 2 和 4~7 : 未使用。
Bit 0 (TCIE):
: TCIF 中断使能位。
0:
:禁止 TCIF 中断。
1:
:使能 TCIF 中断。
通过IOCF中的相关控制位置1,使能各个相关中断。
总中断是由ENI 指令使能,由DISI 指令禁止。参考4.6节图4-8所示。
IOCF 寄存器是可读写的。
4.3 TCC/WDT 和预分预程
TCC 或WDT 有一个8位计数器做预分频器。在同一时刻它只能分配给其中一方,这由
CONT 寄存器的PAB 位决定。PSR0~PSR2位确定预分频比。若分配给TCC ,在TCC
模式下则每次写TCC 操作均将预分频器清0 。若分配给WDT ,则WDT 和预分频器均
在执行WDTC 或SLEP指令时清0 。图4-5 详细描述了TCC/WDT电路特性。
R1(TCC)为8 位定时器/计数器。TCC 时钟源可为内部时钟或外部时钟(由TCC 引脚输
入,触发沿可选择)。如果是内部时钟,每个指令周期TCC 加1(无预分频器)。由图
4-5 可知,指令周期是2 个还是4个时钟周期由代码选择寄存器CLKS 位决定。CLKS=0
则CLK=Fosc/2 ,CLKS=1 则CLK=Fosc/4 。如果是外部时钟,则TCC 由外部信号边
沿触发。
WDT的时钟源 是一个自由运行的片内RC 振荡器。当控制器振荡关闭后,WDT 依然运
行(例如在休眠模式)。在正常模式或休眠模式,WDT溢出将引起复位(若WDT 使
能)。在正常工作时,WDT 可由软件设置IOCE的WDTE 位来使能或禁止。在没有预
2
分频情况下,WDT溢出时间约为18 ms (默认)。
2
Vdd = 5V, 建立时间周期= 16.2ms ± 30%
Vdd = 3V, 建立时间周期 = 19.6ms ± 30%
版本号 (V1.2) 02.04.2010
(产品更新后规格书不保证同步更新)
13
EM78447S
8位
位OTP微控制器
微控制器
程数数数
CLK(=Fosc/2)
0
TCC
引脚
1
1
M
U
X
M
U
X
0
SYNC
pin
TE
TS
TCC(R1)
2 个 个个
TCC 溢 溢 中 中
PAB
0
WDT
1
M
U
X
8 复看时程
PSR0~PSR2
8 选 1 MUX
WDTE
(IOCE)
PAB
0
1
MUX
PAB
WDT 溢 溢
图4-5 TCC 和 WDT 模块图
4.4 I/O 端口
I/O端口P5 、P6、P7 均为双向三态I/O口。可以由CONT、IOCE分别设置为上拉电
阻、R-option、漏极开路功能。P6 口、P74和P75具有输入变化唤醒功能。每个I/O引
脚能被I/O控制寄存器(IOC5~IOC7)置为输入或输出。 I/O 寄存器和 I/O 控制寄存器
都是可读可写的。 P5 、P6和P7的I/O 接口电路见下图。
PCRD
Q PR D
CLK
Q
PCWR
CL
IOD
Q PR D
PORT
CLK
Q
0
1
PDWR
CL
M
U
X
PDRD
图 4-6 (a) I/O 端口和 I/O 控制寄存器电路
14 •
版本号(V1.2)
02.04.2010
版本号
(产品更新后规格书不保证同步更新)
EM78447S
8位
位OTP微控制器
微控制器
PCRD
VCC
ROC
Q PR D
Weak
Pull- up
CLK
Q
Port
Q
PR
Q
CL
IOD
D
CLK
0
Rex*
1
PCWR
CL
PDWR
PDRD
M
U
X
*The Rex is 430K ohm external resistor
图 4-6(b) 具有 R-option(P70,P71)功能的 I/O 口电路
4.5 复复和唤唤
4.5.1 复位
复位由下列情况之一引起:
(1) 上电复位。
(2) /RESET 引脚输入低电平。
(3) WDT 溢出(若使能)。
3
在复位动作被检测到之后,单片机保持复位状态18ms (振荡器起振时间) 。一旦复位
发生,单片机将会执行下列功能。参见下图。
振荡器振荡或起振。
程序计数器(R2)都置为1 。
上电时,R3的Bit5-6和R4的Bit7~6清0。
所有I/O 引脚定义为输入模式(高阻状态)。
WDT 和预分频器清0 。
上电时,R3的Bit5-6清0 。
上电时,R4的Bit7~6清0 。
CONT 寄存器除第 6 位(INT 标志)外,全置为 1 。.
IOCB 寄存器全置为1(P60~67唤醒功能禁止)。
3
Vdd = 5V, 建立时间周期 = 16.2ms ± 30%
Vdd = 3V, 建立时间周期 = 19.6ms ± 30%
版本号 (V1.2) 02.04.2010
(产品更新后规格书不保证同步更新)
15
EM78447S
8位
位OTP微控制器
微控制器
IOCE 寄存器第0、4、5 位置1 ,第3 、6 位清0 。
R3F 、IOCF 寄存器第0、3 位清0 。
执行SLEP指令可进入休眠模式(省电模式)。进入休眠模式时,WDT(若使能)清0
但继续运行。单片机可被如下情况唤醒:
(1) /RESET引脚上输入的外部复位信号。
(2) WDT溢出(若使能)。
以上两种情况会引起EM78447S复位,R3的T、P标志位用于判断复位源(唤醒)。
除了基本的休眠模式1,EM78447S还有休眠模式2,(命名为Sleep 2模式并由IOCE寄
存器的“SLPC”位清零启用)。在休眠模式2,单片机可由下列条件唤醒:
1)4.2.5章节中图4-4所示的所有唤醒引脚为“0”。唤醒后,微控制器执行下一条指令。
对于此事件,在进入Sleep2模式前,应该选择(即输入引脚)并使能(即上拉,唤
醒控制)触发源(P60~P67 和 P74~P75)的唤醒功能。唤醒后必须注意的是,不论代
码选项的ENWDT为”0”或是”1”,WDT都将被使能。唤醒后的WDT操作(被使能或是
禁止)应该通过软件编程做适当的控制。有关Sleep 2模式的详细设置步骤请参考下
面第4.5.1.1章节
2)WDT 定时器溢出(若使能)或在/RESET引脚有外部复位输入,都会引起控制器复
位。
图 4-7 控制器复位功能框图
16 •
版本号(V1.2)
02.04.2010
版本号
(产品更新后规格书不保证同步更新)
EM78447S
8位
位OTP微控制器
微控制器
4.5.1.1
SLEEP2 和 SLEEP1 的操作总结
的操作总结
SLEEP2
SLEEP1
a) 进入 SLEEP2 之前的操作
a) 进入 SLEEP1 之前的操作
1. 设置 P6 口或 P74 或 P75 为输入口
1. 执行 SLEP 指令
2. 使能上拉,及设置 WDT 预分频大于
1:1(设置 CONT.7 和 CONT.3~CONT.0)
3. 使能唤醒功能 (设置 IOCB 置 1 或
IOCE.0)
4. 执行 Sleep 2 (设置 IOCE.4)
b) 唤醒之后的操作
b) 唤醒之后的操作
1. 执行下一指令
1. 复位
2. 禁止唤醒功能
3. 禁止 WDT (设置 IOCE.5)
如果想用P6口(输入状态改变唤醒,用SLEEP2模式,上表中对应a方案) 来唤醒处于
SLEEP1模式的EM78447S,在进入SLEEP2模式之前必须被执行如下指令:
MOV
IOW
A, @11111111b
R6
MOV
A, @0xxx1010b
CONTW
MOV
IOW
MOV
IOW
唤醒后
NOP
MOV
IOW
MOV
IOW
; 设置P6口为输入
设置P6为上拉及WDT的预分频,
WDT预分频必须设定1:1
A, @00000000b
RB
A, @xx00xxx1b
RE
; 使能P6口的唤醒功能
A, @11111111b
RB
A, @ xx01xxx1b
RE
; 禁止P6口的唤醒功能
; 进入SLEEP2模式
; 禁止WDT
注意
从SLEEP2模式唤醒之后,WDT自动地被使能。从SLEEP2唤醒之后WDT
是使能/禁止状态应在软件里做准确的定义
PORT6口状态改变用于进入中断或用于唤醒MCU会引起复位发生,为了避
免复位的发生,WDT的分频比必须设为大于1:1的比率
版本号 (V1.2) 02.04.2010
(产品更新后规格书不保证同步更新)
17
EM78447S
8位
位OTP微控制器
微控制器
4.5.1.2
复位之后寄存器的初始值
说明
地址
名称
N/A
IOC5
N/A
IOC6
N/A
IOC7
N/A
CONT
复位类型
0x00
0x01
R1(TCC)
0x02
R2(PC)
0x03
R3(SR)
0x04
R4
(RSR)
0x05
R5(P5)
位名
类型
上电
/RESET 和 WDT
引脚输入改变唤醒
位名
上电
/RESET 和 WDT
引脚输入改变唤醒
位名
上电
/RESET 和 WDT
引脚输入改变唤醒
位名
上电
/RESET 和 WDT
引脚输入改变唤醒
位名
上电
/RESET 和 WDT
引脚输入改变唤醒
位名
上电
/RESET 和 WDT
引脚输入改变唤醒
位名
上电
/RESET 和 WDT
引脚输入改变唤醒
位名
上电
/RESET 和 WDT
引脚输入改变唤醒
位名
上电
/RESET 和 WDT
引脚输入改变唤醒
位名
上电
/RESET 和 WDT
引脚输入改变唤醒
X: 未使用
U: 不确定或者不关心
P: 复位之前的初值
--:未定义
t: 在4.5.2章节中对照
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
C57
A B
0 1
0 1
0 P
C67
1
1
P
C77
1
1
P
/PHEN
1
1
P
-U
P
P
-0
0
P
-1
1
C56
A B
0 1
0 1
0 P
C66
1
1
P
C76
1
1
P
/INT
0
P
P
-U
P
P
-0
0
P
-1
1
C55
A B
0 1
0 1
0 P
C65
1
1
P
C75
1
1
P
TS
1
1
P
-U
P
P
-0
0
P
-1
1
C54
A B
0 1
0 1
0 P
C64
1
1
P
C74
1
1
P
TE
1
1
P
-U
P
P
-0
0
P
-1
1
C53
-1
1
P
C63
1
1
P
C73
1
1
P
PAB
1
1
P
-U
P
P
-0
0
P
-1
1
C52
-1
1
P
C62
1
1
P
C72
1
1
P
PSR2
1
1
P
-U
P
P
-0
0
P
-1
1
C51
-1
1
P
C61
1
1
P
C71
1
1
P
PSR1
1
1
P
-U
P
P
-0
0
P
-1
1
C50
-1
1
P
C60
1
1
P
C70
1
1
P
PSR0
1
1
P
-U
P
P
-0
0
P
-1
1
0/P*
PS0
0
0
P
-U
P
P
P55
U
P
P
0/P*
T
1
t
t
-U
P
P
P54
U
P
P
0/P*
P
1
t
t
-U
P
P
P53
U
P
P
0/P*
Z
U
P
P
-U
P
P
P52
U
P
P
0/P*
DC
U
P
P
-U
P
P
P51
U
P
P
0/P*
C
U
P
P
-U
P
P
P50
U
P
P
0/P*
0/P*
GP
PS1
0
0
0
0
P
P
RSR.1 RSR.0
0
0
0
0
P
P
P57
P56
U
U
P
P
P
P
* IOCE寄存器的SLPC位元 从1变成0后执行下一条指令。
18 •
版本号(V1.2)
02.04.2010
版本号
(产品更新后规格书不保证同步更新)
EM78447S
8位
位OTP微控制器
微控制器
(续集)
地址
名称
0x06
R6(P6)
0x07
R7(P7)
0x3F
R3F(ISR)
0x0B
IOCB
0x0E
IOCE
0x0F
IOCF
0x08
R8
0x09~
R9~R3E
0x3E
复位类型
位名
上电
/RESET 和 WDT
引脚输入改变唤醒
位名
上电
/RESET 和 WDT
引脚输入改变唤醒
位名
上电
/RESET 和 WDT
引脚输入改变唤醒
位名
上电
/RESET 和 WDT
引脚输入改变唤醒
位名
上电
/RESET 和 WDT
引脚输入改变唤醒
位名
上电
/RESET 和 WDT
引脚输入改变唤醒
位名
上电
/RESET 和 WDT
引脚输入改变唤醒
位名
上电
/RESET 和 WDT
引脚输入改变唤醒
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
P67
P66
P65
P64
P63
P62
P61
P60
U
U
U
U
U
U
U
U
P
P
P
P
P
P
P
P
P
P
P
P
P
P
P
P
P77
P76
P75
P74
P73
P72
P71
P70
U
U
U
U
U
U
U
U
P
P
P
P
P
P
P
P
P
P
P
P
P
P
P
P
X
X
X
X
EXIF
X
X
TCIF
U
U
U
U
0
U
U
0
U
U
U
U
0
U
U
0
U
U
U
U
P
U
U
P
/WUE7 /WUE6 /WUE5 /WUE4 /WUE3 /WUE2 /WUE1 /WUE0
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
P
P
P
P
P
P
P
P
X
ODE WDTE SLPC ROC
X
X
/WUE
U
0
1
1
0
U
U
1
U
0
1
1
0
U
U
1
U
P
1
1
P
U
U
P
X
X
X
X
EXIE
X
X
TCIE
U
U
U
U
0
U
U
0
U
U
U
U
0
U
U
0
U
U
U
U
P
U
U
P
--------0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
P
P
P
P
P
P
P
P
--------U
U
U
U
U
U
U
U
P
P
P
P
P
P
P
P
P
P
P
P
P
P
P
P
4.5.2 状态寄存器的 RST, T, 和 P的状态
复位可由下列条件之一引起:
1. 上电。
2. 复位引脚有一个高-低-高的脉冲。
3. WDT定时器溢出。
版本号 (V1.2) 02.04.2010
(产品更新后规格书不保证同步更新)
19
EM78447S
8位
位OTP微控制器
微控制器
T 和 P 的值(下表列溢) 用于判断单片机由什么唤醒。
复位类型
T
P
上电
1
1
运行模式下/RESET 引脚复位
*P
*P
休眠模式 1 下/RESET 引脚唤醒
1
0
休眠模式 2 下/RESET 引脚唤醒
*P
*P
运行模式下 WDT 溢出复位
0
*P
休眠模式 1 下 WDT 溢出唤醒
0
0
休眠模式 2 下 WDT 溢出唤醒
0
*P
休眠模式 2 下引脚状态改变唤醒
*P
*P
*P: 复位前状态
下面列举的是影响 T 和 P 状态的事件
事件
T
P
上电
1
1
WDTC 指令
1
1
WDT 溢出
0
*P
SLEP 指令
1
0
休眠模式 2 下引脚状态改变唤醒
*P
*P
*P: 复位前状态
4.6 中中
EM78447S有两个中断源:
(1) TCC 溢出中断
(2) 外部中断(/INT引脚)
R3F 是中断状态寄存器,它的相关标志位记录了中断请求状态。 IOCF是中断屏蔽寄存
器。 通过执行指令ENI使能全局中断,通过执行DISI禁止全局中断。 当一个中断(使能)
发生,下一条指令将从地址001H获取。在中断服务程序中,通过轮询R3F的标志位来
确定中断源。 在离开中断服务程序之前,必须用指令清除中断标志以免发生重复中
断。
中断状态寄存器(R3F)的标志位(除ICIF位以外)的置位与中断屏蔽寄存器状态或者是否
执行了ENI指令无关。 注意读R3F的输出得到的是R3F和IOCF的逻辑与的结果 (参见图
4-8), RETI指令结束中断程序并使能全局中断(执行ENI)。
当一个中断是由INT指令产生(若使能),则下一条指令将从地址002H获取。
20 •
版本号(V1.2)
02.04.2010
版本号
(产品更新后规格书不保证同步更新)
EM78447S
8位
位OTP微控制器
微控制器
VCC
P
R
D
/IRQn
CLK
C
L
Q
IRQn
INT
_
Q
IRQm
RFRD
RF
ENI/DISI
Q
IOCF
_
Q
P
R
C
L
IOD
D
CLK
IOCFWR
/RESET
IOCFRD
RFWR
图4-8 中断输入电路
4.7 振荡器
4.7.1 振荡模式
EM78447S 可在三种不同的振荡模式下运行:
高频晶体振荡模式(HXT)
低频晶体振荡模式(LXT)
外部 RC 振荡器模式(ERC)
用户可通过编程代码选项寄存器的 MS, HLF 及HLP来选择某一种振荡方式。下表描述
如何定义这三种模式。
振荡模式
MS
HLF
HLP
ERC(外部RC振荡器模式)
0
*×
*×
HXT(高频晶体振荡模式)
1
1
*×
LXT(低频晶体振荡模式)
1
0
0
*x: 无关
注意
在HXT和 LXT之间的系统频率临界点大约为400 KHz.
不同 VDD 情况下晶振/谐振的最大工作频率表
条件
指令周期为两个时钟周期
版本号 (V1.2) 02.04.2010
(产品更新后规格书不保证同步更新)
VDD
最大频率 (MHz)
2.3
4.0
3.0
8.0
5.0
20.0
21
EM78447S
8位
位OTP微控制器
微控制器
4.7.2 晶体振荡
晶体振荡器
器/陶瓷谐振
陶瓷谐振器
器(晶体)
EM78447S可通过OSCI管脚用外部时钟信号驱动,如图4-9示。
在大多数的应用场所,通过在OSCI和OSCO管脚连接晶体或陶瓷振荡器来产生振荡。
如图4-9电路所示。无论在HXT或LXT振荡模式,都可以应用这种电路。
图 4-9a 晶体或陶瓷振荡电路
C1
OSCI
EM78447
EM78447S
78447S
? ?
OSCO
RS
C2
图 4-9b 晶体或陶瓷振荡电路
下表供了C1和C2的参考建议值。每个谐振器有自己的特性,用户应根据谐振器规格选
择C1,C2的合适值。对于AT 切片晶体或低频模式,可能需要一个串接电阻RS。
振荡类型
陶瓷谐振程
频率模式
HXT
LXT
晶体振振程
HXT
22 •
频率
C1 (pF)
C2 (pF)
455 kHz
100~150
100~150
2.0 MHz
20~40
20~40
4.0 MHz
10~30
10~30
32.768 kHz
25
15
100 kHz
25
25
200 kHz
25
25
455 kHz
20~40
20~150
1.0 MHz
15~30
15~30
2.0 MHz
15
15
4.0 MHz
15
15
版本号(V1.2)
02.04.2010
版本号
(产品更新后规格书不保证同步更新)
EM78447S
8位
位OTP微控制器
微控制器
4.7.2.1
晶振 / 谐振串并联电路
330
330
C
O SCI
7404
7404
7404
EM 78447S
XTAL
图 4-10a 晶振 / 谐振串联电路
4. 7K
10K
Vdd
OSCI
7404
7404
EM7 8 4 4 7 S
10K
XTAL
C1
C2
图 4-10b 晶振 / 谐振并联电路
4.7.3 外部 RC振荡模式
在一些对时序要求不太严格的应用中,使用RC振荡(图4-11)可节省成本,然而需注
意的是RC的振荡频率会受电压,电阻值(Rext),电容值(Cext)甚至周围温度影响。
而且,由于制造工艺的不同,不同的芯片频率也会有微小的差异。
为了维持一个比较稳定的系统频率,电容值应不小于 20pF,电阻值应不大于 1MΩ。
如果不能保证在这个范围,频率很容易受噪声,湿度及漏电流的影响。
版本号 (V1.2) 02.04.2010
(产品更新后规格书不保证同步更新)
23
EM78447S
8位
位OTP微控制器
微控制器
VCC
在RC模式中,电阻越小,频率越大。
Rext
但是,Rext太小,例如1 KΩ,由于
NMOS不能通过电容准确的放电,振
OSCI
荡器将变的不稳定。
基于以上原因,必须牢记工作电压,
Cext
EM78447S
工作温度,RC振荡器的元件特性,封
装形式,PCB布线都会对系统频率产
生影响。
图 4-11 外部RC振荡模式电路
下表是典型的 RC 振荡频率:
电容
20 pF
100 pF
300 pF
电阻
平均频率 5V, 25°°C
平均频率 3V, 25°°C
3.3k
4.32 MHz
3.56 MHz
5.1k
2.83 MHz
2.8 MHz
10k
1.62 MHz
1.57 MHz
100k
184 kHz
187 kHz
3.3k
1.39 MHz
1.35 MHz
5.1k
950 kHz
930 kHz
10k
500 kHz
490 kHz
100k
54 kHz
55 kHz
3.3k
580 kHz
550 kHz
5.1k
390 kHz
380 kHz
10k
200 kHz
200 kHz
100k
21 kHz
21 kHz
注意
1.
2.
3.
24 •
以DIP封装测量
值仅供设计参考.
频率偏差大约在 ± 30%
版本号(V1.2)
02.04.2010
版本号
(产品更新后规格书不保证同步更新)
EM78447S
8位OTP微控制器
4.8 代码选项寄存器
EM78447S 有一个代码选项字, 它们不属于一般程序存储器的一部分。程式执行期间不
能对选项位寻址。
Bit7
Bit6
Bit5
Bit4
Bit3
Bit2
Bit1
Bit0
-
-
TYPE
/ENWDT
LVDD
HLF
MS
CLK
Bit 7:
未使用
Bit 6 :
保留. 该位一直置 1.
Bit 5 (TYPE):
EM78447SA 或 SB 类型选择位
0: EM78447SB
1: EM78447SA
Bit 4 (/ENWDT): 看看看看时使能复
0: 使能
1: 关闭
Bit 3 (LVDD):
工作电压点
0: 工作电压 = 2.3V~5.5V (不在省电电压点)
1: 工作电压 = 4V~5.5V (在省电电压点)
Bit 2 (HLF):
晶体频率选择位
0: XTAL2 型 (低频, 32.768KHz)
1: XTAL1 型 (高频)
此位只有在第1位(MS)为“1”时才影响系统振荡。MS为0,HLF必须为“0”。
注意
HXT 和 LXT的频率临界点约为 400 KHz.
Bit 1 (MS):
晶振类型选择
0: RC 类型
1: 晶振类型(XTAL1 和 XTAL2)
Bit 0 (CLK):
指令周期选择位
0: 两个振荡周期
1: 四个振荡周期
章节 4.10,参考指令集部分
版本号 (V1.2) 02.04.2010
(产品更新后规格书不保证同步更新)
25
EM78447S
8位OTP微控制器
4.9 上电参考
在供电电压达到稳定状态前,任何微控制器都不能确保正常工作。
EM78447S复位电压范围1.2~1.8V.在用户应用中,当电源关闭,Vdd在电源再次开启
前,必须降到1.2V以下并保持在关断状态大约10us。这样EM78447S将复位并且正常
工作。如果电源VDD上升的非常之快,(50ms或更少),额外的外部复位电路将工作
的非常好。但是在涉及到关键应用的大多数情况下,可能需要额外的器件来辅助解决
上电问题。
4.9.1 外部上电复位电路
下图中的电路用外部RC产生一个复位脉冲。脉冲的宽度(时间常数)应保持足够长的
时间以使电源达到最小工作电压。该电路应用在电源电压上升比较慢的情况下。因为
/RESET脚的漏电流大约在±5µA,所以建议R应小于40 KΩ。按照这种方法,在
/RESET脚上的电压将在0.2V之下。二极管(D)在掉电时作为短路回路。电容C将快
速彻底的放电。Rin,限流电阻,防止大电流放电或ESD(静电放电)对/RESET脚的
冲击。
Vdd
R
/RESET
D
EM78447S
Rin
C
图 4-12 外部上电复位电路
26 •
版本号(V1.2)
02.04.2010
版本号
(产品更新后规格书不保证同步更新)
EM78447S
8位OTP微控制器
4.9.2 残留电压保护
当更换电池时,芯片的电源(Vdd)已关闭但残留电压仍然存在。残留电压可能低于
VDD的最小工作电压,但又不为零,在这种情况下有可能引起不良的上电复位。以下
图片给出了如何建立一个残留电压保护电路。
Vdd
Vdd
33K
EM78447S
Q1
10K
/RESET
40K
1N4684
图4-13a 残留电压保护电路1
Vdd
Vdd
R1
EM78447S
Q1
/RESET
40K
R2
图 4-13b残留电压保护电路2
版本号 (V1.2) 02.04.2010
(产品更新后规格书不保证同步更新)
27
EM78447S
8位OTP微控制器
4.10 指令集
指令集的每条指令为13-bit 的字宽,由操作码和一个或多个的操作数组成。在一般情
况下,如果程序计数器的值在没有被改变的情况下,所有的指令花费一个指令周期(一
个指令周期由两个振荡周期组成),除非PC的值被"MOV R2,A", "ADD R2,A"指令改
变,或对R2 进行算术、逻辑运算 时(如 "SUB R2,A", "BS(C) R2,6", "CLR R2",
⋅⋅⋅⋅),在这种情况下, 指令执行将花费两个指令周期。
如果由于其它的原因,对某一个应用场所指令周期的的特性不适合的话,试着按照以
下方法修改:
:
1) 一个指令周期改为由 4 个振荡周期组成.
2)执行花费两个指令周期的"JMP", "CALL", "RET", "RETL", "RETI" 命令,或结果为
真的条件转移命令 ("JBS", "JBC", "JZ", "JZA", "DJZ", "DJZA") 。有关写程序
计数器的指令,都将花费两个指令周期。
情况1由代码选项的CLK位控制。 如果CLK设为‘0’,一个指令周期由两个振荡周期构
成,如果CLKS设为‘1’,一个指令周期由四个振荡周期构成。
注意
如果在情况(1)中选择指令周期由四个振荡周期构成,那么内部TCC的时钟源是
CLK=Fosc/4 (不是 Fosc/ 2) ,如图4-5(第4-3章节)所示
另外,指令集有以下特性:
(1) 任何寄存器的每一个 bit 位可以置‘1’、清零或直接测试。
(2) I/O 寄存器可当作通用寄存器。即,相同的指令可用于I/O 寄存器。
28 •
版本号(V1.2)
02.04.2010
版本号
(产品更新后规格书不保证同步更新)
EM78447S
8位OTP微控制器
4.10.1 EM78447S 指令集表格
下面的符号被使用:
"R" =表示一个寄存器指示符,用来指定指令操作哪个寄存器(包括操作寄存器和通用
寄存器)。R4的位6和位7用于选择Bank寄存器
"b"=表示一个位指示符,指定位于R寄存器中会影响操作的位
"k"=代表一个8位或10位常数或立即数。
操作
受影响的标
志位
二进制指令
十六进制
助记符
0 0000 0000 0000
0000
NOP
无操作
无
0 0000 0000 0001
0001
DAA
寄程程 A 的程由二进控调
整为 BCD 指
C
0 0000 0000 0010
0002
CONTW
0 0000 0000 0011
0003
0 0000 0000 0100
A → CONT
None
SLEP
0 → WDT, 停止振荡
T, P
0004
WDTC
0 → WDT
T, P
0 0000 0000 rrrr
000r
IOW R
A → IOCR
无
0 0000 0001 0000
0010
ENI
使能中断
无
0 0000 0001 0001
0011
DISI
禁止中断
无
0 0000 0001 0010
0012
RET
[堆顶] → PC
无
0 0000 0001 0011
0013
RETI
[堆顶] → PC,
使能中断
无
0 0000 0001 0100
0014
CONTR
CONT → A
无
0 0000 0001 rrrr
001r
IOR R
IOCR → A
0 0000 0010 0000
0020
TBL
0 0000 01rr rrrr
00rr
MOV R,A
A→R
无
0 0000 1000 0000
0080
CLRA
0→A
Z
0 0000 11rr rrrr
00rr
CLR R
0→R
Z
0 0001 00rr rrrr
01rr
SUB A,R
R-A → A
Z,C, DC
0 0001 01rr rrrr
01rr
SUB R,A
R-A → R
Z,C, DC
0 0001 10rr rrrr
01rr
DECA R
R-1 → A
Z
0 0001 11rr rrrr
01rr
DEC R
R-1 → R
Z
0 0010 00rr rrrr
02rr
OR A,R
A∨R→A
Z
0 0010 01rr rrrr
02rr
OR R,A
A∨R→R
Z
0 0010 10rr rrrr
02rr
AND A,R
A&R→A
Z
0 0010 11rr rrrr
02rr
AND R,A
A&R→R
Z
0 0011 00rr rrrr
03rr
XOR A,R
A⊕R→A
Z
0 0011 01rr rrrr
03rr
XOR R,A
A⊕R→R
Z
0 0011 10rr rrrr
03rr
ADD A,R
A+R→A
Z, C, DC
0 0011 11rr rrrr
03rr
ADD R,A
A+R→R
Z, C, DC
0 0100 00rr rrrr
04rr
MOV A,R
R→A
版本号 (V1.2) 02.04.2010
(产品更新后规格书不保证同步更新)
R2+A → R2,
R2 的 Bits 8~9 不改变
无
1
1
Z,C, DC
Z
29
EM78447S
8位OTP微控制器
(续上)
二进制指令
受影响的标
志位
十六进制
助记符
操作
0 0100 01rr rrrr
04rr
MOV R,R
R→R
Z
0 0100 10rr rrrr
04rr
COMA R
/R → A
Z
0 0100 11rr rrrr
04rr
COM R
/R → R
Z
0 0101 00rr rrrr
05rr
INCA R
R+1 → A
Z
0 0101 01rr rrrr
05rr
INC R
R+1 → R
Z
0 0101 10rr rrrr
05rr
DJZA R
R-1 → A, 如果为 0 跳过
无
0 0101 11rr rrrr
05rr
DJZ R
R-1 → R, 如果为 0 跳过
无
0 0110 00rr rrrr
06rr
RRCA R
R(n) → A(n-1),
R(0) → C, C → A(7)
C
0 0110 01rr rrrr
06rr
RRC R
R(n) → R(n-1),
R(0) → C, C → R(7)
C
0 0110 10rr rrrr
06rr
RLCA R
R(n) → A(n+1),
R(7) → C, C → A(0)
C
0 0110 11rr rrrr
06rr
RLC R
R(n) → R(n+1),
R(7) → C, C → R(0)
C
0 0111 00rr rrrr
07rr
SWAPA R
R(0-3) → A(4-7),
R(4-7) → A(0-3)
无
0 0111 01rr rrrr
07rr
SWAP R
R(0-3) ↔ R(4-7)
无
0 0111 10rr rrrr
07rr
JZA R
R+1 → A, 如果为 0 跳过
无
0 0111 11rr rrrr
07rr
JZ R
R+1 → R, 如果为 0 跳过
无
0 100b bbrr rrrr
0xxx
BC R,b
0 → R(b)
无
2
0 101b bbrr rrrr
0xxx
BS R,b
1 → R(b)
无
3
0 110b bbrr rrrr
0xxx
JBC R,b
if R(b)=0, 跳过
无
0 111b bbrr rrrr
0xxx
JBS R,b
if R(b)=1, 跳过
无
1 00kk kkkk kkkk
1kkk
CALL k
PC+1 → [SP],
(页, k) → PC
无
1 01kk kkkk kkkk
1kkk
JMP k
(页, k) → PC
无
1 1000 kkkk kkkk
18kk
MOV A,k
k→A
无
1 1001 kkkk kkkk
19kk
OR A,k
A∨k→A
Z
1 1010 kkkk kkkk
1Akk
AND A,k
A&k→A
Z
1 1011 kkkk kkkk
1Bkk
XOR A,k
A⊕k→A
Z
1 1100 kkkk kkkk
1Ckk
RETL k
k → A, [堆顶] → PC
无
1 1101 kkkk kkkk
1Dkk
SUB A,k
k-A → A
1 1110 0000 0010
1E02
INT
1 1111 kkkk kkkk
1Fkk
ADD A,k
Z, C, DC
PC+1 → [SP], 002H → PC
k+A → A
无
Z, C, DC
1
这个指令只能应用于 IOC5 ~ IOC7, IOCB, IOCE, IOCF.
建议这个指令不用于对 R3F 的操作
3
这个指令不能操作 R3F
2
30 •
版本号(V1.2)
02.04.2010
版本号
(产品更新后规格书不保证同步更新)
EM78447S
8位OTP微控制器
5
时序图
图 5-1 EM78447S 时序图
版本号 (V1.2) 02.04.2010
(产品更新后规格书不保证同步更新)
31
EM78447S
8位OTP微控制器
6
最大绝对值
项目
范围
温度偏差范围
0°C
到
70°C
存储温度
-65°C
到
150°C
输入电压
-0.3V
到
+6.0V
输出电压
-0.3V
到
+6.0V
DC
到
20 MHz
工作频率(2clks)
7
电气特性
7.1 直流电气特性
Ta= 0°C ~ 70°C, VDD= 5.0V±5%, VSS= 0V
符号
FXT
条件
最小值 典型值 最大值 单位
晶振: VDD 到3V
指令周期为2个时钟周期
DC
-
8.0
晶振: VDD 到5V
指令周期为2个时钟周期
DC
-
20.0 MHz
ERC
ERC: VDD 到5V
R: 5.1KΩ, C: 100 pF
IIL
输入引脚输入漏电流
VIN = VDD, VSS
VIH1
输入高电压(VDD=5V)
VIL1
MHz
F±30% 950 F±30% KHz
-
-
±1
µA
Ports 5, 6
2.0
-
-
V
输入低电压(VDD=5V)
Ports 5, 6
-
-
0.8
V
VIHT1
输入高临界电压(VDD=5V)
/RESET, TCC
2.0
-
VILT1
输入低临界电压(VDD=5V)
/RESET, TCC
-
-
VIHX1
时钟输入高电压(VDD=5V)
OSCI
3.5
-
VILX1
时钟输入低电压(VDD=5V)
OSCI
-
-
VIH2
输入高电压(VDD=3V)
Ports 5, 6
1.5
-
VIL2
输入低电压(VDD=3V)
Ports 5, 6
-
-
VIHT2
输入高临界电压(VDD=3V)
/RESET, TCC
1.5
-
VILT2
输入低临界电压(VDD=3V)
/RESET, TCC
-
-
VIHX2
时钟输入高电压(VDD=3V)
OSCI
2.1
-
VILX2
时钟输入低电压(VDD=3V)
OSCI
-
-
VOH1
输出高电压 (Ports 5, 6, 7)
IOH = -10.0 mA
2.4
-
VOL1
输出低电压 (Ports 5, 6)
IOL = 9.0 mA
-
-
0.4
V
VOL2
输出低电压 (Port 7)
IOL = 14.0 mA
-
-
0.4
V
IPH
上拉电流
激活上拉,输入引脚接 VSS
-50
-100
-240
µA
ISB1
掉电电流
所有的输入引脚和I/O 引脚接
VDD, 输出引脚悬空
WDT禁止
-
-
1
µA
掉电电流
所有的输入引脚和I/O 引脚接
VDD, 输出引脚悬空
WDT使能
-
-
8
µA
ISB2
32 •
参数
V
0.8
V
V
1.5
V
V
0.4
V
V
0.4
V
V
0.9
V
V
版本号(V1.2)
02.04.2010
版本号
(产品更新后规格书不保证同步更新)
EM78447S
8位OTP微控制器
(续上)
符号
参数
条件
ICC1
工作供电电流
(VDD=3V)
2个指令周期/四个时钟周期
ICC2
工作供电电流
(VDD=3V)
2个指令周期/四个时钟周期
ICC3
工作供电电流
(VDD=5V)
2个指令周期/两个时钟周期
ICC4
工作供电电流
(VDD=5V)
2个指令周期/四个时钟周期
最小值 典型值 最大值 单位
/RESET= '高',
Fosc=32kHz (晶振类型,
CLKS="0"),
输出引脚悬空,
WDT禁止
/RESET= '高',
Fosc=32kHz (晶振类型,
CLKS="0"),
输出引脚悬空,
WDT使能
/RESET= '高',
Fosc=4MHz (晶振类型,
CLKS="0"),
输出引脚悬空,
WDT使能
/RESET= '高',
Fosc=10MHz (晶振类型,
CLKS="0"),
输出引脚悬空,
WDT使能
15
25
30
µA
-
30
35
µA
-
-
2.2
mA
-
-
5.0
mA
7.2 交流电气特性
Ta=0°C ~ 70 °C, VDD=5V±5%, VSS=0V
符号
参数
Dclk
输入时钟的占空比
Tins
指令周期
(CLKS="0")
Thold
TCC输入时间周期
单片机复位持续时间
/RESET 脉冲宽度
看门狗定时器时间
输入引脚启动时间
输入引脚保持时间
Tdelay
输出引脚延迟时间
Ttcc
Tdrh
Trst
Twdt
Tset
条件
最小值
典型值 最大值 单位
45
50
55
%
晶振类型
100
−
DC
ns
RC 类型
500
−
DC
ns
−
(Tins+20)/N*
−
−
ns
Ta = 25°C
11.3
16.2
21.6
ms
Ta = 25°C
2000
−
−
ns
Ta = 25°C
−
11.3
16.2
21.6
ms
−
−
0
−
ns
−
−
20
−
ns
−
50
−
ns
Cload=20pF
*N = 选择预分频比
注意
典型值一列数据是在5V,25°C下测量得到
版本号 (V1.2) 02.04.2010
(产品更新后规格书不保证同步更新)
33
EM78447S
8位OTP微控制器
附录
A 封装类型
OTP MCU
封装类型
引脚数
封装尺寸
EM78447SAP
DIP
28
600 mil
EM78447SAM
SOP
28
300 mil
EM78447SAS
SSOP
28
209 mil
EM78447SBP
DIP
32
600 mil
EM78447SBWM
SOP
32
450 mil
注意
以上所有的MCU,是绿色产品,不包含有害物质
符合Sony SS-00259 第三版本标准.
Pb含量符合Sony规格说明, Pb 含量小于 100ppm
A.1 封装材料说明
项目
34 •
规格说明
电镀类型
纯锡
成份 (%)`
Sn :100%
熔点 (°C)
232°C
电阻率 (µΩ-cm)
11.4
硬度 (hv)
8~10
伸长 (%)
>50%
版本号(V1.2)
02.04.2010
版本号
(产品更新后规格书不保证同步更新)
EM78447S
8位OTP微控制器
B 封装信息
B.1 28-引脚塑封双列直插封装
引脚塑封双列直插封装(DIP)
- 600 mil
引脚塑封双列直插封装
B.2 32-引脚塑封双列直插封装
引脚塑封双列直插封装(DIP)
- 600 mil
引脚塑封双列直插封装
版本号 (V1.2) 02.04.2010
(产品更新后规格书不保证同步更新)
35
EM78447S
8位OTP微控制器
B.3 28-引脚塑封小外型封装
引脚塑封小外型封装(SOP)
- 300 mil
引脚塑封小外型封装
36 •
版本号(V1.2)
02.04.2010
版本号
(产品更新后规格书不保证同步更新)
EM78447S
8位OTP微控制器
B.4 32-引脚塑封小外型封装
引脚塑封小外型封装(SOP)
- 450 mil
引脚塑封小外型封装
版本号 (V1.2) 02.04.2010
(产品更新后规格书不保证同步更新)
37
EM78447S
8位OTP微控制器
B.5 28-引脚
引脚塑封
引脚塑封缩小外形封装
塑封缩小外形封装 (SSOP) - 209 mil
38 •
版本号(V1.2)
02.04.2010
版本号
(产品更新后规格书不保证同步更新)