0
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心
发布
  • 发文章

  • 发资料

  • 发帖

  • 提问

  • 发视频

创作活动
EM78P372NSO20J

EM78P372NSO20J

  • 厂商:

    ELAN(义隆电子)

  • 封装:

    SOP-20-300mil

  • 描述:

    CPU内核:其他系列;CPU最大主频:-;程序存储容量:2KB;程序存储器类型:OTP;RAM总容量:80Byte;GPIO端口数量:18;ADC(位数):12bit;工作温度范围:-;

  • 数据手册
  • 价格&库存
EM78P372NSO20J 数据手册
EM78P372N 8位 OTP微控制器 产品规格书 版本 1.4 义隆电子股份有限公司 2016.03 商标告知: IBM 为一个注册商标,PS/2 是 IBM 的商标之一。 Windows 是微软公司的商标。 ELAN 和 ELAN 标志 是义隆电子股份有限公司的商标。 版权所有 © 2016 义隆电子股份有限公司 所有权利保留 台湾印制 本使用说明文件内容如有变动恕不另作通知。关于该规格书的准确性、适当性或者完整性,义隆电子股份 有限公司不承担任何责任。 义隆电子股份有限公司不承诺对本使用说明文件之内容及信息有更新及校正 之义务。 本规格书的内容及信息将为符合确认之指示而变更。 在任何情况下,义隆电子股份有限公司对本使用说明文件中的信息或内容的错误、遗漏,或者其它不准确 性不承担任何责任。由于使用本使用说明文件中的信息或内容而导致的直接,间接,特别附随的或结果的 损害, 义隆电子股份有限公司没有义务负责。 本规格书中提到的软件(如果有),都是依据授权或保密合约所合法提供的,并且只能在这些合约的许可 条件下使用或者复制。 义隆电子股份有限公司的产品不是专门设计来应用于生命维持的用具,装置或者系统。 义隆电子股份有 限公司的产品不支持而且禁止在这些方面的应用。 未经义隆电子股份有限公司书面同意,任何个人或公司不得以任何形式或方式对本使用说明文件的内容之 任一部分进行复制或传输。 义隆电子股份有限公司 总公司: 地址:台湾新竹科学园区 创新一路 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 elanhk@emc.com.hk 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 elan-sz@elanic.com.cn elan-sh@elanic.com.cn P.O. Box 601 Cupertino, CA 95015 USA Tel: +1 408 366-8225 Fax:+1 408 366-8225 目录 目录 1 综述 ........................................................................................................................ 1 2 产品特性 ................................................................................................................. 1 3 引脚分配 ................................................................................................................. 2 4 引脚描述 ................................................................................................................. 3 5 结构方框图 ............................................................................................................. 5 6 功能描述 ................................................................................................................. 6 6.1 操作寄存器 ............................................................................................................. 6 6.1.1 R0 (间接寻址寄存器) ....................................................................................................................... 6 6.1.2 R1 (定时时钟/计数器) ....................................................................................................................... 6 6.1.3 R2 (程序计数器) 和堆栈 ................................................................................................................... 6 6.1.4 R3 (状态寄存器) .......................................................................................................... 9 6.1.5 R4 (RAM 选择寄存器) ................................................................................................. 9 6.1.6 Bank 0 R5 ~ R7 (端口 5 ~ 端口 7) .............................................................................. 9 6.1.7 Bank 0 R8 (AISR: ADC 输入选择寄存器).................................................................... 9 6.1.8 Bank 0 R9 (ADCON: ADC 控制寄存器) ..................................................................... 9 6.1.9 Bank 0 RA (ADOC: ADC 补偿校准寄存器) ............................................................... 12 6.1.10 Bank 0 RB (ADDATA: ADC 转换结果)....................................................................... 14 6.1.11 Bank 0 RC (ADDATA1H: ADC 转换结果) .................................................................. 14 6.1.12 Bank 0 RD (ADDATA1L: ADC 转换结果) .................................................................. 14 6.1.13 Bank 0 RE (中断状态 2 和唤醒控制寄存器) .............................................................. 14 6.1.14 Bank 0 RF (中断状态 2 寄存器) ................................................................................ 15 6.1.15 Bank 1 R5 (TBHP: TBRD 指令的表指向寄存器) ....................................................... 16 6.1.16 Bank 1 R6 (TBLP: TBRD 指令的表指向寄存器)........................................................ 16 6.1.17 Bank 1 R7 (PWMCON: PWM 控制寄存器) ............................................................... 16 6.1.18 Bank 1 R8 (TMRCON: 定时器控制寄存器) ............................................................... 16 6.1.19 Bank 1 R9 (PRD1: PWM1 时间周期) ........................................................................ 17 6.1.20 Bank 1 RA (PRD2: PWM2 时间周期) ........................................................................ 17 6.1.21 Bank 1 RB (DT1: PWM1 占空比周期)....................................................................... 17 6.1.22 Bank 1 RC (DT2:PWM2 占空比周期) ....................................................................... 17 6.1.23 Bank 1 RE (LVD 中断和唤醒寄存器) ......................................................................... 17 6.1.24 Bank 1 RF (系统控制寄存器) .................................................................................... 18 6.1.25 R10 ~ R3F ................................................................................................................. 22 产品规格书 (V1.4) 03.15.2016 iii 目录 6.2 特殊功能寄存器 .................................................................................................... 22 6.2.1 A (累加器) .................................................................................................................. 22 6.2.2 CONT (控制寄存器) .................................................................................................. 22 6.2.3 IOC50 ~ IOC70 (I/O 端口控制寄存器) ...................................................................... 23 6.2.4 IOC80 (比较器控制寄存器) ....................................................................................... 23 6.2.5 IOC90 (TMR1: PWM1 定时器) .................................................................................. 24 6.2.6 IOCA0 (TMR2: PWM2 定时器) ................................................................................. 24 6.2.7 IOCB0 (下拉控制寄存器)........................................................................................... 24 6.2.8 IOCC0 (漏极开路控制寄存器) ................................................................................... 24 6.2.9 IOCD0 (上拉控制寄存器) .......................................................................................... 24 6.2.10 IOCE0 (WDT 控制寄存器和中断屏蔽寄存器 2 )........................................................ 25 6.2.11 IOCF0 (中断屏蔽寄存器) ........................................................................................... 26 6.2.12 IOC51 (高灌电流控制寄存器 1) ................................................................................. 27 6.2.13 IOC61 (高灌电流控制寄存器 2) ................................................................................. 27 6.2.14 IOC71 (高驱动电流控制寄存器 1) ............................................................................. 27 6.2.15 IOC81 (高驱动电流控制寄存器 2) ............................................................................. 28 6.2.16 IOCF1 (上拉控制寄存器) ........................................................................................... 28 6.3 TCC/WDT & 预分频器 .......................................................................................... 29 6.4 I/O 端口 ................................................................................................................ 30 6.4.1 使用 Port5 输入状态改变唤醒/中断功能 .................................................................... 33 6.5 复位和唤醒 ........................................................................................................... 33 6.5.1 复位和唤醒操作 ......................................................................................................... 33 6.5.2 状态寄存器的 T 和 P 状态 ......................................................................................... 43 6.6 中断 ...................................................................................................................... 44 6.7 模数转换器 (ADC) ................................................................................................ 46 6.7.1 ADC 控制寄存器 (AISR/R8, ADCON/R9, ADOC/RA) ............................................... 46 6.7.2 ADC 数据寄存器 (ADDATA/RB, ADDATA1H/RC, ADDATA1L/RD) .......................... 50 6.7.3 ADC 采样时间 ........................................................................................................... 50 6.7.4 AD 转换时间 .............................................................................................................. 50 6.7.5 休眠期间的 A/D 转换 ................................................................................................. 50 6.7.6 编程步骤/考虑的事项................................................................................................. 51 6.8 一对 PWM (脉宽调制器) ....................................................................................... 54 iv 6.8.1 概述 ........................................................................................................................... 54 6.8.2 递增定时计数器 (TMRX: TMR1 or TMR2) ................................................................ 55 6.8.3 PWM 周期 (TMRX: TMR1 或 TMR2) ........................................................................ 55 产品规格书(V1.4) 03.15.2016 目录 6.8.4 PWM 占空比 (DTX: DT1 or DT2; DLX: DL1 or DL2) ................................................ 55 6.8.5 比较器 X .................................................................................................................... 56 6.8.6 PWM 编程步骤 .......................................................................................................... 56 6.9 定时器/计数器 ....................................................................................................... 56 6.9.1 概述 ........................................................................................................................... 56 6.9.2 功能描述 .................................................................................................................... 57 6.9.3 相关寄存器设置 ......................................................................................................... 57 6.9.4 定时器编程步骤 ......................................................................................................... 58 6.9.5 PWM 级联模式 .......................................................................................................... 58 6.10 比较器 ................................................................................................................ 59 6.10.1 外部参考信号 ............................................................................................................ 59 6.10.2 比较器输出 ................................................................................................................ 59 6.10.3 比较器作为运算放大器使用 ....................................................................................... 60 6.10.4 比较器中断 ................................................................................................................ 60 6.10.5 由休眠模式唤醒 ......................................................................................................... 61 6.11 振荡器................................................................................................................. 61 6.11.1 振荡器模式 ................................................................................................................ 61 6.11.2 晶体振荡器/陶瓷谐振器 (晶振) .................................................................................. 62 6.11.3 外部 RC 振荡器模式 .................................................................................................. 65 6.11.4 内部 RC 振荡模式 ..................................................................................................... 65 6.12 上电探讨 ............................................................................................................. 66 6.12.1 可编程 WDT 溢出周期 ............................................................................................... 66 6.12.2 外部上电复位电路 ..................................................................................................... 66 6.12.3 残留电压保护 ............................................................................................................ 67 6.13 代码选项 ............................................................................................................. 68 6.13.1 代码选项寄存器 (Word 0) .......................................................................................... 68 6.13.2 代码选项寄存器 (Word 1) .......................................................................................... 69 6.13.3 客户 ID 寄存器 (Word 2) ............................................................................................ 70 6.14 低电压侦测/低电压复位 ....................................................................................... 71 6.14.1 低电压复位 ................................................................................................................ 71 6.14.2 低电压侦测 ................................................................................................................ 71 6.14.3 编程过程 .................................................................................................................... 73 6.15 指令集 ................................................................................................................ 74 产品规格书(V1.4) 03.15.2016 v 目录 7 绝对最大值 ........................................................................................................... 76 8 DC 电器特性 ......................................................................................................... 76 8.1 AD 转换特性 ......................................................................................................... 78 8.2 比较器特性 ........................................................................................................... 79 8.3 OP 特性 ................................................................................................................ 80 8.4 VREF 2V/3V/4V 特性............................................................................................ 80 8.5 设备特性 ................................................................................................................ 80 8.5.1 P5/P6/P7 Vih/Vil vs. VDD 曲线图.............................................................................. 81 8.5.2 P5/P6/P7 Ioh1 vs. Voh 曲线图 .................................................................................. 83 8.5.3 P51~P54, P56/P57/P60~P67 Ioh2 vs. Voh 曲线图 ................................................... 84 8.5.4 P5/P6/P7 Iol1 vs. Vol 曲线图 .................................................................................... 85 8.5.5 P51~P54, P56/P57/P60~P63 Iol2 vs. Vol 曲线图 ..................................................... 86 8.5.6 P5/P6 IPH vs. 温度 at VDD=3V&5V 曲线图 .............................................................. 87 8.5.7 P5 IPL vs. 温度 at VDD=3V&5V 曲线图 .................................................................... 88 8.5.8 ICC1 & ICC2 典型值 vs. 温度曲线图 ......................................................................... 88 8.5.9 ICC3 & ICC4 典型值 vs. 温度曲线图 ......................................................................... 89 8.5.10 从睡眠模式至正常模式唤醒时间 vs. VDD 曲线图 ..................................................... 90 8.5.11 从空闲模式至正常模式唤醒时间 vs. VDD 曲线图...................................................... 91 8.5.12 在正常模式下 WDT 溢出时间 vs. VDD 曲线图 .......................................................... 92 8.5.13 在正常模式下上电复位时间 vs. VDD 曲线图 ............................................................. 93 8.5.14 ICO 典型值 vs. 温度曲线图 ....................................................................................... 94 8.5.15 IAI1 和 IAI2 典型值 vs. 温度曲线图 ........................................................................... 95 8.5.16 LVR Level vs. 温度曲线图 ......................................................................................... 95 8.5.17 比较器补偿电压 vs. 温度曲线图 ................................................................................ 96 9 AC 电气特性 ........................................................................................................ 97 10 时序图 ................................................................................................................ 98 vi 产品规格书(V1.4) 03.15.2016 目录 附录 A 编码及制造信息.................................................................................................... 99 B 封装类型 ............................................................................................................ 101 C 封装结构 ............................................................................................................ 102 C.1 EM78P372ND14 ................................................................................................ 102 C.2 EM78P372NSO14 .............................................................................................. 103 C.3 EM78P372NSO16A ........................................................................................... 104 C.4 EM78P372ND18 ................................................................................................ 105 C.5 EM78P372NSO18 ............................................................................................. 106 C.6 EM78P372ND20 ................................................................................................ 107 C.7 EM78P372NSO20 ............................................................................................. 108 C.8 EM78P372NSS20 .............................................................................................. 109 C.9 EM78P372NMS10 ..............................................................................................110 C.10 EM78P372NQN16 ............................................................................................ 111 D 品质保证和可靠性 .............................................................................................. 112 D.1 地址缺陷检测 ...................................................................................................................... 112 产品规格书(V1.4) 03.15.2016 vii 目录 规格修订历史 版本 修订描述 日期 0.9 最初版本 2010/06/21 0.91 最初版本 2010/07/19 修改了 IOCC0 控制寄存器 0.92 修改了 Bank 1-RF[3:0] 控制寄存器 2010/08/06 修改了 Bank 0-RA[2:0] 控制寄存器 1.0 首发行版本 2010/12/10 修改了工作频率范围 (DC ~ 16 MHz) 1.1 1.修改了电气特性章节的部分内容 2011/05/24 2.修改了品质保证和可靠性章节的部分内容 1. 增加了 EM78P372NQN16S 封装类型 2. 删除了 EM78P372NSS10J/S 封装类型 . 3. 在特性部分补充了一些 I/O 端口描述. 1.2 4 .增加了分类及产品信息. 2012/02/10 5. 修改了指令表 6. 修改了章节编号 7.在特性部分修改了关于 POR 和 LVR 的描述 1.3 在第 6.1.9 节和第 6.7.1.3.节中添加了新的注释项目。 2013/10/02 修改了第 8.5 节中图片 1.修改第 2 章的封装类型 2.增加用户应用注意事项 1.4 3.修改附件 A 编码与制造信息 2016/03/15 4. 修改 6.7.4 节 ADC 转换时间 5. 修改 6.8.2 节递增定时计数器 viii 产品规格书(V1.4) 03.15.2016 目录 用户应用注意事项 (使用此芯片前,请仔细阅读下面的注意事项,其包含重要信息) 1. 如果占空比周期为 “0”,PWM输出将不被置位。 2. 当休眠模式时,内部TCC将停止运行。然而,在AD转换期间,当TCC设置为“SLEP”指令,如果RE 寄存器的ADWE位为使能,TCC将保持继续运行。 3. ADC转换期间,为确保其准确,所有的引脚将不执行输出指令。为了获取准确的结果,AD转换期间, 有必要避免所有I/O引脚的数据转换。 4. 当使用运算放大器时: (1) CMPIE (IOCE0.4), CMPWE (RE.2), CMPIF (RE.4)位元为无效 (2) 比较器中断为无效 (3) 比较器唤醒为无效 5. 在LXT2和休眠模式,噪声抑制功能关闭。 产品规格书(V1.4) 03.15.2016 ix 目录 x 产品规格书(V1.4) 03.15.2016 EM78P372N 8位微控制器 综述 1 EM78P372N是采用低功耗高速CMOS工艺设计开发的8位微控制器。该控制器有片内2KX13位一次性编程 ROM(OTP-ROM)。它提供一个保护位用以保护用户在OTP存储器内的程序不被读取,三个代码选项以满足 用户的需要。 基于增强的OTP-ROM特性,EM78P372N可方便地开发和校验用户代码,另外,使用开发与编程工具,使此 OTP代码更新更加简单和有效,用户可利用义隆烧录器很容易地烧录其开发代码。 产品特性 2  CPU 配置         2K13 位片内 ROM 808位片内寄存器 (SRAM) 8级堆栈用于子程序嵌套 5V/4 MHz 工作条件下耗电流低于 1.5 mA 3V/32kHz 工作条件下耗电流典型值为 15 A 休眠模式下耗电流典型值为 2 A  3 组双向I/O端口: P5, P6, P7 18 I/O 引脚 唤醒端口: P5 8 个可编程下拉I/O引脚(P50 ~ P57) 16 个可编程上拉I/O引脚(P50 ~ P57) (P60 ~ P67) 8 个可编程漏极开路I/O引脚(P60 ~ P67) 14 个可编程高灌I/O引脚(P51 ~ P54, P56 ~ P57) (P60 ~ P67)  外部中断: P60   工作电压范围:  2.3V~5.5V at -40C~85C (工规)  工作频率范围(基于2个时钟周期):  IRC 模式 振荡模式: 16 MHz, 4 MHz, 1 MHz, 8 MHz 温度 电压 (-40°C~85°C) (2.1V~5.5V) 制程 Total ±2% ±5% ±5%    ±2% 16 MHz ±2% ±1% *(4.5~5.5V) ±2% ±2% ±1% *(3.0~5.5V) ±2% ±1% *(2.1~5.5V) ±2% ±2% 封装类型: : : 14-pin SOP 150mil : 16-pin SOP 150mil : 18-pin DIP 300mil : 18-pin SOP 300mil : 20-pin DIP 300mil : 20-pin SOP 300mil : 20-pin SSOP 209mil : 16-pin QFN 330.8mm :  14-pin DIP 300mil 4 MHz 1 MHz 可编程的自由运行看门狗定时器 (4.5 ms : 18 ms) 休眠省电模式 上电电压侦测器 高抗EFT特性 (4MHz及以下抗EFT性能更好)  10-pin MSOP 118mil 偏移率 ±1% *(2.1~5.5V) 8 MHz  TCC 溢出中断 输入端口状态改变中断(可唤醒休眠模式) 外部中断 ADC 转换完成中断 比较器状态改变中断 低电压检测(LVD) 中断 PWM1~2 周期匹配中断 PWM1~2 占空比匹配中断 特性:      晶振模式: DC ~ 16 MHz, 4.5V; DC ~ 8 MHz, 3V; DC ~ 4 MHz, 2.1V  ERC模式: DC ~ 2 MHz, 2.1V; 内部 RC 频率 10个可用中断          2.1V~5.5V at 0C~70C (商规)  外设配置  8位实时时钟/计数器 (TCC),其时钟源、边沿触发和溢 出中断可选  4级可编程电压检测(LVD) : 4.5V, 4.0V, 3.3V, 2.2V  上电复位和可编程电压复位 POR:1.8V(默认), (LVR) : 4.0V, 3.5V, 2.7V  8通道解析度为12位的模数转换器  一对比较器或OP(偏移电压: 小于10mV)  两个脉宽调制器 (PWM),8位分辨率 I/O 端口配置        快速启动时间,在XT模式(VDD: 5V, 晶振: 4 MHz, C1/C2: 15pF)下只需0.8ms, 在IRC模式(VDD: 5V, IRC: 4 MHz)下 只需10s。     5%  EM78P372NMS10 EM78P372ND14 EM78P372NSO14 EM78P372NSO16A EM78P372ND18 EM78P372NSO18 EM78P372ND20 EM78P372NSO20 EM78P372NSS20 EM78P372NQN16 注: 绿色产品不含有害物质。 ±5% * 工作电压范围  以上四个主频都可通过编程设置ICE300N仿真器的六个 校正位来校正,OTP可由义隆烧录器自动校正。 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) 1 EM78P372N 8位微控制器 3 引脚分配 2 P54/TCC/VREF 3 P71//RESET 4 Vss 5 P60//INT P61 14 6 7 13 P51/ADC1/PMW2 P52/ADC2 1 P50/ADC0 P53/ADC3 2 12 P55/ADC6/OSCO/ERCin P54/TCC/VREF 3 11 P70/ADC5/OSCI/RCOUT P71//RESET 4 10 VDD 9 P67/ADC4/PWM1 Vss 5 P60//INT 6 P61 7 P64/CO 8 P66/CIN- 8 图 3-1 EM78P372ND14/SO14 P52/ADC2 1 P54/TCC/VREF 3 P71//RESET 4 Vss 5 P60//INT 6 P61 7 P62 8 P63 9 17 P50/ADC0 16 P55/ADC6/OSCO/ERCin 15 P70/ADC5/OSCI/RCOUT 14 VDD 13 P67/ADC4/PWM1 12 16 P51/ADC1/PWM2 15 P50/ADC0 14 P55/ADC6/OSCO/ERCin 13 P70/ADC5/OSCI/RCOUT 12 VDD 11 P67/ADC4/PWM1 10 P66/CIN- 9 P65/CIN+ 图 3-2 EM78P372NSO16A P56 1 20 P57/ADC7 P52/ADC2 2 19 P51/ADC1/PWM2 18 P50/ADC0 P53/ADC3 3 P54/TCC/VREF 4 P71//RESET 5 Vss 6 P60//INT 7 P66/CIN- P61 8 11 P65/CIN+ P62 10 P64/CO P63 EM78P372N-20in 2 EM78P372N-18Pin P53/ADC3 P51/ADC1/PWM2 18 EM78P372N-16Pin 1 EM78P372N-14Pin P52/ADC2 P53/ADC3 17 P55/ADC6/OSCO/ERCin 16 P70/ADC5/OSCI/RCOUT 15 VDD 14 P67/ADC4/PWM1 13 P66/CIN- 9 12 P65/CIN+ 10 11 P64/CO 图 3-4 EM78P372ND20/SO20/SS20 3 P71//RESET 4 Vss 5 P50/ADC0 9 P55/ADC6/OSCO/ERCin 8 P70/ADC5/OSCI/RCOUT 7 VDD 6 P67/ADC4/PWM1 16 P53/ADC3 1 P54/TCC/VREF 2 P55/ADC6/OSCO/ERCin P53/ADC3 10 P50/ADC0 2 P52/ADC2 1 P52/ADC2 EM78P372N-10Pin P51/ADC1/PWM2 P51/ADC1/PWM2 图 3-3 EM78P372ND18/SO18 15 14 13 12 P70/ADC5/OSCI/RCOUT 11 VDD 10 P67 9 P66/CIN- EM78P372N-QFN16S 4 6 7 8 P65/CIN+ 5 P64/CO VSS 3 P61 P71//RESET P60//INT 图 3-5 EM78P372NMS10 图 3-6 EM78P372NQN16S 2 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) EM78P372N 8位微控制器 4 引脚描述 符号 输入类 型 输出类 型 描述 P50 ST CMOS 双向 I/O 引脚,可编程内部下拉、内部上拉和 引脚状态改变唤醒 ADC0 AN  P51 ST CMOS ADC1 AN  PWM2  CMOS PWM2 输出 P52 ST CMOS 双向 I/O 引脚,可编程内部下拉、内部上拉、 高驱动、高灌和引脚状态改变唤醒 ADC2 AN  P53 ST CMOS ADC3 AN  P54 ST CMOS TCC ST  实时时钟/计数器的时钟输入 VREF AN  ADC 外部参考电压 P55 ST CMOS ADC6 AN  OSCO  ERCin AN  P56 ST CMOS 双向 I/O 引脚,可编程内部下拉、内部上拉、 高驱动、高灌和引脚状态改变唤醒 P57 ST CMOS 双向 I/O 引脚,可编程内部下拉、内部上拉、 高驱动、高灌和引脚状态改变唤醒 ADC7 ST  P60 ST CMOS /INT ST  功能 P50 P51 P52 P53 P54 P55 P56 XTAL P57 P60//INT 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) ADC 输入通道 0 双向 I/O 引脚,可编程内部下拉、内部上拉、 高驱动、高灌和引脚状态改变唤醒 ADC 输入通道 1 ADC 输入通道 2 双向 I/O 引脚,可编程内部下拉、内部上拉、 高驱动、高灌和引脚状态改变唤醒 ADC 输入通道 3 双向 I/O 引脚,可编程内部下拉、内部上拉、 高驱动、高灌和引脚状态改变唤醒 双向 I/O 引脚,可编程内部下拉、内部上拉和 引脚状态改变唤醒 ADC 输入通道 6 晶体振荡器/陶瓷谐振器的时钟输出引脚 外部 RC 振荡器输入引脚 ADC 输入通道 7 双向 I/O 引脚,可编程漏极开路、内部上拉、 高驱动和高灌 外部中断引脚 3 EM78P372N 8位微控制器 符号 P61~P63 功能 输入类 型 输出类 型 P61~P63 ST CMOS 双向 I/O 引脚,可编程漏极开路、内部上拉、 高驱动和高灌 P64  CMOS 双向 I/O 引脚,可编程漏极开路、内部上拉、 高驱动和高灌 CO ST  P65 ST CMOS CIN+ ST  P66 ST CMOS CIN- ST  P67 ST CMOS ADC4 AN  PWM1  CMOS PWM1 输出 P70 P70  双向 I/O 引脚 ADC5 AN  ADC 输入通道 5 OSCI XTAL  晶体振荡器/陶瓷谐振器的时钟输入引脚 P64/CO P65/CIN+ P66/CIN- P67/ADC4/PWM1 P70/ADC5/OSCI/ RCOUT 比较器输出 双向 I/O 引脚,可编程漏极开路、内部上拉、 高驱动和高灌 比较器同向端 双向 I/O 引脚,可编程漏极开路、内部上拉、 高驱动和高灌 比较器反向端 双向 I/O 引脚,可编程漏极开路、内部上拉、 高驱动和高灌 ADC 输入通道 4 内部 RC 振荡器的时钟输出引脚  CMOS P71 ST CMOS /RESET ST  系统复位引脚(需要外部上拉) ROCUT P71 外部 RC 振荡器的时钟输出引脚(漏极开路) 双向 I/O 引脚(漏极开路) VDD VDD Power  电源 VSS VSS Power  地 注: ST: 施密特触发输入引脚 CMOS: CMOS输出 4 描述 AN: 模拟引脚 XTAL: 晶体振荡器/陶瓷谐振器的振荡引脚 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) EM78P372N 8位微控制器 结构方框图 5 P70 P71 ROM PC Instruction Register 8-level stack (13 bit) Ext. OSC. Int. RC Ext. RC Oscillation Generation Start-up timer WDT Reset Instruction Decoder PWM2 PWM1 P6 P60 P61 P62 P63 P64 P65 P66 P67 TCC Mux PWM2 PWM1 TCC ALU R4 LVD RAM P5 ACC P50 P51 P52 P53 P54 P55 P56 P57 R3 (Status Reg.) Interrupt control register LVR Interrupt circuit ADC Comparator (CO) or OP Ext INT Ain0~7 Cin+ Cin- CO 图 5-1 EM78P372N 功能结构框图 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) 5 EM78P372N 8位微控制器 6 功能描述 6.1 操作寄存器 6.1.1 R0 (间接寻址寄存器) R0并非物理实现的寄存器。它用作一个间接寻址指针,任何使用R0作为存取数据指针 的指令,实际上存取的是RAM选择寄存器(R4)所指向的RAM地址。 6.1.2 R1 (定时时钟/计数器)  对来自TCC引脚的外部信号沿(边沿由CONT寄存器的第5位(TE)设置)或对内部指令 周期时钟进行加1计数  与其它寄存器一样可读写  TCC 预分频计数器分配给TCC使用  下列任何一种情况发生,CONT寄存器内容被清零  给TCC寄存器赋值  给TCC预分频位赋值(CONT寄存器的第3, 2, 1, 0位)  上电复位,/RESET复位,或WDT溢出复位 6.1.3 R2 (程序计数器) 和堆栈 PC A10 A9 A8 A7 ~ A0 Reset vector 0000h External interrupt 0003h Port 5 pin change 0006h TCC overflow interrupt 0009h AD conversion complete interrupt 000Ch Comparator interrupt 000Fh PWM1 Period Match interrupt 0012h PWM2 Period Match interrupt 0015h PWM1 Duty Match interrupt 0018h PWM2 Duty Match interrupt 001Bh 001Eh Low Voltage Detector interrupt 0021h User Memory Space CALL LCALL RET RETL Store ACC, R3, R4 RETI Stack Level 1 Stack Level 2 Stack Level 3 Stack Level 4 Stack Level 5 Stack Level 6 Stack Level 7 Stack Level 8 On-chip Program Memory 07FFh 图 6-1 程序存储器结构 6 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) EM78P372N 8位微控制器  R2 和硬件堆栈是 11位宽,它的结构于6.1.3.1节的数据存储配置表中有描述。  产生2K13位片内OTP ROM 地址以寻址相应的程序指令码。一个程序页是1024字 长。  复位时R2的所有位都被置为”0”。  "JMP" 指令可直接加载程序计数器的低10位。因此,"JMP"指令允许PC跳转到一个 程序页的任一位置。  "CALL"指令首先加载PC的低10位,然后将PC+1推入堆栈。因此,子程序入口地址 可位于一个程序页的任一位置。  "LJMP" 指令直接加载程序计数器的低11位(A0~A10),因此,"LJMP"指令允许PC跳 11 转到2K(2 )空间内的任一位置。  "LCALL" 指令首先加载PC的低11位(A0~A10),然后将PC+1推入堆栈,因此,子程 11 序入口地址可位于2K(2 )空间内的任一位置。  "RET" ("RETL k", "RETI") 指令将栈顶值加载到当前PC。  "ADD R2, A" 可将一个相对地址与当前PC相加,PC的第九位及以上各位逐次递增。  "MOV R2, A" 可从"A"寄存器加载一个地址到PC的低8位,PC的第九位及以上各位 保持不变。  任何(除“ADD R2,A”指令外)向R2写入值的指令(例如. "MOV R2, A", "BC R2, 6")都会 使PC的第九位与第十位(A8~A9)保持不变。  除了"LCALL"与"LJMP"外,其它任何指令都是单指令周期(fclk/2),"LCALL"与"LJMP" 指令需要两个指令周期。 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) 7 EM78P372N 8位微控制器 6.1.3.1 数据存储器配置 Register Bank 0 Register Bank 1 IOC Page 0 IOC Page 1 Address 8 00 R0 (Indirect Addressing Register) 01 R1 (Timer Clock Counter) 02 R2 (Program Counter) 03 R3 (Status Register) 04 R4 (RSR, Bank select) 05 R5 (Port 5 I/O data) R5 (TBHP: Table Point Register) IOC50 (Port 5 I/O control) IOC51 (HSCR1: High Sink Control Register 1) 06 R6 (Port 6 I/O data) R6 (TBLP: Table Point Register) IOC60 (Port 6 I/O control) IOC61 (HSCR2: High Sink Control Register 2) 07 R7 (Port 7 I/O data) R7 (PWMCON: PWM Control Register) IOC70 (Port 7 I/O control) IOC71 (HDCR1: High Driver Control Register 1) 08 R8 (ADC Input Select Register) R8 (TMRCON: Timer Control Register) IOC80 (Comparator Control Register) IOC81 (HDCR2: High Driver Control Register 2) 09 R9 (ADC Control Register) R9 (PRD1: PWM1 Time Period) IOC90 (TMR1: PWM1 Timer) IOC91 (Reserved) 0A RA (ADC Offset Calibration Register) RA (PRD2: PWM2 Time Period) IOCA0 ((TMR2: PWM2 Timer)) IOCA1 (Reserved) 0B RB (Converted value AD11~AD4 of ADC) RB (DT1: PMW1 Duty Cycle) IOCB0 (Pull-down Control Register) IOCB1 (Reserved)) 0C RC (Converted value AD11~AD8 of ADC) RC (DT2: PMW2 Duty Cycle) IOCC0 (Open-drain Control Register) IOCC1 (Reserved)) 0D RD (Converted value AD7~AD0 of ADC) RD (Reserved) IOCD0 (Pull-high Control Register) IOCD1 (Reserved) 0E RE (Interrupt Status 2 and Wake-up Control Register 1) RE (LVD Control and Wake-up Control Register 2) IOCE0 (WDT Control Register and Interrupt Mask Register 2) IOCE1 (Reserved) 0F RF (Interrupt Status Register 1) RF (Mode Select and IRC Switch Register) IOCF0 (Interrupt Mask Register 1) IOCF1 (Pull-high Control Register) 10 : 1F 16-Byte Common Register 20 : 3F Bank 0 32x8 Bank 1 32x8 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) EM78P372N 8位微控制器 6.1.4 R3 (状态寄存器) Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 RST IOCS  T P Z DC C Bit 7 (RST): 复位类型位 若休眠模式由引脚状态改变、比较器状态改变或AD转换完成等唤醒,其 值为“1”。其它复位类型唤醒,其值为“0”。 Bit 6 (IOCS): IO控制寄存器段选择位 0: 选择段0 (IOC50 ~ IOCF0) 1: 选择段1 (IOC51 ~ IOCC1) Bit 5: 未使用,一致设为“0” Bit 4 (T): 溢出位。 执行“SLEP”和“WDTC”指令或上电后置1,WDT溢出时清0(详 见6.5.2节,状态寄存器的T和P状态)。 Bit 3 (P): 掉电位。 当上电或执行"WDTC"指令后置1,执行"SLEP"指令后该位清“0” (详见6.5.2节,状态寄存器的T和P状态)。 Bit 2 (Z): 零标志位,如果逻辑或算术运算的结果为零时置”1” Bit 1 (DC): 辅助进位标志位 Bit 0 (C): 进位标志位 6.1.5 R4 (RAM 选择寄存器) Bit 7 (SBANK):特殊功能寄存器 0x05~0x0F bank 选择位 Bit 6 (BANK): 用于选择寄存器的Bank 0和Bank 1 Bits 5 ~ 0: 用于间接寻址模式下的寄存器选择(地址: 00~0F, 10~3F) 请参考上面章节6.1.3.1的数据存储器配置 6.1.6 Bank 0 R5 ~ R7 (端口 5 ~ 端口 7) R5 和 R6, P70 和 P71 是 I/O 寄存器 6.1.7 Bank 0 R8 (AISR: ADC 输入选择寄存器) AISR寄存器分别单独定义I/O端口作为模拟输入或数字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 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) 9 EM78P372N 8位微控制器 Bit 7 (ADE7): P57引脚的AD转换使能位 0: 禁止ADC7,P57作为普通I/O口 1: 使能ADC7作为模拟输入引脚 Bit 6 (ADE6): P55引脚的AD转换使能位 0: 禁止ADC6,P55作为普通I/O口 1: 使能ADC6作为模拟输入引脚 Bit 5 (ADE5): P70引脚的AD转换使能位 0: 禁止ADC5,P70作为普通I/O口 1: 使能ADC5作为模拟输入引脚 Bit 4 (ADE4): P67引脚的AD转换使能位 0: 禁止ADC4,P67作为普通I/O口 1: 使能ADC4作为模拟输入引脚 Bit 3 (ADE3): P53引脚的AD转换使能位 0: 禁止ADC3,P53作为普通I/O口 1: 使能ADC3作为模拟输入引脚 Bit 2 (ADE2): P52引脚的AD转换使能位 0: 禁止ADC2,P52作为普通I/O口 1: 使能ADC2作为模拟输入引脚 Bit 1 (ADE1): P51引脚的AD转换使能位 0: 禁止ADC1,P51作为普通I/O口 1: 使能ADC1作为模拟输入引脚 Bit 0 (ADE0): P50引脚的AD转换使能位 0: 禁止ADC0,P50作为普通I/O口 1: 使能ADC0作为模拟输入引脚 10 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) EM78P372N 8位微控制器 注意 P55/ADC6/OSCO/ERCin引脚不能同时用作OSCO与ADC6,如果 55/ADC6/OSCO/ERCin作为OSCO振荡器输入引脚, 此时,R8的ADE6位须为”0”且 ADIS2~0不能选择 “110”。P55/ADC6/OSCO/ERCin 引脚的优先级如下: : P55/ADC6/OSCO/ERCin 引脚优先级 高 中 低 OSCO/ERCin ADC6 P55 P70/ADC5/OSCI/RCOUT引脚不能同时用作OSCI与ADC5,如果 P70/ADC5/OSCI/RCOUT作为OSCI振荡器输入引脚, 此时,R8的ADE5位须为”0”且 ADIS2~0不能选择 “101”。 P70/ADC5/OSCI/RCOUT引脚的优先级如下: P70/ADC5/OSCI/ROCUT 引脚优先级 高 中 低 OSCI/RCOUT ADC5 P70 P67/ADC4/PWM1引脚不能同时用作PWM1与ADC4,如果P67/ADC4/PWM1作为ADC4 模拟输入引脚,此时,P67/ADC4/PWM1引脚的优先级如下: P67/ADC4/PWM1 引脚优先级 高 中 高 ADC4 PWM1 P67 P51/ADC1/PWM2引脚不能同时用作PWM2与ADC1,如果P51/ADC1/PWM2作为ADC1 模拟输入引脚,此时,P51/ADC1/PWM2引脚的优先级如下: P51/ADC1/PWM2 引脚优先级 高 中 低 ADC1 PWM2 P51 P50/ADC0引脚不能同时用作ADC0,如果P50/ADC0作为ADC0模拟输入引脚,此时, P50/ADC0引脚的优先级如下: P50/ADC0 引脚优先级 高 低 ADC0 P50 6.1.8 Bank 0 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参考电压的输入源 0: 以工作电压VDD作为ADC的参考电压(默认值),VREF/TCC/P54引脚 执行P54功能(默认) 1: 引脚VREF/TCC/P54上的电压作为ADC的参考电压。 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) 11 EM78P372N 8位微控制器 注意  P54/TCC/VREF 引脚不能同时作为 TCC和 VREF,如果P54/TCC/VREF 用作VREF 模拟输入引脚,此时,CONT寄存器”TS”位(-5)须设为“0”。  VREF/TCC/P54引脚的优先级如下: P53/TCC/VREF 引脚优先级 高 中 低 VREF TCC P54 Bit 6 & Bit 5 (CKR1 & CKR0): ADC的时钟预分频选择位 00 = 1 : 16 (默认值) 01 = 1 : 4 10 = 1 : 64 11 = 1 : 1 Bit 4 (ADRUN): ADC开始启动 0: 当转换完成时由硬件复位,该位不能由软件复位(默认) 1: AD转换开始,该位可由软件置位 Bit 3 (ADPD): ADC 功耗 0: ADC低功耗模式(默认)。 1: ADC 正常运行 Bit 2 ~ Bit 0 (ADIS2 ~ ADIS0): 模拟输入选择 ADICS ADIS2 ADIS1 ADIS0 模拟输入选择 0 0 0 0 ADIN0/P50 0 0 0 1 ADIN1/P51 0 0 1 0 ADIN2/P52 0 0 1 1 ADIN3/P53 0 1 0 0 ADIN4/P67 0 1 0 1 ADIN5/P70 0 1 1 0 ADIN6/P55 0 1 1 1 ADIN7/P57 1 0 X X OPOUT 1 1 X X 内部 1/4 VDD AD 通道仅在ADIF位和ADRUN位均为低时才可改变。请参见6.1.13章节RE寄存器(中断 状态 2 和唤醒控制寄存器)。 6.1.9 Bank 0 RA (ADOC: ADC 补偿校准寄存器) 12 Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 CALI SIGN VOF[2] VOF[1] VOF[0] VREF1 VREF0 ADICS 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) EM78P372N 8位微控制器 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] EM78P372N 0 0 0 0LSB 0 0 1 2LSB 0 1 0 4LSB 0 1 1 6LSB 1 0 0 8LSB 1 0 1 10LSB 1 1 0 12LSB 1 1 1 14LSB Bit 2 ~ Bit 1: ADC 内部参考电压源 VREF1 VREF0 ADC 内部参考电压 0 0 VDD (默认) 0 1 4.0V ± 1% 1 0 3.0V ± 1% 1 1 2.0V ± 1% 注意    如果VREF [1:0]=00, 内部参考电压没有启动,如果VREF[1:0]≠ 00则将自动启动, 而且,内部参考电压的电源与ADC无关。 当使用内部参考电压时,首次转换,用户必须等待最少50us以使能并稳定参考电 压,参考电压不稳定会造成转换结果不准确,首次转换之后,每当打开参考电压 时,用户必须等待最少6us 如果ADC用内部VREF2V作为模拟输入量,转换数据结果将会出错。因此必须注 意AD特性关联电压的最小模拟输入量不能小于2.5V。 Bit 0 (ADICS): ADC 内部通道选择位(选择ADC内部1/4 VDD或OP输出引脚接至ADC输 入脚) 0: 禁止(默认) 1: 使能 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) 13 EM78P372N 8位微控制器 6.1.10 Bank 0 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位清“0”,ADIF置“1”,见6.1.13部分, Bank 0 RE(中断状态 2 和唤醒控制寄存器)。 RB 为只读寄存器 6.1.11 Bank 0 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转换完成时,结果存入ADDATA1H, ADRUN位清“0”,ADIF置“1”,见6.1.13部分, Bank 0 RE(中断状态 2 和唤醒控制寄存器) 。 RC 为只读寄存器 6.1.12 Bank 0 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转换完成时,结果存入ADDATA1L, ADRUN位清“0”,ADIF置“1”,见6.1.13部分, Bank 0 RE(中断状态 2 和唤醒控制寄存器) 。 RD 为只读寄存器 6.1.13 注: Bank 0 RE (中断状态 2 和唤醒控制寄存器) Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 /LVD LVDIF ADIF CMPIF ADWE CMPWE ICWE LVDWE 1. RE 可由指令清零,但不能置位。 2. IOCE0 是中断屏蔽寄存器。 3. 读RE的值是RE与IOCE0“逻辑与”的结果。 Bit 7 (/LVD): 低电压侦测器状态位,该位为只读位。当VDD引脚电压小于LVD中断电平 (通过LVD1和LVD0位来选择)时,该位被清零。 0: 检测到低电压 1: 未检测到低电压或LVD功能禁止(默认) Bit 6 (LVDIF):低电压侦测器中断标志位 LVDIF由软件复位为“0” Bit 5 (ADIF): 模数转换中断标志位,当AD转换完成时置位,由软件复位。 0: 没有中断发生(默认) 1: 中断请求 14 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) EM78P372N 8位微控制器 Bit 4 (CMPIF): 比较器中断标志,当比较器输出发生改变时置位,软件清零。 0: 没有中断发生(默认) 1: 中断请求 Bit 3 (ADWE): ADC 唤醒使能位 0: 禁止ADC 唤醒(默认) 1: 使能ADC 唤醒 当 AD 转换进入休眠/空闲模式时,该位必须设为“使能”。 Bit 2 (CMPWE):比较器唤醒使能位 0: 禁止比较器唤醒(默认) 1: 使能比较器唤醒 当比较器进入休眠/空闲模式时,该位必须设为“使能”。 Bit 1 (ICWE): 端口5输入状态改变唤醒使能位 0: 禁止端口5输入状态改变唤醒(默认) 1: 使能端口5输入状态改变唤醒 当 Port5 状态改变用于唤醒休眠/空闲模式时,该位必须设为“使能”。 Bit 0 (LVDWE):低电压侦测唤醒使能位 0: 禁止低电压侦测唤醒(默认) 1: 使能低电压侦测唤醒 在低电压侦测运行情况下,当其用于进入中断或将IC由休眠/空闲模式唤 醒时,LVDWE位必须设为“使能”。 6.1.14 Bank 0 RF (中断状态 2 寄存器) 注: Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 - DT2IF DT1IF PWM2IF PWM1IF EXIF ICIF TCIF 1. “ 1 ”表示有中断请求,“ 0 ” 表示没有中断产生 2. RF 可由指令清“0”,但不能置1。 3. IOCF0是中断屏蔽寄存器。 4. 读RF的值是RF与IOCF0“逻辑与”的结果。 Bit 7: 不用,一直设为“0”。 Bit 6 (DT2IF): PWM2 占空比中断标志,当PWM2占空比匹配时置位,由软件清零。 Bit 5 (DT1IF): PWM1 占空比中断标志,当PWM1占空比匹配时置位,由软件清零。 Bit 4 (PWM2IF): PWM2 周期中断标志,当PWM2周期匹配时置位,由软件清零。 Bit 3 (PWM1IF): PWM1 周期中断标志,当PWM1周期匹配时置位,由软件清零。 Bit 2 (EXIF): 外部中断标志位,在/INT引脚下降沿时置位,由软件清零。 Bit 1 (ICIF): 端口5输入状态改变中断标志,当端口5输入状态改变时置位,由软件清零。 Bit 0 (TCIF): TCC溢出中断标志,当TCC溢出时置位,由软件清零。 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) 15 EM78P372N 8位微控制器 6.1.15 Bank 1 R5 (TBHP: TBRD指令的表指向寄存器) Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 MLB - - - - RBit10 RBit9 RBit8 Bit 7 (MLB): 选择机械码的MSB或LSB值移到寄存器 机械码由TBLP与TBHP寄存器指向。 Bit 6 ~ Bit 3: 未用,一直设为“0”。 Bit 2 ~ Bit 0: 程序码的最高3个有效位地址。 6.1.16 Bank 1 R6 (TBLP: TBRD指令的表指向寄存器) Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 RBit7 RBit6 RBit5 RBit4 RBit3 RBit2 RBit1 RBit0 Bit 7 ~ Bit 0: 程序码的最低8个有效位地址。 6.1.17 Bank 1 R7 (PWMCON: PWM 控制寄存器) Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 ”0” “0” “0” “0” “0” PWMCAS PWM2E PWM1E 未用,一直设为“0” Bit 7~ Bit 3: Bit 2 (PWMCAS): PWM 级联模式 0: 两个独立的 8 位 PWM 功能(默认) 1: 16 位 PWM 模式(由两个 8 位 PWM 级联而来) Bit 1 (PWM2E): PWM2 使能位 0: PWM2 关闭(默认),其相关的引脚用作 P51 功能 1: PWM2 开启,其相关引脚自动设为输出 Bit 0 (PWM1E): PWM1 使能位 0: PWM1 关闭(默认),其相关的引脚用作 P67 功能 1: PWM1 开启,其相关引脚自动设为输出 6.1.18 Bank 1 R8 (TMRCON: 定时器控制寄存器) Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 T2EN T1EN T2P2 T2P1 T2P0 T1P2 T1P1 T1P0 Bit 7 (T2EN): TMR2 使能位 0: TMR2 关闭(默认) 1: TMR2 开启 16 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) EM78P372N 8位微控制器 Bit 6 (T1EN): TMR1 使能位 0: TMR1 关闭(默认) 1: TMR1 开启 Bit 5 ~ Bit 3 (T2P2 ~ T2P0): TMR2 时钟分频器选项位 T2P2 T2P1 T2P0 分频比 0 0 0 1:1 (默认) 0 0 1 1:2 0 1 0 1:4 0 1 1 1:8 1 0 0 1:16 1 0 1 1:64 1 1 0 1:128 1 1 1 1:256 Bit 2 ~ Bit 0 (T1P2 ~ T1P0): TMR1 时钟分频器选项位 T1P2 T1P1 T1P0 分频比 0 0 0 1:1 (默认) 0 0 1 1:2 0 1 0 1:4 0 1 1 1:8 1 0 0 1:16 1 0 1 1:64 1 1 0 1:128 1 1 1 1:256 6.1.19 Bank 1 R9 (PRD1: PWM1 时间周期) Bank 1-R9 内容是 PWM1 的时间周期(时基),PWM1 的频率是其周期的倒数。 6.1.20 Bank 1 RA (PRD2: PWM2 时间周期) Bank 1-RA 内容是 PWM2 的时间周期(时基),PWM2 的频率是其周期的倒数。 6.1.21 Bank 1 RB (DT1: PWM1 占空比周期) 使 PWM1 的输出一直保持高电平直到其值与 TMR1 内容相匹配的一个特定值。 6.1.22 Bank 1 RC (DT2:PWM2 占空比周期) 使 PWM2 的输出一直保持高电平直到其值与 TMR2 内容相匹配的一个特定值。 6.1.23 Bank 1 RE (LVD 中断和唤醒寄存器) 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) 17 EM78P372N 8位微控制器 Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 LVDIE LVDEN LVD1 LVD0 - - - EXWE Bit 7 (LVDIE): 低电压侦测器中断使能位 0: 禁止低电压侦测器中断(默认) 1: 使能低电压侦测器中断 注意  当低电压侦测用于进入中断向量或进入下一条指令时,LVDIE位必须设为“使能”。 Bit 6 (LVDEN):低电压侦测器使能位 0: 禁止低电压侦测器功能(默认) 1: 使能低电压侦测器功能 Bit 5 ~ Bit 4: 低电压侦测器电平选择位 LVDEN LVD1, LVD0 1 LVD 中断电平 l /LVD Vdd  2.2V 0 Vdd > 2.2V 1 Vdd  3.3V 0 Vdd > 3.3V 1 11 1 10 1 01 1 00 0  Vdd  4.0V 0 Vdd > 4.0V 1 Vdd  4.5V 0 Vdd > 4.5V 1 N/A 1 注意 当Vdd变化时,如果Vdd达到LVD中断电平时,LVD中断产生。 Bit 3 ~ Bit 1: 未用,一直设为“0” Bit 0 (EXWE): 外部/INT引脚唤醒使能位 0: 禁止外部/INT引脚唤醒(默认) 1: 使能外部/INT引脚唤醒 6.1.24 Bank 1 RF (系统控制寄存器) Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 - TIMERSC CPUS IDLE SHS1 SHS0 RCM1 RCM0 Bit 7: 未用,一直设为“0” Bit 6 (TIMERSC): TCC, PWM1, PWM2 时钟源选择位 0: Fs 用做Fc 1: Fm 用做Fc(默认) 18 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) EM78P372N 8位微控制器 CPU 振荡源选择位 Bit 5 (CPUS): 0: Fs : 副频(WDT内部RC时基16kHz) 1: Fm : 主频(Fm)(默认) 当CPUS=0,CPU振荡器选择副振荡器,主振荡器停止。 Bit 4 (IDLE): 空闲模式使能位 该位将决定执行SLEP指令后CPU将进入哪个工作模式 0: IDLE = ‘0’ + SLEP 指令  休眠模式(默认) 1: IDLE = ‘1’ + SLEP 指令  空闲模式 RESET Normal Mode fm:oscillation fs: oscillation Wake up wake up CPU: using fm CPUS="1" IDLE="0" +SLEP Sleep Mode Wake up fm:stop fs: stop CPU: stop Green Mode CPUS="0" IDLE="1" +SLEP IDLE="1 "+SLEP fm:stop fs: oscillation IDLE="0" + SLEP CPU: using fs Idle Mode fm:stop fs: oscillation wake up CPU: stop 图 6-3 CPU 工作模式框图 振荡器 (普通模式振荡源) CPU 模式状态 振荡器稳定时间 1 (S) 休眠/空闲 → 普通 晶体 1M ~ 16 MHz 低速 → 普通 休眠/空闲 → 低速 普通/低速模式下计数 2 (CLK) 510 CLK 0.5 ms ~ 2 ms 510 CLK < 100 µs 8 CLK 休眠/空闲 → 普通 ERC 2 MHz 低速 → 普通 休眠/空闲 → 低速 < 5 µs 8 CLK < 100 µs 休眠/空闲 → 普通 IRC 1M, 4M, 8M, 16 MHz 低速 → 普通 休眠/空闲 → 低速 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) < 2 µs 8 CLK < 100 µs 19 EM78P372N 8位微控制器 注意 1 ■ 振荡器的稳定时间取决于振荡器的特性。 2 ■ 振荡器稳定后,CPU在普通/低速模式下将计数510/8 CLK,然后继续工作在普通/低 速模式。 例 1 : 4MHz IRC条件下从休眠模式唤醒至普通模式,总的唤醒时间是 2 µs + 8 CLK @ 4 MHz. 例 2 : 4MHz IRC条件下从休眠模式唤醒至低速模式,总的唤醒时间是 100 µs + 8 CLK @ 16kHz. Bit 3 ~ Bit 2 (SHS1 ~ SHS0): 选择 AD 采样和保持时间 (推荐至少 4μs,TAD: ADC 工作时钟周期) SHS1 SHS0 ADC 采样和保持时间 (TAD) 0 0 2 x TAD 0 1 4 x TAD 1 0 8 x TAD 1 1 12 x TAD (默认) Bits 1 ~ 0 (RCM1 ~ RCM0): IRC 模式选择位 RCM 1 RCM 0 频率 (MHz) 1 1 4 1 0 16 0 1 8 0 0 1 Bank 1 RF 将被使能 烧录器校正 IRC Bank 1 RF 频率 工作电压范围 稳定时间 1 4 MHz ± 2% 2.1V ~ 5.5V < 5 µs 1 0 16 MHz ± 10% 4.5V ~ 5.5V < 1.5 µs 0 1 8 MHz ± 10% 3.0V ~ 5.5V < 3 µs 0 0 1MHz ± 10% 2.1V ~ 5.5V < 24 µs 1 1 4 MHz ± 10% 2.1V ~ 5.5V < 6 µs 1 0 16 MHz ± 2% 4.5V ~ 5.5V < 1.25 µs 0 1 8 MHz ± 10% 3.0V ~ 5.5V < 3 µs 0 0 1MHz ± 10% 2.1V ~ 5.5V < 24 µs 1 1 4 MHz ± 10% 2.1V ~ 5.5V < 6 µs 1 0 16 MHz ± 10% 4.5V ~ 5.5V < 1.5 µs 0 1 8 MHz ± 2% 3.0V ~ 5.5V < 2.5 µs 0 0 1MHz ± 10% 2.1V ~ 5.5V < 24 µs RCM1 RCM0 1 4 MHz 16 MHz 8 MHz 20 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) EM78P372N 8位微控制器 (續 烧录器校正 IRC 1 MHz Bank 1 RF 频率 工作电压范围 稳定时间 1 4 MHz ± 10% 2.1V ~ 5.5V < 6 µs 1 0 16 MHz ± 10% 4.5V ~ 5.5V < 1.5 µs 0 1 8 MHz ± 10% 3.0V ~ 5.5V < 3 µs 0 0 1MHz ± 2% 2.1V ~ 5.5V < 20 µs RCM1 RCM0 1 注意 ■ Bank1 RF初始值将保持与Word 1的值一致。 ■ 如果用户改变IRC频率由A-频率到B-频率,MCU须等待一段时间后才工作,等待时间 与B-频率有关。 例如: st 1 步骤 当用户在烧录时选择的频率为4MHz,Bank 1 RF的初始值为“11”,与Word 1的值(“11”)一致。 如果MCU全速运行,它将工作在4 MHz ± 2%,参考下表。 烧录器校准 IRC Bank 1 RF 频率 工作电压范围 稳定时间 1 4 MHz ± 2% 2.1V ~ 5.5V < 5 µs 1 0 16 MHz ± 10% 4.5V ~ 5.5V < 1.5 µs 0 1 8 MHz ± 10% 3.0V ~ 5.5V < 3 µs 0 0 1MHz ± 10% 2.1V ~ 5.5V < 24 µs RCM1 RCM0 1 4 MHz nd 2 步骤 当MCU工作在4 MHz ± 2%下,若希望设置RF = “10”,MCU须保持1.5µs , 然后在16 MHz ± 10%下继续工作。 烧录器校准 IRC Bank 1 RF 频率 工作电压范围 稳定时间 1 4 MHz ± 2% 2.1V ~ 5.5V < 5 µs 1 0 16 MHz ± 10% 4.5V ~ 5.5V < 1.5 µs 0 1 8 MHz ± 10% 3.0V ~ 5.5V < 3 µs 0 0 1MHz ± 10% 2.1V ~ 5.5V < 24 µs RCM1 RCM0 1 4 MHz 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) 21 EM78P372N 8位微控制器 rd 3 步骤 当MCU工作在16 MHz ± 10%下,若希望设置RF = “00”,MCU须保持 24µs ,然后在1 MHz ± 10%下继续工作。 烧录器校准 IRC Bank 1 RF 频率 工作电压范围 稳定时间 1 4 MHz ± 2% 2.1V ~ 5.5V < 5 µs 1 0 16 MHz ± 10% 4.5V ~ 5.5V < 1.5 µs 0 1 8 MHz ± 10% 3.0V ~ 5.5V < 3 µs 0 0 1MHz ± 10% 2.1V ~ 5.5V < 24 µs RCM1 RCM0 1 4 MHz th 4 步骤 当MCU工作在1 MHz ± 10%下,若希望设置RF = “11”,MCU须保持5µs , 然后在4 MHz ± 2%下继续工作。 烧录器校准 IRC Bank 1 RF 频率 工作电压范围 稳定时间 1 4 MHz ± 2% 2.1V ~ 5.5V < 5 µs 1 0 16 MHz ± 10% 4.5V ~ 5.5V < 1.5 µs 0 1 8 MHz ± 10% 3.0V ~ 5.5V < 3 µs 0 0 1MHz ± 10% 2.1V ~ 5.5V < 24 µs RCM1 RCM0 1 4 MHz 6.1.25 R10 ~ R3F 这些寄存器都是 8位通用寄存器 6.2 特殊功能寄存器 6.2.1 A (累加器) 用于内部数据传输或指令操作数通常暂存在A中,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 注: CONT寄存器可读写。 Bit 6 为只读位 Bit 7 (INTE): INT 信号边沿 0: 中断发生在INT引脚信号上升沿 1: 中断发生在INT引脚信号下降沿 Bit 6 (INT): 中断使能标志位 0: 由DISI指令或硬件中断屏蔽 1: 由ENI或RETI指令使能 该位为只读位 22 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) EM78P372N 8位微控制器 TCC 信号源 Bit 5 (TS): 0: 内部指令周期时钟,若P54作为双向I/O口 1: 由 TCC 引脚传输信号 TCC 信号边沿 Bit 4 (TE): 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 0 0 0 0 1 1 1 PST1 0 0 1 1 0 0 1 PST0 0 1 0 1 0 1 0 TCC 分频比 1:2 1:4 1:8 1:16 1:32 1:64 1:128 1 1 1 1:256 注: Tcc 溢出时间 [1/FT x 预分频比 x (256  Tcc cnt) x 1 FT = Fm 或 Fs, 由 Bank 1 RF TIMERSC 位定义。 6.2.3 IOC50 ~ IOC70 (I/O 端口控制寄存器) "0" 定义相关I/O引脚为输出口 "1" 定义相关I/O引脚为高阻态输入 6.2.4 IOC80 (比较器控制寄存器) 注: Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 – – CMPOUT COS1 COS0 – – – IOC80寄存器的第4~0位可读写。 IOC80寄存器的第5位为只读位。 Bit 7 and Bit 6: 未用,一直设置为“0”. Bit 5 (CMPOUT): 比较器输出结果,该位为只读位。 Bit 4 and Bit 3 (COS1 and COS0): 比较器/OP选择位 功能描述 COS1 COS0 0 0 0 1 比较器和 OP 不用,P64, P65 和 P66 作为普通 I/O 引脚 P65 和 P66 作为比较器输入引脚,P64 作为普通 I/O 引脚 1 0 P65 和 P66 作为比较器输入引脚,P64 作为比较器输出引脚(CO) 1 1 作为 OP,P64 作为 OP 输出引脚(CO) Bits 2 ~ 0: 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) 未用,一直设置为“0” 23 EM78P372N 8位微控制器 6.2.5 IOC90 (TMR1: PWM1 定时器) 6.2.6 IOCA0 (TMR2: PWM2 定时器) 6.2.7 IOCB0 (下拉控制寄存器) Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 /PD57 /PD56 /PD55 /PD54 /PD53 /PD52 /PD51 /PD50 IOCB0寄存器可读写 Bit 7 (/PD57): 控制位用于使能P57引脚内部下拉功能 0: 使能内部下拉 1: 禁止内部下拉(默认) Bit 6 (/PD56): 控制位用于使能P56引脚内部下拉功能 Bit 5 (/PD55): 控制位用于使能P55引脚内部下拉功能 Bit 4 (/PD54): 控制位用于使能P54引脚内部下拉功能 Bit 3 (/PD53): 控制位用于使能P53引脚内部下拉功能 Bit 2 (/PD52): 控制位用于使能P52引脚内部下拉功能 Bit 1 (/PD51): 控制位用于使能P51引脚内部下拉功能 Bit 0 (/PD50): 控制位用于使能P50引脚内部下拉功能 6.2.8 IOCC0 (漏极开路控制寄存器) Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 OD67 OD66 OD65 OD64 OD63 OD62 OD61 OD60 IOCC0寄存器可读写 Bit 7 (OD67): 控制位用于使能P67引脚漏极开路功能 0: 禁止漏极开路输出 1: 使能漏极开路输出 Bit 6 (OD66): 控制位用于使能P66引脚漏极开路功能 Bit 5 (OD65): 控制位用于使能P65引脚漏极开路功能 Bit 4 (OD64): 控制位用于使能P64引脚漏极开路功能 Bit 3 (OD63): 控制位用于使能P63引脚漏极开路功能 Bit 2 (OD62): 控制位用于使能P62引脚漏极开路功能 Bit 1 (OD61): 控制位用于使能P61引脚漏极开路功能 Bit 0 (OD60): 控制位用于使能P60引脚漏极开路功能 6.2.9 IOCD0 (上拉控制寄存器) 24 Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 /PH57 /PH56 /PH55 /PH54 /PH53 /PH52 /PH51 /PH50 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) EM78P372N 8位微控制器 IOCD0 寄存器可读写 Bit 7 (/PH57): 控制位用于使能P57引脚内部上拉功能 0: 使能内部上拉 1: 禁止内部上拉 Bit 6 (/PH56): 控制位用于使能P56引脚内部上拉功能 Bit 5 (/PH55): 控制位用于使能P55引脚内部上拉功能 Bit 4 (/PH54): 控制位用于使能P54引脚内部上拉功能 Bit 3 (/PH53): 控制位用于使能P53引脚内部上拉功能 Bit 2 (/PH52): 控制位用于使能P52引脚内部上拉功能 Bit 1 (/PH51): 控制位用于使能P51引脚内部上拉功能 Bit 0 (/PH50): 控制位用于使能P50引脚内部上拉功能 6.2.10 IOCE0 (WDT 控制寄存器和中断屏蔽寄存器 2 ) Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 WDTE EIS ADIE CMPIE PSWE PSW2 PSW1 PSW0 Bit 7 (WDTE): 控制位用于使能看门狗定时器 0: 禁止 WDT (默认) 1: 使能 WDT WDTE 位可读写 Bit 6 (EIS): 控制位用于定义P60 (/INT)引脚的功能 0: P60,双向I/O引脚 1: /INT, 外部中断引脚,这种情况下,P60 的I/O控制位(IOC60的位 0 ) 必须设置为“1”。 注意 ■ 当EIS为“0”时,/INT通道被屏蔽。当EIS为“1”时,/INT引脚状态也可由读取Port6(R6) 读取到。参考图6-5(6.4部分(I/O端口)的I/O端口和I/O控制寄存器电路) ■ EIS位可读写 Bit 5 (ADIE): ADIF 中断使能位 0: 禁止ADIF中断 1: 使能ADIF中断 Bit 4 (CMPIE):CMPIF 中断使能位 0: 禁止CMPIF中断 1: 使能CMPIF中断 Bit 3 (PSWE): WDT预分频使能位 0: 预分频禁止,WDT分频比为1:1 1: 预分频使能,WDT分频比由位0~位2位设置 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) 25 EM78P372N 8位微控制器 Bit 2 ~ Bit 0 (PSW2 ~ PSW0): WDT 预分频比位 WDT 分频比 PSW2 PSW1 PSW0 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.11 IOCF0 (中断屏蔽寄存器) Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 - DT2IE DT1IE PWM2IE PWM1IE EXIE ICIE TCIE 注: IOCF0寄存器是可读写的 通过设定IOCF0和IOCE0的位4,5相关位为“1”来使能单个中断。 全局中断由ENI 指令使能,由DISI指令禁止。参考以下第6部分(中断)的图6-7(中断输 入电路) 。 Bit 7: 未使用,一直设置为“0” Bit 6 (DT2IE): DT2IE 中断使能位 0: 禁止 DT2IF 中断 1: 使能 DT2IF 中断 Bit 5 (DT1IE): DT1IE 中断使能位 0: 禁止DT1IF 中断 1: 使能DT1IF 中断 Bit 4 (PWM2IE): PWM2IE 中断使能位 0: 禁止PWM2IF中断 1: 使能PWM2IF中断 Bit 3 (PWM1IE): PWM1IE 中断使能位 0: 禁止PWM1IF中断 1: 使能PWM1IF中断 Bit 2 (EXIE): EXIF 中断使能位 0: 禁止EXIF中断 1: 使能EXIF中断 Bit 1 (ICIE): ICIF 中断使能位 0: 禁止ICIF中断 1: 使能ICIF中断 Bit 0 (TCIE): TCIF 中断使能位 0: 禁止TCIF中断 1: 使能TCIF中断 26 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) EM78P372N 8位微控制器 6.2.12 IOC51 (高灌电流控制寄存器 1) Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 HS57 HS56 - HS54 HS53 HS52 HS51 - Bit 7 (HS57): P57输出高灌电流的选择位 Bit 6 (HS56): P56输出高灌电流的选择位 Bit 5: 未用 Bit 4 (HS54): P54输出高灌电流的选择位 Bit 3 (HS53): P53输出高灌电流的选择位 Bit 2 (HS52): P52输出高灌电流的选择位 Bit 1 (HS51): P51输出高灌电流的选择位 Bit 0: 未用 HSxx VDD = 5V, 灌电流 0 10 mA (in 0.1VDD) 1 25 mA (in 0.1VDD) 6.2.13 IOC61 (高灌电流控制寄存器 2) Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 HS67 HS66 HS65 HS64 HS63 HS62 HS61 HS60 Bit 7 (HS67): P67输出高灌电流的选择位 Bit 6 (HS66): P66输出高灌电流的选择位 Bit 5 (HS65): P65输出高灌电流的选择位 Bit 4 (HS64): P64输出高灌电流的选择位 Bit 3 (HS63): P63输出高灌电流的选择位 Bit 2 (HS62): P62输出高灌电流的选择位 Bit 1 (HS61): P61输出高灌电流的选择位 Bit 0 (HS60): P60输出高灌电流的选择位 HSxx VDD = 5V, 灌电流 0 10 mA (in 0.1VDD) 1 25 mA (in 0.1VDD) 6.2.14 IOC71 (高驱动电流控制寄存器 1) Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 HD57 HD56 - HD54 HD53 HD52 HD51 - Bit 7 (HD57): P57输出高驱动电流的选择位 Bit 6 (HD56): P56输出高驱动电流的选择位 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) 27 EM78P372N 8位微控制器 Bit 5: 未用 Bit 4 (HD54): P54输出高驱动电流的选择位 Bit 3 (HD53): P53输出高驱动电流的选择位 Bit 2 (HD52): P52输出高驱动电流的选择位 Bit 1 (HD51): P51输出高驱动电流的选择位 Bit 0: 未用 HDxx VDD = 5V, 驱动电流 0 3.7 mA (in 0.9VDD) 1 10 mA (in 0.9VDD) 6.2.15 IOC81 (高驱动电流控制寄存器 2) Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 HD67 HD66 HD65 HD64 HD63 HD62 HD61 HD60 Bit 7 (HD67): P67输出高驱动电流的选择位 Bit 6 (HD66): P66输出高驱动电流的选择位 Bit 5 (HD65): P65输出高驱动电流的选择位 Bit 4 (HD64): P64输出高驱动电流的选择位 Bit 3 (HD63): P63输出高驱动电流的选择位 Bit 2 (HD62): P62输出高驱动电流的选择位 Bit 1 (HD61): P61输出高驱动电流的选择位 Bit 0 (HD60): P60输出高驱动电流的选择位 HDxx VDD = 5V, 驱动电流 0 3.7 mA (in 0.9VDD) 1 10 mA (in 0.9VDD) 6.2.16 IOCF1 (上拉控制寄存器) Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 /PH67 /PH66 /PH65 /PH64 /PH63 /PH62 /PH61 /PH60 注: IOCD0 寄存器是可读写的 Bit 7 (/PH67): 控制位用于使能P67引脚的内部上拉功能 0: 使能内部上拉 1: 禁止内部上拉 Bit 6 (/PH66): 控制位用于使能P66引脚的内部上拉功能 Bit 5 (/PH65): 控制位用于使能P65引脚的内部上拉功能 Bit 4 (/PH64): 控制位用于使能P64引脚的内部上拉功能 28 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) EM78P372N 8位微控制器 Bit 3 (/PH63): 控制位用于使能P63引脚的内部上拉功能 Bit 2 (/PH62): 控制位用于使能P62引脚的内部上拉功能 Bit 1 (/PH61): 控制位用于使能P61引脚的内部上拉功能 Bit 0 (/PH60): 控制位用于使能P60引脚的内部上拉功能 6.3 TCC/WDT & 预分频器 有两个8位计数器分别作为TCC和WDT的分频器。CONT寄存器的PST2~PST0位决定 TCC的分频系数。IOCE0寄存器的PSW0~PSW2位决定WDT的分频系数。每次给TCC 赋值都将TCC预分频计数器清零。执行 “WDTC”和“SLEP” 指令可将WDT和预分频比清 0。TCC/WDT的电路结构图如图6-3所示。 TCC(R1)是一个8位定时/计数器,TCC时钟源可以选择内部时钟(Fm/Fs)或外部信号 输入(从TCC引脚输入的时钟边沿可选择) 。如果TCC信号源来自内部时钟,TCC将在 每个指令周期(没有分频比)加1。如果TCC信号源来自外部时钟,TCC将在TCC引脚 输入每个下降沿或上升沿时加1, TCC引脚输入脉冲宽度(保持高或低电平)必须大于 Fm时钟或Fs时钟,由BANK 1 RF CPUS位决定。 注意 在休眠模式下,内部TCC将停止运行,然而,在AD转换期间,即使执行”SLEP”指令, 如果RE寄存器的ADWE位使能,TCC仍继续运行。 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) 29 EM78P372N 8位微控制器 看门狗定时器是一个自由运行的片内RC振荡器。甚至当振荡器关闭后(如在休眠模式), WDT仍在继续运行。无论是普通模式还是休眠模式,WDT溢出(若使能)将使MCU复 位。在普通模式下,可通过软件编程随时使能或禁止WDT。参考IOCE0寄存器的WDTE 位(6.2.10节的IOCE0(WDT控制&中断屏蔽寄存器2)。在没有设置WDT的分频比下, 1 2 WDT溢出的时间约为18ms 或 4.5ms 。 Fs Fm MUX 0 TCC Pin 1 8-Bit Counter Data Bus MUX 8 to 1 MUX TE (CONT) TCC (R1) Prescaler TS (CONT) WDT 8-Bit counter 8 to 1 MUX TCC overflow interrupt PST2~0 (CONT) Prescaler WDTE (IOCE0) WDT Time out PSW2~0 (IOCE0) 图 6-3 TCC 和 WDT 结构框图 6.4 I/O 端口 I/O寄存器(Port 5, Port 6,和 Port 7)是双向三态I/O端口。Port5可由软件设置内部 上拉或下拉。同样,P6可由软件设置漏极开路功能。Port5具有输入状态改变中断(或唤 醒)的功能,每个I/O引脚可通过设置I/O控制寄存器(IOC50 ~ IOC70)设置为输入或输出 引脚。I/O寄存器和I/O控制寄存器都是可读写的。Port 5, Port 6, 和 Port7的I/O接口电路 描述见图 6-4, 6-5, 6-6, & 6-7。 30 1 VDD=5V, WDT 溢出周期 = 16.5ms ± 30% 在 25°C VDD=3V, WDT 溢出周期 = 18ms ± 30%在 25°C 2 VDD=5V, WDT 溢出周期 = 4.2ms ± 30% 在 25°C VDD=3V, WDT 溢出周期 = 4.5ms ± 30%在 25°C 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) EM78P372N 8位微控制器 PCRD Q PORT P R D _ CLK Q C L Q P R PCWR IOD D _ CLK Q C L PDWR PDRD 0 1 M U X 注: 上拉和漏极开路没有在图中显示 图 6-4 Port6和Port7的 I/O端口和 I/O控制寄存器电路 PCRD P Q R D _ CLK Q C L Q P R D _ CLK Q C L PORT Bit 6 of IOCE0 P R Q CLK _ C Q L D PCWR IOD PDWR 0 1 M U X PDRD INT 注:上拉和漏极开路没有在图中显示 图 6-5 P60 (/INT)的I/O端口和I/O控制寄存器电路 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) 31 EM78P372N 8位微控制器 PCRD Q P R D _ CLK Q C L PCWR P50 ~ P57 Q PORT 0 P R IOD D _ CLK Q C L PDWR M U X 1 PDRD TI n D P R CLK C L Q _ Q 注: 上拉(下拉)和漏极开路没有在图中显示 图 6-6 Port5的 I/O端口和I/O控制寄存器电路 IOCF.1 RF.1 TI 0 TI 1 …. TI 8 图 6-7 Port5输入状态改变中断/唤醒功能块图 32 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) EM78P372N 8位微控制器 使用Port5输入状态改变唤醒/中断功能 6.4.1 (1) 唤醒 (2) 唤醒和中断 (a) 休眠前 (a) 休眠前 1. 禁止 WDT 1. 禁止 WDT 2. 读 Port5 的 I/O 状态 (MOV R5,R5) 2. 读 Port5 的 I/O 状态 (MOV R5,R5) 3. 执行 "ENI" 或 "DISI" 3. 执行 "ENI" 或 "DISI" 4. 使能唤醒位(设置 RE ICWE =1) 4. 使能唤醒位(设置 RE ICWE =1) 5. 执行 "SLEP" 指令 5. 使能中断 (设置 IOCF ICIE =1) (b) 唤醒后 6. 执行 "SLEP" 指令  下一条指令 (b) 唤醒后 1. 如果 "ENI"  中断向量(006H) 2. 如果 "DISI"  下一条指令 (3) 中断 (a) Port5 引脚输入状态改变前 1. 读 Port5 的 I/O 状态 (MOV R5,R5) 2. 执行 "ENI" 或 "DISI" 3. 使能中断 (设置 IOCF ICIE =1) (b) Port5 引脚输入状态改变后 (中断) 1. 如果"ENI"  中断向量 (006H) 2. 如果"DISI"  下一条指令 6.5 复位和唤醒 6.5.1 复位和唤醒操作 复位由下列情况之一引起: 1. 上电复位 2. /RESET引脚输入低电平 3. WDT溢出(若使能) 3 检测到复位之后,控制器将保持复位状态约18ms (除在LXT模式下),在LXT2模式下, 3 4 复位时间是 500ms。两种选择(18ms 或 4.5ms )都是WDT溢出周期。一旦复位发生, 将会执行以下功能(初始地址是000h):  振荡器继续运行或开始运行(如果在休眠模式下)  程序计数器 (R2) 设置为全 "0" 3 VDD=5V, 启动时间周期 = 16.5 ms ± 30%. VDD=3V, 启动时间周期 = 18 ms ± 30%. 4 VDD=5V, 启动时间周期 = 4.2 ms ± 30%. VDD=3V, 启动时间周期 = 4.5 ms ± 30%. 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) 33 EM78P372N 8位微控制器  所有的I/O端口引脚设置为输入模式(高阻态)  看门狗定时器和分频器清零  上电时,R3的高三位被清零  IOCB0寄存器的所有位被置“1”  IOCC0寄存器的所有位被置“0”  IOCD0 寄存器的所有位被置“1”  IOCE0 寄存器的位 7, 位5, 和 位4 清零  RE寄存器的位5和位4 清零  RF 和 IOCF0 寄存器清零 执行“SLEP”指令可进入休眠(低功耗)模式(当IDLE=”0”)。进入休眠模式时,振荡器、TCC、 TMR1和TMR2都停止工作。WDT(若使能)被清除但仍继续运行。 在A/D转换期间,执行“SLEP”指令,振荡器、TCC、TMR1和TMR2将继续运行,WDT (若使能)被清除但仍继续运行。 控制器可由以下几种情况唤醒 情况 1 /RESET引脚上有外部复位信号输入 情况 2 WDT溢出(若使能) 情况 3 Port5引脚输入状态改变(若ICWE使能) 情况 4 比较器输出状态改变(若CMPWE使能) 情况 5 A/D转换完成(若ADWE使能) 情况 6 低电压侦测器(如果LVDWE使能) 前两种情况(1 和 2)将引起EM78P372N复位。R3的T和P标志位可用于确定复位(唤醒) 源。第3、4、5和6种情况下,唤醒后将继续执行程序,由全局中断(执行ENI或者DISI) 决定唤醒后是否进入中断向量。如果在SLEP之前执行了ENI指令,唤醒后程序将从地址 0X06(情况3)、0X0F(情况4)、0X0C(情况5)和0X21(情况6)开始执行。如果在SLEP 之前执行了DISI指令,唤醒后程序将紧接着SLEP的下一条指令开始执行。 在进入休眠模式之前,在情况2到情况6之中只有一种可以被使能。即: 情况 [a] 如果执行SLEP之前WDT使能,RE所有位禁止,此时,EM78P372N仅可由情 况1或情况2唤醒,详细说明请参考中断部分(6.6节) 。 情况 [b] 执行SLEP之前,如果Port5输入状态改变用于唤醒EM78P372N且RE寄存器的 ICWE位为使能,WDT必须禁止,因此,EM78P372N仅可由情况3唤醒,唤醒 时间取决于振荡器的模式。在RC模式下,唤醒时间是10s(对于性能稳定的振 荡器);在XT(4MHz)模式下,唤醒时间是800s(对于性能稳定的振荡器) ;在 LXT2模式下,唤醒时间是2s~3s。 情况 [c] 执行SLEP之前,如果比较器输出状态改变用于唤醒EM78P372N且RE寄存器 的CMPWE位为使能,则WDT必须由软件禁止。因此,EM78P372N仅可由情 况4唤醒,唤醒时间取决于振荡器模式。在RC模式下,唤醒时间是10s(对于 性能稳定的振荡器);在XT(4MHz)模式下,唤醒时间是800s(对于性能稳定的 振荡器) ;在LXT2模式下,唤醒时间是2s~3s。 34 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) EM78P372N 8位微控制器 情况 [d] 执行SLEP之前,如果AD转换完成用于唤醒EM78P372N且RE寄存器的ADWE 位为使能, WDT必须由软件禁止。因此,EM78P372N仅可由情况5唤醒。唤 醒时间是16TAD(ADC时钟周期)。 情况[e] 在执行SLEP之前,如果低电压侦测器用于唤醒EM78P372N且Bank 0-RE寄存 器的LVDWE位为使能,WDT必须由软件禁止。因此,EM78P372N仅可由情 况6唤醒,唤醒时间取决于振荡器模式。 如果Port5输入状态改变产生中断用于唤醒EM78P372N(如上述的情况[b],在SLEP指 令前必须执行以下指令: BC R3, 6 MOV A, @00xx1110b IOW IOCE0 WDTC MOV R5, R5 ENI (or DISI) MOV A, @xxxxxx1xb MOV RE MOV A, @xxxxxx1xb IOW IOCF0 SLEP ; 选择控制寄存器段0 ; 选择WDT预分频比和关闭WDT ; ; ; ; 清WDT和预分频比 读端口 5 使能(或禁止) 全局中断 使能端口 5输入状态改变唤醒位 ; 使能端口 5输入状态改变中断 ; 休眠 同样地,如果比较器输出状态改变中断用于唤醒EM78P372N(如上述的情况[c]),在执 行指令SLEP前必须执行以下指令: BC MOV IOW MOV R3, 6 A, @xxx10XXXb IOC80 A, @00x11110b IOW IOCE0 WDTC ENI (or DISI) MOV A, @xxx0x1xxb MOV RE SLEP 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) ; 选择控制寄存器段 0 ; 选择比较器且 P64 作为 CO 引脚 ; 选择WDT预分频比和关WDT并使能比较器输 ; 出状态改变中断 ; 清 WDT 和分频比 ; 使能(或 禁止) 全局中断 ; 使能比较器输出状态改变唤醒位 ; 休眠 35 EM78P372N 8位微控制器 6.5.1.1 唤醒和中断模式操作概述 微控制器可由休眠模式和空闲模式唤醒,唤醒信号如下表所列: 唤醒信号 信号条件 休眠模式 DISI 外部 INT 唤醒无效 EXWE = 0 EXIE = 1 唤醒无效 唤醒无效 唤醒 + 下一条指令 唤醒 唤醒 + + 下一条指令 中断向量 唤醒 + 下一条指令 唤醒 唤醒 + + 下一条指令 中断向量 ICWE = 0 ICIE = 0 唤醒无效 唤醒无效 ICWE = 0 ICIE = 1 唤醒无效 唤醒无效 唤醒 + 下一条指令 唤醒 唤醒 + + 下一条指令 中断向量 唤醒 + 下一条指令 唤醒 唤醒 + + 下一条指令 中断向量 EXWE = 1, EXIE = 0 ICWE = 1 ICIE = 0 唤醒无效 TCIE = 0 TCC 溢出 唤醒无效 TCIE = 1 唤醒 + 下一条指令 唤醒 + 中断向量 ADWE = 0 ADIE = 0 唤醒无效 唤醒无效 ADWE = 0 ADIE = 1 唤醒无效 唤醒无效 唤醒 + 下一条指令 唤醒 唤醒 + + 下一条指令 中断向量 唤醒 + 下一条指令 唤醒 唤醒 + + 下一条指令 中断向量 ADWE = 1 ADIE = 0 ADWE = 1, ADIE = 1 36 ENI 唤醒无效 ICWE = 1 ICIE = 1 AD 转换完成 DISI EXWE = 0 EXIE = 0 EXWE = 1 EXIE = 1 Port 5 引脚状态改变 ENI 空闲模式 低速模式 DISI ENI 中断无效 下一条指令 中断 + 中断向量 中断无效 下一条指令 中断 + 中断向量 中断无效 下一条指令 中断 + 中断向量 中断无效 下一条指令 中断 + 中断向量 中断无效 下一条指令 中断 + 中断向量 中断无效 下一条指令 中断 + 中断向量 中断无效 下一条指令 中断 + 中断向量 普通模式 DISI ENI 中断无效 下一条指 令 中断 + 中断向量 中断无效 下一条指 令 中断 + 中断向量 中断无效 下一条指 令 中断 + 中断向量 中断无效 下一条指 令 中断 + 中断向量 中断无效 下一条指 令 中断 + 中断向量 中断无效 下一条指 令 中断 + 中断向量 中断无效 下一条指 令 中断 + 中断向量 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) EM78P372N 8位微控制器 唤醒信号 比较器中断 PWM1 周期匹 配中断 信号条件 休眠模式 DISI ENI 唤醒无效 CMPWE = 0 CMPIE = 1 唤醒无效 唤醒无效 唤醒 + 下一条指令 唤醒 唤醒 CMPWE = 1 + + CMPIE = 1 下一条指令 中断向量 PWM1IE = 0 CMPWE = 1 CMPIE = 0 唤醒无效 PWM1IE = 1 唤醒无效 PWM2IE = 1 唤醒无效 DT1IE = 1 DT2IE = 0 PWM2 占空比 匹配中断 低电压侦测器 唤醒无效 DT2IE = 1 唤醒 + 下一条指令 唤醒 唤醒 + + 下一条指令 中断向量 唤醒无效 唤醒 唤醒 + + 下一条指令 中断向量 唤醒无效 唤醒 唤醒 + + 下一条指令 中断向量 唤醒无效 唤醒 唤醒 + + 下一条指令 中断向量 唤醒无效 唤醒 唤醒 + + 下一条指令 中断向量 LVDWE = 0 LVDIE = 0 唤醒无效 唤醒无效 LVDWE = 0 LVDIE = 1 唤醒无效 唤醒无效 唤醒 + 下一条指令 唤醒 唤醒 + + 下一条指令 中断向量 唤醒+ 复位 唤醒+ 复位 唤醒 + 下一条指令 唤醒 唤醒 + + 下一条指令 中断向量 唤醒+ 复位 唤醒+ 复位 LVWE = 1 LVDIE = 0 LVDWE = 1 LVDIE = 1 WDT 溢出 低电压复位 ENI 唤醒无效 DT1IE = 0 PWM1 占空比 匹配中断 DISI CMPWE = 0 CMPIE = 0 PWM2IE = 0 PWM2 周期匹 配中断 空闲模式 WDTE = 1 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) 低速模式 DISI ENI 中断无效 下一条指令 中断 + 中断向量 中断无效 中断 + 中断向量 中断无效 中断 下一条指令 + 中断向量 中断无效 中断 下一条指令 + 中断向量 中断无效 中断 下一条指令 + 中断向量 中断无效 中断 下一条指令 + 中断向量 下一条指令 中断无效 下一条指令 中断 + 中断向量 中断无效 中断 + 中断向量 复位 复位 下一条指令 普通模式 DISI ENI 中断无效 下一条指 令 中断 + 中断向量 中断无效 中断 + 中断向量 中断无效 中断 下一条指 + 令 中断向量 中断无效 中断 下一条指 + 令 中断向量 中断无效 中断 下一条指 + 令 中断向量 中断无效 中断 下一条指 + 令 中断向量 下一条指 令 中断无效 下一条指 令 中断 + 中断向量 中断无效 中断 + 中断向量 复位 复位 下一条指 令 37 EM78P372N 8位微控制器 6.5.1.2 复位后寄存器的初始值 寄存器初始值归纳如下表: 地址 N/A 名称 IOC50 复位类型 Bit 7 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 /RESET 引脚复位和 WDT 复位 1 1 1 1 1 1 1 1 引脚状态改变唤醒 N/A N/A N/A IOC60 IOC70 IOC80 P P P P P P P P 位名 C67 C66 C65 C64 C63 C62 C61 C60 类型 – – – – – – – – 上电 1 1 1 1 1 1 1 1 /RESET 引脚复位和 WDT 复位 1 1 1 1 1 1 1 1 引脚状态改变唤醒 P P P P P P P P 位名       C71 C70 上电 0 0 0 0 0 0 1 1 /RESET 引脚复位和 WDT 复位 0 0 0 0 0 0 1 1 引脚状态改变唤醒 P P P P P P P P 位名   CMPOUT COS1 COS0    上电 0 0 0 0 0 0 0 0 /RESET 引脚复位和 WDT 复位 0 0 0 0 0 0 0 0 引脚状态改变唤醒 N/A N/A N/A N/A 38 IOCB0 (PDCR) IOCC0 (ODCR) IOCD0 (PHCR1) IOCE0 P P P P P P P P 位名 /PD57 /PD56 /PD55 /PD54 /PD53 /PD52 /PD51 /PD50 上电 1 1 1 1 1 1 1 1 /RESET 引脚复位和 WDT 复位 1 1 1 1 1 1 1 1 引脚状态改变唤醒 P P P P P P P P 位名 OD67 OD66 OD65 OD64 OD63 OD62 OD61 OD60 上电 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 位名 /PH57 /PH56 /PH55 /PH54 /PH53 /PH52 /PH51 /PH50 上电 1 1 1 1 1 1 1 1 /RESET 引脚复位和 WDT 复位 1 1 1 1 1 1 1 1 引脚状态改变唤醒 P P P P P P P P 位名 WDTC EIS ADIE CMPIE PSWE PSW2 PSW1 PSW0 上电 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 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) EM78P372N 8位微控制器 地址 N/A 名称 IOCF0 复位类型 Bit 7 Bit 6 Bit 5 位名  DT2IE DT1IE 上电 0 0 0 0 0 /RESET 引脚复位和 WDT 复位 0 0 0 0 0 引脚状态改变唤醒 N/A IOC51 (HSCR1) IOC61 (HSCR2) IOC71 (HDCR1) IOC81 (HDCR2) IOCF1 (PHCR2) 000 001 CONT R0 (IAR) R1 (TCC) EXIE ICIE TCIE 0 0 0 0 0 0 P P P P P P P  HS54 HS53 HS52 HS51  上电 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 位名 HS67 HS66 HS65 HS64 HS63 HS62 HS61 HS60 上电 0 0 0 0 0 0 0 1 /RESET 引脚复位和 WDT 复位 0 0 0 0 0 0 0 1 P P P P P P P P 位名 HD57 HD56  HD54 HD53 HD52 HD51  上电 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 位名 HD67 HD66 HD65 HD64 HD63 HD62 HD61 HD60 上电 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 位名 /PH67 /PH66 /PH65 /PH64 /PH63 /PH62 /PH61 /PH60 上电 1 1 1 1 1 1 1 1 /RESET 引脚复位和 WDT 复位 1 1 1 1 1 1 1 1 引脚状态改变唤醒 N/A Bit 0 HS56 引脚状态改变唤醒 N/A Bit 1 P 引脚状态改变唤醒 N/A PWM2IE PWM1IE Bit 2 HS57 引脚状态改变唤醒 N/A Bit 3 位名 引脚状态改变唤醒 N/A Bit 4 P P P P P P P P 位名 INTE INT TS TE PSTE PST2 PST1 PST0 上电 1 0 1 1 0 0 0 0 /RESET 引脚复位和 WDT 复位 1 0 1 1 0 0 0 0 引脚状态改变唤醒 P P P P P P P P 位名 – – – – – – – – 上电 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 位名 – – – – – – – – 上电 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 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) 39 EM78P372N 8位微控制器 地址 002 名称 R2 (PC) 复位类型 Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 位名 – – – – – – – – 上电 0 0 0 0 0 0 0 0 /RESET 引脚复位和 WDT 复位 0 0 0 0 0 0 0 0 位名 RST IOCS - T P Z DC C 上电 0 0 0 1 1 U U U /RESET 引脚复位和 WDT 复位 0 0 0 t t P P P 引脚状态改变唤醒 1 P P t t P P P 位名 SBANK BS0 – – – – – – 上电 0 0 U U U U U U /RESET 引脚复位和 WDT 复位 0 0 P P P P P P 引脚状态改变唤醒 003 004 R3 (SR) R4 (RSR) 引脚状态改变唤醒 005 Bank 0 R5 0 P P P P P P P 位名 P57 P56 P55 P54 P53 P52 P51 P50 上电 1 1 1 1 1 1 1 1 /RESET 引脚复位和 WDT 复位 1 1 1 1 1 1 1 1 引脚状态改变唤醒 006 007 Bank 0 R6 Bank 0 R7 P P P P P P P P 位名 P67 P66 P65 P64 P63 P62 P61 P60 上电 1 1 1 1 1 1 1 1 /RESET 引脚复位和 WDT 复位 1 1 1 1 1 1 1 1 引脚状态改变唤醒 P P P P P P P P 位名 – – – – – – P71 P70 上电 0 0 0 0 0 0 1 1 /RESET 引脚复位和 WDT 复位 0 0 0 0 0 0 1 1 引脚状态改变唤醒 008 009 Bank 0 R8 (AISR) Bank 0 R9 (ADCON) 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 引脚状态改变唤醒 0 0 0 0 P P P P 位名 VREFS CKR1 CKR0 ADRUN ADPD ADIS2 ADIS1 ADIS0 上电 0 0 0 0 0 0 0 0 /RESET 引脚复位和 WDT 复位 0 0 0 0 0 0 0 0 引脚状态改变唤醒 00A 40 Bank 0 RA (ADOC) 跳至地址 0x06 或 继续执行下一条指令 P P P P P 0 P P 位名 CALI SIGN VOF[2] VOF[1] VOF[0] VREF1 VREF0 ADICS 上电 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 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) EM78P372N 8位微控制器 地址 名称 00B Bank 0 RB (ADDATA) 00C 00D 00E 00F 复位类型 Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 位名 AD11 AD10 AD9 AD8 AD7 AD6 AD5 AD4 上电 U U U U U U U U /RESET 引脚复位 和 WDT 复位 U U U U U U U U 引脚状态改变唤醒 P P P P P P P P 位名     AD11 AD10 AD9 AD8 Bank 0 上电 RC /RESET 引脚复位 (ADDATA1H) 和 WDT 复位 0 0 0 0 U U U U 0 0 0 0 U U U U 引脚状态改变唤醒 P P P P P P P P 位名 AD7 AD6 AD5 AD4 AD3 AD2 AD1 AD0 上电 U U U U U U U U /RESET 引脚复位 和 WDT 复位 U U U U U U U U 引脚状态改变唤醒 P P P P P P P P 位名 /LVD LVDIF ADIF CMPIF ADWE CMPWE ICWE LVDWE 上电 1 0 0 0 0 0 0 0 /RESET 引脚复位 和 WDT 复位 1 0 0 0 0 0 0 0 引脚状态改变唤醒 P P P P P 位名  DT2IF DT1IF 上电 0 0 0 0 /RESET 引脚复位 和 WDT 复位 0 0 0 Bank 0 RD (ADDATA1L) Bank 0 RE (ISR2 & WUCR) Bank 0 RF (ISR2) 引脚状态改变唤醒 005 006 007 Bank 1 R5 (TBHP) P P ICIF TCIF 0 0 0 0 0 0 0 0 0 P P P P P P P P 位名 MLB     RBit10 RBit9 RBit8 上电 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 位名 RBit7 RBit6 RBit5 RBit4 RBit3 RBit2 RBit1 RBit0 Bank 1 上电 0 0 0 0 0 0 0 0 R6 (TBLP) /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 Bank 1 上电 R7 /RESET 引脚复位 (PWMCON) 和 WDT 复位 引脚状态改变唤醒 008 P EXIF PWM2IF PWM1IF Bank 1 R8 (TMRCON) PWMCA PWM2E PWM1E S P P P P P P P P 位名 T2EN T1EN T2P2 T2P1 T2P0 T1P2 T1P1 T1P0 上电 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 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) 41 EM78P372N 8位微控制器 地址 名称 复位类型 位名 009 Bank 1 R9 (PRD1) Bank 1 RA (PRD2) 00C 00E 0x10~0x3F Bit 3 Bit 2 PWM1[7] PWM1[6] PWM1[5] PWM1[4] PWM1[3] PWM1[2] Bit 1 Bit 0 PWM1[1 PWM1[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 PWM2[7] PWM2[6] PWM2[5] PWM2[4] PWM2[3] PWM2[2] PWM2[1 PWM2[0 ] ] 上电 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 DT1[7] DT1[6] DT1[5] DT1[4] DT1[3] DT1[2] DT1[1] DT1[0] Bank 1 上电 0 0 0 0 0 0 0 0 RB (DT1) /RESET 引脚复位 和 WDT 复位 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 /RESET 引脚复位 和 WDT 复位 0 0 0 0 0 0 0 0 引脚状态改变唤醒 P P P P P P P P 位名 LVDIE LVDEN LVD1 LVD0    EXWE 上电 0 0 1 1 0 0 0 0 /RESET 引脚复位 和 WDT 复位 0 0 1 1 0 0 0 0 引脚状态改变唤醒 P P P P P P P P 位名 - TIMERS C CPUS IDLE SHS1 SHS0 RCM1 RCM0 上电 0 1 1 0 1 1 WORD1 /RESET 引脚复位 和 WDT 复位 0 1 1 0 1 1 WORD1 引脚状态改变唤醒 P P P P P P Bank 1 RC (DT2) Bank 1 RE (LVDCR & WUCR) RF (SCR) R10~R3F P P 位名 – – – – – – – – 上电 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 符号说明: “” = 未用 “u” = 未知或无需理会 42 Bit 4 位名 Bank 1 00F Bit 5 /RESET 引脚复位 和 WDT 复位 引脚状态改变唤醒 00B Bit 6 上电 位名 00A Bit 7 “P” = 复位前的值 “t” = 对照6.5.2节的”复位类型表 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) EM78P372N 8位微控制器 6.5.1.3 复位控制器结构图 VDD D Oscillator Q CLK CLK CLR Power-on Reset Voltage Detector ENWDTB WDT Timeout Reset Setup time WDT /RESET 图 6-8 复位控制器结构图 6.5.2 状态寄存器的 T和 P 状态 复位由以下事件产生: 1. 上电复位 2. /RESET 引脚输入低电平 3. WDT 溢出(如果使能) T 和 P的值如下表所示,用于检测控制器是如何唤醒的 : 复位类型 RST T P 上电 0 1 1 在正常模式下/RESET 引脚复位 0 *P *P 在休眠模式下/RESET 引脚唤醒复位 0 1 0 在正常模式下 LVR 0 *P *P 在休眠模式下 LVR 唤醒 0 1 0 在正常模式下 WDT 溢出复位 0 0 1 在休眠模式下 WDT 唤醒 0 0 0 在休眠模式下引脚状态改变唤醒 1 1 0 *P: 复位前的状态 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) 43 EM78P372N 8位微控制器 下表列出了可能影响T和P状态的事件 事件 RST 0 T 1 P 1 *P 1 1 WDT 溢出 0 0 *P SLEP 指令 休眠模式下引脚状态改变唤醒 *P 1 1 1 0 0 上电 WDTC 指令 *P: 复位前的值 6.6 中断 EM78P372N 有以下10个中断源: 1. PWM1~2 周期匹配和占空比时间匹配溢出中断 2. Port 5 输入状态改变中断 3. 外部中断[(P60, /INT) 引脚] 4. 模数转换完成 5. 比较器输出状态改变 6. 低电压侦测中断 在Port5输入状态改变中断使能前,读Port5(例如:"MOV R5,R5")是必要的。Port5 每个引脚均具有这个功能。在执行SLEP指令进入休眠模式前,如果Port5输入状态改变 中断被使能,Port5输入状态改变会将EM78P372N从休眠模式唤醒。如果总的中断被禁 止,唤醒后控制器将继续向下逐行地执行程序。如果总的中断使能,程序将分支到中断 向量地址006H。 外部中断装备有数字噪声抑制电路(输入脉冲低于系统时钟周期被当作噪声而滤除)。然 而,在低频晶体振荡器(LXT2)模式下的噪声抑制电路将被禁止。由CONT寄存器的INTE 位选择触发边沿。当由外部产生中断时(若使能),下一条指令将从向量地址003H获取。 数字噪声抑制的定义请参考6.14.2节的代码选项寄存器Word 1的位8、位9。 RF 和 RE 是中断状态寄存器,它的相关标志位记录了中断请求状态。IOCF0 和 IOCE0 是中断屏蔽寄存器。全局中断由执行指令 ENI 使能,由执行 DISI 指令禁止。在中断服 务程序里,通过轮询 RF 的标志位来确定中断源。在离开中断服务程序前,必须用指令 清除中断标志,以免发生重复中断。 若中断屏蔽位为”使能”,中断状态寄存器(RF)标志位的置位,与是否执行了 ENI 指令 无关。需注意地是 RF 的结果是 RF 和 IOCF0 逻辑与的结果(参见下图) ,RETI 指令结 束中断子程序并使能全局中断(自动执行 ENI 指令) 。 当一个中断由定时器时钟/计数器产生(若使能) ,下一条指令将从地址 009,012, 015,018, 和 01BH(PWM1~2 周期和占空比分别匹配)获取。 当一个中断由 A/D 转换完成后产生(若使能) ,下一条指令将从地址 00CH 中获取。 当一个中断由比较器状态改变产生(若使能) ,下一条指令将从地址 00FH 获取(比较器 中断)。 44 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) EM78P372N 8位微控制器 当一个中断由低电压侦测产生(若使能),下一条指令将从地址 021H 获取(低电压侦测 器中断) 。 在执行中断服务子程序前,ACC,R3 和 R4 值将会由硬件自动保存,如果有另外一个中 断产生,ACC,R3 和 R4 寄存器将由新中断时的值取代。中断服务子程序结束后,ACC, R3 和 R4 内容将被还原。 VDD D Oscillator Q CLK CLK CLR Power-On Reset Low Voltage Reset Setup time WDTE WDT WDT Timeout Reset /RESET Interrupt sources ACC Interrupt occurs Stack ACC ENI/DISI R3 RETI R4 Stack R3 Stack R4 图 6-9 中断备份框图 EM78P372N的每个中断源都有各自的中断向量,详见下表: 中断向量 中断状态 优先级* 003H 外部中断 2 006H Port 5 引脚状态改变 3 009H TCC 溢出中断 4 00CH AD 转换完成中断 5 00FH 比较器中断 6 012H PWM1 周期匹配中断 7 015H PWM2 周期匹配中断 8 018H PWM1 占空比匹配中断 9 01BH PWM2 占空比匹配中断 10 021H 低电压侦测器中断 1 注: *优先级: 1 = 最高; 10 = 最低优先级 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) 45 EM78P372N 8位微控制器 6.7 模数转换器 (ADC) 模数转换电路包括一个8位模拟多路转换器,三个控制寄存器(AISR/R8, ADCON/R9, ADOC/RA),三个数据寄存器((ADDATA/RB, ADDATA1H/RC和ADDATA1L/RD)和一个 12位精度的AD转换器,其功能方框图如下。模拟参考电压(Vref)和模拟地由不同引脚接 入。接外部参考电压(VREF)比接内部VDD其转换结果更精确。 ADC模块采用逐次逼近式把未知的模拟信号转换为数字值,其结果存入ADDATA, ADDATA1H 和 ADDATA1L中。通过ADCON寄存器的ADIS2, ADIS1和ADIS0位的设置 来选择输入通道。 图 6-10 模数转换器功能方框图 这是一个 12 位逐次逼近寄存器模数转换器(SAR ADC),SAR ADC 有两个参考电压。参 考电压可以通过设置 ADCR2 寄存器的 VREFP 和 VPIS[1:0]位选择内部 AVDD、内部电 压源或外部输入引脚。接外部参考电压比使用内部 AVDD 更准确。 6.7.1 ADC 控制寄存器 (AISR/R8, ADCON/R9, ADOC/RA) 6.7.1.1 BANK 0 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 ADE0 AISR寄存器分别单独定义P5, P6和P7引脚作为模拟输入或数字I/O口。 Bit 7 (ADE7): P57引脚的AD转换使能位 0: 禁止ADC7,P57作为普通I/O口 1: 使能ADC7作为模拟输入引脚 Bit 6 (ADE6): P55引脚的AD转换使能位 0: 禁止ADC6,P55作为普通I/O口 1: 使能ADC6作为模拟输入引脚 46 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) EM78P372N 8位微控制器 Bit 5 (ADE5): P70引脚的AD转换使能位 0: 禁止ADC5,P70作为普通I/O口 1: 使能ADC5作为模拟输入引脚 Bit 4 (ADE4): P67引脚的AD转换使能位 0: 禁止ADC4,P67作为普通I/O口 1: 使能ADC4作为模拟输入引脚 Bit 3 (ADE3): P53引脚的AD转换使能位 0: 禁止ADC3,P53作为普通I/O口 1: 使能ADC3作为模拟输入引脚 Bit 2 (ADE2): P52引脚的AD转换使能位 0: 禁止ADC2,P52作为普通I/O口 1: 使能ADC2作为模拟输入引脚 Bit 1 (ADE1): P51引脚的AD转换使能位 0: 禁止ADC1,P51作为普通I/O口 1: 使能ADC1作为模拟输入引脚 Bit 0 (ADE0): P50引脚的AD转换使能位 0: 禁止ADC0,P50作为普通I/O口 1: 使能ADC0作为模拟输入引脚 6.7.1.2 BANK 0 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 ADCON寄存器控制AD转换器的运行以及确定哪个引脚当前有效。 Bit 7 (VREFS):ADC参考电压的输入源 0: 以工作电压VDD作为ADC的参考电压(默认值),VREF/TCC/P54引脚 执行P54功能(默认) 1: 引脚VREF/TCC/P54上的电压作为ADC的参考电压。 注意  P54/TCC/VREF 引脚不能同时作为 TCC和 VREF,如果P54/TCC/VREF 用作VREF 模拟输入引脚,此时,CONT寄存器”TS”位(-5)须设为“0”。  VREF/TCC/P54引脚的优先级如下: P53/TCC/VREF 引脚优先级 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) 高 中 低 VREF TCC P54 47 EM78P372N 8位微控制器 Bit 6 & Bit 5 (CKR1 & CKR0): ADC的振荡器时钟预分频 00 = 1 : 16 (默认值) 01 = 1 : 4 10 = 1 : 64 11 = 1 : 8 系统模式 CKR[1:0] 00(默认) 普通模式 省电模式 ADC运行时钟(FAD = 1 / TAD) FOSC/16 最大FMain (VDD = 2.5V ~ 3V) 4 MHz 最大FMain (VDD = 3V ~ 5.5V) 16 MHz 01 FOSC/4 1 MHz 4 MHz 10 FOSC/64 16 MHz  11  FOSC/1   16K/128kHz 1 MHz 16K/128kHz Bit 4 (ADRUN): ADC开始启动 0: 当转换完成时复位,该位不能由软件复位(默认) 1: AD转换开始,该位可由软件置位 Bit 3 (ADPD): ADC 低功耗模式 0: 关闭ADC参考电阻使其进入低功耗状态,尽管此时CPU可能仍在工作 1: ADC 正在运行 Bit 2 ~ Bit 0 (ADIS2 ~ ADIS0): 模拟输入选择 ADICS ADIS2 ADIS1 ADIS0 模拟输入选择 0 0 0 0 ADIN0/P50 0 0 0 1 ADIN1/P51 0 0 1 0 ADIN2/P52 0 0 1 1 ADIN3/P53 0 1 0 0 ADIN4/P67 0 1 0 1 ADIN5/P70 0 1 1 0 ADIN6/P55 0 1 1 1 ADIN7/P57 1 0 X X OPOUT 1 1 x x 内部, 1/4 VDD 这些位仅在ADIF位和ADRUN位均为低时才可改变。 6.7.1.3 RA (ADOC: AD 补偿校准寄存器) Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 CALI SIGN VOF[2] VOF[1] VOF[0] VREF1 VREF0 ADICS Bit 7 (CALI): ADC补偿校准使能位 0: 禁止校准 1: 使能校准 Bit 6 (SIGN): 补偿电压极性选择位 0: 负电压 1: 正电压 48 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) EM78P372N 8位微控制器 Bit 5 ~ Bit 3 (VOF[2] ~ VOF[0]): 补偿电压位 VOF[2] 0 VOF[1] 0 VOF[0] 0 EM78P372N 0LSB 0 0 1 2LSB 0 1 0 4LSB 0 1 1 0 1 0 6LSB 8LSB 1 0 1 10LSB 1 1 0 12LSB 1 1 1 14LSB Bit 2 ~ Bit 1: ADC 内部参考电压源 VREF1 VREF0 ADC 内部参考电压 0 0 VDD 0 1 4.0V ± 1% 1 0 3.0V ± 1% 1 1 2.0V ± 1% Bit 0 (ADICS): ADC内部通道选择位(选择ADC内部的1/4 VDD或者OP输出引脚连接到 ADC输入引脚) 0: 禁止 1: 使能 注意 1. 如果VREF [1:0]=00, 内部参考电压没有启动,如果VREF[1:0]≠ 00则将自动启动, 而且,内部参考电压的电源与ADC无关. 2. 当使用内部参考电压时,首次转换,用户必须等待最少50us以使能并稳定参考电压, 参考电压不稳定会造成转换结果不准确,首次转换之后,每当打开参考电压时,用 户必须等待最少6us 3.如果ADC用内部VREF2V作为模拟输入量,转换数据结果将会出错。因此必须注意 AD特性关联电压的最小模拟输入量不能小于2.5V。 Bank 1 RF (IRC 切换寄存器) 6.7.1.4 Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 - TIMERSC CPUS IDLE SHS1 SHS0 RCM1 RCM0 Bits 3 ~ 2 (SHS1 ~ SHS0): AD 采用和保持时间选择(建议至少 4us,TAD:ADC 运行时 钟周期) SHS1 SHS0 ADC 采样和保持时间 (TAD) 0 0 2 x TAD 0 1 4 x TAD 1 0 8 x TAD 1 1 12 x TAD (默认) 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) 49 EM78P372N 8位微控制器 6.7.2 ADC 数据寄存器 (ADDATA/RB, ADDATA1H/RC, ADDATA1L/RD) 当A/D转换完成时,其结果载入ADDATA1H 和ADDATA1L寄存器。如果ADIE位使能, 则ADIF位置位。 6.7.3 ADC 采样时间 逐次逼近式AD转换的精确性、线性和速度由ADC特性决定。源电阻和内部采样电阻直 接影响采样和保持电容充电所需时间。应用过程控制采样时间长短以满足特定精度的需 要。Vdd=5V时,建议源电阻的最大阻抗为10K。模拟输入通道选定后,在转换开始前 需等待的时间应先满足。 6.7.4 AD 转换时间 CKR[2:0]用来选择转换时间(TAD)。在不影响A/D转换精度的条件下,它允许MCU以最高 频率运行。下列表列出了TAD和最大工作频率的关系。TAD = 1µs 在 3V~5.5V 和 TAD = 4µs 在 2.5V~3V. VDD = 3V ~ 5.5V (TAD = 1 µs) 系统模式 普通模式 省电模式 单字节转换时间 最大FMain (VDD = 3V ~ 5.5V) (SHS[1:0] = 10*) CKR[1:0] ADC运行时钟 (FAD = 1 / TAD) 00 FMain / 16 16 MHz 20 s 01 FMain / 4 4 MHz 20 s 10 FMain / 64 - - 11 xx FMain / 1 FSub 1 MHz 128kHz 20 s 157 s * 转换时间 = 采样和保持时间 (SHS [1:0]=10, 8  TAD) + 12 位转换时间 (12  TAD) + ADSTART 位置位和开始第一个 TAD 之间的延时 VDD = 2.5V ~ 3V (TAD = 4 µs) 系统模式 普通模式 省电模式 单字节转换时间 最大FMain (VDD = 2.5V ~ 3V) (SHS[1:0] = 10*) CKR[1:0] ADC运行时钟 (FAD = 1 / TAD) 00 FMain / 16 4 MHz 82 µs 01 FMain / 4 1 MHz 82 µs 10 FMain / 64 - - 11 xx FMain / 1 - 128 kHz 157 µs * 转换时间 = 采样和保持时间 (SHS [1:0]=10, 8  TAD) + 12 位转换时间 (12  TAD) + ADSTART 位置位和开始第一个 TAD(0.5  TAD)之间的延时 注意   没有被用作模拟输入脚的引脚可用作通用输入或输出脚。 转换期间,不要执行输出指令以维持所有引脚的精度。 6.7.5 休眠期间的A/D转换 为了获得更精确的ADC值和減少功耗,A/D转换可以在休眠模式下进行。当执行SLEP 指令,除了振荡器、TCC、PWM1、PWM2和A/D转换外,所有的MCU操作都会停止。 50 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) EM78P372N 8位微控制器 通过以下情况判断AD转换已经完成: 1. R9寄存器的ADRUN位被清“0”。 2. BANK 0 RE寄存器的ADIF位置“1” 。 3. 从ADC转换唤醒(在休眠模式期间它保持运行状态),BANK0 RE寄存器的ADWE 位 置“1”。 4. 如果IOCE0的ADIE位使能,并执行DISI指令,唤醒休眠后执行下一条指令。 5. 如果IOCE0的ADIE位使能,并执行ENI指令,唤醒并进入中断向量(地址0x00C)。 6. 如果IOCE0的ADIE位使能,并执行ENI指令,进入中断向量(地址0x00C)。 当转换结束后,转换的结果载入ADDATA, ADDATA1H 和ADDATA1L寄存器中。如果 ADIE使能,单片机将被唤醒。否则,无论ADPD位的状态如何,AD转换器都被关闭。 6.7.6 编程步骤/考虑的事项 6.7.6.1 编程步骤 按以下步骤来获得ADC值: 1. 设置R8(AISR)寄存器的8个位(ADE7:ADE0)来定义R5寄存器的特性(数字I/O引脚, 模拟信道, 以及参考电压引脚) 。 2. 设置R9/ADCON寄存器来设定AD模块: a) 选择ADC输入通道( ADIS2:ADIS0 ) b) 定义AD转换时钟比( CKR1:CKR0 ) c) 选择ADC参考电压的输入源 d) 置ADPD位为“1”, 开始采样 3. 若使用唤醒功能,置ADWE位为“1”。 4. 若使用中断功能,置ADIE位为“1”。 5. 若使用中断功能,下"ENI"指令 6. 置ADRUN位为“1”。 7. 下"SLEP"指令或循环检测 8. 等待唤醒或ADRUN位清除(值为零) ,中断标志(ADIF)置“1”或ADC中断发生 9. 读转换数据寄存器的ADDATA 或ADDATA1H和ADDATA1L的值。如果此时ADC输入 通道变化,ADDATA, ADDATA1H, 和 ADDATA1L值可被清“0” 10. 清除中断标志位(ADIF) 11. 根据需要,进行下一个转换程序,跳到步骤1或步骤2。下一次采样之前,至少等待2 个Tct。 注意 为了获得准确的值,必须避免AD转换期间I/O引脚有任何数据传输。 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) 51 EM78P372N 8位微控制器 6.7.6.2 范例 R_0 == 0 PSW == 3 PORT5 == 5 PORT6 == 6 RE== 0XE ; 间接寻址寄存器 ; 状态寄存器 ; 中断状态寄存器 B. 定义控制寄存器 IOC50 == 0X5 IOC60 == 0X6 IOCE0== 0XE C_INT== 0XF ; ; ; ; Port 5控制寄存器 Port 6控制寄存器 中断屏蔽寄存器2 中断屏蔽寄存器 C. ADC Control Register ADDATA == 0xB ADDATA1H == 0xC ADDATA1L == 0xD AISR == 0x08 ADCON == 0x9 ; ; ; ; ; ; 其内容是ADC[11:4]的结果 其内容是ADC[11:8]的结果 其内容是ADC[7:0]的结果 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 0x0C ; 中断向量 JMP CLRRE ; ;(用户程序部分) ; CLRRE: MOV A,RE AND A, @0BXX0XXXXX ; 清除ADIF位, “X” 根据应用而定; MOV RE,A BS ADCON, ADRUN ; 如需要,开始执行下一个AD转换; ; RETI INITIAL: MOV A,@0B00000001 ; 选择P50为模拟输入; MOV AISR,A MOV A,@0B00001000 ; 选择P50为模拟输入通道,并且AD上电; MOV ADCON,A ; 定义P50为输入脚,时钟比设置为fosc/16; En_ADC: MOV A, @0BXXXXXXX1 ; 定义P50为输入脚,其它位根据需要设置; ; IOW PORT5 52 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) EM78P372N 8位微控制器 MOV A, @0BXXXX1XXX ; 使能ADC唤醒功能(ADWE) ,“X”根据需要设置 ; MOV RE,A MOV A, @0BXX1XXXXX ; 使能ADC中断功能(ADIE) ,“X”根据需要设置; IOW IOCE0 ENI ; 使能全局中断 BS ADCON, ADRUN ; 启动运行ADC ; 若使用中断功能,以下三行可忽略; ;若进入休眠模式: SLEP ; ;(用户程序部分) ; ;或 ;若循环查询: POLLING: JBC ADCON, ADRUN JMP POLLING ; 连续检测ADRUN 位; ; AD转换结束后,ADRUN位清0; ; is completed ; ;(用户程序部分) 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) 53 EM78P372N 8位微控制器 6.8 一对PWM (脉宽调制器) 6.8.1 概述 在PWM模式下,PWM1和PWM2 引脚产生8位精度的PWM输出(见下面的功能结构图). PWM输出由周期时间和占空比(保持输出高电平)组成,PWM的波特率是周期时间的 倒数。图6-13(PWM输出时序)描述了周期时间和占空比的关系。 latch DL1 Fosc PWM1IF DT1 1:1 1:2 1:4 1:8 1:16 1:64 1:128 1:256 Duty Cycle Match Comparator MUX PWM1 R TMR1 reset Q S BANK1 R7[0] Comparator T1P2 T1P1 T1P0 T1EN Period Match PRD1 Data Bus Data Bus DL2 latch PWM2IF DT2 T2P2 T2P1 T2P0 T2EN Comparator Duty Cycle Match PWM2 Fosc 1:1 1:2 1:4 1:8 1:16 1:64 1:128 1:256 TMR2 R Q reset S MUX BANK1 R7 [1] Comparator PRD2 Period Match 图 6-12 PWM 系统结构图 Period Duty Cycle PRD1 = TMR1 DT1 = TMR1 图 6-13 PWM 输出时序 54 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) EM78P372N 8位微控制器 6.8.2 递增定时计数器 (TMRX: TMR1 or TMR2) TMRX 为8-位带可编程预分频的时钟计数器。它们设计用来作为PWM模块的波特率时钟 发生器。若采用,它们可通过设置T1EN位[Bank 1-R8] 或 T2EN 位 [Bank 1-R8] 为 "0"而关闭以节省功耗。 TMR1 和 TMR2 是内部设计的,只读。 6.8.3 PWM 周期 (TMRX: TMR1 或 TMR2) PWM 周期(PRDX: PRD1 或 PRD2),PWM周期通过写值到PRDX寄存器而定义。当 TMRX与PRDX相等,在下一个递增周期发生如下事件: 1) TMR 清零 2) PWMX 引脚置 “1” 3) PWMX 占空比由DT1/DT2 锁存到 DL1/DL2。 注意 PWM 输出不会置位,如果占空比为“0”. 4) PWMXIF 引脚置为 “1” 以下公式描述了如何计算PWM周期:  1  Period  PRDX  1    TMRX prescale value  FOSC  范例: PRDX=49; Fosc=4 MHz; TMRX (0, 0, 0) = 1:1, 那么  1  Period  49  1     1  12.5  4M  µS 6.8.4 PWM 占空比 (DTX: DT1 or DT2; DLX: DL1 or DL2) PWM占空比通过写值到DTX寄存器而定义,当TMRX清除时其值由DTX锁存到DLX。当 DLX与TRMX相等时,PWMX引脚清除。DTX可在任何时候被加载。然而,DTX不可被 锁存到DLX直到DLX的当前值与TMRX相等。 如下公式描述了如何计算 PWM 占空比:    1    TMRX prescale value Duty Cycle  DTX      FOSC  产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) 55 EM78P372N 8位微控制器 范例: DTX=10; Fosc=4 MHz; TMRX (0, 0, 0) = 1:1, 那么  1  Duty Cycle  10     1  2.5  4M  µS 6.8.5 比较器 X 当匹配发生时改变输出状态将同时置位PWMXIF(TMRXIF)标志。 6.8.6 PWM 编程步骤 1. 加载PWM周期PRDX 2. 加载PWM占空比DTX 3. 若需要,写IOCF寄存器以使能中断功能 4. 写预设值到BANK1-R7,设置PWMX引脚为输出 5. 加载TMRX分频比值的预设值到Bank 1-R7 或 Bank 1-R8,使能PWMx和TMRx。 6.9 定时器/计数器 6.9.1 概述 定时器1(TMR1)和定时器2(TMR2)(TMRX)是一个带可编程预分频的时钟计数器。它们设 计用来作为PWM模块的波特率时钟发生器。TMRX寄存器只读。在AD转换器不运行情 况下进入休眠模式时,定时器 1和定时器 2将停止运行。然而,在AD转换器运行情况下 进入休眠模式时,定时器 1和定时器 2将继续保持运行。 56 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) EM78P372N 8位微控制器 6.9.2 功能描述 Fosc 1:1 1:2 1:4 1:8 1:16 1:64 1:128 1:256 To TMR1IF(PWM1IF) MUX reset TMR1 Period Match Comparator T1P2 T1P1 T1P0 T1EN PRD1 Data Bus Data Bus PRD2 T2P2 T2P1 T2P0 T2EN Comparator TMR2 Fosc 1:1 1:2 1:4 1:8 1:16 1:64 1:128 1:256 Period Match reset MUX To TMR2IF(PWM2IF) 图 6 -14 定时器结构图 说明如下: Fosc: 时钟输入 预分频器 (T1P2, T1P1 和 T1P0 / T2P2, T2P1 和 T2P0): 定义TMRX分频比选项 1:1, 1:2, 1:4, 1:8, 1:16, 1:64, 1:128, 和 1:256。任何复位发生时这些位被清零。 TMR1 和 TMR2: 定时器 X寄存器,TMRX一直递增直到与PRDX匹配,此时TMRX复位 为"0"(默认值)。 PRDX (PRD1, PRD2): PWM 周期寄存器 比较器 X (比较器 1 和 比较器 2): 当匹配发生复位TMRX,同时置TMRXIF (PWMXIF) 标志。 6.9.3 相关寄存器设置 定义TMRX时,相关寄存器的操作参考下表。需注意地是如果TMRX被使用了,其相关 PWMX位须禁止,这样,PWMCON寄存器的位7 ~ 位3必须设为“0”。 TMR1 和 TMR2 的相关控制寄存器 地址 名称 Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 0x07 PWMCON/R7 ”0” “0” “0” “0” “0” 0x08 TMRCON/R8 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) T2EN T1EN T2P2 T2P1 T2P0 Bit 2 Bit 1 Bit 0 PWMCAS PWM2E PWM1E T1P2 T1P1 T1P0 57 EM78P372N 8位微控制器 定时器编程步骤 6.9.4 1. 加载定时器定时时长至PRDX 2. 若需要,写IOCF0以使能中断功能 载入一个预设值至 TMRX 分频器,使能 TMRX,禁止 PWM。 3. 6.9.5 PWM 级联模式 PWM 级联模式使两个8位PWM功能合成一个16位PWM,在这个模式里,必要的参数重 新定义如下表所示: 参数 DT (占空比) PRD (周期) TMR (定时器) MSB (15~8) DT2 PRD2 TMR2 LSB (7~0) DT1 PRD1 TMR1 16 位 PWM 16位PWM的分频比使用TMR1的分频比,当LSB产生进位时,TMR的MSB加1并且 PWM1IF 位/PWM1 引脚重新定义为PWMIF 位/PWM 引脚。 DL Fosc latch To PWMIF (PWM1IF) DT 1:1 1:2 1:4 1:8 1:16 1:64 1:128 1:256 Duty Cycle Match 16-bit Comparator MUX PWM (PWM1) R Q TMR reset S IOC51,2 T1P2 T1P1 T1P0 16-bit Comparator T1E N Period Match PRD Data Bus Data Bus 图 6-14 16位PWM功能模块图 (由两个8位合成) 58 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) EM78P372N 8位微控制器 6.10 比较器 EM78P372N 有一个带有两个模 Cin - 拟输入和一个输出的比较器 。比 较器可将单片机从休眠状态下唤 - Cin+ 醒。右图为比较器的电路图。 CO CMP + Cin Cin+ ? ? 10mV 图 6-15 比较器运行模式 6.10.1 外部参考信号 当前的Cin+和Cin-的模拟信号相比较,数字输出(CO)信号相应变化,其输出变化考虑下 列情况: 注意  参考信号必须介于Vss和Vdd之间 参考电压可加在比较器的任意一个输入脚上 极值检测应用可为同一个参考  对于相同或不同参考源,比较器均可工作   6.10.2 比较器输出  比较结果存储在IOC80的CMPOUT位。  通过编程设置IOC80 寄存器的位4和位3为,比较结果可输出到 CO(P64)引脚。参见6.2.4章节的表格,比较器/OP选择位功能描述的IOC80寄存器(比 较器控制寄存器)。 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) 59 EM78P372N 8位微控制器 下图是比较器输出结构图: To C0 From OP I/O CMRD EN Q EN Q D D To CMPOUT RESET To CPIF CMRD From other comparator 图 6-16 比较器输出结构 6.10.3 比较器作为运算放大器使用 如果在输入与输出之间外接一个反馈电阻则比较器可做运算放大器使用。在这种情况 下,为了降低功耗可通过设置IOC80寄存器的位4,位3为来禁止施 密特触发。参见6.2.4章节的表格,比较器/OP选择位的功能描述的IOC80寄存器(比较器 控制寄存器) 。 注意 运算放大器下: ■CMPIE (IOCE0.4), CMPWE (BANK 0 RE.2), 和CMPIF (BANK 0 RE.4) 这些位均无效。 ■ 比较器中断功能无效。 ■ 比较器唤醒功能无效。 6.10.4 60 比较器中断  CMPIE (IOCE0.4) 必须使能,以使“ENI”指令有效;  任何时候比较器输出引脚状态变化均将触发中断;  引脚的具体变化可通过读IOC80的CMPOUT位决定;  CMPIF (BANK 0 RE.4),比较器中断标志位,只可由软件清零。 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) EM78P372N 8位微控制器 6.10.5  由休眠模式唤醒 如果BANK 0 RE寄存器的CMPWE位设置为“1”,即使在休眠模式,比较器仍保持 运行,中断功能仍有效  如果发生不匹配,该状态改变将会使单片机从睡眠模式唤醒;  为节省能源,需考虑到功耗因素。  如果休眠模式期间不使用此功能,在进入休眠模式前需关闭比较器。 通过以下情况判断比较器比较完成: 1. 设置IOC80寄存器的COS1 和 COS0 位来选择比较器; 2. BANK 0 RE 寄存器的CMPIF位设置为”1”; 3. BANK 0 RE 寄存器的CMPWE位设置为”1”,比较器唤醒(在休眠/空闲模式期间,比 较器保持运行); 4. 如果IOCE0的CMPIE位使能并且执行了“DISI”指令,唤醒并接着执行下一条指令; 5. 如果使能IOCE0的CMPIE位并执行了“ENI”指令,唤醒并进入中断向量(地址 0x00F); 6. 如果使能IOCE0的CMPIE位并执行了“ENI”指令,进入中断向量(地址 0x00F)。 6.11 振荡器 6.11.1 振荡器模式 EM78P372N可工作于6种不同的振荡模式, 如:晶体振荡器模式(XT) ,高频晶体振荡 器模式1(HXT1) ,高频晶体振荡器模式2(HXT2) ,低频晶体振荡器模式1(LXT1) , 低频晶体振荡器模式2(LXT2) ,外部RC振荡器模式(ERC) ,和内部RC振荡器模式 (IRC) 。用户可通过编程代码选项寄存器的OSC3、OSC2、OCS1、和OSC0位选择六 种振荡模式的其中一种振荡模式。 振荡模式由OSC3、OSC2、OSC1 和 OSC0位定义,如下表所述: 振荡模式 OSC3 OSC2 OSC1 OSC0 ERC1 (外部 RC 振荡器模式); P55/ERCin 作为 ERCin P70/RCOUT 作为 P70 0 0 0 0 ERC1 (外部 RC 振荡器模式); P55/ERCin 作为 ERCin P70/RCOUT 作为 RCOUT 0 0 0 1 IRC2 (内部 RC 振荡器模式); P55/ERCin 作为 P55 P70/RCOUT 作为 P70 (默认) 0 0 1 0 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) 61 EM78P372N 8位微控制器 振荡模式 OSC3 OSC2 OSC1 OSC0 IRC2 (内部 RC 振荡器模式); P55/ERCin 作为 P55 P70//RCOUT 作为 RCOUT 0 0 1 1 LXT13 (XT 模式频率范围为 100kHz ~ 1 MHz) 0 1 0 0 HXT13 (XT 模式频率范围为 12 MHz ~ 16 MHz) 0 1 0 1 LXT23 (XT 模式频率范围为 32.768kHz) 0 1 1 0 HXT23 (XT 模式频率范围为 6 MHz ~ 12 MHz) 0 1 1 1 XT3 (XT 模式频率范围为 1 MHz ~ 6 MHz) 1 1 1 1 1 在ERC模式,ERCin用做振荡器引脚, RCOUT/P70由代码选项字1(Word1)的位4~位1定义。 2 在IRC模式,P55为普通I/O引脚,RCOUT/P70由代码选项字1(Word1)的位4~位1定义。 3 在LXT1, LXT2, HXT1, HXT2和XT模式,OSCI 和OSCO 用做振荡器引脚,这些引脚不能也不许定义成I/O引 脚。 以下是不同电压下晶振/陶振的最大工作频率限度: 条件 两个时钟 VDD 最大频率(MHz) 2.1V 4 3.0V 8 4.5V 16 6.11.2 晶体振荡器/陶瓷谐振器 (晶振) EM78P372N可通过OSCI引脚,由外部时钟信号来驱动,如下图所示: OSCI OSCO 图 6-17 外部时钟输入电路 大多数应用中,引脚OSCI和OSCO可接晶体或陶瓷谐振器以产生振荡。下图6-18描述了 此类电路,同样也可应用于HXT1模式,HXT2模式,LXT1模式,LXT2和XT模式。 C1 OSCI Crystal OSCO RS C2 图 6-18 晶体/谐振器电路 62 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) EM78P372N 8位微控制器 下表为C1和C2的推荐值,由于每个谐振器都有其自身的特性,用户应参照其规格选择 C1、C2的合适值。对于AT 切片晶振或低频模式,有必要接入串联电阻RS。图6-21为晶 体电路PCB布线建议。当系统工作在晶体模式(16MHz),OSCI与OSCO之间接一个10 K电阻。 晶体振荡器或陶瓷谐振器电容的选择参考如下: 振荡器类型 频率模式 频率 LXT1 (100 K ~ 1 MHz) 陶瓷谐振器 XT (1 M ~ 6 MHz) LXT2 (32.768kHz) LXT1 (100 K ~ 1 MHz) XT (1~6 MHz) 晶体振荡器 HXT2 (6~12 MHz) HXT1 (12~20 MHz) C1 (pF) C2 (pF) 100kHz 200kHz 60 pF 60 pF 60 pF 60 pF 455kHz 1 MHz 40 pF 30 pF 40 pF 30 pF 1.0 MHz 2.0 MHz 30 pF 30 pF 30 pF 30 pF 4.0 MHz 20 pF 20 pF 32.768kHz 40 pF 40 pF 100kHz 200kHz 60 pF 60 pF 60 pF 60 pF 455kHz 1 MHz 40 pF 30 pF 40 pF 30 pF 1.0 MHz 2.0 MHz 30 pF 30 pF 30 pF 30 pF 4.0 MHz 6.0 MHz 20 pF 30 pF 20 pF 30 pF 6.0 MHz 8.0 MHz 30 pF 20 pF 30 pF 20 pF 12.0 MHz 12.0 MHz 30 pF 30 pF 30 pF 30 pF 16.0 MHz 20 pF 20 pF 串联和并联模式晶振/谐振器的电路图: 330 330 C OSCI 7404 7404 7404 Crystal 图 6-19 串联模式晶振/谐振器的电路图 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) 63 EM78P372N 8位微控制器 4.7K 7404 10K Vdd OSCI 10K 7404 Crystal C1 10K C2 图 6-20 并联模式晶振/谐振器的电路图 图 6-21 并联模式晶振/谐振器的电路图 64 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) EM78P372N 8位微控制器 6.11.3 外部RC振荡器模式 在一些不需要精确计时的应用中,使用 RC振荡器(图 6-22)可以节省费用。但 是,需注意地是,RC振荡器的频率会受 到工作电压、电阻值(Rext)、电容(Cext) 甚至工作温度的影响。此外,由于制造 工艺的不同,不同芯片的频率也会有微 小的差异。 Vcc Rext ERCin Cext 图 6-22 外部RC振荡器模式电路 为了获得稳定的系统频率,建议Cext电容值不要小于20pF,Rext电阻值不要大于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 2.064 MHz 1.901 MHz 5.1k 1.403 MHz 1.316 MHz 10k 750.0 kHz 719.0kHz 100k 81.45 kHz 81.33kHz 3.3k 647.0 kHz 615.0kHz 5.1k 430.8 kHz 414.3kHz 10k 225.8 kHz 219.8kHz 100k 23.88 kHz 23.96kHz 3.3k 256.6 kHz 245.3kHz 5.1k 169.5 kHz 163.0kHz 10k 88.53 kHz 86.14kHz 100k 9.283 kHz 9.255kHz 1 : 在DIP封装下测量的 : 这些值仅供设计参考 3 : 频率漂移为±30% 2 6.11.4 内部RC振荡模式 EM78P372N 提供一个通用的内部RC模式,其默认频率为4MHz。它还可通过代码选项 (WORD0)的RCM1和RCM0位设置其它频率(1MHz, 8MHz和455KHz)。下表描述了 EM78P372N内部RC 漂移受电压、温度和制程工艺的影响。 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) 65 EM78P372N 8位微控制器 内部 RC 偏移率 (Ta=25°C, VDD=5V±5%, VSS=0V) 内部 RC 频率 偏移率 温度 (-40°C+85°C) 4 MHz ±2% 16 MHz ±2% 8 MHz ±2% 1 MHz ±2% 电压 (2.1V~5.5V) ±1% *(2.1~5.5V) ±1% *(4.0~5.5V) ±1% *(3.0~5.5V) ±1% *(2.1~5.5V) 制程 总计 ±2% ±5% ±2% ±5% ±2% ±5% ±2% ±5% * 工作电压范围 注: 理论值仅供参考,实际值可能依据实际制程变化。 6.12 上电探讨 在供电电压未达到稳定状态前,任何微控制器都不能保证正常工作。EM78P372N的POR 电压范围是1.8V ~ 1.9V。在用户应用中,当电源关闭时,Vdd必须降到1.8 V以下,在重 新上电之前需保持关闭状态10s。这样,EM78P372N被可靠复位,并正常工作。的电 压检测器(POVD)。在Vdd上升足够快(50 ms 或更短)的条件下,它将很好的工作。如 果Vdd上升的足够快(50 ms或更少),外部复位电路会可靠工作。然而,在很多要求 严格的应用中,仍然需要附加的外部电路来帮助解决上电问题。 6.12.1 可编程WDT溢出周期 5 6 选项字节 (WDTPS)用于定义WDT溢出周期(18ms 或 4.5ms ),理论上的范围是4.5ms 或18ms。对大多数晶振和陶瓷振荡器来说,工作频率越低,启动时间越长。 6.12.2 外部上电复位电路 下图电路描述了使用外部 RC 产生复位脉冲。脉冲的宽 度(时间常数)应保持足够 长时间,以使电源 Vdd 达到 VDD /RESET R D 最低工作电压。该电路应用 在电源电压上升比较慢的情 Rin 况下,因为/RESET 引脚的漏 C 电大约为5A,所以建议 R 要小于 40 KΩ,这样,引脚 /RESET 的电压保持在 0.2V 以下。二极管(D)在掉电时作 66 图 6-23 外部上电复位电路 5 VDD=5V, WDT 溢出周期 = 16.5ms ± 30% 在 25°C. VDD=3V, WDT 溢出周期 = 18ms ± 30%在 25°C. 6 VDD=5V, WDT 溢出周期 = 4.2ms ± 30%在 25°C. VDD=3V, WDT 溢出周期 = 4.5ms ± 30%在 25°C. 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) EM78P372N 8位微控制器 为短路回路。电容 C 将快速充分放电。限流电阻 Rin 用来避免过大的电流或 ESD(静 电放电)流入/RESET 引脚。 6.12.3 残留电压保护 更换电池时,单片机的电源(Vdd)被断开,但残余电压仍存在。残余电压可能低于Vdd 的最小工作电压,但不为零。这种情况可能引起上电复位不良。图6-24及图6-25显示如 何建立一个残留电压的保护电路。 图 6-24 残留电压保护电路1 图 6-25 残留电压保护电路2 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) 67 EM78P372N 8位微控制器 6.13 代码选项 EM78P372N有两个代码选项字和一个用户ID 字,它们不属于一般程序内存的一部分。 Word 0 Word 1 Word 2 Bit 12 ~ Bit 0 Bit 12 ~ Bit 0 Bit12 ~ Bit 0 6.13.1 代码选项寄存器 (Word 0) Word 0 Bit Bit 12 Bit 11 Bit 10 助记 TYPE1 TYPE0 WK_CLK 符 Bit 9 Bit 8 Bit 7 Bit 6 Bit 5 Bit 4 CLKS LVR1 LVR0 RESETEN ENWDT NRHL Bit 3 Bit 2 ~ Bit 0 NRE Protect 1 高 高 8 clock 高 高 高 禁止 禁止 32/fc 使能 禁止 0 低 低 32 clock 低 低 低 使能 使能 8/fc 禁止 使能 Bits 12 ~ 11 (TYPE1 ~ TYPE0): EM78P372N 封装类型选择位 (适用于UWTR) TYPE 1, TYPE 0 引脚未用 MCU Type 00 EM78P372N-10Pin 端口 60 ~ 66 / 54 / 56 / 57 输出低 01 EM78P372N-14Pin 端口 62 / 63 / 64 / 65 / 56 / 57 输出低 10 EM78P372N-18Pin 端口 56 / 57 输出低 11 EM78P372N-20Pin (默认) X Bit 10 (WK_CLK): 选择 8 或 32 个时钟由休眠和空闲模式唤醒 (仅对于IRC模式) 0: IRC 稳定时间+ 32 个时钟 1: IRC 稳定时间+ 8 个时钟(默认) Bit 9 (CLKS): 指令周期选项位 0: 两个振荡器周期 1: 四个振荡器周期 (默认) Bits 8~7 (LVR1 ~ LVR0): 低电压复位使能位 LVR1, LVR0 VDD Reset 电平 11 VDD Release 电平 NA (上电复位) (默认) 10 2.7V 2.9V 01 3.5V 3.7V 00 4.0V 4.2V Bit 6 (RESETEN):RESET/P71 引脚选择位 0: P71 设为/RESET引脚 1: P71 为通用输入引脚或开漏输出端口(默认) Bit 5 (ENWDT): 看门狗定时器使能位 0: 使能 1: 禁止 (默认) 68 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) EM78P372N 8位微控制器 Bit 4 (NRHL): 噪声抑制高/低脉冲定义位,INT引脚下降沿或上升沿触发器 0: 等于8/fc [s]脉冲被当作是信号 1: 等于32/fc [s]脉冲被当作是信号 (默认) 注意 在LXT2和休眠模式下,噪声抑制功能被关闭。 Bit 3 (NRE): 噪声抑制使能位 0: 禁止噪声抑制 1: 使能噪声抑制(默认),但在低频晶体振荡器(LXT)模式下,噪声抑制电 路始终是禁止的。 Bits 2 ~ 0 (保护): 保护位 保护位 保护 0 使能 1 禁止(默认) 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 Bit 0 助记符 C5 C4 C3 C2 C1 C0 1 高 高 高 高 高 高 高 高 高 高 高 高 System_clk 0 低 低 低 低 低 低 低 低 低 低 低 低 Open_ drain RCM1 RCM0 OSC3 OSC2 OSC1 OSC0 RCOUT Bits 12 ~ 7 (C5 ~ C0): 内部 RC 模式校准选择位,C5 ~ C0 必须置“1”(自动校对) Bit 6 ~ 5 (RCM1 ~ RCM0): RC 模式选择位 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) RCM 1 RCM 0 频率(MHz) 1 1 4 (默认) 1 0 16 0 1 8 0 0 1 69 EM78P372N 8位微控制器 Bits 4 ~ 1 (OSC3 ~ OSC0): 振荡器模式选择位 振荡器模式 OSC3 OSC2 ERC1 (外部 RC 振荡器模式); P55/ERCin 作为 ERCin P70/RCOUT 作为 P70 0 0 0 0 ERC1 (外部 RC 振荡器模式); P55/ERCin 作为 ERCin P70/RCOUT 作为 RCOUT 0 0 0 1 IRC2 (内部 RC 振荡器模式); P55/ERCin 作为 P55 P70/RCOUT 作为 P70 (默认) 0 0 1 0 IRC2 (内部 RC 振荡器模式); P55/ERCin 作为 P55 P70/RCOUT 作为 RCOUT 0 0 1 1 3 0 1 0 0 3 0 1 0 1 3 0 1 1 0 3 0 1 1 1 1 1 1 1 LXT1 (XT 模式频率范围为 100kHz ~ 1 MHz) HXT1 (XT 模式频率范围为 12 MHz ~ 16 MHz) LXT2 (XT 模式频率范围为 32.768kHz) HXT2 (XT 模式频率范围为 6MHz ~ 12 MHz) 3 XT (XT 模式频率范围为 1 MHz ~ 6 MHz) OSC1 OSC0 1 在ERC模式,ERCin用做振荡器引脚, RCOUT/P70由代码选项字1(Word1)的位4~位1定义。 2 在IRC模式,P55为普通I/O引脚,RCOUT/P70由代码选项字1(Word1)的位4~位1定义。 3 在LXT1, LXT2, HXT1, HXT2和XT模式,OSCI 和OSCO 用做振荡器引脚,这些引脚不能也不许定义成I/O 引脚。 Bit 0 (RCOUT): 在IRC或ERC模式下,指令时钟输出使能位 0: RCOUT引脚漏极开路 1: RCOUT引脚输出指令时钟(默认) 6.13.3 客户ID寄存器 (Word 2) Word 2 Bit Bit 12 Bit 11 Bit 10 Bit 9 Bit 8 Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 助记符 – – – SFS – – – HLP – WDTPS ID2 ID1 ID0 1 – – – 16KHz – – – 高 – 18ms 高 高 高 0 – – – 128KHz – – – 低 – 4.5ms 低 低 低 Bit 12: 不用(保留). 该位一直设置为 “1” Bit 11: 不用(保留). 该位一直设置为 “0” Bit 10: 不用(保留). 该位一直设置为 “1” Bit 9 (SFS): GREEN 模式和 TCC, PWM1, PWM2 时钟源(不含 WDT 溢出和自由运行启 动时间)的副振荡器选择位。 0: 128kHz. 1: 16kHz (默认) Bit 8: 不用(保留). 该位一直设置为 “0” 70 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) EM78P372N 8位微控制器 Bit 7: 不用(保留). 该位一直设置为 “1” Bit 6: 不用(保留). 该位一直设置为 “0” Bit 5 (HLP): 电源损耗选择位 0:电源低损耗模式,适用于工作频率为400kHz或低于400kHz下 1: 电源高损耗模式, 适用于工作频率大于400kHz下 (默认) (在晶体模式下用户选择LXT1或LXT2,HLP功能自动选择低损耗。) 不用(保留). 该位一直设置为 “1” Bit 4: Bit 3 (WDTPS): WDT 溢出周期 WDTPS 看门狗定时器* 1 18 ms (默认) 0 4.5 ms *理论值,仅供参考。 Bits 2 ~ 0: 客户ID码 6.14 低电压侦测/低电压复位 低电压复位(LVR)和低电压侦测(LVD)是为电源不稳的情况而设计的,例如外部电源的噪 音干扰或在EMS测试条件下。 当LVR使能,系统供电压(Vdd)降到低于Vdd复位电平(VRESET)并持续10s时,系统产生 复位并保持复位状态。系统一直保持复位状态直到Vdd电压上升到高于Vdd的release电 平,参考图6-26 LVD/LVR波形。 当LVD使能,如果Vdd降到低于低电压侦测电平,/LVD (RE的位7)被清零以作为低电压 信号,该信号可用于低电压的侦测。 6.14.1 低电压复位 LVR属性可由代码选项字(Word0)的位8和7设置,详细操作如下: Word 0 Bit 12 Bit 11 Bit 10 Bit 9 Bit 8 Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2~Bit 0 TYPE1 TYPE0 WK_CLK CLKS LVR1 LVR0 RESETEN ENWDT NRHL NRE Protect Bits 8~7 (LVR1 ~ LVR0): 低电压复位使能位 LVR1, LVR0 VDD Reset 电平 VDD Release 电平 11 10 01 NA (上电复位) 2.7V 3.5V 2.9V 3.7V 00 4.0V 4.2V 6.14.2 低电压侦测 LVD 属性设置和详细操作如下: 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) 71 EM78P372N 8位微控制器 6.14.2.1 Bank 1 RE (LVD 中断和唤醒寄存器) Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 LVDIE LVDEN LVD1 LVD0 - - - EXWE 注意 ■ Bank 1 RE< 6 > 寄存器可读写。 ■ 单个中断可通过设置相关控制位(Bank 1 RE< 7 >)为 "1"来使能。 ■ 全局中断可通过ENI指令使能,DISI指令禁止。请参考6.6章节(中断)的图6-8(中断输 入电路) 。 Bit 7 (LVDIE): 低电压侦测中断使能位 0: 禁止低电压侦测中断 1: 使能低电压侦测中断 当侦测低电平电压状态用于进入中断向量或下一条指令,LVDIE位须设置 为”使能”。 Bit 6 (LVDEN): 低电压侦测使能位 0: 禁止低电压侦测 1: 使能低电压侦测 Bits 5 ~ 4 (LVD1 ~ LVD0): 低电压侦测电平选择位 LVDEN LVD1, LVD0 1 11 1 10 1 01 1 00 0 ×× LVD voltage Interrupt Level Vdd ≤ 2.2V Vdd > 2.2V Vdd ≤ 3.3V Vdd > 3.3V Vdd ≤ 4.0V Vdd > 4.0V Vdd ≤ 4.5V Vdd > 4.5V NA /LVD 0 1 0 1 0 1 0 1 0 6.14.2.2 BANK 0 RE (中断状态 2 和唤醒控制寄存器) Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 /LVD LVDIF ADIF CMPIF ADWE CMPWE ICWE LVDWE 注意 ■BANK0 RE 可由指令清零,但不能置位。 ■ BANK1 RE 和IOCE0 是中断屏蔽寄存器。 ■ 读RE的值是RE与IOCE0“逻辑与”的结果。 Bit 7 (/LVD): 低电压侦测状态位,该位为只读位。当VDD引脚电压小于LVD中断电平(通 过LVD1和LVD0位来选择)时,该位被清零。 0: 检测到低电压 1: 未检测到低电压或LVD功能禁止(默认) 72 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) EM78P372N 8位微控制器 Bit 6 (LVDIF): 低电压侦测中断标志位 LVDIF由软件或硬件复位为“0” Bit 0 (LVDWE): 低电压侦测唤醒使能位 0: 禁止低电压侦测唤醒 1: 使能低电压侦测唤醒 在低电压侦测运行情况下,当其用于进入中断向量或将IC由休眠/空闲模 式唤醒时,LVDWE位必须设为“使能”。 6.14.3 编程过程 按以下步骤可获得LVD数据: 1. 写LVDCR寄存器的两个位(LVD1: LVD0)以定义LVD电平。 2. 如果唤醒功能被采用,置LVDWE位。 3. 如果中断功能被采用,置LVDIE位。 4. 如果中断功能被采用,写 “ENI” 指令。 5. 置LVDEN位为1 6. 写 “SLEP” 指令或查询/LVD 位 7. 低电压侦测中断标志位(LVDIF)清零 ,当低电压侦测中断产生。 LVD模块使用的是内部电路,当LVDEN (BANK1-RE的位6)置为“1”,LVD模块被使能。 当LVDWE (RE 的位0) 置为“1”,在休眠/空闲模式下LVD模块将继续进行。如果Vdd慢慢 往下降至侦测点(VLVD)时,LVDIF (RE的位6)将被置”1”, /LVD (RE的位7)将被清”0”,系 统将由休眠/空闲模式唤醒。当系统复位发生,LVDIF将被清零。 当Vdd保持在高于VLVD 时,LVDIF保持为”0”,/LVD保持为”1”。当Vdd下降至低于VLVD 时, LVDIF置”1”,下一条指令将从中断向量021H处开始执行,LVDIF由软件清”0”。请参考下 图6-26。 LVDIF is cleared by software Vdd VLVD VRESET LVDIF Internal Reset 18ms LVR Voltage drop Vdd < Vreset not longer than 10us, the system still keeps on operating System occur reset 图 6-26 LVD/LVR波形 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) 73 EM78P372N 8位微控制器 6.15 指令集 指令集的每条指令是13位字宽,由一个操作码和一个或多个操作数组成成。正常情况下, 所有指令花费一个指令周期(一个指令周期由两个振荡周期组成) ,但改变程序计数器 R2的指令如"MOV R2,A", "ADD R2,A",或对R2进行算术或逻辑运算的指令(如"SUB R2,A", "BS(C) R2,6","CLR R2"等)除外。 另外,指令集有以下特性: 1. 任何寄存器的每一位均可置1,清零或直接测试。 2. I/O 寄存器可视为通用的寄存器。即相同的指令可用于操作I/O 寄存器。 以下符号用在指令集表中: 惯例: R = 寄存器指示符,指定寄存器(包括操作寄存器和通用寄存器)中的哪个寄存器被使用。 R4的位 6 和 7 定义用于选择寄存器bank。 b = 位域指示符,指定寄存器”R”中的哪个位被选择,影响操作指令。 k = 8或10位常数或立即数。 助记符 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 74 操作 无操作 A 进行十进制调整 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 无 无 无 无 无 无 1 无 无 Z Z Z, C, DC Z, C, DC Z Z Z Z 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) EM78P372N 8位微控制器 助记符 操作 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, RRC R C  R(7) R(n)  A(n+1), R(7)  C, RLCA R C  A(0) R(n)  R(n+1), R(7)  C, RLC R C  R(0) R(0-3)  A(4-7), SWAPA R R(4-7)  A(0-3) SWAP R R(0-3)  R(4-7) JZA R R+1  A, 为零跳转 JZ R R+1  R, 为零跳转 BC R,b 0  R(b) BS R,b 1  R(b) JBC R,b 若 R(b)=0, 跳转 JBS R,b 若 R(b)=1, 跳转 CALL k PC+1  [SP], (Page, k)  PC JMP k (Page, k)  PC MOV A,k k  A OR A,k AkA AND A,k A&kA XOR A,k A  k  A RETL k k  A, [栈顶]  PC SUB A,k k-A  A BANK k k R4(6) 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 受影响的状态标志 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 无 LCALL k PC+1[SP], kPC 无 LJMP k kPC 无 如果 Bank1 R5.7=0, 机械码(7~0)  R TBRD R 否则 Bank1 R5.7=1, 机械码(12~8)  R(4~0), 无 R(7~5)=(0,0,0) 注: 1 这条指令仅适用于IOC50 ~ IOCF0, IOC51 ~ IOCF1寄存器 2 这条指令不建议用于RF操作。 3 这条指令不能在RF上操作。 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) 75 EM78P372N 8位微控制器 7 绝对最大值 项目 8 范围 温度范围 -40C 到 85C 存储温度 -65C 到 150C 输入电压 Vss-0.3V 到 Vdd+0.5V 输出电压 Vss-0.3V 到 Vdd+0.5V 工作电压 2.1V 到 5.5V 工作频率 DC 到 16 MHz DC 电器特性 Ta= 25C, VDD= 5.0V, VSS= 0V 符号 条件 最小值 典型值 最大值 单位 32.768k 4 16 MHz 760 950 1140 kHz Ports 5, 6, 7 0.7VDD  VDD+0.3 V Ports 5, 6, 7 -0.3V  0.3VDD V /RESET  1.8  V /RESET  1.1  V TCC,INT 0.7VDD  VDD+0.3 V TCC,INT -0.3V  0.3VDD V  -3.7  FXT 晶振: VDD to 5V 指令周期为 2 个时钟周期 ERC ERC: VDD 至 5V R: 5.1K, C: 100 pF VIH1 VIL1 VIHT1 VILT1 VIHT2 VILT2 76 参数 输入高电压 (施密特触发) 输入低电压 (施密特触发) 输入高临界电压(施密特触 发) 输入低临界电压(施密特触 发) 输入高临界电压(施密特触 发) 输入低临界电压(施密特触 发) IOH1 输出高电压 (Ports 5, 6, 7) IOH2 输出高电压 (Ports 51~54, 56~57,60~67) IOL1 输出低电压 (Ports 5, 6, 7) IOL2 输出低电压 (Ports 51~54, 56~57,60~67) VOH = 0.9VDD mA  -10   10  VOL = 0.1VDD mA  25  产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) EM78P372N 8位微控制器 符号 参数 条件 最小值 典型 值 最大值 单位 Ta= 25℃ 2.41 2.7 2.9 V Ta= -40~85℃ 2.14 2.7 3.25 V Ta= 25℃ 3.1 3.5 3.92 V Ta= -40~85℃ 2.73 3.5 4.25 V Ta= 25℃ 3.56 4.0 4.43 V Ta= -40~85℃ 3.16 4.0 4.81 V 激活上拉,输入引脚接 VSS  70  A 下拉电流 激活下拉, 输入引脚接 Vdd  40  A ISB1 掉电电流 所有输入引脚和 I/O 引脚接 VDD, 输出悬空引脚, WDT 禁止  1.0 2.0 A ISB2 掉电电流 所有输入引脚和 I/O 引脚接 VDD, 输出悬空引脚, WDT 使能   10 A ICC1 /RESET= '高', Fosc=32.768kHz 2 个时钟周期的工作供电电 (晶振类型, CLKS="0"), 流 (VDD = 3V) 输出悬空引脚, WDT 禁止  15 20 A ICC2 /RESET= '高', Fosc=32.768kHz (晶 2 个时钟周期的工作供电电 振类型,CLKS="0"), 输出悬空引脚, 流 (VDD = 3V) WDT 使能  15 25 A ICC3 /RESET= '高', Fosc=4 MHz (晶振类 2 个时钟周期的工作供电电 型, CLKS="0"), 输出悬空引脚, 流 WDT 使能  1.5 1.7 mA ICC4 /RESET= '高', Fosc=10 MHz (晶振 2 个时钟周期的工作供电电 类型, CLKS="0"), 流 输出悬空引脚, WDT 使能  2.8 3.0 mA LVR1 低电压复位电平 LVR2 低电压复位电平 LVR3 低电压复位电平 IPH 上拉电流 IPL 注: 1. 这些参数为理想值(未经测试),仅供设计参考。 2. 最小值,典型值和最大值栏下的数据是基于25C 时的理想值,仅供设计参考。 内部 RC 电气特性 (Ta=25C, VDD=5 V, VSS=0V) 内部 RC 漂移率 温度 电压 最小值 典型值 最大值 4 MHz 25C 5V 3.92 MHz 4 MHz 4.08 MHz 16 MHz 25C 5V 15.68 MHz 16 MHz 16.32 MHz 1 MHz 25C 5V 0.98 MHz 1 MHz 1.02 MHz 8 MHz 25C 5V 7.84 MHz 8 MHz 8.16 MHz 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) 77 EM78P372N 8位微控制器 内部 RC 电气特性 (Ta=-40 ~ 85C, VDD=2.1 ~ 5.5 V, VSS=0V) 漂移率 内部 RC 温度 电压 最小值 典型值 最大值 4 MHz -40C ~85C 2.1V~5.5V 3.80 MHz 4 MHz 4.20 MHz 16 MHz -40C ~85C 2.1V~5.5V 15.2 MHz 16 MHz 16.8 MHz 1 MHz -40C ~85C 2.1V~5.5V 0.95 MHz 1 MHz 1.05 MHz 8MHz -40C ~85C 2.1V~5.5V 7.60 MHz 8 MHz 8.40MHz 8.1 AD 转换特性 Vdd= 5V, Vss=0V, Ta= 25°C 符号 VAREF 参数 模拟参考电压 条件 VAREF - VASS  2.5V VASS VAI Ivdd 模拟供电电流 IAI1 典型 值 2.5  Vdd V Vss  Vss V VASS  VAREF V 1000 1400 µA  VAREF=VDD= 5.0V, *1 VASS = 0.0V FS =100kHz *1 最大 单位 值 Ivref FIN = 1kHz (VREF 来至内部 Vdd)   10 µA Ivdd VDD=VAREF=5.0V, *1 VASS = 0.0V FS =100kHz   900 µA FIN = 1kHz (VREF 来至外部 VREF 引脚)   500 µA 模拟供电电流 IAI2 IVref 78  模拟输入电压 最小值 *1 RN 分辨率 -  12 - Bits INL 线性误差 VAREF=VDD=5.0V *1 VASS=0.0V, FS =100kHz, *1 FIN =1kHz   ±4 LSB DNL 差分非线性误差 VAREF=VDD=5.0V *1 VASS=0.0V, FS =100kHz, *1 FIN =1kHz   ±1 LSB FSE 全局误差 VAREF=VDD=5.0V *1 VASS=0.0V, FS =100kHz   ±8 LSB OE 偏移误差 VAREF= Vdd=5.0V *1 VASS=0.0V, FS =100kHz   ±4 LSB ZAI ADC 输入通道外部阻 值   10 KΩ  产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) EM78P372N 8位微控制器 (續 符号 参数 TAD ADC 时钟周期 Tsh 采样和保持时间 条件 最小值 典型 值 1   µs 4 - - µs 16 - - µs 14  24 TAD 0.5 - - TAD   2 LSB  ±3  % VDD=VAREF=5.0V, VASS = 0.0V VDD=3~5.5V, VASS = 0.0V, Ta=25°C VDD=2.5~3V, VASS = 0.0V, Ta=25°C VDD=2.5~5.5V, VASS = 0.0V A/D 转换时间 (包含 S/H 时间) AD “ADRUN”位置位和 开始第一个 TAD 之间 VDD=2.5~5.5V, VASS=0.0V 的延时 TCN TADD1 VAREF= 2.5V, VAREF=2.5V, VASS=0V, 供电电源抑制比 PSRR *1 最大 单位 值 *1 VIN =0V~2.5V, FS =25kHz 1/4 VDD 精度 V1/4VDD 注: 1.FS是采样率,也叫转换率。FIN是输入测试正弦波频率 2. 这些参数为理想值,未经测试,仅供设计参考。 3. ADC关闭,只消耗很小的漏电流。 4. A/D转换结果不会因为输入电压升高而减小,不会导致丢失码。 5. 这些参数未来若有变动恕不另行通知。 8.2 比较器特性 Vdd = 5.0V, Vss=0V, Ta = 25°C 符号 参数 VOS 输入补偿电压    10 mV Vcm 通用模式输入电压范围  GND  VDD V ICO 比较器供电流 Co=0V, Ta= -40~85℃  160  uA TRS 响应时间 VREF=1.0V, VRL=5V, 1 RL=5.1k, CL=15p (注 )  1  us TLRS 大信号响应时间 VREF=2.5V, VRL = 5V, RL 2 = 5.1k (注 )  250  ns  12  mA  0.2 0.4 V IOL VSAT 注: 输出灌电流 饱和电压 条件 最小值 典型值 最大值 Vi(-) = 1V, Vi(+) = 0V, 3 Vo = GND+0.5V (注 ) Vi(-)=1V, Vi(+)=0V, 3 IOL 50% 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) 101 EM78P372N 8位微控制器 C 封装结构 C.1 EM78P372ND14 D 14 E1 8 C E eB 1 A 7 θ Symbal A A1 A2 c D E E1 eB B B1 L e θ Min 0.381 3.175 0.203 18.796 6.174 7.366 8.409 0.356 1.143 3.048 0 Normal Max 4.318 3.302 3.429 0.254 0.356 19.050 19.304 6.401 6.628 7.696 8.025 9.017 9.625 0.457 0.559 1.524 1.778 3.302 3.556 2.540(TYP) 15 A1 A2 L B e B1 TITLE: PDIP-14L 300MIL PACKAGE OUTLINE DIMENSION File : Edtion: A D14 Unit : mm Scale: Free Material: Sheet:1 of 1 图 C-1 EM78P372N 14-引脚 PDIP 封装类型 102 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) EM78P372N 8位微控制器 C.2 EM78P372NSO14 E Symbal A A1 b c E H D L e θ H Min 1.350 0.100 0.330 0.190 3.800 5.800 8.550 0.600 Normal Max 1.750 0.250 0.510 0.250 4.000 6.200 8.750 1.270 1.27(TYP) 0 8 e b c D A2 A TITLE: SOP-14L(150MIL) PACKAGE OUTLINE DIMENSION File : Edtion: A NSO14 Unit : mm Scale: Free Material: Sheet:1 of 1 图C-2 EM78P372N 14-引脚 SOP 封装类型 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) 103 EM78P372N 8位微控制器 C.3 EM78P372NSO16A Symbal A A1 A2 b c E H D L e θ b Min 1.350 0.100 1.300 0.330 0.190 3.800 5.800 9.800 0.600 Normal Max 1.750 0.250 1.500 0.510 0.250 4.000 6.200 10.000 1.270 1.400 1.27(TYP) 0 8 e A2 c TITLE: SOP-16L(150MIL) PACKAGE OUTLINE DIMENSION File : NSO16 Edtion: A Unit : mm Scale: Free Material: Sheet:1 of 1 图C-3 EM78P372N 16-引脚 SOP 封装类型 104 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) EM78P372N 8位微控制器 C.4 EM78P372ND18 eB Symbal A A1 A2 c D E1 E eB B B1 L e θ Min 0.381 3.175 0.203 22.610 6.220 7.370 8.510 0.356 1.143 3.048 0 Normal Max 4.450 3.302 3.429 0.254 0.356 22.860 23.110 6.438 6.655 7.620 7.870 9.020 9.530 0.457 0.559 1.524 1.778 3.302 3.556 2.540(TYP) 15 TITLE: PDIP-18L 300MIL PACKAGE OUTLINE DIMENSION File : Edtion: A D18 Unit : mm Scale: Free Material: Sheet:1 of 1 图 C-4 EM78P372N 18-引脚 PDIP 封装类型 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) 105 EM78P372N 8位微控制器 C.5 EM78P372NSO18 Symbal A A1 b c E H D L e θ b Min 2.350 0.102 Normal Max 2.650 0.300 0.406(TYP) 0.230 7.400 10.000 11.350 0.406 0 0.838 1.27(TYP) 0.320 7.600 10.650 11.750 1.270 8 e c TITLE: SOP-18L(300MIL) PACKAGE OUTLINE DIMENSION File : Edtion: A SO18 Unit : mm Scale: Free Material: Sheet:1 of 1 图C-5 EM78P372N 18-引脚 SOP 封装类型 106 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) EM78P372N 8位微控制器 C.6 EM78P372ND20 Symbal A A1 A2 c D E1 E eB B B1 L e θ Min 0.381 3.175 0.203 25.883 6.220 7.370 8.510 0.356 1.143 3.048 0 Normal Max 4.450 3.302 3.429 0.254 0.356 26.060 26.237 6.438 6.655 7.620 7.870 9.020 9.530 0.457 0.559 1.524 1.778 3.302 3.556 2.540(TYP) 15 A1 A2 E TITLE: PDIP-20L 300MIL PACKAGE OUTLINE DIMENSION File : D20 Edtion: A Unit : mm Scale: Free Material: Sheet:1 of 1 图 C-6 EM78P372N 20-引脚 PDIP 封装类型 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) 107 EM78P372N 8位微控制器 C.7 EM78P372NSO20 Symbal A A1 b c E H D L e θ b Min 2.350 0.102 Normal Max 2.650 0.300 0.406(TYP) 0.230 7.400 10.000 12.600 0.630 0 0.838 1.27(TYP) 0.320 7.600 10.650 12.900 1.100 8 e c TITLE: SOP-20L(300MIL) PACKAGE OUTLINE DIMENSION File : Edtion: A SO20 Unit : mm Scale: Free Material: Sheet:1 of 1 图 C-7 EM78P372N 20-引脚 SOP 封装类型 108 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) EM78P372N 8位微控制器 b Symbal A A1 A2 b c E E1 D L L1 e θ E E1 C.8 EM78P372NSS20 e Min 0.050 1.620 0.220 0.090 7.400 5.000 6.900 0.650 0 Normal 1.750 7.800 5.300 7.200 0.750 1.250(REF ) 0.650(TYP) 4 Max 2.130 0.250 1.880 0.380 0.200 8.200 5.600 7.500 0.850 8 A2 c L1 TITLE: SSOP-20L(209MIL) OUTLINE PACKAGE PACKA OUTLINE DIMENSION File : Edtion: A SSOP20 Unit : mm Scale: Free Material: Sheet:1 of 1 图 C-8 EM78P372N 20-引脚 SSOP 封装类型 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) 109 EM78P372N 8位微控制器 C.9 EM78P372NMS10 图 C-9 EM78P372N 10-引脚 MSOP 封装类型 110 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) EM78P372N 8位微控制器 C.10 EM78P372NQN16 图 C-10 EM78P372N 16-引脚 QFN 封装类型 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新) 111 EM78P372N 8位微控制器 品质保证和可靠性 D 测试类别 可焊性 测试条件 备注 焊料温度=245  5C, 使用松香在上面停留 5 秒  步骤 1: TCT, 65C (15mins)~150C (15mins), 10 个循环 步骤 2: 在 125C 烤, TD (持久性)=24 hrs 步骤 3: 放置在 30C /60% , TD (持久性)=192 hrs 前提条件 步骤 4: IR 变化 3 次 (Pkg 厚度  2.5mm 或 3 Pkg 体积  350mm ----225  5C) 使用于 SMD 封装的 IC (如 SOP, QFP, SOJ, 等) (Pkg 厚度  2.5mm 或 3 Pkg 体积  350mm ----240  5C ) 温度周期测试 -65 (15 分钟)~150C (15 分钟), 200 次  高压锅测试 TA =121C, RH=100%, 压力=2 atm, TD (持久性) = 96 hrs  高温 /高湿测试 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=最大工作电压, 800mA/40V  ESD (HBM) TA=25°C, ≥ | ± 4KV | 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, ≥ | ± 400V | VDD-VSS(+),VDD_VSS (-)模式 D.1 地址缺陷检测 地址缺陷检测是MCU嵌入式自动防止故障危害功能的一种,检测MCU由噪声或类似造 成的功能故障。无论何时MCU试图从ROM区获取一条指令,内部恢复电路将自动开始。 如果检测到噪声引起地址错误,MCU重复执行程序直到噪声消除。 MCU 将继续执行下 一条指令。 112 产品规格书 (V1.4) 03.15.2016 (产品更新后规格书不保证同步更新)
EM78P372NSO20J 价格&库存

很抱歉,暂时无法提供与“EM78P372NSO20J”相匹配的价格&库存,您可以联系我们找货

免费人工找货