




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第第6 6章章 单片机的定时器单片机的定时器/ /计数器计数器 本章的内容本章的内容 定时定时/ /实现方式:实现方式: 1.1.软件定时;软件定时; 2.2.不可编程硬件定时;不可编程硬件定时; 3.3.可编程定时可编程定时 。多重循环多重循环定时芯片定时芯片555定时定时/计数器计数器图6-1 80C51定时器/计数器逻辑结构图6.1.1 6.1.1 定时定时/ /计数器的结构计数器的结构 用一个简单的框图构造它的模型用一个简单的框图构造它的模型 :N N位计数器构位计数器构成了电路的核心。定时成了电路的核心。定时, ,计数两种方式的区别在于计计数两种方式的区别在于计数器的脉冲来源数器的脉
2、冲来源. .初值寄存器是用来设定初值寄存器是用来设定“定时定时/ /计数计数的具体参数的具体参数” (1):何时控制启动计数?(2):如何控制定时还是计数?(3):如何控制定时/计数的长短?N位+1计数器TFxN位初值寄存器系统内部时钟fosc/12启动控制TR外部脉冲定时/计数控制C/T计数器溢出中断信号返回计数脉冲CP6.1.2 6.1.2 定时定时/ /计数器的工作原理计数器的工作原理1)每过一个每过一个机器周期机器周期,计数器增,计数器增1 1,直至计满溢出,直至计满溢出( (1212分频分频) )2 2)定时器的定时时间与系统的振荡频率紧密相关)定时器的定时时间与系统的振荡频率紧密相
3、关3 3)MCS-51MCS-51单片机的一个机器周期由单片机的一个机器周期由1212个振荡脉冲组成个振荡脉冲组成如果晶振频率为如果晶振频率为12MHZ12MHZ,则:,则:s112/110121T6S1S2S6S5S4S3机器周期1检测S1S2S6S5S4S3计数机器周期2ALE检测6.1.3 6.1.3 定时定时/ /计数器功能计数器功能(1)(1)定时功能定时功能(2)计数)计数P1.01P1.12P1.23P1.34P1.45P1.56P1.67P1.78RST/VPD9RXD P3.010TXD P3.111INT0 P3.212INT1 P3.313T0 P3.414T1 P3.5
4、15WR P3.616RD P3.717XTAL218XTAL119VSS20P2.021P2.122P2.223P2.324P2.425P2.526P2.627P2.728PSEN29ALE/PROG30EA/VPP31P0.732P0.633P0.534P0.435P0.336P0.237P0.138P0.039VCC408031 8051 8751S1S2S6S5S4S3机器周期1检测S1S2S6S5S4S3计数机器周期2ALE检测T1控制控制T0控制控制M0M1C/TGATEM0M1C/TGATED0D1D2D3D4D5D6D7M1 M0工作方式选择工作方式选择 1模式控制寄存器模式控
5、制寄存器TMODM1 M0C/T 定时定时/ /计数工作方式选择计数工作方式选择nGATE位:门控位。位:门控位。 (1) 当当GATE=1时,时,定时受外部脉冲的控制定时受外部脉冲的控制只有或引脚为只有或引脚为高电平且高电平且TR0或或TR1置置1时,相应时,相应的定时的定时/计数器才被选通工作,这时计数器才被选通工作,这时可用于测量可用于测量端出现的正脉冲宽度端出现的正脉冲宽度; (2) 当当GATE=0,则只要,则只要TR0和和TR1置置1,定,定时时/计数器就被选通,而不管或的电平是高还是计数器就被选通,而不管或的电平是高还是低。低。 定时定时/ /计数器工作方式计数器工作方式 M1
6、M0 工作方式 功 能 0 0 方式0 初值寄存器TL的低5位与TH的8位构成13位计数器 0 1 方式1 寄存器TL与TH构成16位计数器,计满溢出,16位计数器回零 1 0 方式2 自动装载8位计数器,TL溢出,TH内容送TL 1 1 方式3 定时器T0分成两个8位定时器,T1停止工作 D7D6D5D4D3D2D1D0TF1 TR1 TF0 TR0 IE1IT1IE0IT0触发方式选择触发方式选择启动定时启动定时/计数器计数器0 低电平低电平1 下降沿下降沿0 停止停止1 启动启动 * 各标志位应注意的问题各标志位应注意的问题TF1位:定时器位:定时器1溢出标志位。溢出标志位。 当定时当定
7、时/计数器计数器1溢出时,由溢出时,由硬件置硬件置1。 使用使用查询方式查询方式时,此位做状态位供查询,查询有效时,此位做状态位供查询,查询有效后需后需由软件清零由软件清零; 使用使用中断方式中断方式时,此位做中断申请标志位,进入中时,此位做中断申请标志位,进入中断服务后被断服务后被硬件自动清零硬件自动清零。TR1位:定时器位:定时器1运行位。运行位。 该位靠该位靠软件置位或清零,置位软件置位或清零,置位时,定时时,定时/计数器接通计数器接通工作,清零时,停止工作。工作,清零时,停止工作。 定时器计数器共有四种工作方式定时器计数器共有四种工作方式 1. 方式方式013位方式位方式 TF0T0T
8、R0GATEINT011&C/T=1振荡器振荡器1/12C/T=0TL0 TH08位位低低5位位13位计数器位计数器定时定时器器演演 示示继继 续续T12T5*T4T0TH0TL0返返 回回n当当 =0时,控制开关接通内部振荡器,时,控制开关接通内部振荡器,T0对机器周期进行计数,其定时时间为:对机器周期进行计数,其定时时间为: t=(213-T0初值)初值)机器周期机器周期n当当 =1时,控制开关接通外部输入信号,时,控制开关接通外部输入信号,当外部信号电平从当外部信号电平从“1”到到“0”跳变时,加跳变时,加1计数器加计数器加1,处于计数工作方式。,处于计数工作方式。 C / TC
9、 / T2. 方式方式116位方式位方式其定时时间为:其定时时间为:t=(216-T0初值)初值)机器周期机器周期 振荡器1/12TL0 TH0TF011&T0TR0GATEINT0C/T=0C/T=18位8位1616位计数器位计数器3. 方式方式28位自动装入时间常数方式位自动装入时间常数方式其定时时间为:其定时时间为:t=t=(2 28 8-T0-T0初值)初值)机器周期机器周期 TF0振荡器振荡器1/1211&T0TR0GATEINT0C/T=0C/T=1TL0 TH0 仅仅T0可以工作在方式可以工作在方式3此时此时T0分成分成2个个 独立的计数器独立的计数器TL0和和T
10、H0 , TL0用来作为用来作为T0的控制信号(的控制信号(TR0、TF0),), TH0用来用来作为作为T1的控制信号(的控制信号(TR1、TF1)。)。6.4 单片机定时器单片机定时器/计数器的应用计数器的应用 计算计数器的计算计数器的计数初值计数初值: 编程时将计数初值送编程时将计数初值送THi、 TLi; 可编程器件在使用前需要进行可编程器件在使用前需要进行初始化初始化: 确定确定TMOD控制字控制字:编程时将控制字送:编程时将控制字送 TMOD; 开中断(如果使用中断方式)开中断(如果使用中断方式): 编程实编程实置位置位EA、ETi TRi位置位控制定时器的启动和停止。位置位控制定
11、时器的启动和停止。例例1 1:设晶振频率设晶振频率f fOSCOSC=6MHz=6MHz,使用,使用定时器定时器1 1以方式以方式1 1产产生周期为生周期为500s500s的方波脉冲,并的方波脉冲,并由由P1.0 P1.0 输出输出。试以。试以中断方式中断方式实现。实现。80518051P1.0P1.0500s500s TMOD确定确定T1控制控制T0控制控制XXXX1000M0M1C/TGATEM0M1C/TGATE控制字控制字10H定时器定时器1方方 式式1 要产生要产生500s 的方波脉冲,只需在的方波脉冲,只需在P1.0端以端以250s为间为间隔,隔,交替输出高低电平交替输出高低电平即
12、可实现。为此,即可实现。为此,定时间应为定时间应为250s 。使用。使用6z晶振,则一个机器周期为晶振,则一个机器周期为2s,设待,设待求计数初值为,则:求计数初值为,则:(216X)210 -6 =25010 -6 即即216X=125 X216-125=10000H-7DH 0FF83H所以,初值为:所以,初值为:TH1=0FFH,TL1=83H请思考请思考 为什么?为什么? 采用中断方式:编程时打开全局和局部中断。采用中断方式:编程时打开全局和局部中断。 由定时器控制寄存器由定时器控制寄存器TCON中的中的TR1位控制位控制定时器的启动和停止。定时器的启动和停止。 TR11,启动;,启动
13、; TR10,停止。,停止。 程序设计程序设计 ORG 0000H LJMP MAIN ;主程序入口;主程序入口 ORG 001BH LJMP INTT1 ;T1中断入口中断入口INTT1: MOV TH1,#0FFH ;重新设置初值;重新设置初值 MOV TL1,#83H CPL P1.0 ;输出取反;输出取反 RETI ORG 1000HMAIN:MOV TMOD, #10H ;T1为方式为方式1 MOV TH1, #0FFH MOV TL1,#83H ;初值;初值 SETB EA ;允许中断;允许中断 SETB ET1 SETB TR1 ;启动定时;启动定时 SJMP $ ;等待中断;等
14、待中断例例2:利用利用T0定时,产生定时,产生2s定时,使得定时,使得P1口输出信号,控制口输出信号,控制8个发光二极管循环点亮,个发光二极管循环点亮,设设fOSC=12MHz. 。分析:分析:P1口输出信号,控制口输出信号,控制8个发光二极管循环个发光二极管循环点亮,但此处由于定时时间长达点亮,但此处由于定时时间长达2s,所以单靠,所以单靠一个定时器不能解决问题。可以采取一个定时器不能解决问题。可以采取硬件定时和硬件定时和软件计数软件计数(或硬件计数)结合方式。(或硬件计数)结合方式。P1.0P1.7RLED3RLED0RLED1RLED2RLED4RLED5RLED6RLED7P1.6P1
15、.5P1.4P1.3P1.2P1.18051演演 示示硬件定时与软件计数结合方式解题思路:硬件定时与软件计数结合方式解题思路: 让让T0作定时器用,如作定时器用,如T0可以定时可以定时50ms; 在在T0中断处理程序中一个寄存器内容加中断处理程序中一个寄存器内容加1,同时判断,同时判断是否加到是否加到2000/50=40,如果不到,如果不到40,则直接返回,如,则直接返回,如果计到果计到40,说明,说明2s时间到;时间到; 使使P1口循环点亮口循环点亮8个发光二极管后再返回。个发光二极管后再返回。 T0工作在方式工作在方式1,控制字,控制字01H,计数初值:,计数初值:(216X)110 -6
16、 =5010 -3 即即216X=50000 X216-50000=10000H-C350H 3CB0H所以,初值为:所以,初值为:TH1=3CH,TL1=B0H ORG 0000H LJMP MAIN ;主程序入口;主程序入口 ORG 000BH LJMP INTT0 ;T0中断入口中断入口 思考:思考:其他中断入口的其他中断入口的 地址?地址? ORG 1000HMAIN:MOV TMOD, #01H ;T0为方式为方式1 MOV TH0, #3CH MOV TL0,#B0H ;初值;初值 SETB EA ;允许中断;允许中断 SETB ET0 SETB TR0 ;启动定时;启动定时 MO
17、V A,#01H ; LED0先亮先亮 MOV P1,A ; MOV R0,#0 SJMP $ ;等待中断;等待中断INTT0: MOV TH0,#3CH ;重新设置初值;重新设置初值 MOV TL0,#B0H INC R0 CJNE R0,#40,NEXT ;不等直接返回;不等直接返回 MOV R0,#0 ; 2s到到 RL A ;依次点亮;依次点亮 NEXT: RETIn 设计一个控制程序,使设计一个控制程序,使80C5180C51的的P1P1口输口输出出8 8路低频方波脉冲,频率分别为路低频方波脉冲,频率分别为100100、5050、2525、2020、1010、5 5、2 2、1Hz1
18、Hz。设单片机的晶振。设单片机的晶振频率为频率为12MHz12MHz。试编程实现。试编程实现。 例例3 3:低频信号发生器驱动程序:低频信号发生器驱动程序 分析:分析:n使用定时器使用定时器T0T0,产生,产生5ms5ms的定时,若晶振选的定时,若晶振选12MHz12MHz,则则5ms5ms相当于相当于46084608个机器周期,个机器周期,T0T0应工作于方式应工作于方式1 1,初值位初值位x x为:为:x=65536-4608=60928x=65536-4608=60928。用十六进制数。用十六进制数表示则:表示则:x=0EE00Hx=0EE00H。n对应于对应于P1.0 P1.0 P1.
19、7P1.7,设立,设立8 8个计数器,初值分别个计数器,初值分别为为1 1、2 2、4 4、5 5、1010、2020、5050、100100,由,由T0T0的溢出中的溢出中断服务程序对它们减断服务程序对它们减“1”1”计数,当减为零时恢复计数,当减为零时恢复初值,并使相应的口线改变状态,这样就使初值,并使相应的口线改变状态,这样就使P1P1口口输出所要求的方波。输出所要求的方波。n ORG 0000HnSTART: AJMP MAINn ORG 000BHn AJMP PTFOnMAIN: MOV SP,#70n MOV 31H,#2 ;计数器置初值;计数器置初值n MOV 32H,#4n
20、MOV 33H,#5n MOV 34H,#10n MOV 35H,#20n MOV 36H,#50n MOV 37H,#100n 主程序n MOV TMOD,#1 ;T0方式方式1定时定时n MOV TL0,#0 ;初值;初值T0n MOV TH0,#0EEHn MOV IE,#82H ;允许;允许T0中断中断n SETB TR0 ;允许;允许T0计数计数n HERE: SJMP HERE ;踏步,通常;踏步,通常CPU处处理其他工作理其他工作n ORG 0030HnPTF0: MOV TH0,#0EEH ;T0中断服务程序中断服务程序n MOV TL0,#0 ;初值;初值T0n CPL P1
21、.0n DJNZ 31H,PF01 ;对各路计数器进行计数;对各路计数器进行计数n MOV 31H,#2 ;计数器减为;计数器减为0,恢复计数初,恢复计数初值值n CPL P1.1nPF01: DJNZ 32H,PF02 ;输出相反;输出相反n MOV 32H,#4n CPL P1.2nPF02: DJNZ 33H,PF03n MOV 33H,#5n CPL P1.3中断程序nPF03: DJNZ 34H,PF04n MOV 34H,#10n CPL P1.4nPF04: DJNZ 35H,PF05n MOV 35H,#20n CPL P1.5nPF05: DJNZ 36H,PF06n MOV
22、 36H,#50n CPL P1.6nPF06: DJNZ 37H,PF07n MOV 37H,#100n CPL P1.7nPF07: RETI中断程序例例4:设晶振频率设晶振频率fOSC=6MHz,分别讨论各种工,分别讨论各种工作方式下最长定时时间。作方式下最长定时时间。解:解:1. 由由fOSC=6MHz可知,可知,MC=2us;2. 由于是加由于是加1计数,所以最长定时应是计数,所以最长定时应是计数初值最计数初值最小时(即为小时(即为0时)时)的定时时间。的定时时间。所以此时有:所以此时有:方式方式0: (2130)2us=214us=16384us=16.384ms方方 式式 1:
23、(2160)2us= 217us=131.072ms方式方式2、3: (280)2us= 29us=0.512ms注意:注意:以上是当以上是当fOSC=6MHz,即,即MC=2us时各时各种方式下的定时时间,若种方式下的定时时间,若fOSC=12MHz,则最长,则最长定时时间将缩短一半。定时时间将缩短一半。例例5 5:如下图所示,开始时如下图所示,开始时P1.0P1.0亮,延时亮,延时0.20.2秒后秒后左移至左移至P1.1P1.1亮,如此左移亮,如此左移7 7次后至次后至P1.7P1.7亮,再延亮,再延时时0.20.2秒右移至秒右移至P1.6P1.6亮,如此右移亮,如此右移7 7次后至次后至
24、P1.0P1.0亮。亮。(时钟频率(时钟频率f fOSCOSC为为12MHz12MHz)。)。 2000us2000us初值初值( (方式方式0 0):): 6192=6192=1830=1830=00000011000001100001100000110000 = =1100 00011100 000100000010000=10000=C110HC110H n方法方法 : 延延时时间时时间0.20.2秒,使用秒,使用TIMER0TIMER0在在MODE0MODE0下工作下工作 n ORG 0000H ORG 0000H ;起始地址;起始地址n AJMP MAINAJMP MAINn nMAIN: MOV TMODMAIN: MOV TMOD,#00H #00H ;设设定工作在定工作在MODE0MODE0nSTARTSTART:CLR C CLR C ;C=0C=0n MOV A MOV A,#0FFH #0FFH ;ACC=FFHACC=FFH,左移初,左移初值值 n MOV R2MOV R2,#08 #08 ;R2=08R2=08,设设左移
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- T/CFPA 023-2023低压用电安全监控系统技术规范
- T/CFDCC 0204-2018家居电商送货与安装服务规范
- T/CECS 10279-2023纤维增强聚合物基管廊
- T/CECS 10017-2019现制水性橡胶高分子复合防水卷材
- T/CCT 015-2024气流床水煤浆气化用煤
- T/CCSAS 039-2023储存单元操作机械化、自动化设计方案指南
- T/CCS 070-2023井工煤矿智能化巡检机器人运维管理规范
- T/CCS 036-2023煤矿带式输送机巡检机器人
- T/CCMA 0172-2023移动式升降工作平台施工现场管理规程
- T/CCMA 0147-2023异型吊篮安装、使用和拆卸安全技术规程
- NB-T 47013.15-2021 承压设备无损检测 第15部分:相控阵超声检测
- 我国上市公司IPO前后“业绩变脸”的实证研究-基于创业板的分析的中期报告
- 老年人神经健康讲座内容摘要
- 燃用重质渣油的铝合金熔炼炉能耗测试与分析
- (新教材)细胞核是细胞生命活动的控制中心(公开课)课件
- 点穴保健DIY智慧树知到课后章节答案2023年下江西中医药大学
- 企业安全生产风险辨识评估管控指导手册-危险货物储罐仓储
- 内蒙古工业大学计算机网络试卷A-2023年(含答案)
- 摄录像技术基础
- 烟花爆竹劳务合同范本
- 济南出入境检验检疫局国际旅行卫生保健中心
评论
0/150
提交评论