input_device

linux kernel input device编写,需要五步:

  • 手动分配与设置 struct input_dev * 变量

  • 注册 input device

  • 向linux系统上报事件

  • 注销与释放 input device

  • 应用层测试

1. 手动分配与设置 struct input_dev * 变量

struct input_dev *xxx_inputDev;

xxx_inputDev = input_allocate_device(); // 分配
xxx_inputDev->name = "xxx_inputDev";    // 设置input device名字
__set_bit(EV_KEY, xxx_inputDev->evbit); // 设置事件类型
__set_bit(KEY_0,  xxx_inputDev->keybit);// 设置事件码

2. 注册 input device

input_register_device(xxx_inputDev); // 注册

3. 向linux系统上报事件

一般在中断处理函数或下半部函数中上报事件

4. 注销与释放 input device

5. 应用层测试

Last updated

Was this helpful?