概述
什么叫消抖
按键消抖通常的按键所用开关为机械弹性开关,当机械触点断开、闭合时,由于机械触点的弹性作用,一个按键开关在闭合时不会马上稳定地接通,在断开时也不会一下子断开。因而在闭合及断开的瞬间均伴随有一连串的抖动,为了不产生这种现象而作的措施就是按键消抖。抖动时间的长短由按键的机械特性决定,一般为5ms~10ms。
if语句
if的一般形式:if(表达式){语句;} 先判断表达式是否为真,若为真则执行语句一,若不为真则跳出if语句。
if嵌套语句的一般形式:if(表达式1){语句1; if(表达式2){语句2;} } 先判断表达式1是否为真,若为假则直接结束if语句,若为真则执行语句1,然后判断表达式2是否为真,若为真则执行语句2,若为假跳出if语句。
如何判断按键是否按下
原理:将四个io口都输入高电平1,当按键按下时,电路导通,io口接GND,所以io口的电平变成0
具体过程:1、先将四个io口赋值为1,P3=0x0f 2、如果要按下第一按键k1,则需判断P3.0是否变成低电平0,if(k1==0)//提前定义sbit k1=P3^0 3、 延迟十毫秒进行消抖delay(10)//这里的10是由delay函数决定的 4、再次判断k1是否仍然为0,若k1仍然为0,则说明不是干扰信号,而是按键被按下 5、点亮一个LED灯,直观的看出按键被按下的征兆。6、再判断一次按键是否被被松开
#include
矩阵按键
用扫描原理控制矩阵按键:通过行列扫描,我们可以先将P1.0~P1.3输出高电平。当接收到的数据,低四位不全为高电平时,说明有按键按下,然后通过接收的数据值,判断是哪一列有按键按下,然后再反过来,P1.4~P1.7输出高电平,然后根据接收到的的值判断是那一行有按键按下,这样就能够确定是哪一个按键按下了。
#include
最后
以上就是精明溪流为你收集整理的c语言延时函数delay_单片机基础实验按键与C语言的全部内容,希望文章能够帮你解决c语言延时函数delay_单片机基础实验按键与C语言所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复