一、检测按键是否按下
#include"reg52.h"
typedef unsigned char u8;
typedef unsigned int u16;
sbit led=P2^0;
sbit ke=P3^1;
void delay(u16 i)
{
while(i--);
}
void anjian()
{
if(ke==0)//判断按键是否被按下
{
delay(1000);//消抖
if(ke==0)//消抖之后再次判断是否被按下 ?
led=~led;//点亮led灯,led灯默认高电'平
while(!ke);//判断是否断开
}
}
void main()
{
while(1)
{
anjian();
}
}
本文介绍了一种使用51单片机进行按键检测的方法。通过定义sbit位操作来控制LED和读取按键状态,并实现了按键消抖及LED状态切换的功能。主程序循环调用按键检测函数。
3962

被折叠的 条评论
为什么被折叠?



