第6章 定时计数器_第1页
第6章 定时计数器_第2页
第6章 定时计数器_第3页
第6章 定时计数器_第4页
第6章 定时计数器_第5页
已阅读5页,还剩63页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、电气工程学院电气工程学院Electrical Engineering Institute of NEDU2022年5月8日星期日第六章第六章 定时定时/ /计数器计数器电气工程学院电气工程学院Electrical Engineering Institute of NEDU2022年5月8日星期日 6.1 定时器定时器/计数器结构计数器结构 6.2 定时器定时器/计数器的四种工作方式计数器的四种工作方式 6.3 定时器定时器/计数器对输入信号的要求计数器对输入信号的要求 6.4 定时器定时器/计数器编程和应用计数器编程和应用教学内容教学内容电气工程学院电气工程学院Electrical Engin

2、eering Institute of NEDU2022年5月8日星期日6.1.1 6.1.1 定时定时/ /计数器的结构与原理计数器的结构与原理 重点:定时的实质,定时与计数的关系重点:定时的实质,定时与计数的关系6 6.1.2 .1.2 定时定时/ /计数器方式寄存器计数器方式寄存器TMODTMOD6.1.3 6.1.3 定时定时/ /计数器控制计数器控制寄存器寄存器TCONTCON6 6.1.4 .1.4 定时定时/ /计数器的初始化计数器的初始化返回本章首页6.1 6.1 定时定时/ /计数器结构计数器结构电气工程学院电气工程学院Electrical Engineering Insti

3、tute of NEDU2022年5月8日星期日6.1.1 6.1.1 定时定时/ /计数器结构与原理计数器结构与原理 定时器定时器/计数器简称定时器,计数器简称定时器,8051单片机内部有单片机内部有2个个16位的可编程定时位的可编程定时/计数器:定时器计数器:定时器0(T0)和定和定时器时器1(T1)。)。可编程可编程是指其功能(如工作方式、是指其功能(如工作方式、定时时间、启动方式等)可以由定时时间、启动方式等)可以由指令指令来确定和改变。来确定和改变。 在定时器在定时器/计数器中除了有两个计数器中除了有两个16位的计数器之外,位的计数器之外,还有还有2个特殊功能寄存器(控制寄存器个特殊

4、功能寄存器(控制寄存器TCON和方式和方式寄存器寄存器TMOD)。)。 电气工程学院电气工程学院Electrical Engineering Institute of NEDU2022年5月8日星期日这些寄存器之间是通这些寄存器之间是通过内部总线和控制逻过内部总线和控制逻辑电路连接起来的。辑电路连接起来的。定时器定时器/ /计数器的结构计数器的结构电气工程学院电气工程学院Electrical Engineering Institute of NEDU2022年5月8日星期日 从结构图可以看出从结构图可以看出: 16位的定时器位的定时器/计数器分别由两个专用寄存器组计数器分别由两个专用寄存器组成

5、,即成,即T0由由TH0和和TL0构成;构成;T1由由TH1和和TL1构构成。这些寄存器由于成。这些寄存器由于存放定时和计数初值存放定时和计数初值。此。此外,内部还有一个外,内部还有一个8位的位的TMOD和一个和一个8位的位的TCON。TMOD 主要用于选定定时器的主要用于选定定时器的工作方工作方式式;TCON主要用于主要用于控制控制定时器的定时器的启动与停止。启动与停止。定时器定时器/计数器的结构计数器的结构电气工程学院电气工程学院Electrical Engineering Institute of NEDU2022年5月8日星期日定时器定时器/ /计数器的原理计数器的原理 1616位的定

6、时器位的定时器/ /计数器的实质上是一个加计数器的实质上是一个加1 1的计的计数器数器, ,其控制电路受软件控制、切换。其控制电路受软件控制、切换。 计数的次数和时间之间是相关的计数的次数和时间之间是相关的。 只要计数脉冲的只要计数脉冲的间隔相等,计数间隔相等,计数值就代表时间的值就代表时间的流逝流逝电气工程学院电气工程学院Electrical Engineering Institute of NEDU2022年5月8日星期日 当定时器当定时器/计数器为定时工作方式时,加计数器为定时工作方式时,加1信号由信号由振荡器的振荡器的12分频产生,分频产生,即每过一个机器周期,计数值即每过一个机器周期

