首页 > 学院 > 操作系统 > 正文

input子系统

2024-06-28 16:00:27
字体:
来源:转载
供稿:网友

1、分层

设备驱动层:

1.结构体:

核心层:

1.结构体:

事件处理层:

1.结构体:

2、步骤流程:

1.定义input_dev结构

方法1:struct input_dev dev;方法2:struct input_dev *dev ;struct input_dev __must_check *input_allocate_device(void);

2.初始化

1. 支持什么事件

set_bit(EV_KEY,input_dev.evbit);

2、支持什么子事件

set_bit(BTN_0,input_dev.keybit));

3、设置事件参数

3.注册:

int __must_check input_register_device(struct input_dev *);

4.在需要的地方上报事件

static inline void input_report_key(struct input_dev *dev, unsigned int code, int value) 例如: input_report_key(&input_dev,BTN_0,0); input_report_key(&input_dev,BTN_0,1); input_sync(&input_dev);

5.释放:

void input_unregister_device(struct input_dev *);

3、实例:

源码下载

4、源码追踪:

更多细节见xmind思维导图。
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表