|
#include <reg52.h>
sbit LED=P1^0;
sbit KEY=P1^1;
char st=0; //1-按鍵按下,0-按鍵釋放
void delay(unsigned int x)
{
while(x--);
}
void LED_TASK()
{
static unsigned char i=0;
if(i++<50)
return;
i=0;
if(st)
{
LED=!LED; //燈閃爍
}
else
{
LED=1; //燈滅
}
}
void KEY_SCAN()
{
static char i=0,c=0;
if(KEY==0)
{
if(i==0)
{
if(KEY==0&&c++>50) //
{
i=1;
st=1; //按鍵按下
}
}
}
else //按鍵釋放,相應(yīng)變量清零
{
i=0;
c=0;
st=0;
}
}
void main()
{
while(1)
{
KEY_SCAN();
LED_TASK();
delay(10); //延時(shí)函數(shù)
}
}
|
-
-
參考protus仿真.zip
2022-4-27 23:25 上傳
點(diǎn)擊文件名下載附件
4.63 MB, 下載次數(shù): 2
|