《HT46R064规格书.pdf》由会员分享,可在线阅读,更多相关《HT46R064规格书.pdf(103页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、 增强增强 A/D 型八位型八位 OTP 单片机单片机 HT46R064B/065B/066B 版本:V1.00 日期:2011-04-13 捷多邦,您值得信赖的P C B 打样专家!Rev 1.00 2011-04-13 i 目录目录 目目 录录 技术相关信息技术相关信息.1 特性特性 .1 概述概述 .2 选型表选型表 .2 方框图方框图 .2 引脚图引脚图 .3 引脚说明引脚说明 .4 HT46R064B.4 HT46R065B.5 HT46R066B.6 极限参数极限参数 .7 直流电气特性直流电气特性.8 交流电气特性交流电气特性.9 ADC 特性特性.10 上电复位特性上电复位特性
2、.10 系统结构系统结构 .11 时序和流水线结构.11 程序计数器 PC.12 堆栈.12 算术逻辑单元 ALU.13 程序存储器程序存储器.14 结构.14 特殊向量.14 查表.15 查表范例.15 表格读取程序范例.16 数据存储器数据存储器.17 结构.17 特殊数据存储器.17 Rev 1.00 2011-04-13 ii 目录目录 特殊功能寄存器特殊功能寄存器.19 间接寻址寄存器 IAR0,IAR1.19 间接寻址指针 MP0,MP1.19 间接寻址程序范例.19 累加器 ACC.19 程序计数器低字节寄存器 PCL.20 状态寄存器 STATUS.20 输入/输出口和控制寄存
3、器.20 系统控制寄存器 CTRL0,CTRL1.21 唤醒功能寄存器 PAWK.22 上拉电阻寄存器 PAPU,PBPU,PCPU,PDPU.22 软件控制的 COM 口寄存器 SCOMC.22 振荡器振荡器 .23 系统振荡器概述.23 系统时钟配置.23 外部晶体/陶瓷振荡器 HXT.23 外部 RC 振荡器 ERC.24 内部 RC 振荡器 HIRC.24 外部 32768Hz 晶体振荡器 LXT.24 内部低速振荡器 LIRC.25 工作模式工作模式 .26 模式的类型与选择.26 工作模式控制.26 切换模式.26 静态电流控制.27 唤醒.27 看门狗定时器看门狗定时器.28 看
4、门狗的使用.28 复位和初始化复位和初始化.30 复位功能.30 Rev 1.00 2011-04-13 iii 目录目录 复位初始状态.31 输入输入/输出端口输出端口.34 上拉电阻.34 PA 口唤醒.34 输入/输出端口控制寄存器.36 引脚共用功能.36 引脚功能重置-HT46R066B.37 输入/输出引脚结构.37 编程注意事项.38 定时定时/计数器计数器.39 配置定时/计数器输入时钟源.39 定时/计数寄存器-TMR0,TMR1.39 定时/计数控制寄存器-TMR0C,TMR1C.39 定时器模式.42 外部事件计数模式.42 脉冲宽度测量模式.43 预分频器.43 PFD
5、 功能.44 输入/输出接口.44 编程注意事项.44 定时/计数器应用范例.45 时基功能.45 脉冲宽度调制脉冲宽度调制-PWM.46 PWM 工作模式.46 PWM 输出控制.48 PWM 编程应用范例.48 A/D 转换器转换器.49 A/D 简介.49 A/D 转换器数据寄存器-ADRL,ADRH.49 Rev 1.00 2011-04-13 iv 目录目录 A/D 转换控制寄存器-ADCR,ACSR.50 A/D 输入引脚.52 A/D 转换步骤.52 编程注意事项.53 A/D 转换功能.53 A/D 转换应用范例.54 中断中断 .56 中断寄存器.56 中断操作.58 中断优
6、先级.59 外部中断.59 定时/计数器中断.59 A/D 转换器中断.60 时基中断.60 编程注意事项.60 带带 SCOM 功能的功能的 LCD.61 LCD 操作.61 LCD 偏压控制.61 配置选项配置选项 .63 应用电路应用电路 .63 指令集介绍指令集介绍.64 简介.64 指令周期.64 数据的传送.64 算术运算.64 逻辑和移位运算.64 分支和控制的转换.64 位运算.65 查表运算.65 其它运算.65 Rev 1.00 2011-04-13 v 目录目录 指令设定一览表.66 指令定义指令定义 .68 封装信息封装信息 .77 16-pin DIP(300mil)
7、外形尺寸.77 16-pin NSOP(150mil)外形尺寸.79 20-pin DIP(300mil)外形尺寸.80 20-pin SOP(300mil)外形尺寸.81 20-pin SSOP(150mil)外形尺寸.82 24-pin SKDIP(300mil)外形尺寸.83 24-pin SOP(300mil)外形尺寸.85 24-pin SSOP(150 mil)外形尺寸.86 28-pin SKDIP(300mil)外形尺寸.87 28-pin SOP(300mil)外形尺寸.88 28-pin SSOP(150mil)外形尺寸.89 包装带和卷轴规格包装带和卷轴规格.90 卷轴尺
8、寸.90 运输带尺寸.91 Rev 1.00 2011-04-13 1 HT46R064B/065B/066B 增强增强A/D型型八八位位OTP单片机单片机 技术相关信息技术相关信息 应用范例 HA0075S MCU 重置电路及振荡电路应用 特性特性 CPU 特性特性 工作电压:fSYS=4MHz:2.2V5.5V fSYS=8MHz:3.0V5.5V fSYS=12MHz:4.5V5.5V 在 VDD=5V,系统频率为 12MHz 时,指令周期为 0.33s 振荡模式:外部高频晶振 HXT 外部 RC ERC 内部高频 RC HIRC 外部低频晶振 LXT 3 种工作模式:正常模式,低速模式
9、,休眠模式 内部集成 4MHz,8MHz 和 12MHz RC 振荡器,不需要增加外部元器件 看门狗定时器 LIRC 振荡用于看门狗时钟 所有指令都可在 1 个或 2 个指令周期内完成 查表指令 63 条功能强大的指令系统 多达 6 层硬件堆栈 位操作指令 低电压复位功能 提供多种封装类型 周边特性:周边特性:多达 26 个双向输入/输出口 多达 8 个通道 12 位 ADC 多达 2 个通道 8 位 PWM 4 个软件控制 SCOM 口 1/2 bias LCD 驱动 一个与 I/O 口复用的外部中断输入 多达 2 个 8 位可编程定时/计数器,具有溢出中断和预分频功能 时基功能 PFD 功
10、能 Rev 1.00 2011-04-13 2 HT46R064B/065B/066B 概述概述 增强 A/D 型系列单片机是一款 8 位具有高性能精简指令集的单片机,应用相当广泛。秉承HOLTEK 单片机具有的低功耗、I/O 灵活、定时器功能、振荡类型可选、休眠和唤醒功能、看门狗和低电压复位等丰富的功能选项,增强 A/D 型单片机具有极高的性价比,其内部集成了系统振荡器HIRC,提供三种频率选择,不需要增加外部元器件。可以广泛适用于各种应用,例如工业控制,消费类产品,家用电器子系统控制等。选型表选型表 单片机型号单片机型号 ROM RAM I/O Timer Time Base HIRC(M
11、Hz)RTC(LXT)LCD SCOM A/D PWM PFD Stack 封装类型封装类型 HT46R064B 1K14 648 18 8-bit1 1 4/8/12 12-bit4 8-bit1 4 16DIP/NSOP 20DIP/SOP/SSOP HT46R065B 2K15 968 22 8-bit2 1 4/8/12 4 12-bit4 8-bit1 6 16DIP/NSOP 20DIP/SOP/SSOP 24SKDIP/SOP/SSOP HT46R066B 4K15 1288 26 8-bit2 1 4/8/12 4 12-bit8 8-bit2 6 16DIP/NSOP 20D
12、IP/SOP/SSOP 24/28SKDIP/SOP/SSOP 方框图方框图 以下为主要功能模块的方框图 Rev 1.00 2011-04-13 3 HT46R064B/065B/066B 引脚图引脚图 注注:括号内的引脚为引脚功能重置后的引脚 Rev 1.00 2011-04-13 4 HT46R064B/065B/066B 引脚说明引脚说明 HT46R064B 引脚名称引脚名称 功能功能 OPT I/T O/T 说明说明 PA0/AN0 PA0 PAPU PAWK ST CMOS 通用 I/O 口,可通过寄存器设置上拉电阻和唤醒功能 AN0 ADCR AN A/D 通道 0 PA1/PFD
13、/AN1 PA1 PAPU PAWK ST CMOS 通用 I/O 口,可通过寄存器设置上拉电阻和唤醒功能 PFD CTRL0 CMOS PFD 输出 AN1 ADCR AN A/D 通道 1 PA2/TC0/AN2 PA2 PAPU PAWK ST CMOS 通用 I/O 口,可通过寄存器设置上拉电阻和唤醒功能 TC0 ST 外部定时器 0 时钟输入脚 AN2 ADCR AN A/D 通道 2 PA3/INT/AN3 PA3 PAPU PAWK ST CMOS 通用 I/O 口,可通过寄存器设置上拉电阻和唤醒功能 INT ST 外部中断输入 AN3 ADCR AN A/D 通道 3 PA4/
14、PWM0 PA4 PAPU PAWK ST CMOS 通用 I/O 口,可通过寄存器设置上拉电阻和唤醒功能 PWM0 CTRL0 CMOS PWM 输出 PA5/OSC2 PA5 PAPU PAWK ST CMOS 通用 I/O 口,可通过寄存器设置上拉电阻和唤醒功能 OSC2 CO OSC 振荡器引脚 PA6/OSC1 PA6 PAPU PAWK ST CMOS 通用 I/O 口,可通过寄存器设置上拉电阻和唤醒功能 OSC1 CO OSC 振荡器输入脚 PA7/RES PA7 PAWK ST NMOS 通用 I/O 口,可通过寄存器设置唤醒功能 RES CO ST 复位输入脚 PB0PB5
15、PBn PBPU ST CMOS 通用 I/O 口,可通过寄存器设置上拉电阻 PC0PC3 PCn PCPU ST CMOS 通用 I/O 口,可通过寄存器设置上拉电阻 VDD VDD PWR 正电源 VSS VSS PWR 负电源、接地 注注:I/T:输入类型;O/T:输出类型 OPT:通过配置选项(CO)或者寄存器选项来配置 PWR:电源;CO:配置选项 ST:施密特触发输入;CMOS:CMOS 输出;AN:模拟输入 SCOM:软件控制的 LCD COM HXT:高频晶体振荡器 LXT:低频晶体振荡器 Rev 1.00 2011-04-13 5 HT46R064B/065B/066B HT
16、46R065B 引脚名称引脚名称 功能功能 OPT I/T O/T 说明说明 PA0/AN0 PA0 PAPU PAWK ST CMOS 通用 I/O 口,可通过寄存器设置上拉电阻和唤醒功能 AN0 ADCR AN A/D 通道 0 PA1/PFD/AN1 PA1 PAPU PAWK ST CMOS 通用 I/O 口,可通过寄存器设置上拉电阻和唤醒功能 PFD CTRL0 CMOS PFD 输出 AN1 ADCR AN A/D 通道 1 PA2/TC0/AN2 PA2 PAPU PAWK ST CMOS 通用 I/O 口,可通过寄存器设置上拉电阻和唤醒功能 TC0 ST 外部定时器 0 时钟输
17、入脚 AN2 ADCR AN A/D 通道 2 PA3/INT/AN3 PA3 PAPU PAWK ST CMOS 通用 I/O 口,可通过寄存器设置上拉电阻和唤醒功能 INT ST 外部中断输入 AN3 ADCR AN A/D 通道 3 PA4/TC1/PWM0 PA4 PAPU PAWK ST CMOS 通用 I/O 口,可通过寄存器设置上拉电阻和唤醒功能 TC1 ST 外部定时器 1 时钟输入脚 PWM0 CTRL0 CMOS PWM 输出 PA5/OSC2 PA5 PAPU PAWK ST CMOS 通用 I/O 口,可通过寄存器设置上拉电阻和唤醒功能 OSC2 CO OSC 振荡器引
18、脚 PA6/OSC1 PA6 PAPU PAWK ST CMOS 通用 I/O 口,可通过寄存器设置上拉电阻和唤醒功能 OSC1 CO OSC 振荡器输入脚 PA7/RES PA7 PAWK ST NMOS 通用 I/O 口,可通过寄存器设置唤醒功能 RES CO ST 复位输入脚 PB0/SCOM0 PB0 PBPU ST CMOS 通用 I/O 口,可通过寄存器设置上拉电阻 SCOM0 SCOMC SCOM 软件控制 1/2 bias 的 LCD COM 口 PB1/SCOM1 PB1 PBPU ST CMOS 通用 I/O 口,可通过寄存器设置上拉电阻 SCOM1 SCOMC SCOM
19、软件控制 1/2 bias 的 LCD COM 口 PB2/SCOM2 PB2 PBPU ST CMOS 通用 I/O 口,可通过寄存器设置上拉电阻 SCOM2 SCOMC SCOM 软件控制 1/2bias 的 LCD COM 口 PB3/SCOM3 PB3 PBPU ST CMOS 通用 I/O 口,可通过寄存器设置上拉电阻 SCOM3 SCOMC SCOM 软件控制 1/2 bias 的 LCD COM 口 PB4,PB5 PBn PBPU ST CMOS 通用 I/O 口,可通过寄存器设置上拉电阻 PC0PC7 PCn PCPU ST CMOS 通用 I/O 口,可通过寄存器设置上拉电
20、阻 VDD VDD PWR 正电源 VSS VSS PWR 负电源、接地 注注:I/T:输入类型;O/T:输出类型 OPT:通过配置选项(CO)或者寄存器选项来配置 PWR:电源;CO:配置选项 ST:施密特触发输入;CMOS:CMOS 输出;AN:模拟输入 SCOM:软件控制的 LCD COM HXT:高频晶体振荡器 LXT:低频晶体振荡器 Rev 1.00 2011-04-13 6 HT46R064B/065B/066B HT46R066B 引脚名称引脚名称 功能功能 OPT I/T O/T 说明说明 PA0/AN0 PA0 PAPU PAWK ST CMOS 通用 I/O 口,可通过寄存
21、器设置上拉电阻和唤醒功能 AN0 ADCR AN A/D 通道 0 PA1/PFD/AN1 PA1 PAPU PAWK ST CMOS 通用 I/O 口,可通过寄存器设置上拉电阻和唤醒功能 PFD CTRL0 CMOS PFD 输出 AN1 ADCR AN A/D 通道 1 PA2/TC0/AN2 PA2 PAPU PAWK ST CMOS 通用 I/O 口,可通过寄存器设置上拉电阻和唤醒功能 TC0 ST 外部定时器 0 时钟输入脚 AN2 ADCR AN A/D 通道 2 PA3/INT/AN3 PA3 PAPU PAWK ST CMOS 通用 I/O 口,可通过寄存器设置上拉电阻和唤醒功
22、能 INT ST 外部中断输入 AN3 ADCR AN A/D 通道 3 PA4/TC1/PWM0 PA4 PAPU PAWK ST CMOS 通用 I/O 口,可通过寄存器设置上拉电阻和唤醒功能 TC1 ST 外部定时器 1 时钟输入脚 PWM0 CTRL0 CMOS PWM 输出 PA5/OSC2 PA5 PAPU PAWK ST CMOS 通用 I/O 口,可通过寄存器设置上拉电阻和唤醒功能 OSC2 CO OSC 振荡器引脚 PA6/OSC1 PA6 PAPU PAWK ST CMOS 通用 I/O 口,可通过寄存器设置上拉电阻和唤醒功能 OSC1 CO OSC 振荡器输入脚 PA7/
23、RES PA7 PAWK ST NMOS 通用 I/O 口,可通过寄存器设置唤醒功能 RES CO ST 复位输入脚 PB0/SCOM0 PB0 PBPU ST CMOS 通用 I/O 口,可通过寄存器设置上拉电阻 SCOM0 SCOMC SCOM 软件控制 1/2 bias 的 LCD COM 口 PB1/SCOM1 PB1 PBPU ST CMOS 通用 I/O 口,可通过寄存器设置上拉电阻 SCOM1 SCOMC SCOM 软件控制 1/2 bias 的 LCD COM 口 PB2/SCOM2 PB2 PBPU ST CMOS 通用 I/O 口,可通过寄存器设置上拉电阻 SCOM2 SC
24、OMC SCOM 软件控制 1/2 bias 的 LCD COM 口 PB3/PFD/SCOM3 PB3 PBPU ST CMOS 通用 I/O 口,可通过寄存器设置上拉电阻 PFD CTRL0 CMOS PFD 输出 SCOM3 SCOMC SCOM 软件控制 1/2bias 的 LCD COM 口 PB4/TC0 PBn PBPU ST CMOS 通用 I/O 口,可通过寄存器设置上拉电阻 TC0 CTRL0 ST 外部定时器 0 时钟输入脚 PB5/INT PBn PBPU ST CMOS 通用 I/O 口,可通过寄存器设置上拉电阻 INT CTRL0 ST 外部中断输入 PC0/AN4
25、 PC1/AN5 PC6/AN6 PC7/AN7 PCn PCPU ST CMOS 通用 I/O 口,可通过寄存器设置上拉电阻 ANn ADCR AN A/D 通道 4,5,6,7 PC2,PC4PC5 PCn PCPU ST CMOS 通用 I/O 口,可通过寄存器设置上拉电阻 PC3/PWM1 PCn PCPU ST CMOS 通用 I/O 口,可通过寄存器设置上拉电阻 PWM1 CTRL0 CMOS PWM 输出 Rev 1.00 2011-04-13 7 HT46R064B/065B/066B 引脚名称引脚名称 功能功能 OPT I/T O/T 说明说明 PD0PD3 PDn PDPU
26、 ST CMOS 通用 I/O 口,可通过寄存器设置上拉电阻 VDD VDD PWR 正电源 VSS VSS PWR 负电源、接地 注注:I/T:输入类型;O/T:输出类型 OPT:通过配置选项(CO)或者寄存器选项来配置 PWR:电源;CO:配置选项 ST:施密特触发输入;CMOS:CMOS 输出;AN:模拟输入 SCOM:软件控制的 LCD COM HXT:高频晶体振荡器 LXT:低频晶体振荡器 极限参数极限参数 电源供应电压.Vss-0.3V 至 Vss+6.0V 端口输入电压.Vss-0.3V 至 VDD+0.3V IOL总电流.100mA 储存温度.-50至 125 工作温度.-40
27、至 85 IOH总电流.-100mA 总功耗.500Mw 注注:这里只强调额定功率,超过极限参数所规定的范围将对芯片造成损害,无法预期芯片在上述标示范围外的工作状态,而且若长期在标示范围外的条件下工作,可能影响芯片的可靠性。Rev 1.00 2011-04-13 8 HT46R064B/065B/066B 直流电气特性直流电气特性 Ta=25 符号符号 参数参数 测试条件测试条件 最小最小值值 典型值典型值 最大最大值值 单位单位 VDD 条件条件 VDD 工作电压 fSYS=4MHz 2.2 5.5 V fSYS=8MHz 3.0 5.5 V fSYS=12MHz 4.5 5.5 V IDD
28、1 工作电流 (HXT,HIRC,ERC)3V 无负载,fSYS=4MHz 0.8 1.2 mA 5V 1.5 2.25 mA IDD2 工作电流 (HXT,HIRC,ERC)3V 无负载,fSYS=8MHz 1.4 2.1 mA 5V 2.8 4.2 mA IDD3 工作电流 (HXT,HIRC,ERC)5V 无负载,fSYS=12MHz 4 6 mA IDD4 工作电流 (HIRC+LXT,Slow Mode)3V 无负载,fSYS=32768Hz(LVR disabled,LXTLP=1)5 10 A 5V 12 24 A ISTB1 静态电流(LIRC On,LXT Off)3V 无负
29、载,休眠模式 5 A 5V 10 A ISTB2 静态电流(LIRC Off,LXT Off)3V 无负载,休眠模式 1 A 5V 2 A ISTB3 静态电流(LIRC Off,LXT On,LXTLP=1)3V 无负载,休眠模式 5 A 5V 10 A VIL1 I/O、TCn 和 INT 的低 电平输入电压 0 0.3VDD V VIH1 I/O、TCn 和 INT 的高 电平输入电压 0.7VDD VDD V VIL2 低电平输入电压(RES)0 0.4VDD V VIH2 高电平输入电压(RES)0.9VDD VDD V VLVR1 低电压复位 1 VLVR=4.2V 3.98 4.
30、2 4.42 V VLVR2 低电压复位 2 VLVR=3.15V 2.98 3.15 3.32 V VLVR3 低电压复位 3 VLVR=2.1V 1.98 2.1 2.22 V IOL1 I/O 口灌电流(PA,PB,PC)3V VOL=0.1VDD 4 8 mA 5V 10 20 mA IOH I/O 口源电流 3V VOH=0.9VDD-2-4 mA 5V-5-10 mA IOL2 PA7 灌电流 5V VOL=0.1VDD 2 3 mA RPH 上拉电阻 3V 20 60 100 k 5V 10 30 50 k ISCOM SCOM 驱动电流 5V SCOMC,ISEL1:0=00
31、17.5 25.0 32.5 A SCOMC,ISEL1:0=01 35 50 65 A SCOMC,ISEL1:0=10 70 100 130 A SCOMC,ISEL1:0=11 140 200 260 A VSCOM LCD COM 口 VDD/2 输 出电压 5V 无负载 0.475 0.500 0.525 VDD 注注:静态电流(ISTB1ISTB3)和 IDD4 的测试条件为:设置所有输入/输出口为输入模式,并且连接至 VDD。Rev 1.00 2011-04-13 9 HT46R064B/065B/066B 交流电气特性交流电气特性 Ta=25 符号符号 参数参数 测试条件测试条
32、件 最小最小值值 典型值典型值 最大最大值值 单位单位 VDD 条件条件 fSYS 系统时钟 2.2V 5.5V 32 4000 kHz 3.0V 5.5V 32 8000 kHz 4.5V 5.5V 32 12000 kHz fHIRC 系统时钟(HIRC)3V/5V Ta=25-2%4+2%MHz 3V/5V Ta=25-2%8+2%MHz 5V Ta=25-2%12+2%MHz 3V/5V Ta=070-5%4+5%MHz 3V/5V Ta=070-5%8+5%MHz 5V Ta=070-5%12+5%MHz 2.2V3.6V Ta=070-8%4+8%MHz 3.0V5.5V Ta=0
33、70-8%4+8%MHz 3.0V5.5V Ta=070-8%8+8%MHz 4.5V5.5V Ta=070-8%12+8%MHz 2.2V3.6V Ta=-4085-12%4+12%MHz 3.0V5.5V Ta=-4085-12%4+12%MHz 3.0V5.5V Ta=-4085-12%8+12%MHz 4.5V5.5V Ta=-4085-12%12+12%MHz fERC 系统时钟(ERC)5V Ta=25,R=120k*-2%4+2%MHz 5V Ta=070,R=120k*-5%4+5%MHz 5V Ta=-4085,R=120k*-7%4+7%MHz 2.2V5.5V Ta=-4
34、085,R=120k*-11%4+11%MHz fLXT 系统时钟(LXT)32768 Hz fTIMER 定时器输入频率(TCn)2.2V5.5V 0 4000 kHz 3.0V5.5V 0 8000 kHz 4.5V5.5V 0 12000 kHz fLIRC LIRC 振荡器 3V 5 10 15 kHz 5V 6.5 13 19.5 kHz tRES 外部复位低电压脉宽 1 s tSST 系统启动延时周期 HXT/LXT 128 tSYS ERC/IRC(配置选项控制)2 tSYS tINT 中断脉冲宽度 1 s tLVR 低电压复位宽度 0.25 1 2 ms tRSTD 复位延时时
35、间 100 ms 注注:1.tSYS=1/fSYS 2.*:表示对于 fERC,电阻的公差会影响外部 RC 的频率,建议使用精密度较高的电阻。3.为了保持内部 HIRC 振荡器频率的准确性,需要在 VDD 和 VSS 之间接入一个 0.1F 的去 耦电容,并且尽可能地靠近单片机。Rev 1.00 2011-04-13 10 HT46R064B/065B/066B ADC 特性特性 符号符号 参数参数 测试条件测试条件 最小最小值值 典型值典型值 最大最大值值 单位单位 VDD 条件条件 DNL A/D 非线性微分误差 3V tAD=0.5s-2 2 LSB 5V INL A/D 非线性积分误差
36、 3V tAD=0.5s-4 4 LSB 5V IADC 打开 A/D 增加的功耗 3V 0.5 0.75 mA 5V 1.0 1.5 mA 上电复位特性上电复位特性 Ta=25 符号符号 参数参数 测试条件测试条件 最小最小值值 典型值典型值 最大最大值值 单位单位 VDD 条件条件 VPOR 上电复位电压 100 mV RRVDD 上电复位电压速率 0.035 V/ms tPOR VDD保持为 VPOR的最小时间 1 ms Rev 1.00 2011-04-13 11 HT46R064B/065B/066B 系统结构系统结构 内部系统结构是盛群单片机具有良好性能的主要因素。由于采用 RIS
37、C 结构,此系列单片机具有高运算速度和高性能的特点。通过流水线的方式,指令的取得和执行同时进行,此举使得除了跳转和调用指令外,其它指令都能在一个指令周期内完成。8 位 ALU 参与指令集中所有的运算,它可完成算术运算、逻辑运算、移位、递增、递减和分支等功能,而内部的数据路径则是以通过累加器或 ALU 的方式加以简化。有些寄存器在数据存储器中被实现,且可以直接或间接寻址。简单的寄存器寻址方式和结构特性,确保了在提供具有最大可靠度和灵活性的 I/O 和 A/D 控制系统时,仅需要少数的外部器件。时序和流水线结构时序和流水线结构 主系统时钟由晶体/陶瓷振荡器,或者 RC 振荡器提供,它被细分为 T1
38、T4 四个内部产生的非重叠时序。在 T1 时间,程序计数器自动加一并抓取一条新的指令。剩下的时间 T2T4 完成译码和执行功能,因此,一个 T1T4 时间周期构成一个指令周期。虽然指令的抓取和执行发生在连续的指令周期,但单片机流水线结构会保证指令在一个指令周期内被有效执行。除非程序计数器的内容被改变,如子程序的调用或者跳转,在这种情况下指令将需要多一个指令周期的时间去执行。系统时序和流水线系统时序和流水线 如果指令牵涉到分支,例如跳转或调用等指令,则需要两个指令周期才能完成指令执行。需要一个额外周期的原因是程序先用一个周期取出实际要跳转或调用的地址,再用另一个周期去实际执行分支动作,因此用户需
39、要特别考虑额外周期的问题,尤其是在执行时间要求较严格的时候。指令捕捉指令捕捉 Rev 1.00 2011-04-13 12 HT46R064B/065B/066B 程序计数器程序计数器 PC 在程序执行期间,程序计数器用来指向下一个要执行的指令地址。除了“JMP”和“CALL”指令需要跳转到一个非连续的程序存储器地址之外,它会在每条指令执行完成以后自动加一。选择不同型号的单片机,程序寄存器的宽度会因程序存储器的容量的不同而不同。然而只有较低的 8 位,即所谓的程序低字节寄存器 PCL,可以被用户直接读写。当执行的指令要求跳转到不连续的地址时,如跳转指令、子程序调用、中断或者复位等,单片机通过加
40、载所需要的位址到程序寄存器来控制程序,对于条件跳转指令,一旦条件符合,在当前指令执行时取得的下一条指令将会被舍弃,而由一个空指令周期来取代。单片机型号单片机型号 程序计数器程序计数器 程序计数器高字节程序计数器高字节 PCL 寄存器寄存器 HT46R064B PC9,PC8 PCL7PCL0 HT46R065B PC10PC8 HT46R066B PC11PC8 程序计数器的低字节,即程序计数器的低字节寄存器 PCL,可以通过程序控制,且它是可以读取和写入的寄存器。通过直接写入数据到这个寄存器,一个程序短跳转可直接执行,然而只有低字节的操作是有效的,跳转被限制在存储器的当前页中,即 256 个
41、存储器地址范围内,当这样一个程序跳转要执行时,会插入一个空指令周期。程序计数器的低字节可由程序直接进行读取,PCL 的使用可能引起程序跳转,因此需要额外的指令周期。有关 PCL 寄存器的更多信息请参考特殊功能寄存器章节的说明。堆栈堆栈 堆栈是一个特殊的存储器空间,用来保存程序计数器中的值。堆栈寄存器既不是数据存储器的一部分,也不是程序存储器的一部分,而且它既不能读出,也不能写入。堆栈的使用是通过堆栈指针 SP 来指示的,堆栈指针也不能读出或写入。当发生子程序调用或中断响应时,程序计数器中的内容会被压入堆栈;在子程序调用结束或中断响应结束时,执行指令 RET 或 RETI,堆栈将原先压入堆栈的内
42、容弹出,重新装入程序计数器中。在系统复位后,堆栈指针会指向堆栈顶部。单片机型号单片机型号 堆栈层数堆栈层数 HT46R064B 4 HT46R065B HT46R066B 6 如果堆栈已满,且有非屏蔽的中断发生,则只有中断请求标志位会被置位,而中断响应会被禁止,直到堆栈指针发生递减(执行 RET 或 RETI 指令),中断才会被响应。这个特性提供程序设计者简单的方法来预防堆栈溢出。然而即使堆栈已满,CALL 指令仍然可以执行,从而造成堆栈溢出。使用时应避免堆栈溢出的情况发生,因为这样会造成不可预期的程序分支指令的执行错误。Rev 1.00 2011-04-13 13 HT46R064B/065
43、B/066B 算术逻辑单元算术逻辑单元 ALU 算术逻辑单元是单片机中很重要的部份,执行指令集中的算术和逻辑运算。ALU 连接到单片机的数据总线,在接收相关的指令码后执行需要的算术与逻辑运算,并将结果储存在指定的寄存器,当 ALU 计算或操作时,可能导致进位、借位或其它状态的改变,而相关的状态寄存器会因此更新内容以显示这些改变,ALU 所提供的功能如下:算术运算:ADD、ADDM、ADC、ADCM、SUB、SUBM、SBC、SBCM、DAA 逻辑运算:AND、OR、XOR、ANDM、ORM、XORM、CPL、CPLA 移位运算:RRA、RR、RRCA、RRC、RLA、RL、RLCA、RLC 递
44、增和递减:INCA、INC、DECA、DEC 分支判断:JMP、SZ、SZA、SNZ、SIZ、SDZ、SIZA、SDZA、CALL、RET、RETI Rev 1.00 2011-04-13 14 HT46R064B/065B/066B 程序存储器程序存储器 程序存储器用来存放用户代码即存储程序。此系列的单片机提供一次可编程的存储器(OTP),使用者可以编写他们的应用代码到芯片中。OTP 型单片机提供使用者以灵活的方式自由开发他们的应用,这对于需要除错或者需要经常升级和改变程序的产品是很有帮助的。结构结构 程序存储器的容量有 1K14 到 4K15 等类型。程序存储器用程序计数器来寻址,其中也包
45、含数据、表格和中断入口,数据表格可以设定在程序存储器的任何地址,由表格指针来寻址。程序存储器结构程序存储器结构 单片机型号单片机型号 ROM HT46R064B 1K14 HT46R065B 2K15 HT46R066B 4K15 特殊向量特殊向量 程序存储器中某些地址保留用作诸如复位和中断的入口等特殊用途。复位向量 该向量是保留用做单片机复位后的程序起始地址。在芯片初始化后,程序将会跳转到这个地址并开始执行。外部中断向量 该向量为外部中断服务程序使用。当外部中断引脚发生边沿跳变时,如果中断允许且堆栈未满,则程序会跳转到该地址开始执行。外部中断有效边沿转换类型由 CTRL1 寄存器指定设定是下
46、降沿,还是上升沿有效或者双边沿触发有效。定时/计数器 0/1 中断向量 该内部中断向量为定时/计数器使用,当定时/计数器发生溢出,如果中断允许且堆栈未满,则程序会跳转到相应的地址开始执行。A/D 转换器中断向量 该内部向量为 A/D 转换中断使用,如果 A/D 转换中断使能,并且堆栈未满的情况下,当 A/D转换完成,则程序将跳转到相应的地址开始执行。时基中断向量 该内部向量为时基中断使用,当时基溢出发生,如果中断允许且堆栈未满,则程序将跳转到相应地址开始执行。Rev 1.00 2011-04-13 15 HT46R064B/065B/066B 查表查表 程序存储器中的任何地址都可以定义为一个表
47、格,以便存储固定的数据。使用查表指令时,查表指针需要先行设定,其方式是将表格的低位地址放在表格指针寄存器 TBLP 中。这个寄存器定义的是表格较低的 8 位地址。在设定完表格指针后,表格数据可以使用“TABRDC m”或“TABRDL m”指令从程序所在的存储器的当前页或者存储器的最后一页中查表来读取。当这些指令执行时,程序存储器的表格的低字节,将会传输到用户所指定的数据存储器中。程序存储器表格的高字节,将会传输到特殊寄存器 TBLH 中。传输数据中任何未定义的字节将会读取为“0”。下图为查表寻址/数据流程图:指令指令 表格地址表格地址 b11 b10 b9 b8 b7 b6 b5 b4 b3
48、 b2 b1 b0 TABRDCm PC11 PC10 PC9 PC8 7 6 5 4 3 2 1 0 TABRDLm 1 1 1 1 7 6 5 4 3 2 1 0 注注:1.PC11 PC8:当前程序计数器位 2.70:表格指针 TBLP 位 3.对 HT46R064B 来说,表格地址是 10 位,从 b9b0。4.对 HT46R065B 来说,表格地址是 11 位,从 b10b0。5.对 HT46R066B 来说,表格地址是 12 位,从 b11b0。查表范例查表范例 以下范例说明在 HT46R064B 芯片中表格指针和表格数据如何被定义和执行。这个例子使用的表格数据用 ORG 伪指令储
49、存在存储器的最后一页,在此 ORG 伪指令中的值为 300H,即 1K 程序存储器最后一页存储器的起始地址,而表格指针的初始值则为 06H,这可保证从数据表格读取的第一笔数据位于程序存储器地址 306H,即最后一页起始地址后的第六个地址。注意,假如T ABRDC m指令被使用,则表格指针指向当前页。在这个例子中,表格数据的高字节等于零,而当 TABRDL m指令被执行时,此值将会自动的被传送到 TBLH 寄存器。因为 TBLH 寄存器是只读寄存器,不能重新储存,若主程序和中断服务程序都使用表格读取指令,应该注意它的保护。使用表格读取指令,中断服务程序可能会改变 TBLH 的值,若随后在主程序中
50、再次使用这个值,则会发生错误。因此建议避免同时使用表格读取指令。然而在某些情况下,如果同时使用表格读取指令是不可避免的,则在执行任何主程序的表格读取指令前,中断应该先除能,另外要注意,所有与表格相关的指令,都需要两个指令周期去完成操作。Rev 1.00 2011-04-13 16 HT46R064B/065B/066B 表格读取程序范例表格读取程序范例 tempreg1 db?;temporary register#1 tempreg2 db?;temporary register#2 :mov a,06h ;initialise table pointer-note that this ad