7、,计数值增增1,直至计满溢出为止。显然,定时器的定时时间,直至计满溢出为止。显然,定时器的定时时间与系统的振荡频率有关。由于一个机器周期等于与系统的振荡频率有关。由于一个机器周期等于12个个振荡周期,所以振荡周期,所以 计数频率计数频率 fcount=1/12fosc 例:晶振为例:晶振为12MHZ ,则计数周期为则计数周期为 T=1/(12*106)Hz*1/12 =1微秒微秒最短的定时最短的定时周期周期电气工程学院电气工程学院Electrical Engineering Institute of NEDU2022年5月8日星期日 当定时器当定时器/ /计数器为计数工作方式时,通过引计数器为

8、计数工作方式时,通过引脚脚T0T0和和T1T1对外部信号计数,外部脉冲的对外部信号计数,外部脉冲的下降沿下降沿触发触发计数计数 采样过程:采样过程: 在每个机器周期的在每个机器周期的S5P2期间采样引脚期间采样引脚当输入脉冲信号从当输入脉冲信号从1 1到到0 0的负跳变时,计数器就自的负跳变时,计数器就自动加动加1 1。 由于检测一个由由于检测一个由1 1到到0 0的跳变需要两个机的跳变需要两个机器周期,所以器周期,所以 计数的最高频率为振荡频率的计数的最高频率为振荡频率的1/241/24。为了确保给定电平在变化前至少被采样一次,外为了确保给定电平在变化前至少被采样一次,外部计数脉冲的部计数脉

9、冲的高低电平高低电平均需保持均需保持一个机器周期一个机器周期以以上。(占空比没有限制)上。(占空比没有限制)电气工程学院电气工程学院Electrical Engineering Institute of NEDU2022年5月8日星期日 单片机中的定时器和计数器是一个部件,单片机中的定时器和计数器是一个部件,只不过计数器用来记录外界发生的事情,而定只不过计数器用来记录外界发生的事情,而定时器则是由单片机提供的一个非常稳定的计数时器则是由单片机提供的一个非常稳定的计数源。源。结论结论电气工程学院电气工程学院Electrical Engineering Institute of NEDU2022年

10、5月8日星期日 综上所述,我们已知定时器综上所述,我们已知定时器/计数器是一种可编计数器是一种可编程部件,所以在其开始工作之前,程部件,所以在其开始工作之前,CPU必须将一些必须将一些命令(控制字)写入定时器命令(控制字)写入定时器/计数器。这个过程称计数器。这个过程称为定时器为定时器/计数器的初始化。计数器的初始化。 当当CPU用软件给定时器设置了某种工作方式之后,用软件给定时器设置了某种工作方式之后,定时器就会按设定的工作方式独立运行,不再占用定时器就会按设定的工作方式独立运行,不再占用CPU的操作时间,除非定时器计数溢出,才可能中的操作时间,除非定时器计数溢出,才可能中断断CPU当前操作

11、。当前操作。结论结论电气工程学院电气工程学院Electrical Engineering Institute of NEDU2022年5月8日星期日 6.1.2 定时器定时器/计数器方式寄存器计数器方式寄存器TMODGATEGATEC/TC/T M M1 10 0M MGATEGATEC/TC/T1 1M M0 0M M控控 制制 T T 1 1控控 制制 T T 0 08989H H和和T T 类同类同0 01 1M M0 0M M0 00 00 10 11 01 01 11 1方方 式式方式方式0 0 1313位位方式方式1 161 16位位方式方式2 2 自动重装自动重装方式方式3 3

12、适用适用T0T00 01 1定时器模式定时器模式计数器模式计数器模式0 01 1与与INT INT 无关无关0 00 0与与INT INT 有关有关M1M0:方式选择位方式选择位C/T:功能选择位功能选择位GATE: 门控位门控位电气工程学院电气工程学院Electrical Engineering Institute of NEDU2022年5月8日星期日GATE=1GATE=1时时 若若TRTR1 1=1=1,并且,并且 INTINT1 1=1,=1,允许允许T0T0计数,计数, 若若TRTR1 1=0=0,或,或INTINT1 1=0,=0,禁止禁止T0T0计数计数 GATE=0,GATE

