基于FPGA及嵌入式CPU 的TFT-LCD接口设计

发布者:Serendipity66最新更新时间:2011-12-01 关键字:嵌入式CPU  TFT-LCD 手机看文章 扫描二维码
随时随地手机看文章

  1 引言

  随着电子技术的飞速发展,TFT-LCD作为在亮度、对比度、功耗、寿命、体积和重量等综合性能上全面赶上和超过 CRT的显示器件,被广泛用于各种仪器仪表、电子设备及控制领域中。与之相关的显示控制技术也呈现出越来越多的方式。本文以 640*480的数字输入的 TFT_LCD显示屏为例,介绍了一种基于 NiosII软核处理器实现对 TFT-LCD接口的方法。解决了通常情况下必须使用LCD 控制专用芯片才能解决 LCD显示的问题。

  2 系统组成

  系统框如图 1所示。系统是由 FPGA、显示缓存 RAM、程序执行 RAM及 TFT-LCD组成。 FPGA(用虚线围成)选用的是 ALTER的 EP1C6,RAM采用的是 IDT的 IDT71V547,LCD为 640*480的彩色 TFT-LCD屏。在 FPGA内部是由时序发生、 地址切换、数据分离、调色电路及嵌入式 CPU(NIOS内核)五部分组成。




   3各器件的功能

  3.1显示缓存 RAM

  采用 IDT公司的 IDT71V547 128K X 36bit的 SRAM芯片,工作电压为 3.3V [1]。该芯片作为显示缓存,TFT_LCD读取显示缓存 RAM中的数据并将其在 TFT_LCD上显示。嵌入式 CPU(NIOSⅡ)对显示缓存 RAM的改写就相当于对 TFT_LCD显示内容的改写。

  3.2 FPGA 本文 FPGA选用的是 ALTERA公司的 Cyclone 系列中 EP1C6Q240。

  3.2.1 时序发生电路

  首先由外部输入一相当的频率时钟,通过 FPGA内部的锁相环电路(PLL)生成 100MHz的时钟信号。系统对 100MHz时钟计数生成 50MHz的时钟给嵌入式 CPU(NIOSⅡ)作为嵌入式 CPU的工作主频,同时生成 TFT_LCD所须的场同步时钟、行同步时钟、显示使能时钟和 25MHz的 TFT_LCD主时钟;生成地址切换控制信号、数据分离控制信号,由嵌入式 CPU输出的读写信号产生显示缓存 RAM的读写信号。

  3.2.2调色电路

  由于文中是以 256色的电路为例,所以,调色电路是将 8位数据译码成 3*6位的三基色数据,调色电路也可以是 ROM型或 RAM型。如果作成 RAM型,可以依据嵌入式 CPU需要显示的图象相应修改调色电路,可显示更丰富的色彩。

  3.2.3地址切换、数据分离

  此部分电路的作用是:在嵌入式 CPU操作显示缓存 RAM时将地址、数据线切换到嵌入式 CPU,在 TFT-LCD读显示缓存 RAM时将地址、数据线切换到 TFT_LCD。

  3.3 TFT-LCD

  SHARP公司生产的 *英寸液晶显示屏LQ064V3DG01是较为常用的 TFT-LCD液晶显示屏,它的分辨率为 640×480×RGB[2],具有功耗低、体积小、重量轻、超薄等特点,同时该显示屏是一片真彩显示屏,并属于透光型的 TFT、其亮度高、视角宽、背光灯的寿命也很长,并且采用的是 AG涂层和 260K的彩色显示。可广泛应用于各种仪器仪表及各种视频显示的场合。

   4主要电路的设计

  4.1时序发生电路的设计

  时序发生电路是设计的主要部分。首先,是对系统输入时钟进行频率变换, FPGA(EP1C6)的内部有两个 PLL电路模块,本文用其中的一个来生成 100MHz的时钟。再设计一个 12位的计数器(行计数器),计数 3200脉冲,产生 TFT_LCD的行同步时钟,通过此计数器的计数还可生成 TFT_LCD的显示使能信号(DE)。此计数器的输出还是 TFT_LCD读显示缓存 RAM地址的低 8位(RAM以 32位数据宽度计算)。另设计一个 9位的计数器(场计数器),用其对行同步信号计数又可生成 TFT_LCD场同步的相关信号,同时此计数器的输出可作为 TFT_LCD读 RAM地址的高 9位。

  由于嵌入式 CPU与 TFT_LCD是复用一片显示缓存 RAM,所以要对显示缓存 RAM在时间上进行分时控制。由于 IDT71V547是 32位数据宽度的 RAM,如果将 TFT_LCD设计成256色显示,则读显示缓存 RAM一次可显示 4个像素点。所以把行计数器输出的 25MHz时钟作为基准(TFT_LCD主时钟)、以 25MHz的 4个周期(T0、T1、T2、T3,T0=T1=T2=T3=40纳秒)为基本循环,在 25MHz的第一个周期( T0)由 LCD占用产生“ LCD_读选通”信号, (LCD_读选通= (/12.5MHz)&(/6.25MHz) )。T1-T3由 CPU占用,在 T1-T3周期内产生相应的选通信号, (T1=(12.5MHz)&(/6.25MHz)、 T2=(/12.5MHz)&(6.25MHz)、T3=(12.5MHz)&(6.25MHz)),由于 CPU什么时间对显示缓存 RAM读写是不确定的,所以要根据 CPU的读写信号来确定 T1-T3哪个为“CPU_RAM_选通”信号(如果在 T0内来 CPU_RW则 CPU_RAM_选通=T2、T1来 CPU_RW则为 T3、T2来 CPU_RW则为 T3、T3来 CPU_RW则为 T1)。此逻辑的实现方式是,在 CPU_RW信号产生时锁存住当时的 T0-T3的状态由此来控制“CPU_RAM_选通”产生的位置。在具体时序见图 2所示。


  4.2地址切换和数据分离电路的设计

  图 3是地址切换电路中的一位,以这一位为示例 ,可推出 17位地址全部电路。在图 3中 RAM_ADD=((LCD_ADD&LCD_选通)+(CPU_ADD&CPU_RAM_选通))且 “LCD_读选通”信号与“ CPU_RAM_选通”信号在任何时刻最多只能有一个是有效的,所以当“ LCD_读选通”信号与“ CPU_RAM_选通”生效时可将 RAM_ADD切换到相应的地址线上。如当某时刻“ LCD_读选通”信号与“ CPU_RAM_选通”全无效则 RAM_ADD输出应全为“ 0”。


  图 4是数据分离电路中的一位,同样 ,以图 4这一位可推出 32位数据线。


  在图 4中,RAM_R_W= (CPU_RAM_选通)&(CPU_WD),当 RAM_R_W有效时, CPU_写 DATA可通过三态门输出到 RAM_DATA上。当 CPU读 RAM时,RAM的数据由门电路输出到锁存器的输入端,在数据稳定后由“ CPU_R_锁存”信号将数据锁存在锁存器上等待 CPU将数据读走(CPU_R_锁存=(( / CPU_RD)& CPU_RAM_选通&25MHz&(/50MHz)))。

  同样的在 T0周期内将 RAM的相应数据由“ LCD_锁存”信号将 32位的数据锁存在锁存器上。在相应的 T0-T3周期由 T0-T3选择相应的 8位数据输出到调色电路上,在相应时刻由 “LCD_调色输出锁存”信号将此像素点数据锁存,由 TFT_LCD读取此点的三基色数据并显示。

  4.3调色电路

  调色电路实际为利用 FPGA内部的片内 RAM,由 Quartus 软件生成的 24位 256字节的 RAM或 ROM,RAM或 ROM的地址线接 LCD数据锁存器的输出端后的数据选择电路,数据选择电路是将 32位的数据,按 T0-T3所决定的时间,选择相应的 8位数据。当 T0时选 D[24]-D[31]、当 T1时选 D[0]-D[7]、当 T2时选 D[8]-D[15]、当 T3时选 D[15]-D[23]。之所以将数据选择设计成 T0时选 D[24]-D[31],是因为 TFT_LCD读显示缓存 RAM时,是在 T0周期的末端才能将新数据锁存到“ LCD-读 DATA”端,新的数据只有在 T1周期才能开始显示。调色电路的输出是 3*8=24bit的本文所用的 TFT_LCD是 3*6bit的所以只用相应 8bit的低 6bit。如果将调色电路设计选择 RAM型时,可以由 CPU改写调色电路 RAM,使色彩显示更加丰富。

  4.4显示缓存设计

  显示缓存 RAM的选择由 LCD显示彩色多少决定的,如果显示 16色可以选择每像素点占 4bit,这样每读一次 RAM可显示 8个像素点。以此类推来选择显示缓存 RAM的大小和相应修改时序发生电路的周期。对 CPU的显示缓存 RAM口的设置时,一定要注意显示缓存 RAM的 CPU读写周期与时序发生电路的周期相一致,否则会发生读写错误。本例设置的是 160纳秒( T0+T1+T2+T3=160ns)[3,4]。

  5 结束语

  本文介绍了一种基于 FPGA及 NiosII软核处理器与 TFT-LCD接口的主要部分的设计要点,该设计内容已经在实际电路上得到验证,并在一些仪器的显示系统上得到应用。


