片机原理与应用第6章.ppt
《片机原理与应用第6章.ppt》由会员分享,可在线阅读,更多相关《片机原理与应用第6章.ppt(62页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第第6 6章章 定时器定时器/计数器计数器(课时:(课时:8 8学时)学时)http:/教学目的教学目的 n了解定时器了解定时器/计数器的结构与工作原理。计数器的结构与工作原理。n掌握定时器掌握定时器/计数器的四种工作方式的特点及应用。计数器的四种工作方式的特点及应用。n用定时器用定时器/计数器设计一个可产生一定频率方波的信号源。计数器设计一个可产生一定频率方波的信号源。n用定时器用定时器/计数器设计一个脉冲宽度调制计数器设计一个脉冲宽度调制(PWM)信号以控制直流电动机转速。信号以控制直流电动机转速。n用定时器用定时器/计数器设计一个用于流水生产线上的产品自动计数器。计数器设计一个用于流水生
2、产线上的产品自动计数器。n用定时器用定时器/计数器设计一个测量电平脉冲宽度的程序。计数器设计一个测量电平脉冲宽度的程序。n用定时器用定时器/计数器设计一个电子音乐程序。计数器设计一个电子音乐程序。n用定时器用定时器/计数器设计一个电子音乐程序。计数器设计一个电子音乐程序。学习重点和难点学习重点和难点 n定时器/计数器的初始化。n定时器/计数器与中断的综合应用。http:/第第6 6章章 定时器定时器/计数器计数器n6.1 6.1 定时器定时器/计数器的结构与原理计数器的结构与原理 n6.2 6.2 定时器定时器/计数器的控制计数器的控制 n6.3 6.3 定时器定时器/计数器的四种工作方式及应
3、用计数器的四种工作方式及应用 n本章小结本章小结n习题习题 http:/6.1 6.1 定时器定时器/计数器的计数器的 结构与原理结构与原理 n6.1.1 6.1.1 定时器定时器/计数器的结构计数器的结构 n6.1.2 6.1.2 定时器定时器/计数器的原理计数器的原理 n6.1.3 6.1.3 定时器定时器/计数器的功能计数器的功能 http:/6.1.1 6.1.1 定时器定时器/计数器的结构计数器的结构n8051单片机内部设有两个单片机内部设有两个16位可编程定时器位可编程定时器/计数器,简计数器,简称为定时器称为定时器0(T0)和定时器和定时器1(T1)。n16位的定时器位的定时器/
4、计数器分别由两个计数器分别由两个8位寄存器组成,即:位寄存器组成,即:T0由由TH0和和TL0构成,构成,T1由由TH1和和TL1构成。每个寄存器均构成。每个寄存器均可单独访问,这些寄存器是用于存放定时初值或计数初值可单独访问,这些寄存器是用于存放定时初值或计数初值的。的。n有一个有一个8位的定时器方式寄存器位的定时器方式寄存器TMOD和一个和一个8位的定时器位的定时器控制寄存器控制寄存器TCON。这些寄存器之间是通过内部总线和控制。这些寄存器之间是通过内部总线和控制逻辑电路连接起来的,定时器逻辑电路连接起来的,定时器/计数器的工作方式、定时时计数器的工作方式、定时时间和启停控制通过由指令来确
5、定这些寄存器的状态来实现。间和启停控制通过由指令来确定这些寄存器的状态来实现。TMOD主要用于设定定时器的工作方式,主要用于设定定时器的工作方式,TCON主要用于控主要用于控制定时器的启动与停止,并保存制定时器的启动与停止,并保存T0、T1的溢出和中断标志。的溢出和中断标志。http:/6.1.1 6.1.1 定时器定时器/计数器的结构计数器的结构 定时器定时器/计数器结构框图计数器结构框图 http:/6.1.2 6.1.2 定时器定时器/计数器的原理计数器的原理 n16位的定时器位的定时器/计数器实质上是一个加计数器实质上是一个加l计数器,可实现定计数器,可实现定时和计数两种功能,其功能由
6、软件控制和切换。定时器属硬时和计数两种功能,其功能由软件控制和切换。定时器属硬件定时和计数,是单片机中效率高而且工作灵活的部件。件定时和计数,是单片机中效率高而且工作灵活的部件。n在定时器在定时器/计数器开始工作之前,计数器开始工作之前,CPU必须将一些命令必须将一些命令(称称为控制字为控制字)写入定时器写入定时器/计数器。将控制字写入定时器计数器。将控制字写入定时器/计数计数器的过程叫定时器器的过程叫定时器/计数器的初始化。计数器的初始化。n在初始化程序中,要将工作方式控制字写入定时器方式寄存在初始化程序中,要将工作方式控制字写入定时器方式寄存器器(TMOD),工作状态控制字,工作状态控制字
7、(或相关位或相关位)写入定时器控制寄存写入定时器控制寄存器器(TCON),赋定时,赋定时/计数初值给计数初值给TH0(TH1)和和TL0(TL1)。http:/6.1.2 6.1.2 定时器定时器/计数器的原理计数器的原理n定时器定时器/计数器的定时功能。计数器的定时功能。l计数器的加计数器的加1信号由振荡器的信号由振荡器的12分频信号产生,即每过一分频信号产生,即每过一个机器周期,计数器加个机器周期,计数器加1,直至计满溢出。,直至计满溢出。l定时器的定时时间与系统的时钟频率有关。因一个机器周定时器的定时时间与系统的时钟频率有关。因一个机器周期等于期等于12个时钟周期,所以计数频率应为系统时
8、钟频率的个时钟周期,所以计数频率应为系统时钟频率的十二分之一。如果晶振频率为十二分之一。如果晶振频率为12MHz,则机器周期为,则机器周期为1 s。通过改变定时器的定时初值,并适当选择定时器的。通过改变定时器的定时初值,并适当选择定时器的长度长度(8位、位、13位或位或16位位),可以调整定时时间。,可以调整定时时间。http:/6.1.2 6.1.2 定时器定时器/计数器的原理计数器的原理n定时器定时器/计数器的计数功能。计数器的计数功能。l通过外部计数输入引脚通过外部计数输入引脚T0(P3.4)和和T1(P3.5)对外部信号对外部信号计数,外部脉冲的下降沿将触发计数。计数器在每个机器计数,
9、外部脉冲的下降沿将触发计数。计数器在每个机器周期的周期的S5P2期间采样引脚输入电平,若一个机器周期期间采样引脚输入电平,若一个机器周期S5P2期间采样值为期间采样值为1,下一个机器周期,下一个机器周期S5P2期间采样值期间采样值为为0,则计数器加,则计数器加1,再下一个机器周期,再下一个机器周期S3P1期间,新的期间,新的计数值装入计数器。计数值装入计数器。l因检测一个由因检测一个由1至至0的跳变需要两个机器周期,故外部信号的跳变需要两个机器周期,故外部信号的最高计数频率为时钟频率的二十四分之一。如果晶振频的最高计数频率为时钟频率的二十四分之一。如果晶振频率为率为12MHz,则最高计数频率为
10、。虽然对外部输入信号的,则最高计数频率为。虽然对外部输入信号的占空比无特殊要求,但为了确保给定电平在变化前至少被占空比无特殊要求,但为了确保给定电平在变化前至少被采样一次,外部计数脉冲的高电平与低电平保持时间均需采样一次,外部计数脉冲的高电平与低电平保持时间均需在一个机器周期以上。在一个机器周期以上。http:/6.1.3 6.1.3 定时器定时器/计数器的功能计数器的功能 定时器定时器/计数器具有定时和计数两种功能,应用范围如下。计数器具有定时和计数两种功能,应用范围如下。1.定时与延时控制方面定时与延时控制方面 可产生定时中断信号,以设计出各种不同频率的信号源;产可产生定时中断信号,以设计
11、出各种不同频率的信号源;产生定时扫描信号,对键盘进行扫描以获得控制信号,对显示生定时扫描信号,对键盘进行扫描以获得控制信号,对显示器进行扫描以不间断地显示数据。器进行扫描以不间断地显示数据。2.测量外部脉冲方面测量外部脉冲方面 对外部脉冲信号进行计数可测量脉冲信号的宽度、周期,也对外部脉冲信号进行计数可测量脉冲信号的宽度、周期,也可实现自动计数。可实现自动计数。3.监控系统工作方面监控系统工作方面 对系统进行定时扫描,当系统工作异常时,使系统自动复位,对系统进行定时扫描,当系统工作异常时,使系统自动复位,重新启动以恢复正常工作。重新启动以恢复正常工作。http:/6.2 6.2 定时器定时器/
12、计数器的控制计数器的控制 n6.2.1 6.2.1 定时器方式寄存器定时器方式寄存器TMOD TMOD n6.2.2 6.2.2 定时器控制寄存器定时器控制寄存器TCONTCONhttp:/6.2.1 6.2.1 定时器方式寄存器定时器方式寄存器TMODTMOD 定时器方式寄存器定时器方式寄存器TMOD的作用是设置的作用是设置T0、T1的工作方式。的工作方式。TMOD的格式:的格式:各位的功能说明:各位的功能说明:(1)GATE:门控位。:门控位。GATE=0:软件启动定时器,即用指令使:软件启动定时器,即用指令使TCON中的中的TR1(TR0)置置1即可启动定时器即可启动定时器1(定时器定时
13、器0)。GATE=1:软件和硬件共同启动定时器,即用指令使:软件和硬件共同启动定时器,即用指令使TCON中的中的TR1(TR0)置置1时,只有外部中断时,只有外部中断INT0(INT1)引脚输入高电平时才能启动定时器引脚输入高电平时才能启动定时器1(定时器定时器0)。http:/6.2.1 6.2.1 定时器方式寄存器定时器方式寄存器TMODTMOD(2)C/T:功能选择位。:功能选择位。C/T=0时,以定时器方式工作。时,以定时器方式工作。C/T=1时,以计数器方式工作。时,以计数器方式工作。(3)M1、M0:方式选择位。:方式选择位。定时器工作方式选择位定义定时器工作方式选择位定义 M1
14、M0工作方式功能描述0 0方式013位计数器0 1方式116位计数器1 0方式2自动重装初值8位计数器1 1方式3定时器0:分为两个独立的8位计数器定时器1:无中断的计数器http:/6.2.2 6.2.2 定时器控制寄存器定时器控制寄存器TCONTCON 定时器控制寄存器定时器控制寄存器TCON的作用是控制定时器的启动与停的作用是控制定时器的启动与停止,并保存止,并保存T0、T1的溢出和中断标志。的溢出和中断标志。TCON的格式的格式:各位的功能说明:各位的功能说明:(1)TF1(TCON.7):定时器:定时器1溢出标志位。当定时器溢出标志位。当定时器1计满溢计满溢出时,由硬件自动使出时,由
15、硬件自动使TF1置置1,并申请中断。对该标志位有,并申请中断。对该标志位有两种处理方法,一种是以中断方式工作,即两种处理方法,一种是以中断方式工作,即TF1置置1并申请并申请中断,响应中断后,执行中断服务程序,并由硬件自动使中断,响应中断后,执行中断服务程序,并由硬件自动使TF1清清0;另一种以查询方式工作,即通过查询该位是否为;另一种以查询方式工作,即通过查询该位是否为1来判断是否溢出,来判断是否溢出,TF1置置1后必须用软件使后必须用软件使TF1清清0。http:/6.2.2 6.2.2 定时器控制寄存器定时器控制寄存器TCONTCON 各位的功能说明:各位的功能说明:(2)TR1(TCO
16、N.6):定时器:定时器1启停控制位。启停控制位。GATE=0时,用软件使时,用软件使TR1置置1即启动定时器即启动定时器1,若用软件,若用软件使使TR1清清0则停止定时器则停止定时器1。GATE=1时,用软件使时,用软件使TR1置置1的同时外部中断的同时外部中断INT1的引的引脚输入高电平才能启动定时器脚输入高电平才能启动定时器1。(3)TF0(TCON.5):定时器:定时器0溢出标志位。其功能同溢出标志位。其功能同TF1。(4)TR0(TCON.4):定时器:定时器0启停控制位。其功能同启停控制位。其功能同TR1。(5)IE1(TCON.3):外部中断:外部中断1请求标志位。请求标志位。(
17、6)IT1(TCON.2):外部中断:外部中断1触发方式选择位。触发方式选择位。(7)IE0(TCON.1):外部中断:外部中断0请求标志位。请求标志位。(8)IT0(TCON.0):外部中断:外部中断0触发方式选择位。触发方式选择位。http:/6.3 6.3 定时器定时器/计数器的四种计数器的四种 工作方式及应用工作方式及应用 n6.3.1 6.3.1 定时器定时器/计数器的初始化计数器的初始化 n6.3.2 6.3.2 方式方式0 0及应用实例及应用实例 n6.3.3 6.3.3 方式方式1 1及应用实例及应用实例 n6.3.4 6.3.4 方式方式2 2及应用实例及应用实例 n6.3.
18、5 6.3.5 方式方式3 3 http:/6.3.1 6.3.1 定时器定时器/计数器的初始化计数器的初始化1.定时器定时器/计数器的初始化步骤计数器的初始化步骤 定时器定时器/计数器是一种可编程部件,在使用定时器计数器是一种可编程部件,在使用定时器/计数器计数器前,一般都要对其进行初始化,以确定其以特定的功能工前,一般都要对其进行初始化,以确定其以特定的功能工作。初始化的步骤如下。作。初始化的步骤如下。(1)确定定时器确定定时器/计数器的工作方式,确定方式控制字,并写入计数器的工作方式,确定方式控制字,并写入TMOD。(2)预置定时初值或计数初值,根据定时时间或计数次数,计预置定时初值或计
19、数初值,根据定时时间或计数次数,计算定时初值或计数初值,并写入算定时初值或计数初值,并写入TH0、TL0或或TH1、TL1。(3)根据需要开放定时器根据需要开放定时器/计数器的中断,给计数器的中断,给IE中的相关位赋中的相关位赋值。值。(4)启动定时器启动定时器/计数器,给计数器,给TCON中的中的TR1或或TR0置置1。http:/6.3.1 6.3.1 定时器定时器/计数器的初始化计数器的初始化2.定时初值或计数初值的计算方法定时初值或计数初值的计算方法 不同工作方式的定时初值或计数初值的计算方法如下表所不同工作方式的定时初值或计数初值的计算方法如下表所示。示。表中表中T 表示定时时间,表
20、示定时时间,T机机表示机器周期。表示机器周期。工作方式计数位数最大计数值最大定时时间定时初值计算公式计数初值计算公式方式013213=8192213T机X=213-T/T机X=213-计数值方式116216=65536216T机X=216-T/T机X=216-计数值方式2828=25628T机X=28-T/T机X=28-计数值http:/6.3.1 6.3.1 定时器定时器/计数器的初始化计数器的初始化【例【例1】用定时器用定时器0方式方式0,定时,定时5ms,以中断方式工作,进,以中断方式工作,进行程序初始化设计,晶振频率为行程序初始化设计,晶振频率为6MHz。解:用定时器解:用定时器0方式
21、方式0时,定时器时,定时器/计数器方式寄存器计数器方式寄存器TMOD低低4位中的位中的M1M0应取应取00;可设定为软件启动定时器,故;可设定为软件启动定时器,故GATE取取0;因用定时功能,;因用定时功能,C/T取取0;定时器方式寄存器;定时器方式寄存器TMOD高高4位为无关位,一般都取位为无关位,一般都取0,所以,所以TMOD应为应为00H。晶振频率为晶振频率为6MHz,T机机=12/fosc=12/(6 106)=2 s 定时初值定时初值X=213-T/T机机=213-5 103/2=8192-2500=5692 因因TL0的高的高3位未用,对计算出的定时初值位未用,对计算出的定时初值X
22、要进行修正,要进行修正,即在低即在低5位前插入位前插入3个个0,修正后的定时初值,修正后的定时初值 http:/6.3.1 6.3.1 定时器定时器/计数器的初始化计数器的初始化 定时器以中断方式工作,故将中断总允许位定时器以中断方式工作,故将中断总允许位EA和定时器和定时器0的的中断允许位中断允许位ET0置置1。参考程序:参考程序:75 89 00MOV TMOD,#00H;置定时器0为工作方式075 8C B1MOV TH0,#0B1H;定时初值的高8位75 8A 1CMOV TL0,#1CH;定时初值的低8位D2 AFSETB EA;开放中断总允许位D2 A9SETB ET0;开放定时器
23、0的中断允许位D2 8CSETB TR0;启动定时器0http:/6.3.2 6.3.2 方式方式0 0及应用实例及应用实例 n在方式在方式0下,以定时器下,以定时器0为例,定时器为例,定时器/计数器是一个由计数器是一个由TH0中的中的8位和位和TL0中的低中的低5位组成的位组成的13位加位加1计数器计数器(TL0中的中的高高3位不用位不用);若;若TL0中的第中的第5位有进位,直接进到位有进位,直接进到TH0中的中的最低位。定时器最低位。定时器/计数器计数器0方式方式0逻辑结构如下图所示。逻辑结构如下图所示。n当门控位当门控位GATE=0时,或门输出始终为时,或门输出始终为1,与门被打开,与
24、,与门被打开,与门的输出电平始终与门的输出电平始终与TR0的电平一致,实现由的电平一致,实现由TR0控制定控制定时器时器/计数器的启动和停止。若软件使计数器的启动和停止。若软件使TR0置置1,接通控制,接通控制开关,启动定时器开关,启动定时器0,13位加位加1计数器在定时初值或计数初计数器在定时初值或计数初值的基础上进行加值的基础上进行加1计数;溢出时,计数;溢出时,13位加位加1计数器为计数器为0,TF0由硬件自动置由硬件自动置1,并申请中断,同时,并申请中断,同时13位加位加1计数器继计数器继续从续从0开始计数。若软件使开始计数。若软件使TR0清清0,关断控制开关,停止,关断控制开关,停止
25、定时器定时器0,加,加1计数器停止计数。计数器停止计数。http:/6.3.2 6.3.2 方式方式0 0及应用实例及应用实例定时器/计数器0方式0逻辑结构 C/TC/Thttp:/6.3.2 6.3.2 方式方式0 0及应用实例及应用实例【例【例2】在输出周期为在输出周期为1 ms(频率频率1kHz)的方波,采用定时器的方波,采用定时器1方方式式0设计程序,晶振频率为设计程序,晶振频率为12MHz。解:根据题意,只要使每隔解:根据题意,只要使每隔500 s取反一次即可得到周期取反一次即可得到周期1 ms的的方波,因而方波,因而T1的定时时间为的定时时间为500 s。用定时器用定时器1方式方式
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 原理 应用
限制150内