定时器门控位gate的应用.pptx

  1. 1、本文档共28页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第6章 定时/计数器及应用 ;6.1 MCS-51定时/计数器概述;6.1.1 定时器/计数器的结构 ;6.1.2定时器/计数器的工作原理 ; 通过方式寄存器TMOD的C/T位来选择加1计数器计数脉冲的来源:当C/T=1时,计数脉冲来自系统外部的脉冲源,这时定时/计数器成为外部事件计数器,工作于计数器状态;当C/T=0时,计数脉冲来自系统的时钟振荡器的12分频,由于这时的计数脉冲为一时间基准,脉冲数乘以脉冲间隔时间就是定时时间,这时定时/计数器工作于定时器状态。 作为定时器用时,加1计数器的值每过一个机器周期增1。 作为计数器用时,外部输入脉冲加在定时/计数器的外部输入端T0(P3.4)或T1(P3.5),每出现一次从1到0的跳变,加1计数器便加1。 ;6.2定时器/计数器的控制 ; TMOD的地址为89H,不可按位寻址,只能用字节指令设置定时器工作方式。低半字节定义定时器T0,高半字节定义定时器T1。复位时,TMOD所有位均为零。 表6-1 方式选择位意义 ;6.2.2定时器/计数器的控制寄存器 ;6.3定时器/计数器的四种工作方式及应用 ; C/T=0时,作为定时器方式工作,T0对机器周期计数,其定时时间为: (213- T0初值)×时钟周期×12 当GATE=1,且TR0=1时,外部信号通过INT0引脚直接开启或关断定时/计数器的计数。当输入高电平时允许计数,否则停止计数。这种操作方法可用于测量加到INT0的外部信号脉冲宽度。 作为计数器方式工作时,T0对外部事件计数。 以上的说明同样适合于定时器T1。 二、应用举例 由前面的论述可知,MCS-51单片机的定时/计数器是可编程的,因此,在使用定时/计数器进行定时或计数之前,首先要通过软件对它进行初始化。初始化包括下述几个步骤: ? 1.确定工作方式:对TMOD寄存器赋值; ? 2.置定时/计数器初值:对TH0、TL0或TH1、TL1寄存器赋值; 设加1计数器的最大值为N(方式0,N=213;方式1,N=216;方式2、3,N=28),由于采用加法计数,则初值X的计算方法如下: 计数方式时:X=N-M 定时方式时:X=N-t/T ; 在上两式中,M为计数模值,即从计数器启动到溢出时所需计数值;t为定时值;T为计数周期,单片机时钟周期的12倍。 ? 3.根据需要,开放定时器中断:对IE寄存器赋值; 4.启动定时/计数器:使TCON寄存器的TR0或TR1置位,或由加到引脚INTX上的外部信号电平启动。 之后,定时/计数器即按规定的工作方式和初值进行定时或开始计数。 例6-1 利用T0方式0产生宽度为2μs,周期为2ms的定时负脉冲,由P1.7送出,系统采用12MHz的晶振。 解 由于晶振为12MHz,机器周期为1μs,这样利用T0方式0产生周期为2ms定时的初值X为: X =N-t/T =213-2×10-3/(1×10-6) =8192-2000 =6192 =1830H =1100000110000B 则TH0=0C1H,TL0=10H ; 由于CLR bit和NOP指令的执行时间为1个机器周期,当晶振为12MHz时,这两条指令的执行时间都为1μs。这样,每当定时时间到时,利用T0产生中断,在中断服务程序中,先执行CLR P1.7和NOP两条指令,然后执行SETB P1.7,最后重装TH0和TL0的初值,就可以产生题目所要求的定时脉冲。 置T0为定时方式0,GATE=0,C/T=0, M1M0=00H, T1不用,可任意,一般取0,故TMOD=00H,并由TR0启停T0。 ; 初始化程序: MOV TMOD,#00H MOV TH0,#0C1H MOV TL0,#10H ;初始化T0 MOV IE,#82H ;开T0中断 SETB TR0 ;启动T0 … … … T0溢出中断服务程序: T0INT:CLR P1.7 NOP SETB P1.7 MOV TH0,#0C1H;T0重置初值 MOV TL0,#10H RETI ;6.3.2方式1及其应用 ;二、应用举例 例6-2 利用T0方式1产生一个50Hz的方波,由P1.7送出。系统采用12MHz的晶振,并假定CPU不

文档评论(0)

jianzhongdahong + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档