基于FPGA+MCU的大型LED显示屏系统设计

发布者:美好回忆最新更新时间:2013-01-26 来源: dzsc关键字:FPGA  MCU  LED  显示屏系统 手机看文章 扫描二维码
随时随地手机看文章
  随着平板显示技术的不断更新,大型LED显示系统利用发光二极管构成的点阵模块或像素单元组成大面积显示屏,主要显示字符、图像等信息,具有低功耗、低成本、高亮度、长寿命、宽视角等优点。近年来广泛应用在证券交易所、车站机场、体育场馆、道路交通、广告媒体等场所。

  通常用单一单片机作为主控器件控制和协调大屏幕显示。由多片单片机构成的多处理器系统,其中一片作为主CPU,其他作为子CPU共同控制大屏幕的显示,该系统可以减轻主CPU 的负担,提高了LED点阵的刷新频率。但单片机的驱动频率有限,无法驱动等分辨率LED屏幕,尤其是对于多灰度级彩色大屏幕,数据送到显示屏之前要进行灰度调制重现图像的色彩,对数据的处理速度要求更高,单片机控制在速度上无法满足上述要求。因此该方案主要应用于实时性要求不高的场合,主要进行一些文字、图片等静态异步显示的控制。视频图像信号频率高、数据量大,要求实时处理,采用FPGA/CPLD设计控制电路,其中的同步控制、主从控制、读写控制和灰度调制等大量电路进行了集成,简化系统结构,便于调试且系统结构紧凑,工作可靠。与单片机控制电路相比,电路结构明显简洁,电路的面积减小,可靠性增强,调试也更为简单,由于FPGA/CPLD可以并行处理多个进程,比起单片机对任务的顺序处理效率更高,点阵的刷新频率也随之提高。

  对实时性要求较高、数据量较大的场合下,可编程逻辑器件是首选的核心数据处理器。本系统考虑对于传输视频数据大小和驱动LED大屏幕刷新频率的要求,LED发送卡、接收卡均采用FPGA作为核心处理器,笔者选择Xilinx公司基于90nm工艺制造的XC3S250E-FTG256,内有25万逻辑门,最高频率可以达到600MHz,完全可以满足系统速度的要求在系统中作为扫描控制单元,同时以MCU芯片为主控制单元。采用该方案可以有效简化显示屏的电路结构,从而提高了整个控制系统的灵活性和可靠性。

  1 系统的组成和工作原理

  该系统采用89C51单片机和SDRAM 组成控制中心,由基于Xilinx公司的FPGA的90nm工艺制造的XC3S250E-FTG256和RAM 组成扫描控制模块,以FLASH作为存储器模块,采用以太网传输数据,组成LED屏的控制系统。系统结构如图1所示。其工作原理为:主机通过TFTP协议将图片传输给系统以太网接口模块,以太网接口模块解析协议,接收图片数据,然后将数据传输给MCU,MCU 将接收到的数据写入存储模块NAND FLASH.在显示时,MCU读取FLASH 中的数据,通过SPI接口将数据传输给FPGA扫描控制模块,经扫描控制模块处理后传输到LED屏幕上显示。

图1 基于FPGA和MCU的LED显示屏控制系统框图

图1 基于FPGA和MCU的LED显示屏控制系统框图

  2 硬件系统设计

  2.1存储器电路设计

  本系统中需要用2片RAM 芯片作为缓存来存储视频数据,并以乒乓方式进行快速读写操作。目前主要有动态存储器(DRAM)和静态存储器(SRAM),SRAM 的读写时间短,静态功耗比较低,总线利用率高,它不需要刷新电路就能保存内部存储的数据,但是它的集成度较低,相同的容量占用体积大,价格较高,主要用于性能要求较高的领域。

  DRAM 只能将数据保持很短的时间,它使用电容存储,必须经常刷新电路来保存数据,它的读写过程比较复杂,时间较长,动态功耗较大,总线利用率比较低。不过DRAM 的存储容量大,价格便宜,被大量用在服务器和电脑中。由于DRAM 读写过程比较复杂,本系统要求存储器有快速的读写响应,所以设计中选用SRAM 作为存储器。本系统所用的LED屏大小为512×64,每个像素数据(RGB)占用24bit,则一场画面的数据量为512×64×24=768kbits.本设计选用ISSI公司的IS61LV25616芯片来存储视频数据。SAA7111输出16bit视频信号,16位数据线正好方便存储数据。它的容量为256×1 024×16bit,足够存储一场视频数据,并有留有充足的容量供系统以后的升级。SRAM 的电路设计如图2所示。