13、=0,若若TRTR1 1=1,=1,允许计数允许计数 若若TRTR1 1=0=0,禁止计数禁止计数 电气工程学院电气工程学院Electrical Engineering Institute of NEDU2022年5月8日星期日 由于在不同方式下计数器位数不同,因而最大计由于在不同方式下计数器位数不同,因而最大计数值(量程)也不同。数值(量程)也不同。 方式方式0:M=213=8192 方式方式1:M=216=65536 方式方式2:M=28=256 方式方式3:定时器分成两个:定时器分成两个8位计数器,两个位计数器,两个M均均256电气工程学院电气工程学院Electrical Enginee

14、ring Institute of NEDU2022年5月8日星期日TR1(0):运行控制位运行控制位6.1.3 定时器定时器/计数器控制寄存器计数器控制寄存器TCON(88H)定时器工作模式寄存器定时器工作模式寄存器TCONTCON TF1(0): 溢出标志溢出标志电气工程学院电气工程学院Electrical Engineering Institute of NEDU2022年5月8日星期日6.1.4 6.1.4 定时器定时器/ /计数器的初始化计数器的初始化初始化的步骤如下:初始化的步骤如下:确定工作方式确定工作方式-对对TMOD赋值赋值置定时或计数的初值置定时或计数的初值-可直接写入可直

15、接写入TH0(1),TL0(1)根据需要开放定时器根据需要开放定时器/计数器的中断计数器的中断启动定时器启动定时器/计数器。计数器。 当实现了启动要求之后,定时器就按规定的工作当实现了启动要求之后,定时器就按规定的工作方式和初值开始计数或定时。方式和初值开始计数或定时。电气工程学院电气工程学院Electrical Engineering Institute of NEDU2022年5月8日星期日 因为定时器因为定时器/计数器是作计数器是作“加加1”计数,并在计满计数,并在计满溢出时产生中断,初值溢出时产生中断,初值X可以这样计算:可以这样计算: X = M - 计数值计数值(计数次数)计数次数

16、) 例:在例:在6MHZ主频下,要求产生主频下,要求产生1ms的定时的定时,计算初值计算初值 分析:因为定时器每分析:因为定时器每“加加1”一次所需的时间为一次所需的时间为2s,如如果要产生果要产生1ms的定时,需加的定时,需加500次,次,500即为计数值。即为计数值。方式方式1下工作。下工作。 初值初值 X =M-计数值计数值=65536-500=FE0CH电气工程学院电气工程学院Electrical Engineering Institute of NEDU2022年5月8日星期日6.2 6.2 定时器定时器/ /计数器的计数器的4 4种工作方式种工作方式 由上节可知,通过对由上节可知,

17、通过对TMOD中的中的M1、M0的设的设置置,可以选择四种工作方式。也就是每个定时器可可以选择四种工作方式。也就是每个定时器可构成构成4种电路结构模式。种电路结构模式。 在模式在模式0、1和和2,T0和和T1的工作方式相同,在模的工作方式相同,在模式式3,两个定时器的方式不同。下面以,两个定时器的方式不同。下面以T1为例,为例,分述各种工作方式的特点和用法。分述各种工作方式的特点和用法。电气工程学院电气工程学院Electrical Engineering Institute of NEDU2022年5月8日星期日方式方式016位寄存器中只用位寄存器中只用13位,其中位,其中TL1的高的高三位未

18、用。三位未用。电气工程学院电气工程学院Electrical Engineering Institute of NEDU2022年5月8日星期日16位寄存器全用位寄存器全用方式方式1电气工程学院电气工程学院Electrical Engineering Institute of NEDU2022年5月8日星期日这种工作方式可省去用户软件中重装常数的程这种工作方式可省去用户软件中重装常数的程序,并可产生相当精度的定时时间。序,并可产生相当精度的定时时间。方式方式2电气工程学院电气工程学院Electrical Engineering Institute of NEDU2022年5月8日星期日该方式只适

19、用于定时器该方式只适用于定时器T0T0,T0T0被拆成两个独立的被拆成两个独立的8 8位计数器位计数器TH0TH0和和TL0TL0。方式方式3 3下的下的T0T0方式方式 3电气工程学院电气工程学院Electrical Engineering Institute of NEDU2022年5月8日星期日 T0T0工作在方式工作在方式3 3时时,T1,T1可定为方式可定为方式0 0、方式、方式1 1和方式和方式2,2,用来作为串行口的波特率发生器用来作为串行口的波特率发生器, ,或不需要中断的或不需要中断的场合场合. .T1T1工作在方式工作在方式0 0电气工程学院电气工程学院Electrical

