ImageVerifierCode 换一换
格式:PPT , 页数:122 ,大小:2.23MB ,
资源ID:10293543      下载积分:22 金币
快捷注册下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

开通VIP
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.zixin.com.cn/docdown/10293543.html】到电脑端继续下载(重复下载【60天内】不扣币)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

开通VIP折扣优惠下载文档

            查看会员权益                  [ 下载后找不到文档?]

填表反馈(24小时):  下载求助     关注领币    退款申请

开具发票请登录PC端进行申请

   平台协调中心        【在线客服】        免费申请共赢上传

权利声明

1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。

注意事项

本文(第6章STC89C52单片机定时计数器.ppt)为本站上传会员【快乐****生活】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4009-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

第6章STC89C52单片机定时计数器.ppt

1、单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,*,1,在测控系统中,常常需要有实时时钟和计数器,以实现定时控制以及对外界事件进行计数。传统8051系列单片机有二个16位定时/计数器,它们是定时/计数器0、定时/计数器1,STC89C52单片机在此基础上增加一个16位定时/计数器2,它们简称为:T0、T1和T2。,1,2,本章主要内容,:,定时器,/,计数器的组成与功能,工作模式和工作方式,以及与其相关的,4,个特殊功能寄存器,TMOD,、,TCON,、,T2CON,、,T2MOD,各位的定义及其编程,最后介绍定时器,/,计数器的编程及应用实例。,6.1 STC89C52,单片机

2、定时器,/,计数器的组成,6.2,定时,/,计数器,0,和,1,6.3,定时,/,计数器,2,2,3,STC89C52,定时,/,计数器由,T0,、,T1,、,T2,和看门狗定时器,WDT_CONTR,组成,,T0,由特殊功能寄存器,TH0,、,TL0,构成,,T1,由特殊功能寄存器,TH1,、,TL1,构成,,T2,由特殊功能寄存器,TH2,、,TL2,和RXAP2H、RCAP2L构成。,6.1 STC89C52,定时器,/,计数器的组成,3,4,6.2,定时,/,计数器,0,和,1,STC89C51RC/RD+,系列单片机的定时,/,计数器,0,和,1,,与传统,8051,的定时,/,计数

3、器完全兼容。当定时器,1,作波特率发生器时,定时器,0,可以当两个,8,位定时器使用。,6.2.1 定时器/计数器0和1的相关寄存器,6.2.2 定时/计数器0和1的四种工作方式,6.2.3 定时/计数器0或1的应用,4,5,STC89C51RC/RD+,系列单片机内部设置的两个,16,位定时器,/,计数器,0,和,1,都具有定时和计数两种工作模式,在特殊功能寄存器,TMOD,中有一位控制位 来选择,T0,或,T1,为定时器还是计数器,定时器或计数器的核心部件是一个加法计数器,其本质是对脉冲进行计数。只是计数脉冲来源不同:如果计数脉冲来源于系统时钟,则为定时方式,此时定时,/,计数器每,12,

4、个时钟或每,6,个时钟得到一个计数脉冲,计数值加,1,;如果计数脉冲来自单片机外部引脚(,T0,为,P3.4,,,T1,为,P3.5),,则为计数方式,每来一个计数脉冲加,1,。,5,6,当定时器/计数器工作在定时模式时,可在烧录用户程序时在STC-ISP编程器中设置如图4-12是系统时钟/12还是系统时钟/6后让T0和T1进行计数。当定时/计数器工作在计数模式时,对外部计数脉冲计数不分频。,图4-12 计数脉冲倍速设置,6,6,7,结论:,单片机中的定时器和计数器是一个东西,只不过计数器用来记录外界发生的事情,而定时器则是由单片机提供的一个非常稳定的计数源。,7,8,综上所述,我们已知定时器

5、/计数器是一种可编程部件,所以在其开始工作之前,,CPU,必须将一些命令(控制字)写入定时器/计数器。这个过程称为定时器/计数器的初始化。,当,CPU,用软件给定时器设置了某种工作方式之后,定时器就会按设定的工作方式独立运行,不再占用,CPU,的操作时间,除非定时器计数溢出,才可能中断,CPU,当前操作。,8,6.2.1,定时器,/,计数器,0,和,1,的相关寄存器,STC89C52单片机与定时/计数器0和1的相关寄存器见,表6-2,所示.,表6-2 定时器/计数器的0和1相关寄存器,9,大家有疑问的,可以询问和交流,可以互相讨论下,但要小声点,10,11,GATE,C/T,M,1,0,M,G

