Datasheet HT48E30 Datasheet (HOLTEK) [zh]

Page 1
HT48E30
内置
内置
EEPROM
内置内置
盛群知识产权政策
盛群知识产权政策
盛群知识产权政策盛群知识产权政策
专利权
专利权
专利权专利权 盛群半导体公司在全球各地区已核准和申请中之专利权至少有 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  2006 by HOLTEK SEMICONDUCTOR INC.
规格书中所出现的信息在出版当时相信是正确的,然而盛群对于规格内容的使用不负责任。文中提到的 应用其目的仅仅是用来做说明,盛群不保证或不表示这些应用没有更深入的修改就能适用,也不推荐它 的产品使用在会由于故障或其它原因可能会对人身造成危害的地方。盛群产品不授权使用于救生、维生 器件或系统中做为关键器件。盛群拥有不事先通知而修改产品的权利,对于最新的信息,请参考我们的 网址 http://www.holtek.com.tw; http://www.holtek.com.cn
输入
输入/输出型八位
输入输入
输出型八位
输出型八位输出型八位
MTP
单片机单片机
都是盛群
Rev.1.50 1 2006-10-31
Page 2
2
技术相关信息
技术相关信息
技术相关信息技术相关信息
· 工具信息
· FAQs
· 应用范例 -HA0086S HT48E MCU 系列 1K 位 EEPROM Data Memory 的读写 - 使用汇编语言 -HA0087S HT48E MCU 系列 1K 位 EEPROM Data Memory 的读写 - 使用 C 语言 -HA0088S HT48E MCU 系列 2K 位 EEPROM Data Memory 的读写 - 使用汇编语言 -
HA0089S HT48E MCU
系列2K位
EEPROM Data Memory
的读写
使用C语言
-
特性
特性
特性特性
HT48E30
· 工作电压:
fsys = 4MHz :2.2V – 5.5V fsys = 8MHz :3.3V – 5.5V
· 低电压复位功能
· 最多可有 23 个双向输入/输出口
· 1 个与输入/输出共用引脚的外部中断输入
· 8位可编程定时/计数器,具有溢出中断和 级预分频器
· 内置晶体和 RC 振荡电路
· 看门狗定时器
· 1,000 次可擦/写 MTP 程序存储器
· 2048×14 程序存储器 ROM(MTP)
·
128×8
· 96×8 数据存储器 RAM
概述
概述
概述概述
HT48E30
拥有低功耗、I/O 口稳定性高、定时器功能、振荡选择、省电和唤醒功能、看门狗定时器、蜂鸣器 驱动、以及低价位等优势,使此款多功能芯片可以广泛地适用于各种应用,例如工业控制、消费类产 品、子系统控制器等。
8
数据存储器
是一款八位高性能精简指令集单片机,专为经济型多输入/输出控制的产品设计。
EEPROM
· 蜂鸣器驱动并支持
· HALT 和唤醒功能可降低功耗
· 4 层硬件堆栈
· 在 VDD=5V,系统时钟为 8MHz 时,指令周
期为 0.5 µs
· 位操作指令
· 查表指令,表格内容字长14位
· 63 条指令
· 106次可擦/写 EEPROM 数据存储器
· EEPROM 数据有效期>10 年
· 所有指令在 1 或 2 个指令周期内完成
· 在线烧写功能(ISP)
·
24/28-pin SKDIP/SOP
PFD
封装
Rev.1.50 2006-10-31
Page 3
3
方框图
方框图
方框图方框图
P r o g r a m
M e m o r y
P r o g r a m
C o u n t e r
S T A C K
4 L e v e l s
I N T / P G 0
I n t e r r u p t
C i r c u i t
I N T C
T M R 0
T M R 0 C
HT48E30
f
S Y S
T M R / P C 0
M U X
M
P r e s c a l e r U X
引脚图
引脚图
引脚图引脚图
O S C 2
I n s t r u c t i o n
R e g i s t e r
I n s t r u c t i o n
D e c o d e r
T i m i n g
G e n e r a t o r
O S C 1
R E S V D D V S S
P B 5
P B 4
P A 3
P A 2
P A 1
P A 0
P B 3
P B 2
P B 1 / B Z
P B 0 / B Z
V S S
P G 0 / I N T
2 4 S K D I P - A / S O P - A
M P
M U X
A L U
S h i f t e r
A C C
D a t a M e m o r y
E E P R O M
1
2
3
4
5
6
7
8
9
1 0
1 1
1 2
H T 4 8 E 3 0
P G 0
M
D A T A
U
M e m o r y
X
S T A T U S
P G 1 P G 2
E E C R
P B 6
2 4
P B 7
2 3
P A 4
2 2
P A 5
2 1
P A 6
2 0
P A 7
1 9
O S C 2
1 8
O S C 1
1 7
V D D
1 6
R E S
1 5
P C 2
1 4
P C 0 / T M R
1 3
W D T S
W D T P r e s c a l e r
P A C
P O R T A
P A
P B C
P B
P C C
P C
P G C
P G
P B 5
P B 4
P A 3
P A 2
P A 1
P A 0
P B 3
P B 2
P B 1 / B Z
P B 0 / B Z
V S S
P G 0 / I N T
P C 0 / T M R
P C 1
E N / D I S
W D T
P A 0 ~ P A 7
B Z / B Z
P O R T B
P O R T C
P O R T G
2 8 S K D I P - A / S O P - A
1
2
3
4
5
6
7
8
9
1 0
1 1
1 2
1 3
1 4
H T 4 8 E 3 0
P B 0 ~ P B 7
P C 0 ~ P C 5
P G 0
2 8
2 7
2 6
2 5
2 4
2 3
2 2
2 1
2 0
1 9
1 8
1 7
1 6
1 5
M
U X
P B 6
P B 7
P A 4
P A 5
P A 6
P A 7
O S C 2
O S C 1
V D D
R E S
P C 5
P C 4
P C 3
P C 2
f
/ 4
S Y S
W D T O S C
Rev.1.50 2006-10-31
Page 4
4
引脚说明
引脚说明
引脚说明引脚说明
引脚名称
引脚名称 输入输出
引脚名称引脚名称
PA0~PA7
PB0/BZ PB1/BZ
PB2~PB7
VSS — —
PG0/
INT
PC0/TMR PC1~PC5
RES
VDD — —
OSC1 OSC2
输入输出 掩膜选项
输入输出输入输出
输入/输出
斯密特触发输入
输入/输出
输入/输出
输入/输出
输入
输入 输出
晶体振荡或 RC
掩膜选项 说明
掩膜选项掩膜选项
上拉电阻*
唤醒功能
上拉电阻*
PB0 或 BZ PB1 或BZ
上拉电阻*
上拉电阻*
—
振荡
HT48E30
说明
说明说明 双向 8 位输入/输出口。每一位能被掩膜选项设置为唤 醒输入。软件指令确定 CMOS 输出,或带上拉电阻的 斯密特触发输入(由上拉电阻位选项确定)。 双向 8 位输入/输出口。软件指令确定 CMOS 输出,或 带上 拉 电阻 的斯 密特 触发输入( 由 上 拉电阻选项 确 定)。PB0 和 PB1 与 BZ 和BZ共用一个引脚。一旦
PB0 和 PB1 被选为蜂鸣器输出,输出信号来自内部 PFD 发生器(与定时/计数器共用)。
负电源,接地。 双向输入/输出口。软件指令确定 CMOS 输出,或带上 拉 电阻 的 斯 密 特 触 发 输 入 ( 由 上 拉电 阻 位 选 项 确 定)。外部中断和 PG0 共用一个引脚。外部中断输入 信号下降沿有效。 双向输入/输出口。软件指令确定 CMOS 输出,或带上 拉 电阻 的 斯 密 特 触 发 输 入 ( 由 上 拉电 阻 位 选 项 确 定)。定时器输入与 斯密特触发复位输入端,低电平有效。 正电源。
OSC1和OSC2
确定)提供系统时钟。在 RC 方式下 OSC2 是一个系统 时钟四分频的输出口。
采用RC振荡或晶体振荡(由掩膜选项
共用一个引脚。
PC0
注意: “*”所有输入/输出(PA、PB、PC、PG)的上拉电阻由一个选择位控制。
PA 端口的 CMOS 或斯密特触发选择也是以整个端口(8 位)为单位的。
极限参数
极限参数
极限参数极限参数
电源供应电压 …… VSS - 0.3V 至 Vss + 6.0V 储存温度 ………-50℃至 125℃ 端口输入电压 …… Vss - 0.3V 至 V 端口总灌电流 ………………………. 150mA 端口总源电流 ………. -100mA 总功耗 ……………………………. 500mW
注意: 这里只强调额定功率,超过极限参数所规定的范围将对芯片造成损害,无法预期芯片在上述标示范围外的工作状 态,而且若长期在标示范围外的条件下工作,可能影响芯片的可靠性。
+ 0.3V 工作温度 ……… -40℃至 85℃
DD
Rev.1.50 2006-10-31
Page 5
5
D.C.特性
特性 Ta=25℃
特性特性
测试条件
测试条件
符号
符号 参数
符号符号
VDD
I
DD1
I
DD2
I
DD3
I
STB1
I
STB2
V
VIH1
V
VIH2
V
LVR
IOL
IOH
RPH
工作电压
工作电流
(晶体振荡)
工作电流
(RC 振荡)
工作电流
(晶体振荡,RC 振荡)
静态电流
(看门狗打开)
静态电流
(看门狗关闭)
输入/输出口的低电平
IL1
输入电压, 输入/输出口的高电平 输入电压, 低 电 平 输 入 电 压
IL2
(
RES
高 电 平 输 入 电 压
(
RES
低电压复位
输入/输出口灌电流
输入/输出口源电流
上拉电阻
)
)
参数
参数参数
测试条件测试条件
VDD 条件
条件
条件条件
最小
最小 典型
最小最小
典型 最大
典型典型
最大 单位
最大最大
— fsys=4MHZ 2.2 — 5.5 V
— fsys=8MHZ 3.3 — 5.5 V 3V — 0.6 1.5 mA 5V 3V — 0.8 1.5 mA 5V
5V
3V — — 5 5V 3V — — 1 5V
—
— — 0.7VDD
— — 0 — 0.4V
— — 0.9VDD
—
无负载
Fsys=4MHZ
— 2 4 mA
无负载
fsys=4MHZ
无负载
fsys=8MHZ
— 2.5 4 mA
— 4 8 mA
无负载*
暂停模式
— — 10
无负载*
暂停模式
— — 2
— 0 — 0.3V
— VDD V
— VDD V
LVR 打开
2.7 3.0 3.3 V
DD
DD
3V VOL=0.1VDD 4 8 — mA 5V VOL=0.1VDD 10 20 — mA 3V VOH=0.9VDD -2 -4 — mA 5V VOH=0.9VDD -5 -10 — mA 3V — 20 60 100 5V — 10 30 50
HT48E30
单位
单位单位
A
µ
A
µ
A
µ
A
µ
V
V
KΩ K
Ω
注意:“*”所有的测试都参照 I/O 口被设置为输出并输出低电平的情况进行。
Rev.1.50 2006-10-31
Page 6
6
A.C.特性
特性 Ta=25℃
特性特性
测试条件
测试条件
符号
符号 参数
符号符号
f
SYS1
f
SYS2
f
TIMER
t
WDTOSC
t
WDT1
t
WDT2
t
RES
t
SST
t
INT
系统时钟(晶体振荡)
系统时钟(RC 振荡)
定时器输入频率(TMR)
看门狗振荡器周期
看门狗溢出周期(WDT
OSC)
看门狗溢出周期(系统时钟) - WDT 无预分频 - 外部复位低电平脉宽 - - 系统启动延时周期 - HALT 模式唤醒 - 中断脉冲宽度 - -
参数
参数参数
DD
V
— 2.2V~5.5V 400 — 3.3V~5.5V 400 — 2.2V~5.5V 400 — 3.3V~5.5V 400 — 2.2V~5.5V 0 — 4000 kH — 3.3V~5.5V 0 — 8000 kHZ
3V — 45 90 180 5V — 32 65 130 µs 3V 11 23 46 ms 5V
测试条件测试条件
条件
条件
条件条件
WDT 无预分频
最小
最小 典型
最小最小
典型 最大
典型典型
— 4000 kH — 8000 kHZ — 4000 kH — 8000 kHZ
8 17 33 ms
1024
1
- - µ
1024
1
- - µ
HT48E30
t
t
单单单单 位位位位
µ
SYS
SYS
Z
Z
Z
s
s
s
最大
最大最大
-
-
系统功能说明
系统功能说明
系统功能说明系统功能说明
指令系统
指令系统
指令系统指令系统
HT48E30 系统时钟由晶体振荡器或 RC 振荡器产生。系统内部对此频率进行四分频,产生四个不重
叠的时钟周期。一个指令周期包括四个系统时钟周期。
S y s t e m C l o c k
O S C 2 ( R C o n l y )
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 )
指令执行时序
指令执行时序
指令执行时序指令执行时序
指令读取与执行是以流水线方式来进行的。这种方式允许在一个指令周期进行读取指令操作,而在 下一个指令周期里进行解码与执行该指令。这种流水线方式能在一个指令周期里有效地执行一个指令。 但是,如果指令是要改变程序计数器,就需要花两个指令周期来完成这一条指令。
Rev.1.50 2006-10-31
Page 7
HT48E30
7
程序计数器
程序计数器((((Program Counter — PC))))
程序计数器程序计数器
程序计数器控制存放在程序存储器中的要被执行的指令序列。程序计数器可寻址程序存储器的所有 地址。
通过访问一个程序存储单元来取出指令代码后,PC的值便会加1。然后程序计数器便会指向下一条 指令代码所在的程序存储单元。
当执行一条跳转指令,条件跳转指令,装载 PCL 寄存器,子程序调用,初始复位,内部中断,外部 中断,或从一个子程序返回,PC 会通过装载相应的地址来执行程序转移。
通过指令实现条件跳转,一旦条件满足,那么在当前指令执行期间取出的下一条指令会被放弃,而 替代它的是一条空 令。程序计数器的低位字节(
指令周期(dummy cycle)
PCL;06H
这种跳转只能在程序存储器的当前页范围内。
当一个控制转移发生时,系统也会插入一个空指令周期。
模模模模 式式式式
初始化复位 外部中断 定时/计数器 条件跳转 装载 PCL 跳转,子程序调用 从子程序返回
程序计数器 *10 *9 *8 *7 *6 *5 *4 *3 *2 *1 *0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 0 0 Program Counter+2 *10 *9 *8 @7 @6 @5 @4 @3 @2 @1 @0 #10 #9 #8 #7 #6 #5 #4 #3 #2 #1 #0 S10 S9 S8 S7 S6 S5 S4 S3 S2 S1 S0
来获取正确的指令,接着就执行这条指令。否则就执行下一条指 )是可读写的寄存器。将数据赋值到
程序计数器
程序计数器程序计数器
会执行一个短跳转。
PCL
程序计数器
程序计数器
程序计数器程序计数器
注意:*10 ~ *0 :程序计数器位 S10 ~ S0 :堆栈寄存器位
#10 ~ #0
在线
在线烧写
烧写((((In System Programing))))
在线在线
烧写烧写
在线烧写允许对实际应用电路板上
:指令代码位
@7 ~ @0 :PCL位
HT48EXX
单片机进行烧写和重复烧写操作,这样有利于使用者 在应用开发实验过程中节省时间和成本。ISP(在线烧写)使用 3 线接口与 HT48EXX 单片机进行连接, 对芯片内部的程序存储器和 EEPROM 数据存储器进行重复烧写操作。
引脚名称
引脚名称
引脚名称引脚名称
PA0 SDATA PA4 SCLK
RES RESET
VDD VDD 电源
VSS VSS
功能
功能 说明
功能功能
说明
说明说明 串行数据输入/输出 串行时钟输入 复位
地
ISP 引脚定义
引脚定义
引脚定义引脚定义
Rev.1.50 2006-10-31
Page 8
HT48E30
8
程序存储器
程序存储器((((Program Memory — ROM))))
程序存储器程序存储器
程序存储器被用来存放要执行的指令代码。还包括数据、中断向量。一共为 2048×14 位,可以由程
序计数器或表格指针来寻址。
在程序存储器中某几个地址被保留作为特殊用途。
· 地址 000H 此地址保留给程序初始化之用。当系统复位时,程序会从 000H 地址开始执行。
· 地址 004H 该地址保留给外部中断服务使用。当中断是开放的,且堆栈又未满,则一旦
发,就能产生中断,程序会从 004H 地址开始执行外部中断服务程序。
· 地址
008H
该地址保留给定时/计数器中断服务使用。当中断是开放的,且堆栈又未满,则一旦定时/计数器发
生溢出时,就能产生中断,程序会从 008H 地址开始执行中断服务程序。
· 表格区 程序存储器内的任何地址都可被用来作为查表使用。查表指令为 TABRDC [m] 与 TABRDL [m]。
TABRDC [m]是查表当前页的数据 [ 1 页=256 个字 ( word )]。TABRDL [m]是查表最后一页的数据。[m]
为数据存放的地址。在执行
TABRDC [m]
的高位字节传送到 TBLH(08H)。只有表格中的低位字节被送到目标地址中,而表格中的高位字节的其 它位被传送到 TBLH 的低位部分,未用到的位为不定值。TBLH 为只读寄存器。而表格指针(TBLP;
07H)是可以读写的寄存器,用来指明表格地址。在访问表格以前,通过对 TBLP 寄存器赋值来指明表
格地址。TBLH 只能读出而不能存储。如果主程序和 ISR(中断服务程序)二者都使用查表指令,那么 在主程序中的 TBLH 的内容可能会被 ISR 中的查表指令改变而产生错误。换句话说,应该避免在主程序 和
(中断服务程序)中同时使用查表指令。但是,如果主程序和
ISR
用查表指令,那么中断应该在查表指令前被禁止,直到 TBLH 被备份好。查表指令要花两个指令周期来 完成这一条指令的操作。按照用户的需要,这些区域可以作为正常的程序存储器来使用。
0 0 0 H
0 0 4 H
0 0 8 H
端被下降沿触发触
INT
指令后,将会传送当前页的一个字的低位字节到
(中断服务程序)二者都必需使
ISR
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
E x t e r n a l I n t e r r u p t S u b r o u t i n e
T i m e r / E v e n t C o u n t e r
I n t e r r u p t S u b r o u t i n e
,而这个字
[m]
P r o g r a m
n 0 0 H
n F F H
7 0 0 H
7 F F H
N o t e : n r a n g e s f r o m 0 t o 7
L o o k - u p T a b l e ( 2 5 6 w o r d s )
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
程序存储器
程序存储器
程序存储器程序存储器
M e m o r y
表格地址
表格地址
指令
指令
指令指令
*10 *9 *8 *7 *6 *5 *4 *3 *2 *1 *0
表格地址表格地址
TABRDC [m] P10 P9 P8 @7 @6 @5 @4 @3 @2 @1 @0 TABRDL [m] 1 1 1 @7 @6 @5 @4 @3 @2 @1 @0
表格区
表格区
表格区表格区
注意:*10 ~ *0 :表格地址 P10~P8 :当前程序计数器
@7 ~ @0 :表格指针
Rev.1.50 2006-10-31
Page 9
HT48E30
9
堆栈寄存器
堆栈寄存器((((Stack Register — STACK))))
堆栈寄存器堆栈寄存器
堆栈寄存器(STACK)是一个用来保存 PC 值的特殊存储空间。堆栈有 4 级组成,堆栈寄存器既不
是数据存储器的一部分,也不是程序存储器的一部分,而且它既不能读出,也不能写入。任何一级堆栈 的使用是由堆栈指针(SP)来确定。堆栈指针也不能读出与写入。一旦发生子程序调用或中断响应时, 程序 计 数 器(PC )的值会被压入堆栈。 在 子程序调用结束或从中断返回时, 通过执行一条 返回指令 (RET 或 RETI),堆栈将原先压入堆栈的内容弹出,重新装入程序计数器中。在系统复位后,堆栈指针 会指向堆栈顶部。
如果堆栈满了,并且发生了不可屏蔽的中断,那么中断请求标志将会被记录下来,但是,该中断 的响应还是会被禁止,直到堆栈指针(由 RET 或 RETI)发生递减时,中断才会被响应。这个功能能防 止 堆 栈 溢 出, 使得 程序 员 易于 使用这 种结 构 。同 样 地, 堆栈已 满, 接 着又 执 行一 个子 程 序调 用 (CALL),那么堆栈会产生溢出,而使首先进入堆栈 的内容将会丢失。只有最后的 4 个返回地址会被保留 着。
数据存储器
数据存储器((((Data Memory — RAM))))
数据存储器数据存储器
数据存储器由
115×8
位组成。它可分成两个功能 组:特殊功能寄存器和通用数据存储区 96×8 位。这两 个功能组的大部分单元可以读写,而某些单元只能读 出,不能写入。
20H 以前以前的未用到的单元都被保留为将来进
一步扩展使用。读取这些被保留单元的值,都将返回
。通用数据存储器地址
00H
20H-7FH
控制信息使用。
所有的 RAM 区单元都能直接执行算术,逻辑,
递增,递减和移位等运算。除了某些特殊的位以外,
RAM 中的每一位都可以由 SET[m].i 和 CLR[m].i
指令来置位和复位。它们都可通过存储器指针寄存器 (MP;
01H)
间接寻址来存取。
EEPROM
器的控制寄存器在 BANK1 的[40H]单元。
间接寻址寄存器
间接寻址寄存器((((Indirect Addressing Register))))
间接寻址寄存器间接寻址寄存器
地址00H和02H是作为间接寻址寄存器。它们没有
实际的物理空间。任何对[00H] 和[02H]的读/写操作, 都会访问由
MP0(01H)和MP1(03H)
所指向的 元。间接地读取[00H]或[02H],将会返回00H,而间接 地写入[00H]或[02H],则不会产生任何结果。间接寻 址寄存器之间不支持数据传送功能。间接寻址指针
MP0和MP1的宽度都是7位,它们与间接寻址寄存器相
结合用来间接访问RAM。MP0只能应用于数据存储区 的BANK0,而MP1能应用于数据存储区的BANK0和
BANK1。
作为程序数据和
数据存储
单
RAM
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
0 0 H
0 1 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 1
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 A H
0 B H
0 C H
0 D H
0 E 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 8 H
1 9 H
1 A H
1 B H
1 C H
1 D H
1 E H
1 F H 2 0 H
7 F H
G e n e r a l P u r p o s e
D a t a M e m o r y
M P 0
M P 1
B P
A C C
P C L
T B L P
T B L H
W D T S
S T A T U S
I N T C
T M R
T M R C
S p e c i a l P u r p o s e D a t a M e m o r y
P A
P A C
P B
P B C
P C
P C C
: U n u s e d
P G
P G C
( 9 6 B y t e s )
B a n k 0 B a n k 1
R e a d a s " 0 0 "
4 0 H
E E C R
数据存储器
数据存储器
数据存储器数据存储器
Rev.1.50 2006-10-31
Page 10
HT48E30
10
累加器
累加器((((Accumulator))))
累加器累加器
累加器(ACC)与算术逻辑单元(ALU)紧密联系。它对应于 RAM 的地址 05H,并能与立即数进
行操作,在存储器间的数据传送都必须经过累加器。
算术逻辑单元
算术逻辑单元((((
算术逻辑单元算术逻辑单元
算术逻辑单元是执行 8 位算术逻辑运算的电路。它提供如下的功能:
· 算术运算 ( ADD,ADC,SUB,SBC,DAA )
· 逻辑运算 ( AND,OR,XOR,CPL )
· 移位运算 ( RL,RR,RLC,RRC )
· 递增和递减运算
· 分支跳转 ( SZ,SNZ,SIZ,SDZ 等)
算术逻辑单元 ALU 不仅会保存运算的结果而且会改变状态寄存器。
状态寄存器
状态寄存器((((Status Register — STATUS))))
状态寄存器状态寄存器
8位的状态寄存器(0AH),由零标志位(Z),进位标志位(C),辅助进位标志位(AC),溢出标志位
,暂停标志位
(OV)
运算顺序。
除了 TO 和 PDF 以外,状态寄存器中的位都可用指令来改变,这种情况与其它寄存器一样。任何写 到状态寄存器的数据不会改变 TO 或 PDF 标志位。但是与状态寄存器有关的运算会导致状态寄存器的改 变。系统上电,看门狗定时器溢出或执行“CLR WDT”或“HALT”指令,能改变看门狗定时器溢出标志 位(TO)。系统上电,或执行“CLR WDT”或“HALT”指令,能改变暂停标志位(PDF)。
Z,OV,AC和C
Arithmetic and logic unit — ALU
位位位位 符号
0 C
1 AC
2 Z
3 OV
4 PDF
5 TO
6 — 7 —
))))
( INC,DEC )
,看门狗定时器溢出标志位
(PDF)
标志位都反映了当前的运算状态。
符号 功功功功 能能能能
符号符号
在加法运算中结果产生了进位或在减法运算中结果不产生借位,那么 C 被置位;反之,C被清零。它也可被一个循环移位指令而影响。 在加法运算中低四位产生了进位或减法运算中在低四位不产生借位,
被置位;反之,AC被清零。
AC
算术运算或逻辑运算的结果为零则 Z 被置位;反之,Z 被清零。 如果运算结果向最高位进位,但最高位并不产生进位输出,那么 OV 被置位;反之,OV 被清零。 系统上电或执行了 CLR WDT 指令,PDF 被清零。执行 HALT 指令
PDF 被置位。
系统上电或执行了 CLR WDT 指令或 HALT 指令,TO 被清零。WDT 溢出,TO 被置位。 未定义,读出为零 未定义,读出为零
组成。该寄存器不仅记录状态信息,而且还控制
(TO)
状态寄存器
状态寄存器
状态寄存器状态寄存器
另外,在进入中断子程序或执行子程序调用时,状态寄存器的内容不会自动压入堆栈。如果状态寄 存器的内容是重要的,而且子程序会改变状态寄存器的内容,那么程序员必须事先将其保存好,以免被 破坏。
Rev.1.50 2006-10-31
Status
((((
0AH
))))
Page 11
HT48E30
11
中中中中 断断断断((((Interrupt))))
单片机提供一个外部中断和内部定时器/计数器中断。中断控制寄存器(INTC;0BH)包含了中断控 制位,用来设置中断允许/禁止及中断请求标志。
一旦有中断子程序被服务,所有其它的中断将被禁止(通过清零 套。这时如有其它中断请求发生,这个中断请求的标志会被记录下来。如果在一个中断服务程序中有另 一个中断需要服务的话,程序员可以设置 EMI 位及 INTC 所对应的位来允许中断嵌套服务。如果堆栈已 满,该中断请求将不会被响应。即使相关的中断被允许,也要到堆栈指针发生递减时才会响应。如果需 要立即得到中断服务,则必须避免让堆栈饱和。
所有 的 中 断都具有唤醒功 能。当一个中断被服务时, 会产生一个控制传送 :通过将 程序计数器 (PC)压入堆栈,然后转移到中断服务程序的入口。只有程序计数器(PC)的内容能压入堆栈。如果寄 存器和状态寄存器的内容会被中断服务程序改变,从而破坏主程序的预定控制,那么程序员必须事先将 这些数据保存起来。
外部中断是由 INT 脚上的电平由高到低的变化触发的,相关的中断请求位(EIF,INTC 的第 4 位) 被置位。当中断允许,堆栈也没有满,一个外部中断触发时,将会产生地址 04H 的子程序调用。中断请 求标志(EIF)位和 EMI 位将也会被清零来禁止中断的嵌套。
内部定时/计数器中断发生时,会设置定时/计数器中断请求标志位(TF,INTC 的第五位),中断的 请求是由定时器溢出产生的。当中断允许,堆栈又未满,并且 TF 已被置位,就会产生地址 08H 的子程 序调用。该中断请求标志位(TF)被复位并且 EMI 位将被清零,以便禁止中断的嵌套。
单片机在执行中断子程序期间,其他的中断响应会被暂停,直到 关的中断控制位都被置为 1(堆栈未满时)。若要从中断子程序返回时,只要执行 RET 或 RETI 指令即 可。RETI 指令将会自动置位 EMI 位来允许中断服务,而 RET 则不能自动置位 EMI。
如果中断在二个连续的 T2 脉冲的上升沿间发生,如果中断响应被允许的话,那么在二个 T2 脉冲 后,该中断会被服务。如果同时发生中断服务请求,那么下列表中列出了中断服务优先等级。这种优先 级也可以通过 EMI 位的复位来屏蔽。
一旦中断请求标志位(EEI,ETI)被置位,它们将在 INTC 中被保留下来,直到相关的中断被服务 或由软件指令来清零。建议不要在中断子程序中使用 的控制序列,而中断经常随机发生或某一个确定的应用程序可能要求立即服务。基于上述情况,如果只 剩下一个堆栈,若此时中断不能很好地被控制,而且在这个中断服务程序中又执行了 CALL 子程序调 用,则会造成堆栈溢出而破坏原先的控制序列。
位)。这种机制能防止中断嵌
EMI
位位位位 符号
0 EMI 1 EEI 2 ETI 3 — 4 EIF 5 TF 定时 6 — 未使用位,读出为零 7 —
NO
a 外部中断 1 04H b
符号 功功功功 能能能能
符号符号
主中断控制位(1=允许,0=禁止) 外部中断控制位(1=允许,0=禁止) 定时/计数器中断控制位(1=允许,0=禁止) 未使用位,读出为零 外部中断请求标志位(1=有, 0=无)
计数器中断请求位(1=有,
/
未使用位,读出为零
中断控制寄存器
中断控制寄存器 INTC((((0BH))))
中断控制寄存器中断控制寄存器
中中中中
断断断断
源源源源
定时/计数器溢出
优优优优 先先先先 级级级级
“CALL”
2 08H
指令来调用子程序,因为它可能会破坏原来
0=无)
指令被执行或是
RETI
中断
中断
中断中断
位和相
EMI
Rev.1.50 2006-10-31
Page 12
HT48E30
12
系统振荡器
系统振荡器
V
振荡器
振荡器((((Oscillator Configuration))))
振荡器振荡器
HT48E30 有 2 种振荡电路。这 2 种振荡器都是针对系统时钟
而设计的,它们是外部 RC 振荡器和外部晶体振荡器,可由掩膜选 项设置。不管所选的是哪一种振荡器,其信号都可以支持系统的时 钟。进入暂停模式会使系统时钟工作停止。进入暂停模式还可以忽 视外部信号的,以降低功耗。
O S C 1
O S C 2
C r y s t a l O s c i l l a t o r R C O s c i l l a t o r
4 7 0 p F
f
N M O S O p e n D r a i n
如果使用 RC 型振荡器,在 OSC1 和 VDD 之间需要一个外部 电阻,其阻值范围为 24kΩ 至 1MΩ。在 OSC2 端可获得系统时钟四 分频信号,它可用于同步外部逻辑电路。RC 型振荡方式是一种低成本的方式,可是,振荡频率会随着
、温度和制造漂移而不同。因此,在用于需要非常精确振荡频率的计时操作场合,我们并不建议使
VDD
用 RC 型振荡器。
如果选用的是晶体振荡器,那么在 OSC1 和 OSC2 之间需要连接一个晶体,用来提供晶体振荡器所 需要的反馈和相移。另外,在 OSC1 和 OSC2 之间还可以用谐振器代替晶体振荡器,来产生系统时钟, 但是在 OSC1 和 OSC2 需要多连接两个电容器至地。
WDT 振荡器是 IC 内部自由振荡的 RC 型振荡器,不需要任何外部元件。即使在系统进入暂停模
式,系统时钟被停止,但这个RC振荡器仍会运作。(其振荡周期大约为
65µs/5V
)。如欲节省电源,可
在掩膜选项中关闭 WDT 振荡器。
D D
O S C 1
/ 4
S Y S
O S C 2
Rev.1.50 2006-10-31
Page 13
HT48E30
13
1:8
1:16
1:32
看门狗定时器
看门狗定时器((((Watchdog Timer — WDT))))
看门狗定时器看门狗定时器
WDT 的时钟源是由一个专用的 RC 振荡器(WDT 振荡器)或是由指令周期(系统时钟 4 分频)来
实现的,由掩膜选项来决定的。WDT 是用来防止程序不正常运行或是跳到未知或不希望去的地址,而导 致不可预见的结果。 是空操作。
如果设置了内部 WDT 振荡器(以 65 级)来产生大约 18.6ms/5V 的溢出时间,这个溢出时间会因为温度,VDD,以及芯片参数的变化而变 化。如果启动 WDT 的预分频器,则可实现更长的溢出时间。写数据到 WS2,WS1,WS0 (WDTS 的 2、1、
0 位)会产生不同的溢出时间,举例来说,如果 WS2,WS1,WS0 的值都为 1,其分频级数最大,为 1:
,溢出时间最长约
128 WDT 振荡器一样。但当在 HALT 状态时,来源于指令时钟的 WDT 会在暂停模式时停止计数并失去保护
功能。在这种情况下,只能由外部逻辑来重新启动系统。WDTS 的高四位及其第 3 位保留给用户定义标 志来使用,程序员可以利用这些标志来指示某些特殊的状态。
可以被掩膜选项禁止。如果
WDT
2.4s/5V
S y s t e m C l o c k / 4
。如果
W D T O S C
WDT
定时器被禁止,所有与
WDT
s/5V 为周期的 RC 振荡器)的话,WDT 的值会先除以 256(8
µ
被禁止,那么
的时钟来源可来自指令时钟,其运作与
WDT
WDT
有关的操作都
W D T P r e s c a l e r
O p t i o n S e l e c t
8 - b i t C o u n t e r
7 - b i t C o u n t e r
8 - t o - 1 M U X
W S 0 ~ W S 2
看门狗定时器
看门狗定时器
看门狗定时器看门狗定时器
W D T T i m e - o u t
如果单片机工作在干扰很大的环境中,那么强烈建议使用片内 RC 振荡器(WDT OSC),因为
HALT 模式会使系统时钟终止运作。
在正常运作下,WDT 溢出会使系统复位并设置 TO 状态位。但在 HALT 模式下,溢出只产生一个
“热复位”,只能使 PC 程序计数器和堆栈指针 SP 复位到零。要清除 WDT 的值(包括 WDT 预分频器)
可以有三种方法:外部复位(低电平输入到 RES 端),用软件指令和 HALT 指令三种。软件指令由
CLR WDT
和另一组指令
CLR WDT1及CLR WDT2
组成。这两组指令中,只能选取其中一种。选择的 方式由掩膜选项的 CLR WDT 次数选项决定。如果“CLR WDT”被选择(即 CLR WDT 次数为 1),那么 只要执行 CLR WDT 指令就会清除 WDT。在 CLR WDT1 和 CLR WDT2 被选择的情况下(即 CLR WDT 次数为 2),那么要执行二条指令才会清除 WDT。否则,WDT 会由于溢出而使系统复位。
WS2
0 0 0 0 0 1
0 1 0
WS1 WSO 分频率
分频率
分频率分频率
1:1 1:2 1:4
0 1 1 1 0 0 1 0 1 1 1 0
1:64
1 1 1 1:128
看门狗定时器预置寄存器
看门狗定时器预置寄存器 WDTS((((09H))))
看门狗定时器预置寄存器看门狗定时器预置寄存器
Rev.1.50 2006-10-31
Page 14
HT48E30
14
暂停模式
暂停模式((((Power Down Operation — HALT))))
暂停模式暂停模式
暂停模式是由 HALT 指令来实现的,产生如下结果:
· 关闭系统振荡器,但 WDT 振荡器继续工作(如果 WDT 时钟来源是 WDT 振荡器)。
·
· WDT 被被清除并再次重新计数(如果 WDT 时钟来源是 WDT 振荡器)。
· 所有的输入/输出口都保持其原先状态。
· PDF 标志位被置位,TO 标志位被清零。
由于外部复位、中断、外部输入一个下降沿的信号到 PA 口或 WDT 溢出,可使系统脱离暂停状
态。外部复位能使系统初始化而 WDT 溢出使系统“热复位”。测试 TO 和 PDF 状态后,系统复位的原因 就可以被确定。 了 HALT 指令。如果 WDT 产生溢出,会使 TO 标志位置位,还能产生唤醒使得程序计数的 PC 和堆栈指 针 SP 复位。其他都保持原状态。
PA 口的唤醒和中断方式被看作为正常运行。PA 口的每一位都可以通过掩膜选项来单独设定为对系
统的唤醒。如果唤醒是来自于输入/输出口的信号变化,程序会重新继续执行下一条命令。如果唤醒是来 自于中断,那么有两种情况可能发生:如果相关的中断被禁止或中断是允许的,但堆栈已满,那么程序 将继续执行下条指令,如果中断允许并且堆栈未满,那么这个中断响应就发生了。如果在进入 式以前,中断请求标志位被置“1”,那么相关的中断唤醒功能被禁止。一旦唤醒事件发生,要花 1024tsys (系统时钟周期),系统重新正常运行。换句话说,在唤醒后被插入了一个等待时间。如果唤醒是来自 于中断响应,那么实际的中断程序执行就被延迟了一个或一个以上的周期。但是如果唤醒导致下一条指 令执行,那么在一个等待周期结束后指令就立即被执行。
为了省电,在进入 HALT 模式之前必须要小心处理输入/输出口状态。
及寄存器的内容保持不变。
RAM
标志位是由系统上电复位和执行
PDF
CLR WDT
指令被清除,而它的置位是由于执行
HALT
模
Rev.1.50 2006-10-31
Page 15
HT48E30
15
复位
复位((((Reset))))
复位复位
V
有三种方法可以产生复位:
· 在正常运行时期由
· 在 HALT 期间
· 正常运行时,
RES
WDT
脚产生复位。
RES
脚产生复位。
溢出复位。
在 HALT 期间 WDT 溢出是不同于其它的复位操作条件,因为它可执行
“热复位”,结果只能使程序计数器 PC 和堆栈指针 SP 复位,而别的寄存器均保
持原来的状态。在其他复位条件下,某些寄存器保持不变。当复位条件被满足 时,极大多数的寄存器被复位到“初始状态”,通过测试 PDF 标志位和 TO 标志 位,程序能分辨不同的系统复位。
TO PDF
0 0 电源上电复位
u u
0 1
1 u 1 1
注释:“u”表示未变化。
正常运作时由
RES
正常运作时发生看门狗定时器超时 由看门狗定时器唤醒暂停模式
复复复复 位位位位 条条条条 件件件件
复位
RES
时唤醒暂停模式
为保证系统振荡器起振并稳定运行,那么 SST(系统启动定时器)当系统复位(上电,WDT 定时
溢出或
)或从 HALT 状态被唤醒时,提供额外延迟 1024 个系统时钟脉冲。
RES
H A L T
W D T
D D
0 . 0 1mF *
1 0 0 k
W
1 0 k
W
0 . 1mF *
复位电路
复位电路
复位电路复位电路
注意:“*”为了避免 噪声干扰,连接 脚的线应尽量短
W a r m R e s e t
R E S
RES
引
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
R E S
S S T
t
S S T
O S C 1
1 0 - b i t R i p p l e
C o u n t e r
S y s t e m R e s e t
C o l d R e s e t
复位时序
复位时序
复位时序复位时序
复位电路结构
复位电路结构
复位电路结构复位电路结构
当系统复位时,SST 延迟被加到复位周期中。任何来自 HALT 的唤醒都将允许 SST 延迟。 系统复位时各功能单元的状态如下所示:
程序计数器(PC) 中断
000H
禁止 预分频器 清除 看门狗定时器 清除,复位后看门狗定时器开始计数 定时/计数器 0/1 关闭 输入/输出口 输入模式 堆栈指针 SP 指向堆栈顶端
Rev.1.50 2006-10-31
Page 16
16
有关寄存器的状态如下
有关寄存器的状态如下::::
有关寄存器的状态如下有关寄存器的状态如下
正常运行期间
寄存器
寄存器 上电复位
寄存器寄存器
MP0 MP1
上电复位
上电复位上电复位
-xxx xxxx
-xxx xxxx
正常运行期间
正常运行期间正常运行期间
WDT 溢出
溢出
溢出溢出
-uuu uuuu -uuu uuuu -uuu uuuu -uuu uuuu
RES
端复位
端复位
端复位端复位
RES
-uuu uuuu -uuu uuuu -uuu uuuu -uuu uuuu
暂停模式
暂停模式
暂停模式暂停模式
端复位
端复位
端复位端复位
BP 0000 0000 0000 0000 0000 0000 0000 0000 uuuu uuuu ACC Prgram Counter TBLP TBLH
xxxx xxxx
uuuu uuuu uuuu uuuu uuuu uuuu uuuu uuuu
000H 000H 000H 000H 000H
xxxx xxxx xxxx xxxx
uuuu uuuu uuuu uuuu uuuu uuuu uuuu uuuu
xxuu uuuu xxuu uuuu xxuu uuuu xxuu uuuu
WDTS 0000 0111 0000 0111 0000 0111 0000 0111 uuuu uuuu STATUS
--00
--lu uuuu --uu uuuu --01 uuuu --11 uuuu
xxxx
INTC --00 0000 --00 0000 --00 0000 --00 0000 --uu uuuu TMR
xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx
TMRC 00-0 1000 00-0 1000 00-0 1000 00-0 1000 uu-u uuuu PA 1111 1111 1111 1111 1111 1111 1111 1111 uuuu uuuu PAC 1111 1111 1111 1111 1111 1111 1111 1111 uuuu uuuu PB 1111 1111 1111 1111 1111 1111 1111 1111 uuuu uuuu PBC 1111 1111 1111 1111 1111 1111 1111 1111 uuuu uuuu PC --11 1111 --11 1111 --11 1111 --11 1111 --uu uuuu PCC --11 1111 --11 1111 --11 1111 --11 1111 --uu uuuu PG ---- ---1 ---- ---1 ---- ---1 ---- ---1 ---- ---u PGC ---- ---1 ---- ---1 ---- ---1 ---- ---1 ---- ---u EECR 1000 ---- 1000 ---- 1000 ---- 1000 ---- uuuu ----
注意:“*”表示“热复位。
“U” “×”表示不确定。
表示不变化。
HT48E30
WDT 溢出
溢出*
溢出溢出
uuuu uuuu
Rev.1.50 2006-10-31
Page 17
HT48E30
17
定时
定时/计数器
计数器((((Timer/Event Counter))))
定时定时
计数器计数器
这个单片机提供一个定时/计数器。定时/计数器包含一个 8 位可编程的向上计数的计数器,时钟可以来自
外部的时钟源或是系统时钟。
如果采用内部系统时钟,时钟源来自系统时钟或由掩膜选项设定。在采用外部时钟输入的情况下,
允许用户计量外部事件、测量时间间隔或脉冲宽度、或产生一个精确的时基信号。
该定时/计数器使用外部时钟或内部时钟可以产生PFD信号,PFD信号频率可由等式f
计算。
( 1 / 2 ~ 1 / 2 5 6 )
f
S Y S
8 - s t a g e P r e s c a l e r
8 - 1 M U X
P S C 2 ~ P S C 0
T M R
/ [2×(256-N)]
INT
f
I N T
T M 1 T M 0
T E
T i m e r / E v e n t C o u n t e r
P r e l o a d R e g i s t e r
D a t a B u s
R e l o a d
T i m e r / E v e n t
C o u n t e r
1 / 2
O v e r f l o w t o I n t e r r u p t
B Z
B Z
T O N
T M 1 T M 0
P u l s e W i d t h M e a s u r e m e n t M o d e C o n t r o l
定时
定时/计数器
定时定时
计数器
计数器计数器
有两个寄存器与定时/计数器相关联,即 TMR([0DH])和 TMRC([0EH])。有两个物理寄存器对 应 TMR 的位置。写入 TMR 会将初始值装入到定时/计数器的预置寄存器中,而读 TMR 则会获得定时/计 数器的内容。TMRC 是定时/计数器控制寄存器。
TM0 和 TM1 位定义操作模式。外部事件计数模式用来记录外部事件,这意味着时钟来自外部 TMR
引脚。定时器模式是作为一个普通的定时器功能,时钟源来自 f 外部引脚
上的高电平或低电平的宽度。计数是基于
TMR
fINT
时钟。
时钟。脉冲宽度测量模式能用来计算
INT
在外部事件计数或定时器模式中,一旦定时/计数器开始计数,它将会从当前定时/计数器中的数值开 始计数到 FFH。一旦产生溢出,计数器会从定时/计数器预置寄存器重新装载并且同时产生相应的中断请 求状态位(TF ;INTC 的第 5 位)。
在脉冲宽度测量中,将 TON 和 TE 置为“1”,如果 TMR 接收到从低到高的电平跳变(或从高到低的 变化,如果 TE 位被清零),就开始计数直到 TMR 返回到原来的电平并且复位 TON 位。测量的结果被 保留在定时/计数器中,甚至电平跳变再一次发生也不会改变。换句话说,一次只能测量一个周期。直到
TON 再次被置位,只要再接到跳变信号,那么测量过程会再次执行。要注意在这个操作模式中,定时/计
数器的启动计数不是根据逻辑电平,而是依据信号的边沿跳变触发。一旦发生计数器溢出,计数器会从 定时/计数器的预置寄存器重新装入,并引发出中断请求,这种情况与其另外两个模式一样。要使得计数 运行,只要将定时器启动位(TON;TMRC 的第 4 位)置 1。在脉宽测量模式中,TON 在测量周期结束 后自动被清零。但在另外两个模式中,TON 只能由指令来复位。定时/计数器的溢出是唤醒的信号之一。 不管任何模式,若写0到
位即可禁止相应的中断服务。
ETI
在定时/计数器为关闭的状态下,写数据到定时/计数器的预置寄存器之中,同时也会将数据装入定时/ 计数器中。但若是定时/计数器已经开启,写到定时/计数器的数据只会被保留在定时/计数器的预置寄存器 中,直到定时/计数器发生计数溢出为止,再由预置寄存器加载新的值。当定时/计数器的数据被读取时, 会禁止时钟输入以防出错。因为禁止时钟输入可能导致计数错误,所以程序员必须仔细加以考虑。
TMRC 的 0~2 位被用于定义定时/计数器的内部时钟源的预分频级数。定义如表所示。定时/计数器
的溢出信号被用于产生驱动蜂鸣器的
PFD
信号。
Rev.1.50 2006-10-31
Page 18
18
111:f
fsys/256
0
位位位位
0-2 PSC0~PSC2
3 TE
4 TON
5 —
6 7
符号
符号
符号符号
TM0 TM1
定义预分频器级数,PSC2,PSC1,PSC0=
000:f 001:f 010:f
INT=
INT=
INT=
fsys/2 fsys/4 fsys/8
011:fINT= fsys/16 100:fINT= fsys/32 101:fINT= fsys/64 110:f
INT=
INT=
fsys/128
定义定时/计数器 TMR 的触发方式。 在外部事件计数模式(TM1,TM0)=(0,1):
:下降沿计数;
1 0:上升沿计数
在脉冲宽度测量模式(TM1,TM0)=(1,1):
1:上升沿开始计数,下降沿停止计数; 0:下降沿开始计数,上升沿停止计数
打开/关闭定时/计数器( 1=打开,0=关闭) 未用,读出为
定义操作模式
01=外部事件计数模式(外部时钟) 10=定时模式(内部时钟) 11=脉冲宽度测量模式 00 =未用
功能
功能
功能功能
HT48E30
TMRC((((0EH))))寄存器
寄存器
寄存器寄存器
Rev.1.50 2006-10-31
Page 19
HT48E30
19
BZ
BZ
BZ
输入
输入/输出口
输出口((((Input/Output Ports))))
输入输入
输出口输出口
单片机具有 23 个双向输入输出口,标号从 PA 到 PC 以及 PG,其分别对应的 RAM 的[12H],
[14H],[16H]和[1EH]。所有的输入/输出口都能被作为输入或输出使用。就输入而言这些口不具有锁存功
能,即,输入数据必须在
“MOV A,[m]”(m=12H,14H,16H或1EH)
出而言,所有的数据被锁存并保持不变,直到输出锁存器重新被改写。
每个 I/0 口都有其自己的控制寄存器(PAC,PBC,PCC,PGC),用来控制输入/输出的设置。使 用控制寄存器,可对 CMOS 输出或带或不带上拉电阻的斯密特触发输入在软件下动态地进行改变。要设 置为输入功能,相应的控制寄存器必须写“1”。信号源的输入也取决于控制寄存器。如果控制寄存器的某 位值为“1”那么输入信号是读取自这个引脚(PAD)的状态,但是如果控制寄存器的某位值为“0”,那么 锁存器的内容将会被送到内部总线。后者,会在“读改写”指令中发生。
对于输出功能,只能设置为 CMOS 输出。这些控制寄存器是对应于内存的 13H,15H,17H 和 1FH 地址。
芯片复位后,这些输入/输出口都会是高电平或浮空状态(取决于上拉电阻的选项)。每一个输入/ 输出锁存位都能被 SET [m].i 或 CLR [m].i 指令置位或清零,(m=12H,14H,16H 或 1EH。)
某些指令会首先输入数据然后进行输出操作。例如,SET [m].i ,CLR [m].i,CPL [m]和 CPLA [m] 指令,读取输入口的状态到
,执行这个操作(位操作),然后将数据写回锁存器或累加器。
CPU
PA 的每一个口都具有唤醒系统的能力。PG 口的高 5 位在物理上是不存在的;读这些位将返回“0”,
而写这些位结果为无操作。请看应用注释。
所有的输入/输出口都可以有上拉电阻的选择。一旦选择上拉电阻,所有的输入/输出口都具有上拉 电阻。必须要注意的是:没有上拉电阻的输入/输出口,在输入模式时会产生浮空状态。
PB0 和 PB1 分别与
BZ 和
将是由定时/计数器的溢出信号产生的
管脚复用。如果选择为
信号。在输入模式始终保持它的原来的功能。一旦
PFD
输出,PB0/PB1 在输出模式时的输出信号
BZ/
选项被选择,蜂鸣器的输出信号只受 PB0 数据寄存器控制。
指令的
上升沿被准备好。对输
T2
BZ/
的
PB0/PB1
的输入/输出功能如下所示:
PB0 输入/输出 PB1 输入/输出 PB0 模式 PB1 模式
数据
PB0
I I O O O O O O O O
I O I I I O O O O O × × C B B C B B B B × C × × × C C C B B × × D 0 1 D0 0 1 0 1
PB1 数据 × D × × × D1 D D × × PB0 Pad 状态 PB1 Pad 状态
注意: I:输入; O:输出; D,D0,D1:数据;
B:蜂鸣器的选项,BZ 或BZ; ×:任意值;
C:CMOS
I I D 0 B D0 0 B 0 B
I D I I I D1 D D 0 B
输出;
Rev.1.50 2006-10-31
Page 20
HT48E30
20
PG0 与
共用引脚。
INT
D a t a B u s
W r i t e C o n t r o l R e g i s t e r
C h i p R e s e t
R e a d C o n t r o l R e g i s t e r
W r i t e D a t a R e g i s t e r
( P B 0 , P B 1 O n l y )
R e a d D a t a R e g i s t e r
S y s t e m W a k e - u p
( P A o n l y )
I N T f o r P G 0 O n l y
P B 0
B Z / B Z
C o n t r o l B i t
Q
D
Q
C K
S
D a t a B i t
Q
D
Q
C K
S
输入
输入/输出口
输入输入
P u l l - h i g h
O p t i o n
M U
X
输出口
输出口输出口
M U
X
B Z E N
( P B 0 , P B 1 O n l y )
O P 0 ~ O P 7
V
D D
P A 0 ~ P A 7 P B 0 ~ P B 7 P C 0 ~ P C 5 P G 0
为了避免在浮空状态下功耗太大,建议将未用的或没有连结到外部的输入/输出口由软件指令设置成
输出引脚。
Rev.1.50 2006-10-31
Page 21
21
低电压复位
RES
低电压复位((((Low Voltage Reset — LVR))))
低电压复位低电压复位
为了监控器件的工作电压,HT48E30 有低电压复位功能。如果工作电 压在 0.9V~V 内部复位。
之间,例如电池电压的变化,那么 LVR 会自动使器件产生
LVR
LVR 功能说明如下:
· 低电压(0.9V~V
)的状态必须持续 1ms 以上。如果低电压的状态没有
LVR
持续 1ms 以上,那么 LVR 会忽视它而不去执行复位功能。
LVR 通过与外部
·
信号的“或”的功能来执行系统复位。
V
与 V
DD
V
D D
5 . 5 V
V
L V R
0 . 9 V
0 V
R e s e t S i g n a l
之间的关系如下所示:
LVR
L V R D e t e c t V o l t a g e
HT48E30
V
D DVO P R
5 . 5 V
5 . 5 V
3 . 3 V
注:V
为系统时钟 4MHz
OPR
时一般芯片正常工作电压 的范围。
V
2 . 4 V
0 . 9 V
L V R
R e s e t
N o r m a l O p e r a t i o n R e s e t
* 1 * 2
低电压复位
低电压复位
低电压复位低电压复位
注:
*1: 要保证系统振荡器起振并稳定运行,在系统进入正常运行以前,SST 提供额外的 1024 个系统时钟周期的延迟。 *2:因为低电压状态必须保持 1ms 以上,因此进入复位模式就要有 1ms 的延迟。
Rev.1.50 2006-10-31
Page 22
HT48E30
22
EEPROM 数据存储器
数据存储器((((EEPROM Data Memory))))
数据存储器数据存储器
EEPROM 数据存储器包含 128×8 位,在正常工作中可读可写。它要通过控制寄存器 EECR([40H]在 Bank 1)间接访问。寄存器 EECR 只能使用 MP1 间接读写。
位位位位
标识
标识
标识标识
功能
功能
功能功能
0-3 —— 未定义,读出为“0”
4 CS 5 SK 6 DI 7 DO
E E C R
EEPROM 数据存储器片选 EEPROM 数据存储器串口时钟输入 EEPROM 数据存储器串口数据输入 EEPROM 数据存储器串口数据输出
EECR((((40H))))寄存器
C S
S K
C S
S K
D I
D O
D I
V
D D
D O
寄存器
寄存器寄存器
C o n t r o l
L o g i c
a n d
C l o c k
G e n e r a t o r
D a t a
R e g i s t e r
S a m e a s H T 9 3 L C 4 6
A d d r e s s R e g i s t e r
A d d r e s s D e c o d e r
M e m o r y C e l l A r r a y
O u t p u t B u f f e r
1 K : ( 1 2 8
8 )
´
EEPROM 数据存储器方框图
数据存储器方框图
数据存储器方框图数据存储器方框图
访问 EEPROM 数据存储器需要三根串行通讯线,通过 EECR 界面写入。EEPROM 数据存储器有
128 个字,每个字包含 8 个位。EEPROM 数据存储器有 7 个指令:READ,ERASE,WRITE,EWEN, EWDS,ERAL 和 WRAL。这些指令包含 10 个位:1 个起始位,2 个 op-code 位和 7 个地址位
。
在存取 EEPROM 之前,应该执行一个初始化程序。以下将详细介绍此程序。
· 执行
EWEN
命令。
· 执行 WRITE 命令(应用程序需要为初始化程序分配一个空间,其内容将在初始化程序执行后被更
改)。
· 执行 EWDS 命令(此步骤不是必要的。若不是立即写数据至 EEPROM,则可将其禁止,以防误操
作)。
以下是汇编语言的范例程序,使用者可放入 POR 程序。(注意:关于 EWEN , EWDS 和 WRITE 详细程序请参考应用范例)。
mov A, 01h mov BP, A ; 设置 bank 指针 mov A,40h mov MP1,A ; 使 MP1 指向 EECR 地址 call EWEN ; 调用 EWEN 命令 mov A, 7Fh mov EEADDR, A mov A, 55h mov EEDATA, A call WRITE ; 调用 WRITE 命令(向地址 7Fh 中写入数据 55h.) call EWDS ; 调用 EWDS 命令(此步骤不是必要的)
Rev.1.50 2006-10-31
Page 23
HT48E30
23
通过写 CS,SK 和 DI,这些指令可以被输入到 EEPROM 中。这些在 DI 线上的串行指令数据会在 SK 上升沿写入 EEPROM 数据存储器。在读取周期中,DO 作为数据输出线,在 WRITE 或者 ERASE 周期,
DO 处于忙/准备状态。当 DO 作为输入数据线或者处于忙/准备状态,CS 管脚必须置高;反之 DO 会处于
一个高状态。指令发送成功之后,CS 必须马上置为低电平。上电后,系统默认处于 EWDS 状态。执行
ERASE
或者
WRITER
指令之前,需要先执行
t
C S
S K
D I
C S S
t
S K H
t
D I S
t
D I H
V a l i d D a t a V a l i d D a t a
EWEN
t
S K L
指令
。
t
C D S
t
C S H
t
D O
P D 0
1
t
P D 1
Rev.1.50 2006-10-31
Page 24
HT48E30
24
EECR A.C.特性
符号
符号 参数
符号符号
特性 Ta=25℃
特性特性
参数
参数参数
fSK
t
SKH
t
SKL
t
CSS
t
CSH
t
CDS
t
DIS
t
DIH
t
PD1
t
PD0
tSV tHZ
t
PR1
t
PR2
时钟频率
SK 高电平时间 SK 低电平时间 CS 建立时间
保持时间
CS
CS 屏蔽时间 250 - 250 — ns
DI 建立时间 DI 保持时间 DO 等待“1”时间 - DO 等待“0”时间 -
状态有效时间 -
释放时间
DO
每个 WORD 写周期 - 2 - 5 ms
每两个 WORD 写周期 -
接下来详细描述所有 7 条指令的功能。
READ
Vcc=5V±10% Vcc=2.2V±10%
最小
最小 最大
最小最小
最大 最小
最大最大
最小 最大
最小最小
最大
最大最大
单位
单位
单位单位
0 2 0 1 MH 250 — 500 — ns 250 — 500 — ns
50 — 100 — ns
0 -
0 — ns
100 — 200 — ns 100 — 200 — ns
250 250 250
100 -
10
- - -
200 -
-
500 ns 500 ns 250 ns
10 ms
Z
ns
读取指令会将指定地址的数据送出到 DO 线上。在 SK 上升沿时,DO 线上的数据会跳变。8 位数据 之前有一个逻辑“0”信号。无论 EWEN 或者 EWDS 指令执行与否,读取指令都可以有效执行。一个 数据字被读取之后,EEPROM 内地址会自动加一,允许下一个连续的数据被读取,而不需要输入任 何地址数据。地址数据会循环累加直到CS从高电平变为低电平。
EWEN/EWDS
EWEN/EWDS 指令可以使能或者禁止擦写动作有效执行。无论是处于上电或者掉电状态,芯片都会
自动进入禁止擦写模式。执行 WRITE,ERASE,WRAL 或者 ERAL 指令之前,必须先执行 EWEN 指 令使能擦写动作有效执行,反之,执行
ERASE/WRITE
指令就是无效的。
EWEN
指令运行后,擦写
动作使能状态就被启动,直到断电或者 EWDS 指令被运行。当处于禁止擦写状态时,就无法向
EEPROM 数据存储器进行擦写。这样做的话,内部数据就相当于被保护了。
ERASE
在擦写使能状态下,
ERASE
指令可以擦除指定地址的数据内容。
ERASE
指令码和指定地址送出 后,数据在 CS 下降沿会被清除。由于芯片内部有自动时序发生器,提供所有时序信号给内部擦除 动作,所以 SK 时钟不需要外部提供。内部擦除动作期间,当 CS 保持高电平我们可以检测到系统状 态是忙还是空闲。忙状态时 DO 线保持低电平,直到擦除动作结束,DO 会恢复到高电平,此时其 它指令可以被执行。
Rev.1.50 2006-10-31
Page 25
HT48E30
25
WRITE
擦写使能模式下,WRITE 指令可以将数据写入指定地址的 EEPROM 数据存储器。WRITE 指令码和 指定地址送出后,数据在 CS 下降沿会被写入。由于芯片内部有自动时序发生器,提供所有时序信 号给内部写入动作,所以 SK 时钟不需要外部提供。整个自动写入周期包括,擦除然后再写入。因 此不需要在写入指令前擦除数据。内部写入动作期间,当 CS 保持高电平我们可以检测到系统状态 是忙还是空闲。忙状态时DO线保持低电平,直到擦除动作结束,DO会恢复到高电平,此时其它 指令可以被执行。
ERAL
在擦写使能状态下,ERAL 指令可以擦除所有 128×8 存储器位单元为逻辑“1”。擦除所有内容指令送 出后,数据在 CS 下降沿会被清除。由于芯片内部有自动时序发生器,提供所有时序信号给擦除所 有内容动作,所以 SK 时钟不需要外部提供。内部擦除所有内容动作期间,当 CS 保持高电平我们可 以检测到系统状态是忙还是空闲。忙状态时DO线保持低电平,直到擦除动作结束,DO会恢复到 高电平,此时其它指令可以被执行。
WRAL
在擦写使能状态下,WRAL 指令可以写入所有 128×8 存储器。写入所有内容指令送出后,数据在
CS 下降沿会被写入。由于芯片内部有自动时序发生器,提供所有时序信号给写入所有内容动作,所
以 SK 时钟不需要外部提供。内部写入所有内容动作期间,当 CS 保持高电平我们可以检测到系统状 态是忙还是空闲。忙状态时DO线保持低电平,直到擦除动作结束,DO会恢复到高电平,此时其 它指令可以被执行。
EECR 控制时序图
控制时序图
控制时序图控制时序图
· READ
C S
S K
D I
D O
( 1 )
S t a r t b i t
* A d d r e s s p o i n t e r a u t o m a t i c a l l y c y c l e s t o t h e n e x t w o r d
· EWEN/EWDS
C S
S K
D I
( 1 )
S t a r t b i t
t
C D S
A N
0
1
1
0
0
1 1 = E W E N 0 0 = E W D S
A 0
M o d e
A N
D X
1
( X 8 )
A 6
D 7
D 0
0
D XD X
*
S t a n d b y
Rev.1.50 2006-10-31
Page 26
26
· WRITE
C S
S K
D I
D O
· ERASE
C S
S K
D I
D O
·
ERAL
( 1 )
S t a r t b i t
( 1 )
S t a r t b i t
HT48E30
t
C D S
V e r i f y
A N - 1 A N - 2
A N
1
0
1
A N - 1 A N - 2
A N
1
1
1
A 1 D 0A 0 D X
A 1 A 0
B u s y
t
P R 1
t
C D S
V e r i f y
B u s y
t
P R 1
S t a n d b y
t
S V
R e a d y
S t a n d b y
t
S V
R e a d y
C S
S K
D I
D O
· WRAL
C S
S K
D I
D O
( 1 )
S t a r t b i t
( 1 )
S t a r t b i t
t
C D S
V e r i f y
1
000
1
0
00
1
1
D X
D 0
B u s y
t
P R 2
t
C D S
V e r i f y
B u s y
t
P R 2
S t a n d b y
t
S V
R e a d y
S t a n d b y
t
S V
R e a d y
Rev.1.50 2006-10-31
Page 27
HT48E30
27
BZ
EEPROM 数据存储器指令设置概要
指令
指令
指令指令
READ ERASE WRITE
EWEN Erase/Write Enable
EWDS Erase/Write Disable
ERAL
WRAL
注意:
掩膜选项
掩膜选项((((Options))))
掩膜选项掩膜选项
数据存储器指令设置概要
数据存储器指令设置概要数据存储器指令设置概要
描述
描述
描述描述
Read Data 1 10 A6~A0 D7~D0 Erase Data 1 11 A6~A0 —— Write Data 1 01 A6~A0 D7~D0
Erase All 1 00 10XXXXX —— Write All 1 00 01XXXXX D7~D0
表示不确定
”X”
起始位
起始位 指令码
起始位起始位
指令码
指令码指令码
地址
地址
地址地址
1 00 11XXXXX —— 1 00 00XXXXX ——
数据
数据
数据数据
以下的表格,列出了这种单片机的各种类型的掩膜选项。所有的掩膜选项必须正确定义。
编号
编号
编号编号
1
WDT 时钟源:WDT 振荡或 fsys/4 或关闭
2
清除看门狗指令条数:1 或 2 条清除 WDT
3
定时器时钟源:fsys
4
PA 位唤醒 打开/关闭
5
PA口CMOS/
6
PA,PB,PC,PG 口上拉电阻 有/无
7
BZ/
:打开/关闭
8
LVR:打开/关闭
9 系统振荡选择:外部
选选选选 项项项项
施密特触发 输入
RC
振荡/外部晶体振荡
Rev.1.50 2006-10-31
Page 28
28
应用电路
应用电路
应用电路应用电路
HT48E30
V
D D
0 . 0 1mF *
1 0 0 k
W
0 . 1mF
1 0 k
0 . 1mF *
O S C
C i r c u i t
S e e R i g h t S i d e
V D D
R E S
W
V S S
O S C 1
O S C 2
P G 0 / I N T
H T 4 8 E 3 0
P A 0 ~ P A 7
P B 2 ~ P B 7
P C 1 ~ P C 5
P B 0 / B Z
P B 1 / B Z
P C 0 / T M R
V
D D
R
O S C
4 7 0 p F
N M O S o p e n d r a i n
C 1
C 2
注意: 电阻和电容值选取的原则是使 VDD 保持稳定并在
为了避免噪声干扰,连接
“*”
引脚的线请尽可能地短。
RES
下表所示为根据不同的晶振值选择R1、C1、C2(仅供参考)
晶体振荡或谐振器
晶体振荡或谐振器 C1,,,,C2
晶体振荡或谐振器晶体振荡或谐振器
4MHz 晶振 4MHz 谐振器
3.58MHz
晶振
3.58MHz 谐振器 2MHz 晶振和谐振器
晶振
1MHz 480KHz 谐振器 455KHz 谐振器 429KHz
谐振器
电阻 R1 保证了在低电压 状态下,晶振被关闭。这里的低电压,是指低于
正常工作电压范围。请注意,当启动了
MCU
R 1
RES
0pF
10pF
0pF 25pF 25pF 35pF
300pF 300pF 300pF
R C S y s t e m O s c i l l a t o r
< R
2 4 k
O S C 1
O S C 2
O S C 1
C r y s t a l S y s t e m O s c i l l a t o r
F o r t h e v a l u e s , s e e t a b l e b e l o w
O S C 2
O S C C i r c u i t
< 1 M
O S C
W
W
置为高以前把工作电压保持在允许的范围内。
R1
10KΩ 12KΩ 10KΩ 10KΩ 10KΩ 27KΩ
9.1KΩ 10KΩ 10KΩ
功能,R1可以不接。
LVR
Rev.1.50 2006-10-31
Page 29
HT48E30
29
指令集摘要
指令集摘要
指令集摘要指令集摘要
助记符
助记符 说明
助记符助记符
算术运算
算术运算
算术运算算术运算
ADD A,[m] ADDM A,[m] ADD A,x ADC A,[m] ADCM A,[m] SUB A,x SUB A,[m] SUBM A,[m] SBC
A,[m]
SBCM A,[m] DAA [m]
逻辑运算
逻辑运算
逻辑运算逻辑运算
AND A,[m] OR A,[m] XOR A,[m] ANDM A,[m] ORM A,[m] XORM A,[m] AND A,x OR A,x XOR A,x CPL [m] CPLA [m]
递增和递减
递增和递减
递增和递减递增和递减
INCA [m] INC [m] DECA [m] DEC [m]
移位
移位
移位移位
RRA [m] RR [m] RRCA [m] RRC [m] RLA [m] RL [m] RLCA [m] RLC [m]
数据传送
数据传送
数据传送数据传送
MOV A,[m] MOV [m],A MOV A,x
位运算
位运算
位运算位运算
CLR [m].i SET [m].i
Rev.1.50 2006-10-31
与数据存储器相加,结果放入
ACC ACC 与数据存储器相加,结果放入数据存储器 ACC 与立即数相加,结果放入 ACC ACC 与数据存储器、进位标志相加,结果放入 ACC ACC 与数据存储器、进位标志相加,结果放入数据存储器 ACC 与立即数相减,结果放入 ACC
与数据存储器相减,结果放入
ACC
与数据存储器相减,结果放入数据存储器
ACC
ACC 与数据存储器、进位标志相减,结果放入 ACC
ACC 与数据存储器、进位标志相减,结果放入数据存储器
将加法运算中放入 入数据存储器
ACC
ACC 与数据存储器做“与”运算,结果放入 ACC ACC 与数据存储器做“或”运算,结果放入 ACC
与数据存储器做“异或”运算,结果放入
ACC ACC 与数据存储器做“与”运算,结果放入数据存储器 ACC 与数据存储器做“或”运算,结果放入数据存储器 ACC 与数据存储器做“异或”运算,结果放入数据存储器 ACC 与立即数做“与”运算,结果放入 ACC ACC 与立即数做“或”运算,结果放入 ACC
与立即数做“异或”运算,结果放入
ACC
对数据存储器取反,结果放入数据存储器 对数据存储器取反,结果放入 ACC
递增数据存储器,结果放入 ACC 1 Z 递增数据存储器,结果放入数据存储器 递减数据存储器,结果放入 ACC 递减数据存储器,结果放入数据存储器
数据存储器右移一位,结果放入 数据存储器右移一位,结果放入数据存储器 带进位将数据存储器右移一位,结果放入 ACC 带进位将数据存储器右移一位,结果放入数据存储器 数据存储器左移一位,结果放入 ACC 数据存储器左移一位,结果放入数据存储器 带进位将数据存储器左移一位,结果放入 带进位将数据存储器左移一位,结果放入数据存储器
将数据存储器送至 ACC 将 ACC 送至数据存储器 将立即数送至
ACC
清除数据存储器的位 置位数据存储器的位
说明 指令周期
说明说明
指令周期 影响标志位
指令周期指令周期
ACC
ACC
的值调整为十进制数,并将结果放
ACC
ACC
ACC
ACC
影响标志位
影响标志位影响标志位
1 Z,C,AC,OV
(1)
1
Z,C,AC,OV 1 Z,C,AC,OV 1 Z,C,AC,OV
(1)
1
Z,C,AC,OV 1 Z,C,AC,OV 1 Z,C,AC,OV
(1)
1
Z,C,AC,OV
1 Z,C,AC,OV
(1)
1
Z,C,AC,OV
(1)
1
C
1 Z 1 Z 1 Z
(1)
1
Z
(1)
1
Z
(1)
1
Z 1 Z 1 Z 1 Z
(1)
1
Z 1 Z
(1)
1
Z 1 Z
(1)
1
Z
1 无
(1)
1
无
1 C
(1)
1
C 1
(1)
1
无 无
1 C
(1)
1
C
1
(1)
1
1 无
(1)
1
(1)
1
无 无
无 无
Page 30
30
助记符
助记符 说明
助记符助记符 转移
转移
转移转移
JMP addr SZ [m] SZA [m] SZ [m].i SNZ [m].i SIZ [m] SDZ [m] SIZA [m]
说明 指令周期
说明说明
无条件跳转 如果数据存储器为零,则跳过下一条指令 数据存储器送至 ACC,如果内容为零,则跳过下一条指令 如果数据存储器的第 i 位为零,则跳过下一条指令 如果数据存储器的第 i 位不为零,则跳过下一条指令 1 递增数据存储器,如果结果为零,则跳过下一条指令 递减数据存储器,如果结果为零,则跳过下一条指令 递增数据存储器,将结果放入 ACC,如果结果为零,则跳 过下一条指令
SDZA [m]
递减数据存储器,将结果放入 ACC,如果结果为零,则跳 过下一条指令
CALL addr RET RET
子程序调用 从子程序返回 从子程序返回,并将立即数放入 ACC
A,x
RETI
查表
查表
查表查表
TABRDC [m] TABRDL [m]
其它指令
其它指令
其它指令其它指令
NOP CLR [m] SET [m] CLR WDT CLR WDT1 CLR WDT2 SWAP [m] SWAPA [m] HALT
从中断返回 2 无
读取当前页的 ROM 内容,并送至数据存储器和 TBLH 读取最后页的 ROM 内容,并送至数据存储器和 TBLH
空指令 清除数据存储器 置位数据存储器 清除看门狗定时器 预清除看门狗定时器 1 TO 预清除看门狗定时器 交换数据存储器的高低字节,结果放入数据存储器 交换数据存储器的高低字节,结果放入 ACC 进入暂停模式
HT48E30
指令周期 影响标志位
指令周期指令周期
2
(2)
1
(2)
1
(2)
1
(2)
(3)
1
(3)
1
(2)
1
(2)
1
2 无 2
2
(1)
2
(1)
2
1
(1)
1
(1)
1
影响标志位
影响标志位影响标志位
无 无 无 无
无
无
无
无
无
无
无
无 无
无 无 无
1 TO,PDF
(4)
(4)
,PDF
(4)
1 TO
(1)
1
1
,PDF
无 无
(4)
1 TO,PDF
注: x:立即数
m A i:第0~7位 addr
:影响标志位
√
—
(1)
(2)
长。
(3):(1)和(2)
(4)
会影响TO和
:数据存储器地址 :累加器
:不影响标志位 :如果数据是加载到 :如果满足跳跃条件,则指令执行周期会被延长一个指令周期(四个系统时钟);否则指令执行周期不会被延
:如果执行
:程序存储器地址
PDF
寄存器,则指令执行周期会被延长一个指令周期(四个系统时钟)。
PCL
CLR WDT1或CLR WDT2
标志位。
指令后,看门狗定时器被清除,则会影响TO和
标志位;否则不
PDF
Rev.1.50 2006-10-31
Page 31
31
ADC A, [m] 累加器与数据存储器、进位标志相加,结果放入累加器 说明: 本指令把累加器、数据存储器值以及进位标志相加,结果存放到累加器。 运算过程: ACCACC+[m]+C 影响标志位
TO PDF OV Z AC C
— — √ √ √ √
ADCM A, [m] 累加器与数据存储器、进位标志相加,结果放入数据存储器 说明: 本指令把累加器、数据存储器值以及进位标志相加,结果存放到存储器。 运算过程: [m]ACC+[m]+C 影响标志位
ADD A, [m] 累加器与数据存储器相加,结果放入累加器 说明: 运算过程: ACCACC+[m] 影响标志位
ADD A, x
说明: 本指令把累加器值和立即数相加,结果存放到累加器。 运算过程: ACCACC+x 影响标志位
ADDM A, [m] 累加器与数据存储器相加,结果放入数据存储器 说明: 本指令把累加器、数据存储器值相加,结果存放到数据存储器。 运算过程: [m]ACC+[m] 影响标志位
AND A, [m] 累加器与数据存储器做“与”运算,结果放入累加器 说明: 本指令把累加器值、数据存储器值做逻辑与,结果存放到累加器。 运算过程: ACCACC “AND” [m] 影响标志位
TO PDF OV Z AC C
— — √ √ √ √
本指令把累加器、数据存储器值相加,结果存放到累加器。
TO PDF OV Z AC C
— — √ √ √ √
累加器与立即数相加,结果放入累加器
TO PDF OV Z AC C
— — √ √ √ √
TO PDF OV Z AC C
— — √ √ √ √
TO PDF OV Z AC C
— — — √ — —
HT48E30
Rev.1.50 2006-10-31
Page 32
HT48E30
32
AND A, x 累加器与立即数做“与”运算,结果放入累加器 说明: 本指令把累加器值、立即数做逻辑与,结果存放到累加器。 运算过程: ACCACC “AND” x 影响标志位
TO PDF OV Z AC C
— — — √ — —
ANDM A, [m] 累加器与数据存储器做“与”运算,结果放入数据存储器 说明: 本指令把累加器值、数据存储器值做逻辑与,结果存放到数据存储器。 运算过程: [m]ACC “AND” [m] 影响标志位
CALL addr 子程序调用 说明:
运算过程: StackPC+1
PC addr
影响标志位
CLR [m]
说明: 运算过程: [m] 00H 影响标志位
CLR [m] . i 将数据存储器的第 i 位清“0” 说明: 本指令将数据存储器内第 i 位值清零。 运算过程: [m].i 0 影响标志位
CLR WDT 清除看门狗定时器 说明: 本指令清除 WDT 计数器(从 0 开始重新计数),暂停标志位(PDF)和看门狗溢出标志位
运算过程: WDT 00H
PDF&TO 0
影响标志位
TO PDF OV Z AC C
— — — √ — —
本指令直接调用地址所在处的子程序,此时程序计数器加一,将此程序计数器值存到 堆栈寄存器中,再将子程序所在处的地址存放到程序计数器中。
TO PDF OV Z AC C
— — — — — —
清除数据存储器 本指令将数据存储器内的数值清零。
TO PDF OV Z AC C
— — — — — —
TO PDF OV Z AC C
— — — — — —
(TO)也被清零。
TO PDF OV Z AC C
0 0 — — — —
Rev.1.50 2006-10-31
Page 33
HT48E30
33
m
m
CLR WDT1 预清除看门狗定时器 说明: 必须搭配 CLR WDT2 一起使用,才可清除 WDT 计时器(从 0 开始重新计数)。当程序只
执行过该指令,没有执行 CLR WDT2 时,系统只会不会将暂停标志位(PDF)和计数溢出 位(TO)清零,PDF 与 TO 保留原状态不变。
运算过程:
PDF&TO 0*
影响标志位
CLR WDT2 预清除看门狗定时器 说明: 必须搭配 CLR WDT1 一起使用,才可清除 WDT 计时器(从 0 开始重新计数)。当程序只
运算过程: WDT 00H*
PDF&TO 0*
影响标志位
CPL [m]
说明: 本指令是将数据存储器内保存的数值取反。 运算过程: [m]  [
影响标志位
CPLA [m] 对数据存储器取反,结果放入累加器 说明: 本指令是将数据存储器内保存的值取反后,结果存放在累加器中。
运算过程: ACC  [ 影响标志位
WDT 00H*
TO PDF OV Z AC C
0* 0* — — — —
执行过该指令,没有执行 位(TO)清零,PDF 与 TO 保留原状态不变。
TO PDF OV Z AC C
0* 0* — — — —
对数据存储器取反,结果放入数据存储器
]
TO PDF OV Z AC C
— — — √ — —
]
TO PDF OV Z AC C
— — — √ — —
CLR WDT1
时,系统只会不会将暂停标志位
(PDF)
和计数溢出
Rev.1.50 2006-10-31
Page 34
HT48E30
34
DAA [m] 将加法运算后放入累加器的值调整为十进制数,并将结果放入数据存储器 说明 本指令将累加器高低四位分别调整为 BCD 码。如果低四位的值大于“9”或 AC=1,那么
调整就执行对原值加
BCD
持不变。如果高四位的值大于“9”或 C=1,那么 BCD 调整就执行对原值加“6”再加
AC1,并把 C 置位;否则 BCD 调整就执行对原值加 AC1,C 的值保持不变。结果存放
到数据存储器中,只有进位标志位(C)受影响。
操作 如果 ACC.3~ACC.0 > 9 或 AC=1
那么 [m].3~[m].0 (ACC.3~ACC.0 )+6,AC1= AC 否则 [m].3~[m].0 (ACC.3~ACC.0 ),AC1=0 并且 如果 ACC.7~ACC.4+AC1 > 9 或 C=1
那么 [m].7~[m].4 (ACC.7~ACC.4 )+6+ AC1,C=1
否则 [m].7~[m].4 (ACC.7~ACC.4 )+ AC1,C=C
影响标志位
TO PDF OV Z AC C
— — — — — √
DEC [m]
说明: 运算过程: [m]  [m]-1 影响标志位
DECA [m]
说明: 本指令将存储器内的数值减一,再放到累加器。 运算过程: ACC  [m]-1 影响标志位
HALT 进入暂停模式 说明: 本指令终止程序执行并关掉系统时钟,RAM 和寄存器内的数值保持原状态,WDT 计
运算过程: PC PC+1
PDF 1 TO 0
影响标志位
数据存储器的内容减 1,结果放入数据存储器 本指令将数据存储器内的数值减一再放回数据存储器。
TO PDF OV Z AC C
— — — √ — —
数据存储器的内容减1,结果放入累加器
TO PDF OV Z AC C
— — — √ — —
数器清“0”,暂停标志位(PDF)被设为 1, WDT 计数溢出位(TO)被清为 0。
TO PDF OV Z AC C
0 1 — — — —
,并且内部进位标志
“6”
AC1= AC
,即AC求反;否则原值保
Rev.1.50 2006-10-31
Page 35
35
INC [m] 数据存储器的内容加 1,结果放入数据存储器 说明: 本指令将数据存储器内的数值加一,结果放回数据存储器。 运算过程: [m]  [m]+1 影响标志位
TO PDF OV Z AC C
— — — √ — —
INCA [m] 数据存储器的内容加 1,结果放入数据存储器 说明: 本指令是将存储器内的数值加一,结果放到累加器。 运算过程: ACC  [m]+1 影响标志位
JMP addr 无条件跳转 说明: 运算过程: PC  addr 影响标志位
MOV A, [m]
说明: 本指令是将数据存储器内的数值送到累加器内。 运算过程: ACC  [m] 影响标志位
MOV A, x 将立即数送至累加器 说明: 本指令是将立即数送到累加器内。 运算过程: ACC  x 影响标志位
MOV [m], A 将累加器送至数据存储器 说明: 本指令是将累加器值送到数据存储器内。 运算过程: [m]  ACC 影响标志位
TO PDF OV Z AC C
— — — √ — —
本指令是将要跳到的目的地直接放到程序计数器内。
TO PDF OV Z AC C
— — — — — —
将数据存储器送至累加器
TO PDF OV Z AC C
— — — — — —
TO PDF OV Z AC C
— — — — — —
TO PDF OV Z AC C
— — — — — —
HT48E30
Rev.1.50 2006-10-31
Page 36
HT48E30
36
NOP 空指令 说明: 本指令不作任何运算,而只将程序计数器加一。 运算过程: PC  PC+1 影响标志位
TO PDF OV Z AC C
— — — — — —
OR A, [m] 累加器与数据存储器做“或”运算,结果放入累加器 说明: 本指令是把累加器、数据存储器值做逻辑或,结果放到累加器。 运算过程: ACCACC “OR” [m] 影响标志位
OR A, x 累加器与立即数做“或”运算,结果放入累加器 说明: 运算过程: ACCACC “OR” x 影响标志位
ORM A, [m]
说明: 本指令是把累加器值、存储器值做逻辑或,结果放到数据存储器。 运算过程: [m]ACC “OR” [m] 影响标志位
RET 从子程序返回 说明: 本指令是将堆栈寄存器中的程序计数器值送回程序计数器。 运算过程: PC  Stack 影响标志位
RET A, x 从子程序返回,并将立即数放入累加器 说明: 本指令是将堆栈寄存器中的程序计数器值送回程序计数器,并将立即数送回累加器。 运算过程: PC  Stack
ACC x
影响标志位
TO PDF OV Z AC C
— — — √ — —
本指令是把累加器值、立即数做逻辑或,结果放到累加器。
TO PDF OV Z AC C
— — — √ — —
累加器与数据存储器做“或”运算,结果放入数据存储器
TO PDF OV Z AC C
— — — √ — —
TO PDF OV Z AC C
— — — — — —
TO PDF OV Z AC C
— — — — — —
Rev.1.50 2006-10-31
Page 37
HT48E30
37
RETI 从中断返回 说明: 本指令是将堆栈寄存器中的程序计数器值送回程序计数器,与 RET 不同的是它使用在
中断程序结束返回时,它还会将中断控制寄存器 INTC 的 0 位(EMI)中断允许位置 1, 允许中断服务。
运算过程:
EMI 1
影响标志位
RL [m] 数据存储器左移一位,结果放入数据存储器 说明: 本指令是将数据存储器内的数值左移一位,第 7 位移到第 0 位,结果送回数据存储器。 运算过程: 影响标志位
RLA [m]
说明:
运算过程: ACC.0 [m].7, ACC.(i+1) [m].i; (i=0~6) 影响标志位
RLC [m] 带进位将数据存储器左移一位,结果放入数据存储器 说明: 本指令是将存储器内的数值与进位标志左移一位,第 7 位取代进位标志,进位标志移
运算过程: [m].(i+1) [m].i; (i=0~6)
[m].0 C C [m].7
影响标志位
RLCA [m] 带进位将数据存储器左移一位,结果放入累加器 说明: 本指令是将存储器内的数值与进位标志左移一位,第七位取代进位标志,进位标志移
运算过程: ACC.(i+1) [m].i; (i=0~6)
ACC.0 C C [m].7
影响标志位
PC Stack
TO PDF OV Z AC C
— — — — — —
[m].0 [m].7, [m].(i+1) [m].i; (i=0~6)
TO PDF OV Z AC C
— — — — — —
数据存储器左移一位,结果放入累加器
本指令是将存储器内的数值左移一位,第7位移到第0位,结果送到累加器,而数据 存储器内的数值不变。
TO PDF OV Z AC C
— — — — — —
到第 0 位,结果送回数据存储器。
TO PDF OV Z AC C
— — — — — √
到第 0 位,结果送回累加器。
TO PDF OV Z AC C
— — — — — √
Rev.1.50 2006-10-31
Page 38
HT48E30
38
m
RR [m] 数据存储器右移一位,结果放入数据存储器 说明: 本指令是将存储器内的数值循环右移,第 0 位移到第 7 位,结果送回数据存储器。 运算过程: [m].7 [m].0, [m].i [m].(i+1); (i=0~6) 影响标志位
TO PDF OV Z AC C
— — — — — —
RRA [m] 数据存储器右移一位,结果放入累加器 说明: 本指令是将数据存储器内的数值循环右移,第 0 位移到第 7 位,结果送回累加器,而
数据存储器内的数值不变。 运算过程: 影响标志位
RRC [m]
说明: 本指令是将存储器内的数值加进位标志循环右移,第 0 位取代进位标志,进位标志移
运算过程: [m].i [m].(i+1); (i=0~6)
[m]. 7 C C [m].0
影响标志位
RRCA [m] 带进位将数据存储器右移一位,结果放入累加器 说明:
运算过程: ACC.i [m].(i+1); (i=0~6)
ACC.7 C C [m].0
影响标志位
SBC A,[m] 累加器与数据存储器、进位标志相减,结果放入累加器 说明: 本指令是把累加器值减去数据存储器值以及进位标志的取反,结果放到累加器。
运算过程: ACCACC+[ 影响标志位
ACC.7 [m].0, ACC.i [m].(i+1); (i=0~6)
TO PDF OV Z AC C
— — — — — —
带进位将数据存储器右移一位,结果放入数据存储器
到第 7 位,结果送回存储器。
TO PDF OV Z AC C
— — — — — √
本指令是将数据存储器内的数值加进位标志循环右移,第0位取代进位标志,进位标 志移到第 7 位,结果送回累加器,数据存储器内的数值不变。
TO PDF OV Z AC C
— — — — — √
]+ C
TO PDF OV Z AC C
— — √ √ √ √
Rev.1.50 2006-10-31
Page 39
HT48E30
39
m
SBCM A,[m] 累加器与数据存储器、进位标志相减,结果放入数据存储器 说明: 本指令是把累加器值减去数据存储器值以及进位标志取反,结果放到数据存储器。
运算过程: [m]ACC+[ 影响标志位
SDZ [m]
说明: 本指令是把数据存储器内的数值减 1,判断是否为 0,若为 0 则跳过下一条指令,即如
运算过程: 如果[m]-1=0,跳过下一条指令执行再下一条。 影响标志位
SDZA [m] 数据存储器减 1,将结果放入累加器,如果结果为“0”,则跳过下一条指令 说明: 本指令是把数据存储器内的数值减 1,判断是否为 0,为 0 则跳过下一行指令并将减完
运算过程: 如果[m]-1=0,跳过下一条指令执行再下一条。
ACC ([m]-1)
影响标志位
SET [m]
说明: 本指令是把存储器内的数值每个位置为 1。 运算过程: [m]  FFH 影响标志位
SET [m]. i 将数据存储器的第 i 位置“1” 说明: 本指令是把存储器内的数值的第 i 位置为 1。 运算过程: [m].i 1 影响标志位
数据存储器减1,如果结果为
果结果为零,放弃在目前指令执行期间所取得的下一条指令,并插入一个空周期用以 取得正确的指令(二个指令周期)。否则执行下一条指令(一个指令周期)。
后数据存储器内的数值送到累加器,而数据存储器内的值不变,即若结果为 0,放弃在
目前指令执行期间所取得的下一条指令,并插入一个空周期用以取得正确的指令(二个
指令周期)。否则执行下一条指令(一个指令周期)。
置位数据存储器
]+C
TO PDF OV Z AC C
— — √ √ √ √
,则跳过下一条指令
“0”
TO PDF OV Z AC C
— — — — — —
TO PDF OV Z AC C
— — — — — —
TO PDF OV Z AC C
— — — — — —
TO PDF OV Z AC C
— — — — — —
Rev.1.50 2006-10-31
Page 40
HT48E30
40
m
x
SIZ [m] 数据存储器加 1,如果结果为“0”,则跳过下一条指令 说明: 本指令是把数据存储器内的数值加 1,判断是否为 0。若为 0,跳过下一条指令,即放
弃在目前指令执行期间所取得的下一条指令,并插入一个空周期用以取得正确的指令
(二个指令周期)。否则执行下一条指令(一个指令周期)。
运算过程: 影响标志位
SIZA
说明: 本指令是把数据存储器内的数值加 1,判断是否为 0,若为 0 跳过下一条指令,即放弃
运算过程: 如果[m]+1=0,跳过下一行指令;ACC ([m]+1) 影响标志位
SNZ [m]. i 如果数据存储器的第 i 位不为“0”,则跳过下一条指令 说明: 本指令是判断数据存储器内的数值的第 i 位,若不为 0,则程序计数器再加 1,跳过下
运算过程: 如果 [m].i≠0,跳过下一行指令。 影响标志位
SUB A, [m] 累加器与数据存储器相减,结果放入累加器 说明: 本指令是把累加器值、数据存储器值相减,结果放到累加器。
运算过程: ACCACC+[ 影响标志位
SUB A, x 累加器与立即数相减,结果放入累加器 说明:
运算过程: ACCACC+ 影响标志位
如果
([m]+1=0)
数据存储器加1,将结果放入累加器,如果结果为
在目前指令执行期间所取得的下一条指令,并插入一个空周期用以取得正确的指令(二
个指令周期),并将加完后存储器内的数值送到累加器,而数据存储器的值保持不变。
否则执行下一条指令(一个指令周期)。
一行指令,放弃在目前指令执行期间所取得的下一条指令,并插入一个空周期用以取
得正确的指令(二个指令周期)。否则执行下一条指令(一个指令周期)。
本指令是把累加器值、立即数相减,结果放到累加器。
,跳过下一行指令;
TO PDF OV Z AC C
— — — — — —
TO PDF OV Z AC C
— — — — — —
TO PDF OV Z AC C
— — — — — —
]+1
TO PDF OV Z AC C
— — √ √ √ √
+1
TO PDF OV Z AC C
— — √ √ √ √
[m] [m]+1
“0”
,则跳过下一条指令
Rev.1.50 2006-10-31
Page 41
HT48E30
41
m
↔
SUBM A, [m] 累加器与数据存储器相减,结果放入数据存储器 说明: 本指令是把累加器值、存储器值相减,结果放到存储器。
运算过程: [m]ACC+[ 影响标志位
SWAP [m]
说明: 本指令是将数据存储器的低四位和高四位互换,再将结果送回数据存储器。 运算过程: [m].7~[m].4 影响标志位
SWAPA [m] 交换数据存储器的高低字节,结果放入累加器 说明: 本指令是将数据存储器的低四位和高四位互换,再将结果送回累加器。 运算过程: ACC.3~ACC.0 [m].7~[m].4
影响标志位
SZ [m] 如果数据存储器为“0”,则跳过下一条指令 说明: 本指令是判断数据存储器内的数值是否为 0,为 0 则跳过下一行指令,即放弃在目前指
运算过程: 如果 [m] = 0, 跳过下一行指令。 影响标志位
SZA [m] 数据存储器送至累加器,如果内容为“0”,则跳过下一条指令 说明: 本指令是判断存储器内的数值是否为 0,若为 0 则跳过下一行指令,即放弃在目前指令
运算过程: 如果[m] = 0,跳过下一行指令,并 ACC [m]。 影响标志位
交换数据存储器的高低字节,结果放入数据存储器
ACC.7~ACC.4 [m].3~[m].0
令执行期间所取得的下一条指令,并插入一个空周期用以得正确的指令(二个指令周
期)。否则执行下一条指令(一个指令周期)。
执行期间所取得的下一条指令,并插入一个空周期用以得正确的指令(二个指令周期)。 并把存储器内值送到累加器,而存储器的值保持不变。否则执行下一条指令(一个指令 周期)。
]+1
TO PDF OV Z AC C
— — √ √ √ √
[m].3~[m].0
TO PDF OV Z AC C
— — — — — —
TO PDF OV Z AC C
— — — — — —
TO PDF OV Z AC C
— — — — — —
TO PDF OV Z AC C
— — — — — —
Rev.1.50 2006-10-31
Page 42
HT48E30
42
SZ [m]. i 如果数据存储器的第 i 位为“0”,则跳过下一条指令 说明: 本指令是判断存储器内第 i 位值是否为 0,若为 0 则跳过下一行指令,即放弃在目前指
令执行期间所取得的下一条指令,并插入一个空周期用以得正确的指令(二个指令周
期)。否则执行下一条指令(一个指令周期)。 运算过程: 影响标志位
TABRDC [m]
说明:
运算过程: [m] 程序存储器低四位
TBLH程序存储器高四位
影响标志位
TABRDL [m] 读取 ROM 最后一页的内容,并送至数据存储器和 TBLH 说明: 本指令是将 TABLE 指针指向程序寄存器最后页,将低位送到存储器,高位直接送到
运算过程: [m] 程序存储器低四位
TBLH
影响标志位
XOR A, [m]
说明: 本指令是把累加器值、数据存储器值做逻辑异或,结果放到累加器。 运算过程: ACCACC “XOR” [m] 影响标志位
XORM A, [m] 累加器与数据存储器做“异或”运算,结果放入数据存储器 说明: 本指令是把累加器值、数据存储器值做逻辑异或,结果放到数据存储器。 运算过程: [m]ACC “XOR” [m] 影响标志位
XOR A, x 累加器与数据存储器做“异或”运算,结果放入累加器 说明: 本指令是把累加器值与立即数做逻辑异或,结果放到累加器。 运算过程: ACCACC “XOR” x 影响标志位
如果
[m].i = 0
读取 ROM 当前页的内容,并送至数据存储器和 TBLH
本指令是将表格指针指向程序寄存器当前页,将低位送到存储器,高位直接送到
寄存器内。
TBLH 寄存器内。
累加器与立即数做“异或”运算,结果放入累加器
,跳过下一行指令。
TO PDF OV Z AC C
— — — — — —
TO PDF OV Z AC C
— — — — — —
程序存储器高四位
TO PDF OV Z AC C
— — — — — —
TO PDF OV Z AC C
— — — √ — —
TO PDF OV Z AC C
— — — √ — —
TO PDF OV Z AC C
— — — √ — —
TBLH
Rev.1.50 2006-10-31
Page 43
43
封装信息
封装信息::::
封装信息封装信息
HT48E30
24-pin SKDIP (300mil)外形尺寸
标号
标号
标号标号
外形尺寸
外形尺寸外形尺寸
B
C
D
A 1235 -- 1265 B 255 -- 265 C 125 -- 135 D 125 -- 145 E 16 -- 20
F 50 -- 70 G -- 100 -­H 295 -- 315
I 345 -- 360
ɑ 0° -- 15°
A
2 4
1
E
F G
1 3
1 2
H
a
I
mil
尺寸
尺寸((((
尺寸尺寸
))))
Min Nom Max
Rev.1.50 2006-10-31
Page 44
HT48E30
44
28-pin SKDIP (300mil)外形尺寸
标号
标号
标号标号
外形尺寸
外形尺寸外形尺寸
B
C
D
2 8
1
A 1375 -- 1395 B 278 -- 298 C 125 -- 135 D 125 -- 145 E 16 -- 20
F 50 -- 70 G -- 100 -­H 295 -- 315
I 330 -- 375
ɑ 0° -- 15°
A
E
F
1 5
1 4
H
I
G
a
mil
尺寸
尺寸((((
尺寸尺寸
))))
Min Nom Max
Rev.1.50 2006-10-31
Page 45
HT48E30
45
24-pin SOP (300mil)外形尺寸
标号
标号
标号标号
外形尺寸
外形尺寸外形尺寸
2 4
A
1
D
A 394 -- 419
B 290 -- 300 C 14 -- 20
C’ 590 -- 614
D 92 -- 104
E -- 50 --
F 4 -- -­G 32 -- 38 H 4 -- 12
ɑ 0° -- 10°
1 3
B
1 2
C
C '
E F
G
a
mil
尺寸
尺寸((((
尺寸尺寸
))))
Min Nom Max
H
Rev.1.50 2006-10-31
Page 46
HT48E30
46
28-pin SOP (300mil)外形尺寸
标号
标号标号
外形尺寸
外形尺寸外形尺寸
2 8
A
1
D
A 394 -- 419
B 290 -- 300
C 14 -- 20
C’ 697 -- 713
D 92 -- 104
E -- 50 --
F 4 -- -­G 32 -- 38 H 4 -- 12
ɑ 0° -- 10°
1 5
B
1 4
C
C '
E
F
G
H
a
尺寸
尺寸((((mil)))) 标号
尺寸尺寸
Min Nom Max
Rev.1.50 2006-10-31
Page 47
47
包装带和卷轴规格
包装带和卷轴规格::::
包装带和卷轴规格包装带和卷轴规格
卷轴尺寸
卷轴尺寸::::
卷轴尺寸卷轴尺寸
HT48E30
T 2
D
SOP 24W
标号
标号
标号标号
A B C
D
T1
T2
SOP 28W(300mil)
标号
标号
标号标号
A B C
D
T1
T2
A
B
T 1
描述
描述
描述描述 卷轴外圈直径 卷轴内圈直径
轴心直径
尺寸
尺寸
(mm)
尺寸尺寸
330±1.0
62±1.5
13.0+0.5
C
-0.2
缝宽
轮缘宽
2.0±0.5
24.8+0.3
-0.2
卷轴宽
描述
描述
描述描述 卷轴外圈直径 卷轴内圈直径
轴心直径
30.2±0.2
尺寸
尺寸
(mm)
尺寸尺寸
330±1.0
62±1.5
13.0+0.5
-0.2
缝宽
轮缘宽
2.0±0.5
24.8+0.3
-0.2
卷轴宽
30.2±0.2
Rev.1.50 2006-10-31
Page 48
48
运输带尺寸
运输带尺寸::::
运输带尺寸运输带尺寸
HT48E30
D
E
P 1P 0
t
F
SOP 24W
标号
标号 描述
标号标号
W
P
E
F
空穴至穿孔距离(宽度)
D
D1
P0 P1
空穴至穿孔距离(长度)
A0 B0 K0
t
C
SOP 28W(300mil)
标号
标号 描述
标号标号
W
P
E
F
空穴至穿孔距离(宽度)
D
D1
P0 P1
空穴至穿孔距离(长度)
A0 B0 K0
t
C
PD 1
描述 尺寸
描述描述
运输带宽 空穴间距 穿孔位置
穿孔直径
空穴中之小孔直径
穿孔间距
空穴长 空穴宽
空穴深 传输带厚度 覆盖带宽度
描述 尺寸
描述描述 运输带宽 空穴间距 穿孔位置
穿孔直径
空穴中之小孔直径
穿孔间距
空穴长 空穴宽
空穴深 传输带厚度 覆盖带宽度
W
A 0
尺寸(mm)
尺寸尺寸
B 0
C
K 0
24.0±0.3
12.0±0.1
1.75±0.1
11.5±0.1
1.55+0.1
1.5+0.25
4.0±0.1
2.0±0.1
10.9±0.1
15.9±0.1
3.1±0.1
0.35±0.05
21.3
尺寸(mm)
尺寸尺寸
24.0±0.3
12.0±0.1
1.75±0.1
11.5±0.1
1.5+0.1
1.5+0.25
4.0±0.1
2.0±0.1
10.85±0.1
18.34±0.1
2.97±0.1
0.35±0.01
21.3
Rev.1.50 2006-10-31
Page 49
49
盛群半导体股份有限公司
盛群半导体股份有限公司((((总公司
盛群半导体股份有限公司盛群半导体股份有限公司 新竹市科学工业园区研新二路3号 电话
: 886-3-563-1999
传真
: 886-3-563-1189
网站
: www.holtek.com.tw
盛群半导体股份有限公司
盛群半导体股份有限公司((((台北业务处
盛群半导体股份有限公司盛群半导体股份有限公司 台北市南港区园区街3之2号4楼之 电话
: 886-2-2655-7070
传真
: 886-2-2655-7373
传真
: 886-2-2655-7383 (International sales hotline)
盛扬半导体有限公司
盛扬半导体有限公司((((上海
盛扬半导体有限公司盛扬半导体有限公司 上海宜山路 电话 传真 网站
盛扬半导体有限公司
盛扬半导体有限公司((((深圳
盛扬半导体有限公司盛扬半导体有限公司 深圳市南山区科技园科技中三路与高新中二道交汇处生产力大楼A单元五楼 电话 传真
ISDN: 0755-8615-6181
盛扬半导体有限公司
盛扬半导体有限公司((((北京
盛扬半导体有限公司盛扬半导体有限公司 北京市西城区宣武门西大街甲 电话 传真
盛扬半导体有限公司
盛扬半导体有限公司((((成都
盛扬半导体有限公司盛扬半导体有限公司 成都市东大街97号香槟广场C座 电话 传真
Holmate Semiconductor, Inc.((((北美业务处
46712 Fremont Blvd., Fremont, CA 94538
电话 传真 网站
889号2 : 021-6485-5560 : 021-6485-0313 : www.holtek.com.cn
: 0755-8616-9908,8616-9308 : 0755-8616-9533
: 010-6641-0030, 6641-7751, 6641-7752 : 010-6641-0125
: 028-6653-6590 : 028-6653-6591
: 510-252-9880 : 510-252-9885 : www.holmate.com
Copyright  2006 by HOLTEK SEMICONDUCTOR INC.
使用指南中所出现的信息在出版当时相信是正确的,然而盛群对于说明书的使用不负任何责任。文中 提到的应用目的仅仅是用来做说明,盛群不保证或表示这些没有进一步修改的应用将是适当的,也不 推荐它的产品使用在会由于故障或其它原因可能会对人身造成危害的地方。盛群产品不授权使用于救 生、维生器件或系统中做为关键器件。盛群拥有不事先通知而修改产品的权利,对于最新的信息,请 参考我们的网址
总公司))))
总公司总公司
台北业务处))))
台北业务处台北业务处
上海业务处
业务处))))
上海上海
业务处业务处
号楼7楼
深圳业务处
业务处))))
深圳深圳
业务处业务处
北京业务处
业务处))))
北京北京
业务处业务处
成都业务处
业务处))))
成都成都
业务处业务处
http://www.holtek.com.tw
2
200233
号金隅大厦
129
709室 610016
北美业务处))))
北美业务处北美业务处
1721室 100031
518057
HT48E30
Rev.1.50 2006-10-31
Loading...