T527 Qt 触摸 ----- TSLIB

2024-04-10 12:36
文章标签 qt 触摸 tslib t527

本文主要是介绍T527 Qt 触摸 ----- TSLIB,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、调试

1、驱动路径

bsp/drivers/input/ctp/gt9xx/gt9xx_ts.c

2、硬件接口

挂载在TWI0下

3、中断复位脚

4、设备树

&twi0 {clock-frequency = <400000>;pinctrl-0 = <&twi0_pins_default>;pinctrl-1 = <&twi0_pins_sleep>;pinctrl-names = "default", "sleep";/* For stability and backwards compatibility, we recommend setting ‘twi_drv_used’ to 1 */twi_drv_used = <1>;twi-supply = <&reg_dcdc4>;status = "okay";gt9xx {compatible = "goodix,gt9xx";reg = <0x5d>;status = "okay";irq-gpios = <&pio PD 20 GPIO_ACTIVE_LOW>;irq-flags = <2>;reset-gpios = <&pio PD 21 GPIO_ACTIVE_LOW>;vdd_ana-supply = <&reg_dcdc4>;touchscreen-max-id = <11>;touchscreen-size-x = <1280>;touchscreen-size-y = <800>;touchscreen-max-w = <512>;touchscreen-max-p = <512>;//touchscreen-key-map = <172>, <158>; /*KEY_HOMEPAGE=172, KEY_BACK=158,KEY_MENU=139*/goodix,slide-wakeup = <0>;goodix,type-a-report = <1>;goodix,driver-send-cfg = <0>;goodix,send-cfg-id = <0>;goodix,resume-in-workqueue = <0>;goodix,int-sync = <1>;goodix,revert_x = <0>;goodix,revert_y = <0>;goodix,swap-x2y = <0>;goodix,tp_idle_support = <1>;goodix,esd-protect = <1>;goodix,auto-update-cfg = <0>;goodix,power-off-sleep = <1>;goodix,pen-suppress-finger = <0>;/* GT9271_Config_20221222_v67.cfg*/goodix,cfg-group0 = [B4 00 05 20 03 0A 3D 00 01 0A28 0F 50 32 03 05 00 00 00 0000 00 06 17 19 1F 14 8E 2E 992D 2F 35 11 00 00 00 1A 03 1000 00 00 00 00 00 00 00 00 0000 32 50 94 D5 02 07 00 00 048E 48 00 8A 4D 00 86 53 00 8359 00 80 60 00 80 00 00 00 0000 00 00 00 00 00 00 00 00 0000 00 00 00 00 00 00 00 00 0000 00 00 00 00 00 00 00 00 0000 00 00 01 04 05 06 07 08 090C 0D 0E 0F 10 11 14 15 16 17FF FF FF FF FF FF FF FF FF FFFF FF 28 27 26 25 24 23 22 2120 1F 1E 1C 1B 19 13 12 11 100F 0D 0C 0A 08 07 06 04 02 00FF FF FF FF FF FF FF FF FF FFFF FF FF FF AB 01];};
};

5、buildroot 构建

项目根路径执行./build.sh buildroot_menuconfig,选择tslib相关配置:

问题1:编译烧录无tslib插件,厂家的opengl库被qt覆盖的问题的。

makefile 修改后编译无法执行,需要删除out目录下,才会重新执行。

rm -rf out/t527/demo_linux_car/buildroot/buildroot/build/gpu_um_pub/

发现: qtbase 也会编译 eglfs, 导致覆盖了了厂家库, 需要执行上面的操作,让最后生成的厂家库覆盖qt编译的opengl。

二、验证测试

1、驱动

烧录后加载了对应驱动

2、系统指令 hexdump 测试

hexdump /dev/input/event3可以读取触摸/dev/input/eventX设备的原始数据,确认驱动可以上报数据。

3、读取事件

cat /dev/input/event3

4、文件系统存在 tslib 插件库。

存在

5、文件系统配置 Qt 插件路径和tslib 环境变量。

env查看环境变量,更改自己的配置

(rootfs修改:buildroot/package/auto/rootfs/etc/profile.d/qtenv.sh)

缺少tslib的库文件,触摸无反应,移植现有的tslib的库文件到buildroot/package/auto/rootfs/usr/lib目录下(需要库文件可联系我)

修改环境变量:

6、Qt GUI验证

Qt显示旋转方向和触摸旋转方向不一致

在buildroot/package/auto/rootfs/etc/profile.d/qtenv.sh中修改:

修改后应用启动后验证触摸和显示一一映射,准确且正确映射。 

7、触摸不准

之前用ts_calibrate校准过,电容屏不需要校准,删除校准文件pointercal

路径:export TSLIB_CALIBFILE=/etc/pointercal

这篇关于T527 Qt 触摸 ----- TSLIB的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/891078

相关文章

基于Qt Qml实现时间轴组件

《基于QtQml实现时间轴组件》时间轴组件是现代用户界面中常见的元素,用于按时间顺序展示事件,本文主要为大家详细介绍了如何使用Qml实现一个简单的时间轴组件,需要的可以参考下... 目录写在前面效果图组件概述实现细节1. 组件结构2. 属性定义3. 数据模型4. 事件项的添加和排序5. 事件项的渲染如何使用

基于Qt开发一个简单的OFD阅读器

《基于Qt开发一个简单的OFD阅读器》这篇文章主要为大家详细介绍了如何使用Qt框架开发一个功能强大且性能优异的OFD阅读器,文中的示例代码讲解详细,有需要的小伙伴可以参考一下... 目录摘要引言一、OFD文件格式解析二、文档结构解析三、页面渲染四、用户交互五、性能优化六、示例代码七、未来发展方向八、结论摘要

python与QT联合的详细步骤记录

《python与QT联合的详细步骤记录》:本文主要介绍python与QT联合的详细步骤,文章还展示了如何在Python中调用QT的.ui文件来实现GUI界面,并介绍了多窗口的应用,文中通过代码介绍... 目录一、文章简介二、安装pyqt5三、GUI页面设计四、python的使用python文件创建pytho

QT实现TCP客户端自动连接

《QT实现TCP客户端自动连接》这篇文章主要为大家详细介绍了QT中一个TCP客户端自动连接的测试模型,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录版本 1:没有取消按钮 测试效果测试代码版本 2:有取消按钮测试效果测试代码版本 1:没有取消按钮 测试效果缺陷:无法手动停

基于Qt实现系统主题感知功能

《基于Qt实现系统主题感知功能》在现代桌面应用程序开发中,系统主题感知是一项重要的功能,它使得应用程序能够根据用户的系统主题设置(如深色模式或浅色模式)自动调整其外观,Qt作为一个跨平台的C++图形用... 目录【正文开始】一、使用效果二、系统主题感知助手类(SystemThemeHelper)三、实现细节

Qt实现文件的压缩和解压缩操作

《Qt实现文件的压缩和解压缩操作》这篇文章主要为大家详细介绍了如何使用Qt库中的QZipReader和QZipWriter实现文件的压缩和解压缩功能,文中的示例代码简洁易懂,需要的可以参考一下... 目录一、实现方式二、具体步骤1、在.pro文件中添加模块gui-private2、通过QObject方式创建

Qt QWidget实现图片旋转动画

《QtQWidget实现图片旋转动画》这篇文章主要为大家详细介绍了如何使用了Qt和QWidget实现图片旋转动画效果,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 一、效果展示二、源码分享本例程通过QGraphicsView实现svg格式图片旋转。.hpjavascript

嵌入式QT开发:构建高效智能的嵌入式系统

摘要: 本文深入探讨了嵌入式 QT 相关的各个方面。从 QT 框架的基础架构和核心概念出发,详细阐述了其在嵌入式环境中的优势与特点。文中分析了嵌入式 QT 的开发环境搭建过程,包括交叉编译工具链的配置等关键步骤。进一步探讨了嵌入式 QT 的界面设计与开发,涵盖了从基本控件的使用到复杂界面布局的构建。同时也深入研究了信号与槽机制在嵌入式系统中的应用,以及嵌入式 QT 与硬件设备的交互,包括输入输出设

【QT】基础入门学习

文章目录 浅析Qt应用程序的主函数使用qDebug()函数常用快捷键Qt 编码风格信号槽连接模型实现方案 信号和槽的工作机制Qt对象树机制 浅析Qt应用程序的主函数 #include "mywindow.h"#include <QApplication>// 程序的入口int main(int argc, char *argv[]){// argc是命令行参数个数,argv是

Python QT实现A-star寻路算法

目录 1、界面使用方法 2、注意事项 3、补充说明 用Qt5搭建一个图形化测试寻路算法的测试环境。 1、界面使用方法 设定起点: 鼠标左键双击,设定红色的起点。左键双击设定起点,用红色标记。 设定终点: 鼠标右键双击,设定蓝色的终点。右键双击设定终点,用蓝色标记。 设置障碍点: 鼠标左键或者右键按着不放,拖动可以设置黑色的障碍点。按住左键或右键并拖动,设置一系列黑色障碍点