定时器的应用,查询方式。让8个LED灯,左右各4个来回亮
代码:
/********************** 查询方式是主程序不断的查询是否中断,而不需要准备子程序 ***********************/ #include<reg51.h> #define LED P1 #define COUNT 50000 // 50000 * 1us = 0.05s 50000计数次 #define TH_M1 (65536-COUNT)%256 //MODE 1 余数赋值给高4位 #deefine TL_M2 (-COUNT)/ //MODE 1 商赋值给低4位 main() { int i; TMOD =0x01; //方式1 启动 T0中断 LED=0xf0; // 1111,0000 右边4个灯亮 共阳极 ) { ;i<;i++) //定时中断5次 { TH0 = TH_M1; //溢出后重新赋初值 TL0 = TH_M1; TR0 = ; //启动T0 ) // time flag 定时标志 TF==0说明溢出,等待溢出 TF0 = ; //清除TF0 ,关闭T0 } LED =~LED; //LED反相 } }