QTE3.X中使用自定义键盘
在嵌入式linux开发中,很多时候用到的键盘都不是linux的标准键盘,是用户自定义的键盘(多为矩阵键盘),而在QTE3.X中是不能直接使用这些键盘的,网上提到的方法主要是先编写自定义键盘的驱动,再修改QTE中的相关函数,再在环境变量中加入QWS_KEYBOARD变量以指定所用键盘,其方法十分繁琐,且易出错。
实际上有一个简单的方法,就是在编写自定义键盘的驱动,按照linux标准键盘的驱动格式去编写,完成后,即可以在QTE中直接使用自定义键盘而不需做任何设置。而且,按照此法编写出来的键盘,其键值都是标准键盘的键值在其它非QTE的应用程序中,也可以直接如使用标准键盘一样使用自定义键盘了。
而所谓按照linux标准键盘的驱动格式编写驱动,实际上就是在写自定义键驱动时,不将其注册为字符型设备,而将其注册为linux输入子系统的设备。关于输入子系统的概念,我就不多说了,网上多的是。还有,linux的源代码中,driver/input/keyboard 目录中的键盘驱动程序,都是用这种方法编写的标准键盘驱动,其中有的是串行口的键盘驱动,有的是GPIO口的键盘驱动,可以根据自已的键盘,参考其中的某一驱动进行编写。