找回密码
 注册
关于网站域名变更的通知
查看: 1066|回复: 3
打印 上一主题 下一主题

矩阵键盘输入多位数显示问题

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2019-4-28 13:19 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
矩阵键盘输入多位数显示问题" d+ v1 l/ T" I0 Q4 ], `. B
5 F- b0 e( v( K- B8 ^
知键盘扫描程程uchar keyscan(),其返回值为矩阵键盘扫描结果,如何通过该函数向LCD1602输入6为数显示? 我无法解决按键松开判断,还请各位大神给出详细程序?谢谢!( U3 D# G7 z) H/ ^/ [# P5 n8 r! [

该用户从未签到

2#
发表于 2019-4-28 13:47 | 只看该作者
首先采用软件延时,或者硬件电路处理去抖。  然后使用WHILE()来做判断。  也可以使用定时器采用判断按下按键的时长,来做长按或者短按,或者无效判断。

该用户从未签到

3#
发表于 2019-4-28 14:16 | 只看该作者
给个简单的: f0 z6 z0 S! c) t4 g, u! b
uchar keyscan()) ?5 K% ^" I* r
{9 Q( i" a" ], Y
uchar key_flag=0;
, r  t6 h5 Q9 }6 R4 T( l  if(key==0)//初判断按键是否按下{
2 n( D: X. s: v, V4 c% t# e   delayms(10);//延时去抖动7 J! A) V( Q! n( u
   while(key==0);//等到按键松开
$ r9 q4 a9 w! K' [8 q  e   key_flag=1;//表示按键按下了,另外,主要在其他用这个标志的地方,使用后清零。
- U8 D. q) m. n5 }0 g}
( N' T) Z' i$ s; K$ A4 |else if(key2==0)& p0 ]! b  ?4 \. U2 f
{4 }* T- g- x7 P7 C
  ......
# q. j3 x* ~# u9 C6 Rkey_flag=2;
$ z, ?% H$ u  t7 A}8 f+ B1 v7 p1 S' t3 k' p/ l# q
else
. j2 S% D( b6 u: V5 V) ^/ J6 \+ `/ g  key_flag=0;8 i! ?& U  B, E9 x4 J
return key_flag;% ]6 m& }' A/ x! g
}
, V* m2 T" s; K( ~/ e) D2 C" _9 y2 N$ i
這里是给了一个大概的范例思路。

该用户从未签到

4#
 楼主| 发表于 2019-4-28 14:53 | 只看该作者
多谢各位大牛
) Y4 J0 h4 o! A( ?) n8 j
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-8-13 00:10 , Processed in 0.109375 second(s), 23 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表