因为你使用的数据类型与宏定义数据类型不一致,char是8位,int是16位. #define u8 unsigned int #define u16 unsigned char void Time0() interrupt 1 { static u16 a; TH0=0xFC; TL0=0x18; a++; if(a == 1000) //超过255 { a=0; second ++; } } |
void main() { second=1; // Time0Init(); 不用调用 |
要开中断的 |
数码管不走路![]() ![]() ![]() |