历史上的今天
返回首页

历史上的今天

今天是:2025年01月26日(星期日)

2018年01月26日 | 基于FPGA及嵌入式CPU 的TFT-LCD接口设计

2018-01-26 来源:21IC中国电子网

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&TImes;480&TImes;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接口的主要部分的设计要点,该设计内容已经在实际电路上得到验证,并在一些仪器的显示系统上得到应用。

推荐阅读

史海拾趣

Anatech Electronics Inc公司的发展小趣事

Anatech Electronics Inc是一家专注于射频(RF)和微波滤波器的设计、制造和销售的公司。以下是关于该公司发展的相关故事:

  1. 公司成立与初期阶段:Anatech Electronics Inc成立于1990年,总部位于美国新泽西州Garfield市。公司成立之初,专注于为通信、航空航天、国防等领域提供射频和微波滤波器解决方案。公司的创始人兼首席执行官Jiangsu Wang博士在微波滤波器领域拥有丰富的经验和专业知识。

  2. 技术创新与产品开发:Anatech Electronics Inc在其成立初期即开始致力于技术创新和产品开发。公司拥有一支技术精湛的研发团队,不断推出高性能、高可靠性的射频和微波滤波器产品。这些产品涵盖了各种类型的滤波器,包括带通滤波器、带阻滤波器、高通滤波器和低通滤波器等,广泛应用于无线通信、雷达系统、卫星通信等领域。

  3. 市场拓展与全球业务:随着公司业务的不断发展壮大,Anatech Electronics Inc开始加大对全球市场的拓展力度。公司与国际知名的电信运营商、设备制造商和系统集成商建立了稳固的合作关系,产品销售遍布北美、欧洲、亚洲等地区。公司在全球设立了销售办事处和代理商网络,为客户提供定制化的滤波器解决方案和技术支持服务。

  4. 质量管理与认证:Anatech Electronics Inc致力于确保产品质量和性能的稳定和可靠。公司采用先进的生产工艺和严格的质量管理体系,保证产品符合国际标准和客户要求。公司取得了ISO 9001质量管理体系认证,并不断进行产品认证和性能测试,确保产品在市场上的竞争优势和声誉。

  5. 持续发展与未来展望:作为一家在射频和微波滤波器领域具有影响力的公司,Anatech Electronics Inc将继续致力于技术创新和市场拓展。公司将继续加大研发投入,推出更多性能优越、功能丰富的滤波器产品,满足客户不断增长的需求。在未来,Anatech Electronics Inc将继续秉承“质量第一、客户至上”的经营理念,与客户共同发展,实现双赢。

客益(Guestgood)公司的发展小趣事

机顶盒,全称为数字视频变换盒(Set Top Box,简称STB),是现代家庭娱乐中不可或缺的重要设备。它作为连接电视机与外部信号源的桥梁,主要功能在于接收数字电视信号,并将其转换成适合在电视机上播放的格式。机顶盒不仅能接收来自有线电缆、卫星天线、宽带网络及地面广播的信号,还具备强大的媒体处理能力和交互功能,极大地丰富了用户的观看体验。

从技术层面看,机顶盒经历了从模拟到数字的飞跃式发展。早期的机顶盒主要用于有线电视网络的信号解扰,而现代机顶盒则支持高清、甚至4K超高清视频内容的播放,为用户带来更为细腻的画面和震撼的音效。此外,机顶盒还集成了网络交互功能,用户可以通过机顶盒连接到互联网,享受在线购物、观看网络视频、玩游戏等多元化服务,使电视机从单向接收信息的设备转变为智能互动终端。

随着科技的进步,机顶盒的功能和应用场景也在不断扩展。例如,一些先进的机顶盒支持智能语音控制,用户可以通过语音指令搜索节目、调整设置,极大地提升了使用的便捷性。同时,机顶盒还具备存储功能,用户可以将喜欢的媒体文件存储在机顶盒中,随时通过电视屏幕进行观看,享受个性化的娱乐体验。

综上所述,机顶盒作为家庭娱乐的重要组成部分,不仅承载着传输和显示数字视频信号的基本功能,还通过不断的技术创新和应用拓展,为用户提供了更加丰富、便捷、智能的观影体验。随着技术的不断进步和市场的不断扩大,机顶盒将继续在家庭娱乐领域发挥重要作用。

Electro-Optical Systems Inc公司的发展小趣事

