28、TSP调试案例:某项目鬼点问题分析、某项目断触问题分析

做触摸屏驱动这些年,我调试过的问题少说也有上百个了。但要说最让人头疼的,还得是「鬼点」和「断触」这两个老冤家。一个是你没碰屏幕它乱跳,一个是你明明在划它却断断续续。今天我就拿两个真实项目案例,跟大伙儿聊聊我是怎么一步步把它们揪出来的。

案例一:某项目鬼点问题分析

先说说鬼点。什么叫鬼点?就是屏幕上莫名其妙出现触摸点,有时候是一个,有时候是一串,像闹鬼一样。我记得有个项目,量产前突然爆出这个问题——手机待机时,屏幕中间区域会随机出现触摸事件,导致系统误唤醒。

问题现象

  • 待机状态下,屏幕中间区域偶发触摸上报
  • 触摸点坐标集中在 (540, 960) 附近,偏差不超过 20px
  • 每次鬼点持续 1-3 帧,然后自动消失
  • 用示波器抓 INT 引脚,发现确实有异常脉冲

排查思路

遇到这种问题,我一般会先问三个问题:

  1. 是硬件噪声还是软件误报?——先断开 TP 的 I2C 通信,看 INT 引脚是否还有脉冲
  2. 是单点还是多点?——鬼点坐标是否固定,还是随机飘移
  3. 和环境有关吗?——充电时、强光下、高温环境是否更容易复现

嗯,这个项目的情况比较典型。我让测试同事把手机放在屏蔽箱里,鬼点就消失了。这说明问题出在外部干扰上。

根因定位

我带着示波器去产线蹲了半天,终于发现了端倪。当手机靠近充电器的开关电源时,TP 的 VDD 电源线上会叠加一个 200mV 左右的纹波,频率刚好落在触摸扫描的频段内。

关键发现:电源纹波耦合到触摸传感器,导致基线漂移,触发了误报。

解决方案

方案 效果 代价
增加 VDD 滤波电容(10μF + 0.1μF) 纹波降到 50mV 以下 PCB 面积增加 2mm²
修改固件基线更新策略 抑制低频漂移 需重新烧录固件
调整扫描频率避开干扰频段 彻底规避 需重新校准

我最终采用了「硬件滤波 + 固件策略」的组合方案。硬件上在 TP 供电入口加了 π 型滤波,固件里把基线更新速率从每帧一次改为每 10 帧一次。改完后,鬼点再没出现过。

我的经验:鬼点问题 80% 是电源噪声引起的。下次你遇到类似问题,先别急着改代码,拿示波器看看 VDD 和 VCC 的波形再说。

案例二:某项目断触问题分析

断触比鬼点更恶心。鬼点至少还能复现,断触往往是「十次里出现一两次」,而且用户一拿到售后手里就正常了。我做过一个项目,用户反馈玩游戏时手指滑动会突然中断,尤其是屏幕边缘区域。

问题现象

  • 手指在屏幕边缘滑动时,触摸点突然丢失 100-200ms
  • 屏幕中间区域正常,边缘区域概率性断触
  • 用湿手指操作时,断触概率明显升高
  • 低温环境下(低于 10°C)更容易复现

排查过程

说实话,刚开始我以为是固件算法的问题。但看了半天代码,逻辑上没毛病。后来我让硬件同事帮忙测了一下屏幕的 Rx 通道阻抗,发现边缘通道的阻抗比中间高了 30%。

为什么会这样?我拆开屏幕模组一看,发现边缘的银浆走线有轻微腐蚀。嗯,这应该是制程问题——银浆在边缘区域涂布不均匀,导致阻抗偏大。

根因分析

阻抗偏大会带来两个后果:

  1. 信噪比下降——信号衰减了,噪声没变,SNR 从 40dB 掉到 25dB
  2. 基线波动变大——阻抗高的通道更容易受温度和湿度影响

湿手指操作时,手指和屏幕之间的耦合电容变大,但高阻抗通道的 RC 常数也变大了,导致信号建立时间不够。说白了就是:硬件底子不行,软件再怎么调也白搭

解决方案

注意:这种硬件问题,靠软件只能缓解,不能根治。我当时的做法是双管齐下。

措施 说明 效果
硬件:更换银浆供应商 新供应商的银浆方阻更低,涂布工艺更稳定 边缘阻抗降低 20%
硬件:增加边缘走线宽度 从 0.3mm 加宽到 0.5mm 阻抗一致性提升
软件:提高边缘通道的增益 在固件中单独配置边缘通道的 PGA 增益 SNR 提升 5dB
软件:增加去抖滤波 对边缘区域的触摸点做 2 帧去抖 断触率降低 70%

我记得当时为了验证效果,我让产线专门做了 500 台机器做极限测试——在 5°C 环境下用湿手指操作。最终断触率从 8% 降到了 0.3% 以下,算是勉强达标了。

两个案例的对比总结

你想想看,鬼点和断触虽然表现不同,但根因往往都出在「信号质量」上。鬼点是噪声太大导致误报,断触是信号太弱导致漏报。说白了,都是 SNR 不够。

调试口诀:

  • 鬼点先看电源纹波,再看地线回路
  • 断触先测通道阻抗,再看固件策略
  • 硬件问题优先修硬件,软件只能打补丁

我曾经在一个项目上犯过傻——花了两周调固件去修一个硬件问题,最后发现是 FPC 连接器没压紧。从那以后,我养成了一个习惯:遇到触摸问题,先做硬件排查,再做软件分析。顺序搞反了,你就是在浪费时间。

SVG:TSP 调试决策流程图

TSP 调试决策流程图 遇到触摸问题 鬼点?还是断触? 鬼点 → 检查电源纹波 断触 → 检查通道阻抗 示波器抓 VDD/VCC 波形 万用表测 Rx/Tx 阻抗 硬件问题 → 修硬件 软件问题 → 调固件 先硬件后软件,顺序搞反了就是在浪费时间

这张图是我自己总结的调试流程。每次遇到触摸问题,我就按这个顺序走一遍,基本不会漏掉关键点。你下次调试的时候,也可以试试看。


公众号:蓝海资料掘金营,微信deep3321