中国触摸屏网
首页
触摸屏
一体机
触摸显示器
供求商机
产品展示
厂商资料
资讯中心
触摸软件
触摸论坛
触摸屏资讯 | 触控一体机 | 触摸屏屏幕 | 触摸屏机柜 | 触摸显示器 | 触摸控制器 | 自助终端 | 呼叫系统 | 触摸屏软件| 全国经销商
触摸屏外设 | 考勤排队机 | 触摸屏新品 | 解决之方案 | 选购与维护 | 驱动与软件 | 数字城市 | POS 系统 |LED电子大屏| 触摸屏论坛
导航: 首页 >> 选购与维护 >> 触摸屏技术 >> 正文 全国触摸屏销售热线:(点击查看)
全国触摸屏经销商 全国触摸屏经销商
·广东广州 ·广东深圳
·福建福州 ·福建厦门
·福建泉州 ·湖南长沙
·江西南昌 ·上 海 市
·江苏南京 ·江苏苏州
·北 京 市 ·山西太原
·山东济南 ·四川成都
·重 庆 市 ·云南昆明
·>>> 经销商加入指南
·>>> 经销商加入指南
跟我来略学一下触控程序开发  
跟我来略学一下触控程序开发
副标题:触摸屏学习及触控程序开发
日期:2008-3-4 21:57:49     来源:ftp.embedded   编辑:51Touch 

为标准触摸屏编写驱动程序

尽管触摸屏正在迅速普及开来,但大多数开发人员以前从来没有开发过触摸屏产品。本文详细介绍了触摸屏产品的设计步骤,指导读者了解使触摸屏首次工作需要的软硬件细节。

触摸屏如今随处可见。工业控制系统、消费电子产品,甚至医疗设备上很多都装备了触摸屏输入装置。我们平时不经意间都会用到触摸屏。在ATM机上取款、签署包裹,办理登机手续或查找电话号码时都可能会用到触摸屏。

本文介绍了二种较新的CPU,它们都内建了对触摸屏输入的支持。本文将介绍如何编写软件驱动程序,从而能够使用这些微处理器配置、校准触摸屏以及对触摸屏输入持续响应。最终将提供可免费下载和使用的工作代码,作为读者进一步设计的基础。

触摸屏作为输入手段的优点和缺点

没有一种输入方式是十全十美的,对某些特定的应用和产品类型来说,触摸屏不是最好的输入手段。为了让读者清楚的了解触摸屏的特性,下面先概括使用触摸屏作为输入手段的优点和缺点。

首先是优点:触摸屏不可否认的具有酷的感觉,立刻就能使产品的使用变得更有乐趣。同时触摸屏也非常直观。当用户想要选择A选项时,他伸出手指碰一下A选项就可以了。这还不够直观吗?连两岁的婴儿都知道怎样伸手去触摸他(或她)想要的东西。

最后要说的是,触摸屏作为输入装置和系统固定在了一起。如果用户忘记遥控器或鼠标放的位置,就会无法进行输入。而如果具有触摸屏的设备放在用户前面,用户马上就可以用触摸屏进行输入。

再说缺点,触摸屏可能会在不合适的场合下被错误的使用。这里我是指对安全性要求严格的设备,对于这些设备,如果没有适当的预防措施,使用触摸屏会非常危险。下面我将概括一些最明显的潜在的问题,如果读者想作更进一步的了解,可以参考更多的资料。

第一个问题是视差,即屏幕上看到的对象的位置与其在触摸面板上的实际有效位置之间的差异。图1说明了这个问题。我能想到的最佳例子是典型的“免下车”ATM机。这种ATM机不会根据汽车的高度升高或降低自己的高度,因此如果你坐在较高的SUV或卡车里,那么你就会从抬高的位置俯视显示屏。为了保护昂贵的显示器件免受恶意破坏,ATM机都会在用户和显示屏之间放置几层强化玻璃。

触摸屏是不能这样保护的。如果真这样做的话,用户就无法进行触摸了。因此触摸屏放在表层上,而显示屏放在表层下的几层玻璃后面。这就造成了触摸层和显示层之间的物理隔离。如果用户以某个角度观看屏幕,就意味着用户按压触摸屏进行选择的位置会与用户接口软件预期的输入位置之间存在一定的距离偏差。


