#include<reg51.h>
sbit led=P1^7;
sbit key=P3^2;
bit flag;
yanshi(int x)//延时函数
{
int i,j;
for(i=0;i<x;i++)
{
for(j=0;j<125;j++)
{
;
}
}
}
key_scan()
{
if(key==0)//判断按键是否按下
{
yanshi(5);//延时,目的是跳过抖动
if(key==0)//跳过抖动后,在按键稳定状态下,再次判断按键是否按下
{
flag=~flag;//进行按键处理,取反
while(key==0)//判断按键是否释放
{
;//等待按键释放
}
}
}
}
main()
{
while(1)
{
key_scan();
if(flag==0)
{
led=0;//灯亮
}
else
{
led=1;//灯灭
}
}
}
08-30
1051
02-04
674
07-11
5758