图2 SRAM 电路

图2 SRAM 电路[page]

2.2 FPGA的硬件设计

  FPGA的硬件设计如图3所示。FPGA 需要提供大量的I/O引脚和高速的显示控制信号,所选用的基于Xilinx公司的FPGA 的90nm 工艺制造的XC3S250E-FTG256可以满足设计的要求。

图3 FPGA的硬件结构

图3 FPGA的硬件结构

  2.3驱动电路

  FPGA采用的电压是3.3V,而LED屏体显示电路的电压是5V的TTL逻辑电平,因此需要进行电平转换的电路。这个电路由74HC245构成,工作电压为5V,74HC245采用CMOS工艺,是一种三态输出、8组总线收发器,其输入电平兼容3.3V系统,使用外接的5V电源将输出电平提升到5V,同时为各种控制和数据信号提供驱动能力。74HC245的电路如图4所示。其中:OE为输出控制引脚,低电平为有效;DIR引脚用于控制转换方向,接高电平时表示从A向B转换,A0~A7用于输入数据信号,B0~B7用于输出转换后的数据信号。

图4 74HC245驱动电路

图4 74HC245驱动电路

  2.4显示板的驱动电路

  LED显示板的面积很大,它的正面由LED 显示块级联而成,背面是驱动电路。由于LED的驱动电流相对较大,驱动电路应尽量和LED点阵模块靠近。因此行列驱动器一般都安装在屏体的背面。LED显示板的驱动电路中采用了74HC595芯片,是硅结构的CMOS器件,兼容低电压TTL电路,具有8位串入并出的移位、并行锁存和三态输出功能。移位寄存器和锁存器使用独立的时钟,数据SDATA 在SCLK的上升沿输入移位寄存器,在LT的上升沿进入的锁存器中去。当使能信号OE为低电平时,锁存器的数据输出到LED.74HC595芯片可以解决数据显示和数据串行传输在时间上的冲突问题,在显示1行各列数据的同时,可以准备下1列的LED数据。以1/16行扫描为例,LED显示板的驱动电路如图5所示。

  CLK是移位寄存器时钟,每个脉冲将引起1位数据移入74HC595中,当1行的数据全部移完后,锁存信号LT控制数据从74HC595的寄存器移入锁存器。A、B、C、D是行扫描信号,其中A是最低位,通过4/16译码器控制LED屏的行扫描。OE是消影信号,它可以选择控制行信号或列信号,用于LED点阵是否能被点亮和控制整屏的亮度。如果OE控制列信号,它接74HC595芯片的OE端,因为只有当OE为低电平时74HC595的输出才有效,否则输出三态。如果OE控制行信号,它接到4/16译码器的使能端,低电平时行扫描不起作用。

图5 LED显示板的驱动电路

图5 LED显示板的驱动电路[page]

  3 系统软件设计

  整个系统的软件包括2部分:上位机应用软件和嵌入制单元软件。上位机软件编辑在LED显示屏上显示的数息,并实现与下位机的通信;嵌入式控制单元软件实现了接收和存储、数据输出和图像显示方式变换,从而实现LED屏的控制。

  3.1上位机应用软件

  上位机应用软件用Visual C++编写,主要实现显示的编辑与通讯的功能。该软件运行于WindowsXP环境中,方便用户使用。完成的功能有:(1)对显示信息进行编辑、修改功能,也可以直接调用Windows中的256色画图文件(*.bmp);(2)在上位机上对显示的内容进行预览,以保证有较好的显示效果;(3)依照上位机与I2C接口模块的协议,将信息传输给系统以I2C接口模块,从而实现显示数据的更新。

  3.2嵌入式控制单元的软件

  嵌入式控制单元的软件实现以下3大功能:数据接收和存储、数据输出和图像显示方式变换。(1)依照显示屏与上位机之间的通讯协议,与上位机进行通讯,接收显示数据,存入Flash存储器。(2)将待显示的数据从Flash存储器中取出,对数据进行处理,实现上移、下移、左移、右移等丰富多彩的图像显示效果。(3)通过SPI接口将数据传输给扫描控制模块,FPGA通过串并转换等将数据转换成适合LED屏驱动电路格式的数据,然后传到LED屏幕上显示出来,仿真如图6,7所示。

