我最近在开发TCA8418的键盘请问拨号鍵盘不见了和挂机键的键值映射怎么写?
你对这个回答的评价是?
发生中断后中断函数打印的keypad_data->input->keycode没有按键值这个地址全是零,大家知道什么原因!!! |
我最近在开发TCA8418的键盘请问拨号鍵盘不见了和挂机键的键值映射怎么写?
你对这个回答的评价是?
代码中搜索发现kernel代码中有驱动
查看文档依照说明配置dtsi
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的控制,小键盘在系统休眠後也可以正常工作起来了
剩下的就是收尾工作,调整下键值的对应关系