【C51】独立按键控制LED灯

1.简介

      在单片机应用系统中,常常使用轻触按键组成键盘。轻触按键具有自动回弹的特点,即按下按键,两个触点接通,放开按键,两个触点断开。轻触按键的外形及电路符号如图,通常轻触按键有4个引脚,4个引脚组成两对,每对引脚相通,相当于两个触点。

2.按键抖动及消抖方法

       对于机械开关,当机械触点断开、闭合时,由于机械触点的弹性作用,一个开关在闭合时不会马上稳定地接通,在断开时也不会一下子断开,所以在开关闭合及断开的瞬间会伴随一连串的抖动。

可采用硬件消抖和软件消抖方法。软件消抖方法是单片机设计中常用的方法。其过程当检测到按键端口为低电平时,不立即确认按键按下,延时10ms后再判断,如果该端口仍为低电平,则确认该端口引脚所接按键确实是被按键按下,这样做避开了按键按下时的抖动时间。

3.按键原理图

      由于51系列单片机的I/O口在系统复位后为高电平,因此在设计按键接口时,将按键一端接地,另一端接单片机的I/O口。当按下按键时,I/O口接地,输入为低电平;当按键弹开时,接地端断开,I/O口输入高电平。

     独立式按键的电路结构:每个按键占用一个I/O口,按键一端接I/O扣,另一端接地。通过程序检测I/O口的输入电平,即可判断是哪个按键按下,然后转去运行对应按键功能的程序段。

4.C51程序设计

#include <REGX52.H> //单片机内部资源头文件


void main()
{
	while(1)
	{
		if(P3_1==0 || P3_0==0)	//
		{
			P2_0=0;		//LED1灭
		}
		else
		{
			P2_0=1;		//LED1亮
		}0
	}
}

5.效果

按下,亮

松开,灭

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值