您的位置 首页 电路

定时器/计数器 的运用(天然中止优先级)

定时器计数器的使用可以分成两大步骤与代码1、初始化定时器2、编写中断子程序(也叫中断函数通俗点就是调用一个函数)初始化定时器1)

守时器/计数器的运用能够分红两大过程与代码

1、初始化守时器
2、编写中止子程序(也叫中止函数浅显点便是调用一个函数)

初始化守时器
1)设置守时器/计数器的形式(在前面有)
2) 敞开守时器中止(守时器/计数器 0或许1或许其他)
3) 启用守时器/计数器(守时器/计数器 0或许1或许其他)
4)翻开总中止
5)给守时器赋值
注:以上过程能够打乱可是不能够少。(假如有的条件在其他函数里边初始化了这儿能够省掉)

编写中止子程序

void tim0_isr (void) interrupt 1
1)void tim0_isr(void) (这个便是中止后需求履行的函数)
2) interrupt 1 (中止号前面有具体的中止号阐明)

代 码
#include
sbit LED=P0^7;//界说点亮的LED管脚
unsigned int i=0;

void tim0_isr (void) interrupt 1 //这个是中止履行的函数
{
i++; //每中止一次i+1
}

void csh_dsq_0()//初始化守时器/计数器0
{
TMOD = 0x02;//运用形式3(主动重装形式)
TH0=0x00;//守时器0的重装数据(这儿是给守时赋值)
TL0=0x00;//初始化(这儿是给守时赋值)
ET0=1;//敞开守时器0中止
TR0=1;//启用守时0
EA =1;//翻开总中止
}void main()
{
LED = 0;
csh_dsq_0(); //调用中止初始化
while(1)
{
if(i==5000)//中止5000次LED亮或灭一次
{
LED=~LED;//LED亮或灭
i=0;//清零i使中止计数重新开端
}
}
}

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/fangan/dianlu/317209.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部