利用独立按键控制LED状态
实验目的:利用利用独立按键控制LED状态
实验接法:LED灯接51单片机P1_0口,独立按键接单片机P3_2口,利用独立按键控制LED灯状态
实验现象:按键按下时LED灯状态不变(灭),松开时LED灯亮起;再次按键按下时LED灯状态不变(亮);松开按键LED灯灭(检测按键松开不是按下)
实验代码:
#include <REGX52.H>
//延时函数{
void Delay(unsigned int xms)
{
unsigned char i, j;
while(xms)
{
i = 2;
j = 239;
do
{
while (--j);
} while (--i);
xms--;
}
}
//延时函数}
int main(void)
{
while(1)
{
if(P3_2==0) //检测按键按下,没按时单片机默认高电平,按下单片机变低电平
{
Delay(20); //延时消除抖动
while(P3_2==0); // 循环检测按键是否被持续按下
Delay(20); //延时消除抖动
P1_0=~P1_0; //检测到按键松开,将LED灯一端电平取反,实现状态控制
}
}
}