完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
第一次回帖,不太懂规矩。
刚才写了一长篇,因为说是验证码错误(明明我输对了),给弄丢了。 那我长话短说。 逐行检测吧。分四次,把第一、二、三、四行分别检测,这样的话,就不会冲突了。 通常做法是两步操作,置位高四位,测低四位,确定X坐标,置位低四位,测高四位,确定Y坐标。这样,必然只能测一个按键,如果多键同时按下,如果程序编制不当,甚至会得到一个根本不存在的按键值,引起程序逻辑故障。 |
|
|
|
超过3个有点复杂..两个可以.比较简单
|
|
|
|
矩阵扫描应该不存在单个和多个按下之说吧...
|
|
|
|
那两个怎么写,是扫第一行时候再从第一行开始扫一遍吗
|
|
|
|
就是按下一个按键返回一个值,同时按下两个或者多个返回其他值
|
|
|
|
准备一个数组..比方说KEY[8], 还有按键数量.
|
|
|
|
一般的做法是建立一个数组,每按下一个按键就存放进去.然后单片机再一个一个处理.
|
|
|
|
一般的做法是建立一个数组,每按下一个按键就存放进去.然后单片机再一个一个处理.
|
|
|
|
一般的做法是建立一个数组,每按下一个按键就存放进去.然后单片机再一个一个处理.
|
|
|
|
矩阵,没有办法检测多键同时按下。
|
|
|
|
单个按键可以了,多个按键同时按下的,你判断多个按键按下时的物理状态,给个键值出来就行了,就算是所有按键同时按下,都可以得出键值。
|
|
|
|
那得看你是怎么扫描的按键,如果你扫描到一个按键按下就给按键状态标志字某一位置位,如果确定按键释放再清零相应位,那么检查这个标志字就可以知道所有按键的当前状态了!
|
|
|
|
只有小组成员才能发言,加入小组>>
3278 浏览 9 评论
2956 浏览 16 评论
3456 浏览 1 评论
8988 浏览 16 评论
4050 浏览 18 评论
1102浏览 3评论
570浏览 2评论
const uint16_t Tab[10]={0}; const uint16_t *p; p = Tab;//报错是怎么回事?
568浏览 2评论
用NUC131单片机UART3作为打印口,但printf没有输出东西是什么原因?
2301浏览 2评论
NUC980DK61YC启动随机性出现Err-DDR是为什么?
1857浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-22 13:45 , Processed in 1.344939 second(s), Total 71, Slave 62 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号