已阅读5页,还剩19页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
单片微机原理及应用教学课件,定时/计数器 原理及其应用,汽车与交通工程学院,Email:,主讲:陈林林,单片微机原理及应用教学课件,2个16位定时器/计数器 (52系列有3个16位Timer) 定时器:对片内机器时钟(周期方波)进行计数 计数器:对Tx引脚输入的负脉冲进行计数,与Timer工作有关的特殊功能寄存器: TCON 和 TMOD,第五章 定时/计数器,单片微机原理及应用教学课件,Timer的2个特殊功能寄存器(TCON,TMOD),TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0,定时器控制寄存器TCON (88H),TFx: Timer0/1计数溢出标志位。 =1 计数溢出; =0 计数未满 TFx标志位可用于申请中断或供CPU查询。 在进入中断服务程序时会自动清零;但在 查询方式时必须软件清零。,TRx: Timer0/1运行控制位。 =1 启动计数; =0 停止计数,单片微机原理及应用教学课件,TR0/TR1:Timer0/1运行控制位: TR0/TR1 =0 时,Timer0/1停止计数 TR0/TR1 =1 时,Timer0/1启动计数,定时器T0/T1 中断申请过程, 在已经开放T0/T1中断允许且已被启动的前提下: T0/T1加满溢出时 TF0/TF1标志位自动置“1” 检测到TCON中TF0/TF1变“1”后,将产生指令: LCALL 000BH/LCALL 001BH 执行中断服务程序, TF0/TF1标志位会自动清“0”,以备下次中断申请。,定时/计数器可按片内机器周期定时,也可对由T0/T1引脚输入一个负脉冲进行加法计数,TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0,TCON (88H),单片微机原理及应用教学课件,GATE C / T M1 M0 GATE C / T M1 M0,定时器方式寄存器TMOD (89H),T1,T0,M1,M0:工作方式定义位 ( 定义4 种方式 ):,C/T :计数器/定时器选择位 = 1 外部事件计数器。对Tx引脚的负脉冲计数; = 0 片内时钟定时器。对机器周期脉冲计数定时,0 0:13位 Timer用它无益,不要记它! 0 1:16位 Timer经常用到 1 0:可自动重装的 8位 Timer经常用到 1 1:T0 分为2个8位 Timer;T1 此时不工作 因为没有带来甚麽好处,几乎无用,单片微机原理及应用教学课件,GATE C / T M1 M0 GATE C / T M1 M0,T1,T0,GATE门控位: Timer可由软件与硬件两者控制 GATE = 0 普通用法 Timer的启/停由软件对TRx位写“1”/“0”控制,定时器方式寄存器TMOD(续),(89H), GATE = 1 门控用法 Timer的启/停由软件对TRx位写“1”/“0” 和在INTx引脚上出现的信号的高/低共同控制,单片微机原理及应用教学课件,阅读书上定时器应用程序举例:,P.140例1: 晶振=6MHz,估算Timer的定时时长 (max,min) P.141例2: 要求对T0产生100mS定时进行初始 化。 (晶振=6MHz) P.141例3: 产生T=2mS方波(改为方式2) P.142例4: 请改为方式1或2再阅读,务请大家 不要陷入方式0的困惑之中! P.143例5: 定时1 秒 P.144例6: 方式3(双8位定时器)的应用,单片微机原理及应用教学课件,定时器结构与工作方式 P.139,工作方式1:16位的定时/计数器,振荡器,12,TLx THx (8位) (8位),TFx,申请中断,Tx端,TRx位,GATE位,INTx端,1,&,C/T=0,C/T=1,控制 =1开关接通,或门,与门,单片微机原理及应用教学课件, THx/TLx赋初值:THx赋高8位,TLx赋低8位,工作方式1 的编程要点:, TMOD选方式: 写“M1,M0”=01 b 选方式1, 若不用门控位,直接用软件写TRx控制启/停 若使用门控位,先置位TRx,然后由INTx端 的高/低电平来控制其启/停, 若要允许中断,还须先置位ETx、EA等中断 允许控制位,并编写中断服务程序 若不用中断,可查询“计数溢出标志TFx” 的方式工作,但溢出标志TFx须软件清0,单片微机原理及应用教学课件,定时器(方式1)应用程序举例:,分析:已知fosc = 6MHz 则: (振荡周期)1Tc=1/6MHz (机器周期)1Tm=12Tc=12/6MHz=2S 粗略地说:Tmin 2S 16位定时器最大数值为:216=65536=0FFFFH+1 故选择方式 1 工作可以得到: Tmax = 655362 = 131072S131.072mS,例1:若晶振频率为6MHz,计算单片机的最小与最大定时时间:,单片微机原理及应用教学课件,分析:已知fosc = 6MHz 则: (机器周期)1Tm=12Tc=12/6MHz=2S 100mS2 S = 50000 16位定时器最大数值为: 216 = 65536 (=0FFFFH+1) 故选择方式1工作可以满足要求。 计算初值:6553650000=15536=3CB0H,例2:要求对T0产生100mS定时进行初始化。 (晶振=6MHz),定时器(方式1)应用程序举例:,单片微机原理及应用教学课件,GATE C / T M1 M0 GATE C / T M1 M0,定时器方式 寄存器TMOD,由分析得知:T0选择方式1,初值=3CB0H,X X X X 0 0 0 1,初始化:MOV TMOD,#01H ;选 T0 方式 1 MOV TH0, #3CH ;赋初值高8位 MOV TL0, #0B0H ;赋初值低8位 SETB TR0 ;启动 T0定时 若需要定时器0产生中断还应当写如下语句: SETB ET0 ;开T0中断允许 SETB EA ;开总中断允许 以及相应的中断服务程序。,单片微机原理及应用教学课件,工作方式2:8 位自动重装的定时/计数器,振荡器,12,TLx (8位),TFx,申请中断,Tx端,TRx位,GATE位,INTx端,1,&,C/T=0,C/T=1,控制 =1开关接通,或门,与门,THx (8位),溢出位,门开,单片微机原理及应用教学课件, THx/TLx赋相同初值 在TLx计数达到0FFH 再加“1”时,TL0 将溢出,进位位直接进入“TFx”去申请 中断,同时打开三态门,使THx中的值 自动重装(Copy)进TLx,工作方式 2 的编程:, TMOD寄存器选方式: 写“M1,M0” = 10 b 选中方式2, 其他用法与各种方式1完全相同,单片微机原理及应用教学课件,分析:fosc = 6MHz 1机器周期 = 2 S 1KHz方波周期 = 1 mS 半个方波周期 =500S 500uS2 uS = 250 若选择方式2 工作,8位定时器最大数值为: 28 =256 =0FFH + 1 可以满足要求。 计算初值:256250=6,P141例3(改):从P1.0 脚输出频率=1KHz方波。 设:晶振=6MHz。利用T1定时中断。,Th:半周期,T:周期,定时器(方式2)应用程序举例:,单片微机原理及应用教学课件,ORG 0000H AJMP MAIN ORG 001BH ;T1的中断矢量 CPL P1.0 ;中断服务:P1.0取非 RETI ;中断返回 MAIN: MOV TMOD,#20H MOV TH0, #6 MOV TL0, #6 SETB ET1 SETB EA SETB TR1 HERE: AJMP HERE ;原地等待中断 END,初始化,;选T1方式2 ;赋重装值 ;赋初值 ;开T1中断 ;开总中断 ;启动T1,单片微机原理及应用教学课件,T0: 组织成TL0和TH0两个8位定时/计数器,Timer工作方式 3 几乎无用,T1: 不再是定时/计数器了 T1 的TR1和TF1出借给TH0当控制位使用, 剩下的TH1/TL1寄存器只能当作普通寄存 器用。,单片微机原理及应用教学课件,振荡器,12,TL0 (8位),TF0,申请中断,T0端,TR0位,GATE位,INT0端,1,&,C/T=0,C/T=1,控制 =1开关接通,或门,与门,TH0 (8位),TF1,申请中断,TR1位,控制 =1,Timer工作方式 3 结构:,T0成为双 8位Timer T1不再有Timer功能 TF1,TR1出借给TH0,单片微机原理及应用教学课件,长定时举例(设晶振=6MHz,要定时1秒):,ORG 0000H ;P.143例5 AJMP MAIN ORG 001BH AJMP TINT ;见下一页 MAIN: MOV TMOD,#10H ;选T1方式1 MOV TH1, #3CH ;赋初值3CB0H=15536(只能定100mS) MOV TL1,#0B0H MOV 30H,#10 ;软件计数单元30H 初值=10 CLR F0 ;芯片复位时已经是“0”,此句可有可无 SETB ET1 ;开T1中断 SETB EA ;开总中断 SETB TR1 ;启动T1 HERE: JBC F0,TIMEUP ;原地等待“1秒到”的标志 F0 AJMP HERE TIMEUP:(do something) ;定时1秒到了以后要做的事情 AJMP HERE,中断服务在主程序中,单片微机原理及应用教学课件,长定时举例(续):,ORG 0000H AJMP MAIN ORG 001BH AJMP TINT MAIN: TINT:DJNZ 30H,RTN ;若中断不到10次就返回 SETB F0 ;已经中断够10次了“置1”标志位 MOV 30H,#10 ;为下一个1秒定时做准备 RTN: MOV TH1,#3CH ;再赋定时100mS的初值3CB0H MOV TL1,#0B0H RETI ;中断返回 END,单片微机原理及应用教学课件,将此例的中断服务改写在中断服务程序中:,ORG 0000H AJMP MAIN ORG 001BH AJMP TINT ;见下一页 MAIN: MOV TMOD,#10H ;选T1方式1 MOV TH1,#3CH ;赋初值3CB0H=15536(只能定100mS) MOV TL1,#0B0H MOV 30H,#10 ;软件计数单元30H 初值=10 CLR F0 ;芯片复位时已经是“0”,此句可有可无 SETB ET1 ;开T1中断 SETB EA ;开总中断 SETB TR1 ;启动T1 HERE: AJMP HERE ;原地等待中断,单片微机原理及应用教学课件,长定时举例(续):,ORG 0000H AJMP MAIN ORG 001BH AJMP TINT MAIN: TINT:DJNZ 30H,RTN ;若中断不到10次就返回 MOV 30H,#10 ;为下一个1秒定时做准备 (do something);定时1秒到了以后要做的事情) RTN: MOV TH1,#3CH ;再赋初值 MOV TL1,#0B0H RETI ;中断返回 END,中断
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 福建省南安市体育学校九年级化学下册 第九单元 课题3 溶质的质量分数教学设计2 新人教版
- 2026六年级道德与法治下册 世界文化交流
- 2026八年级下新课标英语听力训练
- 2026五年级数学 人教版数学乐园正方形花坛植树
- 2026七年级道德与法治上册 实现生命的价值
- 2026道德与法治一年级活动园 天气预报员
- 2026九年级下语文陈涉世家文言文翻译
- 2026五年级数学 人教版数学乐园挂灯笼问题
- 2026中国中医科学院广安门医院招聘国内高校应届毕业生25人备考题库(正式批)及答案详解(网校专用)
- 2026山东济宁市鱼台县应急局派驻双合煤矿专业技术人员招聘1人备考题库带答案详解
- 2024年高考真题-政治(江苏卷) 含解析
- DL-T475-2017接地装置特性参数测量导则
- 卵巢恶性肿瘤的保留生育功能治疗
- 护理查房制度课件高清
- 工业互联网网络建设技术规范
- 绘本在小学英语口语教学中的实证研究
- 医奇V钾薄膜衣片袁老师课件
- 中药配方颗粒
- 试论沈从文《边城》中的宿命思想
- GB/T 9239.1-2006机械振动恒态(刚性)转子平衡品质要求第1部分:规范与平衡允差的检验
- GB/T 22237-2008表面活性剂表面张力的测定
评论
0/150
提交评论