my-keypad {
compatible = "gpio-matrix-keypad";
debounce-delay-ms = <100>;
col-scan-delay-us = <200>;
linux,no-autorepeat;
col-gpios = <
&pio 1 5 0
&pio 1 4 0
&pio 1 2 0
&pio 1 3 0
>;
row-gpios = <
&pio 1 1 0
&pio 1 0 0
&pio 1 6 0
&pio 1 7 0
>;
linux,keymap = <
MATRIX_KEY(0,0,1)
MATRIX_KEY(0,1,2)
MATRIX_KEY(0,2,3)
MATRIX_KEY(0,3,13)
MATRIX_KEY(1,0,4)
MATRIX_KEY(1,1,5)
MATRIX_KEY(1,2,6)
MATRIX_KEY(1,3,14)
MATRIX_KEY(2,0,7)
MATRIX_KEY(2,1,8)
MATRIX_KEY(2,2,9)
MATRIX_KEY(2,3,15)
MATRIX_KEY(3,0,11)
MATRIX_KEY(3,1,10)
MATRIX_KEY(3,2,12)
MATRIX_KEY(3,3,16)
>;
};
我用PB0-PB7 做4*4键盘,设备树这样写有问题吗?只有几个IO是正常,其余的不是不反应就是一次出几个码
离线
看起来没多大问题, linux下驱动应该是比较成熟的,
这些IO也是可以中断的,
检查一下按键的硬件有没有问题了
离线
反复对比了多次, 没发现什么异样.
调整一下这两个参数试一试:
debounce-delay-ms = <100>;
col-scan-delay-us = <200>;
离线
debounce-delay-ms 这个去抖延迟时间 100ms 感觉有点太大了, 改小试一试了。
https://e2echina.ti.com/question_answer/dsp_arm/sitara_arm/f/25/t/134142
这个才 5ms
最近编辑记录 jimmy (2019-03-20 08:54:57)
离线
debounce-delay-ms 这个去抖延迟时间 100ms 感觉有点太大了, 改小试一试了。
https://e2echina.ti.com/question_answer/dsp_arm/sitara_arm/f/25/t/134142
这个才 5ms
我最后改成20了,用100主要是抖动非常大,用手摸都会有反应,延时加大也不行,没办法加了下拉电阻才搞定
离线
jimmy 说:debounce-delay-ms 这个去抖延迟时间 100ms 感觉有点太大了, 改小试一试了。
https://e2echina.ti.com/question_answer/dsp_arm/sitara_arm/f/25/t/134142
这个才 5ms
我最后改成20了,用100主要是抖动非常大,用手摸都会有反应,延时加大也不行,没办法加了下拉电阻才搞定
是 col-gpios 这几个脚加上拉电阻吧?
row-gpios 要加也只能加上拉,
对吗?
离线
@psst:
我现在在弄licheepi-zero的矩阵键盘,帮忙指导一下吧!
我加你的qq,或者邮箱留言
离线
请问大佬,问题最后解决了吗?
离线