6、ATE,C/T,1,M,0,M,控 制,T,1,控 制,T,0,89,H,和,T,类同,0,1,M,0,M,00,01,10,11,方 式,方式0 13位,方式1 16位,方式2 自动重装,方式3 适用,T0,0,1,定时器模式,计数器模式,0,1,与,INT,无关,0,0,与,INT,有关,1.定时/计数器工作模式寄存器,TMOD,(89H),M1M0,:,方式选择位,C/T :,功能选择位,GATE:,门控位,11,12,GATE=1,时,若,TR,1,=1,,并且,INT,1,=1,允许,T,1计数,若,TR,1,=0,,或,INT,1,=0,都禁止,T,1计数,GATE=0,若,TR,

7、1,=1,允许计数;若,TR,1,=0,,禁止计数,返回,12,13,由于在不同方式下计数器位数不同,因而最大计数值(量程)也不同。,方式0:,M=2,13,=8192,方式1:,M=2,16,=65536,方式2:,M=2,8,=256,方式3:,T0,定时器分成两个8位计数器,两个,M,均256,T1,停止计数。,返回,13,14,TR1(0):,运行控制位,2.,定时/计数器控制寄存器,TCON,(88H),TF1(0):,溢出标志位,14,15,定时器/计数器的初始化,初始化的步骤如下:,确定工作方式-对,TMOD,赋值,置定时或计数的初值-可直接写入,TH0(1),TL0(1),根据

8、需要开放定时器/计数器的中断,启动定时器/计数器。,当实现了启动要求之后,定时器就按规定的工作方式和初值开始计数或定时。,15,16,因为定时器/计数器是作,“,加1,”,计数,并在计满溢出时产生中断,初值,X,可以这样计算:,X =M -,计数值(计数次数),例1:在6,MHZ,主频下,要求产生1,ms,的定时,计算初值,分析:因为定时器每,“,加1,”,一次所需的时间为2,s,如果要产生1,ms,的定时,需加500次,500即为计数值。,方式1下工作,:,初值,X=M-,计数值=65536-500=,FE0CH,例2:计100个外部脉冲,产生中断请求,计数初值x,x=M-100,16,17

9、若,Fosc=12MHz,在,P1.0,输出周期为,400us,方波,定时,/,计数器工作方式,2,问计数初值为多少,?,初始化程序,?,机器周期,=12/Fosc=1us,(256-X)*1us=200us,X=56=38H,P1.0,MOVTMOD,#02H,SETBET0,SETBEA,MOVTL0,#38H,MOVTH0,#38H,SETBTR0,17,18,6.2.2,定时,/,计数器,0,和,1,的四种工作方式,由上节可知,通过对,TMOD,中的,M1,M,0,的设置,可以选择四种工作方式。也就是每个定时器可构成4种电路结构模式。,在模式0、1和2,,T0,和,T1,的工作方式相

10、同,在模式3,两个定时器的方式不同。下面以,T1,为例,分述各种工作方式的特点和用法。,18,1,方式,0,19,2,方式,1,20,3,方式,2,这种工作方式可省去用户软件中重装常数的程序,并可产生相当精度的定时时间。,21,4方式,3,该方式只适用于定时器,T0,,,T0,被拆成两个独立的8位计数器,TH0,和,TL0,。,TH0不能作为外部计数模式,22,23,T0,工作在方式,3,下,T1,的各种工作方式,T0工作在方式3时,T1可定为方式0、方式1和方式2,用来作为串行口的波特率发生器,或不需要中断的场合,定时器T1处于方式3时相当于TR1=0,停止计数。,T1,运行的控制条件只有,

11、2,个,即,C/T,和,M1,M0.,23,24,6.2.3,定时,/,计数器,0,或,1,的应用,定时/计数器的应用编程主要需考虑:根据应用要求,通过程序初始化,正确设置控制字,正确计算计数初值,编写中断服务程序,适时设置控制位等。通常情况下,设置顺序大致如下:,工作方式控制字(TMOD、T2CON)的设置;,计数初值的计算并装入THx、TLx、RCAP2H、RCAP2L;,中断允许位ETx、EA的设置,使主机开放中断;,启/停位TRx设置;,24,25,51系列单片机T0或T1是属于加法计数器,因此就不能直接将实际的计数值作为计数初值送入计数寄存器THx,TLx中,而必须将实际计数值以2,

