×
嵌入式 > 嵌入式开发 > 详情

基于ARM微处理器的液晶触摸屏的设计

发布时间:2020-07-01 发布时间:
|

0引言

人机交互界面的种类较多,如键盘、数码管显示器、液晶显示器及带触摸的液晶屏等。决定人机交互接口方式的主要因素是成本和实际应用的需要。近十年来,液晶触摸屏以功耗低、重量轻、精度高和良好的人机界面等技术特点,在电子设备特别是手持类电子产品中得到了普遍应用。带触摸的液晶屏,只要能测量出触摸点的坐标位置,即可根据屏上对应坐标点的显示内容或图符获知触摸者的意图,通过微处理器处理声音、图像、文字及触摸输入控制等信息,使之成为能进行信息存取、输入和输出的集成系统。基于微控制器与液晶模块的硬件接口设计及软件编程在智能系统设计中有着重要的应用价值。ARM微处理器,运算速度快、资源丰富、性价比高,是当前较为流行的嵌入式控制器。本文介绍的一款基于ARM7微处理器LPC2148接口的3.2寸液晶触摸屏,具有精度高、彩色显示逼真、应用灵活等特点,可作为中高档电子产品字符、图像的显示及人机对话的窗口。

1总体设计方案

系统的总体设计方案如图1所示。液晶触摸屏系统由312寸TFT液晶屏模块、触摸屏和ARM微处理器控制板组成。

触摸屏由触摸传感部件和触摸屏控制器ADS7843组成,触摸传感部件安装在LCD液晶屏前面,用于检测用户触摸位置,用户触摸信息送往ADS7843控制器,并转换成触点坐标,送给ARM7控制板,LPC2148微处理器与液晶及触摸模块相连接,根据接收到的触摸信息,进行信号运算和处理,输出蜂鸣器等控制信号,控制液晶屏实现用户画面和数据的显示。

图1液晶触摸屏系统总体设计方案

2电路及原理

2.1液晶触摸屏原理及ADS7843触摸控制电路

原理如图2所示。

U1为3.2英寸TFT液晶模块,+3.3V供电;内置SSD1289液晶控制器;液晶屏分辨率为240×320像素;屏幕颜色26万色;屏幕尺寸为57mm×79mm,有效显示面积为51mm×65mm.SSD1289液晶控制器由16位并行数据接口、内部控制器和LCD驱动器组成。液晶数据传输方式为16位并行方式,LPC2148的16根I/O口线分别接液晶模块的DB0~DB15.PWM为亮度驱动控制输入,经9013三极管放大后作为液晶背光。

触摸屏部分由触摸传感部件和触摸屏控制器ADS7843(U2)组成。

图2液晶模块及触摸电路原理

触摸传感部件是一个四线电阻屏幕,屏上引出四根线,分别对应X轴和Y轴各两根。测量X方向的时候,将X+,X-之间加上参考电压Vref,Y-断开,Y+作为A/D输入,获得X方向的电压;同理测量Y方向的时候,将Y+,Y-之间加上参考电压Vref,X-断开,X+作为A/D输入,进行A/D转换获得Y方向的电压,之后再完成电压与坐标的换算,整个过程类似一个电位器,触摸不同的位置分得不同的电压。

以上所需要的参考电压、A/D转换等工作由触摸屏控制器ADS7843直接完成的,微处理器只需将相应的控制命令传输到ADS7843即可,以获得相应电压的数据。

ADS7843是TI公司生产的四线电阻触摸屏转换接口芯片。它是一款具有同步串行接口的12位取样模数转换器。在125kHz吞吐速率和2.7V电压下,功耗为750LW.在关闭模式下,功耗仅为0.5LW.由于具有低功耗和高速等特性,被广泛应用在电池供电的小型手持设备上。

ADS7843与LPC2148的连结关系如图3所示。ADS7843工作电压+3.3V,转换器的模拟输入(X+、Y+、X-、Y-)是一个4通道多路器;DCLK(第4引脚)是外部时钟输入引脚;CS(第3引脚)是片选输入端,低电平有效;DIN(第2引脚)是串行输入,控制数据通过该引脚输入;DOUT第16引脚)是串行数据输出,用于输出转换后的触摸位置数据,最大数为二进制的4095;PENIRQ(第15引脚)是PEN中断,用于触摸显示屏后引发一个中断。

2.2微处理器控制电路

原理如图3所示。

图3微处理器控制电路原理图

(1)LPC2148微处理器

