Other Parts Discussed in Thread: TSC2017
Hi dear volks,
We use the TSC2013 AUX input for measuring some external voltage, as suggested in "SLVSC89A/8.1.1 Auxilliary Measurement".
This is our equation to calculate single touch coordinates (we don't need dual touch):
u16 TscGetY (void)
{
i16 y1 = TscKeysGetMirroredReg (TSC_DRN_Y1);
i16 y2 = TscKeysGetMirroredReg (TSC_DRN_Y2);
i16 y;
if (y1 >= y2)
y = y2 + (y1 - y2) / 2;
else
y = y1 + (y2 - y1) / 2;
return (y < 0) ? 0: y;
}
It deliveres quite good precision for higher touch pressure, but when slowly releasing touch pressure, the results run away more and more (up to 30% or even more) in a reproduceable systematic way (not noise).
The touch panel we use is quite small (30mm x 60mm) but still i'd expect much better precision, am i right here?
So i have some questions:
1. Does the TSC2013 internally (or in host MCU postprocessing) need an external R_Sense for precise single touch operation?
2. Is there any mathematical way to compensate the error we get at light touches? E. g. by taking into consideration the resistor values specified in the touch panel datasheet?
Also, i feel that considering Z1 and Z2 might help in some mathematical way. But alas, my math abilities are not quite sufficient...
Any help will be highly appreciated. Thanks a lot in advance!
Best regards,
Al