书签 分享 收藏 举报 版权申诉 / 24
上传文档赚钱

类型Mes-51单片机定时计数器课件.ppt

  • 上传人(卖家):晟晟文业
  • 文档编号:4290527
  • 上传时间:2022-11-26
  • 格式:PPT
  • 页数:24
  • 大小:234.86KB
  • 【下载声明】
    1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
    2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
    3. 本页资料《Mes-51单片机定时计数器课件.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
    4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
    5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    Mes 51 单片机 定时 计数器 课件
    资源描述:

    1、第第6 6章章 MCSMCS 5151定时定时/计数器计数器 6.1 6.1 定时器的结构及工作原理定时器的结构及工作原理 6.26.2定时器的控制定时器的控制6.36.3定时器的工作模式及其应用定时器的工作模式及其应用 6.1 6.1 定时器的结构及工作原理定时器的结构及工作原理一、定时一、定时/计数器的结构图计数器的结构图中断中断工作方式工作方式工作方式工作方式二、定时二、定时/计数器的原理计数器的原理 1 1、计数脉冲、计数脉冲 (1 1)定时)定时 计数脉冲为时钟脉冲的计数脉冲为时钟脉冲的1212分频,每来一个脉冲,定时计数器加分频,每来一个脉冲,定时计数器加1 1。(2 2)计数)计

    2、数 外部脉冲由引脚外部脉冲由引脚P3.4P3.4和和P3.5P3.5加入,每来一个脉冲计数器加加入,每来一个脉冲计数器加1 1 2 2、定时器溢出、定时器溢出 当定时器为最大值时,再来一个脉冲,定时器复位,即发生溢出,当定时器为最大值时,再来一个脉冲,定时器复位,即发生溢出,此时要向此时要向CPUCPU提出中断申请提出中断申请.三、定时三、定时/计数器计数器 T0 T0:1616位定时位定时/计数器计数器 由由TL0TL0,TH0TH0两个八位计数器组成两个八位计数器组成 T1T1:1616位定时位定时/计数器计数器 由由TL1TL1,TH1TH1两个八位计数器组成两个八位计数器组成 6.2

    3、6.2 定时器的控制定时器的控制一、工作方式寄存器一、工作方式寄存器TMODTMOD TMOD TMOD用于控制用于控制T0T0和和T1T1的工作方式,其各位的定义如图所示。的工作方式,其各位的定义如图所示。1.M1M01.M1M0工作方式控制位工作方式控制位 2.C/T 2.C/T 定时器方式或计数器方式选择位定时器方式或计数器方式选择位 若若C/T=1C/T=1时时,为计数器方式为计数器方式;C/T=0;C/T=0时时,为定时器方式。为定时器方式。3.GATE 3.GATE 定时器定时器/计数器运行门控标志位计数器运行门控标志位 当当GATE=1GATE=1时时,只有只有INT0(INT0

    4、(或或INT1)INT1)引脚为高电平且引脚为高电平且TR0(TR0(或或TR1)TR1)置置1 1时时,相应的定时器相应的定时器/计数器才被选通工作计数器才被选通工作,这时可用于测量在这时可用于测量在INTxINTx端端出现的正脉冲的宽度。若出现的正脉冲的宽度。若GATE=0,GATE=0,则只要则只要TR0(TR0(或或TR1)TR1)置置1,1,定时器定时器/计计数器就被选通数器就被选通,而不管而不管INT0(INT0(或或INT1)INT1)的电平是高还是低。的电平是高还是低。二、二、定时器定时器/计数器控制寄存器计数器控制寄存器TCONTCON TF0 TF0、TF1TF1分别是定时

    5、器分别是定时器/计数器计数器T0T0、T1 T1 的溢出标志位的溢出标志位,加法计加法计数器计满溢出时置数器计满溢出时置 1,1,申请中断申请中断,在中断响应后自动复在中断响应后自动复 0 0。TFTF产产生的中断申请是否被接受生的中断申请是否被接受,还需要由中断是否开放来决定。还需要由中断是否开放来决定。TR1TR1、TR0 TR0 分别是定时器分别是定时器 /计数器计数器T1T1、T0 T0 的运行控制位的运行控制位,通过通过软件置软件置 1 1 后后,定时器定时器 /计数器才开始工作计数器才开始工作,在系统复位时被清在系统复位时被清 0 0。6.3 6.3 定时器的工作模式及其应用定时器

    6、的工作模式及其应用一、模式一、模式0 0及其应用及其应用 模式模式0 0选择定时器的高选择定时器的高8 8位和低位和低5 5位组成一个位组成一个1313位的定时位的定时/计数计数器,如下图所示:器,如下图所示:P3.4 定时器工作在方式定时器工作在方式0 0时时,为为1313位的定时器位的定时器,TH0,TH0的的8 8位位,TL0,TL0的低的低5 5位位,当当TL0TL0溢出时溢出时,向向TH0TH0进位进位,当当TH0TH0溢出时溢出时,向向CPUCPU申请中断申请中断.定时初值的计算定时初值的计算:T=(2 T=(21313-X)-X)*振荡周期振荡周期*1212 T T为定时时间为定

    7、时时间,X,X为定时初值为定时初值 定时定时/计数器的初始化过程计数器的初始化过程:(1)(1)确定工作模式确定工作模式,设置设置TMODTMOD (2)(2)设置定时设置定时/计数器的初值计数器的初值 (3)(3)设置中断设置中断 (4)(4)启动定时启动定时/计数器计数器例例6.2 6.2 利用定时利用定时/计数器的方式产生计数器的方式产生1ms1ms定时定时,在在P1.0P1.0输出周期输出周期2ms2ms方方波波,设单片机晶振频率设单片机晶振频率foscfosc=12MHz.=12MHz.查询方式查询方式:MOV TMOD#00H MOV TMOD#00H MOV TH0,#18H M

    8、OV TH0,#18H MOV TL0,#0E0H MOV TL0,#0E0H SETB TR0 SETB TR0 LOOP:JBC TF0,NEXT LOOP:JBC TF0,NEXT SJMP LOOP SJMP LOOP NEXT:MOV TL0,#18H NEXT:MOV TL0,#18H MOV TH0,#0E0H MOV TH0,#0E0H CPL P1.0 CPL P1.0 SJMP LOOP SJMP LOOP ORG 0000H AJMP START;复位入口 ORG 000BH AJMP TOINT ;T0中断入口 ORG 0030HSTART:MOV SP,60H;初始化

    9、程序 MOV TH0,18H ;T0赋初值 MOV TL0,0EcH MOV TMOD,00H SETB TR0 ;启动T0 SETB ET0;开T0中断 SETB EA ;开总允许中断 MAIN:AJMP MAIN;主程序TOINT:CPL P1.0 MOV TL0,18H MOV TH0,0E0H RET I END中断方式中断方式二、方式二、方式1 1 方式方式1 1为为1616位的定时位的定时/计数器计数器,TH0,TH0为高为高8 8位位,TL0,TL0为低为低8 8位位,一起组成一起组成1616位的定时位的定时/计数器计数器.结构图如下图所示结构图如下图所示:定时定时/计数器工作在

    10、方式一时计数器工作在方式一时,定时初值的计算公式如下定时初值的计算公式如下:T=(2 T=(21616-T0-T0的初值的初值)振荡周期振荡周期1212若晶振的频率若晶振的频率foscfosc=12MHZ,=12MHZ,则最长定时时间为则最长定时时间为:T TMAXMAX=(2=(21616-T0-T0初值初值)1/12 1/12 12 us=65.536ms12 us=65.536ms例例6.4:6.4:用定时器用定时器T1T1产生一个产生一个100Hz100Hz的方波的方波,由由P1.0P1.0输出输出,设设foscfosc=12MHZ,=12MHZ,采用查询方式采用查询方式.解解:方波周

    11、期方波周期:T=1/100Hz=0.01S=10MS,T=1/100Hz=0.01S=10MS,用用T1T1定时定时5MS5MS计数器初值计数器初值:X=X=216-12 5 103/12=60536=EC78H三、方式三、方式2 2 定时定时/计数器工作在方式计数器工作在方式2 2时为时为8 8位的自动重装的定时定数位的自动重装的定时定数器器,TL0,TL0作为计数器作为计数器,THO,THO用来保存定时初值用来保存定时初值,当当TL0TL0溢出溢出,TH0,TH0将计数将计数初值送入初值送入TL0,TL0,重新开始计时重新开始计时.定时定时/计数器工作在方式计数器工作在方式2 2时时,定时

    12、初值的计算公式如下定时初值的计算公式如下:T=(2 T=(28 8-T0-T0的初值的初值)振荡周期振荡周期1212若晶振的频率若晶振的频率foscfosc=12MHZ,=12MHZ,则最长定时时间为则最长定时时间为:TMAX=(2 TMAX=(28 8-T0-T0初值初值)1/12 1/12 12 us=256us12 us=256us例例6.5 6.5 当外部引脚当外部引脚P3.4(T0)P3.4(T0)上电平发生负跳变时上电平发生负跳变时,从从P1.0P1.0输出输出500us500us的同步脉冲的同步脉冲,请编程实现功能请编程实现功能.解解:(1)(1)模式选择模式选择:首先选首先选T

    13、0T0为模式为模式2,2,外部事件计数方式外部事件计数方式,当当P3.4P3.4引脚上引脚上的电平发生负跳变时的电平发生负跳变时,T0,T0计数器加计数器加1,1,举出标志举出标志TF0TF0置置1;1;然然后改变后改变T0T0为为500us500us定时工作方式定时工作方式,并使并使P1.0P1.0输出由输出由1 1变为变为0.0.定时器到产生溢出定时器到产生溢出,使使P1.0P1.0引脚恢复输出高电平引脚恢复输出高电平,T0,T0又恢又恢复外部事件计数方式复外部事件计数方式.(2)(2)计算初值计算初值 T0T0工作在外部事件计数方式工作在外部事件计数方式,当计数到当计数到2 28 8时时

    14、,再加再加1 1计数器计数器就会溢出就会溢出,设计数初值为设计数初值为X,X,当出现一次外部事件时当出现一次外部事件时,计数器溢计数器溢出出,则则:X+1=2 X+1=28 8 X=2 X=28 8-1=11111111B=0FFH-1=11111111B=0FFH T0 T0工作在定时方式时工作在定时方式时,设晶振频率为设晶振频率为6MHZ,500us6MHZ,500us相当于相当于250250个机器周期个机器周期,因此因此,初值初值X X为为:(2 (28 8-X)-X)2 us=500us X=22 us=500us X=28 8-250=06H-250=06H(3)(3)程序清单程序清

    15、单 START:MOV TMOD,#06H MOV TH0,#0FFH MOV TL0,#0FFH SETB TR0 LOOP:JBC TF0,PTF01 SJMP LOOP01PTF0:CLR TR0 MOV TMOD,#02H MOV TH0,#06H MOV TL0,#06H CLR P1.0 SETB TR0LOOP2:JBC TF0,PTF02 SJMP LOOP2 PTF02:SETB P1.1 CLR TR0 SJMP START 例例6.6:6.6:利用定时器利用定时器T1T1方式方式2 2对外部事件对外部事件,要求每计满要求每计满200200个脉冲将个脉冲将P1.0P1.0端

    16、取反端取反 解解:外部事件由外部事件由T1(P3.5)T1(P3.5)引脚输入引脚输入,每发生一次负跳变每发生一次负跳变,计数器加计数器加1,1,每输入每输入200200个脉冲个脉冲,计数器发生溢出中断计数器发生溢出中断,将将P1.0P1.0取反一次取反一次.T1 T1设置为方式设置为方式2 2计数器状态计数器状态,方式字为方式字为TMOD=60HTMOD=60H 初值计算初值计算:X=28-200=56D=38H:X=28-200=56D=38H 因此因此TL1TL1的初值为的初值为38H,38H,重装初值重装初值TH1=38HTH1=38H程序清单程序清单:MAIN:MOV TMOD,#6

    17、0H MOV TL1,#38H MOV TH1,#38H MOV IE,#88H SETB TR1 HERE:SJMP HERE ORG 001BH CPL P1.0 RETI三、模式三、模式3:3:模式模式3 3只适用于定时器只适用于定时器T0T0,若将,若将T1T1置为模式置为模式3 3,它将停止计数,它将停止计数,其效果类同将其效果类同将TR1=0TR1=0;即关闭定时器;即关闭定时器T1.T1T1.T1只做为波特率发生器。只做为波特率发生器。当当T0T0工作在模式工作在模式3 3下,下,TL0TL0,TH0TH0被分成两个相互独立的被分成两个相互独立的8 8位计位计数器。其中,数器。其

    18、中,TL0TL0使用原使用原T0T0的各位控制位,引脚,中断源,即使用的各位控制位,引脚,中断源,即使用C/TC/T,GATEGATE,TR0TR0,TF0TF0和和INT0INT0引脚,其功能和操作与模式引脚,其功能和操作与模式0 0和模式和模式1 1相同,只是相同,只是TL0TL0只能使用只能使用8 8位寄存器,既可以工作在定时器方式也位寄存器,既可以工作在定时器方式也可以工作在计数方式。可以工作在计数方式。TH0TH0只可作简单的内部定时器,定占用只可作简单的内部定时器,定占用T1T1的的控制位控制位TR1TR1,和,和T1T1的中断标志位的中断标志位TF1TF1,同时也占用了,同时也占

    19、用了T1T1的中断源,的中断源,由由TR1TR1来负责启动和关闭。来负责启动和关闭。四、综合应用举例四、综合应用举例例例6.7:6.7:设时钟频率为设时钟频率为12MHz,12MHz,编写程序利用编写程序利用T1T1产生产生1S1S定时程序定时程序.解解:(1)T1:(1)T1的工作模式的确定的工作模式的确定 因为定时器事件较长因为定时器事件较长,采用哪一种工作方式适合采用哪一种工作方式适合?foscfosc=12MHz=12MHz时时,模式模式0 0最长可定时最长可定时2 213131us=8.192ms1us=8.192ms 模式模式1 1最长可定时最长可定时2 216161us=65.5

    20、36ms1us=65.536ms 模式模式2 2最长可定时最长可定时2 28 81us=256us1us=256us经分析经分析,可选方模式可选方模式1,1,定时事件为定时事件为50ms,50ms,另设计一个软件计数器另设计一个软件计数器,初始值为初始值为20,20,每隔每隔50ms50ms中断一次中断一次,中断中断2020次为次为1S.1S.(2)(2)求初值求初值 (2 21616-X)-X)-1/(121/(1210106 6)12=5012=501313-3-3 X=65536-50000=15536=3CB0H X=65536-50000=15536=3CB0H 因此因此 (TH1)

    21、=3CH (TL1)=B0H(TH1)=3CH (TL1)=B0H(3)(3)程序如下程序如下:ORG 0000H MAIN:MOV SP,#60H LJMP MAIN MOV R2,#20 ORG 001BH MOV TMOD,#10H AJMP SERVE MOV TL1,#0B0H ORG 2000H MOV TH1,#3CH SETB TR1 SETB ET1 SETB EA SJMP$SERVE:MOV TL1,#0B0H MOV TH1,#3CH DJNZ R2,LOOP CLR TR1 LOOP:RETI END例例6.8 6.8 利用定时器利用定时器T0T0方式方式2 2对外部

    22、事件计数对外部事件计数,要求每次满要求每次满200200次后次后,从从P1.0P1.0输出宽度为输出宽度为5ms5ms的高电平的高电平,如此循环下去如此循环下去(设设 foscfosc=12MHz)=12MHz)解解:根据题意根据题意,T0,T0交替工作于计数方式和定时方式交替工作于计数方式和定时方式,先先计数满计数满200200次后改为定时方式次后改为定时方式,1 ms,1 ms后又回到计数方式后又回到计数方式,计计数方式为方式数方式为方式2,2,定时器为方式定时器为方式1.1.T1 T1的方式控制字的方式控制字:计数方式为计数方式为TMOD=06HTMOD=06H 定时方式为定时方式为TM

    23、OD=01HTMOD=01H T1 T1的初值的初值:计数初值为计数初值为:X=2:X=28 8-200=56D=38H-200=56D=38H 定时初值为定时初值为EC78HEC78H ORG 0030H MAIN:CLR TR0 MOV TMOD,#60H MOV TH0,#38H MOV TL0,#38H SETB TR0 CLR P1.0 WAIT:JBC TF0,TIME SJMP START TIME:CLR TR0 SETB P1.0 MOV TMOD,#01H MOV TH0,#0ECH MOV TL0,#78H SETB TR0 WAIT1:JBC TF0,MAIN SJMP

    24、 WAIT1 END例例6.9 6.9 利用利用T0T0确定确定INT0INT0引脚上出现的正脉冲的宽度引脚上出现的正脉冲的宽度,将测到的机器周将测到的机器周期的个数存入期的个数存入30H,31H30H,31H中。中。解解:设设T0T0为定时器方式为定时器方式1,1,门控位门控位GATEGATE置置1,1,初值为初值为0 0 当当INT0INT0引脚变为高电平时引脚变为高电平时,采用外触发方式启动采用外触发方式启动T0T0定时定时,当外部当外部INT0INT0引脚变为低电平时引脚变为低电平时,停止停止T0T0定时定时,这时这时TL0TL0和和TH0TH0中的值就是中的值就是INT0INT0引引脚为高电平期间所经过的机器周期数脚为高电平期间所经过的机器周期数,其程序清单如下其程序清单如下:MAIN:MOV TMOD,#09H MOV TL0,#00H MOV TH0,#00H WAIT:JB P3.2,WAIT1 SETB TR0 WAIT2:JNB P3.2,WAIT2 WAIT:JNB P3.2,WAIT CLR TR0 MOV 30H,TL0 MOV 31H,TH0 SJMP$END

    展开阅读全文
    提示  163文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:Mes-51单片机定时计数器课件.ppt
    链接地址:https://www.163wenku.com/p-4290527.html

    Copyright@ 2017-2037 Www.163WenKu.Com  网站版权所有  |  资源地图   
    IPC备案号:蜀ICP备2021032737号  | 川公网安备 51099002000191号


    侵权投诉QQ:3464097650  资料上传QQ:3464097650
       


    【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。

    163文库