EM78P418N

EM78P418N
8位
OTP微控制器
产品规格书
版本 1.9
义隆电子股份有限公司
2011.01
本文内容是由英文规格书翻译而
来,目的是为了您的阅读更加方
便。它无法跟随原稿的更新,文
中可能存在翻译上的错误,请您
参考英文规格书以获得更准确的
信息。
商标告知:
IBM 为一个注册商标,PS/2 是 IBM 的商标之ㄧ.。
Windows 是微软公司的商标。
ELAN 和 ELAN 标志
是义隆电子股份有限公司的商标。
版权所有 © 2009~2010 义隆电子股份有限公司
所有权利保留
台湾印制
本规格书内容如有变动恕不另作通知。关于该规格书的准确性、适当性或者完整性,义隆电子股份有限
公司不承担任何责任。 义隆电子股份有限公司不承诺对本规格书之内容及信息有更新及校正之义务。 本
规格书的内容及信息将为符合确认之指示而变更。
在任何情况下,义隆电子股份有限公司对本规格书中的信息或内容的错误、遗漏,或者其它不准确性不
承担任何责任。由于使用本规格书中的信息或内容而导致的直接,间接,特别附随的或结果的损害, 义
隆电子股份有限公司没有义务负责。
本规格书中提到的软件(如果有),都是依据授权或保密合约所合法提供的,并且只能在这些合约的许
可条件下使用或者复制。
义隆电子股份有限公司的产品不是专门设计来应用于生命维持的用具,装置或者系统。 义隆电子股份有
限公司的产品不支持而且禁止在这些方面的应用。
未经义隆电子股份有限公司书面同意,任何个人或公司不得以任何形式或方式对本规格书的内容之任一部
分进行复制或传输。
义隆电子股份有限公司
总公司:
地址:台湾新竹科学园区
创新一路 12 号
电话:+886 3 563-9977
传真:+886 3 563-9966
webmaster@emc.com.tw
http://www.emc.com.tw
香港分公司:
USA:
义隆电子(香港)有限公司
九龙观塘巧明街 95 号世达中心
19 楼 A 室
电话:+852 2723-3376
传真:+852 2723-7780
Elan Information
Technology Group (USA)
Korea:
深圳分公司:
上海分公司:
Elan Korea Electronics
Company, Ltd.
义隆电子(深圳)有限公司
义隆电子(上海)有限公司
301 Dong-A Building
632 Kojan-Dong,
Namdong-ku
Incheon City, KOREA
Tel: +82 32 814-7730
Fax:+82 32 813-7730
P.O. Box 601
Cupertino, CA 95015
USA
Tel: +1 408 366-8225
Fax:+1 408 366-8225
地址:深圳市高新技术产业园南区 地址:上海市浦東新區張江高科畢
高新南一道国微大厦 3F
升路 289 弄 3 號 101 室
邮编:518057
电话:+86 755 2601-0565
传真:+86 755 2601-0500
elan-sz@elanic.com.cn
邮编:201203
电话:+86 21 5080-3866
传真:+86 21 5080-0273
elan-sh@elanic.com.cn
目录
目录
1
综述
2
产品特性.................................................................................................................... 1
3
引脚配置.................................................................................................................... 2
4
引脚说明.................................................................................................................... 3
4.1
...................................................................................................................... 1
EM78P418ND18/SO18..................................................................................... 3
5
4.2 EM78P418ND20/SO20..................................................................................... 4
4.3 EM78P418NK24/SO24..................................................................................... 5
功能结构图 ................................................................................................................ 6
6
功能描述.................................................................................................................... 7
6.1
操作寄存器 ....................................................................................................... 7
6.1.1
R0 (间址寄存器)................................................................................................. 7
6.1.2
R1 (定时时钟计数器) .......................................................................................... 7
6.1.3
R2 (程序计数器) 和堆栈 ...................................................................................... 7
6.1.3.1
数据存储器结构.................................................................................... 9
6.1.4
R3 (状态寄存器)................................................................................................ 10
6.1.5
R4 (RAM 选择寄存器) ....................................................................................... 10
6.1.6
6.1.7
R5 ~ R7 (Port 5 ~ Port 7).................................................................................. 10
R8 (AISR: ADC 输入选择寄存器).......................................................................11
6.1.8
R9 (ADCON: ADC 控制寄存器) ........................................................................ 12
6.1.9
RA (ADOC: ADC 偏移校准寄存器).................................................................... 13
6.1.10 RB (ADDATA: ADC 转换结果)........................................................................... 14
6.1.11 RC (ADDATA1H: ADC 转换结果)...................................................................... 14
6.1.12 RD (ADDATA1L: ADC 转换结果) ...................................................................... 14
6.1.13 RE (WUCR: 唤醒控制寄存器)........................................................................... 14
6.1.14 RF (中断状态寄存器) ........................................................................................ 16
6.1.15 R10 ~ R3F ........................................................................................................ 16
6.2
特殊功能寄存器 .............................................................................................. 17
6.2.1
A (累加器) ......................................................................................................... 17
6.2.2
CONT (控制寄存器) .......................................................................................... 17
6.2.3
IOC50 ~ IOC70 (I/O 端口控制寄存器) .............................................................. 18
6.2.4
IOC80 (PWMCON: 脉冲宽度调制控制寄存器) ................................................. 18
6.2.5
IOC90 (TMRCON: 定时控制寄存器)................................................................. 19
6.2.6
IOCA0 (CMPCON: 比较控制寄存器) ................................................................ 20
6.2.7
IOCB0 (下拉控制寄存器) .................................................................................. 20
6.2.8
IOCC0 (漏极开路控制寄存器)........................................................................... 21
6.2.9
IOCD0 (上拉控制寄存器) .................................................................................. 21
6.2.10 IOCE0 (WDT 控制寄存器) ................................................................................ 21
6.2.11 IOCF0 (中断屏蔽寄存器) .................................................................................. 22
6.2.12 IOC51 (PRD1: PWM1 周期) ............................................................................. 23
版本号 (V1.9) 01.11.2011
• iii
目录
6.2.13 IOC61 (PRD2: PWM2 周期) ............................................................................. 23
6.2.14 IOC71 (PRD3: PWM3 周期) ............................................................................. 23
6.2.15 IOC81 (DT1L: PWM1 占空比低 8 位字节(Bit 7 ~ Bit 0)) ................................... 24
6.2.16 IOC91 (DT2L: PWM1 占空比低 8 位字节(Bit 7 ~ Bit 0)) ................................... 24
6.2.17 IOCA1 (DT3L: PWM3 占空比低 8 位字节(Bit 7 ~ Bit 0)) ................................... 24
6.2.18 IOCB1 (DTH: PWM 占空比高 8 位字节) ........................................................... 24
6.2.19 IOCC1 (TMR1L: PWM1 定时器低 8 位字节(Bit 7 ~ Bit 0))............................... 24
6.2.20 IOCD1 (TMR2L: PWM2 定时器低 8 位字节(Bit 7 ~ Bit 0) )............................... 24
6.2.21 IOCE1 (TMR3L: PWM3 定时器低 8 位字节(Bit 7 ~ Bit 0)) ................................ 24
6.2.22 IOCF1 (TMRH: PWM 定时器最高位 ................................................................. 24
6.3
TCC/WDT 和预分频器 .................................................................................... 25
6.4
I/O 端口 .......................................................................................................... 26
6.4.1
6.5
Port 6 输入状态改变引起唤醒/中断功能............................................................ 29
复位和唤醒 ..................................................................................................... 29
6.5.1
6.5.2
复位和唤醒........................................................................................................ 29
6.5.1.1
唤醒和中断模式应用摘要 ................................................................... 32
6.5.1.2
复位后寄存器的初值 .......................................................................... 33
6.5.1.3
控制器复位方块图 .............................................................................. 38
状态寄存器的 T 和 P 状态 ................................................................................. 39
6.6
中断 ................................................................................................................ 39
6.7
AD 转换器(ADC) ............................................................................................. 40
6.7.1
6.8
ADC 控制寄存器 (AISR/R8, ADCON/R9, ADOC/RA) ....................................... 41
6.7.1.1
R8 (AISR: ADC 输入选择寄存器)....................................................... 41
6.7.1.2
R9 (ADCON: ADC 控制器)................................................................. 42
6.7.1.3
RA (ADOC: ADC 偏移校准寄存器)..................................................... 43
6.7.2
ADC 数据寄存器 (ADDATA/RB, ADDATA1H/RC, ADDATA1L/RD)................... 44
6.7.3
ADC 采样时间................................................................................................... 44
6.7.4
AD 转换时间..................................................................................................... 44
6.7.5
休眠期间 ADC 的运行 ....................................................................................... 44
6.7.6
编程步骤/事项 ................................................................................................... 45
6.7.6.1
编程步骤 ............................................................................................ 45
6.7.6.2
程序示例 ............................................................................................ 46
PWM (脉冲宽度调制器) .................................................................................. 48
6.8.1
概述................................................................................................................... 48
6.8.2 累加定时器/计数器(TMRX: TMR1H/TWR1L, TMR2H /TWR2L, 或
TMR3H/TWR3L) ........................................................................................................... 49
6.8.3 PWM 周期 (PRDX: PRD1 或 PRD2)................................................................. 49
6.8.4 PWM 占空比 (DTX: DT1H/ DT1L, DT2H/DT2L 和 DT3H/DT3L; DLX:
DL1H/DL1L, DL2H/DL2L and DL3H/DL3L) ................................................................ 50
6.8.5 比较器 X............................................................................................................ 50
6.8.6
iv •
PWM 编程过程/步骤 ......................................................................................... 50
版本号 (V1.9) 01.11.2011
Contents
6.9
定时器............................................................................................................. 50
6.9.1
概述................................................................................................................... 50
6.9.2
功能描述 ........................................................................................................... 51
6.9.3
相关寄存器编程................................................................................................. 52
6.9.3.1
6.9.4
TMR1, TMR2 和 TMR3 的相关控制寄存器 ........................................ 52
定时器编程过程/步骤 ........................................................................................ 52
6.10 比较器............................................................................................................. 52
6.10.1 外部参考信号 .................................................................................................... 53
6.10.2 比较器输出........................................................................................................ 53
6.10.3 用比较器作运算放大器使用 .............................................................................. 54
6.10.4 比较器中断........................................................................................................ 54
6.10.5 从休眠状态唤醒................................................................................................. 54
6.11 振荡器............................................................................................................. 54
6.11.1 振荡器模式........................................................................................................ 54
6.11.2 晶体振荡/陶瓷谐振器(晶体).......................................................................... 55
6.11.3 外部 RC 振荡模式 ............................................................................................. 56
6.11.4 内部 RC 振荡模式 ............................................................................................. 56
6.12 上电探讨 ......................................................................................................... 57
6.12.1 外部上电复位电路 ............................................................................................. 57
6.12.2 残留电压保护 .................................................................................................... 58
6.13 代码选项 ......................................................................................................... 58
6.13.1 代码选项寄存器(Word 0)................................................................................... 59
6.13.2 代码选项寄存器(Word 1)................................................................................... 60
6.13.3 用户 ID 寄存器(Word 2) .................................................................................... 60
6.14 指令集............................................................................................................. 61
7
最大绝对值 .............................................................................................................. 63
8
直流电气特性........................................................................................................... 63
8.1
AD 转换器特性................................................................................................ 65
8.2
比较器(OP) 特性 ............................................................................................. 66
8.3
器件特性 ......................................................................................................... 66
9
交流电气特性........................................................................................................... 67
10
时序
.................................................................................................................... 68
附录
A
封装类型.................................................................................................................. 69
B
封装形式.................................................................................................................. 70
B.1 EM78P418ND18............................................................................................. 70
B.2 EM78P418NSO18 .......................................................................................... 71
B.3 EM78P418ND20............................................................................................. 72
B.4 EM78P418NSO20 .......................................................................................... 73
B.5 EM78P418NK24............................................................................................. 74
Product Specification (V1.6) 12.11.2007
•v
目录
B.6 EM78P418NSO24 .......................................................................................... 75
C
B.7 EM78P418NSS24 ............................................................................................ 76
EM78P418N 烧录引脚............................................................................................. 77
D
品质保证和可靠性.................................................................................................... 78
D.1 地址陷阱检测 .................................................................................................. 78
修订版本
版本号
版本描述
日期
1.0
首发行版
2005/06/23
1.1
在功能上增加了 IRC 偏移率
2006/01/06
1.2
增加了 EM78P418NAM SSOP 20-pin 的封装资料
2006/02/22
1.3
修订了 RE, RF, 和 IOCF0 寄存器内容
2006/06/01
1. 修订了综述,引脚排列,功能部分
1.4
2. 增加了环保产品信息
2006/10/02
3. 修订了功能图
1.5
删除了 EM78P418NAM SSOP 20-pin 封装资料
2007/11/13
1.6
修订了封装类型名称
2007/12/11
1.7
vi •
1.增加了 EM78P418NSS24 SSOP 24 引脚封装
2.增加了 EM78P418N 的烧录引脚
2008/08/20
1.8
修正附录 C EM78P418N 的烧录引脚图表
2010/02/03
1.9
代码选择字 0 的第 3 位 HLP 固定为 0
2011/1/11
版本号 (V1.9) 01.11.2011
EM78P418N
8位OTP微控制器
1
综述
EM78P418N是采用低功耗高速CMOS工艺设计开发的8位微控制器。其内部有4KX13位一次性编
程ROM(OPT-ROM),它还提供保护位避免用户在OTP的程序被读取。拥有三个代码选项以满足用
户的需要。
具有增强的OTP-ROM特性的EM78P418N能够为用户提供开发和校验程序的便利,另外,此OTP
设备为开发和编程工具提供了容易而有效的程序更新优势。用户可以使用义隆烧录器容易的烧写
自己的开发代码。
2
„
产品特性
CPU 配置
4K×13位片内 ROM
„
这四个主频在使用 ICE418N 仿真时可以通过编程设置四个
校正位来校正. OTP 在烧录的时候由义隆烧录器自动校正.
144×8 片内寄存器 (SRAM)
8级堆栈用于子程序嵌套
z 5V/4MHz 工作条件下耗电流小于 2.2 mA
z 3V/32kHz工作条件下耗电流典型值15 µA
„
高速晶振模式和 IRC 模式(32CLKS)从唤醒到工作模式的
快速起振时间只需要 2ms,
z
z
z
z
„
„
休眠模式下耗电流典型值1 µA
I/O 端口配置
3组双向 I/O口
z 唤醒端口: P6
z 8个可编程下拉I/O 引脚
z 8个可编程上拉I/O 引脚
z 8 个可编程漏极开路 I/O 引脚
z 外部中断 : P50
z
„
„
工作电压范围:
2.3V~5.5V,基于工作温度 0°C~70°C(商业级)
z 2.5V~5.5V,基于工作温度-40°C~85°C (工业级)
工作频率范围(基于 2 个时钟周期):
晶振模式: DC ~ 20 MHz, 5V; DC ~ 8MHz, 3V
z 外部RC模式:DC ~ 16MHz, 5V; DC ~ 4MHz, 3V
z 内部RC模式:4MHz 基于2.3V~5.5V
z
内部 RC
频率
温度
电压
制程 总计
(-40°C+85°C) (2.3V~5.5V)
4MHz
±10%
±5%
±4% ±19%
8MHz
±10%
±6%
±4% ±20%
1MHz
±10%
±5%
±4% ±19%
455kHz
±10%
±5%
±4% ±19%
(产品更新后规格书不保证同步更新)
„
可编程自由运行的看门狗定时器
„
上电电压检测器可检测电压 2.0V±0.1V
„
封装形式:
18 pin DIP300mil: EM78P418ND18J/S
z 18 pin SOP300mil: EM78P418NSO18J/S
z 20 pin DIP 300mil:EM78P418ND20J/S
z 20 pin SOP 300mil: EM78P418NSO20J/S
z 24 pin skinny DIP 300mil : EM78P418NK24J/S
z 24 pin SOP 300mil: EM78P418NSO24J/S
z 24 pin ssop 150mil: EM78P418NSS24J/S
z
偏移率
版本号 (V1.9) 01.11.2011
6 个中断源
TCC溢出中断
z 输入状态改变中断 (休眠模式下唤醒)
z 外部中断
z ADC转换结束中断
z PWM周期匹配结束中断
z 比较器输出高/低电平中断
z
z
„
外设配置
8位实时时钟/计数器(TCC),其信号源,触发源可编程
选择,溢出产生中断
z 8路AD转换器,精度可达12位
z 3个脉冲宽度调制器(PWM ),精度达10位的
z 1对比较器(可作为OP使用)
z 省电(休眠)模式
z
Note:EM78P418N 系列产品均为环保产品,不含对人体有害物
质。
•1
EM78P418N
8位OTP微控制器
3
引脚配置
P60/ADC0
1
18
P56/TCC
P61/ADC1
2
17
P55/OSCI
P62/ADC2
3
16
Vss
4
P63/ADC3
5
P64/ADC4
6
P65/ADC5
7
P66/ADC6
P67/ADC7
20
P57/CIN-
P60/ADC0/CO
2
19
P56/TCC
P54/OSCO
P61/ADC1
3
18
P55/OSCI
15
VDD
P62/ADC2
4
17
P54/OSCO
14
P53/PWM3/VREF
Vss
5
16
VDD
13
P52/PWM2
P63/ADC3
6
15
P53/PWM3/VREF
P64/ADC4
7
14
P52/PWM2
12
P51/PWM1
P65/ADC5
8
13
P51/PWM1
8
11
/RESET
P66/ADC6
9
12
/RESET
9
10
P50/INT
P67/ADC7
10
11
P50/INT
图 3-1 EM78P418ND18/SO18
P72
24
1
P73
图 3-2 EM78P418ND20/SO20
1
24
P 73
P71
2
23
P 74
P70/CIN +
3
22
P57 /CIN -
21
P55/OSCI
20
P54 /OSCO
19
P56 /TCC
18
P52/PWM 2
23
P74
P70/CIN +
3
22
P57 /CIN -
P60 /ADC0/CO
4
21
P56 /TCC
P61/ADC1
4
20
P55 /OSCI
P62/ADC2
5
19
P54 /OSCO
P60 /ADC0/CO
6
18
VDD
P64 /ADC4
7
Vss
8
P61/ADC1
5
P62/ADC2
6
Vss
7
EM78P418N-24Pin
2
EM78P418NSS24
P72
P71
17
VDD
16
P53 /PWM3/VREF
P51/PWM 1
P63 /ADC3
8
17
P53 /PWM3/VREF
P64 /ADC4
9
16
P52/PWM 2
P63 /ADC3
9
P65 /ADC5
10
15
P51/PWM 1
P65 /ADC5
10
15
P66 /ADC6
11
14
/RESET
P66 /ADC6
11
14
/RESET
P67 /ADC7
12
13
P50/INT
P67 /ADC7
12
13
P50/INT
图 3-3 EM78P418NK24/SO24
2•
EM78P418N-20Pin
1
EM78P418N-18Pin
P70/CIN+
图 3-4 EM78P418NSS24
版本号 (V1.9) 01.11.2011
(产品更新后规格书不保证同步更新)
EM78P418N
8位OTP微控制器
4
引脚说明
4.1 EM78P418ND18/SO18
符号
功能
引脚序号
类型
VDD
15
–
电源
OSCI
17
I
晶振模式:晶振输入或外部时钟输入端
RC 模式: RC 振荡器输入引脚
OSCO
16
I/O
晶振模式:晶振输出端或外部时钟输入引脚
RC 模式:时钟输出为 1 条指令周期。预分频比由 CONT 寄存器设定。
外部时钟信号输入
P60 ~ P67
1~3
5~9
I/O
双向 I/O 引脚
上电复位后设置值为默认值
P50 ~ P56
10,
12~14,
16 ~ 18
I/O
双向 I/O 引脚
上电复位后设置值为默认值
10
I
由下降沿或上升沿触发的外部中断引脚
1~3
5~9
I
AD 转换器
由 ADCON (R9) <0:2>设置
O
脉冲宽度调制输出
由 PWMCON (IOC80) <5:7>设置
I
为 ADC 提供外部参考电压
由 ADCON (R9) <7>设置
INT
ADC0 ~ ADC7
PWM1
PWM2
PWM3
VREF
12, 13,
14
14
/RESET
11
I
只用于输入
如果电压持续在低电平,系统将复位
当输入引脚电平改变时,由休眠模式唤醒
在正常模式下复位脚( /RESET)电压须小于 IC 电源电压( VDD)
TCC
18
I
施密特触发的实时时钟/计数器输入引脚
不使用时须与 VDD 或 VSS 相连
VSS
5
–
地
版本号 (V1.9) 01.11.2011
(产品更新后规格书不保证同步更新)
•3
EM78P418N
8位OTP微控制器
4.2 EM78P418ND20/SO20
符号
引脚序号
类型
VDD
16
–
OSCI
18
I
OSCO
17
O
功能
电源
晶振模式:晶振输入或外部时钟输入端
RC 模式: RC 振荡器输入引脚
晶振模式:晶振输出端或外部时钟输入端
RC 模式:时钟输出为 1 条指令周期。预分频比由 CONT
寄存器设定。
外部时钟信号输入
P50 ~ P57
11,13~15
17 ~ 20,
I/O
P60 ~ P67
2 ~ 4,
6 ~ 10
I/O
P70
1
I/O
INT
11
I
ADC0~ADC7
2 ~ 4,
6 ~ 10
I
PWM1
PWM2
PWM3
13, 14, 15
O
VREF
15
I
CIN-
I
CIN+
20
1
CO
2
O
/RESET
12
I
I
双向 I/O 引脚
上电复位后设置值为默认值
双向 I/O 引脚
上电复位后设置值为默认值
双向 I/O 引脚
上电复位后设置值为默认值
由下降沿或上升沿触发的外部中断引脚
AD 转换器
由 ADCON (R9) <0:2>设置
脉冲宽度调制输出
由 PWMCON (IOC80) <5:7>设置
为 ADC 提供外部参考电压
由 ADCON (R9) <7>设置
“–“ → 比较器 Vin–输入引脚
“+” → 比较器 Vin+输入引脚
比较器输出引脚 CO
由 CMPCON (IOCA0) <0:1>设置
只用于输入
如果电压持续在低电平,系统将复位
当输入引脚电平改变时,由休眠模式唤醒
在正常模式下复位脚( /RESET)电压须小于 IC 电源电
压( VDD)
4•
TCC
19
I
VSS
5
–
施密特触发的实时时钟/计数器输入引脚
不使用时须与 VDD 或 VSS 相连
地
版本号 (V1.9) 01.11.2011
(产品更新后规格书不保证同步更新)
EM78P418N
8位OTP微控制器
4.3 EM78P418NK24/SO24
符号
引脚序号
类型
VDD
18
-
OSCI
20
I
OSCO
19
O
功能
电源
晶振模式:晶振输入或外部时钟输入端
RC 模式: RC 振荡器输入引脚
晶振模式:晶振输出端或外部时钟输入端
RC 模式:时钟输出为 1 条指令周期。预分频比由 CONT 寄存器
设定。
外部时钟信号输入
P50 ~ P57
13, 15 ~ 17
19 ~ 22,
4 ~ 6,
P60 ~ P67
P70 ~ P74
8 ~ 12
I/O
I/O
3, 2, 1, 24, 23
I/O
13
I
INT
4 ~ 6,
ADC0 ~ADC7
8 ~ 12
I
PWM1
PWM2
PWM3
15, 16, 17
O
VREF
17
I
CIN–
22,
I
CIN+
3,
I
CO
4
O
/RESET
14
I
双向 I/O 引脚
上电复位后设置值为默认值
双向 I/O 引脚
上电复位后设置值为默认值
双向 I/O 引脚
上电复位后设置值为默认值
由下降沿或上升沿触发的外部中断引脚
AD 转换器
由 ADCON (R9) <0:2>设置
脉冲宽度调制输出
由 PWMCON (IOC80) <5:7>设置
为 ADC 提供外部参考电压
由 ADCON (R9) <7>设置 E
“–“ → 比较器 Vin–输入引脚
“+” → 比较器 Vin+输入引脚
比较器输出引脚 CO
由 CMPCON (IOCA0) <0:1>设置
只用于输入
如果电压持续在低电平,系统将复位
当输入引脚电平改变时,由休眠模式唤醒
在正常模式下复位脚( /RESET)电压须小于 IC 电源电压( VDD)
TCC
21
I
VSS
7
-
版本号 (V1.9) 01.11.2011
(产品更新后规格书不保证同步更新)
施密特触发的实时时钟/计数器输入引脚
不使用时须与 VDD 或 VSS 相连
地
•5
EM78P418N
8位OTP微控制器
5
功能结构图
图 5 EM78P418N 功能结构图
6•
版本号 (V1.9) 01.11.2011
(产品更新后规格书不保证同步更新)
EM78P418N
8位OTP微控制器
6
功能描述
6.1 操作寄存器
6.1.1 R0 (间址寄存器)
R0 并非实际存在的寄存器。它的主要功能是作为间接寻址指针。任何以R0为指针的指
令实际上是对RAM选择寄存器R4所指的数据进行操作。
6.1.2 R1 (定时时钟计数器)
„
对来自TCC脚的外部信号边沿或内部指令周期时钟进行累加。
„
外部TCC触发脉冲宽度必须大于一条指令周期。
„
计数器的信号方式由寄存器CONT的位4和位5设置 。
„
与其他寄存器一样可读写。
6.1.3 R2 (程序计数器) 和堆栈
R3
A11 A10 A9 A8
A7
~
A0
复位向量
中断向量
000H
008H
00 页0 0000~03FF
01 页1 0400~07FF
10 页2 0800~0BFF
11 页3 0C00~0FFF
堆栈级 1
堆栈级 2
堆栈级 3
堆栈级 4
堆栈级 5
椎栈级 6
椎栈级 7
椎栈级 8
用户存储空间
CALL
RET
RETL
RETI
FFFH
图 6-1 程序计数器组织
„
R2 和硬件堆栈为12为宽。其在6.1.3.1节的数据存储器结构中描述(下一节)
。
„
产生4K×13位片内ROM 地址以获取对应的程序指令编码。一个程序页是1024字长。
„ 复位后R2寄存器的内容被清零。
„
“JMP”指令允许直接载入程序计数器R2低10位。因此,“JMP”指令可以在同一个页
内任意跳转(1K)。
„
“CALL”指令载入PC的低10位,并将PC+1值入栈。因此子程序入口地址可以放在
同一页的任一位置(1K)。
版本号 (V1.9) 01.11.2011
(产品更新后规格书不保证同步更新)
•7
EM78P418N
8位OTP微控制器
„
"RET" ("RETL k", "RETI")指令程序计数器的值载入栈顶 。
„
“ADD R2, A”允许把A的相对地址加到当前PC上,同时PC的第九位及以上的逐次
增加
„
“MOV R2, A”允许从寄存器A装载到PC的低8位,同时PC的位9及位10(A8 ~ A9)
保持不变。
„
任何对R2进行操作的指令(除“ADD R2,A”外) (如“MOV R2, A”,“BC R2, 6”, ⋅⋅⋅⋅⋅) ,
PC的位9及位10保持不变。
„
对于EM78P418N,执行"JMP", "CALL"或任何改变R2的值的指令时,其最高2位
(A11和A10)的值由寄存器R3的PS0~PS1的内容载入。
除了改变R2值的指令外,所有的指令均为一条指令周期(fclk/2 或 fclk/4)。值得注意的
是,这些指令需要一条还是两条指令周期由代码寄存器CYES位决定。
8•
版本号 (V1.9) 01.11.2011
(产品更新后规格书不保证同步更新)
EM78P418N
8位OTP微控制器
6.1.3.1 数据存储器结构
Address
Page Registers
IOC Page Registers
IOC Page Registers
00
R0 (间接寻址寄存器)
保留
保留
01
R1 (定时/计数器)
保留
保留
02
R2 (程序计数器)
保留
保留
03
R3 (状态寄存器)
保留
保留
04
R4 (RAM 选择寄存器)
保留
保留
05
R5 (Port 5)
IOC50 (I/O 控制寄存器)
IOC51 (PRD1: PWM1 的周期)
06
R6 (Port 6)
IOC60 (I/O 控制寄存器)
IOC61 (PRD2: PWM2 的周期)
07
R7 (Port 7)
IOC70 (I/O 控制寄存器)
IOC71 (PRD3: PWM3 的周期)
08
R8 (ADC 输入选择寄存器)
IOC80 (PWM 控制寄存器)
IOC81 (DT1L: PWM1 占空比)
09
R9 (ADC 控制寄存器)
IOC90 (时间控制寄存器)
IOC91 (DT2L: PWM2 占空比)
0A
RA (ADC 偏移校准寄存器)
IOCA0
(比较控制寄存器)
IOCA1 (DT3L: PWM3 占空比)
0B
RB (ADDATA: ADC 转换结果, IOCB0
位 11 ~ 位 4)
(下拉控制寄存器)
IOCB1 (DTH: PWM 占空比)
0C
RC (ADDATA1H: ADC 转换结果 IOCC0
位 11 ~ 位 8)
(漏极开路控制寄存器)
IOCC1 (TIMER1L: PWM1 定时
器)
0D
RD (ADDATA1L: ADC 转换结果 IOCD0
位 7 ~ 位 0)
(上拉控制寄存器)
IOCD1 (TIMER2L: PWM2 定时
器)
0E
RE (唤醒控制寄存器)
IOCE0 (WDT 控制寄存器)
IOCE1 (TIMER3L: PWM3 定时
器)
0F
RF (中断状态寄存器)
IOCF0 (中断屏蔽寄存器)
IOCF1 (TMRH: PWM 定时器)
10
︰
一般寄存器
1F
20
︰
Bank 0 Bank 1 Bank 2 Bank 3
3F
版本号 (V1.9) 01.11.2011
(产品更新后规格书不保证同步更新)
•9
EM78P418N
8位OTP微控制器
6.1.4 R3 (状态寄存器)
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
IOCS
PS1
PS0
T
P
Z
DC
C
Bit 7 (IOCS): I/O控制寄存器段选择位
0: 选择0段 (IOC50 ~ IOCF0)
1: 选择1段 (IOC51 ~ IOCF1)
Bit 6 ~ Bit 5 (PS1 ~ PS0): 页码选择位. PS0 ~ PS1用于选择程序存储器页码。当执行
“JMP”“CALL”或者任何改变程序计数器PS0~PS1的指令(如:MOV R2,
A),PS0~PS1的值被载入所选择程序存储器页码所在页对应的程序计数
器的位11和位12中。注意的是指令RET(RETL,TETI)指令不会改变
PS0~PS1的值。也就是说,无论当前位PS0~PS1的设置值为多少,都会
返回子程序被调用时的页面 。
PS1
PS0
程序存储页 [地址]
0
0
页 0 [000-3FF]
0
1
页 1 [400-7FF]
1
0
页 2 [800-BFF]
1
1
页 3 [C00-FFF]
Bit 4 (T): 时间溢出位。
执行指令“SLEP”“WDTC”后或者上电复位时置1,WDT溢出时清零。
Bit 3 (P): 省电标志位。
上电复位或执行“WDTC”指令后置1,执行“SLEP”指令时清零。
注意
位 4 & 位3 (T & P) 为只读.
Bit 2 (Z): 零标志位。算术或逻辑运算的结果为零时置1。
Bit 1 (DC): 辅助进位标志
Bit 0 (C): 进位标志
6.1.5 R4 (RAM选择寄存器)
Bit 7 & Bit 6: 用于选择存储器0 ~ 3.
Bit 5 ~ Bit 0: 在间接寻址的模式下用于选择寄存器(地址:00~3F)
。
关于数据存储器结构,请查阅6.1.3.1节的《数据存储器结构》表格。
6.1.6 R5 ~ R7 (Port 5 ~ Port 7)
R5 & R6 为双向I/O寄存器。
R7 为双向I/O寄存器。R7寄存器的前3位固定设置为零。
10 •
版本号 (V1.9) 01.11.2011
(产品更新后规格书不保证同步更新)
EM78P418N
8位OTP微控制器
6.1.7 R8 (AISR: ADC输入选择寄存器)
AISR寄存器定义PORT6口引脚分别作为模拟输入口或数字I/O口。
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
ADE7
ADE6
ADE5
ADE4
ADE3
ADE2
ADE1
ADE0
Bit 7 (ADE7): AD转换使能P67引脚。
。
0: 禁止ADC7, P67作为I/O引脚。
1: 使能ADC7, P67 作为模拟输入引脚。
Bit 6 (ADE6): AD转换使能P66引脚。
0: 禁止ADC6, P66作为I/O引脚。
1: 使能ADC6,P66作为模拟输入引脚。
Bit 5 (ADE5): AD转换使能P65引脚。
0: 禁止ADC5, P65作为I/O引脚。
1: 使能ADC5,P65作为模拟输入引脚。
Bit 4 (ADE4): AD转换使能P64引脚。
0: 禁止ADC4, P64作为I/O引脚。
1: 使能ADC4,P64作为模拟输入引脚。
Bit 3 (ADE3): AD转换使能P63引脚。
0: 禁止ADC3, P63作为I/O引脚。
1: 使能ADC3,P63作为模拟输入引脚。
Bit 2 (ADE2): AD转换使能P62引脚。
0: 禁止ADC2, P62作为I/O引脚。
1: 使能ADC2,P62作为模拟输入引脚。
Bit 1 (ADE1): AD转换使能P61引脚。
0: 禁止ADC1, P61作为I/O引脚。
1: 使能ADC1,P61作为模拟输入引脚。
Bit 0 (ADE0): AD转换使能P60引脚。
0: 禁止ADC0, P60作为I/O引脚。
1: 使能ADC0,P60作为模拟输入引脚。
版本号 (V1.9) 01.11.2011
(产品更新后规格书不保证同步更新)
• 11
EM78P418N
8位OTP微控制器
注意
当P60/ADC0作为模拟输入或数字I/O口时,注意IOCA0控制寄存器的位COS1和COS0
控制位的优先级。比较器/OP选择位如6.2.6节《IOCA0(CMPCON:比较控制寄存器)》
表格所示。
P60/ADC0/CO引脚优先级如下:
P60/ADE0/CO 优先级
高
中
低
CO
ADC0
P60
6.1.8 R9 (ADCON: ADC控制寄存器)
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
VREFS
CKR1
CKR0
ADRUN
ADPD
ADIS2
ADIS1
ADIS0
Bit 7 (VREFS): ADC的Vref的输入源。
0: ADC的Vrdf引脚与Vdd相连(默认值)
,P53/VREF引脚执行P53的功能。
1: ADC 的Vref与P53/VREF相连。
注意
P53/PWM3/VREF引脚不能同时用作PWM3 和VREF功能。如果P53/PWM3/VREF作为
VREF模拟输入引脚,那么PWM3E必须设置为“0”。
P53/PWM3/VREF引脚的优先级如下:
P53/PWM3/VREF引脚优先级
高
中
低
VREF
PWM3
P53
Bit 6 & Bit 5 (CKR1 & CKR0): ADC振荡时钟频率的预分频比
00 = 1: 16 (默认值)
01 = 1: 4
10 = 1: 64
11 = 1: WDT环型振荡器频率
CKR1:CKR0
12 •
运行模式
最大运行频率
00
Fosc/16
4 MHz
01
Fosc/4
1 MHz
10
Fosc/64
16MHz
11
内部 RC(WDT 定
时基准)
-
版本号 (V1.9) 01.11.2011
(产品更新后规格书不保证同步更新)
EM78P418N
8位OTP微控制器
Bit 4 (ADRUN): ADC 开始运行位
0: 转换完成后清零。此标志位不能由软件清零。
1: AD转换开始。此标志位可由软件设置1。
Bit 3 (ADPD): ADC低功耗模式。
0: 关闭参考电阻进入省电模式,即使此时CPU在运行。
1: ADC运行模式。
Bit 2 ~ Bit 0 (ADIS2 ~ADIS0): 模拟输入选择位
000 = ADIN0/P60
001 = ADIN1/P61
010 = ADIN2/P62
011 = ADIN3/P63
100 = ADIN4/P64
101 = ADIN5/P65
110 = ADIN6/P66
111 = ADIN7/P67
仅当位ADIF(见6.1.14节)和位ADRUN同时为低时,这些标志位可更改。
6.1.9 RA (ADOC: ADC偏移校准寄存器)
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): ADC 偏移校准使能位
0: 禁止校准功能
1: 使能校准功能
Bit 6 (SIGN): 偏移电压极性设置
0: 负电压
1: 正电压
Bit 5 ~ Bit 3 (VOF[2] ~ VOF[0]): 偏移电压位
VOF[2]
VOF[1]
VOF[0]
EM78P418N
ICE418N
0
0
0
0LSB
0LSB
0
0
0
1
1
0
2LSB
4LSB
1LSB
2LSB
0
1
1
6LSB
3LSB
1
0
0
8LSB
4LSB
1
0
1
10LSB
5LSB
1
1
0
12LSB
6LSB
1
1
1
14LSB
7LSB
Bit 2 ~ Bit 0: 未使用,读取为“0”
版本号 (V1.9) 01.11.2011
(产品更新后规格书不保证同步更新)
• 13
EM78P418N
8位OTP微控制器
6.1.10 RB (ADDATA: 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
当AD转换完成后,结果载入ADDATA 中。ADRUN位清零,ADIF位被置1。(见6.1.14
章节)
RB为只读。
6.1.11 RC (ADDATA1H: 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
当AD转换完成后,结果载入ADDATA 1H中。ADRUN位清零,ADIF位被置1(见6.1.14
章节)。
RC 为只读。
6.1.12 RD (ADDATA1L: 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
当AD转换完成后,结果载入ADDATA 1L。ADRUN位清零,ADIF被置1(见6.1.14章节)
RD为只读。
6.1.13 RE (WUCR: 唤醒控制寄存器)
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
EM78P418N
“0”
“0”
“0”
“0”
ADWE CMPWE ICWE
“0”
ICE418N 仿真器
C3
C2
C1
C0
ADWE CMPWE ICWE
“0”
Bit 7 ~ Bit 4: [For EM78P418N]: 未使用,读取为“0”。
14 •
版本号 (V1.9) 01.11.2011
(产品更新后规格书不保证同步更新)
EM78P418N
8位OTP微控制器
[With Simulator (C3~C0)]: 在IRC振荡模式下,IRC校准位。对于ICE418N仿真器,在
IRC振荡模式下这些数值是IRC的校准位。
C3
C2
C1
C0
频率 (MHz)
0
0
0
0
(1-36%) x F
0
0
0
0
0
1
1
0
(1-31.5%) x F
(1-27%) x F
0
0
1
1
(1-22.5%) x F
0
1
0
0
(1-18%) x F
0
1
0
1
(1-13.5%) x F
0
1
1
0
(1-9%) x F
0
1
1
1
(1-4.5%) x F
1
1
1
1
F (default)
1
1
1
0
(1+4.5%) x F
1
1
0
1
(1+9%) x F
1
1
0
0
(1+135%) x F
1
0
1
1
(1+18%) x F
1
1
0
0
1
0
0
1
(1+22.5%) x F
(1+27%) x F
1
0
0
0
(1+31.5%) x F
Note: 1. 上述频率值均为理论值,取自一个高频模式的实例。因此这些数据仅供参考。实际值取决于实际的
程序。
2. 低频模式可参考类似的计算方式。
Bit 3 (ADWE): ADC唤醒使能位
0: 禁止 ADC唤醒
1: 使能 ADC唤醒
当带有AD转换完成被用作进入中断向量或者将EM78P418N从睡眠状态
唤醒,ADWE为必须置为市恩那个。
Bit 2 (CMPWE): 比较器唤醒使能位
0: 禁止比较器唤醒
1: 使能比较器唤醒
当比较器的输出状态改变用于将EM78P418N由休眠状态唤醒时,
CMPWE位必须使能。
Bit 1 (ICWE): Port 6输入状态改变唤醒使能位
0: 禁止Port 6输入状态改变唤醒
1: 使能Port 6输入状态改变唤醒
当Port 6输入状态改变用作将EM78P418N由休眠状态唤醒,ICWE位必须
使能。
Bit 0: 未使用,读取为“0”
版本号 (V1.9) 01.11.2011
(产品更新后规格书不保证同步更新)
• 15
EM78P418N
8位OTP微控制器
6.1.14 RF (中断状态寄存器)
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
CMPIF
PWM3IF
PWM2IF
PWM1IF
ADIF
EXIF
ICIF
TCIF
注意
■ “1”意味着有中断请求,“0”意味着无中断请求
■ RF可以由指令清零但是不能置1
■ IOCF0是中断状态寄存器
■ 读取到的RF的结果为RF和IOCF0相与(逻辑与)的结果
Bit 7 (CMPIF): 比较器中断标志。当比较器输出变化时置1,由软件清零。
Bit 6 (PWM3IF): PWM3 (脉冲宽度调制器) 中断标志。当到达设定周期时置1,由软件清
零。
Bit 5 (PWM2IF): PWM2 (脉冲宽度调制器)中断标志。当到达设定周期时置1,由软件清
零。
Bit 4 (PWM1IF): PWM1 (脉冲宽度调制器) 中断标志。当到达设定周期时置1,由软件清
零。
Bit 3 (ADIF): 模数转换中断标志。当AD转换完成时置1,由软件清零。
Bit 2 (EXIF): 外部中断标志。在/INT引脚产生下降沿时置1,由软件清零。
Bit 1 (ICIF): Port 6端口输入状态改变时产生中断。当PORT6端口输入状态改变时置1,
由软件清零。
Bit 0 (TCIF): TCC溢出中断标志。溢出时置1,由软件清零。
6.1.15 R10 ~ R3F
所有的寄存器都是8位通用寄存器。
16 •
版本号 (V1.9) 01.11.2011
(产品更新后规格书不保证同步更新)
EM78P418N
8位OTP微控制器
6.2 特殊功能寄存器
6.2.1 A (累加器)
用于内部数据传输或指令操作数暂存,它不可寻址。
6.2.2 CONT (控制寄存器)
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
INTE
INT
TS
TE
PSTE
PST2
PST1
PST0
Bit 7 (INTE): INT 信号沿
0: INT引脚上升沿而产生中断
1: INT引脚下降沿而产生中断
Bit 6 (INT): 中断使能标志位
0: 由DISI指令或硬件禁止中断
1: ENI/RETI指令使能中断
此位只能读取。
Bit 5 (TS): TCC信号源
0: 内部指令周期时钟。如果P56引脚作为I/O口用时,TS必须设置为“0”
1: TCC引脚转换
Bit 4 (TE): TCC信号沿
0: TCC引脚信号沿发生由低到高时TCC加1
1: TCC引脚信号沿发生由高到低时TCC加1
Bit 3 (PSTE): TCC预分频器使能位
0: 禁止预分频器。TCC预分频比为1:1。
1: 使能预分频器。TCC预分频比设置见Bit 2 ~ Bit 0。
Bit 2 ~ Bit 0 (PST2 ~ PST0): TCC预分频比选择位
PST2
PST1
PST0
TCC 预分频比
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
注意
Tcc溢出周期[1/Fosc x prescaler x 256 (Tcc cnt) x 1 (CLK=2)]
Tcc溢出周期 [1/Fosc x prescaler x 256 (Tcc cnt) x 2 (CLK=4)]
版本号 (V1.9) 01.11.2011
(产品更新后规格书不保证同步更新)
• 17
EM78P418N
8位OTP微控制器
6.2.3 IOC50 ~ IOC70 (I/O端口控制寄存器)
0: 定义相应I/O引脚为输出
1: 定义相应I/O引脚为高阻态
IOC50, IOC60, 和IOC70寄存器均为可读写。
注意
使用EM78P418N-18 Pin 和 EM78P418N-20Pin时,代码选用寄存器(Word 0)的位9必须
设置为“1”。 使用EM78P418N-18PIN时,必须设置IOC50的位7和IOC70的位0都设置为
“0”。这些设置都不会有额外功耗。
6.2.4 IOC80 (PWMCON: 脉冲宽度调制控制寄存器)
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
PWM3E
PWM2E
PWM1E
“0”
T1EN
T1P2
T1P1
T1P0
Bit 7 (PWM3E): PWM3使能位
0: PWM3功能关闭(默认值)
,它的相关引脚执行P53的功能。
1: PWM3 功能开启,它的相关引脚自动设置为输出功能。
注意
P53/PWM3/VREF 引脚不能同时使用PWM3 和 VREF功能。如果P53/PWM3/VREF引脚
定义为VREF模拟输入口,那么PWM3E必须设置为“0”。
P53/PWM3/VREF使用的优先级如下:
P53/PWM3/VREF引脚优先级
高
中
低
VREF
PWM3
P53
Bit 6 (PWM2E): PWM2使能位。
0: PWM2功能关闭(默认值)
,它的相关引脚执行P52的功能。
1: PWM2功能开启,它的相关引脚自动设置为输出功能。
Bit 5 (PWM1E): PWM1使能位
0: PWM1功能关闭(默认值)
,它的相关引脚执行P51的功能。
1: PWM1功能开启,它的相关引脚自动设置为输出功能。
Bit 4: 未使用读取为“0”
Bit 3 (T1EN): TMR1使能位
0: TMR1功能关闭(默认值)
1: TMR1功能开启
18 •
版本号 (V1.9) 01.11.2011
(产品更新后规格书不保证同步更新)
EM78P418N
8位OTP微控制器
Bit 2 ~ Bit 0 (T1P2 ~ T1P0): TMR1时钟预分频比选择位
T1P2
T1P1
T1P0
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
预分频比
6.2.5 IOC90 (TMRCON: 定时控制寄存器)
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
T3EN
T2EN
T3P2
T3P1
T3P0
T2P2
T2P1
T2P0
Bit 7 (T3EN): TMR3使能位
0: TMR3功能关闭(默认值)
1: TMR3功能开启
Bit 6 (T2EN): TMR2使能位
0: TMR2功能关闭(默认值)
1: TMR2功能开启
Bit 5 ~ Bit 3 (T3P2 ~ T3P0): TMR3时钟预分频比选择位
T3P2
T3P1
T3P0
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
预分频比
Bit 2~Bit 0 ( T2P2: T2P0 ): TMR2时钟预分频比选择位
T2P2
T2P1
T2P0
0
0
0
1:2(默认)
0
0
1
1:4
0
1
0
1:8
0
1
1
0
1
0
1:16
1:32
1
0
1
1:64
1
1
0
1:128
1
1
1
1:256
版本号 (V1.9) 01.11.2011
(产品更新后规格书不保证同步更新)
预分频比
• 19
EM78P418N
8位OTP微控制器
6.2.6 IOCA0 (CMPCON: 比较控制寄存器)
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
“0”
“0”
“0”
“0”
“0”
CPOUT
COS1
COS0
Bit 7 ~ Bit 3: 未使用,读取为“0”。
Bit 2 (CPOUT): 比较器的输出结果
Bit 1 ~ Bit 0 (COS1 ~ COS0): 比较器/OP选择位
COS1
COS0
0
0
比较器和 OP 未使用,P60 定义为 通用 I/O 引脚。
0
1
定义为比较器,P60 定义为通用 I/O 引脚
1
0
定义为比较器,P60 定义为比较器的输出引脚(CO)
1
1
定义为 OP,P60 定义为 OP 输出引脚(CO)
功能描述
注意
■ P60/ADC0/CO 引脚的CO和ADCO功能不能同时使用。
■ P60/ADC0/CO 引脚优先级如下:
P60/ADE0/CO 优先级
高
中
低
CO
ADC0
P60
6.2.7 IOCB0 (下拉控制寄存器)
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
/PD7
/PD6
/PD5
/PD4
/PD3
/PD2
/PD1
/PD0
IOCB0寄存器可读写。
Bit 7 (/PD7):P67引脚下拉功能控制位
0: 使能内部下拉功能
1: 禁止内部下拉功能
Bit 6 (/PD6): P66引脚下拉功能控制位
Bit 5 (/PD5): P65引脚下拉功能控制位
Bit 4 (/PD4): P64引脚下拉功能控制位
Bit 3 (/PD3): P63引脚下拉功能控制位
Bit 2 (/PD2): P62引脚下拉功能控制位
Bit 1 (/PD1): P61引脚下拉功能控制位
Bit 0 (/PD0): P60引脚下拉功能控制位
20 •
版本号 (V1.9) 01.11.2011
(产品更新后规格书不保证同步更新)
EM78P418N
8位OTP微控制器
6.2.8 IOCC0 (漏极开路控制寄存器)
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
/OD7
/OD6
/OD5
/OD4
/OD3
/OD2
/OD1
/OD0
IOCC0寄存器可读写。
Bit 7 (OD7): P57漏极开路引脚控制位
0: 使能漏极开路输出
1: 禁止漏极开路输出
Bit 6 (OD6): P56漏极开路引脚控制位
Bit 5 (OD5): P55漏极开路引脚控制位
Bit 4 (OD4): P54漏极开路引脚控制位
Bit 3 (OD3): P53漏极开路引脚控制位
Bit 2 (OD2): P52漏极开路引脚控制位
Bit 1 (OD1): P51漏极开路引脚控制位
Bit 0 (OD0): P50漏极开路引脚控制位
6.2.9 IOCD0 (上拉控制寄存器)
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
/PH7
/PH6
/PH5
/PH4
/PH3
/PH2
/PH1
/PH0
IOCD0寄存器可读写。
Bit 7 (/PH7): P67引脚上拉功能控制位
0: 使能内部上拉功能
1: 禁止内部上拉功能
Bit 6 (/PH6):P66引脚上拉功能控制位
Bit 5 (/PH5): P65引脚上拉功能控制位
Bit 4 (/PH4): P64引脚上拉功能控制位
Bit 3 (/PH3): P53引脚上拉功能控制位
Bit 2 (/PH2): P52引脚上拉功能控制位
Bit 1 (/PH1): P51引脚上拉功能控制位
Bit 0 (/PH0): P50引脚上拉功能控制位
6.2.10 IOCE0 (WDT控制寄存器)
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
WDTE
EIS
PSWE
PSW2
PSW1
PSW0
“0”
“0”
Bit 7 (WDTE): 看门狗定时器控制位
版本号 (V1.9) 01.11.2011
(产品更新后规格书不保证同步更新)
• 21
EM78P418N
8位OTP微控制器
0: 禁止WDT
1: 使能WDT
WDTE 可读写。
Bit 6 (EIS): 定义P50 (/INT)引脚控制位
0: P50作为通用I/O引脚
1: /INT, 外部中断引脚,此时P50的I/O控制位(IOC50的位0)必须设置为
“1”。
注意
■ 当EIS的值为“0”时,/INT通道被屏蔽。当EIS的值为“1”时,/INT引脚的状态可由PORT5
(R5)读取。可参考6.4节的图6-4(P50(INT)I/O端口和I/O控制寄存器电路)。
■ EIS为可读写。
Bit 5 (PSWE): WDT 预分频器控制位
0: 禁止预分频器。预分频比为1:1。
1: 使能预分频器。WDT预分频比设置见位4~位2。
Bit 4 ~ Bit 2 (PSW2 ~ PSW0): WDT 预分频比选择位。
PSW2
PSW1
PSW0
WDT预分频比
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
Bit 1 ~ Bit 0: 未使用,读取为“0”
6.2.11 IOCF0 (中断屏蔽寄存器)
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
CMPIE
PWM3IE
PWM2IE
PWM1IE
ADIE
EXIE
ICIE
TCIE
注意
■ IOCF0寄存器可读写。
■ 各自的中断使能通过设置IOCF中相应的位值为“1”。
■ 全局中断使能使用ENI指令,禁止使用DISI指令。可参考6.6节(中断)中的图6-8(中
断输入电路)。
Bit 7 (CMPIE): CMPIF中断控制位
0: 禁止CMPIF中断
22 •
版本号 (V1.9) 01.11.2011
(产品更新后规格书不保证同步更新)
EM78P418N
8位OTP微控制器
1: 使能CMPIF中断
当比较器输出状态改变用于进入中断时,CMPIE位必须设置为使能状态。
Bit 6 (PWM3IE): PWM3IF中断控制位
0: 禁止PWM3中断
1: 使能PWM3中断
Bit 5 (PWM2IE): PWM2IF中断控制位
0: 禁止PWM2中断
1: 使能PWM2中断
Bit 4 (PWM1IE): PWM1IF中断控制位
0: 禁止PWM1中断
1: 使能PWM1中断
Bit 3 (ADIE): ADIF 中断控制位
0: 禁止ADIF中断
1: 使能ADIF中断
当ADC转换完成用于中断时,ADIE位必须设置为“使能”状态。
Bit 2 (EXIE): EXIF中断控制位
0: 禁止EXIF中断
1: 使能EXIF中断
Bit 1 (ICIE): ICIF中断控制位
0: 禁止ICIF中断
1: 使能ICIF中断
如Port 6口状态改变用于中断,ICIE位必须设置为“使能”状态。
Bit 0 (TCIE): TCIF中断控制位
0: 禁止TCIF中断
1: 使能TCIF中断
6.2.12 IOC51 (PRD1: PWM1 周期)
IOC51的内容为PWM1的周期(时间基准)。PWM1的频率为其周期的倒数。
6.2.13 IOC61 (PRD2: PWM2 周期)
IOC61的内容为PWM2的周期(时间基准)。PWM2的频率为其周期的倒数。
6.2.14 IOC71 (PRD3: PWM3 周期)
IOC71的内容为PWM3的周期(时间基准)。PWM3的频率为其周期的倒数。
版本号 (V1.9) 01.11.2011
(产品更新后规格书不保证同步更新)
• 23
EM78P418N
8位OTP微控制器
6.2.15 IOC81 (DT1L: PWM1占空比低8位字节(Bit 7 ~ Bit 0))
直到PWM1的值和TMR1的值相等为止,指定的值使PWM1的输出值一直持续于高电平
状态。
6.2.16 IOC91 (DT2L: PWM1占空比低8位字节(Bit 7 ~ Bit 0))
直到PWM2的值和TMR2的值相等为止,指定的值使PWM2的输出值一直持续于高电平
状态。
6.2.17 IOCA1 (DT3L: PWM3占空比低8位字节(Bit 7 ~ Bit 0))
直到PWM3的值和TMR3的值相等为止,指定的值使PWM3的输出值一直持续在高电平
状态。
6.2.18 IOCB1 (DTH: PWM占空比高8位字节)
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
“0”
“0”
PWM3[9]
PWM3[8]
PWM2[9]
PWM2[8]
PWM1[9]
PWM1[8]
Bit 7 & Bit 6: 未使用,读取为“0”
Bit 5 & Bit 4 (PWM3[9], PWM3[8]): PWM3占空比最高位。
Bit 3 & Bit 2 (PWM2[9], PWM2[8]): PWM2占空比最高位。
Bit 1 & Bit 0 (PWM1[9], PWM1[8]): PWM1占空比最高位。
6.2.19 IOCC1 (TMR1L: PWM1定时器低8位字节(Bit 7 ~ Bit 0))
IOCC1的内容只能读取。
6.2.20 IOCD1 (TMR2L: PWM2定时器低8位字节(Bit 7 ~ Bit 0) )
IOCD1的内容只能读取。
6.2.21 IOCE1 (TMR3L: PWM3定时器低8位字节(Bit 7 ~ Bit 0))
IOCE1的内容只能读取。
6.2.22 IOCF1 (TMRH: PWM定时器最高位
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
“0”
“0”
TMR3[9]
TMR3[8]
TMR2[9]
TMR2[8]
TMR1[9]
TMR1[8]
IOCF1的内容只能读取。
Bit 7 & Bit 6: 未使用,读取为“0”
Bit 5 & Bit 4 (TMR3 [9], TMR3 [8]): PWM1定时器最高位
Bit 3 & Bit 2 (TMR2 [9], TMR2 [8]): PWM2定时器最高位
Bit 1 & Bit 0 (TMR1 [9], TMR1 [8]): PWM3定时器最高位
24 •
版本号 (V1.9) 01.11.2011
(产品更新后规格书不保证同步更新)
EM78P418N
8位OTP微控制器
6.3 TCC/WDT 和预分频器
EM78P418N有2个8位计数器分别供TCC和WDT预分频器使用。CONT寄存器的
PST0~PST2位用于设定TCC的预分频器,IOCE0寄存器的PWR0~PWR2位用于设定
WDT的预分频器。每次写TCC都会将预分频器清0。WDT和预分频器的值用“WDTC”和
“SLEP”指令清零。图6-2(下一页)描述TCC/WDT的结构图。
TCC (R1)是一个8位定时/计数器。TCC时钟沿可作为内部时钟信号或外部信号输入引脚
(TCC引脚输入的触发沿可选)。如果时钟源取自内部时钟,TCC会在每个指令周期后
加1(无预分频器时)。可参考图6-2,CLK=Fosc/2 或 CLK=Fosc/4由代码寄存器CLKS
位决定。 若CLKS位为“0”,CLK=Fosc/2;若CLKS位为“1”,CLK=Fosc/4。如果信号源
由外部时钟输入,处于TCC引脚的每个下降沿或上升沿时TCC会自动加1。TCC引脚输
入的时间长度(持续在高电平或低电平)必须大于1CLK。
注意
进入休眠状态,内部TCC停止运行。然而,在AD转换期间,如果RE寄存器的ADWE位
使能,即使TCC载入“SLEP”指令,TCC仍在继续运行。
看门狗定时器的时钟源是一个自由运行的片内RC振荡器。即使振荡器驱动已经关闭(如
在休眠模式下),WDT仍在继续运行。通常在运行或休眠模式下,WDT溢出(若WDT
处于使能状态)会引起复位。在通常模式下,WDT可在任意时刻由软件使能或禁止。可
参考IOCE0寄存器的WDTE位(6.2.10节的IOCE0(WDT控制寄存器))。在无设预分
1
频器时,WDT溢出周期约为18ms 。
1
VDD=5V, Setup time period = 16.5ms ± 30%.
VDD=3V, Setup time period = 18ms ± 30%.
版本号 (V1.9) 01.11.2011
(产品更新后规格书不保证同步更新)
• 25
EM78P418N
8位OTP微控制器
CLK (Fosc/2 or Fosc/4)
数据总数
0
TCC引脚
TE (CONT)
1
多路
选择
器
(MU
X)
TS (CONT)
WDT
WDTE
(IOCE0)
8位计数器
8 到 1 MUX
WDT 溢出
8位计数器(IOCC1)
8 to 1 MUX
同步2个
时钟周
期
预分频器
TCC (R1)
TCC 溢出中断
PSR2~0
(CONT)
预分频器
PSW2~0
(IOCE0)
图 6-2 TCC 和 WDT 结构图
6.4 I/O 端口
I/O 寄存器(Port 5, Port 6, Port 7) 为双向三态I/O端口。通过IOCB0, IOCC0和 IOCD0分
别设置内部上拉,下拉和漏极开路功能。Port 6端口有输入状态改变中断(或唤醒)功
能。通过I/O控制寄存器(IOC50 ~ IOC70),每个I/O引脚可设置为输入或输出引脚。I/O 寄
存器和I/O 控制寄存器均可读写。Port 5, Port 6和Port 7的I/O内部电路描述分别见图
6-3,6-4和6-5(下一页)。 Port 6输入状态改变引起中断/唤醒见图6-6。
26 •
版本号 (V1.9) 01.11.2011
(产品更新后规格书不保证同步更新)
EM78P418N
8位OTP微控制器
PCRD
Q
_
PORT
P
R
D
CLK
Q
C
L
Q
P
R
_
CLK
Q
PCWR
IOD
D
PDWR
C
L
PDRD
M
U
X
0
1
注意: 上拉和漏极开路没在此图中显示。
图 6-3 Port 5 和 Port 7的 I/O端口 和 I/O 控制寄存器电路
PCRD
Q
_
Q
P
R
D
CLK
PCWR
C
L
P50, /INT
PORT
Q
P
R
_
CLK
Q
D
IOD
PDWR
C
L
Bit 6 of IOCE0
D
P
R
CLK
C
L
0
Q
1
_
M
U
X
Q
PDRD
TI 0
INT
注意: 上拉和漏极开路不在此图中显示。
图 6-4 P50 (/INT)的I/O端口和 I/O 控制寄存器电路
版本号 (V1.9) 01.11.2011
(产品更新后规格书不保证同步更新)
• 27
EM78P418N
8位OTP微控制器
PCRD
Q
_
D
CLK
PCWR
Q
P60 ~ P67
Q
PORT
_
Q
0
IOD
D
CLK
PDWR
M
U
X
1
PDRD
TI n
D
CLK
Q
_
Q
注:上/下拉和漏极开路不在此图中显示。
图 6-5 Port 6的I/O 端口和 I/O控制寄存器
图 6-6 输入状态改变引起中断/唤醒的Port 6结构图
28 •
版本号 (V1.9) 01.11.2011
(产品更新后规格书不保证同步更新)
EM78P418N
8位OTP微控制器
6.4.1 Port 6输入状态改变引起唤醒/中断功能
(1) 唤醒
(a) 休眠前
1. 关WDT
2. 读 Port 6(MOV R6,R6)
3. 执行“ENI”或“DISI”指令
4. 使能唤醒位(设置RE ICWE =1)
5. 执行“SLEP ”指令
(b) 唤醒后
→下一条指令
(2) 唤醒和中断
(a) 休眠前
1. 关WDT
2. 读 Port 6(MOV R6,R6)
3. 执行“ENI”或“DISI”指令
4. 使能唤醒位(设置RE ICWE =1)
5. 使能中断(设置 IOCF0 ICIE =1)
6. 执行“SLEP ”指令
(b) 唤醒后
1. 若执行 "ENI" → 中断入口地址(008H)
2. 若执行"DISI" → 下一条指令
(3) 中断
(a) Port 6引脚状态改变前
1. 读 Port 6(MOV R6,R6)
2. 执行“ENI”或“DISI”指令
3. 使能中断(设置 IOCF0 ICIE =1)
(b) Port 6引脚状态改变(中断)后
1. 若执行 "ENI" → 中断入口地址(008H)
2. 若执行"DISI" → 下一条指令
6.5 复位和唤醒
6.5.1 复位和唤醒
复位由下列情况之一产生:
1. 上电复位
2. /RESET引脚输入低电平
3. WDT定时器溢出(若使能)
检测到复位后,系统保持复位状态时间约为18ms。当在LXT模式时,复位时间为500ms。
一旦复位发生,会执行以下功能(起始地址为000h):
„
振荡器继续运行,或起振(若在休眠模式)
„
程序计数器(R2)清零
„
所有I/O引脚设置为输入模式(高阻态)
„
看门狗定时器和预分频器清零
„ 上电时,R3的高3位和R4的高2位清零
„
IOCB0寄存器所有位置1
„
IOCC0寄存器所有位置1
„
IOCD0寄存器所有位置1
„
IOCE0寄存器的位7置1,位6~位0清零
„
RF寄存器的位0~位6和IOCF0寄存器的位0~位6清零
版本号 (V1.9) 01.11.2011
(产品更新后规格书不保证同步更新)
• 29
EM78P418N
8位OTP微控制器
执行“SLEP”指令后将进入休眠(省电)模式。进入休眠模式后,振荡器,TCC,定时器
1,定时器2和定时器3停止运行。WDT(若使能)清零但仍在运行。
控制器可由以下情况唤醒:
情况 1 /RESET 引脚输入外部复位信号
情况 2 WDT溢出(若使能)
情况 3 Port 6输入状态改变(若ICWE使能)
情况 4 比较器输出状态改变(若CMPWE使能)
情况 5 AD转换完成(若ADWE使能)
前两种情况(1 & 2)会导致EM78P418N复位。R3的标志位T和P可用于确定复位源(唤
醒)。 第3, 4, & 5种情况程序会继续执行,并由全局中断决定是否进入唤醒后中断的入
口地址(执行“ENI”或“DISI”指令)。若在SLEP指令前执行ENI指令,唤醒后指令将由入
口地址0X8开始执行。若在SLEP指令前执行DISI指令,唤醒后指令将由SLEP的下一条
指令开始执行。
进入休眠模式前,第1至5种情况仅有一种情况使能。也就是:
情况 [a] SLEP指令前WDT使能,RE所有位被禁止。因此,EM78P418N仅由第1或第2
种情况唤醒。需要更多的了解,请查阅中断部分的章节(6.6节)。
情况 [b] 如果Port6输入状态改变用于唤醒EM78P418N,并且在SLEP指令前将RE寄存
器的ICWE位使能,那么必须将WDT禁止。因此EM78P418N在这种情况下只能
由第3种情况唤醒。唤醒时间由振荡器模式决定。在RC模式中,唤醒时间为32
个时钟周期(对于频率稳定的振荡器)。在高晶振模式,唤醒时间为2ms加32
时钟周期(对于频率稳定的振荡器);在低晶振模式,唤醒时间为500ms。
情况 [c] 如果比较器输出状态改变用于唤醒EM78P418N,并且在SLEP指令前将RE寄存
器的CMPWE位使能,那么必须用软件将WDT禁止。因此,EM78P418N只能由
第4种情况唤醒。
唤醒时间由振荡器模式决定。在RC模式下,唤醒时间为32个时钟周期(对于频
率稳定的振荡器)。在高晶振模式下,唤醒时间为2ms加32个时钟周期(对于
频率稳定的震荡器);在低晶振模式下,唤醒时间为500ms。
情况 [d] 如果AD转换完成用于唤醒EM78P418N,并且RE寄存器的ADWE位在SLEP指
令前使能,那么必须用软件将WDT禁止。因此只能用第5种情况将EM78P418N
唤醒。唤醒时间为15个TAD(ADC时钟周期)。
30 •
版本号 (V1.9) 01.11.2011
(产品更新后规格书不保证同步更新)
EM78P418N
8位OTP微控制器
若Port6端口输入状态变化中断用于EM78P418N(如上述情况b),在SLEP指令前必须
执行以下指令:
BC R3, 7
MOV A, @001110xxb
IOW IOCE0
WDTC
MOV R6, R6
ENI (or DISI)
MOV A, @00000x1xb
MOV RE
MOV A, @00000x1xb
IOW IOCF0
SLEP
; 选择控制寄存器段0
; 设置WDT预分频器和关闭WDT
; 清WDT和预分频器
; 读取Port6的值
; 使能(或禁止)全局中断
; 将Port6输入状态变化唤醒位使能
; 将Port6输入状态变化中断位使能
; 进入休眠
同样地,如果比较器中断用于唤醒EM78P418N(上述情况c),以下指令必须在SLEP
指令前执行:
BC R3, 7
MOV A, @xxxxxx10b
IOW IOCA0
MOV A, @001110xxb
IOW IOCE0
WDTC
ENI (or DISI)
MOV A, @000001xxb
MOV RE
MOV A, @000001xxb
IOW IOCF0
SLEP
版本号 (V1.9) 01.11.2011
(产品更新后规格书不保证同步更新)
; 选择控制寄存器段0
; 选择比较器并将P60设置为CO引脚
; 设置WDT预分频器和关闭WDT
; 清WDT和预分频器
; 使能(或禁止)全局中断
; 将比较器输出状态变化唤醒位使能
; 将比较器输出状态变化中断位使能
; 进入休眠
• 31
EM78P418N
8位OTP微控制器
6.5.1.1 唤醒和中断模式应用摘要
所有类型的唤醒模式和中断模式如下概述:
信号类型
TCC 溢出
休眠模式
N/A
RE (ICWE) Bit 1 = 0, IOCF0 (ICIE) Bit 1 = 0
振荡器,TCC 和 TIMERX 停止工作
Port 6 输入状态改变的唤醒功能失效
正常模式
DISI + IOCF0 (TCIE) Bit 0 = 1
下一条指令+设置 RF (TCIF) = 1
ENI + IOCF0 (TCIE) Bit 0 = 1
中断向量 (0x08)+ 设置 RF (TCIF) = 1
IOCF0 (ICIE) Bit1 = 0
Port 6 输入状态改变的中断功能失效
RE (ICWE) Bit 1 = 0, IOCF0 (ICIE) Bit 1 = 1
设置 RF (ICIF) = 1,
振荡器,TCC 和 TIMERX 停止工作
Port 6 输入状态改变的唤醒功能失效
Port 6 端口输入状态改变
RE (ICWE) Bit 1 = 1, IOCF0 (ICIE) Bit 1 = 0
唤醒+下条指令
振荡器,TCC 和 TIMERX 停止工作
RE (ICWE) Bit 1 = 1, DISI + IOCF0 (ICIE) Bit 1 = 1 DISI + IOCF0 (ICIE) Bit 1 = 1
唤醒+下条指令+设置 Set RF (ICIF) = 1
下条指令+设置 RF (ICIF) = 1
振荡器,TCC 和 TIMERX 停止工作
RE (ICWE) Bit 1 = 1, ENI + IOCF0 (ICIE) Bit 1 = 1 ENI + IOCF0 (ICIE) Bit 1 = 1
唤醒+中断向量(0x08)+设置 RF (ICIF)=1
中断向量(0x08)+设置 RF (ICIF) = 1
振荡器,TCC 和 TIMERX 停止工作
INT 引脚
N/A
RE (ADWE) Bit 3 = 0, IOCF0 (ADIE) Bit 3 = 0
清 R9 (ADRUN)=0, ADC 停止运行
AD 转换唤醒失效
振荡器,TCC 和 TIMERX 停止工作
DISI + IOCF0 (EXIE) Bit 2 = 1
下条指令+设置 RF (EXIF) = 1
ENI + IOCF0 (EXIE) Bit 2 = 1
中断向量(0X08)+设置 RF (EXIF) = 1
IOCF0 (ADIE) Bit 1 = 0
AD 转换中断失效 c
RE (ADWE) Bit 3=0, IOCF0 (ADIE) Bit 3 = 1
设置 RF (ADIF)=1, R9 (ADRUN) = 0,
AD 转换(ADC)停止
AD 转换唤醒失效
振荡器,TCC 和 TIMERX 停止工作
AD 转换
RE (ADWE) Bit 3 = 1, IOCF0 (ADIE) Bit 3 = 0
唤醒+下条指令
振荡器,TCC 和 TIMERX 继续运行
当 AD 转换(ADC)完成时,ADC 唤醒
RE (ADWE) Bit 3 = 1, DISI + IOCF0 (ADIE) Bit 3 = 1 DISI + IOCF0 (ADIE) Bit 3 = 1
唤醒+下条指令+ RF (ADIF) = 1
振荡器,TCC 和 TIMERX 继续运行
下条指令+ RF (ADIF) = 1
当 AD 转换(ADC)完成时,ADC 唤醒
RE (ADWE) Bit 3 = 1, ENI + IOCF0 (ADIE) Bit 3 = 1 ENI + IOCF0 (ADIE) Bit 3 = 1
唤醒+中断向量(0x08)+ RF (ADIF) = 1,
振荡器,TCC 和 TIMERX 继续运行
中断向量(0x08)+ 设置 RF (ADIF) = 1
当 AD 转换(ADC)完成时,ADC 唤醒
PWMX
(PWM1,PWM2,PWM3)
(TIMERX 与 PWMX 周期
(PRDX)匹配时)
32 •
N/A
DISI + IOCF0 (PWMXIE) = 1
下条指令+设置 RF (PWMXIF) = 1
ENI + IOCF0 (PWMXIE) = 1
中断向量(0x08)+设置 RF (PWMXIF) = 1
版本号 (V1.9) 01.11.2011
(产品更新后规格书不保证同步更新)
EM78P418N
8位OTP微控制器
信号类型
休眠模式
正常模式
RE (CMPWE) Bit 2 = 0, IOCF0 (CMPIE) Bit 7 = 0 IOCF0 (CMPIE) Bit 7 = 0
比较器输出状态改变的唤醒功能失效
比较器输出状态改变中断功能失效
振荡器,TCC 和 TIMERX 停止工作
RE (CMPWE) Bit 2 = 0, IOCF0 (CMPIE) Bit 7 = 1
设置 RF (CMPIF) = 1,
比较器输出状态改变的唤醒功能失效
振荡器,TCC 和 TIMERX 停止工作
RE (CMPWE) Bit 2 = 1, IOCF0 (CMPIE) Bit 7 = 0
唤醒+下条指令
振荡器,TCC 和 TIMERX 停止工作
比较器
(比较器输出状态改变)
WDT 溢出
IOCE (WDTE) Bit 7 = 1
RE (CMPWE) Bit 2 = 1, DISI + IOCF0 (CMPIE)
Bit 7 = 1
唤醒+下条指令+设置 RF (CMPIF)=1,
振荡器,TCC 和 TIMERX 停止工作
DISI + IOCF0 (CMPIE) Bit 7 = 1
RE (CMPWE) Bit 2 = 1, ENI + IOCF0 (CMPIE)
Bit 7 = 1
唤醒+中断向量(0x08)+ 设置 RF (CMPIF) = 1,
振荡器,TCC 和 TIMERX 停止工作
ENI + IOCF0 (CMPIE) Bit 7 = 1
唤醒+ 复位 (地址 0x00)
复位 (地址 0x00)
下条指令+ 设置 RF (CMPIF) = 1
中断向量(0x08)+ 设置 RF (CMPIF) = 1
6.5.1.2 复位后寄存器的初值
寄存器初值概括如下:
地址
名称
复位类型
位 名称
N/A
IOC50
上电
/RESET &WDT 溢出
引脚变化唤醒
位 名称
N/A
N/A
IOC60
IOC70
上电
/RESET&WDT 溢出
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
C57
C56
C55
C54
C53
C52
C51
C50
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
P
P
P
P
P
P
P
P
C67
C66
C65
C64
C63
C62
C61
C60
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
引脚变化唤醒
P
P
P
P
P
P
P
P
位 名称
-
-
-
C74
C73
C72
C71
C70
上电
0
0
0
1
1
1
1
1
/RESET&WDT 溢出
引脚变化唤醒
位 名称
N/A
Bit 7
IOC80
(PWMCON) /RESET&WDT 溢出
上电
引脚变化唤醒
版本号 (V1.9) 01.11.2011
(产品更新后规格书不保证同步更新)
0
0
0
1
1
1
1
1
P
P
P
P
P
P
P
P
PWM3EPWM2E PWM1E
-
T1EN
T1P2
T1P1
T1P0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
P
P
P
P
P
P
P
P
• 33
EM78P418N
8位OTP微控制器
地址
N/A
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
位名称
T3EN
T2EN
T3P2
T3P1
T3P0
T2P2
T2P1
T2P0
上电
IOC90
(TMRCON) /RESET&WDT 溢出
0
0
0
0
0
0
0
0
引脚名称
复位类型
引脚变化唤醒
N/A
0
P
-
-
-
IOCA0
(CMPCON) /RESET&WDT 溢出
0
0
0
0
0
0
0
0
0
0
0
0
0
IOCB0
上电
/RESET&WDT 溢出
IOCC0
上电
/RESET&WDT 溢出
IOCD0
上电
/RESET&WDT 溢出
引脚变化唤醒
位 名称
上电
IOCE0
/RESET&WDT 溢
出
引脚变化唤醒
位名称
上电
IOCF0
/RESET&WDT 溢
出
引脚变化唤醒
位 名称
IOC51
(PRD1)
上电
/RESET&WDT 溢
出
引脚变化唤醒
34 •
0
P
0
位 名称
N/A
0
P
-
引脚变化唤醒
N/A
0
P
0
位 名称
N/A
0
P
-
引脚变化唤醒
N/A
0
P
0
上电
位 名称
N/A
0
P
位 名称
引脚变化唤醒
N/A
0
P
CPOUT COS1
COS0
P
P
P
P
P
P
P
P
/PD7
/PD6
/PD5
/PD4
/PD3
/PD2
/PD1
/PD0
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
P
P
P
P
P
P
P
P
/OD7
/OD6
/OD5
/OD4
/OD3
/OD2
/OD1
/OD0
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
P
P
P
P
P
P
P
P
/PH7
/PH6
/PH5
/PH4
/PH3
/PH2
/PH1
/PH0
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
P
P
P
P
P
P
P
P
WDTE
EIS
PSWE
PSW2
PSW1
PSW0
-
-
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
P
P
P
P
P
P
P
P
CMPIE PMW3IE PMW2IE PWM1IE ADIE
EXIE
ICIE
TCIE
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
P
P
P
P
P
P
P
P
PRD1[7] PRD1[6] PRD1[5] PRD1[4] PRD1[3] PRD1[2] PRD1[1] PRD1[0]
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
P
P
P
P
P
P
P
P
版本号 (V1.9) 01.11.2011
(产品更新后规格书不保证同步更新)
EM78P418N
8位OTP微控制器
地址
引脚名称
位 名称
N/A
IOC61
(PRD2)
Bit 7
复位类型
/RESET&WDT 溢
出
引脚变化唤醒
N/A
IOC71
(PRD3)
IOC81
(DT1L)
IOC91
(DT2L)
IOCA1
(DT3L)
0
0
0
0
0
0
0
0
P
P
P
P
P
P
P
P
0
0
0
0
P
P
P
P
P
P
P
P
DT1[7]
DT1[6]
DT1[5]
DT1[4]
DT1[3]
DT1[2]
DT1[1]
DT1[0]
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
P
P
P
P
P
P
P
P
DT2[7]
DT2[6]
DT2[5]
DT2[4]
DT2[3]
DT2[2]
DT2[1]
DT2[0]
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
P
P
P
P
P
P
P
P
DT3[7]
DT3[6]
DT3[5]
DT3[4]
DT3[3]
DT3[2]
DT3[1]
DT3[0]
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
P
P
P
P
P
0
P
P
/RESET&WDT 溢
出
IOCB1 上电
(DT1H, /RESET&WDT 溢
2H, 3H) 出
-
-
DT3[9]
DT3[8]
DT2[9]
DT2[8]
DT1[9]
DT1[8]
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
P
P
P
P
P
P
P
P
TMR1[7] TMR1[6] TMR1[5] TMR1[4] TMR1[3] TMR1[2] TMR1[1] TMR1[0]
上电
IOCC1
/RESET&WDT 溢
(TMR1L)
出
引脚变化唤醒
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
P
P
P
P
P
P
P
P
TMR2[7] TMR2[6] TMR2[5] TMR2[4] TMR2[3] TMR2[2] TMR2[1] TMR2[0]
IOCD1 上电
(TMR2L) /RESET&WDT 溢出
(产品更新后规格书不保证同步更新)
0
0
上电
版本号 (V1.9) 01.11.2011
0
0
/RESET&WDT 溢
出
引脚变化唤醒
0
0
引脚变化唤醒
N/A
0
0
上电
位 名称
0
0
位 名称
N/A
0
0
/RESET&WDT 溢
出
位 名称
0
0
引脚变化唤醒
N/A
0
0
引脚变化唤醒
N/A
Bit 0
0
上电
位 名称
Bit 1
0
引脚变化唤醒
N/A
Bit 2
0
/RESET&WDT 溢
出
位 名称
Bit 3
0
引脚变化唤醒
N/A
Bit 4
PRD3[7] PRD3[6] PRD3[5] PRD3[4] PRD3[3] PRD3[2] PRD3[1] PRD3[0]
上电
位 名称
Bit 5
PRD2[7] PRD2[6] PRD2[5] PRD2[4] PRD2[3] PRD2[2] PRD2[1] PRD2[0]
上电
位 名称
Bit 6
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
P
P
P
P
P
P
P
P
• 35
EM78P418N
8位OTP微控制器
地址
引脚名称
位 名称
N/A
Bit 7
复位类型
N/A
上电
IOCE1
(TMR3L) /RESET&WDT 溢出
0x01
0
0
Bit 0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
P
P
P
P
P
P
P
TMR3[9] TMR3[8] TMR2[9] TMR2[8] TMR1[9] TMR1[8]
-
-
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
P
P
P
P
P
P
P
P
INT
TS
TE
PSTE
PST2
PST1
PST0
0
0
0
0
0
0
0
0
CONT
上电
/RESET&WDT 溢出
R0(IAR)
R1(TCC)
R2(PC)
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
位 名称
-
-
-
-
-
-
-
-
上电
0
0
0
0
0
0
0
0
/RESET&WDT 溢出
/RESET&WDT 溢出
0
0
0
0
0
0
0
0
P
P
P
P
P
P
P
P
位 名称
-
-
-
-
-
-
-
-
上电
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
IOCS
PS1
PS0
T
P
Z
DC
C
0
0
0
1
1
U
U
U
/RESET&WDT 溢出
R3(SR)
上电
/RESET&WDT 溢出
引脚变化唤醒
位 名称
R4(RSR)
上电
/RESET&WDT 溢出
引脚变化唤醒
36 •
Bit 1
INTE
位 名称
0x04
Bit 2
P
跳到地址 0x08 或者继续执行下一条指令
引脚变化唤醒
0x03
Bit 3
位 名称
引脚变化唤醒
0x02
Bit 4
位名称
IOCF1
上电
(TMR1H,
/RESET&WDT 溢出
2H, 3H)
引脚变化唤醒
引脚变化唤醒
0x00
Bit 5
TMR3[7] TMR3[6] TMR3[5] TMR3[4] TMR3[3] TMR3[2] TMR3[1] TMR3[0]
引脚变化唤醒
N/A
Bit 6
0
0
0
t
t
P
P
P
P
P
P
t
t
P
P
P
BS7
BS6
-
-
-
-
-
-
0
0
U
U
U
U
U
U
0
0
P
P
P
P
P
P
P
P
P
P
P
P
P
P
版本号 (V1.9) 01.11.2011
(产品更新后规格书不保证同步更新)
EM78P418N
8位OTP微控制器
地址
引脚名称
复位类型
位名称
0x05
R5
上电
/RESET&WDT 溢出
引脚变化唤醒
位 名称
0x06
0x7
P6
R7
0x9
RA
(ADOC)
Bit 1
Bit 0
P57
P56
P55
P54
P53
P52
P51
P50
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
P
P
P
P
P
P
P
P
P67
P66
P65
P64
P63
P62
P61
P60
1
1
1
1
1
1
1
1
1
1
1
1
1
引脚变化唤醒
P
P
P
P
P
P
P
P
位 名称
-
-
-
P74
P73
P72
P71
P70
上电
0
0
0
1
1
1
1
1
/RESET&WDT 溢出
0
0
0
1
1
1
1
1
P
P
P
P
P
P
P
P
ADE7
ADE6
ADE5
ADE4
ADE3
ADE2
ADE1
ADE0
上电
0
0
0
0
0
0
0
0
/RESET&WDT 溢出
0
0
0
0
0
0
0
0
引脚变化唤醒
P
P
P
P
P
P
P
P
VREFS CKR1
上电
0
0
CKR0 ADRUN ADPD
0
0
0
ADIS2 ADIS1 ADIS0
0
0
0
/RESET&WDT 溢出
0
0
0
0
0
0
0
0
引脚变化唤醒
P
P
P
P
P
P
P
P
-
-
-
CALI
SIGN
上电
0
0
0
0
0
0
0
0
/RESET&WDT 溢出
0
0
0
0
0
0
0
0
VOF[2] VOF[1] VOF[0]
P
P
P
P
P
P
P
P
位名称
AD11
AD10
AD9
AD8
AD7
AD6
AD5
AD4
上电
RB
(ADDDATA) /RESET&WDT 溢出
U
U
U
U
U
U
U
U
U
U
U
U
U
U
U
U
P
P
P
P
P
P
P
P
引脚变化唤醒
位 名称
0xC
Bit 2
1
引脚变化唤醒
0xB
Bit 3
1
位名称
0xA
Bit 4
1
位名称
R9
(ADCON)
Bit 5
上电
位 名称
R8
(AISR)
Bit 6
/RESET&WDT 溢出
引脚变化唤醒
0x8
Bit 7
上电
RC
(ADDATA1H) /RESET&WDT 溢出
引脚变化唤醒
版本号 (V1.9) 01.11.2011
(产品更新后规格书不保证同步更新)
-
-
-
-
AD11
AD10
AD9
AD8
0
0
0
0
U
U
U
U
0
0
0
0
U
U
U
U
P
P
P
P
P
P
P
P
• 37
EM78P418N
8位OTP微控制器
地址
引脚名称
复位类型
位 名称
0xD
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
AD7
AD6
AD5
AD4
AD3
AD2
AD1
AD0
U
U
U
U
U
U
U
U
U
U
U
U
U
U
U
U
P
P
P
P
P
P
P
P
上电
RD
(ADDATA1L) /RESET&WDT 溢出
引脚变化唤醒
0xE
RE
(WUCR)
位 名称
-
-
-
-
上电
0
0
0
0
0x10 ~
0x3F
RF
(ISR)
R10 ~ R3F
0
0
-
0
0
/RESET&WDT 溢出
0
0
0
0
0
0
0
0
引脚变化唤醒
P
P
P
P
P
P
P
P
EXIF
ICIF
TCIF
上电
CMPIF PWM3IF PWM2IF PWM1IF ADIF
0
0
0
0
0
0
0
0
/RESET&WDT 溢出
0
0
0
0
0
0
0
0
引脚变化唤醒
P
P
P
P
P
P
P
P
位 名称
-
-
-
-
-
-
-
-
位 名称
0xF
ADWE CMPWE ICWE
上电
U
U
U
U
U
U
U
U
/RESET&WDT 溢出
P
P
P
P
P
P
P
P
引脚变化唤醒
P
P
P
P
P
P
P
P
Legend:– : 未使用
U: 未知
t: 请参阅 6.5.2 节的“复位类型”表
P: 复位前值
6.5.1.3 控制器复位方块图
VD
D
D
振荡器
Q
CLK
CLK
CL
R
上电复位
电压检测
WTE
WDT 溢出
WDT
启动时间
Reset
/RESET
图 6-7 控制器复位结构图
38 •
版本号 (V1.9) 01.11.2011
(产品更新后规格书不保证同步更新)
EM78P418N
8位OTP微控制器
6.5.2 状态寄存器的T和P状态
复位状态由以下情况产生:
1. 上电复位
2. /RESET引脚输入“低电平”
3. WDT溢出(若使能)
下表中的T和P值用于检查系统的复位类型。
复位类型
T
P
上电
1
1
在运行模式下/RESET 引脚复位
*P
*P
在休眠模式/RESET 引脚唤醒
1
0
在运行模式下 WDT 溢出
0
*P
在休眠模式下 WDT 溢出唤醒
0
0
在休眠模式下,引脚状态改变唤醒
1
0
*P: 复位前的状态
复位事件发生后对T和P状态的影响如下:
事件
T
P
上电
1
1
WDTC 指令
WDT 溢出
1
0
1
*P
SLEP 指令
1
0
在休眠中引脚状态改变唤醒
1
0
*P: 复位前的初值
6.6 中断
EM78P418N有6种中断方式:
1. TCC溢出中断
2. Port 6引脚输入状态改变中断
3. 外部中断[(P50, /INT) 引脚]
4. AD转换完成
5. 在PWM模式中TMR1/TMR2/TIMR3分别与PRD1/PRD2/PRD3相匹配
6. 比较器输出状态改变(仅对于EM78P418N-20Pin和EM78P418N-24Pin )
在Port 6输入状态改变使能前,读Port 6端口状态(例如:"MOV R6,R6")是必要的。当引
脚状态改变时,每个Port 6引脚都具备这个功能。输出引脚,包括作为/INT的P50引脚,
不具备此功能。当通过执行SLEP指令使控制器进入休眠模式前,Port 6输入状态改变功
能被使能,Port 6 输入状态改变中断将EM78P418N从休眠模式唤醒。唤醒状态发生后,
如果全局中断禁止,控制器将执行随后的程序。如果中断使能,将进入中断向量008H。
版本号 (V1.9) 01.11.2011
(产品更新后规格书不保证同步更新)
• 39
EM78P418N
8位OTP微控制器
外部中断有一个数字噪声抑制电路。如果脉冲低于8个系统时钟,将作为干扰信号清除。
边沿选择尽可能使用/INT引脚。数字噪音的防止请查阅Word 1 中位 8~7 (6.14.2节, 代码
选用寄存器(Word 1))部分。
RF寄存器是中断状态寄存器,在相应的标志位中记录了中断请求的情况。IOCF0寄存器
是中断屏蔽状态寄存器。全局中断由 ENI指令使能中断,由DISI指令禁止中断。当其中
的一个中断(使能)产生时,下条指令由中断地址008H取出。一旦进入中断程序,可轮
流检测RF寄存器的标志位决定中断源。在离开中断程序前由指令将中断标志位清除,以
免重复中断。
当有中断请求时,不管其相应中断使能位的状态如何或者是否执行了ENI指令使能全局
中断,中断状态寄存器(RF)中的相应标志位(ICIF位除外)都将被置1。值得注意的
是,RF的结果是由RF和IOCF0逻辑与的结果(参见下图)。RETI指令结束中断程序并
使能全局中断(ENI指令执行)。
图 6-8 中断输入电路
6.7 AD转换器(ADC)
AD转换电路包括一个8位模拟多路器,3个控制寄存器(AISR/R8, ADCON/R9, &
ADOC/RA),3个数据寄存器(ADDATA1/RB, ADDATA1H/RC, & ADDATA1L/RD) 和1
个带12位精度的AD转换器,其功能图如下所示。模拟参考电压(Vref)和模拟地由不同的
引脚接入。
ADC模块利用逐次逼近的方式将未知的模拟信号转换为数字值,结果存入ADDATA,
ADDATA1H 和 ADDATA1L 中。输入通道被模拟输入多路器经ADCON寄存器选择。接
入外部VREF比接入内部VDD的结果更为精确。
40 •
版本号 (V1.9) 01.11.2011
(产品更新后规格书不保证同步更新)
EM78P418N
8位OTP微控制器
ADC7
Vref
ADC6
模拟开关
8-1
ADC5
ADC4
ADC3
ADC2
掉电
ADC
开始转换
(逐次逼近)
Fsco
ADC1
4-1
MUX
ADC0
内部 RC
7 ~ 0
AISR
2
1
0
ADCON
6
3
5
ADCON
RF
11 10
9
8
7
6
5
ADDATA1H
4
3
2
1
4
0
3
ADCON
ADDATA1L
数据总数
图 6-9 AD 转换器功能图
6.7.1 ADC控制寄存器 (AISR/R8, ADCON/R9, ADOC/RA)
6.7.1.1 R8 (AISR: ADC 输入选择寄存器)
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
符号
ADE7
ADE6
ADE5
ADE4
ADE3
ADE2
ADE1
*初值
0
0
0
0
0
0
0
AISR 寄存器定义Port6引脚分别作为模拟输入或数字输出端口。
Bit 7 (ADE7): P67引脚AD转换使能位
0: ADC7禁止,P67设置为I/O 引脚
1: ADC7使能,该引脚作为模拟输入引脚
Bit 6 (ADE6): P66引脚AD转换器使能位
0: ADC6禁止,P66设置为I/O 引脚
1: ADC6使能,该引脚作为模拟输入引脚
Bit 5 (ADE5): P65引脚AD转换器使能位
0: ADC5禁止,P65设置为I/O 引脚
1: ADC5使能,该引脚作为模拟输入引脚
Bit 4 (ADE4): P64引脚AD转换器使能位
0: ADC4禁止,P64设置为I/O 引脚
1: ADC4使能,该引脚作为模拟输入引脚
Bit 3 (ADE3): P63引脚AD转换器使能位
0: ADC3禁止,P63设置为I/O 引脚
1: ADC3使能,该引脚作为模拟输入引脚
版本号 (V1.9) 01.11.2011
(产品更新后规格书不保证同步更新)
• 41
EM78P418N
8位OTP微控制器
Bit 2 (ADE2): P62引脚AD转换器使能位
0: ADC2禁止,P62设置为I/O 引脚
1: ADC2使能,该引脚作为模拟输入引脚
Bit 1 (ADE1): P61引脚AD转换器使能位
0: ADC1禁止,P61设置为I/O 引脚
1: ADC1使能,该引脚作为模拟输入引脚
Bit 0 (ADE0): P60引脚AD转换器使能位
0: ADC0禁止,P60设置为I/O 引脚
1: ADC1使能,该引脚作为模拟输入引脚
注意
当P60/ADC0设置为模拟输入或数字I/O时,注意IOCA0控制寄存器的COS1和COS0控制
位的优先级。比较器/OP的选择位见6.2.6节表所示。
P60/ADC0/CO 引脚优先级如下:
P60/ADE0/CO 优先级
高
中
低
CO
ADC0
P60
6.7.1.2 R9 (ADCON: ADC 控制器)
Bit
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
符号
VREFS
CKR1
CKR0
ADRUN
ADPD
ADIS2
ADIS1
ADIS0
*初值
0
0
0
0
0
0
0
0
Note: *初值:上电复位初值
ADCON 寄存器控制AD转换操作并决定当前所使用的引脚。
Bit 7(VREFS): ADC的Vref 输入源
0: ADC的Vref 引脚与VDD相连(默认值)
,P53/VREF 执行P53功能
1: ADC的Vref 引脚与P53/VREF相连
注意
P53/PWM3/VRE 引脚不能同时应用于 PWM3 和 VREF 。如果 P53/PWM3/VREF 设置为
VREF模拟输入引脚,那么PWM3E必须设置“0”。
P53/PWM3/VREF引脚优先级如下:
P53/PWM3/VREF 引脚优先级
42 •
高
中
低
VREF
PWM3
P53
版本号 (V1.9) 01.11.2011
(产品更新后规格书不保证同步更新)
EM78P418N
8位OTP微控制器
Bit 6 ~ Bit 5 (CKR1 ~ CKR0): ADC振荡时钟预分频比
00 = 1:16 (默认值)
01 = 1: 4
10 = 1: 64
11 = 1: WDT 环形电路振荡器频率
CKR1:CKR0
工作模式
最大工作频率
00
01
Fosc/16
Fosc/4
4MHz
1 MHz
10
11
Fosc/64
内部 RC
16MHz
-
Bit 4 (ADRUN): ADC 开始运行
0: 转换完成后清零。该位不能由软件清零。
1: AD转换开始。该位可由软件设置。
Bit 3 (ADPD): ADC 省电模式
0: 关闭参考电阻以省电,即使CUP在运行状态。
1: ADC运行模式
Bit 2 ~ Bit 0 (ADIS2 ~ ADIS0): 模拟输入选择
000 = AN0/P60
001 = AN1/P61
010 = AN2/P62
011 = AN3/P63
100 = AN4/P64
101 = AN5/P65
110 = AN6/P66
111 = AN7/P67
在ADIF位和ADRUN位同时为低电平时,这几个位方可改变。
6.7.1.3 RA (ADOC: ADC 偏移校准寄存器)
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): ADC偏移校准使能位
0: 禁止ADC校准
1: 使能ADC校准
Bit 6 (SIGN): 偏移电压极性
0: 负电压
1: 正电压
版本号 (V1.9) 01.11.2011
(产品更新后规格书不保证同步更新)
• 43
EM78P418N
8位OTP微控制器
Bit 5 ~ Bit 3 (VOF[2] ~ VOF[0]): 偏移电压位
VOF[2]
VOF[1]
VOF[0]
EM78P418N
ICE418N
0
0
0
0LSB
0LSB
0
0
1
2LSB
1LSB
0
1
0
4LSB
2LSB
0
1
1
6LSB
3LSB
1
0
0
8LSB
4LSB
1
1
0
1
1
0
10LSB
12LSB
5LSB
6LSB
1
1
1
14LSB
7LSB
Bit 2 ~ Bit 0: 未使用,读取为“0”
6.7.2 ADC数据寄存器 (ADDATA/RB, ADDATA1H/RC,
ADDATA1L/RD)
当AD转换完成后,结果载入ADDATA, ADDATA1H 和 ADDATA1L寄存器中。ADRUN 位
被清零,ADIF位被置1。
6.7.3 ADC 采样时间
逐次逼近的AD转换器的准确性,数形和速度跟AD转换器(ADC)和比较器的特性相关。
源电阻和内部采样电阻直接影响到采样保持电容充电所需时间。应用程序控制采样时间
以满足特定精度的需求。总而言之,在电阻模拟源下程序等待时间为2us/ KΩ,在低电
阻源下程序至少等待2us。在Vdd=5V,模拟源的最大推荐电阻是10 KΩ。模拟通道选定
后,在转换开始前,必须满足所需的等待时间。
6.7.4
AD转换时间
根据指令周期,CKR1和CKR0用于选择转换时间(Tct) 。这允许MCU运行于最大工作频
率,对AD转换精度毫无影响。对于EM78P418N而言,转换时间约为4µs/位。Tct与最大
工作频率的关系见下表所示:
CKR1:CKR0
00
01
10
11
工作模式
Fosc/16
Fosc/4
Fosc/64
内部 RC
最大工作频率
最大转换比率/位
最大转换比率
4MHz
1MHz
16MHz
-
250kHz (4µs)
250kHz (4µs)
250kHz ( 4µs)
14kHz (71µs)
15*4us=60µs (16.7kHz)
15*4us=60µs (16.7kHz)
15*4us=60µs (16.7kHz)
15*71us=1065µs (0.938kHz)
注意
■ 引脚不用于模拟输入引脚时可作为通用输入或输出引脚。
■ 在转换期间,不执行输出指令以确保所有引脚的精度。
6.7.5 休眠期间ADC的运行
为获得更高精度和减少功耗,AD转换可以在休眠模式下运行。当执行SLEP指令后,除
振荡器、TCC、定时器1、定时器2、定时器3和AD转换仍在工作外,其他系统将停止运
行。
44 •
版本号 (V1.9) 01.11.2011
(产品更新后规格书不保证同步更新)
EM78P418N
8位OTP微控制器
决定AD转换完成的标志:
1. R9的ADRUN 位清零
2. 程序由AD转换唤醒(在休眠期间,程序仍处于运行状态)
当AD转换完成后,其结果反馈到ADDATA, ADDATA1H和 ADDATA1L寄存器中。如果
ADWE使能,系统将会唤醒。否则,无论ADPD位处于什么状态,AD转换被关闭。
6.7.6 编程步骤/事项
6.7.6.1 编程步骤
遵循以下步骤,从ADC中获得数据:
1. 在R8(AISR)寄存器写入8位(ADE7:ADE0),以定义R6的特性(数字I/O,模
拟通道,或参考电压引脚)
2. 写入R9/ADCON寄存器以设置AD模块:
a) 选用ADC输入通道(ADIS2:ADIS0)
b) 定义AD转换时钟比率( CKR1:CKR0 )
c) 选择ADC的VREFS输入源
d) 将ADPD位置1开始采样
3. 若启用唤醒功能,设置ADWE位
4. 若启用中断功能,设置ADIE位
5. 若启用中断功能,写入“ENI”指令
6. 设置ADRUN位为1
7. 写入“SLEP”指令或循环检测
8. 等待唤醒或ADRUN位被清零
9. 读取ADDATA 或ADDATA1H 和 ADDATA1L转换数据寄存器的值。如果ADC输入通
道此时改变,ADDATA, ADDATA1H, 和ADDATA1L的值清零。
10. 中断标志位(ADIF)清零
11. 对于下一次转换,需要执行步骤1和步骤2。在下次采样前至少等待2 Tct 时间 。
注意
为获得精确的采样值,在AD转换过程中,需要避免在I/O引脚上传输数据。
版本号 (V1.9) 01.11.2011
(产品更新后规格书不保证同步更新)
• 45
EM78P418N
8位OTP微控制器
6.7.6.2 程序示例
A. 定义通用寄存器
R0==0
PSW==3
PORT5==5
PORT6==6
RE==0XE
RF==0XF
;间接寻址
;状态寄存器
;唤醒控制寄存器
;中断状态寄存器
B. 定义控制寄存器
IOC50 == 0X5
IOC60 == 0X6
C_INT== 0XF
; Port 5控制寄存器
; Port 6控制寄存器
; 中断控制寄存器
C. 定义ADC控制寄存器
ADDATA == 0xB
AISR == 0x08
ADCON == 0x9
; ADC转换结果
; ADC 输入选择
; 7 6 5 4
3 2 1 0
; VREFS CKR1 CKR0 ADRUN ADPD ADIS2 ADIS1 ADIS0
D. 定义ADCON寄存器中的位
ADRUN == 0x4
ADPD == 0x3
; ADC 运行控制位
; ADC电源控制位
E. 程序开始
ORG 0
JMP INITIAL
ORG 0x08
;(User program section)
CLR RF
BS ADCON, ADRUN
RETI
INITIAL:
MOV A,@0B00000001
;
;中断向量
; 清 ADIF 位
; AD转换开始
; P60 定义为输入
MOV AISR,A
MOV A,@0B00001000
; P60 作为AD输入通道 打开 AD 电源
MOV ADCON,A
; P60 作为输入 选择时钟 fosc/16
En_ADC:
MOV A, @0BXXXXXXX1
; P60 作为输入
IOW PORT6
46 •
; 复位地址
MOV A, @0BXXXX1XXX
;其它口的设置取决于应用
;使能 ADWE 唤醒
MOV RE,A
MOV A, @0BXXXX1XXX
; 使能 AD中断
版本号 (V1.9) 01.11.2011
(产品更新后规格书不保证同步更新)
EM78P418N
8位OTP微控制器
IOW C_INT
ENI
BS ADCON, ADRUN
; 开总中断
; AD开始转换
;如果使能中断下面三行可以被忽略
POLLING:
JBC ADCON, ADRUN
; 检测 ADRUN位
JMP POLLING
; ADRUN 为0 AD转换完成
;
;
;(User program section)
;
;
版本号 (V1.9) 01.11.2011
(产品更新后规格书不保证同步更新)
• 47
EM78P418N
8位OTP微控制器
6.8 PWM (脉冲宽度调制器)
6.8.1 概述
在PWM模式中,PWM1, PWM2, 和 PWM3引脚产生精度高达10位的脉冲宽度调制输出
(结构功能图如下所示)。一个PWM输出包含一个周期和一个占空比,它保持输出高。
PWM的频率是其周期的倒数,图6-11(PWM输出周期)描述了周期与占空比的关系。
Fosc
1:2
1:4
1:8
1:16
1:32
1:64
1:128
1:256
DL1H + DL1L
DT1H
+
DT1L
To
PWM1IF
latch
PWM1
M
UX
R
TMR1H + TMR1L
reset
Q
S
IOC80, 5
T1P2 T1P1 T1P0 T1EN
PRD1
DL2H + DL2L
T2P2 T2P1 T2P0 T2EN
latc
h
To
PWM2IF
DT2H
+
DT2L
PWM2
Fosc
TMR2H + TMR2L
1:2
1:4
1:8
1:16
1:32
1:64
1:128
1:256
R
reset
Q
S
IOC80, 6
M
UX
PRD2
Fosc
1:2
1:4
1:8
1:16
1:32
1:64
1:128
1:256
DT3H
+
DT3L
DL3H + DL3L
latch
To
PWM3IF
PWM3
M
UX
R
TMR3H + TMR3L
reset
Q
S
IOC80, 7
T3P2 T3P1 T3P0 T3EN
PRD3
图 6-10 3个PWM的结构功能图
48 •
版本号 (V1.9) 01.11.2011
(产品更新后规格书不保证同步更新)
EM78P418N
8位OTP微控制器
周期
占空比
DT1 = TMR1
PRD1 = TMR1
图 6-11 PWM 输出周期
6.8.2 累加定时器/计数器(TMRX: TMR1H/TWR1L, TMR2H
/TWR2L, 或 TMR3H/TWR3L)
TMRX是带有预分频可编程的10位时钟计数器。它们设置为PWM模式的波特率发生器。
TMRX为只读。若使用,可通过将T1EN位[IOC80<3>],T2EN 位 [IOC90<6>] 或 T3EN
位[IOC90<7>] 设置为零,关闭转换电源。
6.8.3 PWM周期 (PRDX: PRD1 或 PRD2)
PWM周期由写入PRDX寄存器来定义。当TMRX寄存器的值与PRDX寄存器的值相等
时,在下个增量循环周期会产生以下事件:
„
TMRX被清零
„
PWMX引脚设置为1
„
PWM占空比由DT1/DT2/DT3 锁存至DL1/DL2/DL3。
注意
若占空比为“0”时,PWM输出不能设置。
„
PWMXIF设置为“1”
以下公式描述了如何计算PWM周期:
PERIOD = (PRDX + 1) * 4 * (1/Fosc) * CLKS/2 * (TMRX prescale value)
例如:
PRDX=49; Fosc=4MHz; CLKS bit of Code Option Register =0 (2 oscillator
periods); TMRX (0,0,0)=1:2, then PERIOD=(49 + 1) * 4 * (1/4M) * 2/2 * 2 =100us
版本号 (V1.9) 01.11.2011
(产品更新后规格书不保证同步更新)
• 49
EM78P418N
8位OTP微控制器
6.8.4 PWM占空比 (DTX: DT1H/ DT1L, DT2H/DT2L 和
DT3H/DT3L; DLX: DL1H/DL1L, DL2H/DL2L
and DL3H/DL3L)
PWM占空比由写入DTX寄存器来定义,当TMRX清零时由DTX锁存入DLX。当DLX与
TMRX相等时,PWMX引脚被清零。DTX随时可载入。然而,只有当DLX的当前值等于
TMRX时,其值才锁存至DLX。
以下公式描述如何计算PWM占空比:
Duty Cycle = (DTX) * (1/Fosc) * CLKS/2 * (TMRX prescale value )
例如:
DTX=10; Fosc=4MHz; CLKS bit of Code Option Register =0 (2 oscillator periods);
TMRX(0,0,0)=1:2, then Duty Cycle=10 * (1/4M) * 2/2 * 2 =5us
6.8.5 比较器X
匹配发生时,输出状态改变,同时设置TMRXIF标志位。
6.8.6 PWM 编程过程/步骤
将PWM周期载入PRDX
1. 将PWM占空比载入DTX。
2. 如需要,写入IOCF0使能中断功能。
3. 通过写入IOC80一个期望值,设置PWMX引脚为输出。
4. 载入IOC51一个期望值设置TMRX预分频比,并将PWMX和TMRX使能。
6.9 定时器
6.9.1 概述
Timer 1 (TMR1), Timer 2 (TMR2), 和 Timer 3 (TMR3) (TMRX) 是带预分频可编程的10
位时钟计数器。它们用于PWM模块作为波特率时钟发生器。TMRX为只读。在休眠模式
下AD转换停止,定时器1(Timer 1)、定时器2 (Timer 2)和定时器3(Timer 3)将
停止运行。然而,在休眠模式下同时运行AD转换,定时器1(Timer 1)、定时器2(Timer
2)和定时器(Timer 3)将继续运行。
50 •
版本号 (V1.9) 01.11.2011
(产品更新后规格书不保证同步更新)
EM78P418N
8位OTP微控制器
6.9.2 功能描述
下图为TMRX的功能框图。各信号和功能块如下图所示:
Fosc
1:2
1:4
1:8
1:16
1:32
1:64
1:128
1:256
To PWM1IF
M
UX
TMR1X
reset
T1P2 T1P1 T1P0 T1EN
PRD1
PRD2
T2P2 T2P1 T2P0 T2EN
1:2
1:4
1:8
1:16
1:32
1:64
1:128
1:256
reset
TMR2X
Fosc
M
UX
To PWM2IF
*TMR1X = TMR1H + TMR1L;
*TMR2X = TMR2H + TMR2L;
*TMR3X = TMR3H + TMR3L
Fosc
1:2
1:4
1:8
1:16
1:32
1:64
1:128
1:256
To PWM13F
M
UX
TMR3X
reset
T3P2 T3P1 T3P0 T3EN
PRD3
图 6-12 TMRX 功能图
Fosc: 输入时钟
预分频比(T1P2, T1P1 和 T1P0 / T2P2, T2P1 和 T2P0 / T3P2, T3P1 和 T3P0): 1:2, 1:4,
1:8, 1:16, 1:32, 1:64, 1:128, 和 1:256的选项由TMRX定义。任何形式的复位 产生时都被
清零。
TMR1X, TMR2X and TMR3X (TMR1H/TWR1L, TMR2H/TMR2L, & TMR3H/TMR3L):
TIMERX寄存器,TMRX自动加1,直到其值与PRDX匹配时复位为1(默认值)。
PRDX (PRD1, PRD2 and PRD3): PWM 周期寄存器。
Comparator X (Comparator 1 and Comparator 2): 匹配发生时,TMRX复位。同时,
TMRXIF标志位置1。
版本号 (V1.9) 01.11.2011
(产品更新后规格书不保证同步更新)
• 51
EM78P418N
8位OTP微控制器
6.9.3 相关寄存器编程
相关的寄存器定义TMRX见下表。必须注意的是,如果它们的相关寄存器TMRXs在使用
时,PWMX位必须禁止。也就是,PWMCON寄存器的位7~位5必须设置为“0”。
6.9.3.1 TMR1, TMR2 和 TMR3 的相关控制寄存器
地址
引脚名称
Bit 7
Bit 6
Bit 5
IOC80
PWMCON/IOC80 PWM3E PWM2E PWM1E
IOC90
TMRCON/IOC90
T3EN
T2EN
T3P2
Bit 4
“0”
Bit 3
Bit 2
Bit 1
Bit 0
T1EN T1P2 T1P1 T1P0
T3P1 T3P0 T2P2 T2P1 T2P0
6.9.4 定时器编程过程/步骤
1. 将定时器周期载入PRDX
2. 若需要,写入IOCF0将中断功能使能
3. 载入一个期望值到PWMCON和TMRCON,将TMRX使能和将PWMX禁止
6.10 比较器
EM78P418N 拥有一个包含两个模拟输入和一个输出的比较器。在休眠模式下,可以利
用比较器将EM78P418N唤醒。比较器的原理图描述如下所示。
C in -
-
CO
CM P
C in+
+
30m V
C in C in+
30m V
输出
图 6-13 比较器电路图和工作模式
52 •
版本号 (V1.9) 01.11.2011
(产品更新后规格书不保证同步更新)
EM78P418N
8位OTP微控制器
6.10.1 外部参考信号
当前的模拟信号Cin– 与Cin+相比较,比较器的数字输出(CO)根据以下注意事项进行调
整:
注意
■参考信号电压必须介于Vss和Vdd之间
■ 参考电压可用于比较器的其中一个引脚
■ 极值检测器应用可为同一参考信号
■ 比较器可运行于相同或不同的参考源
6.10.2 比较器输出
„
„
比较器的结果存储于IOCA0寄存器的CMPOUT位中。
通过程序将IOCA0寄存器的位1,位0 <COS1, COS0> 设置为<1, 0>将比较器的输
出送到CO (P60)。见6.2.6节IOCA0 (CMPCON: 比较控制寄存器P)的比较器/OP选
择位的功能描述。
注意
■P60/ADE0/CO引脚的CO 和 ADEO功能不能同时使用
■P60/ADE0/CO引脚的优先级如下:
P60/ADE0/CO 优先级
高
中
低
CO
ADE0
P60
比较器的输出功能图如下。
到 CO
从 OP I/O
CMR
D
E
N
Q
E
N
D
Q
D
到 CMPOUT
RESET
到 CPIF
CMRD
来自其它
的比较器
图 6-14 比较器输出结构
版本号 (V1.9) 01.11.2011
(产品更新后规格书不保证同步更新)
• 53
EM78P418N
8位OTP微控制器
6.10.3 用比较器作运算放大器使用
如果在比较器的输入与输出端外接一个反馈电阻,比较器可用作运算放大器。在这种情
况下,可通过将IOCA0寄存器的位1, 位 0<COS1, COS0>分别设置为 <1, 1>,禁止施密
特触发器以省电。请参考6.2.6节,IOCA0 (CMPCON: 比较控制寄存器)比较器/OP选择
位的功能描述。
6.10.4 比较器中断
„
必须将CMPIE (IOCF0.7)使能并通过“ENI”指令,以使中断生效
„
比较器的输出引脚状态改变时,中断产生
„
实际的引脚状态的变化可通过读取IOCA0寄存器的位2 CMPOUT的值
„
比较器的中断标志位CMPIF (RF.7), 只能由软件清零。
6.10.5 从休眠状态唤醒
„
若使能,即使处于休眠模式,比较器和中断的功能仍在持续。
„
如果失去匹配,中断将从休眠模式唤醒。
„
为维持能量,功耗必须考虑在内。
„
如果休眠模式下不需要该项功能,应在进入休眠模式前关闭比较器。
6.11 振荡器
6.11.1 振荡器模式
EM78P418N 可在四种不同的振荡器模式下工作,如高频晶振模式(HXT),低频晶振模
式(LXT),外部RC振荡器模式(ERC),和内部RC振荡模式(IRC)。通过在代码寄存器的
OSC2, OCS1, and OSC0中编程,选择其中的一种振荡器模式。
由OSC2, OCS1 和 OSC0定义的振荡器模式,如下所述。
振荡器模式
OSC2 OSC1 OSC0
1
0
0
0
1
0
0
1
2
0
1
0
2
0
1
1
3
1
1
0
3
1
1
1
ERC (内部 RC 振荡模式); P54/OSCO 引脚设置为 P54
ERC (外部 RC 振荡模式); P54/OSCO 引脚设置为 OSCO
IRC (内部 RC 振荡模式); P54/OSCO 引脚设置为 P54
IRC (内部 RC 振荡模式); P54/OSCO 引脚设置为 OSCO
LXT (低频晶振振荡模式)
HXT (高频晶振振荡模式) (默认值)
注意: 在HXT和LXY模式间系统的瞬间频率大约在400KHz。
1
54 •
在 ERC模式下,OSCI用作晶振引脚, OSCO/P54由代码选项Word 0的位6~位4 定义。
2
在 IRC模式下,P55作为通用I/O引脚。 OSCO/P54由代码选项Word 0的位6~位4 定义。
3
在 LXT 和HXT 模式, OSCI and OSCO 用做振荡器的引脚。这些引脚不能定义位通用I/O引脚。
版本号 (V1.9) 01.11.2011
(产品更新后规格书不保证同步更新)
EM78P418N
8位OTP微控制器
在不同的VDD下,晶振/谐振器的最大工作频率如下:
条件
电源电压 VDD
最大频率 (MHz)
2.3
4
3.0
8
5.0
20
2 个时钟周期
6.11.2 晶体振荡/陶瓷谐振器(晶体)
EM78P418N 可以由OSCO引脚输入外部时钟驱动,插图如下。
Ext.
Clock
OSCI
OSCO
图 6-15 外部时钟输入电路
大多数应用情况下, OSCI 引脚和OSCO 引脚连接晶体或是陶瓷谐振器来产生振荡。图
6-16为电路图。此类电路适用于 HXT模式和 LXT模式。
C1
OSCI
Crystal
OSCO
C2
RS
图 6-16 Crystal/Resonator Circuit
C1,C2的推荐值如下表,每个谐振器有自己的特性,用户应根据谐振器规格选择C1,C2
的合适值。串联电阻RS对AT切片晶体和低频模式是必需的。
晶体振荡或陶瓷谐振器电容选用指南:
振荡器类型
陶瓷振荡器
频率模式
HXT
LXT
晶体振荡器
HXT
版本号 (V1.9) 01.11.2011
(产品更新后规格书不保证同步更新)
频率
455kHz
2.0 MHz
4.0 MHz
32.768kHz
100kHz
200kHz
455kHz
1.0 MHz
2.0 MHz
4.0 MHz
C1 (pF)
C2 (pF)
100~150
20~40
10~30
25
25
25
20~40
15~30
15
15
100~150
20~40
10~30
15
25
25
20~150
15~30
15
15
• 55
EM78P418N
8位OTP微控制器
6.11.3 外部 RC振荡模式
Vcc
在一些不需要精确计时的应用中,使用RC振
荡(如图6-17)可节省成本。然而应当注意
R ext
到RC的振荡频率受电压,电阻值(Rext),
OSCI
电容值(Cext)甚至工作温度影响。而且由于制
C ext
造工艺的不同,不同的芯片频率也略有差异。
图 6-17 外部l RC振荡模式电路
为了获得稳定的系统频率,电容值不应低于 20pF,电阻值不应大于 1MΩ. 如果不能保证
在这个范围,频率很容易受噪声,湿度,漏电流的影响。
在RC模式中,电阻越小,频率越大。相反,Rext 越小,例如1 KΩ,由于NMOS不能正确
将电容放电,振荡器振荡将变得不稳定。
基于以上原因,必须牢记操作电压,工作温度,RC振荡器的元件,封装形式,PCB布
数都会对系统的频率有影响。
RC 振荡频率:
Cext
20 pF
100 pF
300 pF
Rext
Fosc 平均值 5V, 25°C
Fosc 平均值 3V, 25°C
3.3k
3.5 MHz
3.2 MHz
5.1k
2.5 MHz
2.3 MHz
10k
1.30 MHz
1.25 MHz
100k
140 kHz
140 kHz
3.3k
1.27 MHz
1.21 MHz
5.1k
850 kHz
820 kHz
10k
450 kHz
450 kHz
100k
48 kHz
50 kHz
3.3k
560 kHz
540 kHz
5.1k
370 kHz
360 kHz
10k
196 kHz
192 kHz
100k
20 kHz
20 kHz
1
注意: : 以直插封装形式测量
2
: 这些值仅供设计参考
3
:频率偏差大约在 ± 30%
6.11.4 内部 RC振荡模式
EM78P418N有一个通用的内部RC模式,默认频率是 4MHz。内部振荡模式还有其他频
率 (1MHz, 8MHz, 和 455kHz) 可以通过代码选项(Word 1)RCM1, RCM0设置。 下表
列出了内部RC频率在电压,温度,制程下的漂移。
56 •
版本号 (V1.9) 01.11.2011
(产品更新后规格书不保证同步更新)
EM78P418N
8位OTP微控制器
内部 RC 漂移比率(Ta=25°C, VDD=5V±5%, VSS=0V)
漂移比率
内部 RC 频率
温度
(-40°C~+85°C)
电压(2.3V~5.5V)
制程
Total
4MHz
±10%
± 5%
± 4%
±19%
8MHz
±10%
± 6%
± 4%
±20%
1MHz
±10%
± 5%
± 4%
±19%
455kHz
±10%
± 5%
± 4%
±19%
注意: 理论值仅供参考,实际值跟实际制程有关。
6.12 上电探讨
在提供电压稳定之前,任何微控制器不能保证开始正常工作。
EM78P418N有一个检测电压 1.7V 到 1.9V的片内上电电压检测器(POVD)。电路中减少
了外部复位电路。如果电压上升足够快(时间低于50 ms),它将正常工作。然而在要
求严格的应用下,仍然需要附加的外部电路来协助解决上电问题。
6.12.1 外部上电复位电路
图6-18的电路为外部RC产
生复位脉冲的电路。脉冲宽
度(时间常数)应保持足够
长的时间使VDD达到最小工
VDD
/RESET
R
D
作电压。这个电路应用在电
源电压上升时间比较慢的情
Rin
况。
C
图 6-18 外部上电复位电路
因为/RESET引脚上的漏电流大约±5µA,所以建议R值不应大于40K。这种方法使复位
引脚上的电压低于0.2V。二极管(D)在掉电时作为短路回路,电容C将迅速充分放电,
限流电阻Rin防止大电流或ESD进入复位引脚。
版本号 (V1.9) 01.11.2011
(产品更新后规格书不保证同步更新)
• 57
EM78P418N
8位OTP微控制器
6.12.2 残留电压保护
更换电池时,单片机的电源VDD断开,但仍然存在残留电压。残留电压可能小于最小工
作电压,但不为0。这样将引起不正常复位。 图. 6-16 和 图 6-20 为残留电压的保护电
路。
VDD
VDD
33K
Q1
10K
/RESET
100K
1N4684
图 6-19 残留电压保护电路1
VDD
VDD
R1
Q1
/RESET
R3
R2
图 6-20 残留电压保护电路2
6.13 代码选项
EM78P418N有两个代码选项位和一个用户ID位,它们不属于一般程序存储器的一部分。
58 •
Word 0
Word 1
Word 2
Bit 12 ~ Bit 0
Bit 12 ~ Bit 0
Bit 12 ~ Bit 0
版本号 (V1.9) 01.11.2011
(产品更新后规格书不保证同步更新)
EM78P418N
8位OTP微控制器
6.13.1 代码选项寄存器(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
Bit 2
Bit 1
ENWDTB OSC2
OSC1
OSC0
HLP
Protect
–Mnemonic
–
–
–
TYPE
CLKS
1
–
–
–
High
4clocks
Disable
High
High
High
High
Disable
0
–
–
–
Low
2clocks
Enable
Low
Low
Low
Low
Enable
Bit 0
Bit 12 ~ 10: 未使用(保留)
,这些位始终置“1”
Bit 9 (TYPE): 类型选择位
0: EM78P418N-24Pin
1: EM78P418N-18Pin/EM78P418N-20Pin (默认值)
Bit 8 (CLKS): 指令周期选项位
0: 2个时钟周期
1: 4个时钟周期(默认值)
指令设置,请参见6.15节
Bit 7 (ENWDTB): 看门狗定时器使能位
0: 使能
1: 禁止(默认值)
Bits 6, 5 & 4 (OSC2, OSC1 & OSC0): 振荡器模式选择位
振荡器模式
OSC2 OSC1 OSC0
1
0
0
0
1
0
0
1
ERC (外部 RC 振荡模式); P54/OSCO 设置为 P54
ERC (外部 RC 振荡模式); P54/OSCO 设置为 OSCO
2
0
1
0
2
0
1
1
3
1
1
0
3
1
1
1
IRC (内部 RC 振荡模式); P54/OSCO 设置为 P54
IRC (内部 RC 振荡模式); P54/OSCO 设置为 OSCO
LXT (低频晶振模式)
HXT (高频晶振模式) (默认值)
注意: 在HXT和LXY模式间系统的瞬间频率大约在400KHz。
1
ERC模式, OSCI 作为振荡引脚,OSCO/P54定义通过代码选项Word 0 Bit 6 ~ Bit 4来设置。
2
IRC模式, P55普通I/O引脚, OSCO/P54定义通过 Word 0 Bit 6 ~ Bit 4来设置。
3
LXT 和 HXT 模式; OSCI 和 OSCO用作振荡引脚, 这些引脚不能定义为普通I/O 。
Bit 3 (HLP): 未使用(保留),始终设为“0”
Bits 2 ~ 0 (Protect): 保护位
0: 使能
1: 禁止
版本号 (V1.9) 01.11.2011
(产品更新后规格书不保证同步更新)
• 59
EM78P418N
8位OTP微控制器
6.13.2 代码选项寄存器(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
C3
C2
C1
C0
RCM RCM
1
0
2cycl
es
High
High
High
High
High
High
Disabl 1cycl
e
e
Low
Low
Low
Low
Low
Low
–Mnemonic
–
–
–
–
NRHL NRE CYES
1
–
–
–
–
32/fc Enable
0
–
–
–
–
8/fc
Bit 0
Bits 12 ~ 9: 未使用(保留)
,这些位始终置“1”
Bit 8 (NRHL): 防噪音高/低脉冲设置1。INT引脚为上升沿或下降沿触发。
0: 脉冲等于8/fc [s] 视为信号
1: 脉冲等于32/fc [s] 视为信号(默认值)
注意
在LXT模式和休眠模式,防噪音功能被关闭。
Bit 7 (NRE): 防噪音使能位
0: 禁止防噪音
1: 使能防噪音(默认值)
,但在低频晶振(LXT)模式,防噪音电路通常
禁止。
Bit 6 (CYES): 指令循环选项位
0: 1个指令周期
1: 2个指令周期(默认值)
Bits 5, 4, 3 & Bit 2 ( C3, C2, C1, & C0 ): 内部RC模式校准位。这些位始终置“1”(自动
校正)。
Bit 1 & Bit 0 (RCM1 & RCM0): RC模式选择位
RCM 1
1
1
0
0
RCM 0
1
0
1
0
频率(MHz)
4
8
1
455kHz
6.13.3 用户 ID 寄存器(Word 2)
Word 2
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
×
×
×
×
×
×
×
×
×
Bits 12 ~ 0: 客户代码
60 •
版本号 (V1.9) 01.11.2011
(产品更新后规格书不保证同步更新)
EM78P418N
8位OTP微控制器
6.14 指令集
指令集中的每条指令均是13位。指令分为一个操作码和一个或多个操作数。一般情况
下,除非指令的执行改变了程序计数器的值("MOV R2,A", "ADD R2,A")或者对R2的算术
或逻辑操作 (例如. "SUB R2,A", "BS (C) R2,6", "CLR R2", ⋅⋅⋅⋅),否则执行所有的指令都
只占用单个指令周期(一个指令周期包含2 个时钟周期)。对于前面两种特殊的指令, 需
要一个或两个指令周期, 这由代码寄存器的CYES位决定。
另外,指令集有以下特性:
1. 任何寄存器的每个位可以被置1,清零,或直接测试
2. I/O 寄存器能作为一般寄存器,即相同指令可以对I/O寄存器进行操作
以下符号用于指令集,如下表:
惯例:
R =寄存器指示符,指定寄存器(包括工作寄存器和通用寄存器)中的哪个寄存器被使用,
R4的位6和7选择寄存器BANK.
b =表示一个位指示符,指定位于R寄存器中会影响操作的位
k =代表一个8位或10位常数或立即数
二进制指令
0 0000 0000 0000
0 0000 0000 0001
0 0000 0000 0010
0 0000 0000 0011
0 0000 0000 0100
0 0000 0000 rrrr
0 0000 0001 0000
0 0000 0001 0001
0 0000 0001 0010
0 0000 0001 0011
0 0000 0001 0100
0 0000 0001 rrrr
0 0000 01rr rrrr
0 0000 1000 0000
0 0000 11rr rrrr
0 0001 00rr rrrr
0 0001 01rr rrrr
0 0001 10rr rrrr
0 0001 11rr rrrr
0 0010 00rr rrrr
0 0010 01rr rrrr
版本号 (V1.9) 01.11.2011
(产品更新后规格书不保证同步更新)
十六进制
0000
0001
0002
0003
0004
000r
0010
0011
0012
0013
0014
001r
00rr
0080
00rr
01rr
01rr
01rr
01rr
02rr
02rr
助记符
操作
NOP
DAA
CONTW
SLEP
WDTC
IOW R
ENI
DISI
RET
RETI
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
无操作
寄存器 A 的数由二进制调整为 BCD 码
A → CONT
0 → WDT, 停止振荡
0 → WDT
A → IOCR
使能中断
禁止中断
[栈顶] → PC
[栈顶] → PC, 使能中断
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
受影响的标志位
无
C
无
T, P
T, P
1
无
无
无
无
无
无
无
无
Z
Z
Z, C, DC
Z, C, DC
Z
Z
Z
Z
• 61
EM78P418N
8位OTP微控制器
二进制指令
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
1
0010
0010
0011
0011
0011
0011
0100
0100
0100
0100
0101
0101
0101
0101
0110
0110
0110
0110
0111
0111
0111
0111
100b
101b
110b
111b
00kk
01kk
1000
1001
1010
1011
1100
1101
1111
10rr
11rr
00rr
01rr
10rr
11rr
00rr
01rr
10rr
11rr
00rr
01rr
10rr
11rr
00rr
01rr
10rr
11rr
00rr
01rr
10rr
11rr
bbrr
bbrr
bbrr
bbrr
kkkk
kkkk
kkkk
kkkk
kkkk
kkkk
kkkk
kkkk
kkkk
rrrr
rrrr
rrrr
rrrr
rrrr
rrrr
rrrr
rrrr
rrrr
rrrr
rrrr
rrrr
rrrr
rrrr
rrrr
rrrr
rrrr
rrrr
rrrr
rrrr
rrrr
rrrr
rrrr
rrrr
rrrr
rrrr
kkkk
kkkk
kkkk
kkkk
kkkk
kkkk
kkkk
kkkk
kkkk
十六进
制
02rr
02rr
03rr
03rr
03rr
03rr
04rr
04rr
04rr
04rr
05rr
05rr
05rr
05rr
06rr
06rr
06rr
06rr
07rr
07rr
07rr
07rr
0xxx
0xxx
0xxx
0xxx
1kkk
1kkk
18kk
19kk
1Akk
1Bkk
1Ckk
1Dkk
1Fkk
助记符
操作
受影响的标志位
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
RRCA R
RRC R
RLCA R
RLC R
SWAPA R
SWAP R
JZA R
JZ R
BC R,b
BS R,b
JBC R,b
JBS R,b
CALL k
JMP k
MOV A,k
OR A,k
AND A,k
XOR A,k
RETL k
SUB A,k
ADD A,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, 值为零则跳过下条指令
R-1 → R, 值为零则跳过下条指令
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, 值为零则跳过下条指令
R+1 → R, 值为零则跳过下条指令
0 → R(b)
1 → R(b)
如果 R(b)=0, 跳过下条指令
如果 R(b)=1, 跳过下条指令
PC+1 → [SP],(Page, k) → PC
(Page, k) → PC
k→A
A∨k→A
A&k→A
A⊕k→A
k → A,[栈顶] → PC
k-A → A
k+A → A
Z
Z
Z
Z
Z, C, DC
Z, C, DC
Z
Z
Z
Z
Z
Z
无
无
C
C
C
C
无
无
无
无
2
无
3
无
无
无
无
无
无
Z
Z
Z
无
Z, C, DC
Z, C, DC
1
Note: 这条指令只应用于 IOC50~IOCF0, IOC51 ~ IOCF1
2
3
62 •
这条指令建议不要使用在RF寄存器上
这条指令建议不要对RF进行操作
版本号 (V1.9) 01.11.2011
(产品更新后规格书不保证同步更新)
EM78P418N
8位OTP微控制器
7
最大绝对值
项目
8
范围
工作温度
-40°C
to
85°C
储存温度
-65°C
to
150°C
输入电压
Vss-0.3V
to
Vdd+0.5V
输出电压
Vss-0.3V
to
Vdd+0.5V
工作电压
2.5V
to
5.5V
工作频率
DC
to
20MHz
直流电气特性
Ta= 25 °C, VDD= 5.0V, VSS= 0V
符号
参数
晶振: VDD to 5V
FXT
晶振: VDD to 3V
条件
最大值
单位
DC
–
20
MHz
DC
–
8
MHz
F±30%
–
850
3.5
F±30%
–
kHz
V
OSCI 在 RC 模式
–
1.5
–
V
VIN = VDD, VSS
–1.0
0
1.0
µA
Ports 5, 6, 7
–
3.75
–
V
Ports 5, 6, 7
–
1.25
–
V
/RESET
–
2.0
–
V
/RESET
–
1.0
–
V
TCC, INT
–
3.75
–
V
TCC, INT
–
1.25
–
V
指令周期为 2 个时钟周期
最小值 典型值
ERC: VDD to 5V
VIHRC 输入高临界电压(施密特触发)
输入低临界电压(施密特触
VILRC
发)
输入引脚输入漏电流
IIL
输入高电压
VIH1
(施密特触发)
输入低电压
VIL1
(施密特触发)
VIHT1 输入高临界电压(施密特触发)
输入低临界电压(施密特触
VILT1
发)
输入高临界电压(施密特触
VIHT2
发)
输入低临界电压(施密特触
VILT2
发)
VIHX1 时钟输入高电压
R: 5.1KΩ, C: 100 pF
OSCI 在 RC 模式
OSCI 在晶振模式
–
3.5
–
V
VILX1 时钟输入低电压
输出高电压
IOH1
(Ports 5, 6, 7)
输出低电压
IOL1
(Ports 5, 6,7)
IPH 上拉电流
IPL 下拉电流
OSCI 在晶振模式
–
1.5
–
V
VOH = VDD-0.5V (IOH =-6mA)
–
-6.0
–
mA
VOL = GND+0.5V (IOL =12mA)
–
12.0
–
mA
–50
25
–75
40
–240
120
µA
µA
–
1.0
2.0
µA
–
–
15
µA
ISB1
省电电流
ISB2
省电电流
版本号 (V1.9) 01.11.2011
(产品更新后规格书不保证同步更新)
激活上拉,输入引脚接 VSS
激活下拉, 输入引脚接 Vdd
所有的输入引脚和 I/O 引脚接
VDD, 输出引脚悬空
WDT 禁止
所有输入引脚和 I/O 引脚接 VDD,
输出引脚悬空
WDT 使能
• 63
EM78P418N
8位OTP微控制器
符号
参数
条件
ICC1
2 个时钟周期的工作电流
ICC2
2 个时钟周期的工作电流
ICC3
2 个时钟周期的工作电流
ICC4
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
20
35
µA
–
25
35
µA
–
1.7
2.2
mA
–
3.0
3.5
mA
内部RC电气特性 (Ta=25°C, VDD=5 V, VSS=0V)
内部 RC
漂移率
温度
电压
最小值.
典型值.
最大值.
4MHz
25°C
5V
3.84MHZ
4MHz
4.16MHz
8MHz
25°C
5V
7.68MHz
8MHz
8.32MHz
1MHz
25°C
5V
0.96MHz
1MHz
1.04MHz
455kHz
25°C
5V
436.8kHz
455kHz
473.2kHz
内部RC电气特性(Ta=-40 ~85°C, VDD=2.2~5.5 V, VSS=0V)
内部 RC
64 •
漂移率
温度
电压
最小值
典型值
最大值
4MHz
-40 ~85°C
2.2~5.5 V
3.24MHZ
4MHz
4.76MHz
8MHz
-40 ~85°C
2.2~5.5 V
6.4MHz
8MHz
9.6MHz
1MHz
-40 ~85°C
2.2~5.5 V
0.81MHz
1MHz
1.19MHz
455kHz
-40 ~85°C
2.2~5.5 V
368kHz
455kHz
542kHz
版本号 (V1.9) 01.11.2011
(产品更新后规格书不保证同步更新)
EM78P418N
8位OTP微控制器
8.1 AD 转换器特性
Vdd=2.5V to 5.5V, Vss=0V, Ta=25°C
符号
VREF
VSS
VAI
IAI1
IAI2
参数
模拟参考电压
条件
VREF – VSS ≥ 2.5V
−
模拟输入电压
Ivdd
Ivref
Ivdd
Ivref
最小值 典型值 最大值
单位
2.5
−
VDD
V
VSS
−
VSS
V
VSS
−
VREF
V
模拟工作电流
VDD=VREF=5.0V, VSS = 0.0V
(V 参考来自 VDD)
750
850
1000
µA
-10
0
+10
µA
模拟工作电流
VDD=VREF=5.0V, VSS = 0.0V
(V 参考来自 VREF)
500
600
820
µA
200
250
300
µA
−
9
10
Bits
−
11
12
Bits
ADREF=0, 内部 VDD
RN1
分辨率
RN2
分辨率
LN1
数性误差
VDD= 2.5 to 5.5V Ta=25°C
0
±4
±8
LSB
LN2
数性误差
VDD= 2.5 to 5.5V Ta=25°C
0
±2
±4
LSB
DNL
差分非数性误差
VDD= 2.5 to 5.5V Ta=25°C
0
±0.5
±0.9
LSB
FSE1
满刻度误差
VDD=5.0V, VASS = 0.0V
±0
±4
±8
LSB
FSE2
满刻度误差
VDD=VREF=5.0V, VSS = 0.0V
±0
±2
±4
LSB
OE
偏移误差
VDD=VREF=5.0V, VSS = 0.0V
±0
±2
±4
LSB
ZAI
推荐的模拟电压源阻抗
0
8
10
KΩ
ADIV
A/D 输入电压范围
VDD =VREF=5.0V, VSS = 0.0V
0
−
VREF
V
ADOV
A/D 输出电压波动
VDD =VREF=5.0V, VSS = 0.0V,
RL=10KΩ
0
0.2
0.3
4.7
4.8
5
TAD
A/D 周期
VDD=VREF=5.0V, VSS = 0.0V
4
−
−
µs
TCN
A/D 转换时间
VDD=VREF=5.0V, VSS = 0.0V
15
−
15
TAD
PSR
电源滤波
VDD=5.0V±0.5V
±0
−
±2
LSB
VDD=5.0V, VSS = 0.0V
ADREF=1, 外部 VREF
VDD=VREF=5.0V, VSS = 0.0V
−
V
Note: 1. 这些参数是理论值(非测试值),仅供参考。
2. 与漏电流不同,当ADC关闭时不耗电流。
3. 当输入电压减少时,AD转换结果不会减少,无遗漏码
4. 规格可能会随时改变。
版本号 (V1.9) 01.11.2011
(产品更新后规格书不保证同步更新)
• 65
EM78P418N
8位OTP微控制器
8.2 比较器(OP) 特性
Vdd = 5.0V, Vss=0V, Ta=25°C
符号
参数
条件
最小值 典型值
SR
回转比率
IVR
输入电压范围
Vdd =5.0V, VSS =0.0V
–
0.1
OVS
输出电压波动
Vd =5.0V, VSS
=0.0V,RL=10KΩ
Iop
OP 的工作电流
Ico
比较器的工作电流
PSRR
OP 的电源饱和量
Vs
工作范围
0.2
0
最大
值
单位
–
V/µs
5
V
0
0.2
0.3
4.7
4.8
5
–
250
350
500
µA
–
–
300
–
µA
50
60
70
dB
5.5
V
Vdd= 5.0V, VSS =0.0V
–
2.5
V
Note: 1. 这些参数是理论值(非测试值),仅供参考。
2. 规格可能会随时改变。
8.3 器件特性
以下所列图所示特性取自有限的样品,并不保证它的准确性,在此仅用作参考。有些图
片所示数据可能超出规格指定的工作范围。
IRC OSC 频率 (VDD=3V)
9
8
频率(M Hz) .
7
6
5
4
3
2
1
0
-40
-20
0
25
70
50
85
温度 (℃)
图 8-1 内部RC 晶振频率 vs.温度 VDD=3V
66 •
版本号 (V1.9) 01.11.2011
(产品更新后规格书不保证同步更新)
EM78P418N
8位OTP微控制器
IRC OSC 频率 (VDD=5V)
10
9
频率
8
(M Hz) .
7
6
5
4
3
2
1
0
-40
-20
0
25
50
70
85
典型值
最大值
单位
45
50
55
%
晶振类型
100
–
DC
ns
RC 类型
500
–
DC
ns
(Tins+20)/N*
–
–
ns
温度℃
图 8-2 内部 RC 晶振频率vs.温度, VDD=5V
9
交流电气特性
Ta=25°C, VDD=5V±5%, VSS=0V
符号
参数
条件
–
最小值
Dclk
输入时钟的占空比
Tins
指令周期
(CLKS="0")
Ttcc
TCC 输入时间周期 T
Tdrh
器件复位持续时间
Ta = 25°C
11.3
16.2
21.6
ms
Trst
/RESET 脉冲宽度
Ta = 25°C
2000
–
–
ns
Twdt
看门狗定时器时间
Ta = 25°C
11.3
16.2
21.6
ms
Tset
输入引脚建立时间
–
0
–
ns
Thold
输入引脚保持时间
–
15
20
25
ns
Tdelay
输出引脚延迟时间
Cload=20pF
45
50
55
ns
Tdrc
外部 RC 延迟时间
Ta = 25°C
1
3
5
ns
–
–
Note: * N =选择预分频比
版本号 (V1.9) 01.11.2011
(产品更新后规格书不保证同步更新)
• 67
EM78P418N
8位OTP微控制器
10 时序
VDD-0.5V
0.75VDD
0.75VDD
0.25VDD
0.25VDD
+0.5V
1
-0.5V
0.25VDD
1
+0.5V
0
0.75VDD
0
CLK=0
NOP
1
CLK
/RESET
Tdrh
TCC
CLK=0
Tins
CLK
TCC
Ttcc
68 •
版本号 (V1.9) 01.11.2011
(产品更新后规格书不保证同步更新)
EM78P418N
8位OTP微控制器
附录
A 封装类型
OTP MCU
封装类型
引脚数
封装尺寸
EM78P418ND18J/S
DIP
18 pin
300mil
EM78P418NSO18J/S
SOP
18 pin
300mil
EM78P418ND20J/S
DIP
20 pin
300mil
EM78P418NSO20J/S
SOP
20 pin
300mil
EM78P418NK24J/S
Skinny DIP
24 pin
300mil
EM78P418NSO24J/S
SOP
24 pin
300mil
EM78P418NSS24J/S
SSOP
24 pin
150mil
绿色产品不含有害物。
符合Sony SS-00259 第三版标准。
Pb 含量小于 100ppm
Pb 含量符合 Sony 规格说明
项目
EM78P418NS/J
电镀类型
纯锡
成份 (%)
Sn:100%
熔点(°C)
232°C
电阻率 (µΩ-cm)
11.4
硬度(hv)
8~10
伸长 (%)
>50%
版本号 (V1.9) 01.11.2011
(产品更新后规格书不保证同步更新)
• 69
EM78P418N
8位OTP微控制器
B 封装形式
B.1 EM78P418ND18
图 B-1 EM78P418N 18-pin 直插封装型号
70 •
版本号 (V1.9) 01.11.2011
(产品更新后规格书不保证同步更新)
EM78P418N
8位OTP微控制器
B.2EM78P418NSO18
图 B-2 EM78P418N 18-pin SOP 封装型号
版本号 (V1.9) 01.11.2011
(产品更新后规格书不保证同步更新)
• 71
EM78P418N
8位OTP微控制器
B.3EM78P418ND20
图 B-3 EM78P418N 20-pin 直插封装型号
72 •
版本号 (V1.9) 01.11.2011
(产品更新后规格书不保证同步更新)
EM78P418N
8位OTP微控制器
B.4 EM78P418NSO20
图 B-4 EM78P418N 20-pin SOP 封装型号
版本号 (V1.9) 01.11.2011
(产品更新后规格书不保证同步更新)
• 73
EM78P418N
8位OTP微控制器
B.5 EM78P418NK24
图 B-5 EM78P418N 24-pin 小型直插 DIP封装型号
74 •
版本号 (V1.9) 01.11.2011
(产品更新后规格书不保证同步更新)
EM78P418N
8位OTP微控制器
B.6 EM78P418NSO24
图 B-6 EM78P418N 24-pin SOP 封装型号
版本号 (V1.9) 01.11.2011
(产品更新后规格书不保证同步更新)
• 75
EM78P418N
8位OTP微控制器
B.7 EM78P418NSS24
图 B-7 EM78P418N 24-pin SSOP 封装类型
76 •
版本号 (V1.9) 01.11.2011
(产品更新后规格书不保证同步更新)
EM78P418N
8位OTP微控制器
C EM78P418N 烧录引脚
在下面的IC列表, “引脚 # 号” 表示这个引脚被连接到DWTR烧录器的 Socket上.
版本号 (V1.9) 01.11.2011
(产品更新后规格书不保证同步更新)
• 77
EM78P418N
8位OTP微控制器
D 品质保证和可靠性
测试类别
可焊性
测试条件
焊料温度=245±5°C, 使用松香在上面停留 5 秒
备注
−
步骤 1: TCT, 65°C (15 分钟)~150°C (分钟), 10 次
步骤 2: 在 125°C 烤, TD (持久性)=24 小时
步骤 3: 储存在 30°C/60% , D (持久性)=192 小时
前提条件
步骤 4: IR 变化 3 次
(Pkg 厚度≥ 2.5mm or
3
Pkg 体积 ≥ 350mm ----225 ± 5°C)
适合 SMD IC (例如 SOP,
QFP, SOJ 等)
(Pkg 厚度 ≤ 2.5mm or
3
Pkg v 体积 ≤ 350mm ----240 ± 5°C )
温度周期测试
高压测试
-65° (15 分钟)~150°C (15 分钟), 200 次
TA =121°C, RH=100%, 压力=2 atm,
TD (持续性) = 96 小时
−
−
高温 /高湿测试
TA=85°C , RH=85% , TD (持续性)=168 , 500 hrs
−
高温保存期
TA=150°C, TD (持续性)=500, 1000 hrs
−
高温工作寿命
TA=125°C, VCC=最大工作电压,
TD (持续性) =168, 500, 1000 hrs
−
Latch-up
TA=25°C, VCC=最大工作电压, 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,
IP_PS,OP_PS,IO_PS,
ESD (MM)
TA=25°C, ≥ | ± 300V |
VDD-VSS(+),VDD_VSS
(-)模式
D.1 地址陷阱检测
地址陷阱检测是MCU嵌入式自动防止故障危害功能的一种,检测MCU由噪声或类似造
成的功能故障。无论何时MCU试图从ROM区获取一条指令,内部恢复电路将自动开始。
如果检测到噪声引起地址错误,MCU重复执行程序直到噪声消除。 MCU 将继续执行下
一条指令。
78 •
版本号 (V1.9) 01.11.2011
(产品更新后规格书不保证同步更新)