20、 Engineering Institute of NEDU2022年5月8日星期日T0T0工作在方式工作在方式3 3时时T1T1为方式为方式1 1的工作示意图的工作示意图T1T1工作方式工作方式1 1电气工程学院电气工程学院Electrical Engineering Institute of NEDU2022年5月8日星期日T0T0工作在方式工作在方式3 3时时T1T1为方式为方式2 2的工作示意图的工作示意图 T1 T1工作方式工作方式2 2电气工程学院电气工程学院Electrical Engineering Institute of NEDU2022年5月8日星期日T1T1的控制字的控

21、制字M1M0=11M1M0=11时时,T1,T1停止计数停止计数 注意注意: :在在T0T0为方式为方式3 3时时,T1,T1运行的控制条件只有运行的控制条件只有2 2个个, ,即即C/TC/T和和M1,M0M1,M0。T1T1工作方式工作方式3 3电气工程学院电气工程学院Electrical Engineering Institute of NEDU2022年5月8日星期日6.3 6.3 定时器定时器/ /计数器对输入信号的要求计数器对输入信号的要求当当T0或或T1被选定为定时工作模式时被选定为定时工作模式时, 定时器定时器/计数器的计数器的输入脉冲的周期与机器周期一样输入脉冲的周期与机器周

22、期一样,为时钟振荡频率的为时钟振荡频率的1/12。若。若 f振荡振荡=12MHz,则计数速率为则计数速率为1MHz。当当T0或或T1用作计数器时用作计数器时,计数脉冲来自相应的外部输计数脉冲来自相应的外部输入引脚入引脚.一次负跳变要花一次负跳变要花2个机器周期个机器周期,即即24个振荡周期个振荡周期,因此外部输入的计数脉冲的最高频率为系统振荡频率因此外部输入的计数脉冲的最高频率为系统振荡频率的的1/24.如如:f振荡振荡=12MHz,则可输入的最高频率为则可输入的最高频率为500KHz。 注注:外部输入信号脉冲宽度至少保持外部输入信号脉冲宽度至少保持1个机器周期个机器周期.返回本章首页电气工程

23、学院电气工程学院Electrical Engineering Institute of NEDU2022年5月8日星期日6.4 6.4 定时定时/ /计数器及中断系统综合应用计数器及中断系统综合应用【例【例6.1】设设MCS-51单片机系统时钟频率单片机系统时钟频率CLK为为6MHZ,要在要在P1.0引脚上输出引脚上输出1个周期为个周期为1毫秒的方毫秒的方波,占空比为波,占空比为50%的方波信号的方波信号.如下图如下图: P1.01ms1msT=2ms电气工程学院电气工程学院Electrical Engineering Institute of NEDU2022年5月8日星期日解解:(1)计算

24、初值计算初值: 机器周期机器周期=2s=2*10-6s (216-X)*2*10-6=1*10-3, 即即(216-X)=500,X=65036 X=FE0CH=1111111000001100B 则则TH0=0FEH,TL0=0CH电气工程学院电气工程学院Electrical Engineering Institute of NEDU2022年5月8日星期日(2)初始化程序初始化程序: 对定时器初始化和中断初始化对定时器初始化和中断初始化 即对即对IP,IE,TCON,TMOD的相应位设置的相应位设置,并将计并将计 数初值装入定时器数初值装入定时器.如如: TMOD=01H, 定时方式定时方

25、式1 IP=00H,IE=92H,TCON=10H即即ET0=1,EA=1, TR0=1电气工程学院电气工程学院Electrical Engineering Institute of NEDU2022年5月8日星期日 ORG 0000H RESET : AJMP MAIN ORG 000BH AJMP IT0P ORG 0100H MAIN : MOV SP , #60H MOV TMOD,#01H方法一:中断方式方法一:中断方式电气工程学院电气工程学院Electrical Engineering Institute of NEDU2022年5月8日星期日MOV TL0 , #0CH MOV

26、TH0 , #0FEH SETB TR0 SETB ET0 SETB EAAJMP HEREIT0P : MOV TL0 , #0CH MOV TH0 , #0FEH CPL P1.0 RETI 电气工程学院电气工程学院Electrical Engineering Institute of NEDU2022年5月8日星期日 ORG 0000H MOV TMOD,#01H LOOP: MOV TH0,#0FEH MOV TL0,#0CH SETBTR0LOOP1: JNB TF0,LOOP1 CLR TR0 CPL P1.0 SJMP LOOP方法二:软件查询方法二:软件查询;设定工作方式;设定

