电阻式触摸屏的硬件接口电路与校准算法

合集下载

电阻触摸屏三点校准法

电阻触摸屏三点校准法

三点校准法三点校准法较之前面介绍的二点校准法更为精确。

当触摸屏与液晶屏间的角度差很小时,经过推理可以假设触摸屏与液晶显示器各点之间的对应关系为(假设液晶显示器的坐标为(XD, YD),触摸屏的坐标为(X,Y)):XD = AX + BY + CYD =DX + EY + F因为要取三个点进行校准,所以存在六个变量,即要通过六个方程式求出液晶显示器的坐标。

此处要求三个点尽量分散,最好为左上角、中间、右下角三点。

得:XD0 = AX0 + BY0 + CXD1 = AX1 + BY1 + CXD2 = AX2 + BY2 + CYD0 = DX0 + EY0 + FYD1 = DX1 + EY1 + FYD2 = DX2 + EY2 + F可求出 A、B、C、D、E、F的值,一旦这些参数值定下来,便可利用上面的方程组,通过触摸屏上的原始数据计算出它在LCD显示器上的对应点。

推导得出将K作为各方程式的公分母,便可得出未知量:K = (X0-X2)(Y1-Y2)-(X1-X2)(Y0-Y2)A = ((XD0-XD2)(Y1-Y2)-(XD1-XD2)(Y0-Y2))/KB = ((X0-X2)(XD1-XD2)-(XD0-XD2)(X1-X2))/KC = (Y0(X2XD1-X1XD2) + Y1(X0XD2-X2XD0) + Y2(X1XD0-X0XD1))/KD = ((YD0-YD2)(Y1-Y2)-(YD1-YD2)(Y0-Y2))/KE = ((X0-X2)(YD1-YD2)-(YD0-YD2)(X1-X2))/KF = (Y0(X2YD1-X1YD2) + Y1(X0YD2-X2YD0) + Y2(X1YD0-X0YD1))/K。

电阻技术触摸屏的校正算法及应用编程设计

