您好!欢迎光临这里是您的网站名称,我们竭诚为您服务!
定制咨询热线055-795777642
您的位置:主页 > 工程案例 > 案例展示三 >
联系我们

开元ky官网岗亭有限公司

邮 箱:admin@mulletsonline.com
手 机:16815545425
电 话:055-795777642
地 址:陕西省安康市汉川市超标大楼4367号

基于ARM7和VC平台的高分辨率红外触摸屏设计

发布时间:2024-08-16 04:56:01人气:
本文摘要:触摸屏是融合显示器用于的一种半透明的意味著定位系统,半透明和优良的定位原理是它的技术特征。目前应用于在各场合的触摸屏主要有四种:电阻式触摸屏、电容式触摸屏、表面声波触摸屏和红外触摸屏。其中红外触摸屏的视觉效果和定位原理都高于其它触摸屏技术,而且不不受电流、电压和静电阻碍,可以适合险恶的环境条件。但是,与其它三种触摸屏比起,红外触摸屏也不存在分辨率较低的问题,这一点严重影响了红外触摸屏的实际应用于。 为此,本文使用ARM7和VC明确提出了一种高分辨率的红外触摸屏的构建方案。

开元ky官网

触摸屏是融合显示器用于的一种半透明的意味著定位系统,半透明和优良的定位原理是它的技术特征。目前应用于在各场合的触摸屏主要有四种:电阻式触摸屏、电容式触摸屏、表面声波触摸屏和红外触摸屏。其中红外触摸屏的视觉效果和定位原理都高于其它触摸屏技术,而且不不受电流、电压和静电阻碍,可以适合险恶的环境条件。但是,与其它三种触摸屏比起,红外触摸屏也不存在分辨率较低的问题,这一点严重影响了红外触摸屏的实际应用于。

  为此,本文使用ARM7和VC明确提出了一种高分辨率的红外触摸屏的构建方案。该方法通过ARM7对接管管和发射管的掌控,来动态收集与发射管一一对应的接管管的光通量,然后计算出来鼠标方位,最后通过VC编程来构建在Windows下的鼠标驱动。  1硬件平台  1.1工作原理  红外触摸屏主要基于在屏幕四边摆放红外发射管和红外接管管。

本系统中的微处理器掌控驱动电路依序接上红外发射管并检查适当的红外接管管,从而构成横竖交叉的红外线阵列,并获得定位的信息。本文通过ARM7对移位锁住存器的掌控来对红外发射管展开逐一扫瞄,同时,ARM7通过地址线和数据线来传输速率每个适当的红外接管管,从而获得适当的光通量值。其掌控原理如图1右图。

  本系统中的移位锁存器具有移位和存储两个时钟。ARM7通过IO口掌控移位锁住存器的这两个时钟以及数据输出末端。通过数据输出末端将一个脉冲载入移位寄存器后,在移位时钟的下降沿才可将载入的数据移人寄存器,并在存储时钟的下降沿将数据重复使用锁住存器中。利用移位锁住存器的这一特点,可在移位时钟的下降沿将脉冲移到发射管,并在存储时钟的下降沿照亮发射管。

载入的脉冲不会随移位时钟下降沿的来临大大的移位,直到从输入末端移入。将第一个移位锁住存器的输入末端与下一级的输出末端连接,可将载入的脉冲移人下一级。因此,通过移位锁住存器的级联可实现ARM7对更好的发射管的驱动。

融合以上特点,才可将发射管逐一照亮。  在发射管被照亮的时刻,ARM7将通过地址线传输速率与发射管方位上比较不应的接管管,并将接管感应器到的光通量通过缩放并转换成8位数据,再行通过数据线传输给ARM7展开处置。通过这样处置可使发射管与接管管一一对应,从而为确认触碰方位奠下基础。

红外触摸屏的明确工作流程如图2右图。  1.2高分辨率的构建  早期的红外触摸屏的分辨率必要由红外对管数要求,对于接管管来说,只有接管到和没接管到信号两种情况,触碰分辨率就相等屏的物理分辨率。因此其触摸屏的分辨率较为较低。  但如果将接管的信号强度展开分析分级,那么,对于接管的信号,不仅要辨别否被挡住,还要辨别出有被挡住的程度,触碰物的有所不同方位将要求否有接管信号且接管信号的强度也有所不同,因此触碰物的方位与接管的红外信号强度有必要的对应关系,即使触碰物移动十分小的距离也不会造成信号强度再次发生转变,从而可以获得极高的分辨率。

该情况下的触摸屏分辨率主要由红外对管数和模数转换精度要求,其触摸屏分辨率为红外对管数与单对红外管能构建的分辨率的乘积。触摸屏座标由红外管的物理座标和触碰点在适当管中的座标联合要求。基于以上原理,可以将每次收集到的红外接管管的光通量展开256级分析,这样,获得的大于分辨率就是接管管的宽度/256,从而大大提高了红外触摸屏的分辨率,该方法可以超过2046768的精度。

  1.3触碰方位的计算出来  为了获得精确的触碰方位,在计算出来触碰方位时必需回避周围环境光的阻碍。为此,本文通过确认每对管子的域值来作为辨别否有手指触碰的依据。

该域值的确认可通过对每对管子的0态和1态时的数据取样来构建。0态,将要所有的发射管展开一次清零,此时的发射管都为点燃状态,这样,取样获得的就是接管管接管到的周围光的光通量;1态,将要所有的发射管逐一照亮,此时的发射管在某一时刻只有一只被照亮,取样获得的是接管管接管对应发射管及周围光的光通量。  本文中的红外触摸屏的触碰方位的计算出来主要是通过遮盖时与未遮盖时的透射比来获得的。在辨别触碰方位时,可以再行确认被遮盖的管子,计算出来获得被遮盖的大体方位。