27、工作方式 ;设定时器初值;设定时器初值 ;启动定时器;启动定时器;软件查看到时;软件查看到时;停止计时;停止计时;将;将P1.0位取反位取反;返回;返回 LOOP电气工程学院电气工程学院Electrical Engineering Institute of NEDU2022年5月8日星期日 【例【例6.2】设设MCS-51单片机系统时钟频率单片机系统时钟频率CLK为为6MHZ,请编出利用定时请编出利用定时/计数器计数器T0在在P1.0引脚上产生周期为引脚上产生周期为2秒,占空比为秒,占空比为50%的方波信号的程序的方波信号的程序(1)主程序)主程序任务:任务: 1)T0工作方式的设定:工作方式

28、的设定: 选择方式选择方式1(16位方式)(最大定时位方式)(最大定时131ms) 2)定时常数的设定:定时常数的设定: TC=216-100ms/2s =15536=3CB0H 每隔每隔100ms中断一次中断一次,中断中断10次为次为1s电气工程学院电气工程学院Electrical Engineering Institute of NEDU2022年5月8日星期日即:即:TH0应装应装3CH,TL0应装应装B0H。3)中断管理:中断管理: 允许允许T0中断,开放总中断中断,开放总中断 即:即:IE应装应装10000010B4)启动定时器启动定时器T0: SETBTR05)设置软件计数器初值:

29、(如使用设置软件计数器初值:(如使用R7) 即即R7应装应装0AH6)动态停机:动态停机:SJMP $电气工程学院电气工程学院Electrical Engineering Institute of NEDU2022年5月8日星期日MAIN: MOV TMOD,#01H ;设定设定T0为方式为方式1MOV TH0 ,#3CH ;装入定时常数高装入定时常数高8位位MOV TL0 ,#0B0H ;装入定时常数低装入定时常数低8位位MOV IE ,#82H ;开放开放T0中断中断SETB TR0 ;启动启动T0MOV R7 ,#0AH ;设置软件计数器设置软件计数器SJMP $主程序主程序电气工程学院

30、电气工程学院Electrical Engineering Institute of NEDU2022年5月8日星期日任务:任务:1 1)恢复恢复T0T0常数;常数;2 2)软件计数器减软件计数器减1 1; 3 3)判断软件计数器是否为判断软件计数器是否为0 0。为。为0 0时,改变时,改变P1.0P1.0状态,并恢复软件计数器初值;不为状态,并恢复软件计数器初值;不为0 0时中断时中断返回。返回。(2 2)中断服务程序)中断服务程序电气工程学院电气工程学院Electrical Engineering Institute of NEDU2022年5月8日星期日TOINT:MOV TL0,#0B0

31、H ;恢复定时常数恢复定时常数MOV TH0,#3CHDJNZ R7, NEXTCPL P1.0 MOV R7,#0AHNEXT:RETI中断服务程序中断服务程序电气工程学院电气工程学院Electrical Engineering Institute of NEDU2022年5月8日星期日ORG 0000H MOV TH0,#3CH AJMP MAIN MOV TL0,#0B0HORG 000BH MOV IE,#82H AJMP TOINT SETB TR0ORG 0030H MOVR7,#0AH MAIN:MOV TMOD,#01H完整程序完整程序电气工程学院电气工程学院Electrica

32、l Engineering Institute of NEDU2022年5月8日星期日 SJMP$TOINT: MOV TL0,#0B0H MOV TH0,#3CH DJNZ R7,NEXT CPL P1.0 MOV R7,#0AHNEXT: RETI END电气工程学院电气工程学院Electrical Engineering Institute of NEDU2022年5月8日星期日 【例【例6.3】把把T0(P3.4)作为外部中断请求输入线)作为外部中断请求输入线即即T0引脚发生负跳变时,向引脚发生负跳变时,向CPU请求中断,当在请求中断,当在T0产生一次负跳变后,使产生一次负跳变后,使P

33、1.0产生周期为产生周期为1ms的的方波。方波。 方式方式2 2的应用的应用 思路:思路:T0定义方式定义方式1计数,即计数输入端计数,即计数输入端T0发生发生一次负跳变,计数器加一次负跳变,计数器加1即产生溢出标志,向即产生溢出标志,向CPU发中断;发中断; 定时器定时器T1以方式以方式2产生产生0.5ms定时。定时。 电气工程学院电气工程学院Electrical Engineering Institute of NEDU2022年5月8日星期日0.5ms0.5msT=1sT0(P3.4)P1.0T1T1为方式为方式2 2定时定时T0为方式为方式1计数计数电气工程学院电气工程学院Electr

