基于LPC2478 LCD控制器的模拟显示驱动系统设计

发布者:星空行者最新更新时间:2023-05-16 来源: elecfans关键字:LPC2478  LCD控制器 手机看文章 扫描二维码
随时随地手机看文章

引言

目前,ARM在嵌入式系统中的应用越来越广泛。本文选用的是NXP公司32位LPC2478。LPC2478丰富的资源适合在工业领域中应用,该芯片的成本和功耗都比较低,是内部集成LCD控制器的ARM7芯片。在工业领域中,相比较数字屏而言,模拟屏具有驱动能力、抗干扰能力强和价格低等优点。根据实际项目应用,本设计中采用了群创公司的7in模拟屏。


1 HX8817芯片简介

HX8817是一个带有ITUR BT.656和BT.601输入接口的TFT-LCD时序控制器。该控制器内置色彩空间转换电路、DAC和运算放大器,并且具有gamma校正和极性翻转功能,将数字数据转化为行极性变换方式的、模拟放大的RGB信号,同时产生模拟屏所需的水平和垂直时序。该芯片结构框图如图1所示。

基于LPC2478 LCD控制器的模拟显示驱动系统设计

2 LPC2478的LCD控制器

LCD控制器直接为多种彩色和单色LCD显示屏的接口提供了所有必需的控制信号。显示分辨率最高支持1 024×768。LCD控制器用于将像素编码数据转换成所需格式,并产生相应的时序以驱动各种单屏或双屏的单色和彩色LCD显示屏。该LCD控制还具有两个独立的DMAFIFO缓存器,当液晶屏为单屏,可将这两个缓存器合并为32双字节容量来使用。采用了DMA FIFO之后,SDRAM中的Frame. Buffer中的图像数据以DMA方式传输到LCD控制器数据缓存器FIFO,不占用系统总线时间。LCD控制器包含两个单独的AHB接口。一个是AHB从接口,主要被CPU用于访问LCD控制器内的控制寄存器和数据寄存器;另外一个是AHB主接口,被LCD控制器用来DMA访问存在于内存或系统其他地方的显示数据。LCD控制器的接口和控制信号引脚如表1所列。

基于LPC2478 LCD控制器的模拟显示驱动系统设计

3 系统硬件设计

具体的硬件电路框图如图2所示。

基于LPC2478 LCD控制器的模拟显示驱动系统设计

硬件电路可以分为以下部分:

①电源驱动电路设计。该电路主要功能是把5 V电源变成模拟屏所需的正负电压(VGL、VGH)。本设计采用MC34063芯片,该芯片外围电路简单,能很方便地设计出模拟屏所需的正负电压。


②ARM的LCD控制器与HX8817芯片接口设计。通过设定HX8817的IFl~IF3引脚,使得HX8817的输入为18位数字信号RGB(R5~R0,G5~GO,B5~B0),具体设定IFl~IF3均为高电平。分辨率通过RESl~RES3引脚设定,本文设定分辨率为480×234。但是由于LPC2478的LCD控制器数据总线为24位,因此在数据总线连接的时候必须注意对应的连接顺序。为了保证颜色的失真最低,只能丢弃LCD 24位RGB中的每种颜色数据的低两位。其他引脚对应方式如下:LCD控制器的LCDDCLK接HX8817的CLKl,LCDFP接VS,LCDLP接HS,LCDENA接DE。


③HX8817与模拟屏接口。此处所要注意的是HX8817的POL信号要经过运放电路,然后叠加直流信号,产生VCOM信号送给模拟屏,具体参考电路如图3所示。其他引脚只要一一对应连接即可。通过调节VCOM的DC端,可以改变LCD的色彩;调节AC端,可以改变LCD的对比度。

基于LPC2478 LCD控制器的模拟显示驱动系统设计

4 系统软件设计

本文的重点是讨论如何实现用LCD控制器的信号去驱动模拟屏,具体在显示上的一些GUI函数,不是本文讨论的内容,在此就不展开。HX-8817所需的时序信号是通过对LCD控制器的配置产生的,笔者根据实际项目应用,并比较HX8817输入时序信号和LCD控制器输出时序信号,对LPC2478的LCD控制器里的主要寄存器进行初始化设置。初始化函数Lcd_Init()主要代码如下:

基于LPC2478 LCD控制器的模拟显示驱动系统设计

5 总结

