您现在的位置: 主页 > MCU > 单片机应用 > 8052 T2 用法详解 -
本文所属标签:
为本文创立个标签吧:

8052 T2 用法详解 -

来源: 网络用户发布,如有版权联系网管删除 2018-09-11 

[导读]1、要精确定时,必须使用定时器的自动装载方式。本实验使用T2定时器,让它工作在16bit自动 装载方式,这时,有另一个位置专门装着16位预装载值,当T2溢出时,预装载值立即被装入, 这就保证了精确定时。 2、T2定时器

1、要精确定时,必须使用定时器的自动装载方式。本实验使用T2定时器,让它工作在16bit自动
装载方式,这时,有另一个位置专门装着16位预装载值,当T2溢出时,预装载值立即被装入,
这就保证了精确定时。
2、T2定时器是一个16位定时器,最长的溢出时间也就几十毫秒,要定时1秒,就需要用一个变量
来保存溢出的次数,积累到了一定的次数后,才执行一次操作。这样就可以累加到1秒或者更
长的时间才做一次操作。
3、当T2定时器发生溢出中断时,需要用户自己清除溢出标记,而51的其他定时器是自动清除的。
4、T2定时器预装载值的计算:
设晶振为12MHz,每秒钟可以执行1000000(12000000/12)个机器周期。而T2每次溢出时最多
经过了65536个机器周期。我们应该尽量让T2定时器的溢出中断的次数最少,这样对主程序的干扰
也就最小。
选择每秒中断14次,每次溢出1000000/14=71428.57个机器周期,不为整数且超出65536个机器周期,有效。
选择每秒中断16次,每次溢出1000000/16=62500个机器周期,小于65536个机器周期,有效。
选择每秒中断20次,每次溢出1000000/20=50000个机器周期,小于65536个机器周期,有效。
通过上面的计算,我们可以发现,我们可以选择的方式有很多,但是最佳的是每秒中断16次,每次
溢出62500个机器周期,那么赋给T2定时器的初值应为65536-62500=3036,转换成十六进制值为
0x0BDC。
********************************************************************************************************/

本文引用地址: http://www.21ic.com/app/mcu/201809/784985.htm


/*********定时2中断服务子函数**************/
void Timer2_Server(void) interrupt 5
{
TF2=0;
deda++; //计数
if(deda<8){flag1=1;}else{flag1=0;}
if(deda==16){sec++;deda=0;}
if(sec==60){min++;sec=0;}
if(min==60){hor++;min=0;}
if(hor==24){hor=0;}

}




              查看评论 回复



嵌入式交流网主页 > MCU > 单片机应用 > 8052 T2 用法详解 -
 

"8052 T2 用法详解 -"的相关文章

网站地图

围观()