社区
单片机/工控
帖子详情
按键是否很少能用到查询方式?
drizztguai
2010-02-16 01:26:41
一开始我用查询方式来读取按键
可是由于后面有delay();很大机会按键的时候在delay里读不出来
后来采用了中断,可是中断就这几个口,根本无法满足需求。。。
...全文
138
8
打赏
收藏
按键是否很少能用到查询方式?
一开始我用查询方式来读取按键 可是由于后面有delay();很大机会按键的时候在delay里读不出来 后来采用了中断,可是中断就这几个口,根本无法满足需求。。。
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
tcdzyq
2010-02-19
打赏
举报
回复
如果程序轮循时间过长,可以放在定时中断中查询
galafx
2010-02-18
打赏
举报
回复
如果不能把按键连接中断,我想到的就是用定时中断,键盘检测在定时中断里做。
不过键盘检测的消抖时间感觉有点长,可以考虑不要。
再有就是定时检测按键要做好防止重复检测到按键。
schlafenhamster
2010-02-18
打赏
举报
回复
采用中断,把所有的按键‘或’成一个中断
qzf368
2010-02-18
打赏
举报
回复
定时中断查询法应该更好
sunkechenjing
2010-02-18
打赏
举报
回复
读取按键有很多办法,如果按键很多可以用ch452,如果不多可以简单编程.
比如下面的程序
if(key1==0)
{
while(key1==0);
while(key1==1);
if(bz_light1==1)
{
light1=0;
bz_light1=0;
}
else
{
light1=1;
bz_light1=1;
}
delayms(2);
}
博说医械研发
2010-02-16
打赏
举报
回复
1000太长了,一般情况下操作的时候都不会按1秒那么久,根据实际需要调整一下数值吧
drizztguai
2010-02-16
打赏
举报
回复
我用来闪烁字符。
就用了1000ms... 所以长了点。
wxdcxp
2010-02-16
打赏
举报
回复
一般按键都采用循环来读取的,你delay是多长时间?一般20ms左右就可以了
【单片机】
按键
消抖及原理(硬件和软件方法详解)
浅谈:在设计单片机
按键
输入的时候,进行
按键
消抖是防止
按键
输入被CPU误读多次的必要手段。 一、
按键
抖动 通常的
按键
所用开关为机械弹性开关,当机械触点断开、闭合时,由于机械触点的弹性作用,一个
按键
开关在闭合时不会马上稳定地接通,在断开时也不会一下子断开。因而在闭合及断开的瞬间均伴随有一连串的抖动,为了不产生这种现象而作的措施就是
按键
消抖。 抖动时间的长短由
按键
的机械特性决定,一般为5ms~10ms。这是一个很重要的时间参数,在很多场合都要
用到
。
按键
稳定闭合时间的长短则是由操作人员的
按键
动作决定的,一般为零点几
计算机
按键
去抖动的
方式
,
按键
消抖
按键
消抖通常的
按键
所用开关为机械弹性开关,当机械触点断开、闭合时,由于机械触点的弹性作用,一个
按键
开关在闭合时不会马上稳定地接通,在断开时也不会一下子断开。因而在闭合及断开的瞬间均伴随有一连串的抖动,为了不产生这种现象而作的措施就是
按键
消抖。中文名
按键
消抖外文名removing jo ggle for push button性质消抖属性
按键
抖动时间一般为5ms~10ms消抖方法硬件...
嵌入式C -
按键
驱动,支持连击、长按、组合键
这不,机会来了,某个项目中,使用一个
按键
,与机子进行多种互动。自然地,就需要识别单击、双击、长按等。一时间看着代码,难以下手。之前一直
很少
用到
按键
,基本识别一下
按键
是否
按压,就没了,所以,就不需要特别设计,能用够用就行。这样定时扫描
按键
,就会自动运行我们定义的事件回调函数。必须处理好优先级,不能说三击触发了,双击也能触发。对应低性能的MCU,实现有限的
按键
识别。某个时刻,只允许一个事件,多了全部无效。它要识别出独立
按键
的不同操作,即事件。组合键为“电源键” + “功能键”先扫描所有
按键
,再执行事件处理。
单片机
按键
FIFO
本文代码参考安富莱
按键
FIFO FIFO数据结构如果不清楚可以参考博文简单的FIFO 一般的单片机系统,
按键
作为人机交互工具是必不可少的,但是普通的
按键
需要消抖处理,极大的增加了程序开销,降低系统实时性。 安富莱的FIFO
按键
,无需延时处理消抖,可以记录
按键
按下、弹起、长按、组合按,并且移植起来也十分方便。之前在做一个项目时,
用到
一个矩阵键盘,移植了这个
按键
FIFO程序,用起来效果很不错。 主要流程就是开启一个10ms的定时器中断,在中断中扫描
按键
状态,并对
按键
状态进行分析消抖处理,如果
按键
动作,将
按键
硬件思维之
按键
去抖动处理
啊对啦——声音是通过震动产生的,这种震动,我们称之为
按键
的抖动。2、软件去抖动:这里
用到
了一个很聪明的方法,叫延迟读取,首先计算出大部分
按键
从抖动到稳定需要多长的时间,一般是10~20ms,然后写一段程序,当单片机发现有键按下时开始等待,等待10~20ms之后再读取
按键
的状态,这时读到的就是接触稳定时的
按键
状态了。这种抖动会损伤电路,在单片机中这种抖动会影响其对高低电平的判断,因为单片机在
按键
抖动时读取I/O接口的电平会发现在抖动的时候,谁也不知道会读出什么,可能是高电平也可能是低电平。
单片机/工控
27,517
社区成员
28,798
社区内容
发帖
与我相关
我的任务
单片机/工控
硬件/嵌入开发 单片机/工控
复制链接
扫一扫
分享
社区描述
硬件/嵌入开发 单片机/工控
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章