概述
#include <REGX52.H>
typedef unsigned char u8;
typedef unsigned int u16;
sbit LED1=P2^0;
void delay_10us(u16 ten_us)
{
while(ten_us--);
}
void delay_ms(u16 ms)
{
u16 i,j;
for(i=ms;i>0;i--)
for(j=110;j>0;j--);
}
void time0_init(void)
{
TMOD|=0X01;//选择为定时器0模式,工作方式为1
TH0=0XFC; //给定时器赋初始值,定时1ms
TL0=0X18;
ET0=1; //打开定时器0中断允许
EA=1; //打开总中断
TR0=1; //打开定时器
}
void time1_init(void)
{
TMOD|=0X01;//选择为定时器0模式,工作方式为1
TH1=0XFC; //给定时器赋初始值,定时1ms
TL1=0X18;
ET1=1; //打开定时器0中断允许
EA=1; //打开总中断
TR1=1; //打开定时器
}
void main()
{
time0_init();
while(1)
{
}
}
void time0() interrupt 1
{
static u16 i=0;
TH0=0XFC;
TL0=0X18;
i++;
if(i==1000)
{
i=0;
LED1=!LED1;
}
}
void time1() interrupt 3
{
static u16 i=0;
TH1=0XFC;
TL1=0X18;
i++;
if(i==1000)
{
i=0;
LED1=!LED1;
}
}
最后
以上就是可靠长颈鹿为你收集整理的定时器中断程序的全部内容,希望文章能够帮你解决定时器中断程序所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复