关键字:嵌入式CPU  TFT-LCD 引用地址:基于FPGA及嵌入式CPU 的TFT-LCD接口设计

上一篇:现场控制总线CAN网络与有线无线网的转换
下一篇:基于FPGA的单片机外围接口电路设计

推荐阅读最新更新时间:2024-05-02 21:45

G京东方出手驱动IC TFT-LCD链条整合提速
   G京东方出手驱动IC   出售子公司换股天利半导体,TFT-LCD链条整合提速   尽管2006年上半年度仍可能将持续亏损,但G京东方(000725.sz)在TFT-LCD(薄膜晶体管液晶显示器)产业链的布局仍在不断深入——继成功争取全球市场占有率超过60%的玻璃基板巨头康宁落户北京后,近日其又在TFT-LCD的重要上游环节驱动IC领域展开资本运作。   6月5日,G京东方宣布将下属子公司——北京方益集成电路设计有限公司(下称北京方益)——出售给天利半导体。   根据G京东方发布的交易公告,公司及下属子公司BOE Hydis技术株式会社(下称BOE Hydis),分别将所持北京方益的75%和25%股权全部转让给天利
[焦点新闻]
一种基于ARM9的彩色TFT-LCD模块设计及实现
1 引  言 TFT-LCD因其厚度薄且画面质量优异,可以实现信息的高速度、高亮度及高对比度显示,已广泛应用于图像显示系统中。虽然TFT-LCD具有良好的显示性能,但TFT-LCD的驱动信号非常复杂,同时外围的控制单元需要处理的数据量非常大,以一个分辨率为640×480的彩色TFT-LCD为例,显示一幅彩色图像就需要处理900kbyte的数据量,这对于传统的单片机等处理器显得无能为力。由于图像数据量大,目前图像大都采用压缩后再存储,其中JPEG (Joint PhotographicExperts Group)格式的压缩图像应用最为广泛。 为了解决图像等大容量数据在TFT-LCD显示屏上的应用,本文提出了一种基于ARM9处
[嵌入式]
TFT-LCD驱动电路的设计
薄膜晶体管液晶显示器(TFT-LCD)具有重量轻、平板化、低功耗、无辐射、显示品质优良等特点,其应用领域正在逐步扩大,已经从音像制品、笔记本电脑等显示器发展到台式计算机、工程工作站(EWS)用监视器。对液晶显示器的要求也正在向高分辨率、高彩色化发展。 由于CRT显示器和液晶屏具有不同的显示特性,两者的显示信号参数也不同,因此在计算机(或MCU)和液晶屏之间设计液晶显示器的驱动电路是必需的,其主要功能是通过调制输出到LCD电极上的电位信号、峰值、频率等参数来建立交流驱动电场。 本文实现了将VGA接口信号转换到模拟液晶屏上显示的驱动电路,采用ADI公司的高性能DSP芯片ADSP-2116来实现驱动电路的主要功能。 硬件
[单片机]
<font color='red'>TFT-LCD</font>驱动电路的设计
08年大尺寸TFT-LCD面板市场回顾与展望
2008年由于受全球金融危机的影响,消费需求持续疲软,我国作为IT产品生产大国,在这场危机中也深受影响,笔记本电脑、液晶电视和液晶显示器等终端产品的产量增速明显下滑,导致大尺寸TFT-LCD面板的市场增长率也出现了很大的下降。2008年我国大尺寸TFT-LCD面板销售量达到2.15亿片,较2007年增长20.7%,低于2007年30.1%的高增长率。   图 1 2005-2008年中国大尺寸TFT-LCD面板市场需求量及增长率      数据来源:赛迪顾问,2008.12    市场出现“淡季不淡,旺季不旺”的局面。2007年受终端市场强烈需求的影响,液晶面板市场出现供不应求的局面,面板价格一路高涨,一些面板厂商
[焦点新闻]
08年大尺寸<font color='red'>TFT-LCD</font>面板市场回顾与展望
一种带Cache的嵌入式CPU的设计与实现
随着集成电路设计和工艺技术的发展,嵌入式系统已经在PDA、机顶盒、手机等信息终端中被广泛应用。嵌入式系统具有电路尺寸小、成本低廉、可靠性高、功耗低等优点,是未来集成电路发展的方向。而作为嵌入式系统核心的微处理器,其性能直接影响整个系统的性能。为了提高CPU的效率和指令执行的并行性,现代微处理器广泛采用流水线设计,所以,CPU流水线的设计成为决定其性能的关键。 MIPS(Microprocessor without Interlocked Pipeline Stages)是一种典型的RISC(Reduced Instruction Set Computer)微处理器,在嵌入式系统领域中得到广泛的应用。MIPS32TM指令集
[单片机]
电子纸的尴尬:消费者到底有没有厌倦TFT-LCD
        前些时日,高通子公司高通光电科技(Qualcomm MEMS Technologies)在韩国宣布与韩国最大的书商教保文库(Kyobo)合作切入教育市场。在本周,QMT带着这款电子书来到台湾向媒体进行介绍,并宣布2012的CES展上将可看到更多新的合作伙伴与终端产品。     蝴蝶振翅的力量可以创造美丽的色彩,有着这样的典故,新一代显示技术“Mirasol”终于成功量产!但其实为何2010年1月在CES展秀出一款5.7寸的彩色电子阅读器后一直没有量产消息?我们可以从这样的迟滞,看出新一代电子纸的尴尬处境。     以 TFT-LCD为显示技术的iPad横扫全球可能是重要原因。在iPad推出之前,在TFT-L
