(精品)第六章 MCS-51单片机定时器及应用(修改).ppt
《(精品)第六章 MCS-51单片机定时器及应用(修改).ppt》由会员分享,可在线阅读,更多相关《(精品)第六章 MCS-51单片机定时器及应用(修改).ppt(36页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、定时器的控制定时器的控制定时器的工作方式定时器的工作方式定时器的应用定时器的应用定时器的结构和工作原理定时器的结构和工作原理一。定时器的结构一。定时器的结构 MCS-51内部集成了两个内部集成了两个16位的可编程定时器,位的可编程定时器,T1、T0。每个定时器为加每个定时器为加1计数器,由两个计数器,由两个8位寄存器组成,位寄存器组成,TH1、TL1,TH0、TL0。内部由两个特殊功能寄存器控制:内部由两个特殊功能寄存器控制:TMOD工作方式寄存器,用于确定工作方式、功能工作方式寄存器,用于确定工作方式、功能 TCON定时器控制寄存器,用于定时器启、停等定时器控制寄存器,用于定时器启、停等 第
2、一节第一节 定时器的结构及工作原理定时器的结构及工作原理P3.4P3.5T1T0CPU TCON TMOD TH1 TL1 TH0 TL0 2。对外部事件计数。对外部事件计数(计数方式)(计数方式)计数脉冲来源于外部,外部脉冲从计数脉冲来源于外部,外部脉冲从P3.4(T0端),或端),或P3.5(T1端)输入。当端)输入。当CPU检测到检测到T0或或T1引脚上的信号由引脚上的信号由1跳变为跳变为0时,计数器加时,计数器加1,即脉冲的下降沿加,即脉冲的下降沿加1。注意定时也是计数注意定时也是计数,计数器不断加,计数器不断加1,当计到满,当计到满FFFFH,再加再加1便溢出,计数器清便溢出,计数器
3、清0,将定时器溢出标志位置,将定时器溢出标志位置1,TF0=1或或TF1=1。向向CPU申请中断,申请中断,CPU响应中断,硬件自动清中断标响应中断,硬件自动清中断标志位志位TF0或或TF1。二。定时器的工作原理二。定时器的工作原理 返返 回回 1。对系统时钟计数。对系统时钟计数(定时方式)(定时方式)计数脉冲来源于内部(系统时钟),对时钟振荡器输出脉冲计数脉冲来源于内部(系统时钟),对时钟振荡器输出脉冲经经12分频后计数,即一个机器周期加一(一个机器周期分频后计数,即一个机器周期加一(一个机器周期=12个振个振荡周期)。如时钟为荡周期)。如时钟为12MHz,加加1即加即加1 s,实现实现定时
4、。定时。定时器的核心部分为一加定时器的核心部分为一加1计数器,可对系统时钟计数或对外计数器,可对系统时钟计数或对外部事件计数。部事件计数。第二节第二节 定时器的控制定时器的控制一。工作方式寄存器一。工作方式寄存器TMOD TMOD用来设置定时器的工作方式,字节地址为用来设置定时器的工作方式,字节地址为89H 低四位用于低四位用于T0,高四位用于高四位用于T11。M1 M0 为工作方式选择位为工作方式选择位 0 0 方式方式0 13位定时位定时/计数器计数器 0 1 方式方式1 16位定时位定时/计数器计数器 1 0 方式方式2 一个一个8位自动重装载定时位自动重装载定时/计数器计数器 1 1
5、方式方式3 T1不工作,不工作,T0分为两个分为两个8位定时器位定时器定时器定时器T1定时器定时器T0 GATE C/T M1 M0 GATE C/T M1 M0 D7 D6 D5 D4 D3 D2 D1 D0TMOD(89H)2。C/T 为定时为定时/计数选择位计数选择位 C/T=1(Count),),计数模式,定时器对外部事件计数计数模式,定时器对外部事件计数 C/T=0(Timing),),定时模式,定时器对系统时钟计数定时模式,定时器对系统时钟计数3。GATE 为门控位为门控位 用于控制定时器的启动(用于控制定时器的启动(RUN)GATE=0,通过程序对通过程序对TCON中的中的TR0
6、或或TR1置置1,启动,启动定时器运行,叫软件启动。定时器运行,叫软件启动。GATE=1,允许外部中断引脚允许外部中断引脚INTx启动定时器工作。在启动定时器工作。在TR0=1或或TR1=1的情况下,的情况下,INTx端输入一高电平,启动定时器端输入一高电平,启动定时器工作。叫外部信号启动定时器。工作。叫外部信号启动定时器。TMOD不能位寻址,复位时全为不能位寻址,复位时全为0。由软件初始化对。由软件初始化对TMOD写一个立即数完成设置。写一个立即数完成设置。二。控制寄存器二。控制寄存器TCON 低四位用于低四位用于外部中断外部中断,高四位用于定时器高四位用于定时器TF1 Timer Flow
7、ing 定时器定时器T1溢出中断请求标志位。溢出中断请求标志位。T1溢出溢出 时,硬件自动置位时,硬件自动置位TF1=1,向向CPU发请求中断,当发请求中断,当CPU 响应中断并执行中断程序响应中断并执行中断程序,硬件自动清,硬件自动清TF1=0。另外,另外,TF1可用于查询,可用于查询,TF1可软件置可软件置1或清或清0,实现软件中断,实现软件中断 TR1 Timer Run,定时器定时器T1启启/停控制位。软件置停控制位。软件置1(TR1=1)定时器开始工作,软件清定时器开始工作,软件清0(TR1=0),),定时器停止工作定时器停止工作TF0 T0的溢出标志位。的溢出标志位。TR0 软件启
8、软件启/停停T0 返返 回回定时器定时器Timer外部中断外部中断Interrupt TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0 D7 D6 D5 D4 D3 D2 D1 D0TCON(88H)TCON用来控制定时器的启停和外部中断,字节地址为用来控制定时器的启停和外部中断,字节地址为88H 第三节第三节 定时器的工作方式定时器的工作方式一。方式一。方式0(13位)位)TMOD的的 M1 M0=00,为为13位定时器,位定时器,TL0的高三位未用的高三位未用 TL0TH00407计数输入信号计数输入信号进位进位TF0 TF0中断中断TL0 TH05位位 8位位S2 振荡器振
9、荡器12T0引脚引脚S1C/T=0C/T=1P3.4“1”闭闭合合定时定时计数计数 1TR01GATEP3.2AINT0引脚引脚1。定时定时/计数控制计数控制 启动启动停止停止 C/T=0,定时模式,定时器计数脉冲来自振荡器经定时模式,定时器计数脉冲来自振荡器经12分频后的分频后的脉冲,通过计数达到定时的目的。其定时时间:脉冲,通过计数达到定时的目的。其定时时间:t=(213 T0初值)初值)计数周期计数周期 如系统时钟为如系统时钟为12MHz,则则 t=(213 T0初值)初值)1 s C/T=1,计数模式,计数脉冲来自外部计数模式,计数脉冲来自外部T0引脚引脚 P3.4 2。定时器的启定时
10、器的启/停控制停控制 GATE=0,或门输出恒为或门输出恒为1,与,与INT0引脚信号无关,只要给引脚信号无关,只要给TR0置置1,则与门输出为,则与门输出为1,S2闭合,闭合,T0启动;启动;TR0写写0,T0关闭关闭 GATE=1,当当TR0=1时,或门、与门全部打开,外部时,或门、与门全部打开,外部INT0信信号直接启号直接启/停停T0。高电平有效启动计数,低电平则停止计数。高电平有效启动计数,低电平则停止计数。这种方式可用来测量这种方式可用来测量INT0引脚上的脉冲宽度。引脚上的脉冲宽度。二。方式二。方式1(16位)位)TL0TH00707计数输入信号计数输入信号进位进位TF0t=(2
11、16 T0初值)初值)计数周期计数周期如系统时钟为如系统时钟为6MHz,则则 t=(216 T0初值)初值)2 s最大定时时间为:最大定时时间为:t=(216 0)2 s 131msTL0 TH08位位 8位位S2 1 振荡器振荡器12T0TR0S1 C/T=0C/T=11GATEINT0“1”闭合闭合定时时间定时时间:TMOD的的 M1 M0=01,为为16位定时器。与方式位定时器。与方式0类似,电路类似,电路一样,只是一样,只是TL0和和TH0都是都是8位,组成位,组成16位定时器。位定时器。三。方式三。方式2(8位)位)TL0作作8位加位加1计数器,计数器,TH0作初值寄存器。作初值寄存
12、器。软件编程给软件编程给TL0和和TH0赋相同的初值,赋相同的初值,TL0开始加计数,计开始加计数,计满溢出,置满溢出,置TF0=1,同时将同时将TH0中的初值送入中的初值送入TL0,使使TL0又重又重新开始计数,直到新开始计数,直到TR0=0才停止。才停止。TF0中断中断S2 振荡器振荡器12T0引脚引脚TR0S1C/T=0C/T=1P3.4“1”闭闭合合定时定时计数计数 TL0 TH0再装入再装入去串行口去串行口TMOD的的 M1 M0=10,为能自动重装初值的为能自动重装初值的8位定时器位定时器 TH0作为常数缓冲器,方式作为常数缓冲器,方式2常用作定时控制,还常将它用常用作定时控制,还
13、常将它用作串行口波特率发生器。作串行口波特率发生器。以上三种方式同样适用于以上三种方式同样适用于T1,用用TH1和和TL1组成,控制位为组成,控制位为TR1,TF1。四。方式四。方式3(8位)位)中断中断 TF0S2 T0引脚引脚TR0S1“1”闭闭合合 TL01/12fC/T=0C/T=1中断中断 TF1S2“1”闭闭合合 TH01/12fTR1TL0为为8位定时位定时/计数器,使用计数器,使用T0的全部控制位,用的全部控制位,用T0中断中断TH0只能用作只能用作8位定时器,不能计数位定时器,不能计数借用借用T1的的TR1启动启动TH0,TF1作作TH0的溢出标志位,占用的溢出标志位,占用T
14、1中断中断T1设置成方式设置成方式3,它不工作(相当于,它不工作(相当于TR1=0,关关T1)T0设为方式设为方式3,TH0、TL0为两个独立的为两个独立的8位定时器位定时器 T0设为方式设为方式3,T1还可设置为方式还可设置为方式02,但没有中断,但没有中断TF1位了,位了,也没有启动也没有启动TR1位。位。T1的启的启/停由设置为方式停由设置为方式02启动,设置为方式启动,设置为方式3停止。停止。通常在通常在T1用作串行口波特率发生器时(通常设置成方式用作串行口波特率发生器时(通常设置成方式2),),T0才设置为方式才设置为方式3,以增加一个,以增加一个8位定时器。位定时器。返返 回回 第
15、四节第四节 定时器的应用定时器的应用一。初始化一。初始化 1、确定工作方式,对、确定工作方式,对TMOD赋值赋值 2、定时器赋初值,写入、定时器赋初值,写入TH0、TL0或或TH1、TL1 3、开放中断,给、开放中断,给IE赋值,赋值,EA、ET0、ET1 4、启动定时器工作,给、启动定时器工作,给TR0、TR1置置1二。初值计算二。初值计算 1、计数方式时:、计数方式时:初值:初值:Z=2k计数值计数值 (K为位数,为位数,8、13、16)2、定时方式时:、定时方式时:初值计算:初值计算:(溢出值(溢出值2k初值)初值)周期周期=计数值计数值周期周期 计数值计数值周期周期=定时时间定时时间
16、一个机器周期一个机器周期=12/晶振频率晶振频率 晶振频率晶振频率=12MHz时,一个机器周期时,一个机器周期=12/12MHz=1 s 晶振频率晶振频率=6MHz时,一个机器周期时,一个机器周期=12/6MHz=2 s 常已知常已知定时时间、周期,定时时间、周期,注意要将其转换成计数值注意要将其转换成计数值溢出值溢出值2k初值初值定时计数值定时计数值溢出值:溢出值:28=256 213=8192 216=65536最大定时时间:最大定时时间:256 2 s=0.512ms;8192 2 s16.4ms;131ms例如:设定时例如:设定时50ms,系统时钟系统时钟f=6MHz,求定时器的初值求
17、定时器的初值 用用T0定时方式定时方式1可达到可达到50ms的定时,定时器的初值:的定时,定时器的初值:Z=131ms 50ms=81ms(时间)时间)一个机器周期为一个机器周期为2 s,81ms转换转换成二进制计数值为成二进制计数值为40500,变成变成16进制数为进制数为9E34H,9EH给给TH0,34H给给TL0。三。定时器应用编程举例三。定时器应用编程举例 2、定时、定时50ms要用要用16位定时器位定时器 T0定时,方式定时,方式1,采用定时器溢出中断,采用定时器溢出中断,50ms到中断一次到中断一次 100ms50ms1。利用定时器产生实时时钟信号(。利用定时器产生实时时钟信号(
18、1s,1h)例例1:用定时器:用定时器T0定时定时50ms,从从P1.1引脚输出周期为引脚输出周期为100ms的方波,晶振频率为的方波,晶振频率为6MHz。解:解:1、每当定时、每当定时50ms到,到,P1.1反相反相 3、定时器、定时器T0初值计数初值计数 Z=(溢出值溢出值216计数值)计数值)=(216 50 ms1000/2 s)=6553625000 =40536 初值的数字量为初值的数字量为40536,变成,变成16进制数为进制数为9E58H 开始开始设工作方式设工作方式TMODTL0、TH0赋初值赋初值开放开放T0中断,中断,IE赋值赋值等中断等中断 P1.1 0 输出低电平输出
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 精品第六章 MCS-51单片机定时器及应用修改 精品 第六 MCS 51 单片机 定时器 应用 修改
限制150内