触摸屏软硬件设计
扫描二维码
随时随地手机看文章
本案例使用UCBl400实现触摸屏电路的连接,UCB1400内置有一款四线制电阻式触摸屏控制器,通过机械式触摸,可以迅速得到触摸pE位置信号。其实质是一种典型的带有连续逼近型寄存器的AD转换器,内部自带2.5V参考电压,带有和微处理器相连的SPI接口,同时具有测量温度、触摸压力和电池电压的功能,有可编程的8位或12位的分辨率。
当UCB1400检测到触摸屏被按下时,它就会产生一个中断信号给DSP,DSP选中UCB1400控制器(片选为低),然后通过串行口发送数据线向UCB 1400发送控制字,此后DOUT在位CLK的下降沿得到12位的输出。
UCB1400在计算触摸坐标时有两种方式,单端(Single Ended)模式和差分(Difference)模式。Single Ended模式利用UCB1400内部参考电压或者外部参考电压,得出的结果是一个电压的AD结果。Difference不需要内部或者外部的参考电压,这种模式得出的结果是触摸点在触摸屏位置上的百分比。这种模式可以消除参考电压波动对换算结果的影响。
假设LCD是个240×320像素大小的屏幕,假设最左最上角A点的坐标为(0,0),那么可知道最右最上角B点,最左最下角C点,最右最下角D点是(3⒛,0),(0,240),(320,240)。通过UCB1400得出A,B,C,D的转换结果分别是(Xa,Ya),(Xc,Yc),(Xc,Yc),(Vd,Yd),再得出屏幕中任意点X转换结果(Xx,Xx),那么X的坐标(x,y)可以通过下式算出来:
得出触摸屏的一系列坐标以后,作为手写识别软件的输入,就可得出输人的汉字,字符等。触摸屏处理程序流程如图1所示。程序中使用延迟5ms再次判断方法去触摸屏的抖动和误操作。
图 触摸屏处理程序流程