您尚未登录。

#1 全志 SOC » T113-Qt+tslib+USB触摸屏使用出现坐标不正常问题 » 2024-08-29 16:58:13

入坑王者
回复: 0

问题描述:

使用usb触摸屏作为输入型号eGalax的控制器 ,使用ts_test命令进行测试,坐标很稳定很正常。Qt运行起来后,点击按压时坐标很正常很准、灵敏,但是坐标立马飘向了0,0点,现象就是有按压,没有抬起的动作。

排查问题思路:

1、首先考虑是驱动问题,查阅资料指向的也是出现输入事件编号,目前系统已经识别可以查询到事件编号。由此大概率不是驱动问题

2、考虑是tslib库的原因,经过查阅资料得知默认不支持galax,但是ts_test命令进行测试,坐标很稳定很正常,因此改原因暂时搁置

3、考虑是ts.conf配置文件导致坐标出现漂移,修改以下参数后,发现ts_test命令进行测试都不正常了,最后修改为默认值

      pthres 为Tslib 提供的触摸屏灵敏度门槛插件 默认参数为pmin=1;
  variance 为Tslib提供的触摸屏滤波算法插件 默认参数为delta=30;
  dejitter 为Tslib 提供的触摸屏去噪算法插件 默认参数为delta=100;
   linear为Tslib 提供的触摸屏坐标变换插件。

4、考虑Qt调用tslib库出现问题,经过多个网页的搜索,关注到

https://cloud.tencent.com/developer/ask/sof/112281322
里面提到tslib与qt自带的库相互干扰这一细节。
很是怀疑是Qt调用tslib库出现问题,最后定位到配置出现问题,

结果:
最后通过查询Qt的输入设备的资料,明白Qt有自带的libinput或是使用第三方的输入设备库,也就有其中的tslib,修改Qt配置

 export QT_QPA_FB_TSLIB=1
 export QT_QPA_EGLFS_DISABLE_INPUT=1
 export QT_QPA_FB_DISABLE_INPUT=1

#2 Re: 全志 SOC » T113-S配置4线电阻屏 » 2023-03-08 17:08:46

设备树里面定义的是时钟频率,需要修改的是采样频率

#3 全志 SOC » T113-S配置4线电阻屏 » 2023-02-03 16:03:52

入坑王者
回复: 2

利用自带的TPADC实现触摸功能

一、移植tslib,(这没有好写的,网上资料一大把)
二、修改电阻屏驱动文件
  1、移植好tslib库后,每次点击都要等1秒左右才有反应,所以着手修改驱动文件
  2、根据dts找到驱动文件sunxi4-ts.c(我拿到的sdk是该文件,可能有些差异)
  3、根据数据手册查看寄存器,可以看出
      (TP_SENSITIVE_ADJUST)检测下压灵敏度-----最大0xf
      (PRE_MEA_THRE_CNT)触摸灵敏度-----------默认值0xfff
      (FILTER_EN)滤波使能------------------------开启
  4、修改寄存器值
       (ADC_CLK_DIVIDER)ADC时钟分频----------2
       (FS_DIV)ADC采样频率分频-------------------7
       (TACQ)ADC获取时间--------------------------63
       (PRE_MEA_THRE_CNT)触摸灵敏度----------0xffffff
修改后就很湿滑。
三、总结
   1、取消滤波使能,能加快一点反应速度,但是很有限
   2、最终还是因为默认给的TPADC的频率太低 ,导致触摸延迟

页脚

工信部备案:粤ICP备20025096号 Powered by FluxBB

感谢为中文互联网持续输出优质内容的各位老铁们。 QQ: 516333132, 微信(wechat): whycan_cn (哇酷网/挖坑网/填坑网) service@whycan.cn