12、8,、2,13,、2,16,为模求补,以其补码作为计数初值设置THx和TLx。,设:实际计数值为X,计数器长度为n(n=8、13、16),则应装入计数器THx和TLx的计数初值为2,n,-X,式中2,n,为取模值。,例如:工作方式0,以2,13,为模,工作方式1,以2,16,为模等,,计数初值:(X),补,=2,n,-X。,25,26,定时模式,是对机器周期计数,而机器周期与选定主频密切相关,因此,需要根据应用系统选定的主频来确定机器周期值,现以主频为6MHz为例,则机器周期为:,注意:对于传统51系列单片机,式(1)中分子取值为12,而对于STC89C52单片机,式(1)中分子取值是根据计数

13、脉冲倍速设置来定(参见教材图4-12),若单片机选12T,则式(1)分子为12,若选6T,则式(1)分子为6。若没有特别提出,书中STC89C52单片机都选12T模式。,26,27,实际定时时间Tc=x Tp,式中Tp为机器周期,Tc为所需定时时间,x为所需计数次数,主频和Tc一般是已知值,在求得Tp后就可求得所需计数值x,再求x的补码,即求得定时的计数初值。(x),补,=2,n,-x,例如:设定时时间为2ms,机器周期Tp为2s,可求得定时计数次数为:,设选用工作方式1,n=16,则应设置的定时计数初值为:,(x),补,=2,n,-x=2,16,-x=65536-1000=64536=FC1

14、8H,则将其分解成两个8位十六进制数,低8位18H装入TLx,高8位FCH装入THx中。,工作方式0、1、2的最大计数次数分别为8192、65536和256。,对外部事件计数模式,只需根据实际计数次数求补后变换成两个16进制码即可。,27,28,6.2.3,定时,/,计数器,0,或,1,的应用,1.方式0、1的应用,【例,6.1】,设STC89C52单片机系统时钟频率f,CLK,为6,MH,Z,,要在,P,1.0,引脚上输出,1,个周期为,2,毫秒、占空比为50%的方波信号,.,P1.0,1ms,1ms,T=2ms,图,6-7 P1.0,引脚输出波形,28,解,:(1),计算初值,:,单片机工

15、作在12T模式,1机器周期,=2,s=2,10,-6,s,T0,工作方式0,定时1ms计数次数为:,选择工作方式0,n=13,定时计数初值:(x),补,=,2,1,3,-,500=,7692=1,E0CH,X=1111000001100B,则,TH0=,F0,H,TL0=0CH,29,30,(2),初始化程序,:,工作方式控制字(,TMOD,、,T2CON),的设置;,TMOD=0,0,H,定时方式0,计数初值的计算并装入,THx,、,TLx,、,RCAP2H,、,RCAP2L,;,TH0=,F0,H,TL0=0CH,中断允许位,ETx,、,EA,的设置,使主机开放中断;,ET0=1,EA=1

16、启,/,停位,TRx,设置;,TR0=1,30,31,方法一、中断方式:,ORG 0000H,LJMP MAIN,ORG 000BH,LJMP T0P,ORG 0100H,MAIN:MOV SP,#60H;设置堆栈指针,MOV TMOD,#00H;T0为定时、方式0、门控GATE0=0,MOV TL0,#0CH;装载计数初值,MOV TH0,#0F0H,SETB TR0;启动定时器0计数,SETB ET0;允许定时器0中断,SETB EA;允许CPU中断,HERE:AJMP HERE;踏步等待,31,32,/*中断服务子程序*/,T0P:MOV TL0,#0CH;重装载计数初值,MOV TH

17、0,#0FEH,CPL P1.0;P1.0输出求反,RETI,END,Keil,uVision4,32,33,方法二:软件查询,解,:(1),计算初值,:,机器周期,=2,s=2,10,-6,s,T0,工作方式,1,计数初值:,(x),补,=,65036=,FEOCH,则,TH0=0FEH,TL0=0CH,33,34,ORG0000H,START:,MOVSP,#60H;,设置堆栈区,MOV TMOD,#01H;,T0定时方式,1,门控,GATE0=0,SETB TR0;,启动定时器,0,计数,L,1:,MOVTH0,#0FEH;,装载计数初值,MOVTL0,#0CH,L,OOP1,:,JNB

18、 TF0,LOOP1;,判计数溢出?没有,踏步等待,CLRTF0;,溢出,清溢出标志位,CPLP1.0;P1.0,输出求反,SJMPL,1,END,34,35,中断方式、C51编程,#include,sbit P10=P10;,void main(),SP=0X60;/*设置堆栈指针*/,TMOD=0 x1;/*定时器0:定时、工作方式1、门控GATE0=0*/,TL0=0 x0c;/*装载计数初值*/,TH0=0 xfe;,TR0=1;/*启动定时器0计数*/,ET0=1;/*允许定时器0中断*/,EA=1;/*允许CPU中断*/,while(1);,35,36,void,timer0int

