打印

请教矩阵按键和数码管显示怎样配合

[复制链接]
2405|11
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
yyh1910|  楼主 | 2014-5-9 10:22 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
现在有5*3矩阵键盘和10位8端段数码管,需要进行按键扫描和数码管动态显示。一个朋友说矩阵键盘每个5ms扫描一个公共端,数码管动态显示每位小于30ms,按钮消抖5~10ms。怎样在矩阵键盘扫描中插入数码管显示,或者有其他合理的写法

相关帖子

沙发
maychang| | 2014-5-9 11:13 | 只看该作者
数码管动态显示每位小于30ms

时间太长,必定闪烁。

使用特权

评论回复
板凳
mmuuss586| | 2014-5-9 12:39 | 只看该作者
你可以在刷新显示的时候,中间延时里,加扫描键盘

使用特权

评论回复
地板
allround| | 2014-5-9 13:06 | 只看该作者
定时扫描按键和定时驱动显示.

使用特权

评论回复
5
df_flying| | 2014-5-9 14:06 | 只看该作者
你每个循环只扫描一位数码管(扫描函数里加一个i++,i%=8;作为当前扫描的位),检测一次按键,按键消斗用5-10ms,键值判断和数码管装载扫描,也用不到10ms吧,没必要先读完键值,再整个单独的扫描一下的。

使用特权

评论回复
6
dirtwillfly| | 2014-5-9 21:27 | 只看该作者
键盘扫描和数码管刷新是不冲突的。

使用特权

评论回复
7
yyh1910|  楼主 | 2014-5-10 09:17 | 只看该作者
df_flying 发表于 2014-5-9 14:06
你每个循环只扫描一位数码管(扫描函数里加一个i++,i%=8;作为当前扫描的位),检测一次按键,按键消斗用5- ...

我想在数码管显示延时时加入按键扫描,怎样使按键扫描延时5ms,再继续显示数码管。是进入扫描代码后,定时器开始定时5ms吗

使用特权

评论回复
8
grasswolfs| | 2014-5-10 09:26 | 只看该作者
原来的延时就是用i--等待,直接改成扫描代码估计一下延时之后再回去就可以了啊,再根据实际效果调试一下

使用特权

评论回复
9
grasswolfs| | 2014-5-10 09:27 | 只看该作者
话说加几个595妥妥的静态显示多好,个人感觉现在就喜欢静态不喜欢动态了

使用特权

评论回复
10
maychang| | 2014-5-10 10:21 | 只看该作者
yyh1910 发表于 2014-5-10 09:17
我想在数码管显示延时时加入按键扫描,怎样使按键扫描延时5ms,再继续显示数码管。是进入扫描代码后,定 ...

很简单。
定时扫描显示数码管,例如2.5ms显示一位,那么10位共用25ms,即每秒刷新40次,可以保证不会闪烁。
每次更新显示时检测一次键盘,与上次检测相比较,若有变化则纪录下来,但不作处理。连续若干次(此例中可以3次或4次)不变,则认为键盘稳定,读出键盘,转相应处理例程。
大可不必每次检测键盘都延时5ms,那样太浪费时间了。

使用特权

评论回复
11
ningling_21| | 2014-5-10 15:19 | 只看该作者
定时2MS,扫描数码管...

按键消抖不要用延时...

两者互不相干

使用特权

评论回复
12
yyh1910|  楼主 | 2014-5-17 15:56 | 只看该作者
maychang 发表于 2014-5-10 10:21
很简单。
定时扫描显示数码管,例如2.5ms显示一位,那么10位共用25ms,即每秒刷新40次,可以保证不会闪烁 ...

你这方法不错

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

48

主题

96

帖子

1

粉丝