#include "reg52.h"
typedef unsigned int u16;
typedef unsigned char u8;
sbit LED1=P2^0;
sbit LED2=P2^1;
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;
TH0=0xFC;
TL0=0x66;
EA=1;
ET0=1;
TR0=1;
}
void time1_init(void)
{
TMOD|=0X10;
TH1=0xfe;
TL1=0x33;
EA=1;
ET1=1;
TR1=1;
}
void main()
{
time0_init();
time1_init();
while(1)
{
}
}
void time0() interrupt 1
{
static u16 i=0;
i++;
TH0=0xFC;
TL0=0x66;
if(i==1000)
{
i=0;
LED1=!LED1;
}
}
void time1() interrupt 3
{
static u16 i=0;
i++;
TH1=0xfe;
TL1=0x33;
if(i==1000)
{
i=0;
LED2=!LED2;
}
}
51单片机定时器为什么不能定时2s,定时2s灯就一直不亮