《嵌入式系统概论-单片机基础》单片机之定时计数器



《《嵌入式系统概论-单片机基础》单片机之定时计数器》由会员分享,可在线阅读,更多相关《《嵌入式系统概论-单片机基础》单片机之定时计数器(46页珍藏版)》请在装配图网上搜索。
1、单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,嵌入式系统概论,单片机基础,定时/计数器,教学目的:了解80C51系列单片机内部定时器/计数器的结构与工作原理;能够采用查询方式对定时器/计数器的4种工作模式编程、应用。,教学重点:,1.定时/计数器的工作原理;,2.定时器方式1、2的编程、应用。,教学难点:,1.工作方式寄存器和定时/计数器控制寄存器的设置,2.定时/计数器初值的设置,80C51定时器/计数器及其应用,在单片机应用和控制系统中,经常需要对某个控制对象定时进行控制。这种定时一般可采用两种方法。一是利用延时程序来实现,但这样会降低CPU的工作
2、效率;另外一种方法就是通过一个可编程的实时时钟或可编程的时钟接口芯片来实现。这种方法可以使CPU与时钟并行工作,并且不会影响CPU的效率。除定时外,还有一些是对某种事件的计数结果来进行控制的,因此,单片机内部均设有可编程的定时器/计数器。,80C51单片机内有两个16位定时/计数器,即定时器T0和定时器T1,它们都具有定时和事件计数的功能,可用于定时控制延时,对外部事件计数和检测等场合。,6.1,单片机的定时器,/,计数器的工作原理,80C51定时/计数器基本概念,在实时测量控制应用系统中,常需要定时控制及对外界事件进行计数。,定时:,定时是对周期固定、已知的脉冲计数,。,计数:其实质就是对外
3、部输入的,周期不固定的脉冲计数。,8051单片机中的定时器和计数器是一个部件,只不过计数器记录的是外界发生的事件,而定时器则是由单片机内部提供一个稳定的计数源进行定时的。这个计数源是由单片机的晶振经过12分频后获得的一个脉冲源。所以定时器计数脉冲的时间与晶振有关。,T,N个方波,脉冲间隔不等下降沿计数,.3.1定时计数器的结构,计数,定时计数器的实质是加计数器(位),其原理类似于古代用来计时的水钟:,假设计满一小时需要100,000,000,滴,这称为水钟的计数容量,16位定时/计数器的计数容量是65536,单片机是对脉冲个数计数,计数器每接收到一个脉冲,计数值加1,,当接收满65535个脉冲
4、后,再来一个脉冲,计数值清0表明这一轮计数结束,同时将标志位TF0或TF1置1。,80C51定时/计数器基本原理,定时,单片机内部的计数器用作定时器时,是对,标准的时钟,进行了计数,每来一个时钟脉冲,计数器加1,只要保证计数脉冲的间隔相等,则计数值就代表了时间的流逝。,计数器如何能作为定时器使用呢?,单片机中的定时器和计数器其实是一个器件:,计数器:,是对外部发生的事件进行计数,,定时器:,是对,单片机内部的标准时钟脉冲,进行计数。,6.1,单片机的定时器,/,计数器的工作原理,80C51定时/计数器的结构,80C51单片机内部有两个16位的可编程定时计数器 T0、T1。可编程是指其功能如工作
5、方式、定时时间、量程、启动方式等均可由指令来确定和改变。,80C51单片机,有6个8位寄存器用于T0、T1的控制与管理,其访问地址依次为8AH8DH,每个寄存器均可单独访问。16位的T0、T1寄存器是用于存放定时或计数初值与当前值的,两个特殊功能寄存器 TCON和TMOD 是用于管理与控制定时计数器工作的。,80C51的16位定时计数器实质上是一个加1计数器,其控制电路受软件控制、切换。通过软件可以设置为4种工作方式,每种方式都可以用作定时或者计数。不同的工作方式,计数器长度分别为:16位、13位和8位。,K1,K2,可预置初值计数器,中断,请求,功能,选择,启动,控制,内部时钟脉冲,(定时)
6、,外部输入脉冲,(计数),溢出信号,计数脉冲,计数初值,80C51定时/计数器的原理,当,80C51的16位,选择定时/计数器作为,定时器,工作时:计数器的加1信号由振荡器12分频信号产生。经过一个机器周期,计数器增1,直至计满溢出为止。对于标准频率12MHz的80C51,T=1,s,。若需要改变定时时间,可改变定时器的初值或选择定时器的长度(8位、13位、16位)。,K1,K2,可预置初值计数器,中断,请求,功能,选择,启动,控制,内部时钟脉冲,(定时),外部输入脉冲,(计数),溢出信号,计数脉冲,计数初值,80C51定时/计数器的原理,T,特点:波形间隔相等,时间确定,N个方波,当,80C
7、51的16位,定时/计数器作为,计数器,工作方式时:通过引脚T0(P3.4)、T1(P3.5)对外部信号计数。外部脉冲的下降沿触发计数,计数器在每个机器周期的S5P2期间对引脚电平采样,如果一个机器周期采样值为1,下一个机器周期采样值为0,则计数器加1.检测一个由1至0的跳变需要两个机器周期。对于频率12MHz的80C51,T=2,s。,计数器的最高计数频率为0.5MHz。,K1,K2,可预置初值计数器,中断,请求,功能,选择,启动,控制,内部时钟脉冲,(定时),外部输入脉冲,(计数),溢出信号,计数脉冲,计数初值,80C51定时/计数器的原理,一个机器周期,P1 P2,P1 P2,80C51
8、定时/计数器的控制方法,80C51的定时计数器是一个可编程部件,在定时计数器工作之前,CPU须将一些命令(控制字)写入定时计数器的特殊功能寄存器中,。这个过程称作“,定时计数器的初始化”。在初始化过程中,须将工作方式控制字写入工作方式寄存器(TMOD),工作状态控制字写入控制寄存器(TCON),赋予定时计数器初值。,控制与管理定时/计数器T0和T1工作的特殊功能寄存器有2个,工作方式寄存器TMOD(89H)和定时/计数器控制寄存器TCON(88H)。,工作方式寄存器TMOD(89H),工作方式寄存器,TMOD用于控制T0、T1的工作方式和4种工作模式。其中低4位用于控制T0,高4位用于控制T1
9、。其格式如下:,M0,M1,C/T,GATE,M0,M1,C/T,GATE,D0,D1,D2,D3,D4,D5,D6,D7,定时器T1,定时器T0,GATE,:门控位,C/T:计数/定时选择,M1 M0,:工作方式选择,工作方式寄存器TMOD(89H),M0,M1,C/T,GATE0,M0,M1,C/T,GATE1,D0,D1,D2,D3,D4,D5,D6,D7,GATE=0,,只要,(,定时,/,计数器控制寄存器,TCON),中,TR0(TR1),置,1,,即可启动定时器,T0(T1),开始工作。,当,GATE=1,时,除需要将,(,定时,/,计数器控制寄存器中),TR0(TR1),置,1,
10、外,还需要使,INT0(INT1),为高电平,才能启动相应的定时器开始工作。,C/T=0,,选择定时器工作方式,对机器周期脉冲计数定时。,C/T=1,,选择计数器工作方式,对,T0(T1),引脚输入的负脉冲下降沿计数。,M1,、,M0,位:,T0(T1),工作方式选择位,M1 M0,工作方式,功能描述,0 0,方式0,13位计数器,0 1,方式1,16位计数器,1 0,方式2,自动再装入8位计数器,1 1,方式3,定时器0:分成两个8位计数器定 时 器 1:停止计数,定时/计数控制寄存器TCON(88H),控制寄存器,TCON,:,TCON,的作用是,控制定时器的启,/,停,标志定时器的溢出和
11、中断情况。,TCON,在,SFR,的字节地址为,88H,,可位寻址。,位地址,8FH,8EH,8DH,8CH,8BH,8AH,89H,88H,位符号,TF1,TR1,TF0,TR0,IE1,IT1,IE0,IT0,D7(D5)TF1(0),定时器,1(0),溢出标志。,当定时器溢出时由硬件使,TF1,(,0,)置,1,,申请中断。进入中断服务程序后,由硬件自动清,0,,查询方式下用软件清,0,。,D6(D4)TR1(0),定时器,1(0),运行控制位。,TR1(0)=0,关闭定时器,;TR1(0)=1,启动定时器,当系统复位时,,TCON,的所有位均清,0,。,定时/计数器的控制关系,定时,/
12、,计数器的功能,定时功能,-,计数输入信号是内部时钟脉冲,计数频率是振荡频率的1/12。,计数功能,-,计数脉冲来自相应的外部输入引脚,T0为P3.4,T1为P3.5。,定时/计数器的核心部件是二进制加1计数器(TH0、TL0)或(TH1、TL1)。,定时器T1,定时器T0,TH1,TL1,(8DH),(8BH),0,0,7,7,TH0,TL0,(8CH),(8AH),0,0,7,7,89C51,CPU,TCON(88H),TMOD(89H),工作模式,工作模式,启动,启动,T0(P3.4),T1(P3.5),溢出,溢出,INT0,P3.2,INT1,P3.3,中断,定时/计数器的结构,定时/
13、计数器结构,80C51单片机内有2个独立的16位的可编程定时/计数器T0和T1。它们的结构相似。还有1个工作方式寄存器TMOD和1个控制寄存器TCON。下面是T0的结构如图所示:(现在是定时状态,且,GATE=0,是否开始定时取决于控制寄存器的TR0控制。),振荡器,12,C/T=0,C/T=1,+,加1计数器,TF0,合/断,T0,TR0,GATE0,INT0,工作方式寄存器TMOD(89H),振荡器,12,C/T=0,C/T=1,+,加1计数器,TF0,合/断,T0,TR0,GATE0,INT0,CT:用来确定T0(T1)是工作在计数方式还是工作在定时方式。,CT=0为定时方式。,CT=1
14、为计数方式。即对外部引脚的外部输入脉冲计数,外部引脚T0(1)上输入的每一个脉冲的负跳变使计数值加1,,M1和M0:两位用来确定T0(T1)的具体工作模式。M1、M0的四种组合刚好与四种工作模式对应,分别是方式0、方式1、方式2、方式3。,GATE0(1):门控标志位。当 GATE0(1)=0,且TR0(1)=1时,启动T0(1)开始工作;当GATE0(1)=1时,定时计数器的启动除了受TR0(1)控制外,还受INT0引脚的控制。此时当TR0(1)=1且INT0引脚上出现高电平时才能启动定时计数器。,TMOD,M0,M1,C/T,GATE0,M0,M1,C/T,GATE1,D0,D1,D2,D
15、3,D4,D5,D6,D7,定时/计数控制寄存器TCON(88H),振荡器,12,C/T=0,C/T=1,+,加1计数器,TF0,合/断,T0,TR0,GATE0,INT0,TCON,TF0(1):T0(1)溢出中断标志位。当T0(1)计数溢出时,TF0(1)=1。在允许中断的情况下,CPU响应T0(1)中断,转向T0(1)中断服务程序,此时由硬件自动将TF0(1)清0。该标志位可由软件查询,也可用软件清0或置1。,TR0(1):为T0(1)启动控制位。当TR0(1)=1时,启动T0(1);TR0(1)=0时,关闭T0(1)。该位由软件进行设置。,位地址,8FH,8EH,8DH,8CH,8BH
16、,8AH,89H,88H,位符号,TF1,TR1,TF0,TR0,IE1,IT1,IE0,IT0,振荡器,12,C/T=0,C/T=1,+,加1计数器,TF0,合/断,T0,TR0,GATE0,INT0,80C51单片机内部有两个16位的定时/计数器T0和T1。每个定时/计数器占用两个特殊功能寄存器,(,C/T=0 定时 C/T=1 计数),T0由TH0和TL0两个8位计数器组成,字节地址分别是8CH和8AH。,T1由TH1和TL1两个8位计数器组成,字节地址分别是8DH和8BH。,用于存放定时或计数的初值。当计数器工作时,其值随计数脉冲做加1变化。,计数寄存器,TH0,TL0,由于T0由TL0(低8位)和TH0(高8位)组成;T1由TH0和TH1组成。所以T0、T1都是16位计数器。但是若将它们设置成不同的工作方式,其计数长度(最大值)和计数方式都可变化。内部定时计数器一共有四种工作方式,由TMOD的相关位设置。,定时/计数器的的,工作方式寄存器TMOD(89H),M1和M0:,两位用来确定T0(T1)的具体工作模式。M1、M0的四种组合刚好与四种工作模式对应。定时/计数器工作模式如
- 温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。