51单片机 独立按键

1.按键介绍

轻触开关是一种电子开关,使用时按动开关按钮就可使开关接通:1和2、3和4导通,1和3、2和4不导通;当松开手时,开关断开。
在这里插入图片描述

2.独立按键原理

机械弹性按键,所以具有弹性,按键在按下和松开的瞬间均伴随有一连串的抖动,键抖动会引起一次按键被误

读多次,然后为了保证cpu对键的一次闭合仅作一次处理,所以我们必须去除抖动。去除抖动有2种,硬件消抖和软件消抖。
其中一软件消抖最方便
这里以软件消抖为例:
在这里插入图片描述

#include "reg52.h"
typedef unsigned char u8;
typedef unsigned int u16;

sbit led=P0^0;
sbit k1=P1^0;

void delay(u16 i)
{
	while(i--);
	
}

void keypros(){
	if(k1==0)
	{
			delay(1000);
		    if(k1==0){
        led=~led;
		}			
		while(!k1);
	}		
}
void main(){
	led=0;
	while(1){
		keypros();
		
	}
	
}
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值