完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
随着电子技术的飞速发展,TFT-LCD作为在亮度、对比度、功耗、寿命、体积和重量等综合性能上全面赶上和超过CRT的显示器件,被广泛用于各种仪器仪表、电子设备及控制领域中。与之相关的显示控制技术也呈现出越来越多的方式。
|
|
相关推荐
3个回答
|
|
本文以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公司的IDT71V547128KX36bit的SRAM芯片,工作电压为3.3V[1]。该芯片作为显示缓存,TFT_LCD读取显示缓存RAM中的数据并将其在TFT_LCD上显示。嵌入式CPU(NIOSⅡ)对显示缓存RAM的改写就相当于对TFT_LCD显示内容的改写。 3.2FPGA 本文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.3TFT-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接口的主要部分的设计要点,该设计内容已经在实际电路上得到验证,并在一些仪器的显示系统上得到应用。 |
|
|
|
只有小组成员才能发言,加入小组>>
2894 浏览 3 评论
27697 浏览 2 评论
3472 浏览 2 评论
3982 浏览 4 评论
基于采用FPGA控制MV-D1024E系列相机的图像采集系统设计
2332 浏览 3 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-22 13:44 , Processed in 0.719506 second(s), Total 80, Slave 61 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号