小键盘TCA8418驱动调试

news/2025/1/17 4:39:50/

小键盘TCA8418驱动调试

代码中搜索发现kernel代码中有驱动

$ find -name "*tca841*"
./drivers/input/keyboard/tca8418_keypad.c
./Documentation/devicetree/bindings/input/tca8418_keypad.txt
./include/linux/input/tca8418_keypad.h

查看文档,依照说明配置dtsi

Required properties:
- compatible: "ti,tca8418"
- reg: the I2C address
- interrupts: IRQ line number, should trigger on falling edge
- linux,keymap: Keys definitions, see keypad-matrix.

配置dtsi时发现少了2个属性keypad,num-rows和keypad,num-columns

从datasheet获取芯片通讯地址

完成配置dtsi

tca8418@34 {
compatible = "ti,tca8418";
interrupt-parent = <&msm_gpio>;
interrupts = <11 0x2002>;
reg = <0x34>;
keypad,num-rows = <4>;
keypad,num-columns = <4>;
linux,keymap = <0x0000020a
0x0001000b
0x0002020b
0x0003001c
0x01000008
0x01010009
0x0102000a
0x0103000e
0x02000005
0x02010006
0x02020007
0x0203009e
0x03000002
0x03010003
0x03020004
0x0303001c>;
};

config中配置

CONFIG_KEYBOARD_TCA8418=y

编译烧写后

getevent驱动已经挂载上了,但是按按键没有反应

看原理图

发现外围没有接上拉电阻,一般都会有个上拉电阻,之前调试过小键盘sn7326就是因为没有上拉电阻的问题

只好再研究下芯片手册

果然不用的gpio要拉个上拉,这个纠结了好久,后来看reg设置时发现, 内部默认有个上拉,通过reg可以配置上拉,默认是配置的上拉,所以也没问题

接下来看看是不是reset信号有问题,量reset信号

查看原理图发现reset信号方向反了,对小键盘这边reset应该是输入,上图画成了输出,不过小键盘端有个上拉,reset脚可以一直保持高电平,芯片可以一直工作,不影响

再来看看是不是中断信号有问题,看中断信号

测量KEY_INT, 按键按下前为高,按下后为低,正常

测量GPIO11,按键按下前0.7V,电压不对,找到问题了

分析:从原理图上看电路应该是没问题的,GPIO11通过Q29与1.8V相接,Q29截止的话,实际上相当与拉了个很大的上拉电阻,会造成分压。Q29的1和2脚之前有个很大的电阻。

分析后把GPIO11配置修改成上拉,编译运行,小键盘开始正常工作了。但是当系统休眠后,再按按键就没有反应了。

量电压,系统休眠时1.8V掉电了,在tca8418代码中增加对VREG_L6_1P8V的控制,小键盘在系统休眠后也可以正常工作起来了。

剩下的就是收尾工作,调整下键值的对应关系。


http://www.ppmy.cn/news/392979.html

相关文章

酷冷至尊机械键盘键位重置win 键失效 ubuntu下 super键无效

参考地址 http://www.dve2.com/t/21 如果你搞乱了设置&#xff0c;也不用慌&#xff0c;最后还有FNE&#xff08;按住三秒以上&#xff09;&#xff0c;直接恢复出厂设置即可。 其他内容&#xff1a; 网络资料:去年底入手了一款 酷冷至尊XTV2 键盘,不料睡觉的时候女儿乱敲键盘导…

键盘键位对应ASCII码

0x1 鼠标左键 0x2 鼠标右键 0x3 CANCEL 键 0x4 鼠标中键 0x8 BACKSPACE 键 0x9 TAB 键 0xC CLEAR 键 0xD ENTER 键 0x10 SHIFT 键 0x11 CTRL 键 0x12 MENU 键 0x13 PAUSE 键 0x14 CAPS LOCK 键 0x1B ESC 键 0x20 SPACEBAR 键 0x21 PAGE UP 键 0x22 PAGE DOWN 键…

计算机中f4的应用,电脑键盘中功能区的F2键F4键如何使用 电脑键盘中功能区的F2键F4键怎么使用...

今天给大家带来电脑键盘中功能区的F2键F4键如何使用&#xff0c;电脑键盘中功能区的F2键F4键怎么使用&#xff0c;让您轻松解决问题。灵活使用电脑键盘的功能键&#xff0c;可以有效的提高工作效率。 具体方法如下:1 F2键的使用方法。 f2键的功能是重命名。 鼠标左键&#xff0…

Windows系列系统 修改键盘默认对应键值(修改ctrl与fn位置, 解决键盘重要键损坏问题)

一、出现问题 1.surface 自带微软键盘坏了&#xff0c;临时用个蓝牙键盘&#xff0c;顶上&#xff0c;这个键盘设计很不是适应&#xff0c;类似于联想那种将Fn键与Ctrol键设计&#xff0c;Fn键在键盘最左角&#xff01;&#xff01;&#xff01; 一按ctrol加快捷键就出现Fn。。…

键盘F1~F12的用处!

F1&#xff5e;F12都有什么用&#xff1f;所有的键盘都至少有12个功能键&#xff0c;通常被称为F键&#xff0c;其位置一般是在键盘顶部&#xff0c;从F1到F12。不过你知道所有这些键的作用吗&#xff1f;你知道这些键怎样为你节省时间吗&#xff1f;F1:如果你处在一个选定的程…

Mac键盘和Windows键盘对应表

Boot Camp: Apple Keyboard (Ultra–thin USB) keyboard mapping in Windows Summary Learn how Boot Camp maps Microsoft Windows functions and special keys to the external Apple Keyboard (Ultra–thin USB), as well as which keys to use for various functions. Prod…

论键盘上F9键的功能

键盘上有一个键&#xff0c;上面有一个像放大镜一样的图标&#xff0c;如果没错那就是F9键&#xff0c;对不同的品牌电脑的快捷键的使用可能不一样。 那么F9键有什么左右呢&#xff08;有的电脑是同时按住FnF9才可以&#xff09;&#xff1f; 答案是&#xff1a;搜索磁盘文件的…

【STC89C52】独立键盘和矩阵键盘

今天我分享的是基于STC89C52的独立键盘与矩阵键盘实验的学习笔记。希望对你有所帮助&#xff01; 目录 一、原理图分析 二、独立键盘 三、矩阵键盘 一、原理图分析 键盘在现实生活中很常见&#xff0c;手机的虚拟键盘&#xff0c;电脑的实体键盘。 键盘是由一个个按键构成…