国产嵌入式操作系统下触摸屏的实现
3、 ReWorks下校准及测试触摸屏的实现
本文引用地址:https://www.eepw.com.cn/article/145836.htmtslib是一个触摸屏支持库,为不同的触摸屏提供了一个统一的接口,还提供诸如滤波、去抖、校准之类的功能。tslib 从触摸屏驱动处获得原始的设备坐标数据,通过一系列的去噪、去抖、坐标变换等操作,来去除噪声并将原始的设备坐标转换为相应的屏幕坐标。本文将tslib移植到国产ReWorks操作系统+龙芯1A处理器(mips)平台,实现了ReWorks下触摸屏的校准、测试等功能。ReWorks系统下tslib层次结构如图3所示。

tslib 从触摸屏驱动采样到设备坐标进行处理再提供给应用端的过程如下:raw device --> variance --> dejitter --> linear --> application。tslib对驱动采样到的数据进行处理的过程如下:读取屏上5个点的坐标(Top Left,Top Right,Bottom Left,Bottom Right,Center),再进行一系列的变换,取样的5个点,实际上是包含3个不同的X坐标值,3个不同的Y坐标值,和scaling 值一共7个值,一起保存到pointercal文件中。
将tslib移植到ReWorks系统后,运行ts_calibrate校准触摸屏,用触摸笔点击触摸屏四个角及中央五个点,tslib进行坐标换算,触摸屏校准界面如图4所示。

完成五点校准后,会自动生成pointercal校准文件保存在手持式计算机Flash根目录/ffx0下。本文中手持式计算机液晶屏的分辨率为480x640,校准时ReWorks终端输出信息如下。
------calibrate starting-------
xres = 480, yres = 640
## Fri Mar 22 09:29:24 CST 2013 ##
Took 5 samples...
Top left : X = 3428 Y = 516
Took 4 samples...
Top right : X = 616 Y = 528
linux操作系统文章专题:linux操作系统详解(linux不再难懂)
评论