19、void),interrupt,1,TL0=0 x0c;/*,重装载计数初值*,/,TH0=0 xfe;,P10=!P10;/*P1.0,输出求反*,/,36,37,【例,6.2】,设STC89C52单片机系统时钟频率f,CLK,为6,MH,Z,,请编出利用定时/计数器,T0,在,P,1.1,引脚上产生周期为2秒,占空比为50%的方波信号的程序,1.主程序,任务,:,(1)设定,T0,工作方式1,单片机工作在12T模式,则机器周期为2,s,,最大定时,=2,16,2s=131.072ms量程?,MOVP2,RCAP2H;捕获值量程,则显示FFFFH,MOVP0,#0FFH,RET,111,1

20、12,/*,定时器,0,中断服务子程序*,/,PT0INT:MOVTH0,#0FCH;,定时器,0,重装计数初值,MOVTL0,#18H,CPLP1.5;P1.5,求反,使,P1.5,输出方波。,RETI,112,113,/*定时器2中断服务子程序*/,PT2INT:CLRP1.7 ;点亮P1.7,表明进入T2中断服务程序,JBC TF2,PTF2 ;定时溢出引起中断?,JBC EXF2,PEXF2 ;P1.1负跳变引发中断吗?,RETI,PEXF2:MOV C,20H.0 ;P1.1引脚负跳变引起中断,中断标志位送C,JCTT2 ;判断第一中断吗?,CY=0?,SETB TR2 ;第一次中断

21、启动定时器2计数,SETB 20H.0;中断次数标志置1,RETI,113,114,TT2:CLRTR2 ;第二次中断,定时器2停止计数,CLR20H.0;中断次数标志清0,CLR EXEN2;T2的外部使能位清0,ESC:RETI,PTF2:MOVTH2,RCAP2H;溢出中断,重装计数初值,MOVTL2,RCAP2L,SETB20H.1 ;置捕获脉冲宽度大于量程标志位,RETI,Keil,uVision4,114,115,(2)C51,语言程序,/*,文件名为,6-7.C*/,#include,#define uchar unsigned char,sbit P16=P16;,sbit

22、P15=P15;,sbit P17=P17;,sfr T2MOD =0 xC9;,uchar n=0;,uchar reg1,reg2;,115,116,/*,显示*,/,void disp(),if(n=1)P2=0 xff;P0=0 xff;,P2=reg2;,P3=reg1;,116,117,/*,主程序*,/,void main(),SP=0X60;,TMOD=0 x01;,TH0=0 xfc;,TL0=0 x18;,TR0=1;,T2MOD=0 x0;,T2CON=0 x9;,117,118,TL2=0 x0;,TH2=0 x0;,RCAP2H=0 x0;,RCAP2L=0 x0;,

23、IE=0 xa2;,while(1),disp();,118,119,/*,定时器,0,中断函数*,/,void timer0int(void)interrupt 1,TF0=0;,TH0=0 xfc;,TL0=0 x18;,P15=!P15;,119,120,/*定时器2中断函数*/,void timer2int(void)interrupt 5,uchar i;,TF2=0;,P17=0;,if(TF2=1),TF2=0;TH2=RCAP2H;TL2=RCAP2L;n+;,if(EXF2=1),EXF2=0;,if(i=0)TR2=1;i+;/*第一次外部信号触发中断,启动定时器2计数*/

24、120,121,else,reg1=RCAP2L;/*,保存捕获值*,/,reg2=RCAP2H;,i=0;,TR2=0;/*,停止定时器,2,计数*,/,EXEN2=0;/*,禁止,T2EX,负跳变产生捕获*,/,Keil,uVision4,121,122,6.6 小 结,本章介绍,STC89C52,单片机定时,/,计数器组成、与定时,/,计数器相关的特殊功能寄存器,详细叙述这些特殊功能寄存器每一位的物理意义和使用这些特殊功能寄存器方法。介绍了,T0,和,T1,的,4,种工作方式、它们的电路结构模型以及它们适合应用范围。介绍了与,T2,相关的特殊功能寄存器以及寄存器每位的物理意义和使用方法,介绍,T2,的,3,种工作方式逻辑结构图,并举例说明,T2,各种工作方式应用。,122,

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服