输入子系统有效利用 sysfs 与用户空间进行交互,将kernel driver层的信息展示给用户空间。
input subsystem 以input_event的形式将
通过驱动名字找到设备对应的event (like /dev/input/event*)。
input device 名字路径 /sys/class/input/event*/device/name,名字为注册驱动所定义的名字。
输入设备驱动:
struct input_dev xxx_input;
xxx_input->name 即为驱动名字,如果要找对应设备,比如键盘,可以通过循环,一旦名字匹配,即可返回。
找到设备路径后,打开文件
fd = open(input_path, O_RDONLY, O_NONBLOCK);
input subsystem 将输入时间以 input_event 结构组织,所以只需读取即可
read(input_fd, &ev, sizeof(struct input_event));
通过判断ev.code的值做相应处理。
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请
点击举报。