最新单片机的定时器计数器精品课件.ppt
《最新单片机的定时器计数器精品课件.ppt》由会员分享,可在线阅读,更多相关《最新单片机的定时器计数器精品课件.ppt(58页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、单片机的定时器计数器单片机的定时器计数器7.1 定时器定时器/计数器概述计数器概述 实现定时功能,主要采用下面三种方法:实现定时功能,主要采用下面三种方法:软件定时:软件定时:软件定时不占用硬件资源,但占用了软件定时不占用硬件资源,但占用了CPUCPU时间,时间,降低了降低了CPUCPU的利用率的利用率。采用硬件定时:采用硬件定时:完全由硬件实现,不占完全由硬件实现,不占CPUCPU,但,但定定时值与定时范围不能由软件进行控制和修改时值与定时范围不能由软件进行控制和修改,即不,即不可编程。可编程。采用可编程芯片定时:采用可编程芯片定时:通过对系统时钟脉冲的计通过对系统时钟脉冲的计数实现,计数值
2、通过程序设定,此种数实现,计数值通过程序设定,此种定时功能强,定时功能强,使用灵活使用灵活。GATE0时时,只要用软件使,只要用软件使TCON中的中的TR0或或TR1置置1启动定启动定时时/计数器工作;计数器工作;GATE1时时,外部中断请求信号启动定时器外部中断请求信号启动定时器。 0为定时模式为定时模式; =1为计数模式为计数模式。C/TC/TC/T 二、控制寄存器二、控制寄存器TCON TCON的低的低4位用于控制外部中断位用于控制外部中断,已在前面介绍。已在前面介绍。TCON的的高高4位用于控制定时位用于控制定时/计数器的启动和中断申请。其格式如下:计数器的启动和中断申请。其格式如下:
3、TF1(TCON.7):):T1溢出中断请求标志位。溢出中断请求标志位。T1计数溢出计数溢出时由硬件自动置时由硬件自动置TF1为为1。CPU响应中断后响应中断后TF1由硬件自动由硬件自动清清0。可以用软件置可以用软件置1或清或清0,同硬件置,同硬件置1或清或清0的效果一样。的效果一样。TR1(TCON.6):):T1运行控制位。运行控制位。TR1置置1时,时,T1开始开始工作;工作;TR1置置0时,时,T1停止工作停止工作。TR1由由软件置软件置1或清或清0。TF0(TCON.5):):T0溢出中断请求标志位,其功能与溢出中断请求标志位,其功能与TF1类同。类同。TR0(TCON.4):):T
4、0运行控制位,其功能与运行控制位,其功能与TR1类同。类同。 7.3 定时定时/计数器的工作方式计数器的工作方式 一、方式一、方式0 方式方式0为为13位计数位计数,由由TL0的低的低5位(高位(高3位未用)和位未用)和TH0的的8位组成位组成。TL0的低的低5位溢出时向位溢出时向TH0进位,进位,TH0溢出时,溢出时,置位置位TCON中的中的TF0标志,向标志,向CPU发出中断请求。发出中断请求。u门控位门控位GATE具有特殊的作用:具有特殊的作用:当当GATE=0时,时,此时仅由此时仅由TR0控制与门的开启,与控制与门的开启,与门输出门输出1时,控制开关接通,计数开始;时,控制开关接通,计
5、数开始;当当GATE=1时,时,由外中断引脚信号控制或门的输出,由外中断引脚信号控制或门的输出,此时控制与门的开启由外中断引脚信号和此时控制与门的开启由外中断引脚信号和TR0共同共同控制。控制。此时当此时当TR0=1时时,外中断引脚信号引脚的高电平启,外中断引脚信号引脚的高电平启动计数,外中断引脚信号引脚的低电平停止计数。动计数,外中断引脚信号引脚的低电平停止计数。这种方式这种方式常用来测量外中断引脚上正脉冲的宽度。常用来测量外中断引脚上正脉冲的宽度。 p定时和计数应用定时和计数应用l在方式在方式0 0下输入脉冲的计数值范围是:下输入脉冲的计数值范围是:0-81920-8192(213)l定时
6、器模式时定时器模式时:定时时间定时时间T为为(213-计数初值计数初值) 机器周期机器周期:最小定时单位最小定时单位为一个机器周期,为一个机器周期,最大定时单最大定时单位位为为213 机器周期机器周期思考思考:已知一单片机晶体振荡器为:已知一单片机晶体振荡器为6MHz,则最大和,则最大和最小定时单位为多少?最小定时单位为多少? 定时时间定时时间T为为(213-计数初值计数初值) 机器周期机器周期而计数值而计数值NT/ Tcy (Tcy即机器周期即机器周期)所以计数初值计算的公式为:所以计数初值计算的公式为: X=213-N=8192-N定时定时/计数器应用举例计数器应用举例初始化程序应完成如下
7、工作:初始化程序应完成如下工作:对对TMOD赋值,以确定赋值,以确定T0和和T1的工作方式;的工作方式;计算初值计算初值,并将其写入并将其写入TH0、TL0或或TH1、TL1;中断方式时,则对中断方式时,则对IE赋值,开放中断;赋值,开放中断;使使TR0或或TR1置位,启动定时置位,启动定时/计数器定时或计数。计数器定时或计数。例例7-1 应用定时器应用定时器T0产生产生1ms定时(方式定时(方式0),并使并使P1.0输出周期为输出周期为2ms的的方波方波,已知晶振频率为已知晶振频率为6MHz.请设计程序请设计程序解: 1、当为定时方式时(、当为定时方式时( C/T=0 ),),T0对机对机器
8、周期进行计数,其定时时间为:器周期进行计数,其定时时间为: T=(213-X) 机器周期机器周期则:计数值则:计数值 N=T/机器周期机器周期= 213-X所以所以 X= 213-N= 8192-N= 8192-T/机器周期机器周期 =8192-110-3/210-6=7692 X对应的二进制数为对应的二进制数为 11110000 01100 TH0 8位位TL0低五位低五位TH0=0F0HTL0=0CH2、对、对TMOD附值附值GATE=0,C/T=0(定时)(定时)M1M0=00(方式(方式0) TMOD=00H ORG 2000H MOV TMOD, #00H ;写入方式控制字写入方式控
9、制字 MOV TL0, #0CH ;计数初值写入计数初值写入 MOV TH0, #0F0H SETB TR0 ;启动启动T0LOOP: JBC TF0, PE ; TF0=1溢出跳转溢出跳转 AJMP LOOP ;PE: MOV TL0, #0CH ; MOV TH0, #0F0H CPL P1.0 ;思考?思考? AJMP LOOP END 16X=2 -N二、方式二、方式1 方式方式1的计数位数是的计数位数是16位位,由,由TL0作为低作为低8位、位、TH0作为高作为高8位,组成了位,组成了16位加位加1计数器计数器 。计数个数与计数初值的关系为:计数个数与计数初值的关系为: 例例 利用定
10、时利用定时/计数器计数器T0的的方式方式1,产生,产生10ms的的定时定时,并使并使P1.0引脚上输出周期为引脚上输出周期为20ms的方波,采用中断的方波,采用中断方式,设系统时钟频率为方式,设系统时钟频率为12 MHz。分析:分析:1、当为定时方式时(、当为定时方式时( C/T=0 ),),T0对机器对机器周期进行计数,其定时时间为:周期进行计数,其定时时间为: T=(216-X) 机器周期机器周期则:计数值则:计数值N=T/机器周期机器周期= 213-X所以所以 X= 216-N= 65536-N 2、采用方式、采用方式1 时,时, M1M0=01解:解:1、计算计数初值、计算计数初值X:
11、由于晶振为由于晶振为12 MHz,所以机器周期,所以机器周期Tcy为为1 s。所以:所以:NT/ Tcy 1010-3/110-610000X655361000055536D8F0H即应将即应将D8H送入送入TH0中,中,F0H送入送入TL0中中 2、求、求T0的方式控制字的方式控制字TMOD: M1M0=01,GATE=0,C/T=0,可取方式控,可取方式控制字为制字为01H; ORG 0000H LJMP MAIN ;跳转到主程序;跳转到主程序 ORG 000BH ;T0的中断入口地址的中断入口地址 LJMP DVT0 ;转向中断服务程序;转向中断服务程序 ORG 0100H MAIN:M
12、OV TMOD,#01H ;置;置T0工作于方式工作于方式1 MOV TH0,#0D8H ;装入计数初值;装入计数初值 MOV TL0,#0F0H SETB ET0 ;T0开中断开中断 SETB EA ;CPU开中断开中断 SETB TR0 ;启动;启动T0 SJMP $ ;等待中断;等待中断 DVT0:CPL P1.0 ;P1.0取反输出取反输出 MOV TH0,#0D8H ;重新装入计数值;重新装入计数值 MOV TL0,#0F0H RETI ;中断返回;中断返回 END 8X=2 -N三、方式三、方式2 方式方式2为为自动重装初值自动重装初值的的8位计数方式位计数方式。 工作方式工作方式
13、2特别适合于用作较精确的脉冲信号发生器。特别适合于用作较精确的脉冲信号发生器。 计数个数与计数初值的关系为计数个数与计数初值的关系为: 四、方式四、方式3 方式方式3只适用于定时只适用于定时/计数器计数器T0,定时器,定时器T1处于方式处于方式3时相当时相当于于TR1=0,停止计数。,停止计数。 工作方式工作方式3将将T0分成为两个独立的分成为两个独立的8位计数器位计数器TL0和和TH0 。 v方式方式0、方式、方式1的应用的应用例:选择例:选择T1方式方式0用于定时,在用于定时,在P1.1输出周期为输出周期为1ms的的方波方波,晶振,晶振fosc=6MHZ。 分析:分析:1、根据题意,只要使
14、、根据题意,只要使P1.1每隔每隔500s取反一次即可取反一次即可得到得到1ms方波,因而方波,因而T1的定时时间为的定时时间为 500s2、将、将T1设为定时方式设为定时方式0:GATE=0,C/T=0,M1M0=00;T0不不用可为任意,只要不使其进入方式用可为任意,只要不使其进入方式3,一般取,一般取0即可即可。故。故TMOD=00H。系统复位后系统复位后TMOD为为0,所以不必对,所以不必对TMOD置初值置初值。3、计算、计算500s定时定时T1的初值:的初值:机器周期机器周期 Tcy=12/fosc=12/6106=2s设初值为设初值为X则:则: (213X)2106 s =5001
15、06 s X=7942D=1111100000110B=1F06H因为在作因为在作13位计数器用时,位计数器用时,TL1高高3位未用,应写位未用,应写X的低的低5位装位装入入TL1的低的低5位,所以位,所以TL1=06H;X的高的高8位应装入位应装入TH1,所以所以TH1=F8H。源程序如下:源程序如下: MOV TL1 , #06H;给;给TL1置初值置初值 MOV TH1,#F8H;给;给TH1置初值置初值 SETB TR1;启动;启动T1LP1:JBCTF1,LP2;查询计数溢出否;查询计数溢出否 AJMP LP1 LP2:MOV TL1,06H;重装初值;重装初值 MOV TH1,F8
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 最新 单片机 定时器 计数器 精品 课件
限制150内