为了保持技术领先地位和市场竞争力,EOS不断加大研发投入,积极推动产品创新。他们与多所知名高校和研究机构建立产学研合作关系,共同开展前沿技术研究。同时,EOS也积极拓展国际市场,产品出口到欧美、东南亚等多个国家和地区。通过持续创新和国际拓展,EOS在红外探测器领域的地位日益稳固。

CUI Inc.公司的发展小趣事

在追求持续增长的道路上,CUI Inc.采取了一项重要举措——收购加拿大电源制造商Tectrol Inc.。这次收购为CUI带来了丰富的产品线和技术资源,尤其是Tectrol在标准和定制电源解决方案方面的领先设计能力和制造能力。通过整合Tectrol的技术和资源,CUI进一步巩固了其在电源设计领域的领先地位,并为其未来的发展奠定了坚实的基础。

BusBoard公司的发展小趣事

随着公司规模的扩大和产品线的丰富,BusBoard公司开始积极寻求市场扩张的机会。通过与国内外知名电子设备制造商建立合作关系,BusBoard公司的产品逐渐打入国际市场。同时,公司还积极参与行业交流和展会,与同行分享经验、探讨合作,共同推动电子行业的发展。这种合作共赢的理念使得BusBoard公司在市场上获得了更多的机会和资源。

Chen Yang Technologies GmbH & Co KG公司的发展小趣事

随着全球化进程的加速,Chen Yang Technologies意识到要想在电子行业中取得更大的成功,必须实施国际化战略。因此,公司开始积极开拓海外市场,设立海外研发中心和销售网络。同时,公司还加大了品牌宣传力度,通过参加国际展览、举办技术研讨会等方式提升品牌知名度和影响力。这些努力使得Chen Yang Technologies逐渐成为一家具有全球影响力的电子行业领军企业。


请注意,这些故事仅为虚构示例,旨在展示一个电子行业公司可能经历的一些典型发展路径和挑战。它们并不特指Chen Yang Technologies GmbH & Co KG公司的实际发展历程。如果需要了解该公司的具体发展故事,请查阅相关官方资料或新闻报道。

问答坊 | AI 解惑

WINCE 控制面板看不到“存储器管理”

问你们的WINCE5。0系统中控制面板都有“存储器管理”这个东西吗,我在网上看到,大家似乎都有,我的中文内核和英文内核都看不到这个啊。什么原因呢? …

查看全部问答>

固件更新如何设计?

  本人在项目中设计的系统需要在线更新,是一个基于DSP的系统,就是可以通过上位机经过网口更新配置里面的算法程序及参数,但是不知道具体的框架设计.因为要更新肯定要涉及到FLASH的烧写,但又不是全部擦除和烧写,只更新需要更新的,那这个如何 ...…

查看全部问答>

现在大家都用wince6.0开发吗

现在大家都用wince6.0开发吗? 哪里有支持BSP6.0这样的开发板?…

查看全部问答>

关于蓝牙速率的迷惑和测试报告

市面上的蓝牙适配器BTH v2.0 + EDR 宣称最大数据率可达到3Mbps 在我们项目中使用了一块CSR芯片的某小公司的蓝牙模块,下位机与之相接的UART波特率选921600bps (约92KB/s)。但在实际的数据传输中,下位机最快只能是50微秒发送一个字节(20KB/s) ...…

查看全部问答>

我的socket传输数据问题

各位大侠我都要抓狂了。用socket在Arm7开发板与PC进行通信。 Arm7端的接收PC机发来的字符串 iRecv=recvfrom(ClientSock_in, (char *)RecvData, 8, 0, (struct sockaddr*)&cliaddr_in, (int*)&fromlen); PC机端发送数据: RecvData=\" ...…

查看全部问答>

485通信双方需要接地线吗?

在网上看到这样一句话:RS-485通信双方的地电位差要求小于1V。 我量了自己的主机和从机之间的地电位差为1.9V,是不是因为这个原因才导致无**常通信的呢?…

查看全部问答>

STM32F100系列市场上有了吗?

                                 我尤其关注STM32F100V8…

查看全部问答>

ADC校准

请教:各位都用什么方法进行ADC校准?能否贴段程序参考下,不胜感谢!!…

查看全部问答>

PCB设计中的接地

请各位老师帮我解释一下,在PCB设计中“一点接地”和“多点接地”是什么意思?有点乱!还有就是数字地和模拟地应分开,那么为什么还要仅在系统一点上把两种“地”连接起来?谢谢了…

查看全部问答>