图1:视差(横截面图)。

人们能很快适应这种偏差。经过几次尝试和错误,使用者学习在触摸屏的表面找到显示信息的映射位置,然后触摸到正确的位置。ATM设计师也认识到这一点,他们会采用大面积的按键,并尽量使它们相互远离,因此有助于防止错误按键的误触发。当然,不小心按下错误的ATM按键不会使你得癌症或使你失明。但如果这样的失误发生在医疗控制设备上,并且系统设计师没有在系统内置足够的安全预防措施,那么以上两种后果确实都有可能发生。

通过缩短显示层和触摸层之间的物理距离可以尽量减少视差。在CRT或LCD前面总会有玻璃存在。最好的方法是将对触摸敏感的电子元件嵌入到玻璃里,并且这层玻璃做得尽可能薄。这样就减少了触摸输入层和显示层之间的相隔距离。像Palm这样的手持设备就可以采用这样的策略,因为它们不必太担心机械强度不够或者遭受恶意破坏。随着相隔距离的缩小(用户觉得真的触摸到了图形元件),精度会大大提高。

第二个明显的问题是,在用户触摸屏幕的过程中,触摸屏幕的物体(触控笔、手指)至少会遮挡屏幕上的一小部分面积,从而影响用户的观察。在工厂自动化应用中这种情况更容易发生,因为用户很可能使用手指或手套而非触控笔,即使是使用触控笔,在屏幕上做选择动作也会不时遮挡住一部分你给用户展示的信息。例如,想象一下你想展示一个滑动控制条给用户调节数值(如速度或音量),并且你将用户选择的数值以数字形式显示在滑动控制条的左边。这样做一般工作情况会很好,但当左撇子用户操作你的系统时,只有移开他的手指他才能看到所选的值。因此你必须在你的用户界面设计中考虑这类因素。

触摸屏硬件原理简介

我们在开始编写触摸屏驱动程序之前,必须对硬件的工作原理有个基本的了解。许多不同的触摸技术会把屏幕某个位置的压力或接触转换成有意义的数字坐标。典型的触摸技术包括电阻触摸屏、声表面波触摸屏、红外线触摸屏和电容触摸屏。如果想详细了解这些技术,你可以登录www.elotouch.com或www.apollodisplays.com网站。

这里侧重介绍电阻触摸屏。电阻触摸屏非常普及,你会发现许多评估板和开发套件中都集成了电阻触摸屏。电阻触摸屏普及的主要原因是价格便宜,而且在电气上可以直接接入用户的系统中。

之所以叫电阻触摸屏,是因为它们本质上就是电阻分压器。它们由两个电阻薄层组成,这两个薄层被非常薄的绝缘层隔开,绝缘层通常以塑料微粒子的形式存在。当你触摸屏幕时,会使两个电阻薄层变形到足以使它们之间发生电气连接。然后由软件通过检测分压器上产生的电压计算出两层的短接位置,并最终确定触摸位置。

电阻触摸屏分为几种类型,比如"四线","五线"和"八线"。线越多,精度就越高,温度漂移也越少,但基本的操作是一样的。在最简单的四线设计中,有一层称为"X轴"的电阻层,上面加有一定的电压,另一个称为"Y轴"的电阻层作为接受层测量对应X轴位置的电压值。这一过程再反过来执行一遍,即Y轴层加电,X轴层用于电压检测。

图2是电阻触摸屏的简单等效电路。注意必须获取二个完全独立的读数,即X轴位置和Y轴位置数据。这些数据在四线或五线电阻触摸屏中是无法同时读取的。软件必须先读一个轴,然后再读另外一个轴。读取的顺序则无关紧要。

将电阻触摸屏产生的电压转换成数字需要用到模数转换器(ADC)。直到不久前这个ADC几乎一直是主CPU的外围器件。Burr Brown NS7843或NS7846就是这种ADC控制器。该器件为12位的模数转换器,其内嵌的逻辑电路通过交替给一个薄层加电,再从另外一层转换来控制触摸屏。虽然可以使用诸如GPIO之类的信号线来完成薄层加电的切换,但该器件能够分担许多任务,还能提供产生触摸或笔压中断的方式。

