最近公司产品在原有基础上增加一个触摸功能,因电路已经定型,只有usb接口引出来,所以只能选用市面上usb接口的触摸屏,联系了多家触摸屏代理商,移植时都存在问题。

公司产品用的平台是: PXA270 + linux2.6.27 +QT,触摸屏校准用的是tslib。

几家厂商的触摸屏连接到板上后,系统几乎都能检测到该设备,cat /dev/input/event2 或者cat /dev/hiddev0后,点击触摸屏后,终端都有乱码数据输出,这说明触摸屏驱动是没有什么问题的了,但使用tslib校准时,总是提示selected device is not a touchscreen。运行QT程序后,程序也检测不了触摸屏输入。

百思不得其解,为了解决这个问题,花了我很长的时间,尝试了各种方法,坑爹啊,开始是怀疑tslib版本不行,所以从网上下载了好几个版本tslib编译,下载,执行,但都不行,之后便想不用tslib,而是用QT自带的校准程序linuxtp,于是重新编译QT,编译时加上选项qt-mouse-linuxt,去掉qt-mouse-tslib。编译好,下进板子,校准,还是不行。泪奔了。

在快要跳楼的时候,救星来了。一个厂商发来一个驱动,打开一个,是需要更改tslib源码,顿时醒悟,幸福滴又泪奔了一次。原来usb触摸屏驱动和tslib接口不一致,需要修改tslib源码,tslib才能读取到驱动数据。

重新编译tslib,下载进板子,执行ts_caculate,久违的触摸屏校准界面终于出现了,校准后,QT程序也能检测到触摸屏输入了。

回想整个过程,觉得是自己对tslib理解还不够深入,导致了前期总是在操作,配置上花费了很多很多的时间,试想一下,如果对tslib有深入的了解,知道它是如何读取数据的,如何传递数据给QT的,我想我也不会走这么多弯路了。

usb触摸屏驱动移植相关推荐

  1. linux内核关闭触摸屏校准,linux内核usb触摸屏驱动bug调试- selected device is not a touchscreen I understand...

    近期给客户调试一块数控板,今天客户带过来一个屏,并且有一个usb的触摸屏芯片接在屏上.屏很快就弄好正常显示. 触摸屏在内核下找到usb 触摸屏驱动,内核启动后这个usb转的触摸屏也正常找到,注册为ev ...

  2. 移植基于linux-2.6.26.5内核s3c2410触摸屏驱动移植

    移植基于linux-2.6.26.5内核s3c2410触摸屏驱动移植的过程记录下来: (1)首先打一个补丁:s3c2410_touchscreen.patch, 在内核解压的根目录下 patch -N ...

  3. NUC972触摸屏驱动移植过程分析(二)

    https://blog.csdn.net/b7376811/article/details/86607529 今天继续分析NUC972的触摸屏驱动移植过程,上一节主要分析了触摸屏需要数据,今天来分析 ...

  4. 嵌入式linux usb wifi驱动移植

    文档名称:嵌入式linux usb wifi驱动移植 版本历史 版本号        时间        内容 v1.0b001        2012-6-18        初始版本,介绍在嵌入式 ...

  5. EP-N8530S USB WIFI 驱动移植

    /************************************************************************ EP-N8530S USB WIFI 驱动移植* 说 ...

  6. 9.触摸屏驱动移植实战

    转自 https://edu.csdn.net/lecturer/505 朱老师物联网大讲堂 <5.linux驱动开发-第9部分-5.9.触摸屏驱动移植实战> 第一部分.章节目录 5.9. ...

  7. 2.6.36.2 s3c6410 触摸屏驱动移植。

    CSDN_Acanoe 的博客:http://blog.csdn.net/ACanoe 硬件环境:OK6410 A板,4.3 寸TFT 屏.  移植内核:Linux2.6.36.2 . 参考内核: 飞 ...

  8. FL2440移植LINUX-3.4.2 -- 按键驱动和触摸屏驱动移植

    (一)先移植按键输入子系统驱动: 拿过去编译,改错,然后insmod: (二)触摸屏驱动拿过去编译,改错,然后insmod: 触摸屏驱动的使用: 编译: tar xzf tslib-1.4.tar.g ...

  9. usb触摸屏驱动 - usbtouchscreen

    驱动编译: 目前的kernel中都是自带了usbtouchscreen驱动的,我的版本3.1.10 源码位于:/kernel/drivers/input/touchscreen/usbtouchscr ...

最新文章

  1. shell脚本之日志拆分和监听
  2. zephyr 系统--- 内存池使用方法
  3. 一个即将写入MySQL源码的官方bug解决之路
  4. Neo4j:Cypher – Neo.ClientError.Statement.TypeError:不知道如何添加Double和String
  5. 设计模式-Builder和Factory模式区别
  6. 7年,OpenStack从入门到放弃
  7. linux系统软Raid高可用配置
  8. 1.2、Mybatis二级缓存测试
  9. java.exe 0xc000012d_应用程序无法正常启动 0xc000012d
  10. 百度云文字识别demo
  11. 五一成都峨眉山三日游 20140501~20140503
  12. Skype for business 界面自动弹出打开
  13. 如何在PDF上添加电子签名?签名技巧分享
  14. 波士顿房价预测(线性回归、岭回归、决策树)
  15. pandas从入门到进阶
  16. 博客网站的选择兼开博通文
  17. 1079.活字印刷(Python)
  18. malloc函数分配内存失败的原因及解决方法
  19. oracle怎么查日记账,Oracle EBS 导入日记账报错
  20. ICE简介及C++程序例子

热门文章

  1. intelx86为何从0xFFFF0处执行
  2. 机器学习:kNN算法(一)—— 原理与代码实现(不调用库)
  3. CDN及其加速原理(详解)
  4. QGraphicsItem实现动态蝴蝶(QT5开发及实例)
  5. 无线蓝牙耳机哪个品牌好?蓝牙降噪耳机品牌推荐
  6. 建设一个SaaS平台需要知道什么,做什么(附多图)
  7. saas平台 saas服务 什么是saas
  8. cot函数 java_MySQL 数学函数
  9. 【Python爬虫学习实践】多线程爬取Bing每日壁纸
  10. 基于asp.net综合管理系统源码,三层架构