若被遮盖的管子为第N个管子,这个被遮盖的大体方位为Ld,则有:  Ld=(N-1)管子的宽度  由于手指遮盖时有一定的区域,所以遮盖时有两种有可能:其一是在被确认的管子的前面;其二是在被确认的管子处。图3右图为手指遮盖示意图。  为了准确计算出来,必须计算出来这两种情况下方位的偏移量△L1和△L2。

则有:  其中,L为第N个管子被遮盖时的方位。△L1为手指在被确认的管子的前面时的偏移量。

△L2为手指在被确认的管子处时的偏移量,XN为扫瞄时取样第N个管子接管到的数据,XNmax为1态时取样第N个管子接管到的数据.XNmin为0态时取样第N个管子接管到的数据。  2鼠标驱动  ARM7作为硬件上的核心掌控芯片,不能展开收集以获得触碰方位信息,而无法构建适当的鼠标动作。

所以,必需通过主机端的驱动程序来构建。本文中的驱动程序可通过VC++编程来构建串口通信和鼠标动作,从而已完成软件融合硬件对鼠标的驱动。  2.1串口通信  为了使主机需要接管ARM7通过串口传输的触碰方位,可利用Microsoft公司获取的ActiveX控件MicrosoftCommunicationsControl,并通过VC++编程来构建串口通信。

通过在该控件中的设置可登录通信串口号,同时可设置波特率、校验位、暂停位、数据位等通信参数,以及接管OnComm事件门限值。其明确代码如下:  由于传统的鼠标是一种比较定位系统,它只和前一次鼠标的方位座标有关。

而触摸屏则是一种意味著坐标系,与比较定位系统具有本质的区别。因此,本文通过主机从串口接管到的触碰点座标数据并展开切换来获得屏幕座标,即触摸屏的座标范围为(0,0)到(2048,768)。而ARM7不能通过串口发送到字节,且不能发送到大于256的数据,所以很难构建必要传输。

因此,在数据发送到时,不应将收集获得的方位数据的每个位上的数分别展开传输。与此同时,主机末端从串口接收缓冲区并放入数据,然后在驱动程序中将这些数据重新组合一起以获得触碰方位信息。

另外,为了构建鼠标的有所不同动作,也不应分别发送到有所不同的掌控字。每次串口通信的数据格式如下:  其中,X为触碰方位的横坐标,X1为X百位上的数,X2为X十位上的数,X3为X个位上的数;Y为触碰方位的纵坐标,Y1为Y百位上的数,Y2为Y十位上的数,Y3为Y个位上的数。

由于刚刚接管的数据为VARIANT类型,故需将其转化成为int型变量来展开以上座标的人组。该切换过程是再行将VARIANT类型变量赋值COle-SafeArray类,再行利用COleSafeArray类中的成员函数将数据载入BYTE型数组中,最后将BYTE型数据转化成为int型。  2.2鼠标动作  鼠标动作在触摸屏的应用于中颇为最重要。它主要还包括鼠标的定位,鼠标的移动,鼠标的左键单击和双击,以及鼠标的右键单击。

在VC++编程中,可通过用于API函数中的mouse_event来仿真鼠标事件,以构建以上的鼠标动作。其构建代码如下:  定位:SetCursorPos(X,Y);  左键单击:mouse_event((MOUSEEVENTF_LEFYDOWN,0,0,0,0);  mouse_event(MOUSEEVENTF_LEFTUP,0,0,0,0);  在仿真鼠标动作的同时,一个很最重要的处置步骤是屏蔽收集数据时受到的阻碍。另外,使鼠标运动光滑简化也不容忽视。

  图4是通过matlab软件对鼠标运动过程中的各座标绘制的曲线图。通过曲线可以看见,硬件上的阻碍不会导致收集的座标数据经常出现变异点,曲线上有很多毛刺。这也合理的说明了鼠标在运动过程不会经常出现回跳和晃动,无法光滑运动的现象,因此必需屏蔽这些阻碍。

  针对变异点,本文使用了比较法来解决。所谓比较法,就是将后一次接管到的座标数据与前一次接管到的座标数据做到较为,并设置一定的域值范围。当较为获得的绝对值在该域值范围内时,则指出所作的动作是有效地的。

与此同时,还须要较为前后数据的变化趋势否完全一致,只有当数据的变化趋势完全一致,才指出鼠标的移动是有效地的。  针对毛刺,本文使用平均法和比较法来解决。

所谓平均法,是将从第N组到第2N组的N两组数据展开平均值,然后将其作为第N两组数据。这样可以有效地的增加毛刺阻碍。

另外,也可以对前后两组数据展开较为,只有当较为获得的绝对值小于触摸屏的大于分辨率时,才指出鼠标再次发生移动,否则原地不动。通过这样的处置,可以解决问题鼠标晃动的问题。

经过处置后的鼠标运动曲线如图5右图。  3结束语  本文讲解了基于ARM7控制器和VC构建的红外触摸屏设计方案,该方案以ARM7作为硬件的核心掌控芯片,并通过其利用IO口对移位锁住存器的掌控来构建对发射管的驱动,利用地址线和数据线来构建对接管管的传输速率和取样,以构成红外定位阵列,从而从硬件上已完成了方位数据的收集。

该方法可实现2046768的高分辨率。而在软件上,通过VC++编程则可实现主机端的串口通信,仿真鼠标动作,并融合比较法和平均法对鼠标运动展开光滑化处置。


本文关键词:开元ky官网,基于,ARM7,和,平台,的,高分辨率,红外,触摸屏

本文来源:开元ky官网-www.mulletsonline.com

055-795777642