主题中讨论的其他器件: TSC2007
工具/软件:Linux
大家好
我们设计了定制硬件、包括 TSC2003控制器。 我们正在处理以下问题。 TSC2003有时会报告错误的新闻。 发生这种情况时、X 坐标错误、而 Y 坐标正确。
我们注意到、当报告的 X 坐标出错时、Z1值为0。 这是在触摸事件之后执行转换的代码。
/* y-仍然打开;仅打开 y+(和 ADC)*/
tsc2007_xfer (TSC、ACTIVE_YN);
tc->y = tsc2007_xfer (tSC、read_Y);
/*关闭 y-、x+打开、然后保持低功耗*/
tsc2007_xfer (TSC、ACTIVE_XN);
tc->x = tsc2007_xfer (tSC、read_X);
/*关闭 y+、x-打开;我们将使用公式#1 */
tsc2007_xfer (TSC、ACTIVE_YP_XN);
tc->z1 = tsc2007_xfer (tSC、read_z1);
TC->Z2 = tsc2007_xfer (TSC、READ_Z2);
/*准备下一个触摸读数-关闭 ADC 电源、启用 PENIRQ */
tsc2007_xfer (TSC、PWRDOWN);
如果我们理解正确、Z1=0在 Z1绝不应为0的意义上是不一致的。 Z1=0是否可能是由硬件问题引起的? 一般而言,什么可以解释这种不一致的价值?
提前感谢您。

