经济型输入/输出八位OTP单片机
盛群知识产权政策
专利权
盛群半导体公司在全球各地区已核准和申请中之专利权至少有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.1.11 1 2008-12-30
HT48R0AA-1
技术相关信息
· · ·
工具信息 FAQs 应用范例
-HA0003S HT48 & HT46 MCU与HT93LC46的通信 -HA0013S HT48 & HT46 MCU LCM接口设计
-HA0018S HT48 MCU 对HT1621 LCD控制器的应用 -HA0049S HT1380 的读写控制
—HA0075S MCU复位和晶振电路应用应用范例
特性
· 工作电压:
fSYS = 4MHz :2.2V – 5.5V fSYS = 8MHz :3.3V – 5.5V · 23个双向输入/输出口
· 一个与输入/输出共用引脚的外部中断输
入
· 8位可编程定时/计数器,具有溢出中断
和8级预分频器
· 外部晶振和RC振荡电路 · 看门狗定时器
· 程序存储器:4096×15 · 数据存储器:128×8
· 蜂鸣器驱动并支持PFD
· HALT和唤醒功能可降低功耗
· 在VDD=5V,系统时钟为8MHz 时,指令周
期为 0.5 µs
· 所有指令在1或2个指令周期内完成 · 查表指令,表格内容字长15位 · 4层硬件堆栈 · 位操作指令
· 63条功能强大的指令 · 低电压复位功能
· 24/28-pin SKDIP/SOP 封装
概述
HT48R0AA-1是一款八位高性能精简指令集单片机,专为经济型多输入输出控制的产品设计。 拥有低功耗、I/O口使用灵活、定时器功能、振荡选择、省电和唤醒功能、看门狗定时器、蜂鸣器驱动、以及低价位等优势,使此款多功能芯片可以广泛地适用于各种应用,例如工业控制、消费类产品、子系统控制器等。
Rev.1.11
2
2008-12-30
HT48R0AA-1
方框图
引脚图
2008-12-30
Rev.1.11
3
HT48R0AA-1
引脚说明
引脚名称 PA0~PA7 输入输出 输入/输出 说明 双向8位输入/输出口。每一位能被掩膜选项设置为唤醒输上拉电阻 入。软件指令确定CMOS输出或斯密特触发输入,(上拉电唤醒功能 阻由掩膜选项确定)。 双向8位输入/输出口。软件指令确定CMOS输出,或带上上拉电阻 拉电阻的斯密特触发输入(上拉电阻由掩膜选项确定)。输入/输出 PB0和PB1与BZ和BZ共用引脚。一旦PB0和PB1被选为或BZ/BZ 蜂鸣器输出,输出信号来自内部PFD发生器(与定时/计数器共用)。 双向6位输入/输出口。软件指令确定CMOS输出,或带上拉电阻的斯密特触发输入(上拉电阻由掩膜选项确定)。定上拉电阻 时/计数器0和定时/计数器1分别由PC0和PC5输入(斯密特触发输入不带上拉电阻) 双向输入输出口。软件指令确定COMS输出,或带上拉的斯上拉电阻 密特触发输入(上拉电阻由掩膜选项确定)。外部中断输入与PD0共用一个引脚。外部中断输入信号下降沿有效。 — 负电源,接地。 — 斯密特触发复位输入端,低电平有效。 — 正电源。 OSC1和OSC2采用RC振荡或晶体振荡(由掩膜选项确晶体振荡定)提供系统时钟。在RC方式下OSC2是一个系统时钟四或RC振荡 分频的输出口。 掩膜选项 PB0/BZ PB1/BZ PB2~PB7 PC0/TMR0 PC1~PC4 PC5/TMR1 PD0/INT VSS RES VDD OSC1 OSC2 输入/输出 输入/输出 输入/输出 — 输入 — 输入 输出 注:*所有输入/输出口的上拉电阻由掩模选项控制。
每一个PA口有唤醒功能由掩模选项确定。 24-Pin封装无PC1~PC4引脚。
没有引出的引脚必须设置为输出或带上拉电阻的输入,以降低功耗。
极限参数
电源供应电压………….VSS -0.3V至Vss +6.0V 端口输入电压………….Vss -0.3V至VDD +0.3V 端口总灌电流…………………………….150mA 总功耗…………………………………….500mW
储存温度 ………………-50℃至125℃ 工作温度 ………………-40℃至85℃ 端口总源电流 …………-100mA
注意:这里只强调额定功率,超过极限参数所规定的范围将对芯片造成损害,无法预期芯片在上述标示范围外的工作状
态,而且若长期在标示范围外的条件下工作,可能影响芯片的可靠性。
Rev.1.11
4
2008-12-30
HT48R0AA-1
D.C.特性
符号 VDD IDD1 IDD2 IDD3 ISTB1 ISTB2 VIL1 典型 — — 0.6 2 0.8 2.5 4 Ta=25℃
参数 工作电压 工作电流 (晶体振荡) 工作电流 (RC振荡) 工作电流 (晶体振荡,RC振荡) 静态电流 (看门狗打开) 静态电流 (看门狗关闭) 输入/输出口、TMR0、TMR1和INT的低电平输入电压 输入/输出口、TMR0、TMR1和INT的高电平输入电压 低电平输入电压(RES) 高电平输入电压(RES) 低电压复位 输入/输出口灌电流 输入/输出口源电流 上拉电阻 VDD — — 3V 5V 3V 5V 5V 3V 5V 3V 5V 测试条件 条件 fSYS=4MHZ fSYS=8MHZ 无负载 FSYS=4MHZ 无负载 fSYS=4MHZ 无负载 fSYS=8MHZ 无负载 暂停模式 无负载 暂停模式 — 最小 2.2 3.3 — — — — 最大 5.5 5.5 1.5 4 1.5 4 8 5 10 1 2 0.3VDD 单位 V V mA mA mA — — — — — 0 — — — — — μA μA V — VIH1 VIL2 VIH2 VLVR IOL IOH RPH — — — — 3V 5V 3V 5V 3V 5V — — — LVR打开 VOL=0.1VDD VOH=0.9VDD 0.7VDD 0 0.9VDD 2.7 4 10 -2 -5 20 10 — — — 3.0 8 20 -4 -10 60 30 VDD 0.4VDD VDD 3.3 — — — — 100 50 V V V V mA mA mA mA KΩ KΩ — — Rev.1.11
5
2008-12-30
HT48R0AA-1
A.C.特性 Ta=25℃
符号 fSYS1 fSYS2 fTIMER tWDTOSC tWDT1
参数
系统时钟(晶体振荡) 系统时钟(RC振荡) 定时器输入频率(TMR0/TMR1) 看门狗振荡器周期
测试条件
VDD
条件
最小 400 400 400 400 0 0 45 32 11 8 - 1 - 1 0.25
典型 — — — — — — 90 65 23 17 1024 - 1024 - 1
最大 4000 8000 4000 8000 4000 8000 180 130 46 33 - - - - 2
单位 kHZ kHZ kHZ
看门狗溢出周期(WDT振荡器)
tWDT2 看门狗溢出周期(系统时钟) tRES 外部复位低电平脉宽 tSST 系统启动延时周期 tINT 中断脉冲宽度 tLVR 低压复位时间 注:*tSYS=1/ tSYS1,1/ tSYS2
— — — — — — 3V 5V 3V 5V - - - - -
2.2V~5.5V 3.3V~5.5V 2.2V~5.5V 3.3V~5.5V 2.2V~5.5V 3.3V~5.5V
— — WDT无预分频 WDT无预分频
-
HALT模式唤醒
- -
μs ms tSYS* μs tSYS* μs ms
Rev.1.11
6
2008-12-30
HT48R0AA-1
系统功能说明
指令执行时序
系统时钟由晶体振荡器或RC振荡器产生。系统内部对此频率进行四分频,产生四个不重叠的时钟周期。一个指令周期包括四个系统时钟周期。指令读取与执行是以流水线方式来进行的。这种方式允许在一个指令周期进行读取指令操作,而在下一个指令周期里进行解码与执行该指令。这种流水线方式能在一个指令周期里有效地执行一个指令。但是,如果指令是要改变程序计数器,就需要花两个指令周期来完成这一条指令。
指令执行时序
程序计数器(程序计数器(PC)
程序计数器控制存放在程序存储器中的要被执行的指令序列。程序计数器可寻址程序存储器的所有地址。通过访问一个程序存储单元来取出指令代码后,PC的值便会加1。然后程序计数器便会指向下一条指令代码所在的程序存储单元。
当执行一条跳转指令,条件跳转指令,装载PCL寄存器,子程序调用,初始复位,内部中断,外部中断,或从一个子程序返回,PC会通过装载相应的地址来执行程序转移。
通过指令实现条件跳转,一旦条件满足,那么在当前指令执行期间取出的下一条指令会被放弃,而替代它的是一条空指令周期来获取正确的指令,接着就执行这条指令。否则就执行下一条指令。
程序计数器的低位字节(PCL)是可读写的寄存器。将数据赋值到PCL会执行一个短跳转。这种跳转只能在256个地址范围内。
当一个控制转移发生时,系统也会插入一个空指令周期。
程序计数器
模 式
*11 *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 0 0 1 0 0 外部中断
0 0 0 0 0 0 0 0 1 0 0 0 定时/计数器0
0 0 0 0 0 0 0 0 1 1 0 0 定时/计数器1
条件跳转 程序计数器+2
*11 *10 *9 *8 @7 @6 @5 @4 @3 @2 @1 @0 装载PCL
#11 #10 #9 #8 #7 #6 #5 #4 #3 #2 #1 #0 跳转,子程序调用
S11 S10 S9 S8 S7 S6 S5 S4 S3 S2 S1 S0 从子程序返回
程序计数器
注意:*11~ *0 :程序计数器位
#11 ~ #0 :指令代码位
S11 ~ S0 :堆栈寄存器位 @7 ~ @0 :PCL位
Rev.1.11
7
2008-12-30
HT48R0AA-1
程序存储器(程序存储器(ROM)
程序存储器被用来存放要执行的指令代码。还包括数据、表格、中断向量。一共为4096×15位。可以由程序计数器或表格指
针来寻址。 在程序存储器中某几个地址被保留作为特殊用途。 · 地址 000H 此地址保留给程序初始化之用。当系统复位时,程序会从000H地址开始执行。 · 地址 004H
该地址保留给外部中断服务使用。当INT端被下降沿触发,若中断允许,且堆栈又未满,就能产生中断,程序会从 004H 地址开始执行外部中断服务程序。 · 地址 008H
该地址保留给定时/计数器中断服务使用。当中断允许,且堆栈又未满,则一旦定时/计数器发生溢出时,就能产生中断,程序会从008H地址开始执行中断服务程序。
· 地址 00CH
程序存储器
此地址保留给定时/计数器1中断服务使用。当中断允许,且堆
栈未满,则一旦定时/计数器发生溢出时,就能产生中断,程序会从00CH地址开始执行中断服务程序。 · 表格区
程序存储器内的任何地址都可被用来作为查表使用。查表指令为TABRDC [m] 与TABRDL [m]。TABRDC [m]是查表当前页的数据 [ 1 页=256个字 ( word )]。TABRDL [m]是查表最后一页的数据,[m] 为数据存放的地址。在执行TABRDC [m]指令后,将会传送当前页的一个字的低位字节到[m],而这个字的高位字节传送到TBLH(08H)。只有表格中的低节被送到目标地址中,而表哥中的高位字节的其它位被传送到TBLH的低部位,剩余的二位作为0读出。TBLH为只读寄存器。而表格指针(TBLP;07H)是可以读写的寄存器,用来指明表格地址。在访问表格以前,通过对 TBLP 寄存器赋值来指明表格地址。TBLH只能读出而不能存储。如果主程序和ISR(中断服务程序)二者都使用查表指令,那么在主程序中的TBLH的内容可能会被ISR中的查表指令改变而产生错误。换句话说,应该避免在主程序和ISR(中断服务程序)中同时使用查表指令。但是,如果主程序和ISR(中断服务程序)二者都必需使用查表指令,那么中断应该在查表指令前被禁止,直到TBLH被备份好。查表指令要花两个指令周期来完成这一条指令的操作。按照用户的需要,这些区域可以作为正常的程序存储器来使用。
指令 TABRDC [m] TABRDL [m]
*11 P11 1 *10 P10 1 *9 P9 1 *8 P8 1 *7 @7 @7 表格区
表格地址 *6 *5 @6 @5 @6 @5
*4 @4 @4 *3 @3 @3 *2 @2 @2 *1 @1 @1 *0 @0 @0
注意:*11 ~ *0 :表格地址位 @7 ~ @0 :表格指针位
P11~P8 :当前程序计数器位
Rev.1.11
8
2008-12-30
HT48R0AA-1
堆栈寄存器(堆栈寄存器(STACK)
堆栈寄存器(STACK)是一个用来保存PC值的特殊存储空间。堆栈有四级组成,堆栈寄存器既不是数据存储器的一部分,也不是程序存储器的一部分,而且它既不能读出,也不能写入。任何一级堆栈的使用是由堆栈指针(SP)来确定。堆栈指针也不能读出与写入。一旦发生子程序调用或中断响应时,程序计数器(PC)的值会被压入堆栈。在子程序调用结束或从中断返回时, 通过执行一条返回指令(RET或RETI),堆栈将原先压入堆栈的内容弹出,重新装入程序计数器中。在系统复位后,堆栈指针会指向堆栈顶部。
如果堆栈满了,并且发生了不可屏蔽的中断,那么中断请求标志将会被记录下来,但是,该中断的响应还是会被禁止,直到堆栈指针(由RET或RETI)发生递减时,中断才会被响应。这个功能能防止堆栈溢出,使得程序员易于使用这种结构。同样地,堆栈已满,接着又执行一个子程序调用(CALL),那么堆栈会产生溢出,而使首先进入堆栈的内容将会丢失。只有最后的四个返回地址会被保留着。 数据存储器(数据存储器(RAM)
数据存储器有149×8位。它可分成两个功能组:特殊功能寄存器和通用数据存储区128×8。这两个功能组的大部分单元可以读写,而某些单元只能读出,不能写入。 20H以前的未用的单元都被保留为将来进一步扩展使用。读取这些被保留单元的值,都将返回00H。通用数据存储器地址20H~9FH作为程序数据和控制信息使用。 所有的RAM 区单元都能直接执行算术,逻辑,递增,递减和移位等运算。除了某些特殊的位以外,RAM中的每一位都可以由SET[m].i和CLR[m].i指令来置位和复位。它们都可通过存储器指针寄存器(MP;01H)间接寻址来存取。 间接寻址寄存器
数据存储器
地址00H是作为间接寻址寄存器。它没有实际的物理空间。任何对[00H]的读/写操作,都会访问由MP(01H)所指向的RAM单元。间接地读取[00H],将会返回00H,而间接地写入00H单元,则不会产生任何结果。
间接寻址指针寄存器MP是8位寄存器。
Rev.1.11
9
2008-12-30
HT48R0AA-1
累加器(累加器(ACC)
累加器(ACC)与算术逻辑单元(ALU)紧密联系。它对应于RAM的地址05H,并能与立即数进行操作,在存储器间的数据传送都必须经过累加器。 算术逻辑单元(算术逻辑单元(ALU)
算术逻辑单元是执行8位算术逻辑运算的电路。它提供如下的功能:
· 算术运算 ( ADD,ADC,SUB,SBC,DAA ) · 逻辑运算 ( AND,OR,XOR,CPL ) · 移位运算 ( RL,RR,RLC,RRC ) · 递增和递减运算 ( INC,DEC )
· 分支跳转 ( SZ,SNZ,SIZ,SDZ等)
算术逻辑单元ALU不仅会保存运算的结果而且会改变状态寄存器。 状态寄存器(状态寄存器(STATUS)
8位的状态寄存器,由零标志位(Z),进位标志位(C),辅助进位标志位(AC),溢出标志位(OV),暂停标志位(PDF),看门狗定时器溢出标志位(TO)组成。该寄存器不仅记录状态信息,而且还控制运算顺序。
除了TO和PDF以外,状态寄存器中的位都可用指令来改变,这种情况与其它寄存器一样。任何写到状态寄存器的数据不会改变TO或PDF标志位。但是与状态寄存器有关的运算会导致状态寄存器的改变。系统上电,看门狗定时器溢出或执行“CLR WDT”或“HALT”指令,能改变看门狗定时器溢出标志位(TO)。系统上电,或执行“HALT”或“CLR WDT”指令,能改变暂停标志位(PDF)。
位 符号 功 能
在加法运算中结果产生了进位或在减法运算中结果不产生借位,那么C
0 C
被置位;反之,C被清零。它也可被一个循环移位指令而影响。 在加法运算中低四位产生了进位或减法运算中在低四位不产生借位,
1 AC
AC被置位;反之,AC被清零。
2 Z 算术运算或逻辑运算的结果为零则Z被置位;反之,Z被清零。
如果运算结果向最高位进位,但最高位并不产生进位输出,那么OV
3 OV
被置位;反之,OV被清零。
系统上电或执行了CLR WDT指令,PDF被清零。执行HALT指令
4 PDF
PDF被置位。
系统上电或执行了CLR WDT指令或HALT指令,TO被清零。WDT
5 TO
溢出,TO被置位。
6~7 — 未定义,读出为零
状态寄存器(状态寄存器(0AH)
Z,OV,AC和C标志位都反映了当前的运算状态。另外,在进入中断子程序或执行子程序调用
时,状态寄存器的内容不会自动压入堆栈。如果状态寄存器的内容是重要的,而且子程序会改变状态寄存器的内容,那么程序员必须事先将其保存好,以免被破坏。
Rev.1.11
10
2008-12-30
HT48R0AA-1
中 断(INT)
单片机提供一个外部中断和内部定时器/计数器中断。中断控制寄存器(INTC;0BH)包含了中断控制位,用来设置中断允许/禁止及中断请求标志。
一旦有中断子程序被服务,所有其它的中断将被禁止(通过清零EMI位)。这种机制能防止中断嵌套。这时如有其它中断请求发生,这个中断请求的标志会被记录下来。如果在一个中断服务程序中有另一个中断需要服务的话,程序员可以设置EMI位及INTC所对应的位来允许中断嵌套服务。如果堆栈已满,该中断请求将不会被响应。即使相关的中断被允许,也要到堆栈指针发生递减时才会响应。如果需要立即得到中断服务,则必须避免让堆栈饱和。
位 符号 功 能 0 EMI 主中断控制位(1=允许,0=禁止) 1 EEI 外部中断控制位(1=允许,0=禁止) 2 ET0I 定时/计数器0中断控制位(1=允许,0=禁止) 3 ET1I 定时/计数器1中断控制位(1=允许,0=禁止) 4 EIF 外部中断请求标志位(1=有, 0=无) 5 T0F 定时/计数器0中断请求位(1=有, 0=无) 6 T1F 定时/计数器1中断请求位(1=有, 0=无) 7 — 未使用位,读出为零
中断控制寄存器(中断控制寄存器(0BH)
所有的中断都具有唤醒功能。当一个中断被服务时,会产生一个控制传送:通过将程序计数器
(PC)压入堆栈,然后转移到中断服务程序的入口。只有程序计数器(PC)的内容能压入堆栈。如果寄存器和状态寄存器的内容会被中断服务程序改变,从而破坏主程序的预定控制,那么程序员必须事先将这些数据保存起来。
外部中断是由INT脚上的电平由高到低的变化触发的,相关的中断请求位(EIF,INTC的第4位)被置位。当中断允许,堆栈也没有满,一个外部中断触发时,将会产生地址04H的子程序调用。中断请求标志(EIF)位和EMI位将也会被清零来禁止中断的嵌套。
内部定时/计数器0中断发生时,会设置定时/计数器中断请求标志位(T0F,INTC的第五位),中断的请求是由定时器溢出产生的。当中断允许,堆栈又未满,并且TF已被置位,就会产生地址08H的子程序调用。该中断请求标志位(T0F)被复位并且EMI位将被清零,以便禁止中断的嵌套。
内部定时/计数器1中断发生时,会设置定时/计数器中断请求标志位(T1F,INTC的第六位),中断的请求是由定时器溢出产生的。当中断允许,堆栈又未满,并且TF已被置位,就会产生地址0CH的子程序调用。该中断请求标志位(T0F)被复位并且EMI位将被清零,以便禁止中断的嵌套。
单片机在执行中断子程序期间,其他的中断响应会被暂停,直到RETI指令被执行或是EMI位和相关的中断控制位都被置为1(堆栈未满时)。若要从中断子程序返回时,只要执行RET或RETI指令即可。RETI指令将会自动置位EMI位来允许中断服务,而RET则不能自动置位EMI。
如果中断在二个连续的T2脉冲的上升沿间发生,如果中断响应被允许的话,那么在二个T2脉冲后,该中断会被服务。如果同时发生中断服务请求,那么下列表中列出了中断服务优先等级。这种优先级也可以通过EMI位的复位来屏蔽。
中 断 源 优 先 级 中断
1 04H 外部中断
2 08H 定时/计数器溢出0
3 0CH 定时/计数器溢出1
一旦中断请求标志位(T0F,T1F,EIF)被置位,它们将在INTC中被保留下来,直到相关的中断被服务或由软件指令来清零。建议不要在中断子程序中使用“CALL”指令来调用子程序,因为它可能会破坏原来的控制序列,而中断经常随机发生或某一个确定的应用程序可能要求立即服务。基于上述情况,如果只剩下一个堆栈,若此时中断不能很好地被控制,而且在这个中断服务程序中又执行了CALL子程序调用,则会造成堆栈溢出而破坏原先的控制序列。
Rev.1.11
11
2008-12-30
HT48R0AA-1
振荡器
通过掩膜选项,可以选择外部晶体振荡或外部RC振荡。两者都可作为系统时钟。不管用哪种振荡器,其信号都支持系统时钟。HALT模式会停止系统振荡器并忽略任何外部信号,由此来节省功耗。
如果采用RC振荡方式,那么在VDD与OSC1之间要接一个
外部电阻。其阻值范围为24KΩ~1MΩ。在OSC2端可获得系统时
钟四分频信号,它可以用于同步系统外部逻辑。RC振荡器是一种
低成本的方案,但是振荡频率由于VDD,温度及芯片自身参量的 系统振荡器 漂移而产生误差。因此,对计时敏感的场合,要求精确度高的振荡 器频率,RC振荡器是不适用的。
如果选用晶体振荡方式,在OSC1与OSC2之间连接一个晶体,用来提供晶体振荡器所要的反馈(Feedback)和相位位移(Phase Shift)。除此以外,不再需要其他外部元件。另外,在OSC1与OSC2之间接一个谐振器(Resonator) 来取代晶体振荡器用来得到参考频率,但是需要在OSC1与OSC2外接二个电容器。
WDT看门狗振荡器是一个芯片内部自由振荡的RC振荡器,不需连接外部元件。甚至系统进入省电模式时,系统时钟停止了,但WDT振荡器仍然依大约65us/5V的周期工作。由掩膜选项,WDT振荡器能停振来节省功耗。
Rev.1.11
12
2008-12-30
HT48R0AA-1
看门狗定时器 (WDT)
WDT的时钟源是由一个专用的RC振荡器(WDT振荡器)或是由指令周期(系统时钟4分频)来实现的,由掩膜选项来决定的。WDT是用来防止程序不正常运行或是跳到未知或不希望去的地址,而导致不可预见的结果。WDT可以被掩膜选项禁止。如果WDT定时器被禁止,所有与WDT有关的操作都是空操作。
如果设置了内部WDT振荡器(以65us/5V为周期的RC振荡器)的话,WDT的值会先除以256(8级)来产生大约17ms/5V的溢出时间,这个溢出时间会因为温度,VDD,以及芯片参数的变化而变化。如果启动WDT的预分频器,则可实现更长的溢出时间。写数据到WS2,WS1,WS0 (WDTS的2、1、0位)会产生不同的溢出时间,举例来说,如果WS2,WS1,WS0的值都为1,其分频级数最大,为1:128,溢出时间最长约2.1s/5V。如果WDT被禁止,那么WDT的时钟来源可来自指令时钟,其运作与WDT振荡器一样。但当在HALT状态时,来源于指令时钟的WDT会在暂停模式时停止计数并失去保护功能。在这种情况下,只能由外部逻辑来重新启动系统。WDTS的高四位及其第3位保留给用户定义标志来使用,程序员可以利用这些标志来指示某些特殊的状态。
看门狗定时器
如果单片机工作在干扰很大的环境中,那么强烈建议使用片内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 WS1 WS0 分频率 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:32 1 1 0 1:64 1 1 1 1:128
看门狗定时器预置寄存器(看门狗定时器预置寄存器(09H)
Rev.1.11
13
2008-12-30
HT48R0AA-1
暂停模式(暂停模式(HALT)
暂停模式是由HALT指令来实现的,产生如下结果:
· 关闭系统振荡器,但WDT振荡器继续工作(如果选择WDT振荡器)。 · RAM及寄存器的内容保持不变。
· WDT被被清除并再次重新计数(如果WDT时钟来源是WDT振荡器)。 · 所有的输入/输出口都保持其原先状态。 · PDF标志位被置位,TO标志位被清零。
由于外部复位、中断、外部输入一个下降沿的信号到PA口或WDT溢出,可使系统脱离暂停状
态。外部复位能使系统初始化而WDT溢出使系统“热复位”。测试TO和PDF状态后,系统复位的原因就可以被确定。PDF标志位是由系统上电复位和执行 CLR WDT 指令被清除,而它的置位是由于执行了HALT指令。如果WDT产生溢出,会使TO标志位置位,还能产生唤醒使得程序计数的PC和堆栈指针SP复位。其他都保持原状态。
PA口的唤醒和中断方式被看作为正常运行继续。PA口的每一位都可以通过掩膜选项来单独设定为对系统的唤醒。如果唤醒是来自于输入/输出口的信号变化,程序会重新继续执行下一条命令。如果唤醒是来自于中断,那么有两种情况可能发生:如果相关的中断被禁止或中断是允许的,但堆栈已满,那么程序将继续执行下条指令,如果中断允许并且堆栈未满,那么这个中断响应就发生了。如果在进入HALT模式以前,中断请求标志位被置“1”,那么相关的中断唤醒功能被禁止。一旦唤醒事件发生,要花1024tsys(系统时钟周期),系统重新正常运行。换句话说,在唤醒后被插入了一个等待时间。如果唤醒是来自于中断响应,那么实际的中断程序执行就被延迟了一个或一个以上的周期。但是如果唤醒导致下一条指令执行,那么在一个等待周期结束后指令就立即被执行。 为了省电,在进入HALT模式之前必须要小心处理输入/输出口状态。
Rev.1.11
14
2008-12-30
HT48R0AA-1
复位(复位(RESET)
有三种方法可以产生复位:
· 在正常运行时期由RES脚产生复位。 · 在HALT期间RES脚产生复位。 · 正常运行时,WDT溢出复位。
在HALT期间WDT溢出是不同于其它的复位操作条件,因为
它可执行 “热复位”,结果只能使程序计数器PC和堆栈指针SP复位,而别
复位电路 的寄存器均保持原来的状态。在其他复位条件下,某些寄存器保持不变。当
复位条件被满足时,极大多数的寄存器被复位到“初始状态”,通过测试PDF注意:“*”为了避免
噪声干扰,连接RES引
标志位和TO标志位,程序能分辨不同的系统复位。 脚的线应尽量短
TO PDF 复 位 条 件 0 0 电源上电RES复位 u u 正常运作时由RES复位 0 1 RES时唤醒暂停模式 1 u 正常运作时发生看门狗定时器超时 1 1 由看门狗定时器唤醒暂停模式
注释:“u”表示未变化。
为保证系统振荡器起振并稳定运行,那么SST(系统启动定时器)当系统复位(上电,WDT定时溢出或RES)或从HALT状态被唤醒时,提供额外延迟1024个系统时钟脉冲。
复位时序
复位电路结构
当系统复位时,SST延迟被加到复位周期中。任何来自HALT的唤醒都将允许SST延迟。 系统复位时各功能单元的状态如下所示:
程序计数器(PC) 000H 中断 禁止 预分频器 清除 看门狗定时器 清除,复位后看门狗定时器开始计数 定时/计数器 关闭 输入/输出口 输入模式 堆栈指针SP 指向堆栈顶端
Rev.1.11
15
2008-12-30
HT48R0AA-1
有关寄存器的状态如下:: 寄存器 MP ACC PC TBLP TBLH WDTS STATUS INTC TMR0 TMR0C TMR1 TMR1C PA PAC PB PBC PC PCC PD PDC 上电复位 xxxx xxxx WDT溢出 (正常运行)正常运行) uuuu uuuu uuuu uuuu 000H uuuu uuuu -uuu uuuu 0000 0111 --1u uuuu -000 0000 xxxx xxxx 00-0 1000 xxxx xxxx 00-0 1--- 1111 1111 1111 1111 1111 1111 1111 1111 --11 1111 --11 1111 ---- ---1 ---- ---1 RES端复位 (正常运行)正常运行) RES端复位 WDT溢出 (暂停模式)暂停模式)* (暂停模式)暂停模式) xxxx xxxx 000H xxxx xxxx -xxx xxxx 0000 0111 --00 xxxx -000 0000 xxxx xxxx 00-0 1000 xxxx xxxx 00-0 1--- 1111 1111 1111 1111 1111 1111 1111 1111 --11 1111 --11 1111 ---- ---1 ---- ---1 uuuu uuuu uuuu uuuu 000H uuuu uuuu -uuu uuuu 0000 0111 --uu uuuu -000 0000 xxxx xxxx 00-0 1000 xxxx xxxx 00-0 1---- 1111 1111 1111 1111 1111 1111 1111 1111 --11 1111 --11 1111 ---- ---1 ---- ---1 uuuu uuuu uuuu uuuu 000H uuuu uuuu -uuu uuuu 0000 0111 --01 uuuu -000 0000 xxxx xxxx 00-0 1000 xxxx xxxx 00-0 1--- 1111 1111 1111 1111 1111 1111 1111 1111 --11 1111 --11 1111 ---- ---1 ---- ---1 uuuu uuuu uuuu uuuu 000H uuuu uuuu -uuu uuuu uuuu uuuu --11 uuuu -uuu uuuu uuuu uuuu uu-u uuuu uuuu uuuu uu-u u--- uuuu uuuu uuuu uuuu uuuu uuuu uuuu uuuu --uu uuuu --uu uuuu ---- ---u ---- ---u 注意:“*”表示“热复位”。 “U”表示不变化。 “×”表示不确定。
定时/计数器
这个单片机提供两个定时/计数器(TMR0,TMR1)。定时/计数器0是一个8位可编程的向上计数的计数器,时钟可以来自外部的时钟源或是系统时钟。定时/计数器1也是一个8位可编程的向上计数的计数器,时钟可以来自外部的时钟源或是系统时钟四分频。
在采用外部时钟输入的情况下,允许用户计量外部事件、测量时间间隔或脉冲宽度、或产生一个精确的时基信号。
该定时/计数器0使用外部时钟或内部时钟可以产生PFD信号,PFD信号频率可由等式fINT / [2×(256-N)]计算。
有两个寄存器与定时/计数器0/1相关联,即TMR0/TMR1([0DH]/[10H])和TMR0C/TMR1C([0EH]/[11H])。有两个物理寄存器对应TMR0/TMR1的位置。写入TMR0/TMR1会将初始值装入到定时/计数器0/1的预置寄存器中,而读TMR0/TMR1则会获得定时/计数器0/1的内容。TMR0C/TMR1C是定时/计数器控制寄存器。
TMR0C是定时/计数器0的控制寄存器,用来定义工作模式:打开或关闭计数器和有效边沿触发。 T0M0,T0M1和T1M0,T1M1位定义操作模式。外部事件计数模式用来记录外部事件,这意味着时钟来自外部(TMR0/TMR1)引脚。定时器模式是作为一个普通的定时器功能,时钟源来自fINT时钟/指令时钟(Timer0/Timer1)。脉冲宽度测量模式能用来计算外部引脚(TMR0/TMR1)上的高电平或低电平的宽度。计数是基于fINT时钟/指令时钟(Timer0/Timer1)。
在外部事件计数或定时器模式中,一旦定时/计数器0/1开始计数,它将会从当前定时/计数器0/1中的数值开始计数到FFH。一旦产生溢出,计数器会从定时/计数器预置寄存器重新装载并且同时产生相应的中断请求状态位(T0F/T1F ;INTC的第5,6位)。
在脉冲宽度测量中,将T0ON/T1ON和T0E/T1E置为“1”,当TMR0/TMR1接收到从低到高的电平跳变(或从高到低的变化,如果T0E/T1E位被清零),就开始计数直到TMR0/TMR1返回到原来的电平并且复位T0ON/T1ON位。测量的结果被保留在定时/计数器0/1中,甚至电平跳变再一次发生也不会
Rev.1.11
16
2008-12-30
HT48R0AA-1
改变。换句话说,一次只能测量一个周期。直到T0ON/T1ON再次被置位,只要再接到跳变信号,那么测量过程会再次执行。要注意在这个操作模式中,定时/计数器0/1的启动计数不是根据逻辑电平,而是依据信号的边沿跳变触发。一旦发生计数器溢出,计数器0/1会从定时/计数器0/1的预置寄存器重新装入,并引发出中断请求,这种情况与其另外两个模式一样。要使得计数运行,只要将定时器启动位(T0ON/T1ON;TMR0C/TMR1C的第4位)置1。在脉宽测量模式中,T0ON/T1ON在测量周期结束后自动被清零。但在另外两个模式中,T0ON/T1ON只能由指令来复位。定时/计数器0/1的溢出是唤醒的信号之一。不管任何模式,若写0到ET0I/ET1I位即可禁止相应的中断服务。
在定时/计数器0/1为关闭的状态下,写数据到定时/计数器0/1的预置寄存器之中,同时也会将数据装入定时/计数器0/1中。但若是定时/计数器0/1已经开启,写到定时/计数器0/1的数据只会被保留在定时/计数器0/1的预置寄存器中,直到定时/计数器0/1发生计数溢出为止,再由预置寄存器加载新的值。当定时/计数器0/1(TMR0/TMR1)的数据被读取时,会禁止时钟输入以防出错。因为禁止时钟输入可能导致计数错误,所以程序员必须仔细加以考虑。
TMR0C的0~2位被用于定义定时/计数器0的内部时钟源的预分频级数。定义如表所示。定时/计数器0的溢出信号被用于产生驱动蜂鸣器的PFD信号。
位 符号 功能
定义预分频器级数,P0SC2,P0SC1,P0SC0= 000:fINT= fSYS /2 001:fINT= fSYS /4 010:fINT= fSYS /8
P0SC0~
0-2 011:fINT= fSYS /16
P0SC2
100:fINT= fSYS /32 101:fINT= fSYS /64 110:fINT= fSYS /128 111:fINT= fSYS /256
定义定时/计数器TMR0的触发方式:
外部事件计数模式(T0M1,T0M0)=(0,1) 1:下降沿发生 0:上升沿发生
脉冲宽度测量模式(T0M1,T0M0)=(1,1) 1:上升沿开始,下降沿结束 0:下降沿开始,上升沿结束
打开/关闭定时/计数器0( 1=打开,0=关闭) 未用,读出为0 定义操作模式
01=外部事件计数模式(外部时钟) 10=定时器模式(内部时钟) 11=脉冲宽度测量模式 00 =未用
TMR0C寄存器(寄存器(0EH)
Rev.1.11
17
2008-12-30
3 T0E
4 5 6
7
T0ON
— T0M0 T0M1
HT48R0AA-1
位 0-2
符号 —
未用,读出为0
定义定时/计数器TMR1的触发方式:
外部事件计数模式(T1M1,T1M0)=(0,1) 1:下降沿发生 0:上升沿发生
脉冲宽度测量模式(T1M1,T1M0)=(1,1) 1:上升沿开始,下降沿结束 0:下降沿开始,上升沿结束
打开/关闭定时/计数器1( 1=打开,0=关闭) 未用,读出为0 定义操作模式
01=外部事件计数模式(外部时钟) 10=定时器模式(内部时钟) 11=脉冲宽度测量模式 00 =未用
TMR1C寄存器(寄存器(11H) 功能
3 T1E
4 5 6
7
T1ON
— T1M0 T1M1
定时/计数器0 定时/计数器1
Rev.1.11
18
2008-12-30
HT48R0AA-1
输入/输出口
单片机具有23个双向输入输出口,标号从PA到PD,其分别对应的RAM的[12H],[14H],[16H]和[18H]。所有的输入/输出口都能被作为输入或输出使用。就输入而言这些口不具有锁存功能,即,输入数据必须在“MOV A,[m]”(m=12H,14H,16H和18H) 指令的T2 上升沿被准备好。对输出而言,所有的数据被锁存并保持不变,直到输出锁存器重新被改写。
每个输入输出口都有其自己的控制寄存器(PAC,PBC,PCC,PDC),用来控制输入/输出模式。使用控制寄存器,可对CMOS输出或斯密特触发输入在软件下动态地进行改变。作为输入时,相应的控制寄存器必须写“1”。信号源的输入也取决于控制寄存器。如果控制寄存器的某位值为“1”那么输入信号是读取这个引脚状态,但是如果控制寄存器的某位值为“0”,那么那么锁存器的内容将会被送到内部总线。后者,可以在“读改写”指令中发生。
对于输出功能,只能设置为CMOS输出。这些控制寄存器是对应于内存的13H,15H,17H,19H地址。芯片复位后,这些输入/输出口都会是高电平或浮空状态(取决于上拉电阻的选项)。每一个输入/输出锁存位都能被SET [m].i 或CLR [m].i 指令置位或清零(m=12H,14H,16H和18H)。
某些指令会首先输入数据然后进行输出操作。例如,SET [m].i ,CLR [m].i,CPL [m]和CPLA [m]指令,读取输入口的状态到CPU,执行这个操作(位操作),然后将数据写回锁存器或累加器。
PA的每一个口都具有唤醒系统的能力。PC口的高2位和PD口的高7位在物理上是不存在的;读取这些位时将返回“0”,而写入则是一个空操作。
所有的输入/输出口都可以有上拉电阻的选择。一旦选择上拉电阻,所有的输入/输出口都具有上拉电阻。必须要注意的是:没有上拉电阻的输入/输出口工作在输入模式会产生浮空状态。
PB0和PB1分别与BZ和BZ共用引脚。如果BZ/BZ的选项被选择,PB0/PB1在输出模式时的输出信号将是由定时/计数器0的溢出信号产生的PFD信号。在输入模式始终保持它的原来的功能。一旦BZ/BZ的选项被选择,蜂鸣器的输出信号只受PB0数据寄存器控制。PB0/PB1的输入/输出功能如下所示:
I I I I O O O O O O PB0 输入/输出
I O O O I I I O O O PB1 输入/输出
PB0/PB1 模式 × C B B C B B C B B PB0 数据 × × 0 1 D 0 1 D0 0 1 PB1数据 × D × × × × × D1 × ×
I I I I D 0 B D0 0 B PB0 Pad 状态
I D 0 B I I I D1 0 B PB1 Pad 状态
注释: I:输入;O:输出;D,D0,D1 :数据; B:蜂鸣器的选项,BZ或BZ ;×:任意值; C:CMOS 输出;
PC0和PC5与TMR0和TMR1共用引脚,PD0与INT共用引脚。
Rev.1.11
19
2008-12-30
HT48R0AA-1
输入/输入/输出口 输出口
为了避免在浮空状态下功耗太大,建议将未用的或没有连结到外部的输入/输出口由软件指令设置
成输出引脚。
Rev.1.11
20
2008-12-30
HT48R0AA-1
低电压复位 (LVR)
为了监控器件的工作电压,单片机提供低电压复位功能。如果工作电压在 0.9V~VLVR之间,例如电池电压的变化,那么LVR会自动使器件产生内部复位。
LVR功能说明如下:
· 低电压(0.9V~VLVR)的状态必须持续1ms 以上。如果低电压的状态没有持续1ms 以上,那么LVR会忽视它而不去执行复位功能。
· LVR通过与外部RES信号的“或”的功能来执行系统复位。 VDD与VLVR之间的关系如下所示:
注:V为系统时钟4MHz OPR
时一般芯片正常工作电压
的范围。
低电压复位
注意:
*1:要保证系统振荡器起振并稳定运行,在系统进入正常运行以前,SST提供额外的1024个系统时钟周期的延迟。 *2:因为低电压状态必须保持1ms 以上,因此进入复位模式就要有1ms的延迟。
掩膜选项
以下的表格,列出了这种单片机的各种类型的掩膜选项。所有的掩膜选项必须正确定义。
编号 选 项 1 WDT 时钟源:WDT振荡或fSYS /4 2 WDT功能:打开/关闭 3 LVR功能:打开/关闭 4 清除看门狗指令条数:1或2条指令 5 系统振荡选择:外部RC振荡/外部晶体振荡 6 PA位唤醒:打开/关闭 7 PA,PB,PC,PD上拉电阻:打开/关闭(整个口) 8 BZ功能:打开/关闭
Rev.1.11
21
2008-12-30
HT48R0AA-1
应用电路
下表所示为根据不同的晶振值选择R1、C1、C2(仅供参考)
晶体振荡或谐振器 C1,C2 R1
0pF 4MHz晶体振荡 10kΩ 10pF 4MHz谐振器 12kΩ 0pF 3.58MHz晶体振荡 10kΩ 25pF 3.58MHz谐振器 10kΩ 25pF 2MHz晶体振荡和谐振器 10kΩ 35pF 1MHz晶体振荡 27kΩ 300pF 480KHz谐振器 9.1kΩ 300pF 455KHz谐振器 10kΩ 300pF 429KHz谐振器 10kΩ
电阻R1保证了在低电压状态下,晶体振荡被关闭。这里的低电压,是指低于MCU正常工作电压范围。请注意,当启动了LVR功能,R1可以不接。
注意:电阻和电容值选取的原则是使VDD保持稳定并在RES置为高以前把工作电压保持在允许的范围内。
“*”为了避免噪声干扰,连接RES引脚的线请尽可能地短
Rev.1.11
22
2008-12-30
HT48R0AA-1
指令集
简介
任何单片机成功运作的核心在于它的指令集,此指令集为一组程序指令码,用来指导单片机如何去执行指定的工作。在盛群单片机中,提供了丰富且灵活的指令,共超过六十条,程序设计者可以事半功倍地实现他们的应用。
为了更加容易理解各种各样的指令码,接下来按功能分组介绍它们。
指令周期
大部分的操作均只需要一个指令周期来执行。分支、调用或查表则需要两个指令周期。一个指令周期相当于四个系统时钟周期,因此如果在8MHz的系统时钟振荡器下,大部分的操作将在0.5µs中执行完成,而分支或调用操作则将在1µs中执行完成。虽然需要两个指令周期的指令通常指的是JMP、CALL、RET、RETI和查表指令,但如果牵涉到程序计数器低字节寄存器PCL也将多花费一个周期去加以执行。即指令改变PCL的内容进而导致直接跳转至新地址时,需要多一个周期去执行,例如
“CLR PCL”或“MOV PCL, A”指令。对于跳转指令必须注意的是,如果比较的结果牵涉到跳转动作将多花费一个周期,如果没有则需一个周期即可。
数据的传送
单片机程序中数据传送是使用最为频繁的操作之一,使用三种MOV的指令,数据不但可以从寄存器转移至累加器(反之亦然),而且能够直接移动立即数到累加器。数据传送最重要的应用之一是从输入端口接收数据或者传送数据到输出端口。
算术运算
算术运算和数据处理是大部分单片机应用所必需具备的能力,在盛群单片机内部的指令集中,可直接实现加与减的运算。当加法的结果超出255或减法的结果少于0时,要注意正确的处理进位和借位的问题。INC、INCA、DEC和DECA指令提供了对一个指定地址的值加一或减一的功能。
逻辑和移位运算逻辑和移位运算
标准逻辑运算例如AND、OR、XOR和CPL全都包含在盛群单片机内部的指令集中。大多数牵涉到数据运算的指令,数据的传送必须通过累加器。在所有逻辑数据运算中,如果运算结果为零,则零标志位将被置位,另外逻辑数据运用形式还有移位指令,例如RR、RL、RRC和RLC提供了向左或向右移动一位的方法。不同的移位指令可满足不同的应用需要。移位指令常用于串行端口的程序应用,数据可从内部寄存器转移至进位标志位,而此位则可被检验,移位运算还可应用在乘法与除法的运算组成中。
分支和控制的转换
程序分支是采取使用JMP指令跳转至指定地址或使用CALL指令调用子程序的形式,两者之不同在于当子程序被执行完毕后,程序必须马上返回原来的地址。这个动作是由放置在子程序里的返回指令RET来实现,它可使程序跳回CALL指令之后的地址。在JMP指令中,程序则只是跳到一个指定的地址而已,并不需如CALL指令般跳回。一个非常有用的分支指令是条件跳转,跳转条件是由数据存储器或指定位来加以决定。遵循跳转条件,程序将继续执行下一条指令或略过且跳转至接下来的指令。这些分支指令是程序走向的关键,跳转条件可能是外部开关输入,或者是内部数据位的值。
Rev.1.11
23
2008-12-30
HT48R0AA-1
位运算
提供数据存储器中单个位的运算指令是盛群单片机的特性之一。这特性对于输出端口位的设置尤其有用,其中个别的位或端口的引脚可以使用“SET [m].i”或“CLR [m].i”指令来设定其为高位或低位。如果没有这特性,程序设计师必须先读入输出口的8位数据,处理这些数据,然后再输出正确的新数据。这种读入-修改-写出的过程现在则被位运算指令所取代。
查表运算
数据的储存通常由寄存器完成,然而当处理大量固定的数据时,它的存储量常常造成对个别存储器的不便。为了改善此问题,盛群单片机允许在程序存储器中建立一个表格作为数据可直接存储的区域,只需要一组简易的指令即可对数据进行查表。
其它运算
除了上述功能指令外,其它指令还包括用于省电的“HALT”指令和使程序在极端电压或电磁环境下仍能正常工作的看门狗定时器控制指令。这些指令的使用则请查阅相关的章节。
Rev.1.11
24
2008-12-30
HT48R0AA-1
指令集概要
惯例 惯例 x:立即数
m:数据存储器地址 A:累加器 i:第0~7位
addr:程序存储器地址
指令周
期 1 注1 1 1 1 1 1 注1 1 1 1 1 1 1 注1 注1 1 1 1 1 注1 1 1 注1 1 注1
注注注注
助记符 算术运算 ADD A,[m] ADDM A,[m] ADD A,x ADC A,[m] ADCM A,[m]
说明 影响标志位 Z,C,AC,OV Z,C,AC,OV Z,C,AC,OV Z,C,AC,OV Z,C,AC,OV Z,C,AC,OV Z,C,AC,OV Z,C,AC,OV Z,C,AC,OV Z,C,AC,OV
C Z Z Z Z Z Z Z Z Z Z Z Z Z Z Z
2008-12-30
ACC与数据存储器相加,结果放入ACC
ACC与数据存储器相加,结果放入数据存储器 ACC与立即数相加,结果放入ACC
ACC与数据存储器、进位标志相加,结果放入ACC ACC与数据存储器、进位标志相加,结果放入数据存储器
SUB A,x ACC与立即数相减,结果放入ACC SUB A,[m] ACC与数据存储器相减,结果放入ACC
SUBM A,[m] ACC与数据存储器相减,结果放入数据存储器 SBC A,[m] ACC与数据存储器、进位标志的反相减,结果放入ACC SBCM A,[m] ACC与数据存储器、进位标志相减,结果放入数据存储
器
DAA [m] 将加法运算中放入ACC的值调整为十进制数,并将结果
放入数据存储器
逻辑运算 AND A,[m] ACC与数据存储器做“与”运算,结果放入ACC OR A,[m] ACC与数据存储器做“或”运算,结果放入ACC XOR A,[m] ACC与数据存储器做“异或”运算,结果放入ACC ANDM A,[m] ACC与数据存储器做“与”运算,结果放入数据存储器 ORM A,[m] ACC与数据存储器做“或”运算,结果放入数据存储器 XORM A,[m] ACC与数据存储器做“异或”运算,结果放入数据存储
器
AND A,x ACC与立即数做“与”运算,结果放入ACC OR A,x ACC与立即数做“或”运算,结果放入ACC XOR A,x ACC与立即数做“异或”运算,结果放入ACC CPL [m] 对数据存储器取反,结果放入数据存储器 CPLA [m] 对数据存储器取反,结果放入ACC 递增和递减
INCA [m] 递增数据存储器,结果放入ACC
INC [m] 递增数据存储器,结果放入数据存储器 DECA [m] 递减数据存储器,结果放入ACC DEC [m] 递减数据存储器,结果放入数据存储器
Rev.1.11
25
HT48R0AA-1
助记符 移位 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 转移 JMP addr SZ [m] SZA [m] SZ [m].i SNZ [m].i SIZ [m] SDZ [m] SIZA [m] SDZA
[m]
说明
数据存储器右移一位,结果放入ACC
数据存储器右移一位,结果放入数据存储器 带进位将数据存储器右移一位,结果放入ACC
带进位将数据存储器右移一位,结果放入数据存储器 数据存储器左移一位,结果放入ACC
数据存储器左移一位,结果放入数据存储器 带进位将数据存储器左移一位,结果放入ACC
带进位将数据存储器左移一位,结果放入数据存储器 将数据存储器送至ACC 将ACC送至数据存储器 将立即数送至ACC 清除数据存储器的位 置位数据存储器的位
无条件跳转
如果数据存储器为零,则跳过下一条指令
数据存储器送至ACC,如果内容为零,则跳过下一条指令 如果数据存储器的第i位为零,则跳过下一条指令 如果数据存储器的第i位不为零,则跳过下一条指令 递增数据存储器,如果结果为零,则跳过下一条指令 递减数据存储器,如果结果为零,则跳过下一条指令
递增数据存储器,将结果放入ACC,如果结果为零,则跳过下一条指令
递减数据存储器,将结果放入ACC,如果结果为零,则跳过下一条指令 子程序调用 从子程序返回
从子程序返回,并将立即数放入ACC 从中断返回
读取当前页的ROM内容,并送至数据存储器和TBLH 读取最后页的ROM内容,并送至数据存储器和TBLH 空指令
清除数据存储器 置位数据存储器 清除看门狗定时器 预清除看门狗定时器 预清除看门狗定时器
交换数据存储器的高低字节,结果放入数据存储器 交换数据存储器的高低字节,结果放入ACC 进入暂停模式
指令周期 影响标志位 1 注1 1 注1 1 注1 1 注1 1 注1 1 1 注1 2 注1 注1 注1 注1 注1 注1 1 1 2 2 2 2 2 注2 1 注1 注1 1 1 1 注1 1 1
注注注注
无 无 C C 无 无 C C 无 无 无 无 无 无 无 无 无 无 无 无 无 无 无 无 无 无 无 无 无 无 无 TO,PDF TO,PDF TO,PDF 无 无 TO,PDF
CALL addr RET RET A,x RETI 查表
TABRDC [m] TABRDL [m] 其它指令 NOP CLR [m]
SET [m] CLR WDT CLR WDT1 CLR WDT2 SWAP [m] SWAPA [m] HALT
注: 1、对跳转指令而言,如果比较的结果牵涉到跳转即需2个周期,如果没有发生跳转,则只需一个周期。 2、任何指令若要改变PCL的内容将需要2个周期来执行。
3、对于“CLR WDT1”或“CLR WDT2”指令而言,TO和PDF标志位也许会受执行结果影响,“CLR WDT1”和 “CLR WDT2”被连续地执行后,TO和PDF标志位会被清除,除此之外TO和PDF标志位保持不变。
Rev.1.11
26
2008-12-30
HT48R0AA-1
指令定义
ADC A, [m] Add data memory and carry to the accumulator 说明: 将指定的数据存储器、累加器内容以及进位标志相加,结果存放到累加器。 运算过程: ACCACC+[m]+C 影响标志位: OV、Z、AC、C
ADCM A, [m] Add the accumulator and carry to the accumulator 说明: 将指定的数据存储器、累加器内容和进位标志位相加,结果存放到指定的数据存储器。
运算过程: [m]ACC+[m]+C 影响标志位: OV、Z、AC、C
ADD A, [m] Add data memory to the accumulator 说明: 将指定的数据存储器和累加器内容相加,结果存放到累加器。 运算过程: ACCACC+[m] 影响标志位: OV、Z、AC、C
ADD A, x Add immediate data to the accumulator 说明: 将累加器和立即数相加,结果存放到累加器。 运算过程: ACCACC+x 影响标志位: OV、Z、AC、C
ADDM A, [m] Add the accumulator to the data memory 说明: 将指定的数据存储器和累加器内容相加,结果存放到指定的数据存储器。 运算过程: [m]ACC+[m] 影响标志位: OV、Z、AC、C
AND A, [m] Logical AND accumulator with data memory 说明: 将累加器中的数据和指定数据存储器内容做逻辑与,结果存放到累加器。 运算过程: ACCACC “AND” [m] 影响标志位: Z AND
A, x
Logical AND immediate data to the accumulator
说明: 将累加器中的数据和立即数做逻辑与,结果存放到累加器。 运算过程: ACCACC “AND” x 影响标志位: Z
ANDM A, [m] Logical AND data memory with the accumulator 说明: 将指定数据存储器内容和累加器中的数据做逻辑与,结果存放到数据存储器。 运算过程: [m]ACC “AND” [m] 影响标志位: Z
CALL addr Subroutine call 说明: 无条件的调用指定地址的子程序,此时程序计数器先加1获得下一个要执行的指令地
址并压入堆栈,接着载入指定地址并从新地址执行程序。由于指令需要额外的运算,所以此指令为2个周期。
运算过程: StackProgram Counter+1 Program Counter addr 影响标志位: 无
Rev.1.11
27
2008-12-30
HT48R0AA-1
CLR [m] 说明: 运算过程: 影响标志位:
CLR [m] . i 说明: 运算过程: 影响标志位:
CLR WDT 说明:
运算过程: 影响标志位:
CLR WDT1 说明:
Clear data memory
将指定数据存储器的内容清零。 [m] 00H 无
Clear bit of data memory
将指定数据存储器的i位内容清零。 [m].i 0 无
Clear Watchdog Timer
WDT计数器、暂停标志位PDF和看门狗溢出标志位TO清零。 WDT 00H PDF & TO 0 TO、PDF
Preclear Watchdog Timer
PDF和TO标志位都被清0。必须配合CLR WDT2一起使用清除WDT计时器。当程序仅执行CLR WDT1,而没有执行CLR WDT2时,PDF与TO保留原状态不变。 WDT 00H PDF & TO 0 TO、PDF
运算过程: 影响标志位:
CLR WDT2 Preclear Watchdog Timer 说明: PDF和TO标志位都被清0。必须配合CLR WDT1一起使用清除WDT计时器。当程
序仅执行CLR WDT2,而没有执行CLR WDT1时,PDF与TO保留原状态不变。
运算过程: WDT 00H PDF & TO 0 影响标志位: TO、PDF
CPL [m] Complement data memory 说明: 将指定数据存储器中的每一位取逻辑反,相当于从1变0或从0变1。 运算过程: [m] [m] 影响标志位: Z
CPLA [m] Complement data memory 说明: 将指定数据存储器中的每一位取逻辑反,相当于从1变0或从0变1,结果被存放回
累加器且数据寄存器的内容保持不变。
运算过程: ACC [m] 影响标志位: Z
DAA [m] Decimal-Adjust accumulator for addition 说明: 将累加器中的内容转换为BCD(二进制转成十进制)码。如果低四位的值大于“9”
或AC=1,那么BCD调整就执行对原值加“6”,否则原值保持不变;如果高四位的值大于“9”或C=1,那么BCD调整就执行对原值加“6”。BCD转换实质上是根据累加器和标志位执行00H,06H,60H或66H的加法运算,结果存放到数据存储器。只有进位标志位C受影响,用来指示原始BCD的和是否大于100,并可以进行双精度十进制数的加法运算。
操作: [m] ACC+00H或 [m] ACC+06H [m] ACC+60H或 [m] ACC+66H 影响标志位: C
Rev.1.11
28
2008-12-30
HT48R0AA-1
DEC [m] Decrement data memory 说明: 将指定数据存储器的内容减1。 运算过程: [m] [m]-1 影响标志位: Z
DECA [m] Decrement data memory and place result in the accumulator 说明: 将指定数据存储器的内容减1,把结果存放回累加器并保持指定数据存储器的内容不变。
运算过程: ACC [m]-1 影响标志位: Z
HALT Enter power down mode
说明: 此指令终止程序执行并关掉系统时钟,RAM和寄存器的内容保持原状态,WDT计数
器和分频器被清“0”,暂停标志位PDF被置位1,WDT溢出标志位TO被清0。
运算过程: PDF 1 TO 0 影响标志位: TO、PDF INC
[m]
Increment data memory
说明: 运算过程: 影响标志位:
INCA [m] 说明: 变。
运算过程: 影响标志位:
JMP addr 说明: 地 运算过程: 影响标志位:
MOV A, [m] 说明: 运算过程: 影响标志位:
MOV A, x 说明: 运算过程: 影响标志位:
MOV [m], A 说明: 运算过程: 影响标志位:
将指定数据存储器的内容加1。 [m] [m]+1 Z
Increment data memory and place result in the accumulator
将指定数据存储器的内容加1,结果存放回累加器并保持指定的数据存储器内容不ACC [m]+1 Z
Directly jump
程序计数器的内容无条件地由被指定的地址取代,程序由新的地址继续执行。当新的 址被加载时,必须插入一个空指令周期,所以此指令为2个周期的指令。 PC addr 无
Move data memory to the accumulator
将指定数据存储器的内容复制到累加器。 ACC [m] 无
Move immediate data to the accumulator 将8位立即数载入累加器。 ACC x 无
Move the accumulator data to memory
将累加器的内容复制到指定的数据存储器。 [m] ACC 无
Rev.1.11
29
2008-12-30
HT48R0AA-1
NOP No operation 说明: 空操作,顺序执行下一条指令。 运算过程: PC PC+1 影响标志位: 无
OR A, [m] Logical OR accumulator with data memory 说明: 将累加器中的数据和指定的数据存储器内容逻辑或,结果存放到累加器。 运算过程: ACCACC “OR” [m] 影响标志位: Z
Logical OR immediate data to the accumulator OR A, x
说明: 将累加器中的数据和立即数逻辑或,结果存放到累加器。 运算过程: ACCACC “OR” x 影响标志位: Z
ORM A, [m] Logical OR data memory with accumulator 说明: 将存在指定数据存储器中的数据和累加器逻辑或,结果放到数据存储器。 运算过程: [m]ACC “OR” [m] 影响标志位: Z
RET Return from subroutine 说明: 将堆栈寄存器中的程序计数器值恢复,程序由取回的地址继续执行。 运算过程: PC Stack 影响标志位: 无
RET A, x Return and place immediate data in the accumulator 说明: 将堆栈寄存器中的程序计数器值恢复且累加器载入指定的立即数,程序由取回的地址继 续执行。 运算过程: PC Stack ACC x 影响标志位: 无
RETI Return from interrupt 说明: 将堆栈寄存器中的程序计数器值恢复且中断功能通过设置EMI位重新使能。EMI是控
制中断使能的主控制位。如果在执行RETI指令之前还有中断未被相应,则这个中断将在返回主程序之前被相应。
运算过程: PC Stack EMI 1 影响标志位: 无
RL [m] Rotate data memory left 说明: 将指定数据存储器的内容左移1位,且第7位移到第0位。 运算过程: [m].(i+1) [m].i (i=0~6) [m].0 [m].7 影响标志位: 无
RLA [m] Rotate data memory left and place result in the accumulator 说明: 将指定数据存储器的内容左移1位,且第7位移到第0位,结果送到累加器,而指定
数据存储器的内容保持不变。
运算过程: ACC.(i+1) [m].i (i=0~6) ACC.0 [m].7 影响标志位: 无
Rev.1.11
30
2008-12-30
HT48R0AA-1
RLC [m] 说明: 运算过程: 影响标志位:
RLCA [m] 说明: 运算过程: 影响标志位: 说明: 运算过程: 影响标志位:
RRA [m] 说明: 运算过程: 影响标志位:
RRC [m] 说明: 运算过程: 影响标志位:
RRCA [m] 说明: 运算过程: 影响标志位: SBC A,[m] 说明: 果 运算过程: 影响标志位:
Rotate data memory left through carry
将指定数据存储器的内容连同进位标志左移1位,第7位取代进位标志且原本的进位标志移到第0位。
[m].(i+1) [m].i (i=0~6) [m].0 C C [m].7 C
Rotate left through carry and place result in the accumulator
将指定数据存储器的内容连同进位标志左移1位,第7位取代进位标志且原本的进位标志移到第0位,移位结果送回累加器,但是指定数据寄存器的内容保持不变。 ACC.(i+1) [m].i (i=0~6) ACC.0 C C [m].7 CRR
[m] Rotate data memory right
将指定数据存储器的内容循环右移1位且第0位移到第7位。 [m].i [m].(i+1) (i=0~6) [m].7 [m].0, 无
Rotate right and place result in the accumulator
将指定数据存储器的内容循环右移1位,第0位移到第7位,移位结果存放到累加器,而指定数据存储器的内容保持不变。 ACC.i [m].(i+1) (i=0~6) ACC.7 [m].0 无
Rotate data memory right through carry
将指定数据存储器的内容连同进位标志右移1位,第0位取代进位标志且原本的进位标志移到第7位。
[m].i [m].(i+1) (i=0~6) [m]. 7 C C [m].0 C
Rotate right through carry and place result in the accumulator
将指定数据存储器的内容连同进位标志右移1位,第0位取代进位标志且原本的进位标志移到第7位,移位结果送回累加器,但是指定数据寄存器的内容保持不变。 ACC.i [m].(i+1) (i=0~6) ACC.7 C C [m].0 C
Subtract data memory and carry from the accumulator
将累加器减去指定数据存储器的内容以及进位标志的反,结果存放到累加器。如果结为负,C标志位清除为0,反之结果为正或0,C标志位设置为1。 ACCACC-[m]-C OV、Z、AC、C
Rev.1.11
31
2008-12-30
HT48R0AA-1
SBCM A,[m] 说明:
果
运算过程:
影响标志位:
SDZ [m] 说明:
Subtract data memory and carry from the accumulator
将累加器减去指定数据存储器的内容以及进位标志的反,结果存放到数据存储器。如结果为负,C标志位清除为0,反之结果为正或0,C标志位设置为1。 ACCACC-[m]-C OV、Z、AC、C
运算过程: 影响标志位: SDZA [m] 说明:
运算过程: 影响标志位:
SET [m] 说明: 运算过程: 影响标志位:
SET [m]. i 说明: 运算过程: 影响标志位:
SIZ [m] 说明:
Skip if decrement data memory is 0 将指定的数据存储器的内容减1,判断是否为0,若为0则跳过下一条指令,由于取得下一个指令时会要求插入一个空指令周期,所以此指令为2个周期的指令。如果结果不为0,则程序继续执行下一条指令。
[m] [m] -1,如果[m]=0跳过下一条指令执行 无
Decrement data memory and place result in ACC,skip if 0
将指定数据存储器内容减1,判断是否为0,如果为0则跳过下一条指令,此结果将存放到累加器,但指定数据存储器内容不变。由于取得下一个指令时会要求插入一个空指令周期,所以此指令为2个周期的指令。如果结果不为0,则程序继续执行下一条指令。
ACC [m]-1,如果ACC=0跳过下一条指令执行 无
Set data memory
将指定数据存储器的每一位设置为1。 [m] FFH 无
Set bit of data memory
将指定数据存储器的第i位设置为1。 [m].i 1 无
Skip if increment data memory is 0
将指定的数据存储器的内容加1,判断是否为0,若为0则跳过下一条指令。由于取得下一个指令时会要求插入一个空指令周期,所以此指令为2个周期的指令。如果结果不为0,则程序继续执行下一条指令。
[m] [m]+1,如果[m]=0跳过下一条指令执行 无
Increment data memory and place result in ACC,skip if 0
将指定数据存储器的内容加1,判断是否为0,如果为0则跳过下一条指令,此结果会被存放到累加器,但是指定数据存储器的内容不变。由于取得下一个指令时会要求插入一个空指令周期,所以此指令为2个周期的指令。如果结果不为0,则程序继续执行下一条指令。
ACC [m]+1,如果ACC=0跳过下一条指令执行 无
Skip if bit I of the data memory is not 0
判断指定数据存储器的第i位,若不为0,则程序跳过下一条指令执行。由于取得下一个指令时会要求插入一个空指令周期,所以此指令为2个周期的指令。如果结果为0,则程序继续执行下一条指令。 如果[m].i≠0,跳过下一条指令执行 无
32
2008-12-30
运算过程: 影响标志位:
SIZA [m] 说明:
运算过程: 影响标志位:
SNZ [m]. i 说明:
运算过程: 影响标志位:
Rev.1.11
HT48R0AA-1
SUB A, [m] Subtract data memory from the accumulator 说明: 将累加器的内容减去指定的数据存储器的数据,把结果存放到累加器。如果结果为
C标志位清除为0,反之结果为正或0,C标志位设置为1。 负,
运算过程: ACCACC-[m] 影响标志位: OV、Z、AC、C
SUBM A, [m] Subtract data memory from the accumulator 说明: 将累加器的内容减去指定数据存储器的数据,结果存放到指定的数据存储器。如果结
为负,C标志位清除为0,反之结果为正或0,C标志位设置为1。 果
运算过程: [m]ACC-[m] 影响标志位: OV、Z、AC、C SUB A, x Subtract immediate data from the accumulator 说明: 将累加器的内容减去立即数,结果存放到累加器。如果结果为负,C标志位清除为0, 反之结果为正或0,C标志位设置为1。 运算过程: ACCACC-x 影响标志位: OV、Z、AC、C
SWAP [m] Swap nibbles within the data memory 说明: 将指定数据存储器的低4位和高4位互相交换。 运算过程: [m].3~[m].0↔[m].7~[m].4 影响标志位: 无
SWAPA [m] Swap data memory and place result in the accumulator 说明: 将指定数据存储器的低4位和高4位互相交换,再将结果存放到累加器且指定数据寄
存器的数据保持不变。
运算过程: ACC.3~ACC.0 [m].7~[m].4
ACC.7~ACC.4 [m].3~[m].0
影响标志位: 无
SZ [m] Skip if data memory is 0 说明: 判断指定数据存储器的内容是否为0,若为0,则程序跳过下一条指令执行。由于取
得下一个指令时会要求插入一个空指令周期,所以此指令为2个周期的指令。如果结果不为0,则程序继续执行下一条指令。
运算过程: 如果[m] = 0, 跳过下一条指令执行 影响标志位: 无
SZA [m] Move data memory to ACC,skip if 0 说明: 将指定数据存储器内容复制到累加器,并判断指定数据存储器的内容是否为0,若为
0则跳过下一条指令。由于取得下一个指令时会要求插入一个空指令周期,所以此指令为2个周期的指令。如果结果不为0,则程序继续执行下一条指令。
运算过程: ACC[m],如果[m] = 0,跳过下一条指令执行 影响标志位: 无
SZ [m]. i Skip if bit I of the data memory is 0 说明: 判断指定数据存储器的第i位是否为0,若为0,则跳过下一条指令。由于取得下一
个指令时会要求插入一个空指令周期,所以此指令为2个周期的指令。如果结果不为0,则程序继续执行下一条指令。
运算过程: 如果[m].i = 0,跳过下一条指令执行 影响标志位: 无
Rev.1.11
33
2008-12-30
HT48R0AA-1
TABRDC [m] 说明: 运算过程: 影响标志位:
TABRDL [m] 说明: 运算过程: 影响标志位:
XOR A, [m] 说明: 运算过程: 影响标志位:
XORM A, [m] 说明: 运算过程: 影响标志位:
XOR A, x 说明: 运算过程: 影响标志位:
Move the ROM code(current page) to TBLH and data memory
将表格指针TBLP所指的程序代码低字节(当前页)移至指定的数据存储器且将高字节移至TBLH。
[m] 程序代码(低字节) TBLH程序代码(高字节) 无
Move the ROM code(last page) to TBLH and data memory
将表格指针TBLP所指的程序代码低字节(最后一页)移至指定的数据存储器且将高字节移至TBLH。
[m] 程序代码(低字节) TBLH程序代码(高字节) 无
Logical XOR accumulator with data memory
将累加器的数据和指定的数据存储器内容逻辑异或,结果存放到累加器。 ACCACC “XOR” [m] Z
Logical XOR data memory with accumulator
将累加器的数据和指定的数据存储器内容逻辑异或,结果放到数据存储器。 [m]ACC “XOR” [m] Z
Logical XOR immediate data to the accumulator
将累加器的数据与立即数逻辑异或,结果存放到累加器。 ACCACC “XOR” x Z
Rev.1.11
34
2008-12-30
HT48R0AA-1
封装信息:封装信息:
24-pin SKDIP (300mil)外形尺寸
Fig1. Full Lead Packages Fig2. 1/2 Lead Packages
●MS_001d ( fig 1)
标号 A B C D E F G H I
●MS_001d ( fig 2)
标号 A B C D E F G H I
●MO_095a ( fig 2)
标号 A B C D E F G H I
尺寸(尺寸(mil) 尺寸(尺寸(mil) 尺寸(尺寸(mil)
Min 1230
240 115 115 14 45 -- 300 --
Nom -- -- -- -- -- -- 100 -- --
Max 1280 280 195 150 22 70 -- 325 430
Min 1160 240 115 115 14 45 -- 300 --
Nom -- -- -- -- -- -- 100 -- --
Max 1195 280 195 150 22 70 -- 325 430
Min 1145 275 120 110 14 45 -- 300 --
Nom -- -- -- -- -- -- 100 -- --
Max 1185 295 150 150 22 60 -- 325 430
Rev.1.11
35
2008-12-30
HT48R0AA-1
24-pin SOP (300mil)外形尺寸
标号
尺寸(尺寸(mil)
Min
A
B C C’ D E F G H ɑ
393 256 12 598 -- -- 4 16 8 0°
Nom -- -- -- -- -- 50 -- -- -- --
Max 419 300 20 613 104 -- 12 50 13 8°
Rev.1.11
36
2008-12-30
HT48R0AA-1
28-pin SKDIP (300mil)外形尺寸
尺寸(尺寸(mil)
标号
Min
A
B C D E F G H I
1375 278 125 125 16 50 -- 295 --
Nom -- -- -- -- -- -- 100 -- --
Max 1395 298 135 145 20 70 -- 315 375
Rev.1.11
37
2008-12-30
HT48R0AA-1
28-pin SOP (300mil)外形尺寸
尺寸(尺寸(mil)
●MS-013
标号
Min
A
B C C’ D E F G H α
393 256 12 697 -- -- 4 16 8 0°
Nom -- -- -- -- -- 50 -- -- -- --
Max 419 300 20 713 104 -- 12 50 13 8°
Rev.1.11
38
2008-12-30
HT48R0AA-1
包装带和卷轴规格:包装带和卷轴规格:
卷轴尺寸:
SOP 24W SOP 28W(300mil)
标号 描述 A 卷轴外圈直径 B 卷轴内圈直径 C 轴心直径 D 缝宽 T1 轮缘宽 T2 卷轴宽
尺寸(mm)
330.0±1.0 100.0±1.5 13.0+0.5/ -0.2 2.0±0.5 24.8+0.3/ -0.2 30.2±0.2
Rev.1.11
39
2008-12-30
HT48R0AA-1
运输带尺寸:运输带尺寸:
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
Rev.1.11
描述 运输带宽 空穴间距 穿孔位置
空穴至穿孔距离(宽度)
穿孔直径
空穴中之小孔直径
穿孔间距
空穴至穿孔距离(长度)
空穴长 空穴宽 空穴深 传输带厚度 覆盖带宽度
尺寸(mm) 24.0±0.3 12.0±0.1 1.75±0.1 11.5±0.1 1.55+0.1/-0.0 1.5+0.25/-0.00 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±0.1
描述 运输带宽 空穴间距 穿孔位置
空穴至穿孔距离(宽度)
穿孔直径
空穴中之小孔直径
穿孔间距
空穴至穿孔距离(长度)
空穴长 空穴宽 空穴深 传输带厚度 覆盖带宽度
40
尺寸(mm) 24.0±0.3 12.0±0.1 1.75±0.1 11.5±0.1 1.5+0.1/-0.0 1.5+0.25/-0.00 4.0±0.1 2.0±0.1 10.85±0.1 18.34±0.1 2.97±0.1 0.35±0.05 21.3±0.1
2008-12-30
HT48R0AA-1
盛群半导体股份有限公司(盛群半导体股份有限公司(总公司)总公司) 新竹市科学工业园区研新二路3号 电话: 886-3-563-1999 传真: 886-3-563-1189 网站: www.holtek.com.tw
盛群半导体股份有限公司(盛群半导体股份有限公司(台北业务处)台北业务处) 台北市南港区园区街3之2号4楼之2 电话: 886-2-2655-7070 传真: 886-2-2655-7373
传真: 886-2-2655-7383 (International sales hotline) 盛扬半导体有限公司(盛扬半导体有限公司(上海业务处上海业务处)业务处)
上海市宜山路2016号合川大厦1号楼3楼G室 200103 电话: 86-21-5422-4590 传真: 86-21-5422-4596 网站: www.holtek.com.cn
盛扬半导体有限公司(盛扬半导体有限公司(深圳业务处深圳业务处)业务处)
深圳市南山区科技园科技中三路与高新中二道交汇处生产力大楼A单元五楼 518057 电话: 0755-8616-9908,8616-9308 传真: 0755-8616-9533 ISDN: 0755-8615-6181
盛扬半导体有限公司(盛扬半导体有限公司(北京业务处北京业务处)业务处)
北京市西城区宣武门西大街甲129号金隅大厦1721室 100031 电话: 010-6641-0030, 6641-7751, 6641-7752 传真: 010-6641-0125
盛扬半导体有限公司(盛扬半导体有限公司(成都业务处成都业务处)业务处)
成都市东大街97号香槟广场C座709室 610016 电话: 028-6653-6590 传真: 028-6653-6591
Holmate Semiconductor, Inc.(北美业务处)北美业务处) 46712 Fremont Blvd., Fremont, CA 94538 电话: 510-252-9880 传真: 510-252-9885 网站: www.holmate.com
Copyright © 2008 by HOLTEK SEMICONDUCTOR INC.
使用指南中所出现的信息在出版当时相信是正确的,然而盛群对于说明书的使用不负任何责任。文中提到的应用目的仅仅是用来做说明,盛群不保证或表示这些没有进一步修改的应用将是适当的,也不推荐它的产品使用在会由于故障或其它原因可能会对人身造成危害的地方。盛群产品不授权使用于救生、维生器件或系统中做为关键器件。盛群拥有不事先通知而修改产品的权利,对于最新的信息,请参考我们的网址http://www.holtek.com.tw
Rev.1.11
41
2008-12-30
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- huatuo0.com 版权所有 湘ICP备2023021991号-1
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务