图6 软件模拟显示效果

图6 软件模拟显示效果

图7 LED显示屏实际显示效果

图7 LED显示屏实际显示效果

  4 结语

  与传统的基于单片机的LED屏控制系统相比较,该系统在不增加系统成本的情况下,可支持256灰度级的全彩图文信息的显示,可以播放全彩动画;可存储较大容量的数据(64MB);通过I2C接口快速传输数据,为显示区域较大、显示内容切换频繁的大屏幕LED显示控制系统提供良好的解决方案。

参考文献:

[1]. 89C51 datasheet http://www.dzsc.com/datasheet/89C51_105386.html.
[2]. IS61LV25616 datasheet http://www.dzsc.com/datasheet/409218.html.
[3]. SAA7111 datasheet http://www.dzsc.com/datasheet/SAA7111_596088.html.
[4]. TTL datasheet http://www.dzsc.com/datasheet/TTL_1174409.html.
[5]. 74HC245 datasheet http://www.dzsc.com/datasheet/74HC245_1811615.html.
[6]. 74HC595 datasheet http://www.dzsc.com/datasheet/74HC595_1133522.html.
[7]. 1/16 datasheet http://www.dzsc.com/datasheet/1%2f16_2510134.html.

关键字:FPGA  MCU  LED  显示屏系统 引用地址:基于FPGA+MCU的大型LED显示屏系统设计

上一篇:一款新型烟草称重读卡定级器的设计与实现
下一篇:高通宣布开发ARM服务器SoC 首个ARMv8芯片2014年推出

推荐阅读最新更新时间:2024-03-16 13:17

51单片机教程:单片机存储器结构
单片机内部存储结构分析 我们来思考一个问题,当我们在编程器中把一条指令写进单片要内部,然后取下单片机,单片机就可以执行这条指令,那么这条指令一定保存在单片机的某个地方,并且这个地方在单片机掉电后依然可以保持这条指令不会丢失,这是个什么地方呢?这个地方就是单片机内部的只读存储器即ROM(READ ONLY MEMORY)。为什么称它为只读存储器呢?刚才我们不是明明把两个数字写进去了吗?原来在89C51中的ROM是一种电可擦除的ROM,称为FLASH ROM,刚才我们是用的编程器,在特殊的条件下由外部设备对ROM进行写的操作,在单片机正常工作条件下,只能从那面读,不能把数据写进去,所以我们还是把它称为ROM。 数的本质和物理现象:
[单片机]
51<font color='red'>单片机</font>教程:<font color='red'>单片机</font>存储器结构
谈谈如何学好单片机编程技术
当今时代,是一个新技术层出不穷的时代。在电子领域,尤其是自动化智能控制领域,传统的分立元件或数字逻辑电路构成的控制系统正以前所未见的速度被单片机智能控制系统所取代。大部分的高等工科学校都已开设了单片机课程。单片机具有体积小、功能强、成本低、应用面广等优点,可以说,智能控制与自动控制的核心就是单片机。目前,一个学习与应用单片机的高潮正在工厂、学校及企事业单位大规模地兴起。过去习惯于传统电子领域的工程师、技术员正面临着全新的挑战,如不能在较短时间内学会单片机,势必会被时代所遗弃,只有勇敢地面对现实,挑战自我,加强学习,争取在较短的时间内将单片机技术融会贯通,才能跟上时代的步伐。 但是,许多的学习者(包括在校学生),他们总不得要领,从
[单片机]
NEC电子推出汽车仪表盘用32位微控制器
NEC电子(美国)公司日前面向汽车应用领域,推出一款32位微控制器(MCU)最新产品——V850E/Dx3。该控制器基于NEC电子的V850 32位RISC CPU核,新器件具有各种专用的外设。据NEC表示,该款控制器是首个采用闪存存储器技术的MCU,适用于汽车电子仪表盘和驱动器信息系统。 该产品集成在片上的专用外设包括步进马达驱动器、LCD控制器/驱动器、并行LCD总线接口和声音发生器。另外的集成接口包括多达16路的模拟/数字转换、两个控制器区域网络(CAN)接口、I2C总线和17个16位计时器。 V850E/Dx3 32位微控制器包括两个子系列:一个具有24MHz核,另一个具有48MHz核.MCU提供各种存储器可供选择,包
[新品]
单片机为核心的嵌入式系统低功耗设计
  在嵌入式应用中,系统的功耗越来越受到人们的重视,这一点对于需要电池供电的便携式系统尤其明显。降低系统功耗,延长电池的寿命,就是降低系统的运行成本。对于以单片机为核心的嵌入式应用,系统功耗的最小化需要从软、硬件设计两方面入手。   随着越来越多的嵌入式应用使用了实时操作系统,如何在操作系统层面上降低系统功耗也成为一个值得关注的问题。限于篇幅,本文仅从硬件设计和应用软件设计两个方面讨论。 1 硬件设计   选用具有低功耗特性的单片机可以大大降低系统功耗。可以从供电电压、单片机内部结构设计、系统时钟设计和低功耗模式等几方面考察一款单片机的低功耗特性。 1.1 选用尽量简单的CPU内核   在选择CPU内核时切忌一味追求性能
