void InitISR()
{
EA =1; //允许CPU中断
ET0 = 1; //定时器0中断打开
TMOD =TMOD|0x1; //设定时器0为方式1
TH0= 0xf8;
TL0= 0xcc; //设定时值为20 000 us(1 ms)(22.1184)
TR0 = 1; //开始定时
}
void Time0(void) interrupt 1 using 1
{
TH0=0xf8; //1 ms断点 (1)
TL0=0xcc; //设定时值
STime.MScond++;
if(STime.MScond>5) STime.MScond_5=1;
if(STime.MScond>40) STime.MScond_40=1;
if(STime.MScond>50) STime.MScond_50=1;
if(STime.MScond>100)STime.MScond_100=1;
}
//主函数(程序入口)
int main(void)
{
InitIO();
InitUart(); //Init UART, use to show ADC result
InitISR();
InitADC(); //Init ADC sfr
for (;;)
{
Show_LedMumeral();//显示
if(STime.MScond_5)
{
STime.MScond_5=0;
//下列添加用户程序
}
if(STime.MScond_40)
{
STime.MScond_40=0;
//下列添加用户程序
}
if(STime.MScond_50)
{
STime.MScond_50=0;
//下列添加用户程序
}
if(STime.MScond_100)
{
STime.MScond_100=0;
//下列添加用户程序
}
}
|