热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

嵌入式开发板:迅为6818平台下QT鼠标与触摸屏交互问题解析

在迅为6818嵌入式开发平台上,使用QT4.7时,虽然鼠标功能正常,但触摸屏却存在明显问题。特别是在左右滑动QT界面时,触摸响应方向与实际操作相反,导致用户体验极差。本文将深入分析这一现象的原因,并提供有效的解决方案,以改善触摸屏的交互体验。
QT 鼠标和触摸的问题 背景 在使用迅为提供的QT4.7的时候,鼠标可以正常使用,有触摸但是触摸会出现问题。尤其是在左右滑动qt界面的时候,总是会出现往左滑动,画面急速往右走,然而往右滑动,画面急速的往左走。




.解决办法 QT4.7系统 打开/bin/qt4 找到这句话: export QWS_MOUSE_PROTO='MouseMan:/dev/input/mice Tslib:/dev/input/event2' 然后改为这样: export QWS_MOUSE_PROTO='MouseMan:/dev/input/mouse1 Tslib:/dev/input/event2'



然后保存退出,在“插上鼠标”的情况下,重启开发板。(这里注意开机后首先看一下这个文件是不是已经改了,如果没有修改成功,就再按照这个中方法修改一下,确保这个文件修改成功) 这样Qt4.7系统就支持了鼠标和就触摸了




分析和总结 .为什么修改成这样触摸就不会出现问题了呢? 看一下QT4.7改之前的这句话 exportQWS_MOUSE_PROTO='MouseMan:/dev/input/mice Tslib:/dev/input/event2' 其中 MouseMan:/dev/input/mice 用来配置鼠标的节点 Tslib:/dev/input/event2 用来配置触摸 在控制台输入cat MouseMan:/dev/input/mice    然后不论触摸屏幕还是使用鼠标,都会有乱码打印出来。这就证明mice节点会接收来自鼠标和触摸两方面的事件,所以会造成干扰,导致触摸不准确。然后输入cat MouseMan:/dev/input/mouse1 的时候之后再使用鼠标的时候会打印乱码,在触摸时候不会,这样就不会造成干扰。

 

.这样修改之后,系统确实是支持鼠标和触摸了,但是鼠标不能够热插拔。也就是说要想使用鼠标,必须得在插上鼠标的情况下开机。关于这个原因,我在调试的时候发现:

 

之前鼠标使用的节点/dev/input/mice不论鼠标有没有插上都会存在,而之后鼠标用的节点/dev/input/mouse1只有在鼠标插上的时候出现。所以当开机事,开机脚本运行时,如果没有鼠标,可能鼠标的配置就不会生效。



另外在调试过程中可以使用命令 cat /proc/bus/input/devices 来查看各个输入设备是否接入,和他们的设备节点。   以上的步骤只是在迅为的4412精英版上试验过,其他的没有一步步验证,但是道理都是一样的。使用的开发板不同,也许鼠标和触摸驱动对应的节点会不一样。可以使用上面提到的cat /proc/bus/input/devices命令来查看不同输入设备所对应的的设备节点。触摸屏的驱动是Name="ft5x0x_ts";对于鼠标,可以通过拔掉鼠标和插上鼠标两种情况下输入这个命令看一下会增加那一项来确定鼠标的节点。



由于经验有限,以上都是我个人的理解,可能有误。所以请大家以批判的心态来阅读这个文档。多谢在调试过程中对我进行帮助的同事们,今天有空把这个过程整理出来,以防以后忘记。

 

详情了解:http://topeetboard.com  更多了解:https://arm-board.taobao.com

 

 

 

 


推荐阅读
  • 嵌入式开发环境搭建与文件传输指南
    本文详细介绍了如何为嵌入式应用开发搭建必要的软硬件环境,并提供了通过串口和网线两种方式将文件传输到开发板的具体步骤。适合Linux开发初学者参考。 ... [详细]
  • 主调|大侠_重温C++ ... [详细]
  • 本文详细介绍了如何解压并安装MySQL集群压缩包,创建用户和组,初始化数据库,配置环境变量,并启动相关服务。此外,还提供了详细的命令行操作步骤和常见问题的解决方案。 ... [详细]
  • 软件工程课堂测试2
    要做一个简单的保存网页界面,首先用jsp写出保存界面,本次界面比较简单,首先是三个提示语,后面是三个输入框,然 ... [详细]
  • CentOS 7.6环境下Prometheus与Grafana的集成部署指南
    本文旨在提供一套详细的步骤,指导读者如何在CentOS 7.6操作系统上成功安装和配置Prometheus 2.17.1及Grafana 6.7.2-1,实现高效的数据监控与可视化。 ... [详细]
  • 本文将指导如何向ReactJS计算器应用添加必要的功能,使其能够响应用户操作并正确计算数学表达式。 ... [详细]
  • ABBYY FineReader:高效PDF转换、精准OCR识别与文档对比工具
    在处理PDF转换和OCR识别时,您是否遇到过格式混乱、识别率低或图表无法正常识别的问题?ABBYY FineReader以其强大的功能和高精度的识别技术,完美解决这些问题,帮助您轻松找到最终版文档。 ... [详细]
  • 深入解析SpringMVC核心组件:DispatcherServlet的工作原理
    本文详细探讨了SpringMVC的核心组件——DispatcherServlet的运作机制,旨在帮助有一定Java和Spring基础的开发人员理解HTTP请求是如何被映射到Controller并执行的。文章将解答以下问题:1. HTTP请求如何映射到Controller;2. Controller是如何被执行的。 ... [详细]
  • This post discusses an issue encountered while using the @name annotation in documentation generation, specifically regarding nested class processing and unexpected output. ... [详细]
  • 本文详细介绍了如何在云服务器上配置Nginx、Tomcat、JDK和MySQL。涵盖从下载、安装到配置的完整步骤,帮助读者快速搭建Java Web开发环境。 ... [详细]
  • 本文介绍如何配置SecureCRT以正确显示Linux终端的颜色,并解决中文显示问题。通过简单的步骤设置,可以显著提升使用体验。 ... [详细]
  • 深入解析Spring Boot自动配置机制
    本文旨在深入探讨Spring Boot的自动配置机制,特别是如何利用配置文件进行有效的设置。通过实例分析,如Http编码自动配置,我们将揭示配置项的具体作用及其背后的实现逻辑。 ... [详细]
  • 随着技术社区的发展,越来越多的技术爱好者选择通过撰写博客来分享自己的学习经验和项目进展。本文将介绍一个具体案例,即将一套原本运行于Windows平台的代码成功移植到Linux(Redhat)环境下的过程与挑战。 ... [详细]
  • 本文详细介绍了如何在现有的Android Studio项目中集成JNI(Java Native Interface),包括下载必要的NDK和构建工具,配置CMakeLists.txt文件,以及编写和调用JNI函数的具体步骤。 ... [详细]
  • 本文详细介绍了使用ZooKeeper构建高可用集群的方法,包括必要的软件环境准备、配置文件调整及集群启动等关键步骤。通常,一个ZooKeeper集群由奇数个节点组成,以确保Leader选举的有效性。 ... [详细]
author-avatar
YYYan1023
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有