[手机便携]
STM32 FSMC接口驱动TFT-LCD设计
0 引言 随着电子产品的不断更新,各种显示界面的开发越来越多,由于TFT彩屏的性价比高,因而被广泛用在各种电子设备上作为显示屏。目前驱动TFT彩屏的方案有很多,可以用底端单片机驱动一个终端类型的液晶模组,这种模组价格比较贵,当然用起来还是很方便的。 只要单片机通过串口或并行口向TFT发送几个字节的命令,就能在屏幕上显示你需要的效果。本设计利用STM32 的FSMC 总线直接驱动TFT 数字彩屏。这种方案对相应的寄存器进行配置后就可以自动向TFT数字彩屏发送数据,无需CPU参与,让CPU有足够时间来处理其他程序。 1 STM32 简介 STM32 是基于ARM 内核Cortex-M3 的32 位微控制器系列。Cortex-M3
[单片机]
STM32 FSMC接口驱动<font color='red'>TFT-LCD</font>设计
一种基于ARM9的彩色TFT-LCD模块设计及实现
1 引 言 TFT-LCD因其厚度薄且画面质量优异,可以实现信息的高速度、高亮度及高对比度显示,已广泛应用于图像显示系统中。虽然TFT-LCD具有良好的显示性能,但TFT-LCD的驱动信号非常复杂,同时外围的控制单元需要处理的数据量非常大,以一个分辨率为640×480的彩色TFT-LCD为例,显示一幅彩色图像就需要处理900kbyte的数据量,这对于传统的单片机等处理器显得无能为力。由于图像数据量大,目前图像大都采用压缩后再存储,其中JPEG (Joint PhotographicExperts Group)格式的压缩图像应用最为广泛。 为了解决图像等大容量数据在TFT-LCD显示屏上的应用,本文提出了一种基于ARM9处理
[单片机]
一种基于ARM9的彩色<font color='red'>TFT-LCD</font>模块设计及实现
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

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

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