独立按键控制led灯的亮灭

独立按键控制一个led灯的亮灭

直接可以控制指定位的变化

#include <REGX52.H>

void main(){//实现独立按键控制一个led灯的亮灭
		while(1){
			//按下时亮松开时灭
		    if(P3_1==0){
						P2_0=0;
				}else{
						P2_0=1;
				}
		}
}

独立按键控制灯的循环亮灭(单向循环)

这里实现灯的亮灭是使用在我之前的文章中《单片机:流水灯》提到的实现灯亮灭的方法。

文章链接:http://t.csdn.cn/mlXy2

识别到k1键被按下,或者k2键被按下,因为机器再按的时候程序一直执行,程序的执行是相当快的,这样就多次识别到k1(k2)键被按下,这样就多个灯的状态被改变,我们本意想按下一次只识别一次,采用延时可以实现,当按下键后,延时500ms在这500ms内就只识别了1次,只改变一个灯的状态,(缺点:因为延时是固定的,所以在延时时间内无论你按下多少次按键都不会识别)

#include <REGX52.H>
#include <INTRINS.H>
void Delay500ms()		//@12.000MHz
{
	unsigned char i, j, k;

	_nop_();
	i = 4;
	j = 205;
	k = 187;
	do
	{
		do
		{
			while (--k);
		} while (--j);
	} while (--i);
}
void main(){
		int x=1,count=0xff;
		P2=count - x;//初始话灯
		Delay500ms();
		while(1){
			if(P3_1==0){//识别按
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值