34、ical Engineering Institute of NEDU2022年5月8日星期日T0的计数初值的计数初值: TH0=0FFH,TL0=0FFHT1的定时初值的定时初值: (28-X)*2*10-6=5*10-4 ,X=06H电气工程学院电气工程学院Electrical Engineering Institute of NEDU2022年5月8日星期日 ORG 0000HRESET: AJMP MAIN ;复位入口转主程序;复位入口转主程序 ORG 000BH LJMP IT0P ;转;转T0中断服务程序中断服务程序 ORG 001BH LJMP IT1P ;转;转T1中断服务程序中

35、断服务程序 方法一:(中断方式)方法一:(中断方式)电气工程学院电气工程学院Electrical Engineering Institute of NEDU2022年5月8日星期日 ORG 0100HMAIN: MOV SP, #60H MOV TMOD, #26H MOV TL0 , #0FFH ;T0置初值置初值 MOV TH0 , #0FFH SETB TR0 ;启动;启动T0 SETB ET0 ;允许;允许T0中断中断 MOV TL1,#06H ;T1置初值置初值 MOV TH1,#06H CLR F0 ;PSW中为用户做标志用中为用户做标志用 SETB EA ;CPU开放中断开放中断

36、 电气工程学院电气工程学院Electrical Engineering Institute of NEDU2022年5月8日星期日LOOP: JNB F0,LOOPT0产生中断了吗产生中断了吗,产生过产生过,则则F0=1 SETB TR1 ;启动;启动T1 SETB ET1 ;允许;允许T1中断中断HERE: AJMP HERE 电气工程学院电气工程学院Electrical Engineering Institute of NEDU2022年5月8日星期日IT0P: CLR TR0 ;停止;停止T0计数计数 SETB F0 ;建立产生中断标志;建立产生中断标志 RETIIT1P: CPL P1

37、.0 ;P1.0位取反位取反 RETI电气工程学院电气工程学院Electrical Engineering Institute of NEDU2022年5月8日星期日【例【例6.46.4】用定时器用定时器T1T1的方式的方式2 2对外部计数对外部计数, ,要求每计要求每计满满100100个数个数, ,将将P1.0P1.0引脚信号求反引脚信号求反. . 解解:P3.5:P3.5引脚输入外部信号引脚输入外部信号, ,每发生每发生1 1次负跳变计数次负跳变计数器加器加1,1,每输入每输入100100个脉冲个脉冲, ,计数器溢出中断计数器溢出中断, ,将将P1.0P1.0引脚求反引脚求反. . TMO

38、D=60H TMOD=60H 注意注意: :此处此处T0T0不能为方式不能为方式3,3,其它皆可。其它皆可。 X=2 X=28 8-100=156=9CH-100=156=9CH方式方式2 2应用应用计数模式计数模式电气工程学院电气工程学院Electrical Engineering Institute of NEDU2022年5月8日星期日程序清单程序清单: ORG 0000H LJMP MAIN ORG 001BH CPL P1.0 RETI ORG 0100HMAIN: MOV TMOD,#60H MOV TL1,#9CH MOV TH1,#9CH SETB TR1SETB ET1SET

39、B EAHERE: AJMPHERE电气工程学院电气工程学院Electrical Engineering Institute of NEDU2022年5月8日星期日 【例【例6.5A】T0方式方式3,分别产生,分别产生200us和和400us的定时的定时并使并使P1.0和和P1.1分别产生分别产生400us和和800us的方法的方法, fosc=6MHZ 解解: TL0用于定时用于定时200us,TH0用于定时用于定时400us (28-X)*2*10-6=200*10-6, X=156 即即X=9CH (28-X)*2*10-6=400*10-6, X=56 即即X=38H 方式方式3 3的

40、应用的应用电气工程学院电气工程学院Electrical Engineering Institute of NEDU2022年5月8日星期日 ORG 0000H START: AJMP MAIN ORG 000BH AJMP P1TO ORG 001BH AJMP PIT1 电气工程学院电气工程学院Electrical Engineering Institute of NEDU2022年5月8日星期日MAIN : MOV SP , #60H MOV TMOD , #03H MOV TL0 , #9CH MOV TH0 , #38H MOV TCON , #50H MOV IE , #8AHHER

