控制8只LED每0.5秒闪亮一次,利用定时器实现0.5S定时 #include<reg52.h> #define uchar unsigned char #define uint unsigned int uint i; void main() { i=0; EA=1; //打开总中断 TMOD=0x01; //使用定时器T0的工作方式1 ET0=1; //定时器T0中断允许 TH0=(65536-50000)/256; //给定时器T0的高8位赋值 TL0=(65536-50000)%256; //给定时器T0的低8位赋值 TR0=1; //启动定时器T0 P0=0xff; while(1); //无限循环等待中断 } void Time0(void) interrupt 1 //"interrupt"声明函数为中断服务函数,1表示定时器T0的中断编号 {
i++; if(i==10) { P0=~P0; i=0; } TH0=(65536-50000)/256; TL0=(65536-50000)%256;
}
|