HT48RA0-2/ HT48CA0-2
遥控型八位单片机
遥控型八位单片机
遥控型八位单片机 遥控型八位单片机
盛群知识产权政策
盛群知识产权政策
盛群知识产权政策 盛群知识产权政策
专利权
专利权
专利权 专利权
盛群半导体公司在全球各地区已核准和申请中之专利权至少有 160 件以上,享有绝对之合法权益。与盛群
公司 MCU 或其它产品有关的专利权并未被同意授权使用,任何经由不当手段侵害盛群公司专利权之公司、
组织或个人,盛群将采取一切可能的法律行动,遏止侵权者不当的侵权行为,并追讨盛群公司因侵权行为
所受之损失、或侵权者所得之不法利益。
商标
商标权权权权
商标 商标
盛群之名称和标识、Holtek 标识、HT-IDE、HT-ICE、Marvel Speech、 Music Micro、 Adlib Micro、 Magic
Voice 、 Green Dialer 、 PagerPro、 Q-Voice 、 Turbo Voice、 EasyVoice 和 HandyWriter 都是盛群半导体公
司在台湾地区和其它国家的注册商标。
著作权
著作权
著作权 著作权
Copyright 2008 by HOLTEK SEMICONDUCTOR INC.
规格书中所出现的信息在出版当时相信是正确的,然而盛群对于规格内容的使用不负责任。文中提到的应
用其目的仅仅是用来做说明,盛群不保证或不表示这些应用没有更深入的修改就能适用,也不推荐它的产
品使用在会由于故障或其它原因可能会对人身造成危害的地方。盛群产品不授权使用于救生、维生器件或
系统中做为关键器件。盛群拥有不事先通知而修改产品的权利,对于最新的信息,请参考我们的网址
http://www.holtek.com.tw; http://www.holtek.com.cn
Rev.2.20 1 2008-9-5
技术相关信息
技术相关信息
技术相关信息 技术相关信息
· 工具信息
· FAQs
· 应用范例
-HA0016S HT48 MCU读写HT24系列EEPROM的应用范例
-HA0018S HT48 MCU 对HT1621 LCD控制器的应用
-HA0041S HT48CA0发射HT6221码的应用范例
-HA0075S MCU重置电路及振荡电路应用
-HA0076S HT48RAx/HT48CAx 软件应用要点
-HA0082S HT48xA0-1、HT48xA0-2 Power-on Reset 时序
特性
特性
特性 特性
HT48RA0-2/ HT48CA0-2
· 工作电压:2.0V ~3.6V
· 10 个双向输入/输出口
· 4 个斯密特触发输入口
· 一个载波输出口(1/2 或 1/3 占空比)
· 内置晶体和 RC 振荡电路
· 看门狗定时器
· 1K × 14 程序存储器(EPROM )
· 32 × 8 数据存储器(RAM)
· HALT 和唤醒功能以降低功耗
· 62 条指令
· 系统频率为 4MHz 时,指令周期为 1µs
· 所有指令在 1 或 2 个指令周期内完成
· 查表指令,表格内容字长 14 位
· 一层堆栈
· 位操作指令
· 低电压复位功能
· 20-pin 的 SSOP 封装
概述
概述
概述 概述
HT48RA0-2/ HT48CA0-2 为八位高性能精简指令集单片机,专为多输入 /输出口的产品而设计的。
HT48RA0-2 是 OTP 版本,和掩膜版本芯片 HT48CA0-2 在引脚和功能上完全相同。
拥有低功耗、I/O 口稳定性高、定时器功能、振荡选择、省电和唤醒功能、看门狗定时器、蜂鸣器驱
动、以及低价位等优势,使此款多功能芯片可以广泛地适用于各种应用,例如红外遥控器及各种电子系统
的控制器。
Rev. 2.20 2 2008-9-5
方框图
方框图
方框图 方框图
HT48RA0-2/ HT48CA0-2
引脚图
引脚图
引脚图 引脚图
I n s t r u c t i o n
I n s t r u c t i o n
G e n e r a t o r
O S C 2
P r o g r a m
R e g i s t e r
D e c o d e r
T i m i n g
O S C 1
R E S
V D D
V S S
P r o g r a m
C o u n t e r
M P
A L U
S h i f t e r
A C C
M U X
S T A C K
M
U
X
D A T A
M e m o r y
S T A T U S
S Y S C L K / 4
F r e q u e n c y D i v i d e r
W D T
P O R T B
P B
P O R T A
P A
L e v e l o r C a r r i e r
C a r r i e r C o n t r o l
P C 0 C o n t r o l
P B 0 ~ P B 1
P B 2 ~ P B 5
P A 0 ~ P A 7
P C 0 / R E M
Rev. 2.20 2 2008-9-5
引引 引引脚说明
脚说明
脚说明 脚说明
引脚名称
引脚名称 输入
引脚名称 引脚名称
PA0~PA7
PB0,PB1
PB2~PB5
PC0/REM
VDD
VSS
OSC1
OSC2
———
RES
HT48RA0-2/ HT48CA0-2
输入/ 输出
输出 掩膜选项
输入 输入
输出 输出
输入/ 输出
输入/ 输出 唤醒功能
输入 唤醒功能
输出 电平或载波
— — 正电源。
— — 负电源,接地。
输入
输出
输入 — 斯密特触发复位输入端,低电平有效。
掩膜选项 说说说说 明明明明
掩膜选项 掩膜选项
—
8 位双向输入/ 输出口,带上拉电阻。每一位都能由软件指
令设定为 NMOS 输出或斯密特触发输入。
2 位双向输入/ 输出口,带上拉电阻。每一位都可在掩膜选
项中设置为带唤醒功能的输入口,可由软件指令设定为
NMOS 输出或斯密特触发输入。
4 位斯密特触发输入口,带上拉电阻。每一位都能在掩膜
选项中设置为唤醒输入。
电平或载波输出口。
在掩膜选项中PC0 可以被设为CMOS 输出或载波输出口。
晶体振荡或
RC 振荡
OSC1 和 OSC2 连接 RC 或 Crystal(由掩膜选项选择)产
生内部系统时钟。在 RC 模式下,OSC2 是一个系统时钟
四分频的输出端(NMOS 漏极开路输出)。
极限参数
极限参数
极限参数 极限参数
电源供应电压 …… V SS – 0.3V~Vss +4.0V 储存温度 ……………… - 50℃~125℃
端口输入电压 …… V SS – 0.3V~V
+0.3V 工作温度 ……………… - 40℃~ 85℃
DD
端口总灌电流 …………………… 150mA 端口总源电流 ……………… -100mA
总功耗 …………………………… 500mW
注:这里只强调额定功率,超过极限参数所规定的范围将对芯片造成损害,无法预期芯片在上述标示范围外的工作状态,而
且若长期在标示范围外的条件下工作,可能影响芯片的可靠性。
Rev. 2.20 3 2008-9-5
HT48RA0-2/ HT48CA0-2
直流电气特性
直流电气特性 Ta=25℃
直流电气特性 直流电气特性
测试条件
测试条件
符号
符号 参数
符号 符号
VDD
IDD
I
STB
V
V
V
V
V
LVR
IOL
IOH
RPH
工作电压
工作电流
静态电流
输入/ 输出 口的低电平
IL1
输入电压
输入/ 输出 口的高电平
IH1
输入电压
低电平输入电压(
IL2
高电平输入电压 (
IH2
低电压复位值
输入/输出口灌电流
PC0/REM 输出源电流
上拉电阻
参数
参数 参数
)
)
VDD
测试条件 测试条件
条件
条件
条件 条件
最小
最小 典型
最小 最小
典型 最大
典型 典型
最大 单位
最大 最大
— — 2.0 — 3.6 V
3V
3V
3V — 0 — 0.2 V
3V — 0.8V
3V — 0 — 0.4V
3V — 0.9V
—
3V VOL =0.1V
3V VOH =0.9V
无负载
fsys=4MHZ
无负载
暂停模式
温度=25℃
DD
DD
— 0.7 1.5 mA
— — 1 µ A
DD
*
DD
1.8 1.9 2.0 V
— VDD V
— VDD V
4 8 — mA
-2 -4 — mA
DD
DD
3V — 20 60 100 KΩ
单位
单位 单位
V
V
℃
℃℃
注:“* ”只保证在 25 ℃的条件下
交流电气特性
交流电气特性 Ta=25℃
交流电气特性 交流电气特性
测试条件
测试条件
符号
符号 参数
符号 符号
f
系统时钟
sys
t
外部复位低电平的脉宽 - -
RES
t
系统启动延迟周期 - 上电或从 HALT 唤醒
SST
t
LVR
注:t
低电压复位延迟时间 - -
=1/f
SYS
SYS
参数
参数 参数
V
3V
DD
测试条件 测试条件
条件
条件
条件 条件
-
最小
最小 典型
最小 最小
400
1
-
典型 最大
典型 典型
-
最大 单位
最大 最大
4000 KHZ
- -
1024
-
0.25 1 2 ms
℃
℃℃
单位
单位 单位
µ s
t
sys
Rev. 2.20 4 2008-9-5
HT48RA0-2/ HT48CA0-2
系统功能说明
系统功能说明
系统功能说明 系统功能说明
指令执行时序
指令执行时序
指令执行时序 指令执行时序
HT48RA0-2/HT48CA0-2 系统可外接晶体振荡器或陶瓷谐振器产生振荡频率。系统内部对此频率进行
四分频,产生四个不重叠的时钟周期。一个指令周期包含了四个系统时钟周期。
指令读取与执行是以流水线方式来进行的。这种方式允许在一个指令周期进行读取指令操作,而在下
一个指令周期里进行解码与执行该指令。这种流水线方式能在一个指令周期里有效地执行一个指令。但是,
如果指令会改变程序计数器的值,就需要花两个指令周期来完成这一条指令。
S y s t e m C l o c k
I n s t r u c t i o n C y c l e
T 1 T 2 T 3 T 4 T 1 T 2 T 3 T 4 T 1 T 2 T 3 T 4
P C
P C P C + 1 P C + 2
F e t c h I N S T ( P C )
E x e c u t e I N S T ( P C - 1 )
F e t c h I N S T ( P C + 1 )
E x e c u t e I N S T ( P C )
F e t c h I N S T ( P C + 2 )
E x e c u t e I N S T ( P C + 1 )
指令执行时序
指令执行时序
指令执行时序 指令执行时序
程序计数器
程序计数器 ———— PC
程序计数器 程序计数器
10 位程序计数器控制存放在程序存储器中的要被执行的指令序列。程序计数器的最大寻址范围为 1024
个地址。
通过访问一个程序存储单元来取出指令代码后,PC 的值便会加 1 。然后程序计数器便会指向下一条指
令代码所在的程序存储单元。
当执行一条跳转指令、条件跳转指令、装载 PCL 寄存器、子程序调用、初始复位或从一个子程序返回,
PC 会通过装载每条指令的相应地址来执行程序转移。
通过指令实现条件跳转,一旦条件满足,那么在当前指令执行期间取出的下一条指令会被放弃,而替
代它的是一个空指令周期(dummy cycle)来获取正确的指令,接着就执行这条指令。否则就执行下一条指令。
程序计数器的低位字节(PCL;06H )是可读写的寄存器。将数据赋值到 PCL 会执行一个短跳转。这
种跳转只能在 256 个地址范围内。
当一个控制转移指令发生时,就需要有一个附加的空指令周期。
模模模模 式式式式
初始化复位
条件跳转
装载 PCL
跳转,子程序调用
从子程序返回
程序计数器
*9 *8 *7 *6 *5 *4 *3 *2 *1 *0
0 0 0 0 0 0 0 0 0 0
PC+2
*9 *8 @7 @6 @5 @4 @3 @2 @1 @0
#9 #8 #7 #6 #5 #4 #3 #2 #1 #0
S9 S8 S7 S6 S5 S4 S3 S2 S1 S0
程序计数器
程序计数器 程序计数器
程序计数器
程序计数器
程序计数器 程序计数器
注意:*9 ~ *0 :程序计数器位 S9 ~ S0 :堆栈寄存器位
#9 ~ #0 :指令代码位 @7 ~ @0 : PCL 位
Rev. 2.20 5 2008-9-5
程序存储器
程序存储器 ———— ROM
程序存储器 程序存储器
HT48RA0-2/ HT48CA0-2
程序存储器(ROM )被用来存放要执行的指令的代码。还
0 0 0 H
D e v i c e i n i t i a l i z a t i o n p r o g r a m
包括数据和表格。一共为 1024 ×14 位。可以由程序计数器或表
格指针来寻址。
在程序存储器中某几个地址被保留作为特殊用途:
· 地址 000H
此地址保留给程序初始化之用。当系统复位时,程序会从
n 0 0 H
L o o k - u p t a b l e ( 2 5 6 w o r d s )
n F F H
000H 地址开始执行。
· 表格区
程序存储器内的任何地址都可被用来作为表格地址使用。查
表指令 TABRDC [m](查当前页,1 页=256 个字节)和
TABRDL [m] (查最后一页)将所指地址的低字节传到指
定的存储器中,而高字节传送到 TBLH (08H )。表格中只
3 F F H
L o o k - u p t a b l e ( 2 5 6 w o r d s )
1 4 b i t s
N o t e : n r a n g e s f r o m 0 t o 3
有低位字节被完整传到到目标地址中,而其它位则传送到
TBLH 的低位,剩余的二位被作为 0 读出。表格中的高位字
程序存储器
程序存储器
程序存储器 程序存储器
节 TBLH 为只读寄存器。而表格指针(TBLP ;07H)是可
以读写的寄存器,表格指针指向要读的表格地址。在访问表格以前,通过对 TBLP 寄存器赋值来指明
表格地址。查表指令要花两个指令周期来完成这一条指令的操作。按照用户的需要,表格地址指明的
这些位置也可以作为正常的程序存储器来使用。
表格地址
表格地址
指指指指 令令令令
*9 *8 *7 *6 *5 *4 *3 *2 *1 *0
表格地址 表格地址
TABRDC [m] P9 P8 @7 @6 @5 @4 @3 @2 @1 @0
TABRDL [m] 1 1 @7 @6 @5 @4 @3 @2 @1 @0
P r o g r a m
表格区
表格区
表格区 表格区
注:*9 ~ *0 :表格地址位 P9~P8 :当前程序计数器位 @7 ~ @0 :表格指针位
堆栈寄存器
堆栈寄存器 ———— STACK
堆栈寄存器 堆栈寄存器
堆栈寄存器(STACK)是一个用来保存 PC 值的特殊存储单元。HT48RA0-2/HT48CA0-2 的堆栈为 1 级。
堆栈寄存器既不是数据存储器的一部分,也不是程序存储器的一部分,而且它既不能读出,也不能写入。
堆栈位置由堆栈指针(SP)来确定。堆栈指针(SP)也不能读/写。一旦发生子程序调用时,程序计数器
(PC)的值会被压入堆栈,在子程序调用结束时, 通过一条返回指令(RET),堆栈将原先压入堆栈的内容
弹出,重新装入程序计数器(PC)中。在系统复位后,堆栈指针会指向堆栈顶部。
如果堆栈满了,接着又执行一个子程序调用(CALL),那么堆栈会产生溢出,而使第一个进入堆栈的
内容将会丢失。(只有最后那个返回地址会被保留着)。
Rev. 2.20 6 2008-9-5
数据存储器
数据存储器 ———— RAM
数据存储器 数据存储器
数据存储器 RAM 由 42 × 8 位组成。它可分成两个功能组:特
殊功能寄存器和通用数据存储器(32 × 8 )。这两个功能组的大部分
单元可以读写,而某些单元只能读,不能写。
特殊功能寄存器包括间接寻址寄存器(00H ),间接寻址指针
寄存器(MP ;01H ),累加器(ACC ;05H ),程序计数器低位字
节寄存器(PCL ;06H),表格指针寄存器(TBLP ;07H),表格高
字节寄存器(TBLH ;08H ),状态寄存器(STATUS;0AH),输入
/ 输出口寄存器(PA ;12H ,PB;14H ,PC;16H )。20H 以前的剩
余单元都被保留为将来进一步扩展使用。读取这些被保留单元的
值,都将返回 00H 。通用数据存储器地址 20H-3FH 作为程序数据
和控制信息使用。
所有的 RAM 区单元都能直接执行算术,逻辑,递增,递减
和移位等运算。除了某些特殊的位以外,RAM 中的每一位都可以
由 SET [ m].i 和 CLR [m].i 指令来置位和清零。它们都可通
过间接寻址指针寄存器(MP ;01H)间接寻址来存取。
间接寻址寄存器
间接寻址寄存器
间接寻址寄存器 间接寻址寄存器
地址 00H 是作为间接寻址寄存器。它没有物理结构。任何对
[00H]的读 /写操作,都会访问由 MP(01H)所指向的 RAM 单元。间
接地读取[00H] ,将会返回 00H ,而间接地写入[00H] 单元,则不会
产生任何结果。
间接寻址指针寄存器 MP 的宽度是 7 位,MP 的第 7 位是没
有定义的。若读它们将返回“1”。而任何对 MP 写的操作只能将低
7 位数据传送到 MP 。
HT48RA0-2/ HT48CA0-2
0 0 H
I n d i r e c t A d d r e s s i n g R e g i s t e r
0 C H
0 D H
0 A H
0 B H
0 E H
3 F H
0 1 H
0 2 H
0 3 H
0 4 H
0 5 H
0 6 H
0 7 H
0 8 H
0 9 H
0 F H
1 0 H
1 1 H
1 2 H
1 3 H
1 4 H
1 5 H
1 6 H
1 7 H
1 F H
2 0 H
M P
A C C
P C L
T B L P
T B L H
S T A T U S
P A
P B
P C
G e n e r a l P u r p o s e
D a t a M e m o r y
( 3 2 B y t e s )
数据存储器
数据存储器
数据存储器 数据存储器
S p e c i a l P u r p o s e
D a t a M e m o r y
: U n u s e d
R e a d a s " 0 0 "
累加器
累加器
累加器 累加器
累加器(ACC)与算术逻辑单元(ALU)运算相联系。它对应于 RAM 的地址 05H,并能与立即数进
行操作,在存储器间的数据传送都必须经过累加器。
算术逻辑单元
算术逻辑单元 ———— ALU
算术逻辑单元 算术逻辑单元
算术逻辑单元(ALU )是执行 8 位算术、逻辑运算的电路,它提供有以下功能:
· 算术运算(ADD ,ADC ,SUB ,SBC,DAA)
· 逻辑运算(AND ,OR ,XOR ,CPL)
· 移位运算(RL ,RR ,RLC ,RRC)
· 递增和递减(INC ,DEC )
· 分支判断(SZ ,SNZ ,SIZ ,SDZ…)
ALU 不仅可以储存数据运算的结果,还会改变状态寄存器的值。
Rev. 2.20 7 2008-9-5
HT48RA0-2/ HT48CA0-2
状态寄存器
状态寄存器 ———— STATUS
状态寄存器 状态寄存器
状态寄存器(0AH )的宽度为8位,由零标志位(Z)、进位标志位(C)、辅助进位标志位(AC )、
溢出标志位(OV )、暂停模式标志位(PDF )、看门狗定时器溢出标志位(TO )组成。该寄存器所不仅记
录状态信息,而且还可控制运算顺序。
除了 TO 和 PDF 以外,状态寄存器中的位都可用指令来改变,这种情况与其它寄存器一样。任何写到
状态寄存器的数据不会改变 TO 或 PDF 标志位。但是与状态寄存器有关的运算会导致状态寄存器的变化。
系统上电,看门狗定时器溢出,执行 HALT 指令,或清除看门狗定时器都能改变 TO 和 PDF 标志位。 Z、
OV 、AC 和 C 标志位都反映了当前的运算状态。
另外,执行子程序调用时,状态寄存器的内容不会自动压入堆栈。如果状态寄存器的内容是重要的,
而且子程序会改变状态寄存器的内容,那么程序员必须事先将其保存好,以免被破坏。
位位位位 符号
符号
符号 符号
0 C
1 AC
2 Z
3 OV
4 PDF
5 TO
6~7
如果在加法运算中结果产生了进位,或在减法运算中结果不发生借位,那么 C
被置位;反之,C 被清除。它也可被一个带 循环进位指令而影响。
在加法运算中低四位产生了向高四位进位,或减法运算中低四位不发生从高
四位借位,AC 被置位;反之,AC 被清除。
算术运算或逻辑运算的结果为零则 Z 被置位;反之,Z 被清除。
如果运算结果向最高位进位,但最高位并不产生进位输出,那么 OV 被置位;
反之,OV 被清除。
系统上电或执行了 CLR WDT 指令,PDF 被清除。执行 HALT 指令 PDF 被置
位。
系统上电或执行了 CLR WDT 指令或执行了 HALT 指令,TO 被清除。WDT
定时溢出,TO 被置位。
— 未定义,读出为零
功功功功 能能能能
振荡电路
振荡电路
振荡电路 振荡电路
HT48RA0-2/HT48CA0-2 有两种振荡电路。
STATUS (0AH) 寄存器
寄存器
寄存器 寄存器
O S C 1
O S C 1
通过掩膜选项选择,HT48RA0-2/HT48CA0-2 可以选
择晶体振荡或 RC 振荡模式。两者都为产生系统时钟而设
计的。不管用哪种振荡器,其信号都支持系统时钟。在
HALT 模式下,系统时钟会停振,并忽略外部输入信号,
O S C 2
C r y s t a l O s c i l l a t o r
f
/ 4
S Y S
( N M O S o p e n
d r a i n o u t p u t )
O S C 2
R C O s c i l l a t o r
由此来节省功耗。
系统振荡器
系统振荡器
如果采用 RC 振荡器,那么在 VSS 与 OSC1 之间要接
系统振荡器 系统振荡器
一个外接电阻。其阻值范围为 51KΩ ~1MΩ 。在 OSC2 端
可获得系统时钟四分频信号,它可以用于同步系统外部逻辑。RC 振荡方式是一种低成本方案,但是振荡
频率会由于 V
、温度及芯片自身参量的漂移,而产生误差。因此,对振荡器要求精确度高的场合,RC
DD
振荡器是不适用的。
如果选用晶体振荡器,在 OSC1 与 OSC2 之间连接一个晶体,被用来提供晶体振荡器所要的反馈
(Feedback )和相位位移(Phase Shift )。除此以外,不再需要其他外部元件。另外,可在 OSC1 与 OSC2
之间接一个谐振器(Resonator ) 来取代晶体振荡器,用来得到参考频率,但是需要外接两个接地电容器。
Rev. 2.20 8 2008-9-5
HT48RA0-2/ HT48CA0-2
看门狗定时器
看门狗定时器
看门狗定时器 看门狗定时器
看门狗定时器(WDT )的时钟源是由指令时钟(系统时钟 4 分频)来提供的,时钟源通过分频器和预
分频器来设置不同的溢出时间。
WDT 溢出时间 =
这里 n=8 ~ 11 , 由掩膜选项来选择。
看门狗定时器是用来防止程序的不正常运行或是跳到未知或不希望去的地址,而导致不可预见的结
果。看门狗定时器可以被掩膜选项选项禁止。如 WDT 被禁止,所有与 WDT 有关的执行都导致一个空操
作,而 WDT 会失去保护的功能。在这种情况下,只能由外部逻辑来重新启动系统。
在正常运作下,WDT 溢出会使系统复位并置位 TO 位。有三种方法可以清除 WDT 的值:外部复位(低
电平输入到
端),用软件指令和 HALT 指令三种。有两组软件指令:一组是单条指令 CLR WDT ,另一
RES
组是二条指令组成 CLR WDT1 及 CLR WDT2 。这两组指令中,只能选取其中一种。由掩膜选项中的 CLR
WDT 次数选项决定。如果“CLR WDT”被选择(即 CLR WDLT 次数为 1),那么只要执行 CLR WDT 指令
就会清除 WDT 。在 CLR WDT1 和 CLR WDT2 被选的情况下,(即 CLR WDT 次数为 2 ),那么要交替执
行二条指令才会连续清除 WDT ,否则,WDT 会由于超时溢出而使系统复位。
C l o c k S o u r c e
( S y s t e m C l o c k / 4 )
F r e q u e n c y D i v i d e r
3 - b i t C o u n t e r
时钟源
n
C l e a r W D T
P r e s c a l l e r
( 8 - b i t )
C o d e O p t i o n
S e l e c t
C o d e
O p t i o n
看门狗定时器
看门狗定时器
看门狗定时器 看门狗定时器
W D T
T i m e - o u t
C l o c k S o u r c e
n
2
( n = 8 ~ 1 1 )
暂停模式
暂停模式 ———— HALT
暂停模式 暂停模式
暂停模式是由 HALT 指令来实现的,执行后情况如下:
· 系统振荡器关闭和停止 WDT 。
· RAM 及寄存器的内容保持不变。
· WDT 预分频器被清除。
· 所有的输入/ 输出端口都保持其原先状态。
· PDF 标志位被置位,TO 标志位被清除。
外部复位或 PB 口的下降沿信号,可使系统脱离暂停模式。外部复位能使系统初始化。测试 TO 和 PDF
状态后,系统复位的原因就可以被确定。PDF 标志位是由系统上电复位或执行 CLR WDT 指令被清除,
而它的置位是由于执行了 HALT 指令。如 WDT 产生溢出,会使 TO 标志位置位,还能产生唤醒使得程序
计数的 PC 和堆栈指针 SP 复位。其他状态都保持不变。
PB 端口的唤醒看作为正常运行的继续。PB 口的每一位都可以通过掩膜选项来单独设定为对系统的唤
醒。如果唤醒是来自于输入/输出口的信号变化,程序会重新继续执行下一条命令。
当唤醒事件发生时,要花 1024 个 t
(系统时钟周期)后,系统重新正常运行。这就是说,在唤醒后
sys
将插入了一个等待时间。
为了减小功耗,在进入 HALT 模式之前必须要小心处理输入/输出端口引脚。
Rev. 2.20 9 2008-9-5
HT48RA0-2/ HT48CA0-2
复复复复 位位位位
有三种方法可以产生复位:
· 在正常运行时期由
· 在 HALT 期间
RES
脚产生复位。
RES
脚产生复位。
· 正常运行时,WDT 溢出复位。
复位发生时,某些寄存器的内容会保持不变,大多数寄存器的
值会复位到初始化状态。通过测试 PDF 标志位和 TO 标志位,程
序能分辨不同的复位。
为了保证系统振荡器起振并稳定运行,系统复位(包括上电复
位、看门狗定时器溢出或由
端复位)或由暂停状态唤醒时,系
统启动定时器(SST)提供了一个额外的延迟时间,共 1024 个系统时
钟周期。
系统复位时,SST 会被加在复位延时中。由暂停模式唤醒也会
启动 SST 延迟,但是复位来自
引脚时,将没有 SST 延时。
RES
TO PDF
0 0
u u
0 1
1 u
注释:“u ”表示未变化。
电源上电复位
正常运作时由
由
唤醒暂停模式
正常运作时发生看门狗定时器超时
复位条件
复位条件
复位条件 复位条件
系统复位时各功能单元的状态如下所示:
程序计数器(PC)
000H
看门狗预分频器 清除
输入/输出端口 输入模式
堆栈指针 SP 指向栈顶
载波输出 低电平
H A L T
W D T
W D T
R E S
O S C 1
T i m e - o u t
R e s e t
S S T
1 0 - s t a g e
R i p p l e C o u n t e r
P o w e r - o n D e t e c t i o n
R e s e t
V D D
R E S
S S T T i m e - o u t
C h i p R e s e t
1 0 0 k
0 . 1mF
V
D D
W
1 0 k
W
V
D D
1 0 0 k
W
0 . 1mF
注意:大多数应用中使用基本复位电路
即可,如方案中外部嗓音或杂迅比较厉
害,就请选用高抗杂迅电路
R E S
B a s i c
R e s e t
C i r c u i t
复位电路
复位电路
复位电路 复位电路
发生复位
t
S S T
0 . 0 1mF
R E S
H i - n o i s e
R e s e t
C i r c u i t
复位时序
复位时序
复位电路结构
复位电路结构
Rev. 2.20 10 2008-9-5
复位电路结构 复位电路结构
复位时序 复位时序
有关寄存器的状态如下
有关寄存器的状态如下::::
有关寄存器的状态如下 有关寄存器的状态如下
寄存器
寄存器
寄存器 寄存器
上电复位
上电复位
上电复位 上电复位
正常运行期间
正常运行期间 暂停模式
正常运行期间 正常运行期间
WDT 超时溢出
超时溢出
超时溢出 超时溢出
((((正常工作
正常工作))))
正常工作 正常工作
端复位
端复位
端复位 端复位
RES
((((正常工作
正常工作))))
正常工作 正常工作
HT48RA0-2/ HT48CA0-2
暂停模式
暂停模式 暂停模式
端复位
端复位
端复位 端复位
RES
((((暂停模式
暂停模式))))
暂停模式 暂停模式
WDT 超时溢出
超时溢出
超时溢出 超时溢出
((((暂停模式
暂停模式))))*
暂停模式 暂停模式
ACC
注意: “ U”表示不变化。
“ X”表示不确定。
uuuu uuuu uuuu uuuu uuuu uuuu uuuu uuuu
载载载载 波波波波 ———— Carrier
HT48RA0-2/HT48CA0-2 提供一个载波输出口,其与 PC0 共用一个输入输出口。由掩膜选项决定是载
波输出(REM )或电平输出(PC0 )。在选择载波输出的情况下,设置 PC0= “0 ”来允许载波输出,设置
PC0= “1 ”来禁止载波输出,回到低电平状态。
载波的时钟源是由指令时钟(系统时钟 4 分频)来提供的,通过分频器的处理来产生各种不同的载波
频率。
载波频率=
时钟频率源
n
这里 m=2 或 3 ,n=0 ~ 3 是由掩膜选项选项来选择。
如果 m=2 ,那么载波输出的占空比是 1/2 ,如果 m=3 ,那么载波输出的占空比可以由掩膜选项决定为
1/2 或 1/3 。(n=0 例外)。
载波输出的占空比的详细的选择如下所示:
m x 2 n
2, 4, 8, 16
1/2
占空比
占空比
占空比 占空比
3 1/3
6, 12, 24 1/2 或 /3
载波频率选择例子如下表所示:
系统频率
系统频率 载波频率
系统频率 系统频率
455kHz
载波频率 占空比
载波频率 载波频率
37.92kHz
56.9kHz
占空比
占空比 占空比
1/3only 3
1/2only 2
m x 2 n
Rev. 2.20 11 2008-9-5