41、E : AJMP HEREPIT0 : MOV TL0 , #9CH CPL P1.0 RETIPIT1: MOV TH0,#38H CPL P1.1 RETI 电气工程学院电气工程学院Electrical Engineering Institute of NEDU2022年5月8日星期日【例【例6.5B】假设某假设某MCS-51应用系统的应用系统的2个外部中断个外部中断源已被占用源已被占用,设置定时器设置定时器T1工作在方式工作在方式2,作波特率作波特率发生器用发生器用.现要求增加现要求增加1个外部中断源个外部中断源,并控制并控制P1.0引引脚输出脚输出1个个5KHz的方波的方波. fosc

42、=6MHZ.T0(P3.4)TL0为方式为方式3计数计数100s100sTH0为方式为方式3定时定时P1.0电气工程学院电气工程学院Electrical Engineering Institute of NEDU2022年5月8日星期日(1)初值计算初值计算: TL0=0FFH (28-X)2*10-8=110-4 ,X=156=9CH即即TH0=9CH ORG 0000H LJMP MAIN ORG 000BH LJMP TL0INT 电气工程学院电气工程学院Electrical Engineering Institute of NEDU2022年5月8日星期日 ORG 001BH LJMP

43、 TH0INT ORG0100HMAIN : MOV TMOD , #27H ; 00100111 MOV TL0 , #0FFH MOV TH0 , #9CH 电气工程学院电气工程学院Electrical Engineering Institute of NEDU2022年5月8日星期日 MOV TL1,#data1 ;data据波特率常数定据波特率常数定 MOV TH1,#data1 MOV TCON , #55H ;边沿触发;边沿触发,启动定时启动定时 MOV IE , #9FH ;中断允许;中断允许 TL0INT:MOV TL0, #0FFH RETITH0INT: MOVTH0,#9

44、CH CPL P1.0 RETI电气工程学院电气工程学院Electrical Engineering Institute of NEDU2022年5月8日星期日门控位门控位 GATEGATE的应用的应用【例【例6.6】门控门控GATE1使定时使定时/计数器计数器T1启动计数受启动计数受INT1的控制。当的控制。当GATE1为为1,TR为为1时,只有时,只有INT1引脚输入高电平,引脚输入高电平,T1才被允许计数,故可测才被允许计数,故可测引脚引脚P3.3上正脉冲宽度(机器周期数)。上正脉冲宽度(机器周期数)。 解解: 门控位为门控位为1,定时器启动计数受外部中断引脚,定时器启动计数受外部中断引

45、脚输入电平的影响,可测外部输入脉冲宽度。输入电平的影响,可测外部输入脉冲宽度。 被测脉冲输入被测脉冲输入P3.3 (INT1 ) , T1为定时方式。为定时方式。电气工程学院电气工程学院Electrical Engineering Institute of NEDU2022年5月8日星期日电气工程学院电气工程学院Electrical Engineering Institute of NEDU2022年5月8日星期日 ORG 0000H RESET: AJMP MAIN ORG0100HMAIN : MOV TMOD , #90H; 门控定时门控定时,T1为方式为方式1 MOV SP , #60

46、H MOV TL1 , #00H MOV TH1 , #00H;定时器初值定时器初值LOOP1 : JB P3.3 LOOP1 ; 等待等待P3.3到低电平到低电平 SETB TR1 ;将;将TR1置置1LOOP2 : JNB P3.3 LOOP2; 等待等待P3.3为为1LOOP3 : JB P3.3 LOOP3;定时器已经开始定时;定时器已经开始定时电气工程学院电气工程学院Electrical Engineering Institute of NEDU2022年5月8日星期日 CLR TR1;定时结束;定时结束LOOP3: SJMPLOOP3 读定时器中的时间值读定时器中的时间值电气工程学院电气工程学院Electrical Engineering Institute of NEDU2022年5月8日星期日 【例【例6.7】 P3.4 输入低频负脉冲,要求输入低频负脉冲,要求P3.4每次发生每次发生负跳变时,负跳变时,P1.0输出一个输出一个400us的同步脉冲。的同步脉冲。电气工程学院电气工程学院Electrical Engineering Institute of NEDU2022年5月8日星期日START : MOV TMOD , #06H ; T0为方式为方式2外部计数外部计数 MOV TH0 , #0FFH MOV TL0 , #0FFH S

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论