ARM处理器占有市场份额高,具有性能高、成本低、能耗省等特点。图3中LPC2148(U3)是PHILIPS半导体公司推出的一个基于ARM7TDMI-S核、支持实时仿真和嵌入式跟踪的32位嵌入式ARM7微处制器。该处理器内置了宽范围的串行通信接口、14通道10位ADC、1通道10位DAC、45个高速GPIO线以及多达9个边沿或电平触发的外部中断管脚。处理器集成有40kB的片内SRAM、512kB嵌入的高速Flash存储器,128位宽度的存储器接口和独特的加速结构使32位代码能够在最大时钟速率下运行,为通信网关、协议转换器、软件modem、语音识别、低端成像等应用提供大规模的缓冲区和强大的处理功能,适合于彩色液晶的图片处理和数据存储。

(2)复位和晶振电路

LPC2148第57脚为复位信号输入端,采用低电平复位,由C3、R9、R10、K1构成的复位电路为系统提供上电复位和强制复位功能,K1为系统强制复位按键。晶振电路由X1(12MHz)、C7、C8构成,支持微控制器芯片内部PLL及ISP功能;X2(321768KHz)、C9、C10为RTC(实时时钟)提供基准时钟。

(3)资源分配

LPC2148的P0.8~P0.23作为16位数据线(D0~D15),经JP1插座与液晶模块的DB0~DB15连接;P0.0、P0.26、P0.28~P0.31作为液晶模块的控制口线使用,经JP1分别与液晶模块的PWM、CS、RESET、RS、RD和WR连接;P0.27、P1.16~P1.20用于触摸屏控制,通过JP1的连接分别接ADS7843的BUSY、7843-CS(CS)、DCLK、DIN、INT(PENIRQ)和DOUT引脚。

P1.26~P1.31作为JTAG功能使用,JP2为微处理器JTAG程序调试及下载端口。

P0.25作为蜂鸣器控制口线,蜂鸣器电路用于液晶触摸或显示时发出蜂鸣声响,作为人机对话的辅助功能。蜂鸣器使用PNP三极管8550(Q2)进行驱动,其放大倍数高(hFE=300),基级偏置电阻R8为1k,当输入低电平时,Q1为深度饱和导通,可为蜂鸣器提供足够的电流。

(4)电源电路

LPC2148为单电源供电,CPU操作电压为3.0~3.6V。

电路采用+3.3V供电,外接+5V直流电源经AMS1117(U4)稳压器稳压后,输出+3.3V电压,给液晶模块和ADS7843供电。AMS1117的特点是输出电流大(800mA),输出电压精度在1%以内,具有电流限制和热保护功能,稳定性好。C4、C5、C6均为电源滤波电容。

3软件编程

3.1对液晶屏的C程序设计

液晶屏的软件设计采用C语言编程。包括液晶屏初始化、写液晶控制字、写液晶数据子程序、读液晶液晶数据、全屏显示单色、指定位置显示汉字和字符、指定位置显示图片、清屏等子程序。

写液晶数据子程序为:

3.2对触摸屏的C程序设计

触摸屏的程序设计主要是确定其位置坐标与液晶屏上位置坐标的对应关系,通过一定的算法把触摸屏触摸信息转化为液晶屏上的位置坐标。液晶屏像素为240×320,从触摸屏接收到的X值不在0~320范围变化、Y值也不在0~240范围变化,在触摸屏的边缘区域,X、Y方向输出数据变化较大,是非线性关系,坐标值在中间大部分范围内基本是成线性变化的。为了较准确的进行坐标转换,可采用线性求值和查表相结合的方式进行坐标转换。

触摸屏的C程序设计主要包括触摸屏初始化子函数、读A/D转换值子函数、坐标原始值子函数和坐标转换子函数。

与ADS7843相关的引脚C程序预处理为:

读A/D转换值子函数:

4结束语

在嵌入式智能设备中,用液晶触摸屏取代传统的按键、LED等人机对话部件,具有操作简便、界面友好及功能较强等优点。随着LCD液晶屏价格的进一步下降,液晶触摸屏有着更宽广的应用市场,基于ARM微处理器与液晶触摸屏的技术开发具有现实意义和社会经济价值。本系统以ARM7处理器LPC2148作为主控制器,与传统单片机相比,具有较大的数据存储容量和较快的图片处理速度;液晶屏带触摸功能,大大增强了人机对话的交互能力;基于C语言的编程方法有较强的实时性。所设计的液晶触摸屏应用于ARM嵌入式创新实训系统和便携式铁路平调装置故障检测仪,触摸键反应灵敏,与ARM7处理器接口电路运行可靠,验证了系统设计的可行性,具有较高的实际应用价值。



『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
发明专利在疫情影响下的逆势增长