合泰单片机基础教程

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

合泰单⽚机基础教程
第⼀章
⼀、概念与分类
单⽚机⼜称微控制器(M icro C ontroller U nit),包含:中央处理单元、程序
存储器、数据存储器、输⼊/输出端⼝
1、按算术逻辑单元的位长度:
4位机、8位机、 16位机、 32位机、64位机
2、按内部结构
(1)精简指令集RISC:提供较少的基本指令,执⾏效率较⾼
(2)复杂指令集CISC :提供较多的指令,包括功能强⼤的指令(如乘除法),执⾏效率较低
3、按编址⽅式
(1)普林斯顿结构:指令与数据共⽤同⼀块存储器,共⽤地址/数据总线,同⼀时间只能对指令或数据操作
(2)哈佛结构:指令与数据是分开的,各⾃独⽴的地址/数据总线,可同时对指令与数据操作
⼆、单⽚机结构概述
1、中央处理单元(CPU):
(1)指令解码单元(IU)
通过解码硬件电路去解析⼀连串⼆进制码以作为控制器的决策核⼼(2)执⾏控制单元(EU)
接受IU所发出的指⽰,将各单元中的数据进⾏互换、传送、运算、判断,
再依汇编指令所指定的动作或运算进⾏输⼊、输出、存储等⼯作(3)算术逻辑单元(ALU)
可从指令集中实现算术和逻辑操作,ALU在接收相关的指令码后执⾏需要
的算术与逻辑操作,并将结果存储在指定的存储位置
2、程序存储器(ROM)
内容⼀般不可更改的,⽤于存放⽤户代码的存储器,不同型号不同容量
3、数据存储器(RAM)
内容可更改的,⽤于存放单⽚机状态或⽤户变量的存储器,不同型号不同容量
4、总线(BUS)
⽤于内部各单元间信息互通,⼀般有3种总线:数据总线、控制总线、地址总线(1)数据总线:传送各单元间数据的硬件
(2)控制总线: 控制单⽚机数据的读或写,使、除能某单元以接收或传送数据(3)地址总线: 主要⽤来寻址,指⽰数据存取的位置,即⽤地址总线寻址三、 HT合泰单⽚机结构分析(以HT48系列为例)
1、时序和流⽔线结构
(1)系统时钟由晶体/陶瓷震荡器或RC震荡器提供
(2)指令周期由T1~T4 4个内部时钟组成,流⽔线结构保证指令在⼀个指令周期内被有效执⾏
T1:程序计数器⾃动加1并抓取新指令
T2~T4:完成解码、算术逻辑并执⾏功能
(3)当程序计数器的内容改变时,如call调⽤或jmp跳转时,指令需要多⼀个指令周期取出当前指令地址的下⼀条指令,并清除流程,再⽤另⼀个周期去执
⾏下⼀动作
2、程序计数器(PC)
(1)程序指令码的读取是由于内部有⼀程序计数器来寻址,在指令码被读取后程序执⾏期间,程序计数器指向下⼀条要执⾏的指令地址
(2)复位起始地址是0000h,在每条指令执⾏后⾃动加1(jmp、call等除外) 3、堆栈(Strack)
是存储器特殊的部分,在⼦程序调⽤或中断响应时,程序指针压⼊堆栈,返回指令(RET或RETI)使程序指针返回到上次⼦程序调⽤位置
四、程序存储器(ROM)
存放⽤户代码,内容为⼆进制机器码
1、分类:掩模 \ OTP \ EEPROM \ FLASH
2、⼀般为14Bit~16Bit,除了存放程序外也包含中断⼊⼝和数据表
3、特殊向量地址(以HT48R50A-1为例):
(1)复位向量地址: 000H
(2)外部中断向量地址: 004H
(3)定时/计数器0中断向量地址: 008H
(4)定时/计数器1中断向量地址: 00CH
五、数据存储器(RAM)
1、可更改的8位内部存储器,⽤来存放临时数据,分为“专⽤寄存器”和“通⽤数
据存储器”
2、通⽤数据存储器(⽩⾊部分)
3、专⽤寄存器
六、专⽤寄存器
1、间接寻址寄存器IAR0/IAR1
在间接寻址寄存器上的任何动作,将对间接寻址指针(MP0/MP1)所指定的数据存储地址产⽣的读/写操作2、间接寻址指针MP0/MP1
与IAR0/IAR1组成间接寻址操作功能
3、累加器ACC
所有ALU得到的运算结果都会暂时存储在累加器,数据传送也需要累加器
4、程序计数器低字节寄存器PCL
直接给PCL赋值将导致直接跳转到本页范围的某⼀地址。

