尽管触摸屏正在迅速普及开来,但大多数开发人员以前从来没有开发过触摸屏产品。本文详细介绍了触摸屏产品的设计步骤,指导读者了解使触摸屏首次工作需要的软硬件细节。
触摸屏如今随处可见。工业控制系统、消费电子产品,甚至医疗设备上很多都装备了触摸屏输入装置。我们平时不经意间都会用到触摸屏。在ATM机上取款、签署包裹,办理登机手续或查找电话号码时都可能会用到触摸屏。
本文介绍了二种较新的CPU,它们都内建了对触摸屏输入的支持。本文将介绍如何编写软件驱动程序,从而能够使用这些微处理器配置、校准触摸屏以及对触摸屏输入持续响应。最终将提供可免费下载和使用的工作代码,作为读者进一步设计的基础。
触摸屏作为输入手段的优点和缺点
没有一种输入方式是十全十美的,对某些特定的应用和产品类型来说,触摸屏不是最好的输入手段。为了让读者清楚的了解触摸屏的特性,下面先概括使用触摸屏作为输入手段的优点和缺点。
首先是优点:触摸屏不可否认的具有酷的感觉,立刻就能使产品的使用变得更有乐趣。同时触摸屏也非常直观。当用户想要选择A选项时,他伸出手指碰一下A选项就可以了。这还不够直观吗?连两岁的婴儿都知道怎样伸手去触摸他(或她)想要的东西。
最后要说的是,触摸屏作为输入装置和系统固定在了一起。如果用户忘记遥控器或鼠标放的位置,就会无法进行输入。而如果具有触摸屏的设备放在用户前面,用户马上就可以用触摸屏进行输入。
再说缺点,触摸屏可能会在不合适的场合下被错误的使用。这里我是指对安全性要求严格的设备,对于这些设备,如果没有适当的预防措施,使用触摸屏会非常危险。下面我将概括一些最明显的潜在的问题,如果读者想作更进一步的了解,可以参考更多的资料。
第一个问题是视差,即屏幕上看到的对象的位置与其在触摸面板上的实际有效位置之间的差异。图1说明了这个问题。我能想到的最佳例子是典型的“免下车”ATM机。这种ATM机不会根据汽车的高度升高或降低自己的高度,因此如果你坐在较高的SUV或卡车里,那么你就会从抬高的位置俯视显示屏。为了保护昂贵的显示器件免受恶意破坏,ATM机都会在用户和显示屏之间放置几层强化玻璃。
触摸屏是不能这样保护的。如果真这样做的话,用户就无法进行触摸了。因此触摸屏放在表层上,而显示屏放在表层下的几层玻璃后面。这就造成了触摸层和显示层之间的物理隔离。如果用户以某个角度观看屏幕,就意味着用户按压触摸屏进行选择的位置会与用户接口软件预期的输入位置之间存在一定的距离偏差。 图1:视差(横截面图)。
人们能很快适应这种偏差。经过几次尝试和错误,使用者学习在触摸屏的表面找到显示信息的映射位置,然后触摸到正确的位置。ATM设计师也认识到这一点,他们会采用大面积的按键,并尽量使它们相互远离,因此有助于防止错误按键的误触发。当然,不小心按下错误的ATM按键不会使你得癌症或使你失明。但如果这样的失误发生在医疗控制设备上,并且系统设计师没有在系统内置足够的安全预防措施,那么以上两种后果确实都有可能发生。
通过缩短显示层和触摸层之间的物理距离可以尽量减少视差。在CRT或LCD前面总会有玻璃存在。最好的方法是将对触摸敏感的电子元件嵌入到玻璃里,并且这层玻璃做得尽可能薄。这样就减少了触摸输入层和显示层之间的相隔距离。像Palm这样的手持设备就可以采用这样的策略,因为它们不必太担心机械强度不够或者遭受恶意破坏。随着相隔距离的缩小(用户觉得真的触摸到了图形元件),精度会大大提高。
第二个明显的问题是,在用户触摸屏幕的过程中,触摸屏幕的物体(触控笔、手指)至少会遮挡屏幕上的一小部分面积,从而影响用户的观察。在工厂自动化应用中这种情况更容易发生,因为用户很可能使用手指或手套而非触控笔,即使是使用触控笔,在屏幕上做选择动作也会不时遮挡住一部分你给用户展示的信息。例如,想象一下你想展示一个滑动控制条给用户调节数值(如速度或音量),并且你将用户选择的数值以数字形式显示在滑动控制条的左边。这样做一般工作情况会很好,但当左撇子用户操作你的系统时,只有移开他的手指他才能看到所选的值。因此你必须在你的用户界面设计中考虑这类因素。
|