电阻技术触摸屏的校正算法及应用编程设计
式 23 —
Y B=Y A 4 K ( B Y L L Y Y — A) -
由式 2 2我们 可 以推 出计 算 K系数 的公式 —
K = X B— A ) × — A) X ( L XL / B X (
K = Y B— A) Y — A) Y ( L YL / B Y (
3触摸屏应用的编程思路
维普资讯
21穰 述 , 窳 薪 周知 ,基于 电阻技 术触摸 屏分 为四线 电阻触 摸
屏 、 线 电阻触摸 屏或 更多线 电阻触 摸屏 , 薹 但无 论哪一 类
电阻触摸屏都有一个最大共性. 电压成线性均匀分布 正
圉21 —
222逻辑坐标 的计算 . 由于 电阻式触摸 屏的 电压 成线 性均匀 分布 ,那 么 ~ D转换 后 的坐标 也成线 性。假 如我们 将液晶 最左 下角点 221物理坐 标和逻辑 坐标 . 对应 的触撞 屏上 的点定 为物 理坐标 原点 A其 物理坐 标记
式 2 —1
K ={ L —Y C )Y —Y +Y B L / B D) Y ( A L / A C)(L —Y D)Y —Y J Y ( ( / 2 ( 将 C 点逻 辑 坐标 作 为基 坐 标 , 据 式 2 2 触 摸屏 6) 根 — 则 上任 意 一点 F 逻辑 坐标 与基 坐标 的 关系 为 : X F=X C 4K (F—X ) L L XX - C Y F=Y C 4K (F—Y ) L L YY - C 式 24 —
B t n的矩 形 区域 内。 ut o 如果 液 晶上 有若 干 个 B t n区域 , 么我 们将 每 个 ut o 那
() 1 首先在 A C E对 应 的位 置 逐步 用尖状 物触 摸 , 到 B D 得

关于触摸屏校准问题及触摸屏中断过程图解

关于触摸屏校准问题及触摸屏中断过程图解
int i=0; int xt[3],yt[3];
/*把背景填充为红色*/ Brush_Background(0xF800);
/*画校正用的三个十字坐标*/ //真实点(物理点) drawCross(24,32,0xFF0000); Draw_Text_8_16(28,36, 0x0000,0xFFFF, "1") ; drawCross(216,160,0xFF0000); Draw_Text_8_16(220, 164,0x0000,0xFFFF, "2") ; drawCross(120,288,0xFF0000); Draw_Text_8_16(124,292, 0x0000,0xFFFF, "3") ;
图 6.4 四线电阻屏等效电路图
6.5 等待中断模式等效电路
图 6.6 读取 x 坐标时的等效电路图 XZ=A×XJ+B×YJ+C YZ=D×XJ+E×YJ+F
6.7 读取 Y 坐标时的等效电路
D=[(YD0-YD2)×(YT1-YT2)-(YD1-YD2)×(YT0-YT2)] / K
E=[(XT0-XT2)×(YD1-YD2)-(YD0-YD2)×(XT1-XT2)] / K
F = [YT0×(XT2×YD1 - XT1×YD2) + YT1×(XT0×YD2 - XT2×YD0) + YT2×(XT1×YD0-XT0×YD1)] / K
保存下来的参数即可。
LCD 校准
3点校准:6个未知数K1,A1,B1,K2,A2,B2
校准公式:二元一次方程。
*
*
*
பைடு நூலகம்
XZ1,YZ1 XJ1,YJ1 XZ1=K1XJ1+A1YJ1+B1 YZ1=K2XJ1+A2YJ1+B2

电阻式触摸屏数据校准的一种补偿算法

电阻式触摸屏数据校准的一种补偿算法
桎 梏 , L D和 触摸 屏 的 坐标 变换入 手 , 出 了一种 可行 的补 偿 算 法 。 从 C 给
【 关键词】 触摸屏 ;C 坐标 ; : L D; 补偿 ; 算法
l 引 言 、
P=KX O Y X ' 、+ + T o[. -  ̄ + le X KY Y】 T K
即:
P= KR oO O R iO X , s 0 e cs+ T D【 cs- K s + TK i + KR oOY ] n n
根 据 式 1得 :.
XI AXlBYl C ) l = + + Xm AX2 BY + = + !C
Ym=DX EYo +F
Ym= DXIE + + YIF
Ym= DX +EY2+F
由上 面的 方 程 得 到 :
K (0x (-Y)( - Y— 1 =) 一 _Y- 2 XrX (oY 【 9 - j
【 陈文智. 2 】 嵌入 式 系统 开发原 理与 实践. 北京 : 清华 大学 出版社 ,0 5 20 :
2 0 5
[林晓飞, 3 】 林兵 , 张辉 . 于 AR 嵌 入 式 Ln x应 用 开发 与 实例 教 程 . 基 M iu 清
华 大 学 出版 社 . 0 :2 — 3 2 724 22 0
A:—
( D -k z Y - :- x ( o . ) , Y ) ( m-x : Y - : x % ( o) o Y ) ( )

B:—
i , ., ( - ) ( o - o ( -x: f , - ̄ 0 xo x:- x o x O x, x, ) )

,、一
f o XJ X,v) I X : Y (  ̄ 一 X :+Y( o 一X: z) : X 0 Xo o ) X: , Xo X ̄ +Y ( o 一 X O o Xt (Y, Y O Y - 2-(o- m) o Y ) (o - o ( , Y ) Y , Y ( - : ) Y )

四线电阻触摸屏校准算法小结

四线电阻触摸屏校准算法小结
3 + 1得xoff = [(X2 + X1)-xfac(x2 + x1)]/2; //得到x轴方向的偏移量
4 -2得yfac = (Y2 -Y1)/(y2 -y1); //得到y轴方向的比例因子
4 + 2得yoff = [(Y2 + Y1)-yfac(y2 + y1)]/2; //得到y轴方向的偏移量
有如下方程组:
X1 = xfac * x1 + xoff; // 1
Y1 = yfac * y1 + yoff; // 2
X2 = xfac * x2 + xoff; // 3
Y2 = yfac * y2 + yoff; // 4
解得:
3 -1得xfac = (X2 -X1)/(x2 -x1); //得到x轴方向的比例因子
OK!所谓的三点触摸校准,四点触摸校准只不过是加了可靠的滤波算法,因为触摸笔和屏
的接触不是很准确的!而像素点是很小的,所以通常都用四点校准,而且经验证这此算法是
必须加的,否则很不准,参见STM32学习笔记相关实验实验例程,已验证通过理论知识:
*触摸屏实际是在普通的lcd上贴了一个触摸膜,没有原生的触摸屏
B=(Xt[0]-Xt[2])*(Xd1-Xd2)-(Xd0-Xd2)*(Xt[1]-Xt[2]);
C=Yt[0]*(Xt[2]*Xd1-Xt[1]*Xd2)+Yt[1]*(Xt[0]*Xd2-Xt[2]*Xd0)+Yt[2]*(Xt[1]*Xd0-Xt[0]*Xd1);
D=(Yd0 -Yd2)*(Yt[1] -Yt[2]) -(Yd1 -Yd2)*(Yt[0] -Yt[2]);
有3个未知数abc,显然需要3个方程

触摸屏的校准方法

触摸屏的校准方法

本文介绍的校准方法需要三个目标点/或测试点,然后依次进行触摸测试,以确定该显示屏特有的校准因数。

最后通过这些校准因数将触摸屏的对应点与实际显示的对应点完全对应起来。

误差的来源有几个误差源会影响触摸屏控制器,使之无法产生正确的对应点X和Y坐标。

最主要的误差源是电气噪声、机械误差及放大因子。

此外,操作者的误操作也会有所影响,如手指或铁笔按压时间不够长或压力不够大。

以上所有误差均会产生无用数据,必须对它进行纠正补偿才能使触摸屏正常工作。

在各种电气系统中,由热效应或电磁效应以及系统设计缺陷引起的电气噪声无处不在。

在触摸屏中,由于AD转换器的前端电路具有高输入阻抗,因此特别容易受到电气噪声的影响。

除了对带有触摸屏控制器的电路小心布局外,我们通常在AD转换器输入端增加低通滤波器来解决这一问题。

此外也可选择软件方法,舍弃AD转换中的最小的一、两位,并用算法将一些落在允许误差范围之外的数据点从采样流中去除。

这种软件算法也可消除由使用者产生的误差。

本文所阐述的校准方法可用来解决由于机械误差和放大因素引起的误差。

图3中的圆圈表示触摸屏下的LCD显示的图形,椭圆则表示当用户顺着LCD显示的图像画圈时,触摸屏对应点的集合,不过有所夸大。

这个重建的图形显然经过一系列旋转、移位和放大,而且在每个方向变换的参数不一样。

校准的重点则是将触摸屏上显示的这个重建图形经过变换,换算出与LCD显示的图形相一致的对应点集合。

校准的数学基础为了得到一个通用解决方案,我们将每个点描述为一个数学参量。

如图4所示,可将LCD显示器上的每个点当作一个矢量PD,而该点在触摸屏上对应的点则当作矢量P。

此外,我们假设一个参量M,通过这个参量可将PD与P进行换算,即PD=MP(1)这里的M是一个转换矩阵,也是我们要研究的对象。

如果能得到转换矩阵M中相关的数值,那么给定触摸屏上任一点P,我们就可换算出它在LCD显示器上的对应点PD。

现在假设LCD显示器上的任一点都与触摸屏上的某点相对应,但要经过旋转、移位和放大处理。

触摸屏校准方法!!!

触摸屏校准方法!!!

触摸屏及ADS7846/HT20462009-05-15 10:17四线电阻式触摸屏,上图我们看到,触摸屏一般是上线和下线为一组。

左右线为一组,用万用表可以量到阻值。

上下的线阻为(Y+ Y-)阻值为 500欧----680欧。

左右线阻(X+ X-)阻值为 350欧----450欧。

jz4740,的中断计算程序#define SPCS_HIGH v_pSSIGPIORegs->group[SPI_EN_PIN/32].DATS = 1 <<(SPI_EN_PIN%32)#define SPCS_LOW v_pSSIGPIORegs->group[SPI_EN_PIN/32].DATC = 1 << (SPI_EN_PIN%32)#define SPCK_HIGH v_pSSIGPIORegs->group[SPI_CLK_PIN/32].DATS = 1 <<(SPI_CLK_PIN%32)#define SPCK_LOW v_pSSIGPIORegs->group[SPI_CLK_PIN/32].DATC = 1 <<(SPI_CLK_PIN%32)#define SPDA_HIGH v_pSSIGPIORegs->group[SPI_DATA_PIN/32].DATS = 1 <<(SPI_DATA_PIN%32)#define SPDA_LOW v_pSSIGPIORegs->group[SPI_DATA_PIN/32].DATC = 1 <<(SPI_DATA_PIN%32)#define SPDAIN v_pSSIGPIORegs->group[SPI_DATARX_PIN/32].PIN & (1 <<(SPI_DATARX_PIN % 32))//insert 0 ,not insert 1;#define SPDABUSY v_pSSIGPIORegs->group[SPI_BUSY_PIN/32].PIN & (1 <<(SPI_BUSY_PIN % 32))//insert 0 ,not insert 1;//------------------------------------------------------------------------------ void delay(int k){int i;for(i=0;i<k;i++);}void start()//SPI开始{SPCK_LOW;SPCS_HIGH;SPDA_HIGH;SPCK_HIGH;SPCS_LOW;}void WriteCharTo7843(unsigned char num) //SPI写数据{unsigned char count=0;SPCK_LOW;for(count=0;count<8;count++){if ( (num & 0x80) == 0x80)SPDA_HIGH;elseSPDA_LOW;SPCK_LOW;delay(3);SPCK_HIGH;delay(3);num <<= 1;}}int ReadFromCharFrom7843() //SPI 读数据{unsigned char count=0;WORD Num=0;for(count=0;count<12;count++){Num<<=1;SPCK_HIGH;delay(3); //下降沿有效SPCK_LOW;delay(3);if(SPDAIN)Num++;}return(Num);}INT WINAPI SpiISR( VOID ){while ( !g_SpiISR.bISTExist ){int X=0,Y=0,X_,y_;WaitForSingleObject( g_SpiISR.hIntrEvent, INFINITE );Sleep(30);//中断后延时以消除抖动,使得采样数据更准确start(); //启动SPIWriteCharTo7843(0x90); //送控制字 10010000 即用差分方式读X坐标详细请见有关资料delay(2);while(SPDABUSY);SPCK_HIGH; delay(4);SPCK_LOW; delay(4);X=ReadFromCharFrom7843();WriteCharTo7843(0xD0); //送控制字 11010000 即用差分方式读Y坐标详细请见有关资料delay(2);while(SPDABUSY);SPCK_HIGH; delay(4);SPCK_LOW; delay(4);Y=ReadFromCharFrom7843();SPCS_HIGH;RETAILMSG(1, (TEXT("SpiISR X=%d,Y=%d\r\n"),X,Y));InterruptDone( g_SpiISR.dwSwIntr );}return ( 0 );}控制字ADS7846的控制字由表1所列,其中S为数据传输起始标志位,该位必为“1”,A2~A0进行通道选择。

基于S3C6410触摸屏驱动开发及校准算法

基于S3C6410触摸屏驱动开发及校准算法

Touch-screen Driver Development and CalibrationAlgorithms Based on S3C6410Meini WANG 1, Wei ZHAO 2, Yongqiang ZHANG 21Dalian Ocean University, Dalian, China2Neusoft Institute of Information, Dalia, ChinaAbstract: The touch-screen driver of embedded Linux operating system is developed based on the S3C6410 microprocessor. This paper will use three-point calibration algorithm to solve a touch screen mechanical error and adapt to the development of embedded Linux operating system, in particular, Android, QT and etc. Keywords: S3C6410; Touch-screen Driver; Three-point calibration method基于S3C6410触摸屏驱动开发及校准算法王美妮1,赵伟2,张永强21大连海洋大学,大连,中国,1160232大连东软信息学院,大连,中国,116023摘 要:本文基于S3C6410微处理器,开发了嵌入式Linux 操作系统的触摸屏驱动程序。

并利用三点校准算法,解决了触摸屏机械性误差。

适应于嵌入式Linux 操作系统的开发,特别是Android 、QT 等图形界面平台。

关键词:S3C6410;触摸屏驱动;三点校准法1 引言随着3网融合、嵌入式智能终端等的发展,触摸屏作为终端与用户交互的媒介,广泛应用于自动控制、检测监控、教育、展示和生活等领域。

关于电阻式触摸屏的线性校准问题

关于电阻式触摸屏的线性校准问题

关于电阻式触摸屏的线性校准问题1 引言阻性触摸屏与LCD 显示器上的各点很难完全准确配合,因此除了采用精确的机械装配技术校准之外,在使用之前还必须进行软件校准。

本文介绍的校准方法首先确定误差源,然后通过三个选定点导出触摸屏的校准矩阵,并用软件方法来实施点与点之间对应关系的校准。

掌握这种技术,对降低嵌入式系统的成本至关重要。

图1所示是一个阻性触摸屏的横截面,其结构十分简单,由上下相对放置的两层结构构成,FILM 和玻璃的内表面涂上薄薄一层导电材料,并用一些透明绝缘隔离点(绝缘点)将导电表面隔开。

当手指或铁笔按压玻璃表面时,上层FILM 产生弯曲接触下层玻璃。

这种结构中层间的距离决定了触摸屏的敏感度。

层间距离越近,敏感度越小,压力就要越大,以使两层结构可靠接触。

玻璃或图1 阻性触摸屏的横截面 图2 触摸屏的等效电路图2所示是触摸屏的等效电路。

通过一个触摸屏控制器(AD 转换器)将电源的正、负极加到一块玻璃的导电层两端,另一块玻璃上的导电层则起到一个电位计游标的作用。

在玻璃上不同的触摸点,导电的情况也不同,数字转换器上便会录得不同的测试电压值,然后控制器将录得的电压值转换成一个二维坐标:X 轴坐标和Y 坐标。

这些控制器每秒钟可进行200次或更多的采样。

采样率通常与背景噪声和控制器质量有关。

智能控制器还具备其它一些功能,如检测到触摸时中断CPU 、在检测到触摸前设定采样率连续进行采样。

没有触摸时,控制器处于待机状态。

由于阻性触摸屏结构简单、操作易懂、所需软硬件有多个厂商可供选择,因此可用于对成本敏感的设计中。

然而,由于触摸屏与它背后的显示器(LCD 或其它)间的对应点很难完全配合,因此几乎所有带阻性触摸屏的设备在出厂前均要经过一定的校准。

否则在触摸屏上点击某一按钮或选择某项功能时,内置的软件便无法对这一点击做出正确响应。

本文介绍的校准方法需要三个目标点/或测试点,然后依次进行触摸测试,以确定该显示屏特有的校准因数。

电阻式触摸屏的硬件接口电路与校准算法

电阻式触摸屏的硬件接口电路与校准算法

电阻式触摸屏的硬件接口电路与校准算法
谭翠兰;何立言
【期刊名称】《江汉大学学报(自然科学版)》
【年(卷),期】2011(39)2
【摘要】介绍了触摸控制芯片ADS7843的基本工作原理及其与单片机的接口电路设计,给出了触摸屏的坐标变换及校准算法,并用数据证明了此算法的可行性.采用MSP430单片机作主控芯片,液晶采用武汉中显分辨率为800×480的7寸触摸屏,验证了该校准算法在实际应用中的效果.
【总页数】3页(P19-21)
【作者】谭翠兰;何立言
【作者单位】江汉大学物理与信息工程学院,湖北武汉430056;江汉大学物理与信息工程学院,湖北武汉430056
【正文语种】中文
【中图分类】TP334.3
【相关文献】
1.电阻式触摸屏数据校准的一种补偿算法 [J], 万厚冲;孙超云
2.电阻式触摸屏校准算法的研究与设计 [J], 谭翀
3.电阻式触摸屏校准算法的优化 [J], 蔡红娟;高恒强;蔡苗
4.四线电阻式触摸屏控制与校准 [J], 远奇;李丕丁
5.Android平台下电阻式触摸屏校准实现方法 [J], 黄敏; 赵品辉; 刘良峻
因版权原因,仅展示原文概要,查看原文内容请购买。

四线电阻式触摸屏控制与校准

四线电阻式触摸屏控制与校准

strong ٛ1” Vdd analog in YP Ry Touch Screen Rx R touch Ut analog in YM Rext 1K Ucc Uy
resistive pull-up ٛ1” Vdd analog hi-Z
Rext 1K
XP
3-channel A式触摸屏控制与校准
AN2173 (ZH)
作者:Svyatoslav Paliy 相关项目:是 相关器件系列:CY8C27443, CY8C24423 GET FREE SAMPLES HERE PSoC Designer™ 版本:4.1 相关应用手册:无
摘要
本应用手册介绍了采用 PSoC® 器件的四线电阻式触摸屏的两种控制方式与一种校准算法。
Ut
digital in
Interrupt on falling edge
measure the touch parameters
PSoC®
Touch Interrupt waiting
PSoC®
第二种测量方法
第二种方法同样也对三种参数进行测量。对 X 触点位置、Y 触点位置以及触摸压力同时进行测量。这种方法可以消除因 取样率高而导致的触摸屏电源方案转换问题,但需要一个 3 通道 ADC。触摸屏连接与端口引脚设置如图 5 所示。 根据简单型网络理论,电路中的电流计算公式为:
Rtouch = Rx _ plate
X 2
ADC _ resolution
⎛ Z1 ⎞ ⎜ ⎜ Z − 1⎟ ⎟ ⎝ 2 ⎠
Equation 1
Rtouch = ( X )
⎛ 2 ADC _ resolution ⎞ Y ⎛ ⎞ ⎜ − 1⎟ − Ry _ plate ⎜1 − ADC _ resolution ⎟ ADC _ resolution ⎜ ⎟ 2 Z1 ⎝ 2 ⎠ ⎝ ⎠ Rx _ plate

电阻式触摸屏校准算法的优化

电阻式触摸屏校准算法的优化

B =一[ d y2 2 Yl d m )
G = d 21B Y y 1 )- 2 1 (
3 (o Y3 2 / ) Y2 d 1 ) 一 - ) ]
存 在移 动误 差 ,则假 设 角度 差为 ,缩放 因子 为 颤
和 氏,位 移 因子 为 和 ,可得 到显 示坐 标 : X kR O (+o d xC sO  ̄+ )
触 摸 屏上 任 意取 三 个 点 ( 由于 边 界 点 的线性 度 差 , 所 以要尽 量 避免 ) ,设物 理 坐 标和 显 示坐 标 分别 为

Y) , 、 , 和 , ) ) ) 、 ) 乃) 、( , 、
A1 X + B1Y1 C1= l ’1 ‘ +
= — 2 Y- 3 2 ) 1 ) 2Y) — 3 ( 一x 广y) 2
屏和 L D显示图形的点都用矢量来表示 : (, C Q ) Y
为触摸 屏上 的点 ,称 为物理 坐标 ; a Y) L D Q ( d为 C 均, 显示 屏 上 的点 ,称 为 显 示坐 标 。设 物理 坐标 :
控 制设 备 ,简化 了用 户 的操作 _,提供 了更 加友 好 l J
直 接 的人 机 交互 。市场 上较 为常 见的 触摸屏 有 :红
外线 触摸 屏 、电容 式触摸 屏 、 电阻式触 摸屏 和表 面 声 波触摸 屏 。 目前 ,市场 上 应用 比较 多的是 电 阻式 触 摸屏 。 然 而 电阻 式 触摸 屏 在 出 厂时 由于 L D 显 C 示屏 与 触 摸 屏之 间装配 的不对 应 会 引起 机 械误 差 ,
导 电层 ( , _上 形 成 电压 梯度 ,X+作 为 引 出端 Y+ Y ) 测 量 接 触 点 的 电压 ,当 有 外 力使 得 上 下 两层 导 电

触摸屏校正原理和方法

触摸屏校正原理和方法

触摸屏校正原理和方法张开俊2011.6.10不同于鼠标,触控板的相对坐标定位,触摸屏是绝对坐标系定位,其物理坐标需要和LCD屏上的坐标一一对应。

所以在触摸屏原厂生产出货前,以及我们产品在产线组装前,都需要通过特定的软件或整机系统软件进行校正。

1.触摸屏为什么需要校正触摸屏与LCD显示屏是两个不同的物理器件。

LCD处理的像素,例如我们通常所说的分辨率是600x800,实际就是指每行的宽度是600个像素,高度是800个像素,而触摸屏处理的数据是点的物理坐标,该坐标是通过触摸屏控制器采集到的。

两者之间需要一定的转换。

其次,在安装触摸屏时,不可避免的存在着一定的误差,如旋转,平移的,这同样需要校正解决。

再次,电阻式触摸屏的材料本身有差异而且随着时间的推移,其参数也会有所变化,因此需要经常性的校正(电容式触摸屏只需要一次校正即可,这是由两者不同的材料原理造成的,具体可参阅有关电阻式和电容式触摸屏对比的文章)2.如何校正触摸屏的校正过程一般为:依次在屏幕的几个不同位置显示某种标记(如"+"), 用触摸笔点击这些标记,完成校正。

如果P T(x, y)表示触摸屏上的一个点, P L(x, y)表示LCD上的一个点,校正的结果就是得到一个转换矩阵M, 使P L(x, y) = M·P T(x, y)。

3.校正原理我们知道二维几何变换包含三种平移、旋转和缩放。

这三者的矩阵表示为:平移M T:缩放M S:旋转M R:所以P L =M R·M T·M S·P T,将这个公式展开,其结果为:在上面的公式中,LCD上的坐标(X L 、Y L)和触摸屏上的坐标(X T 、Y T)是已知的,而其他的则是我们需要求的:θ, S Y, S X, T Y, S X共有5个变量,至少需要五个方程,因为每组点坐标(P L, P T)可以得到两个方程,因此我们需要采集三组点坐标。

如何校准触摸屏基准参数

如何校准触摸屏基准参数

如何校准触摸屏基准参数在触摸屏修理工作中,我们发觉电阻式触摸屏在嵌入式系统中用的较多,电阻式触摸屏可分为四线、五线、七线等几种,接下来,我们主要以WinCE触摸屏为例,分析如何校准触摸屏基准参数问题:在我们顺当完成驱动程序安装以及各种功能就都已经预备就绪了,现在就可以实际操作触摸屏幕了。

但一般来说,电阻式触摸屏需要校准,也就是说在驱动启动过程中MDD层要调用相应的DDSI函数来读取注册表中的校正数据校正触摸屏。

抱负状况下,校准程序只要在嵌入式设备初次加电测试过程中运行一次就可以了,参考值会被存储在非易失性存储器中,以免让用户在以后的加电启动期间再做校准。

不过,高质量的触摸屏驱动程序是应当要向用户供应一种进入校准例程的途径,从而在由于温度漂移或其它因素造成校准不精确时进行重新校准。

在抱负状况下,校正触摸屏基准只需两组原始数据,即在屏幕对角读取的最小和最大值。

但在实际应用中,由于很多电阻式触摸屏存在明显的非线性,假如只在最小和最大值之间简洁的插入位置数值会导致驱动程序特别的不精确。

因此,在WinCE中需要猎取多个校准点,常用的校准点数量为5个。

方法如下:1、首先驱动程序在函数DdsiTouchPanelGetDeviceCaps 中设置校准点的个数;2、是系统在TouchDriverCalibrationPointGet中猎取每个校准点的屏幕坐标;3、是在屏幕界面的校准点坐标处显示一个位置符号,用户需要精确地在位置符号按下触摸屏;4、驱动程序通过TouchPanelReadCalibrationPoint函数读取相应的触摸屏坐标值;5、然后再开头下一个校准点,直到循环设定的次数后将采集到的触摸屏坐标值和校准点屏幕坐标送到TouchPanelSetCalibration函数中进行处理,该函数将产生校准基准参数。

校准完成之后,触摸屏便可以开头正常的操作了。

关于电阻式触摸屏的线性校准问题

关于电阻式触摸屏的线性校准问题

关于电阻式触摸屏的线性校准问题1 引言阻性触摸屏与LCD 显示器上的各点很难完全准确配合,因此除了采用精确的机械装配技术校准之外,在使用之前还必须进行软件校准。

本文介绍的校准方法首先确定误差源,然后通过三个选定点导出触摸屏的校准矩阵,并用软件方法来实施点与点之间对应关系的校准。

掌握这种技术,对降低嵌入式系统的成本至关重要。

图1所示是一个阻性触摸屏的横截面,其结构十分简单,由上下相对放置的两层结构构成,FILM 和玻璃的内表面涂上薄薄一层导电材料,并用一些透明绝缘隔离点(绝缘点)将导电表面隔开。

当手指或铁笔按压玻璃表面时,上层FILM 产生弯曲接触下层玻璃。

这种结构中层间的距离决定了触摸屏的敏感度。

层间距离越近,敏感度越小,压力就要越大,以使两层结构可靠接触。

玻璃或图1 阻性触摸屏的横截面 图2 触摸屏的等效电路图2所示是触摸屏的等效电路。

通过一个触摸屏控制器(AD 转换器)将电源的正、负极加到一块玻璃的导电层两端,另一块玻璃上的导电层则起到一个电位计游标的作用。

在玻璃上不同的触摸点,导电的情况也不同,数字转换器上便会录得不同的测试电压值,然后控制器将录得的电压值转换成一个二维坐标:X 轴坐标和Y 坐标。

这些控制器每秒钟可进行200次或更多的采样。

采样率通常与背景噪声和控制器质量有关。

智能控制器还具备其它一些功能,如检测到触摸时中断CPU 、在检测到触摸前设定采样率连续进行采样。

没有触摸时,控制器处于待机状态。

由于阻性触摸屏结构简单、操作易懂、所需软硬件有多个厂商可供选择,因此可用于对成本敏感的设计中。

然而,由于触摸屏与它背后的显示器(LCD 或其它)间的对应点很难完全配合,因此几乎所有带阻性触摸屏的设备在出厂前均要经过一定的校准。

否则在触摸屏上点击某一按钮或选择某项功能时,内置的软件便无法对这一点击做出正确响应。

本文介绍的校准方法需要三个目标点/或测试点,然后依次进行触摸测试,以确定该显示屏特有的校准因数。

电阻屏校准方法

电阻屏校准方法

电阻屏校准方法引言:电阻屏是现代电子设备中常见的一种输入设备,它通过触摸屏幕上的电阻点来实现对设备的操作。

然而,由于长时间使用、环境变化等原因,电阻屏的灵敏度和准确度可能会下降。

因此,对电阻屏进行校准是非常重要的,本文将介绍一种常用的电阻屏校准方法。

一、校准原理:电阻屏的校准原理是基于电阻值的变化来确定触摸位置的。

当我们触摸屏幕时,电阻屏上的两个电极会接触到一起,形成一个电阻,通过测量这个电阻值的变化,可以确定触摸的位置。

二、校准步骤:1. 打开校准程序:首先,我们需要打开设备的校准程序。

通常情况下,校准程序会在设备的设置菜单中,我们可以根据设备的操作指南找到它。

2. 开始校准:进入校准程序后,会出现一系列的校准点,我们需要按照指示依次点击这些校准点。

在每次点击后,系统会记录下触摸点的坐标,并根据这些数据进行校准计算。

3. 校准完成:完成所有校准点的点击后,系统会自动进行计算,并将校准结果保存起来。

此时,电阻屏的校准就完成了。

三、注意事项:1. 温度影响:电阻屏的灵敏度和准确度受环境温度的影响较大,因此,在校准过程中,应尽量保持设备和手指的温度稳定,避免温度变化对校准结果的影响。

2. 校准周期:电阻屏的灵敏度和准确度会随着时间的推移而降低,因此,建议每隔一段时间对电阻屏进行校准,以保证其正常使用。

3. 校准环境:在进行电阻屏校准时,应选择一个相对稳定、无电磁干扰的环境,以确保校准结果的准确性。

4. 校准方法选择:当出现电阻屏灵敏度下降或触摸位置不准确的情况时,可以尝试使用设备自带的校准程序进行校准。

如果问题依然存在,可以尝试使用专业的校准设备进行进一步的校准。

5. 校准结果验证:完成校准后,建议进行触摸位置的验证,以确保校准结果的准确性。

可以通过在屏幕上绘制直线或进行其他操作来验证触摸位置是否准确。

四、总结:通过本文介绍的电阻屏校准方法,我们可以有效地提高电阻屏的灵敏度和准确度,保证设备的正常使用。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

收稿日期:2011-01-16作者简介:谭翠兰(1981 ),女,湖北潜江人,实验员,硕士,主要从事单片机与嵌入式系统研究.电阻式触摸屏的硬件接口电路与校准算法谭翠兰,何立言(江汉大学物理与信息工程学院,湖北 武汉 430056)摘 要:介绍了触摸控制芯片AD S 7843的基本工作原理及其与单片机的接口电路设计,给出了触摸屏的坐标变换及校准算法,并用数据证明了此算法的可行性.采用M SP 430单片机作主控芯片,液晶采用武汉中显分辨率为800 480的7寸触摸屏,验证了该校准算法在实际应用中的效果.关键词:触摸屏;坐标变换;校准;AD S 7843中图分类号:TP 334.3 文献标志码:A 文章编号:1673 0143(2011)02 0019 030 引言在便携式电子产品及工业产品的设计中,触摸屏由于其轻便、占用空间少、方便灵活等优点越来越受到设计师及用户的青睐.触摸屏可作为模拟键盘,使用起来比普通键盘灵活,因为键的位置可根据需要进行改变,并且省去了按键所占用的空间.1 电阻式触摸屏与M CU 的接口电路电阻式触摸屏有4线、5线等多种类型,其原理基本相似.本文以4线电阻式触摸屏为例,图1给出了屏与ADS 7843的接口原理图.4线电阻式触摸屏是由两个透明电阻膜构成的,电阻在X 方向及Y 方向呈线性分布,4条线分别接至ADS 7843的X +、Y +、X -、Y -口线.当屏被触摸时,两层导电层在触摸点相接触,电阻发生变化.ADS 7843是一款专为触摸屏设计的带SPI 接口的12位AD 转换器,内部含模拟电子开关和逐次比较型AD 转换器.当要采样Y 方向的AD 值时,通过将Y +、Y -端施加电压,将X +送入AD 转换器得到Y 方向的AD 值;同理可得X 方向的AD 值.而这些转换均由M C U 通过SPI 方式向ADS 7843发送命令来完成.以M SP 430F 149单片机为例,DCLK 、D I N 、DOUT 接至单片机的SPI 口,DCLK 为外部时钟输入;CS 为片选信号,低有效;DI N 为串行数据输入端;DOUT 为串行数据输出端;BUSY 为忙信号;PEN I RQ 为中断接收引脚.M SP 430F 149单片机的P 1口和P 2口均为具有中断能力的I/O 口,可接至其中任一口线,且该脚通过上拉电阻接到VCC ,当屏未被触摸时,该引脚为高电平,一旦被触摸,该引脚由高电平变为低电平,向单片机发出中断请求[1].单片机通过SPI 方式向触摸芯片发送命令,可读取当前点的X 方向及Y 方向的12位AD 值.该值与笔触点位置成近似线性关系,因此单片机读出的X 和Y 值便能描述笔触点在屏上的位置.图1 单片机与触摸芯片接口电路2 消除误差的方法读取的坐标值的精度受几个因素的影响,分别是触摸屏本身电阻材料的均匀性,ADS 7843模拟电子开关的内阻和AD 转换器自身的转换精度,AD 转换时所引入的噪声干扰.前两种情况产生的误差是固有的,针对第三种情况产生的误差可在硬件设计时做如下处理:布PCB 板时,在电源引第39卷 第2期江汉大学学报(自然科学版)V o.l 39 N o .22011年6月J .Ji anghan U niv .(N at .Sc.i Ed .)Jun .2011脚尽可能近的地方放置一个0.1 F 的去耦电容,在AD 转换参考电压的输入端也放置一个0.1 F 的旁路电容,以减少噪声对AD 转换的影响.ADS 7843的地可作为模拟地来处理,另外电阻式触摸屏与ADS 7843之间的走线尽可能短[2].除硬件方法消除干扰外,还应在软件上进行处理来克服随机干扰.ADS 7843转换速率最高可达125k H Z ,如此快的转换速率可对某点进行多次采样.笔者在实验中采取如下方法:当屏被触摸时,单片机的P 2.0引脚由高电平变为低电平,单片机对触点的值连续读取10次,并且每次读取数据前应判断P 2.0引脚是否为低.如果读数不到10次,该引脚变高,则丢弃此次数据,说明是干扰引起的电平跳变,对成功读取的10组AD 数据从高到低排序,最高值与最低值不能相差太大,否则说明引入了干扰应丢弃此次数据.若最高值与最低值在某一限定范围内,则去掉最高值和最低值后将余下的数据取平均作为此次采样的AD 值,这样能较好地消除随机干扰.3 坐标变换与校准算法电阻式触摸屏一般与点阵LCD 液晶一起使用,在实际应用中,由于触摸屏本身的精度、安装方向等原因,使触摸屏与显示屏的坐标系、X Y 值的比例因子、偏移量等都不一样,且电阻式触摸屏的坐标零点通常不在有效点触区内,因此经过ADS 7843所获得的触点坐标AD 值需要经坐标变换后才能得到笔触点在LCD 屏上的坐标.由于电阻式触摸屏在X 、Y 轴方向的电阻分布并非完全理想的线性关系,经坐标变换所得LCD 屏的坐标与笔触点的位置会有一定偏差,为了尽可能地减小这种偏差,电阻式触摸屏在使用前一般都要进行校准[3].下面给出了一种4点校准法,笔者在实际使用中获得较好的效果.图2是实际应用中LCD 坐标系与触摸屏的坐标系.图2 LCD 坐标系和触摸屏坐标系通常,LCD 坐标系是以像素为单位,以800480LCD 点阵液晶为例,左上脚坐标为(0,0),右下脚坐标为(800,480).触摸屏坐标是以触点的AD 值来描述的,由于电阻式触摸屏上的电阻呈线性分布,因此得到的AD 值在触摸屏坐标系也呈线性分布.电阻式触摸屏边缘点的线性一般不太好,而且由于其在LCD 屏上安装的位置有可能存在偏差,因此在校准时应避开最边缘4个角落.以下实验数据基于武汉中显800 480点阵LCD ,下面选取A (20,20)、B (780,20)、C (20,460)、D (780,460)4个点进行校准,这4个点的定位可通过在该点显示圆圈来指示,如图3所示.图3 LCD 屏的校准点用笔分别点触这4个点,依次记下这4点经ADS 7843转换后由单片机读取的AD 值.如果满足0.95 AB CD 1.05,0.95 ACBD 1.05,0.95ADBC1.05,即满足两对边及对角线大致相等,则可用这4点进行坐标变换,若不满足,则重新读取这4个点的AD 值,直到满足为止,一般如果电阻式触摸屏的线性度较好都能满足此条件.因ADS 7843为12位AD 转换器,量程范围从0~4095,为了使触摸屏坐标系的方向与LCD 坐标方向一致,将笔触点得到的AD 值作如下转换:AD =4096-AD.表1为A 、B 、C 、D 4个点的坐标值.表1 4个校准点的AD 值LCD 坐标实际AD 值转换AD 值A(20,20)A (3870,3722)A (226,374)B (780,20)B(262,3658)B (3834,438)C (20,460)C(3855,314)C (241,3782)D(780,460)D (277,303)D (3819,3793)记A 、B 、C 、D 的坐标分别为(x 1,y 1)、(x 2,y 2)、(x 3,y 3)、(x 4,y 4),坐标转换以这4个点为参考(因为这4点呈对称分布,以下计算实际只采用了A 、B 、C 3个点的坐标).X 、Y 方向的校正20江汉大学学报(自然科学版) 总第39卷因子与偏移量分别为X fac=760/(x2-x1),(1)Y fac=440/(y3-y1),(2) X offset=[800-X fac*(x2+x1)]/2,(3)Y offset=[480-Y fac*(y3+y1)]/2,(4)则LCD上的坐标为X lcd=X fac*X ad+X offset,(5)Y lcd=Y fac*Y ad+Y offset,(6)其中X ad与Y ad分别为对应触点A ~D 经转换后的AD值.以表1的数据来求公式(1)~(4)的校正因子与偏移量.X fac=760/(3834-226)=0.210643,Y fac=440/(3782-374)=440/3408=0.129108,X offset=[800-0.210643*(3834+226)]/2=-27.6,Y offset=[480-0.129108*(3782+374)]/2=-28. 将求得的校正因子和校正偏移量代入(5)式和(6)式便可将触摸屏坐标转换为LCD坐标.为验证此算法的可靠性,下面选取触摸屏上一组点来测得其转换后的AD值,然后用(5)式和(6)式求取LCD坐标,见表2.从表2中可以看出,由(5)式和(6)式所求得的LCD坐标与实际点触的LCD坐标基本是一致的.该4点校准算法只需要点取呈矩形的4个点,然后根据这4个点算出X、Y方向校正因子与校正偏移量4个参数,将这4个参数代入(5)式和(6)式便可求得触摸屏上任一点的LCD坐标.表2 触点LCD坐标与用校正算法计算得到的LCD坐标触点LCD坐标AD值求得LCD坐标(20,20)(226,376)(20,20)(780,20)(3822,448)(777,29)(20,460)(238,3777)(22,459)(780,460)(3810,3791)(775,461)(400,240)(2016,2038)(397,235)(200,120)(1076,1162)(199,122)(600,120)(2958,1163)(595,122)(200,360)(1071,2936)(198,351)(600,360)(2959,2941)(595,351)4 结语每个触摸屏在使用之前都必须校准,经过4点校准后,单片机将校正因子与校正偏移量存入EEPROM中,以后上电可从EEPRO M中读出这4个参数,通过这些参数可对当前点进行LCD坐标计算.该算法在实际应用中取得了较好的效果.参考文献:[1] 曹磊.M SP430单片机C程序设计与实践[M].北京:北京航空航天大学出版社,2007.[2] 崔如春,谭海燕.电阻式触摸屏的坐标定位与笔画处理技术[J].仪表技术与传感器,2004(8):49 50. [3] 宋学瑞,蔡子裕,段青青.触摸屏数据处理算法[J].计算机工程,2008,34(23):255 257.H ardware Interface C ircuit and Cali bratance A lgorith mfor Resistance Touch ScreenTAN Cui lan,H E L i yan(Schoo l o f Physics and In f o r m ati on Eng ineer i ng,J i anghan U n i v ers it y,W uhan430056,H ube,i Chi na)Abstract:I ntroduces t h e w orking pri n ciple of chip ADS7843for touch screen s contro,l g i v es the i n terface c ircu it o fADS7843w ithM C U,presentes the coord i n ate transfor m and ca li b rati o n a l g orithm for touch screen,and testifi e s the feasibility o f algorith m by data.The c ircu it usesM SP430seriesMCU to contro l a touch screen LCD w ith800 480pi x e ls,w hich is m anufact u red by W uhan Zhongx ian Co m pany,the test verifies t h e e ffect o f the ca li b ration algo rithm i n actua l application.K ey w ords:touch screen;coordinate transfor m;cali b rati o n;AD S7843(责任编辑:曾 婷)212011年第2期谭翠兰,等:电阻式触摸屏的硬件接口电路与校准算法。

相关文档
最新文档