编译 tslib 的时候需要先在 ubuntu 中安装一些文件
在 ubuntu 中创建一个名为“tslib”的目录存放编译结果,然后执行以下指令进行编译:
然后打开板子的 文件,找到下面这一行:
如果这句前面有“#”注释,就删除掉“#“,我这个默认是没有的,所以不用修改
校准完成以后如果不满意,删除掉/etc/pointercal文件即可
然后会出现一个触摸测试界面,先测试Drag功能,手指接触屏幕后进行移动,屏幕上的十字标记就会跟着移动:
,上报的时序如下(就是上报空数据):
如果驱动除了ABS_MT事件外还上报BTN_TOUCH或ABS_PRESSURE之一,则最后一个SYN_MT_REPORT事件可能被忽略。另外,最后的SYN_REPORT会被输入内核放弃,从而导致没有空触事件到达用户层。
,上报的时序如下:
由于slot被修改为0,因此这个ABS_MT_SLOT被忽略。这条信息移除了slot 0和触点45的联系,因此销毁触点45同时释放slot 0给另外的触点再次使用。
总结对比一下两个触摸协议的区别:
其中第3个参数,可设置的flags包括:
可以使用‘|’运算来同时设置多个flags标识
2.3.3 input_mt_report_slot_state
其中第2个参数,tool_type包括:
其中第2个参数,code包括:
2.3.5 input_mt_report_pointer_emulation
3 input子系统上报数据含义讲解
例如,如果要使用的inpu件功能,就需要注册事件,若还要使用连按功能,需要注册事件。
具体的定义在input.h文件中:
修改 drivers/input/touchscreen 目录下的 Makefile,在最下面添加下面一行:
5 总结

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/177962.html