参考:【Linux驱动编程】通过一个虚拟input设备熟悉input设备驱动开发步骤
参考Github:Prry/linux-drivers
修改后代码:
代码使用
本部分介绍参考Github中的代码使用。该代码虚拟了一个键盘,通过向某文件写入内容,可以模拟按键按下与松开。
进入linux-drivers/input
目录,运行如下命令
su # 输入密码,此步必须完成,否则后续写文件时会出现即使使用sudo也无法
make
insmod devinput.ko
此时,执行以下命令,便可模拟按下并松开一次0(一次不行多试几次)
echo 1 > /sys/bus/platform/devices/dev_input/input_bin && echo 0 > /sys/bus/platform/devices/dev_input/input_bin
或单独执行以下命令模拟按下(可以看到一直有0打出来)
echo 1 > /sys/bus/platform/devices/dev_input/input_bin
原理详解
虽然很感谢Prry老师的开源,但是其代码有太多冗余,并不是本demo的最简实现方式,而且命名混乱,没有注释,可读性差,结构也不合理,容易导致初学者误解,所以我将代码进行了整理,把实现最简化,辅以注释,代码在Piamen/v