最近有几家CPU制造商开始在主CPU中集成ADC模块和专用的触摸屏控制电路。在消费类设备、远程信息通信或一些面向其它市场的产品中,LCD显示屏和触摸屏非常普遍,当想把CPU用于这类产品中时,在CPU中集成ADC和触摸屏控制电路的做法会非常有意义。

基于两种CPU的参考板

本文设计两种集成了触摸屏控制功能的CPU的参考板。这二种CPU都基于ARM处理器架构。

第一块板是飞思卡尔的MX9823ADS评估板,采用了飞思卡尔的MC9328MX1处理器。该评估板可以直接从飞思卡尔的分销商处定购。评估套件包括QVGA(240x320)彩色LCD和触摸屏。

第二块板采用了夏普LH79524 ARM处理器。这块夏普的参考板以及集成的显示和触摸套件都可以从LogicPD公司处定购。有几种可更换的显示套件供选择,分辨率范围从QVGA到800x600像素不等。

本文中不提供每个驱动程序的详细代码,而是介绍驱动程序的设计和流程,并重点介绍其中的重要部分。读者可以从ftp://ftp.embedded.com/pub/2005/07maxwell下载每个驱动程序的全部源代码。总的来看,软件提供的功能完成以下这些步骤:

1. 配置控制器硬件
2. 判断屏幕是否被触摸
3. 获得稳定的、去抖动的位置测量数据
4. 校准触摸屏
5. 将触摸状态和位置变化信息发送给更高层的图形软件

下面开始详细介绍每个步骤。

硬件配置

触摸驱动程序要做的第一件事是配置硬件。对这些集成控制器来说,这意味着通过向映射到存储器的寄存器中写入数据将控制器配置成某个确定状态。这一过程是由每个驱动程序中的TouchConfigureHardware()函数完成的。

为了配置硬件,需要事先做好某些决定。例如,驱动程序应该使用中断驱动吗?为了获得能够响应并且精确的触摸位置信息需要什么样的转换速率?让我们看看做出这些决定的具体过程吧。

 
图2:触摸屏电路简单等效电路。

 

本新闻共3页,当前在第1页  1  2  3  

对这篇文章您有更多的想法? 请去论坛发表意见吧   
“跟我来略学一下触控程序开发” 的相关新闻
触摸屏学习及触控程序开发 
触摸屏及相关厂家
广东洪毅触摸设备
台湾嵩达光电科技
广东深越光电技术
台湾理义科技股份
北京联控兴业科技
台湾宇宙光电股份
3M中国触控系统部
南京华睿川电子科技
>> 触摸屏相关厂商加入
站内搜索 站内搜索
软件开发 软件开发
Toucher2.2在线演示
时代广场软件首页
荣威触摸屏查询软件首页
眉山经济贸易委员会软件首页
推荐新闻 推荐新闻
友达、华映将推新品,电
触摸屏浏览器Toucher V4
触控屏技术能否开启手机
专门为零售商开发的触摸
触摸屏浏览器Toucher触摸
在便携设备中应用电容式
KTV市场触摸屏 又掀娱乐
加入收藏网站地图友情链接联系我们  |  广告联系全国销售网络
    网站广告、经销商加盟、触摸屏软件销售:028-87439508 13183843395 028-66219290 联系人:张小姐 传真:028-87439508 全国各地经销商如下:
   广 州   020-87599875 深 圳   0755-21949677 福 州   0591-87818596 厦 门   0592-5615268 泉 州   0595-88150378
   湖 南   15863470449 江 西   0791-6283683 上 海   13916222245 南 京   025-83610010 苏 州   0512-65581867
   北 京   010-62631382 山 西   0351-8390152 济 南   13396407999 四 川   028-81934978 重 庆   023-68609756
   云 南   0871-5109466 其 他… 028-87439508   >>> 经销商加入指南    
电子邮件: 51touch(A)126.com 请将地址中的"(A)"改成"@",避免垃圾邮件出此下策,望谅
版权所有 Copyright© 2003-2008 中国触摸屏网 地址:成都市晋吉南路146号 电话:028-87439508  13183843395  028-66219290

在线咨询QQ: 

触摸屏、触摸屏软件、触控一体机咨询 43361182 触摸屏、触摸屏软件、触控一体机咨询 893008608 MSN 帐号:touch8(A)gmail.com 将"(A)"改成"@"即可