定时器/计数器 的使用(自然中断优先级)
时间:12-01
来源:互联网
点击:
定时器/计数器的使用可以分成两大步骤与代码
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使中断计数从新开始
}
}
}
定时器计数器中断优先 相关文章:
- Windows CE 进程、线程和内存管理(11-09)
- RedHatLinux新手入门教程(5)(11-12)
- uClinux介绍(11-09)
- openwebmailV1.60安装教学(11-12)
- Linux嵌入式系统开发平台选型探讨(11-09)
- Windows CE 进程、线程和内存管理(二)(11-09)