Android上利用gpio keys实现自定义键盘
1.驱动支撑
gpio keys子系统就是为了实现GPIO+按键实现键盘功能。在一些不支持USB键盘的应用场景非常有用。
实现DTS的修改:
这里说明一下键值,如上图中的linux,code对应的值,这个可以在内核原码相关头文件中查到:
include/uapi/linux/input.h 或
include/uapi/linux/input-event-codes.h
驱动在LINUX内核位置:drivers/input/keyboard/gpio_keys.c
make menuconfig添加驱动:
Device Drivers —> Input device support —> [] Keyboards —> <> GPIO Buttons
重新编译内核和DTB文件,烧写后可以在串口终端中看到添加的结果:
cat /proc/bus/input/devices 或
2. 中间层支撑
3.应用层