欢迎来到天天文库
浏览记录
ID:27332827
大小:262.50 KB
页数:16页
时间:2018-12-01
《定时计数器与中断系统》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第五章定时/计数器与中断系统5-1定时/计数器结构特点及控制5-2中断系统结构及管理5-3定时/计数器与中断系统综合应用5-1定时/计数器结构特点及控制K1K2可预置初值计数器中断请求功能选择启动控制内部时钟脉冲(定时)外部输入脉冲(计数)溢出信号计数脉冲计数初值5-1-1定时/计数器结构定时器/计数器简称定时器,8031单片机有2个16位的定时器/计数器:定时器0(T0)和定时器1(T1)。作定时器时,对8031片内振荡器输出经12分频后的脉冲计数,即每个机器周期使T0或T1的寄存器自动加1直至计满溢出。定时的分辨率是时钟振荡频率的1/12
2、。作计数器时,通过引脚T0(P3.4)和T1(P3.5)对外部脉冲信号计数,当输入脉冲信号从1到0的负跳变时,计数器就自动加1。计数的最高频率一般为振荡频率的1/24。工作过程如下:5-1-2定时器/计数器工作方式定时器/计数器有4种工作方式,由方式选择位M1、M0设定1.方式013位定时/计数器。THx8位和TLx低5位组成13位加1计数器t=(213-T1初值)×振荡周期×12计数外部脉冲个数:1~8192(213)工作结构如图。2.方式116位定时/计数器。THx8位和TLx低8位组成16位加1计数器t=(216-T1初值)×振荡周期×
3、12计数外部脉冲个数:1~65536(216)工作结构如图。3.方式2自动恢复初值8位定时/计数器。TLx为8位加1计数器,THx为8位初值暂存器。用于需要重复定时和计数的场合。最大计数值:256(28)最大定时时间(T=1s):256s工作结构如图。4.方式3T0分成2个8位定时器:TL0定时/计数器和TH0定时器TL0占用T0控制位:C/T,TR0,GATE;TH0占用T1控制位:TR1。T1不能使用方式3工作。工作结构如图。1.TMOD定时器工作方式寄存器(89H)1)功能选择位C/T:=0,定时功能,计数内部机器周期脉冲;=1,计
4、数功能,计数引脚T0(T1)输入的负脉冲。2)方式选择位M1、M0:4种工作方式:13/16/8位确定定时器工作方式指令:MOVTMOD,#方式字3)门控方式选择位GATE:=0,非门控方式(内部启动):TRx=1,启动定时器工作;TRx=0,停止定时器工作。=1,门控方式(外部启动):TRx=1且引脚INTx=1才启动。5-1-3定时器控制寄存器2个控制寄存器TMOD和TCON与定时器有关,分别设置各个定时器的操作模式和控制功能。T1T02个可独立控制的16位定时器/计数器:T0、T12.TCON定时器控制寄存器(88H)TF1,TR1用于
5、定时器T1;TF0,TR0用于定时器T0。TFx:定时器Tx溢出标志,当定时器Tx溢出时由硬件自动使中断触发器TFx置1,并向CPU申请中断。当CPU响应进入中断服务程序后,TFx又被硬件自动清零。TFx也可用软件清零。TRx:运行控制位。由软件置1或清零来启动或关闭定时器Tx。IE1,IT1用于外部中断1;TE0,IT0用于外部中断0。IT:下跳沿/低电平引起外部中断请求的选择位。IT=1,由下跳沿引起;IT=0,由低电平引起。IE:外部中断的中断申请标志。IE=0,无外部中断申请;IE=1,有外部中断请求。CPU响应中断后,IE硬件清零。
6、5-1-4计算时间常数X(计算初值)1.计数器初值的计算:计数器模式下必须给计数器设置计数器初值,这个计数器初值是送到TH(TH0/TH1)和TL(TL0/TL1)中的。计数器是在计数初值基础上以加法计数的,并能在计数器从全“1”变为全“0”时自动产生定时溢出中断请求。因此,可以把计数器计满为零所需要的计数值设定为C,计数初值设定为TC,由此便可得到如下的计算公式:TC=M-C式中,M为计数器模值。在方式0时M为213;在方式1时M为216;在方式2和方式3时M为28。2.定时器初值的计算:在定时器模式下,计数器由单片机主脉冲经12分频后计数
7、。因此,定时器定时时间T的计算公式为:T=(M-TC)T计数上式也可写成:TC=M-T/T计数式中,M为模值;T计数是单片机振荡周期TCLK的12倍;TC为定时器的定时初值。若设TC=0,则定时器定时时间为最大。由于M的值和定时器工作方式有关,因此不同工作方式下定时器的最大定时时间也不一样。例:若单片机时钟频率为12MHZ,计算定时2ms所需的定时器初值。解:由于定时器工作在方式2和方式3下时的最大定时时间只有0.256ms,因此要想获得2ms的定时时间定时器必须工作在方式0或方式1。T计数=12/12=1μs,则需计数脉冲2000个(7D0
8、H)若采用方式0,则定时器的初值为:TC=213-2ms/1=6192=1830H=1100000110000B即:TH0应装C1H;TL0应装10H(TL1只用低
此文档下载收益归作者所有