5、表格寄存器TBLP,TBLH
对ROM中的数据表格进⾏操作,TBLP为表格指针指向表格的地址,提供了简单的⽅法对表格数据进⾏读取;读取后,表格数据⾼字节存储在TBLH中,低字节会被传送到使⽤者指定的地址
6、看门狗定时寄存器WDTS
看门狗提供⼀个定时⾃动产⽣复位的功能,预防不正确的程序跳转或程序死机,为使程序正常运⾏,要在溢出前清除看门狗定时器,看门狗定时器时钟源的分频值由WDTS来设定,得到不同的溢出时间
7、状态寄存器STATUS
8、中断控制寄存器INTC
⽤来控制或记录外部和内部中断的动作,主中断位(EMI)控制所有中断的使能
9、定时/计数寄存器TMR0C/TMR1C
10、输⼊/输出端⼝和控制寄存器PAC/PBC/PCC
所有输⼊/输出端⼝都有对应的寄存器,PA、PB、PC的输⼊/输出控制分别由PAC、PBC、PCC设定,1为输⼊,0为输出,可实现位控制
七、输⼊/输出端⼝及中断
1、上拉电阻
通过掩膜选项选择上拉,可以在设置为输⼊时免去外加电阻
2、中断优先权:外部中断-〉定时/计数中断0-〉定时/计数中断
⼋、暂停及唤醒
“HALT”指令造成如下结果:
1、系统震荡器将被关闭(RTC除外)
2、 RAM的内容保持不变
3、如WDT时钟源是来⾃WDT震荡器,WDT和WDT预分频器被清零后重新计数
4、 I/O⼝状态保持不变
5、 STATUS寄存器中:PDF被置位,TO被清零
四种唤醒⽅式:
1、外部中断唤醒(下降沿触发)
2、定时中断唤醒
3、看门狗溢出唤醒
4、 PA⼝唤醒(下降沿触发)
九、定时/计数器⼯作模式
1、定时器模式
2、事件计数模式
3、脉冲宽度测量模式
⼗、看门狗定时器
1、防⽌外部不可控制事件造成的程序不正常动作或跳转到未知的地址,当WDT
计数器不在预计的时间内被清除⽽溢出时,产⽣⼀个“芯⽚复位”的动作
2、WDT时钟源:内部WDT震荡器或指令时钟(系统时钟/4)
3、内部WDT震荡器通过8阶计数器产⽣18MS的周期,WDT预分频器产⽣更长的
溢出周期
WDT溢出时间计算公式如下:
TOVER=WDT时钟源单位时间×⼋阶预分频(256)×前置分频系数(WDTS决定)
4、以指令时钟作为时钟源时,当系统进⼊暂停模式时造成WDT失去作⽤
⼗⼀、掩膜选项
⼗⼆、复位及震荡电路
复位时间长短由RRES 和CRES 的值决定
当系统电源进⼊MCU 稳定⼯作范围时才可结束复位,当MCU 断电时,CRES上的电荷应尽快完全放电 RRES 和CRES 建议数值为100kΩ和0.1µF,RN 和CN为10kΩ和0.01µF
1、震荡电路(P25)
(1)、晶体/陶瓷震荡器
(2)、外部RC震荡器
(3)、内部RC震荡
(4)、RTC震荡器
当系统进⼊HALT状态,32768HZ的RTC震荡器照常⼯作。

相关文档
最新文档