[单片机]
<font color='red'>单片机</font>为核心的嵌入式<font color='red'>系统</font>低功耗设计
e络盟供货OrangeCrab开源FPGA开发板
OrangeCrab超紧凑型高端FPGA开发板采用Adafruit Feather外形尺寸 并提供两个内存配置选项,可轻松实现灵活设计。 中国上海,2021年5月26日 – 安富利旗下全球电子元器件产品与解决方案分销商e络盟宣布引入Good Stuff Department的OrangeCrab r0.2开源FPGA开发板,进一步扩展其单板机 (SBC)开发套件产品阵容。 OrangeCrab兼具电子设计师喜爱的Adafruit Feather超紧凑外形设计,以及通常仅大尺寸现场可编程门阵列(FPGA)开发板才具有的高功率特点。OrangeCrab基于Lattice EPC5 FPGA,提供两种内存配置选项,包括E
[嵌入式]
e络盟供货OrangeCrab开源<font color='red'>FPGA</font>开发板
照明用LED产品的识别和完善
一、产品标准体系的组成方面 LED是一种新兴的照明电器产品。LED产品包括其本身,配套的控制装置和以它为光源的灯具产品,涉及到这些产品的标准条款主要由以下几方面组成。 1. 产品在使用中关系到人们生命财产安全方面的条款 作为电器产品,在使用时的安全要求是国际上公认的最重要部分,在这方面,我国产品标准几乎都等同采用IEC标准,即使是我国自己制订的安全标准,也基本参考了IEC标准和/或ANSI等标准,并且均作为强制性标准加以颁布并实施。例如GB19510/IEC61347灯的控制装置系列和GB7000/IEC60598灯具系列标准以及光源安全标准中的绝大多数条款均属于这一类。 2. LED、控制装置和灯具自身的性能要求 消费
[电源管理]
LED灯具结构及外观设计问题分析
LED路灯的应用受到诸多企业的关注与青睐,但在结构设计,照明创意、造型设计等方面存在一些问题,给业主的使用与挑选造成了不小的困惑。本文论述了LED灯具结构及外观设计存在的五点问题并提出了相应的解决方案,当前市面上单一的“裸体”路灯存在的主要问题如下: 第一,材料表面处理(含电源),难以经受长时间恶劣环境的侵蚀。所谓的“裸体”路灯一般是散热器直接裸露在外面的路灯。有些厂家认为这样更有利于散热,但这样的前提是灯具必须安装在一个比较干净、不受外界恶劣条件影响的环境中,而实际应用中灯具都是直接安装在户外,可能遭遇酸雨、沙尘暴、暴雪、暴晒等各种恶劣环境。 其次,由于铝合金比重较小,散热性能优越,所以LED路灯的散热器一般都
[电源管理]
单片机C语言中数组的用法
数组是由具有相同类型的数据元素组成的有序集合。数组是由数组名来表示的,数组中的数据由特定的下标来唯一确定。引入数组的目的,是使用一块连续的内存空间存储多个类型相同的数据,以解决一批相关数据的存储问题。数组与普通变量一样,也必须先定义,后使用。数组在C51语言的地位举足轻重,因此深入地了解数组是很有必要的。下面就对数组进行详细的介绍。 (1)一维数组 一维数组是最简单的数组,用来存放类型相同的数据。数据的存放是线性连续的。 用以下例程说明数组的建立、数据操作: #include /* ----------------------------------------------------- 此程序用以说明数组的建立、
[单片机]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

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

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

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