WhyCan Forum

人过留名,雁过留声,感谢各位朋友不离不弃地支持。 QQ: 516333132, 微信: whycan_cn (哇酷网/挖坑网/填坑网) admin@whycan.cn

您尚未登录。

#1 2019-07-27 11:02:52

helo
会员
注册时间: 2019-07-24
累计积分: 6

请教V3S(荔枝派Zero)的矩阵键盘matrix keypad的设备树dts文件的配置

我参照着psst的《v3s matrix keypad 设备树怎么写?》的帖子,做了一下自己的矩阵键盘驱动,内核是linux-zero-4.10.y。
我现在 把licheepi zero上面加了1个3x4的矩阵键盘,行线使用PB2,PB3,PB4 三个引脚,列线使用PE2,PE3,PE10,PE11四个引脚。
列线用的是 原来的RGB_LCD上面的引脚,LCD现在我弄成SPI接口的LCD了,所以RGB上面的引脚都可以用。
然后我在内核里面配置了matrix键盘的支持:
QQ20190727104525.jpg
QQ20190727104458.jpg
设备树也修改了:
QQ20190727104534.jpg
重新烧写zimage和dtb设备树文件,重新上电后,在/dev/input/也可以看到event0设备,cat /proc/interrupts里也可以看到3根行线注册的中断源,但是cat /dev/input/event0后按下按键 没有任何反应。
kernel_1.png
kernel_2.png
用万用表测量过3根行线的电平,没有按键按下时是低电平,如果该行上有按键按下会变成高电平,松开后又回到低电平,说明电路应该没问题的。
会是哪里的问题呢?

最近编辑记录 helo (2019-07-27 11:05:18)

离线

#2 2019-07-27 11:28:29

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 8,531

Re: 请教V3S(荔枝派Zero)的矩阵键盘matrix keypad的设备树dts文件的配置

PB2,PB3,PB4  触发的中断次数都是 0 ?

PB2,PB3,PB4 不按时候的电压是多少, 按下的时候电压是多少?


https://github.com/torvalds/linux/blob/master/drivers/input/keyboard/matrix_keypad.c
https://github.com/torvalds/linux/blob/master/Documentation/devicetree/bindings/input/gpio-matrix-keypad.txt

在线

#3 2019-07-27 12:12:35

helo
会员
注册时间: 2019-07-24
累计积分: 6

Re: 请教V3S(荔枝派Zero)的矩阵键盘matrix keypad的设备树dts文件的配置

不按按键的时候,行线电平是0,按下时,行线电平为3.3V

离线

#4 2019-07-27 12:51:34

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 8,531

Re: 请教V3S(荔枝派Zero)的矩阵键盘matrix keypad的设备树dts文件的配置

有点不对啊,默认是低电平触发中断,你的应该一直在中断才是

在线

#5 2019-07-27 13:10:26

helo
会员
注册时间: 2019-07-24
累计积分: 6

Re: 请教V3S(荔枝派Zero)的矩阵键盘matrix keypad的设备树dts文件的配置

我把它改到4.13.y内核里面了,现在可以用了。

离线

#6 2019-07-27 13:43:32

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 8,531

Re: 请教V3S(荔枝派Zero)的矩阵键盘matrix keypad的设备树dts文件的配置

4.10.y 不行, 4.13.y 可以?

在线

#7 2019-07-27 14:51:36

helo
会员
注册时间: 2019-07-24
累计积分: 6

Re: 请教V3S(荔枝派Zero)的矩阵键盘matrix keypad的设备树dts文件的配置

是的。4.10.y 不行4.13.y可以。都是在licheepi zero自带的默认参数基础上修改的。
另外,行线都要加上下拉电阻才稳定,否则总是进入到行线的中断里面去。

离线

#8 2019-07-27 15:11:56

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 8,531

Re: 请教V3S(荔枝派Zero)的矩阵键盘matrix keypad的设备树dts文件的配置

输入一般都要加上拉电阻,否则有点飘吧

在线

页脚