欢迎来到天天文库
浏览记录
ID:57069292
大小:148.00 KB
页数:15页
时间:2020-07-31
《单片机原理及应用 第11讲 定时中断.ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、单片机的定时器/定时输出、定时检测、定时扫描需要有定时/1)软件定时:无硬件电路,但降低了CPU的利用率2)硬件电路:有硬件电路,但使用上不方便3)可编程的定时器51系列单片机内部有两个16位可编程的定时器/计数器T0、T1。T0、T1都有2种工作模式:(1)计数器工作模式(2)定时器工作模式每种工作模式有若干种工作方式,这些都是由TMOD寄存器控制的T1控制T0控制M0M1C/TGATEM0M1C/TGATED0D1D2D3D4D5D6D7GATE—门控位C/T—计数/定时选择M1M0—工作方式选择1、模式控制寄存器TMODTMOD用于控制T0、T
2、1的工作方式和工作模式。其中低4位用于控制T0,高4位用于控制T1。其格式如下:一、与定时/计数有关的寄存器计数脉冲输入当M1M0为00时定时/计数器工作在方式0TF0T0TR0GATEINT01≥1&C/T=1振荡器1/12C/T=0TL0TH08位低5位13位计数器定时器计数器其定时时间为:t=(213-T0初值)×机器周期当=0时,控制开关接通内部振荡器,T0对机器周期进行计数,当=1时,控制开关接通外部输入信号,当外部信号电平从“1”到“0”跳变时,加1计数器加1,处于计数工作方式。当M1M0为01时定时/计数器工作在方式1其定时时间为:t=
3、(216-T0初值)×机器周期振荡器1/12TL0TH0TF01≥1&T0TR0GATEINT0C/T=0C/T=18位8位16位计数器当M1M0为10时定时/计数器工作在方式2其定时时间为:t=(28-T0初值)×机器周期TF0振荡器1/121≥1&T0TR0GATEINT0C/T=0C/T=1TL0TH0当M1M0为11时定时/计数器工作在方式3仅T0可以工作在方式3—此时T0分成2个独立的计数器—TL0和TH0,前者用原来T0的控制信号(TR0、TF0、INT0),后者用原来T1的控制信号(TR1、TF1、INT1)。T1没有工作方式3,如果设
4、置成方式3的话,T1就会自动关闭。练习:设8051单片机的晶振频率fOSC=6MHz,分别讨论T0各种工作方式下最长定时时间。解:1.由fOSC=6MHz可知,机器周期:2us;2.由于是加1计数,所以最长定时应是计数初值最小时(即为0时)的定时时间。所以此时有:方式0:(213–0)×2us=214us=16384us=16.384ms方式1:(216–0)×2us=217us=131.072ms方式2、3(28–0)×2us=29us=0.512ms注意:以上是当fOSC=6MHz,即机器周期为2us时各种方式下的定时时间,若fOSC=12MHz
5、,则最长定时时间将缩短一半。2、控制寄存器TCOND7D6D5D4D3D2D1D0TF1TR1TF0TR0IE1IT1IE0IT0中断请求标志触发方式选择启动定时/计数器0低电平1下降沿0停止1启动3、需要用到中断时,T0、T1除了使用TCON、TMOD寄存器外还会用到IE寄存器D7D6D5D4D3D2D1D0EAESET1EX1ET0EX0二、单片机定时器/计数器的应用②计算计数器的计数初值:编程时将计数初值送THi、TLi;可编程器件在使用前需要进行初始化:①确定TMOD控制字:编程时将控制字送TMOD;③开中断(如果使用中断方式):编程时置位E
6、A、ETi④TRi位置位控制定时器的启动。例1:设晶振频率fOSC=6MHz,使用定时器1以方式1产生周期为500μs的方波脉冲,并由P1.0输出。试以中断方式实现。8051P1.0500μs
此文档下载收益归作者所有