基于ARM7微处理器LPC2148 接口的3.2 寸液晶触摸屏
Ofweek 2022-07-01

  0 引言

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

  1 总体设计方案

  系统的总体设计方案如图1 所示。液晶触摸屏系统由31 2寸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(12MH z) 、C7、C8 构成,支持芯片内部PLL 及ISP功能;X2(321 768KH z) 、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 处理器接口电路运行可靠,验证了系统设计的可行性,具有较高的实际应用价值。

声明: 本文转载自其它媒体或授权刊载,目的在于信息传递,并不代表本站赞同其观点和对其真实性负责,如有新闻稿件和图片作品的内容、版权以及其它问题的,请联系我们及时删除。(联系我们,邮箱:evan.li@aspencore.com )
0
评论
  • 【7.24 深圳】2025国际AI+IoT生态发展大会/2025全球 MCU及嵌入式技术论坛


  • 相关技术文库
  • 单片机
  • 嵌入式
  • MCU
  • STM
  • 3AT89C51单片机引脚说明及引脚图

    AT89C51是一种带4K字节闪烁可编程可擦除只读存储器的低电压,高性能CMOS8位微处理器,俗称单片机。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU...

    昨天
  • 51单片机对LCD1602液晶的驱动设计

    51单片机——LCD1602 1、1602液晶读写时序 (1)、读状态 RS=L,R/W=H,E=H。(判断忙完毕后释放总线) (2)、读数据 RS=H,R/W=H,E=H。 (3)、写指令 RS=L,R/W=L,D0~D7=指令码,E=高脉冲 (4)、写数据 RS=H,R/W=L,D0~D...

    昨天
  • 单片机串口如何接收不定长数据的?

    我们在使用其他STM32的单片机的时候,会发现有些困难,会发现常用的方法并不能用,在还没有接收完数据的时候,就解决不了。于是,只能用通用的方法来解决了。 这个通用的方法,其实原理和使用IDLE的原理一样:...

    昨天
  • ARM处理器的选型原则

    鉴于ARM微处理器的众多优点,随着国内外嵌入式应用领域的逐步发展,ARM微处理器必然会获得广泛的重视和应用。但是,由于ARM微处理器有多达十几种的内核结构,几十个芯片生产厂家,以及千变万化的内部功能配置组合,...

    前天
  • 有哪些低功耗设计方法?单片机系统低功耗设计要点介绍

    功耗,已经是一个老生常谈的话题了。对于功耗,大家多多少少有所了解。目前,很多产品的宣传里便带有低功耗噱头。为增进大家对功耗的认识,本文将基于两点介绍功耗:1.低功耗主要设计方法,2.单片机系统低功耗设计...

    前天
  • 8位32位MCU如何选择?如何选择合适的MCU?

    MCU,对于普通人而言,是一个高大上的存在。但是,在工业中,MCU确实常见产品。为增进大家对MCU的认识,本文将基于两点介绍MCU:1.8位MCU和32位MCU如何选择?2.如何选择合适的MCU。如果你对MCU具有兴趣,不妨继续往...

    07-09
  • ARM开发:一 ARM微处理器概述

    1.1ARM-Advanced RISC Machines ARM(Advanced RISC Machines),既可以认为是一个公司的名字,也可以认为是对一类微处理器的通称,还可以认为是一种技术的名字。 1991年ARM公司成立于英国剑桥,主要出售芯片设计技术...

    07-08
  • 分析C51单片机的一些误区和注意事项

    简介:常看见初学者要求使用_at_,这是一种谬误,把C当作ASM看待了。在C中变量的定位是编译器的事情,初学者只要定义变量和变量的作 用域,编译器就把一个固定地址给这个变量。怎么取得这个变量的地址?要用指针。 1) C...

    07-08
  • 51单片机几个延时程序

    简介:51单片机几个精确延时程序:在精确延时的计算当中,最容易让人忽略的是计算循环外的那部分延时,在对时间要求不高的场合,这部分对程序不会造成影响. 一. 500ms延时子程序(晶振12MHz,一个机器周期1us.) 程...

    07-08
  • 总结单片机软件抗干扰的几种办法

    简介:在提高硬件系统抗干扰能力的同时,软件抗干扰以其设计灵活、节省硬件资源、可靠性好越来越受到重视。下面以MCS-51单片机系统为例,对微机系统软件抗干扰方法进行研究。 1、软件抗干扰方法的研究 在工程实践中...

    07-08
  • 基于C51单片机实现汽车座椅自动控制系统的软硬件设计

    引言 随着人们生活水平的提高,对汽车座椅的舒适性要求也越来越高,要求对汽车座椅地调节能够更加简单、方便、快捷。目前,汽车座椅位置的调节多采用基于手动调节方式的机械和电动控制两种方式。汽车座椅位置的调节...

    07-02
  • MCS51单片机程序设计时堆栈的计算方法解析

    用C语言进行MCS51系列单片机程序设计是单片机开发和应用的必然趋势。Keil公司的C51编译器支持经典8051和8051派生产品的版本,通称为Cx51。应该说,Cx51是C语言在MCS51单片机上的扩展,既有C语言的共性,又有它自己...

    07-02
下载排行榜
更多
评测报告
更多
广告