本文给出了一种LCD控制器信号直接驱动模拟屏的设计方案,主要就硬件的实现展开论述。经过实验证明,该设计方案具有硬件接口电路设计简单、成本较低等特点,对具有数字屏的项目转换成模拟屏具有很实际的借鉴意义,可广泛应用于工业自动化产品中。


关键字:LPC2478  LCD控制器 引用地址:基于LPC2478 LCD控制器的模拟显示驱动系统设计

上一篇:LPC1754内部PLL0原理及应用设计详解
下一篇:采用LPC2132控制步进电机实现康复机器人系统的设计

推荐帖子

好书推荐---《单片机原理与仿真设计》
单片机原理与仿真设计本书是一本面向高职高专电子类、机电类及计算机类等专业的教学而专门编写的书。在内容编排上针对“高职高专”的教学特点,融“教、学、做”为一体,从基础着手,知识面广,举例丰富,实用性强,尤其通过大量的实例介绍了如何利用Proteus软件支持单片机与其外围电路协同仿真的功能来进行单片机教学,使抽象的原理变得生动易学,便于教师的教学工作,也便于单片机初学者的学习与动手能力的加强。本书分为9章:第1~
tiankai001 下载中心专版
c51能实现64位的浮点运算吗?float 32位的误差太大了!
在单片机上做计算器的功能,需要比较高的精度,用float他只能支持到7位精度,超过7位的都给我四舍五入了,带来的误差实在太大了!我想用double双精度但sizeof发现他也是4个byte的和float一个样,难道c51单片机就没办法实现64位的双精度浮点运算?看到一般的计算器的精度都能去到9到10位,他们是怎么样实现的呢?是用了什么算法还是cpu根本不是c51系列呢?好奇怪,望大家帮忙解惑,万分感谢了!c51能实现64位的浮点运算吗?float32位的误差太大了!直接使用汇编语言来设计
ngy922 嵌入式系统
PPP连接的问题
我使用串口进行PPP拨号连接,LCP、PAP都过去了,到了IPCP时,已经可以分配IP地址,进入数据通信打开状态,为什么服务器端还给我发服务器(网关)的IP地址请求包啊?这个包在NCP配置阶段已经发过了,并且我发过ack包过去了。有哪位仁兄遇见过类似的问题,请给解决一下。谢谢!PPP连接的问题把你的NCP(即IPCP)处理部分逻辑列出来,或把代码贴出来。估计是逻辑有问题。一般来说,貌似程序逻辑有问题,仔细检查一下...
zhaonaiqiang 嵌入式系统
CCS5程序怎么下载到FLASH里面?
我现在可以仿真调试,程序;Run-Load-LoadProgram每次都是下到RAM里面了,断点重新开机后程序就没有了,程序怎么下到FLASH里面呢?CCS5程序怎么下载到FLASH里面?我也是刚刚开始学,也折腾了挺久,你看看下面链接的介绍:http://www.docin.com/p-189398655.html主要是修改那个cmd文件,一个是烧录到ram的一个是烧到flash的。我按文章里面介绍的在debug和release上面切换,进行exclude操作,没成功,我是
shuxmpx123 TI技术论坛
第一次接触瑞萨之-R7F0C802x Easy Start套件
在论坛活动中幸运抽的R7F0C802xEasyStart套件,这也是首次真正接触瑞萨的MCU,在此留贴以示纪念1.开发环境搭建(最好关闭各种杀毒软件)在光盘文件中有开发环境的安装包:双击开始进入安装界面(通过瑞萨官网阅读安装注意事项和相关组件,我的机器本身就有这些组件所以就省略了这些步骤):直接点击按钮“BeginCubeSuite+Setup”,进入下一个界面:选择“下一步(N)”进入:点选“Accept”,并点击“下一步(N)”:这里可以选择安装路径,以及可选的安装工
电子微创意 瑞萨电子MCU
【TI DLP创意征集】+特征识别防盗
运用DLP技术开发出具有人和物的特征识别装置,对人和对应的物进行配对。比如停车场,车辆进入时装置回记录车主和车的特征信息,当有盗贼靠近车辆开锁时,装置回自动报警并提醒管理员。【TIDLP创意征集】+特征识别防盗貌似很好,但我是菜鸟DLP是输出设备啊......不是摄像头啊.......anqi90发表于2015-10-1612:56DLP是输出设备啊......不是摄像头啊....... 这是类似机器视觉的应用
tommer TI技术论坛
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved