独立按键控制LED灯的状态

一、独立按键模块介绍

开发板上四个独立按键共阴极,当按键不按时对各自对应的IO口输出高电平1,按键按下时输出低电平0;结合对独立按键IO口输出信号的判断对其进行编程则可以控制LED灯的亮灭。

 

二、独立按键控制LED灯光

1、独立按键控制LED灯的亮灭

使用if{ }else{ }语句对第一个独立按键对应的IO口信号的判断,按下按键保持不动持续输出低电平,第一个LED灯亮,松手,按键回弹输出高电平,则LED灯灭。

#include void main()
{while(1){if(P3_1==0){P2_0=0;}else{P2_0=1;}}
}

2、独立按键控制LED灯的状态

由于按键按下会跟洞开瞬间会伴随一连串的抖动,再按键按下时和松开时加入延时函数,等输出信号稳定之后再进行判断。

#include void Delay(unsigned int xms)		
{unsigned char i, j;while(xms){i = 2;j = 199;do{while (--j);} while (--i);xms--;}
}void main()
{while(1){if(P3_1==0)    //如果K1按下{Delay(20);    //延时20ms进行消抖while(P3_1==0)    //松手检测,按键保持按下的状态会进入死循环Delay(20);    //延时20ms进行消抖P2_0=~P2_0;    //对第一个LED灯的状态取反}}
}

 3、独立按键控制LED灯移位

#include unsigned char LEDNum;void Delay(unsigned int xms)		
{while(xms){unsigned char i, j;i = 2;j = 199;do{while (--j);} while (--i);xms--;}
}void main()
{		P2_0=0;    //上电第一个LED灯点亮while(1){	if(P3_1==0)    /按下K1{Delay(20);    //延时消抖while(P3_1==0);    //松手检测Delay(20);    //延时消抖LEDNum++;    //每次按下K1,LEDNum自增一次if(LEDNum>=8)    //越界清零,LEDNum超过8数据清零LEDNum=0;P2=~(0x01<


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部