LCD触摸屏中LCD屏幕坐标和触摸屏坐标的关系

想要弄明白LCD屏幕坐标和触摸屏坐标的关系,得先从LCD触摸屏的结构说起。一般我们接触到的触摸屏都有两层,一层是纯粹的LCD液晶显示面板,其上就是一层透明的触摸屏薄膜。要说的是,LCD显示屏和触摸屏都有各自的分辨率指标,也就相当于它们的坐标系,现假定他们的坐标系分别为(x,y)和(X,Y)。就像我所测试的LCD显示屏的分辨率为1024*600,它的坐标原点(0,0)是左上角,右下角坐标为(1024,600),而触摸屏也有它本身的坐标原点O(物理的,固定的,在屏幕中的某一位置,很可能该原点在装配过程中已经被切割掉,但没关系,不影响坐标确定)。 =====================================================================
在实际使用过程中,我们不会关心某个时刻触摸屏的具体坐标是什么,我们所关心的是在LCD屏的坐标系(x,y),然而驱动程序得到的却是触摸屏的坐标系(X,Y),那么我们怎么把两个2维线性坐标系通过几个采样值,对应起来,即(X,Y)--->(x,y), 以我的机子为例,具体的做法是:
-------------------------
(1)取定LCD屏幕的四个角的坐标作为采样值(因为在没有其他工具的情况下,只有这四个点才知道确切的坐标(x1,y1),(x2,y2),(x3,y3),(x4,y4))
-------------------------
(2) 运行之前做的 输入设备检测程序,分别点击LCD的四个角,在程序中读出这些点对应的触摸屏坐标值(X1,Y1),(X2,Y2),(X3,Y3),(X4,Y4)
-------------------------
(3) 将这四个采样值代入如下方程,求解出方程中的7个系数(a,b,c,d,e,f,s),就可以得到两个坐标系的对应关系了:
       sx=aX+bY+c, sy=eX+fY+g
      假定s=65535
      sx1=aX1+bY1+c
      .....
      sy1=eX1+fY1+g
      .....
------------------------
上面的情况是普遍适用的, 全面,精度较高,但求解的未知数多,需要的采样值也多; 事实上,现在的装配工艺完全可以保证两个坐标系的相位差为90度的整数倍, 也就是说,上面的对应方程简可化为
{ x=aX+b, y=cY+d   } 或者 { x=aY+b, y=cX+d }
这样,只需要2组采样值, 就可以确定对应系数!   两个坐标系的对应关系就明确了, 一切触摸屏坐标都将根据这个对应关系式转化成LCD坐标系中相应的坐标。
  • 8
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值