標題:
16個LED的滅著移動(c語言定時器T0)
[打印本頁]
作者:
daniu
時間:
2014-12-27 19:08
標題:
16個LED的滅著移動(c語言定時器T0)
;張培 QQ:
;本程序實現(xiàn)16個LED的滅著移動 */
#include <reg51.h>
#define uchar unsigned char
#define unit unsigned int
bit BT0;//定義20MS時間標志位
main()
{
unit a,b,timecount;
TMOD=0X01;//T0工作方式1
TH0=0X0B1;
TL0=0X0E0;
TR0=1;//開啟T0
EA=1;//開啟總中斷
ET0=1;//開啟T0中斷
timecount=25;
a=0xfe;
while (1)
{
P2=a;
if (BT0==1)
{ BT0=0;
if (timecount==0)//如果時間到0.5S往下執(zhí)行,否則timecount--
{
timecount=25;
a=a<<1;
a=a|0x01;
P2=a;
if (P2==0Xff)//如果P2=FF把A的高八位給B
{ b=a;
b=b/256;
P3=b;
if (P3==0xff)//如果P3=FF,把A賦FE返回
{a=0xfe;}
}
}
else
{timecount--;}
}
}
}
void T0SER(void) interrupt 1 using 1//T0重新賦初植
{
TH0=0X0B1;
TL0=0X0E0;
BT0=1;
}
復制代碼
歡迎光臨 (http://www.torrancerestoration.com/bbs/)
Powered by Discuz! X3.1