触摸屏的软硬件设计.docx
- 文档编号:4591931
- 上传时间:2022-12-07
- 格式:DOCX
- 页数:17
- 大小:603.89KB
触摸屏的软硬件设计.docx
《触摸屏的软硬件设计.docx》由会员分享,可在线阅读,更多相关《触摸屏的软硬件设计.docx(17页珍藏版)》请在冰豆网上搜索。
触摸屏的软硬件设计
第一章绪论
1.1触摸屏的简介
触控屏(Touchpanel)又称为触控面板,是个可接收触头等输入讯号的感应式液晶显示装置,当接触了屏幕上的图形按钮时,屏幕上的触觉反馈系统可根据预先编程的程式驱动各种连结装置,可用以取代机械式的按钮面板,并借由液晶显示画面制造出生动的影音效果。
随着多媒体信息查询的与日俱增,人们越来越多地谈到触摸屏,因为触摸屏不仅适用于中国多媒体信息查询的国情,而且触摸屏具有坚固耐用、反应速度快、节省空间、易于交流等许多优点。
利用这种技术,我们用户只要用手指轻轻地碰计算机显示屏上的图符或文字就能实现对主机操作,从而使人机交互更为直截了当,这种技术大大方便了那些不懂电脑操作的用户。
触摸屏作为一种最新的电脑输入设备,它是目前最简单、方便、自然的一种人机交互方式。
它赋予了多媒体以崭新的面貌,是极富吸引力的全新多媒体交互设备。
触摸屏在我国的应用范围非常广阔,主要是公共信息的查询;如电信局、税务局、银行、电力等部门的业务查询;城市街头的信息查询;此外应用于领导办公、工业控制、军事指挥、电子游戏、点歌点菜、多媒体教学、房地产预售等。
将来,触摸屏还要走入家庭。
1.2触摸屏的分类
从技术原理来区别触摸屏,可分为五个基本种类:
矢量压力传感技术触摸屏、电阻技术触摸屏、电容技术触摸屏、红外线技术触摸屏、表面声波技术触摸屏。
其中矢量压力传感技术触摸屏已退出历史舞台;红外线技术触摸屏价格低廉,但其外框易碎,容易产生光干扰,曲面情况下失真;电容技术触摸屏设计构思合理,但其图像失真问题很难得到根本解决;电阻技术触摸屏的定位准确,但其价格颇高,且怕刮易损;表面声波触摸屏解决了以往触摸屏的各种缺陷,清晰不容易被损坏,适于各种场合,缺点是屏幕表面如果有水滴和尘土会使触摸屏变的迟钝,甚至不工作。
按照触摸屏的工作原理和传输信息的介质,我们把触摸屏分为四种,它们分别为电阻式、电容感应式、红外线式以及表面声波式。
(1)电阻式触摸屏
这种触摸屏利用压力感应进行控制。
电阻触摸屏的主要部分是一块与显示器表面非常配合的电阻薄膜屏,这是一种多层的复合薄膜,它以一层玻璃或硬塑料平板作为基层,表面涂有一层透明氧化金属(透明的导电电阻)导电层,上面再盖有一层外表面硬化处理、光滑防擦的塑料层、它的内表面也涂有一层涂层、在他们之间有许多细小的(小于1/1000英寸)的透明隔离点把两层导电层隔开绝缘。
当手指触摸屏幕时,两层导电层在触摸点位置就有了接触,电阻发生变化,在X和Y两个方向上产生信号,然后送触摸屏控制器。
控制器侦测到这一接触并计算出(X,Y)的位置,再根据模拟鼠标的方式运作。
这就是电阻技术触摸屏的最基本的原理。
电阻类触摸屏的关键在于材料科技,常用的透明导电涂层材料有:
A、ITO,氧化铟,弱导电体,特性是当厚度降到1800个埃(埃=10-10米)以下时会突然变得透明,透光率为80%,再薄下去透光率反而下降,到300埃厚度时又上升到80%。
ITO是所有电阻技术触摸屏及电容技术触摸屏都用到的主要材料,实际上电阻和电容技术触摸屏的工作面就是ITO涂层。
B、镍金涂层,五线电阻触摸屏的外层导电层使用的是延展性好的镍金涂层材料,外导电层由于频繁触摸,使用延展性好的镍金材料目的是为了延长使用寿命,但是工艺成本较为高昂。
镍金导电层虽然延展性好,但是只能作透明导体,不适合作为电阻触摸屏的工作面,因为它导电率高,而且金属不易做到厚度非常均匀,不宜作电压分布层,只能作为探层。
(2)电容式触摸屏
电容屏在原理上把人体当作一个电容器元件的一个电极使用,当有导体靠近与夹层ITO工作面之间耦合出足够量容值的电容时,流走的电流就足够引起电容屏的误动作。
我们知道,电容值虽然与极间距离成反比,却与相对面积成正比,并且还与介质的的绝缘系数有关。
因此,当较大面积的手掌或手持的导体物靠近电容屏而不是触摸时就能引起电容屏的误动作,在潮湿的天气,这种情况尤为严重,手扶住显示器、手掌靠近显示器7厘米以内或身体靠近显示器15厘米以内就能引起电容屏的误动作。
电容屏的另一个缺点用戴手套的手或手持不导电的物体触摸时没有反应,这是因为增加了更为绝缘的介质。
电容屏更主要的缺点是漂移:
当环境温度、湿度改变时,环境电场发生改变时,都会引起电容屏的漂移,造成不准确。
(3)红外触摸屏
红外触摸屏是利用X、Y方向上密布的红外线矩阵来检测并定位用户的触摸。
红外触摸屏在显示器的前面安装一个电路板外框,电路板在屏幕四边排布红外发射管和红外接收管,一一对应形成横竖交叉的红外线矩阵。
用户在触摸屏幕时,手指就会挡住经过该位置的横竖两条红外线,因而可以判断出触摸点在屏幕的位置。
任何触摸物体都可改变触点上的红外线而实现触摸屏操作。
早期观念上,红外触摸屏存在分辨率低、触摸方式受限制和易受环境干扰而误动作等技术上的局限,因而一度淡出过市场。
此后第二代红外屏部分解决了抗光干扰的问题,第三代和第四代在提升分辨率和稳定性能上亦有所改进,但都没有在关键指标或综合性能上有质的飞跃。
(4)表面声波触摸屏
表面声波,超声波的一种,在介质(例如玻璃或金属等刚性材料)表面浅层传播的机械能量波。
通过楔形三角基座(根据表面波的波长严格设计),可以做到定向、小角度的表面声波能量发射。
表面声波性能稳定、易于分析,并且在横波传递过程中具有非常尖锐的频率特性,近年来在无损探伤、造影和退波器方向上应用发展很快,表面声波相关的理论研究、半导体材料、声导材料、检测技术等技术都已经相当成熟。
表面声波触摸屏的触摸屏部分可以是一块平面、球面或是柱面的玻璃平板,安装在CRT、LED、LCD或是等离子显示器屏幕的前面。
玻璃屏的左上角和右下角各固定了竖直和水平方向的超声波发射换能器,右上角则固定了两个相应的超声波接收换能器。
玻璃屏的四个周边则刻有45°角由疏到密间隔非常精密的反射条纹。
1.3触摸屏的工作原理
电阻式触摸屏的优点是它的屏和控制系统都比较便宜,反应灵敏度也很好,而且不管是四线电阻触摸屏还是五线电阻触摸屏,它们都是一种对外界完全隔离的工作环境,不怕灰尘和水汽,能适应各种恶劣的环境。
它可以用任何物体来触摸,稳定性能较好。
我们在这里主要介绍电子式触摸屏的工作原理。
触摸屏包含上下叠合的两个透明层,四线和八线触摸屏由两层具有相同表面电阻的透明阻性材料组成,五线和七线触摸屏由一个阻性层和一个导电层组成,通常还要用一种弹性材料来将两层隔开。
电阻式触摸屏是一种传感器,它将矩形区域中触摸点(X,Y)的物理位置转换为代表X坐标和Y坐标的电压。
很多LCD模块都采用了电阻式触摸屏,这种屏幕可以用四线、五线、七线或八线来产生屏幕偏置电压,同时读回触摸点的电压。
电阻式触摸屏基本上是薄膜加上玻璃的结构,薄膜和玻璃相邻的一面上均涂ITO(纳米铟锡金属氧化物)涂层,ITO具有很好的导电性和透明性。
当触摸操作时,薄膜下层的ITO会接触到玻璃上层的ITO,经由感应器传出相应的电信号,经过转换电路送到处理器,通过运算转化为屏幕上的X、Y值,而完成点选的动作,并呈现在屏幕上。
图1
触摸屏工作时,上下导体层相当于电阻网络,如图2所示。
图2
当某一层电极加上电压时,会在该网络上形成电压梯度。
如有外力使得上下两层在某一点接触,则在电极未加电压的另一层可以测得接触点处的电压,从而知道接触点处的坐标。
比如,在顶层的电极(X+,X-)上加上电压,则在顶层导体层上形成电压梯度,当有外力使得上下两层在某一点接触,在底层就可以测得接触点处的电压,再根据该电压与电极(X+)之间的距离关系,知道该处的X坐标。
然后,将电压切换到底层电极(Y+,Y-)上,并在顶层测量接触点处的电压,从而知道Y坐标。
第二章触摸屏的选择讨论以及其应用
2.1主要芯片的选择现在很多PDA应用中,将触摸屏作为一个输入设备,对触摸屏的控制也有专门的芯片。
很显然,触摸屏的控制芯片要完成两件事情:
其一,是完成电极电压的切换;其二,是采集接触点处的电压值(即A/D)。
我们以BB(Burr-Brown)公司生产的芯片ADS7843为例,介绍触摸屏控制的实现。
现在很多PDA应用中,将触摸屏作为一个输入设备,对触摸屏的控制也有专门的芯片。
很显然,触摸屏的控制芯片要完成两件事情:
其一,是完成电极电压的切换;其二,是采集接触点处的电压值(即A/D)。
我们以BB(Burr-Brown)公司生产的芯片ADS7843为例,介绍触摸屏控制的实现。
2.1.1ADS7843的基本特性与典型应用
ADS7843是一个内置12位模数转换、低导通电阻模拟开关的串行接口芯片。
供电电压2.7~5V,参考电压VREF为1V~+VCC,转换电压的输入范围为0~VREF,最高转换速率为125kHz。
ADS7843的引脚配置如图3所示。
表1为引脚功能说明,图4为典型应用。
2.1.2单片机的选择80C51的引脚功能
首先我们来连接一下单片机的引脚图5,如果,具体功能在下面都有介绍。
单片机的40个引脚大致可分为4类:
电源、时钟、控制和I/O引脚。
1.电源:
⑴VCC-芯片电源,接+5V;
⑵VSS-接地端;
2.时钟:
XTAL1、XTAL2-晶体振荡电路反相输入端和输出端。
3.控制线:
控制线共有4根,
⑴ALE/PROG:
地址锁存允许/片内EPROM编程脉冲
①ALE功能:
用来锁存P0口送出的低8位地址
②PROG功能:
片内有EPROM的芯片,在EPROM编程期间,此引脚输入编程脉冲。
⑵PSEN:
外ROM读选通信号。
⑶RST/VPD:
复位/备用电源。
①RST(Reset)功能:
复位信号输入端。
②VPD功能:
在Vcc掉电情况下,接备用电源。
⑷EA/Vpp:
内外ROM选择/片内EPROM编程电源。
①EA功能:
内外ROM选择端。
②Vpp功能:
片内有EPROM的芯片,在EPROM编程期间,施加编程电源Vpp。
⒋I/O线
80C51共有4个8位并行I/O端口:
P0、P1、P2、P3口,共32个引脚。
P3口还具有第二功能,用于特殊信号输入输出和控制信号(属控制总线)。
图5
2.2ADS7843的内部结构及参考电压模式选择
ADS7843之所以能实现对触摸屏的控制,是因为其内部结构很容易实现电极电压的切换,并能进行快速A/D转换。
图6ADS7843的内部结构
图6所示为其内部结构,A2~A0和SER/为控制寄存器中的控制位,用来进行开关切换和参考电压的选择。
ADS7843支持两种参考电压输入模式:
一种是参考电压固定为VREF,另一种采取差动模式,参考电压来自驱动电极。
这两种模式分别如图6(a)、(b)所示。
图7ADS7843差动模式
采用图7的差动模式可以消除开关导通压降带来的影响。
表2和表3为两种参考电压输入模式所对应的内部开关状况。
2.3ADS7843的控制字及数据传输格式
ADS7843的控制字如表4所列,其中S为数据传输起始标志位,该位必为"1"。
A2~A0进行信道选择(见表2和3)。
MODE用来选择A/D转换的精度,"1"选择8位,"0"选择12位。
SER/选择参考电压的输入模式(见表2和3)。
PD1、PD0选择省电模式:
"00"省电模式允许,在两次A/D转换之间掉电,且中断允许;"01"同"00",只是不允许中断;"10"保留;"11"禁止省电模式。
为了完成一次电极电压切换和A/D转换,需要先通过串口往ADS7843发送控制字,转换完成后再通过串口读出电压转换值。
标准的一次转换需要24个时钟周期,如图7所示。
图7
由于串口支持双向同时进行传送,并且在一次读数与下一次发控制字之间可以重叠,所以转换速率可以提高到每次16个时钟周期,如图8所示。
图8
如果条件允许,CPU可以产生15个CLK的话(比如FPGAs和ASICs),转换速率还可以提高到每次15个时钟周期,如图9所示。
图9
2.4触摸屏的中断控制
触摸屏控制器ADS7843的中断输出通过外部中断5接在中断控制器上,当触摸屏">触摸屏上有触摸事件发生时,会引发中断号为IRQ_EINT5的中断服务程序s3c2410_isr_tc()。
图10所示为该中断处理程序的流程图。
图10
在s3c2410_isr_tc()中设定了定时器的定时时间为50ms,并立即激活。
因此有触摸屏">触摸屏硬件中断的情况下50ms后就会引发定时中断,中断服务程序为ts_timer_handler(),这个程序实现了触摸屏">触摸屏中断的下半部,即在过了抖动时间之后如果触摸屏">触摸屏确实有有效事件发生则采集触摸屏">触摸屏坐标,并将定时器的时间重新设为100ms并重新激活,这样做的目的是如果触摸笔是拖动的情况,以后每100ms采集一次坐标值,并存入缓冲区,如果不是拖动在采集一次坐标值之后,在第二次进入ts_timer_handler()时,查询管脚的状态值,则变为高电平,就将触摸屏">触摸屏状态tsdev.PenStatus设为PEN_UP,并释放定时器,为下次触摸屏">触摸屏事件做好准备,定时中断服务程序流程图如图11所示。
图11
在s3c2410_ts_init()中的另一个重要任务是执行接口函数s3c2410_ts_open(),在这个函数中初始化缓冲区的头尾指针、触摸屏状态变量及触摸屏事件等待队列。
module_exit()
该函数调用s3c2410_ts_exit(),主要任务是撤销驱动程序向内核的登记以及释放申请的中断资源。
接口函数s3c2410_ts_read()
这个函数实现的任务是将事件队列从设备缓存中读到用户空间的数据缓存中。
实现的过程主要是通过一个循环,只有在事件队列的头、尾指针不重合时,才能成功的从tsdev.tail指向的队列尾部读取到一组触摸信息数据,并退出循环。
否则调用读取函数的进程就要进入睡眠。
坐标读取函数s3c2410_get_XY()
在定时器中断处理程序中,当查询到与相连的EINT5/GPF5为低电平时,即表示有有效事件,应该调用s3c2410_get_XY()函数采集笔触信息。
2.5关于坐标的采点问题
触摸屏控制器有多种,主要的功能均是在微处理器的控制下向触摸屏的两个方向分时施加电压,并将相应的电压信号传送给自身A/D转换器,在微处理器SPI口提供的同步时钟作用下将数字信号读入微处理器。
计算触点的X,Y坐标分为如下两步:
(1)计算Y坐标,在Y+电极施加驱动电压Vdrive,Y-电极接地,X+做为引出端测量得到接触点的电压,由于ITO层均匀导电,触点电压与Vdrive电压之比等于触点Y坐标与屏高度之比。
(2)计算X坐标,在X+电极施加驱动电压Vdrive,X-电极接地,Y+做为引出端测量得到接触点的电压,由于ITO层均匀导电,触点电压与Vdrive电压之比等于触点X坐标与屏宽度之比。
测得的电压通常由ADC转化为数字信号,再进行简单处理就可以做为坐标判断触点的实际位置。
四线电阻式触摸屏除了可以得到触点的X/Y坐标,还可以测得触点的压力,这是因为toplayer施压后,上下层ITO发生接触,在触点上实际是有电阻存在的,如下图的Rtouch。
压力越大,接触越充分,电阻越小,通过测量这个电阻的大小可以量化压力大小。
2.6接口程序
当触摸触摸屏时,ADS7846中断信号
有效,单片机检测到这一有效信号后,先送测量X坐标控制字,并检测BUSY信号是否有下降沿到来,下降沿到来后,读X位置电压;再送测量Y坐标控制字,获取Y位置电压。
将得到的X,Y位置电压用式
(1)、式
(2)进行计算便得到触摸点的X,Y坐标。
软件流程如图12所示。
图12坐标读取流程图
2.7A/D转换时序的程序设计
假设μP接口与51单片机的P1.3~P1.7相连,现以一次转换需24个时钟周期为例,介绍A/D转换时序的程序设计。
;A/D接口控制线
DCLKBITP1.3
CSBITP1.4
DINBITP1.5
BUSYBITP1.6
DOUTBITP1.7
;A/D通道选择命令字和工作寄存器
CHXEQU094H;通道X+的选择控制字
CHYEQU0D4H;通道Y+的选择控制字
CH3EQU0A4H
CH4EQU0E4H
AD_CHEQU35H;通道选择寄存器
AD_RESULTHEQU36H;存放12bitA/D值
AD_RESULTLEQU37H
;存放通道CHX+的A/D值
CHXAdResultHEQU38H
CHXAdResultLEQU39H
;存放通道CHY+的A/D值
CHYAdResultHEQU3AH
CHYAdResultLEQU3BH
;采集通道CHX+的程序段(CHXAD)
CHXAD:
MOVAD_CH,#CHX
LCALLAD_RUN
MOVCHXAdResultH,AD_RESULTH
MOVCHXAdResultL,AD_RESULTL
RET
;采集通道CHY+的程序段(CHYAD)
CHYAD:
MOVAD_CH,#CHY
LCALLAD_RUN
MOVCHYAdResultH,AD_RESULTH
MOVCHYAdResultL,AD_RESULTL
RET
;A/D转换子程序(AD_RUN)
;输入:
AD_CH-模式和通道选择命令字
;输出:
AD_RESULTH,L;12bit的A/D转换值
;使用:
R2;辅助工作寄存器
AD_RUN:
CLRCS;芯片允许
CLRDCLK
MOVR2,#8;先写8bit命令字
MOVA,AD_CH
AD_LOOP:
MOVC,ACC.7
MOVDIN,C;时钟上升沿锁存DIN
SETBDCLK;开始发送命令字
CLRDCLK;时钟脉冲,一共24个
RLA
DJNZR2,AD_LOOP
NOP
NOP
NOP
NOP
ADW0:
JNBBUSY,AD_WAIT;等待转换完成
SJMPADW1
AD_WAIT:
LCALLWATCHDOG
NOP
SJMPADW0
CLRDIN
ADW1:
MOVR2,#12;开始读取12bit结果
SETBDCLK
CLRDCLK
AD_READ:
SETBDCLK
CLRDCLK;用时钟的下降沿读取
MOVA,AD_RESULTL
MOVC,DOUT
RLCA
MOVAD_RESULTL,A
MOVA,AD_RESULTH
RLCA
MOVAD_RESULTH,A
DJNZR2,AD_READ
MOVR2,#4;最后是没用的4个时钟
IGNORE:
SETBDCLK
CLRDCLK
DJNZR2,IGNORE
SETBCS;禁止芯片
ANLAD_RESULTH,#0FH;屏蔽高4bit
2.8A/D转换结果的资料格式
ADS7843转换结果为二进制格式。
需要说明的是,在进行公式计算时,参考电压在两种输入模式中是不一样的。
而且,如果选取8位的转换精度,1LSB=VREF/256,一次转换完成时间可以提前4个时钟周期,此时串口时钟速率也可以提高一倍。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 触摸屏 软硬件 设计
