您好!欢迎访问雷火官网官网!
产品搜索:
当前位置:首页 > 雷火平台 > 白光LED驱动
+     低压差线性稳压器
+     白光LED驱动
基于嵌入式linux的全彩LED显示屏脱机控制系统设计方案-【白光LED驱动】
发布时间: 2022-05-07 20:08:56 来源:雷火电竞 作者:雷火平台

  系统主要采用联机方式来实现,即PC机+视频发送板,通过千兆以太网或者光纤,将视频实时发送到显示屏端的视频接收板上完成显示。这种方式具有良好的人机操作界面和优秀的视频显示质量,对于近距离LED显示屏联机播放是一种重要的显示手段。而对于超长距离、户外LED显示屏而言,联机播放显然需要付出很高的代价才能实现,有些场合甚至无法实现。而脱机方式在这些场合则显示出其独特的优势。脱机方式的特点在于无人值守,专用性强,占用资源少,经济便携。同时可以通过一定的途径如Internet、GSM网络等可对播放过程及内容进行实时的干预和修改。目前国内的脱机系统如单片机、SOC、DSP、RISC处理器等实现。大多数脱机控制卡只能显示较小的分辨率,支持伪彩或者单色,不能播放高质量的视频。本设计旨在实现具有高分辨率、高质量视频播放、流媒体播放、多区域显示等功能的小型专用LED脱机播放系统。 本文将从系统的硬件结构和原理、软件各模块设计与实现、性能测试及结论三个方面进行说明。

  目前国内LED屏脱机控制系统多采用高性能RISC处理器作为核心,典型的以ARM9为核心的SoC芯片工作频率大多在200~600MHz之间。然而显示方面的性能依然比较低下,大多数芯片,典型的如S3C24X0,通过内部集成LCD控制器来实现显示功能,一般只支持到640X480的显示分辨率,16bit颜色深度。处理器芯片内置的LCD控制器是在系统内存中设置一小部分作为帧存(Frame Buffer),LCD控制器使用一个专用的高速DMA通道不断地读取帧存中的象素数据到FIFO memory中,最后生成视频时序输出到外部LCD接口,因此视频显示直接占用系统总线带宽。支持更高的分辨率和色彩深度意味着占用更多的系统带宽,比如1024×768分辨下,24位深度,60Hz场频的显示输出,显示占用的系统带宽在1.1Gbps以上。小型嵌入式系统有限的总线带宽显然不可能很好地支持高分辨率真彩显示。

  另一方面,对于一般的 2D图形操作如象素复制、缩放、色空间转换等需要软件实现,处理器对Frame Buffer的频繁操作带来的系统性能下降十分突出,极大的影响了CPU在视频解码方面的效率。

  鉴于上述分析,使用普通的面向手持设备的嵌入式体系结构无法满足全彩大型LED屏幕的显示要求,本文选择了工业级ARM芯片S3C2440+SM501显示加速协处理器的解决方案,从根本上解决了上述分析两个影响显示性能的关键问题。

  SM501是一款便携式多媒体协处理器芯片,专门为嵌入式工业提供显示功能,具有视频和2D加速能力。它支持多种输入/输出接口,包括模拟RGB、数字LCD接口、8位并行接口、USB、UART、IrDA、Zoom Video、AC97或I2S、SSP、PWM和I2 C.SM501的2D引擎包括一个前端色彩空间转换器,支持4∶1和1∶8的比例。LCD视频流水线支持一个YUV色彩空间转换。通过将优化的128位的2D图形引擎和一个与本地帧存储器连接的高带宽链接相结合,SM501提供面向工业的2D图形加速功能。2D图形引擎包含一个命令翻译器(一个增强型的DMA引擎),对于工作在150 MHz的32位数据宽度的SDRAM,SM501的DMA引擎读取2D操作数的带宽可达600 MB/s.SM501支持的最大显示分辨率为1280×1 024,可以轻松支持普通PC显示分辨率1024×768.

  整个硬件系统原理如图1示。S3C2440与SM501在slave 模式下通过系统总线可以通过系统总线的本地帧存。系统挂接DM9000A 10/100M网络芯片,上位机脱机控制软件通过Internet网络连接到脱机系统进行实时控制。脱机系统通过网络实现流媒体功能。

  对于SM501输出的数字视频,采用FPGA进行采集和分发。SM501与FPGA之间通过LCD数字接口连接,包含24 bit并行象素点RGB数据、象素时钟pclk,行场同步及DE信号。FPGA采集LCD接口输出的象素数据并实时转发到象素位置对应的扫描板,一帧图象传输完毕后,所有扫描板将同时更新显示新图像帧。每个扫描板控制的分辨率为256 × 256,脱机系统最大可以控制1024 × 768分辨率。FPGA内部逻辑详细设计不作为本文讨论的主要内容。

  LED脱机播放软件设计的基本要求包括:系统必须能够胜任7× 24小时连续稳定运行,因此播放软件必须具备健壮性。虽然S3C2440处理速度相对已经较快,但是解码对CPU时间的占用仍然是一个很突出的问题,因此播放软件必须具备高效性,尤其是尽最大可能发挥出SM501提供的2D加速显示能力。另外由于SoC更新速度很快,硬件平台必然会有更好选择,因此软件在保证高效率的前提下必须提高其可移植性。最后是建立开放式的软件架构,使之具备可扩展、可升级性,以便于逐步开发新的功能。

  文章将简要介绍基于S3C2440平台的嵌入式Linux系统平台的搭建,然后着重介绍播放软件在开放性、可移植性、高效性方面所采用的设计方法。

  Linux内核具有体积小,效率高,成熟稳定,源代码开放,资源丰富,内核直接提供丰富的网络协议,支持多种文件系统等诸多优点。本课题移植了Linux2.6.18内核,该版本内核具有稳定性好、开发工具支持度好的优点。这部分工作主要包括:

  2)剪裁并交叉编译Linux内核。移植USB存储盘、DM9000A网络芯片、SM501显卡的驱动到内核

  4)通过u-boot将内核和Initrd镜像烧写到Nand Flash上,设置内核启动参数和u-boot启动命令来启动内核

  经过上述工作,建立了一个小型化的嵌入式Linux平台。限于篇幅,本文对嵌入式Linux平台的建立细节问题不深入介绍。

  LED显示屏脱机播放软件的主要设计目标是支持视频播放、图片显示、多区域显示、流媒体播放、远程控制。由于整个软件项目比较庞大,本文将只选择几个关键模块进行详细说明,并侧重介绍软件方面如何利用SM501来实现高性能显示及视频播放。对流媒体播放和远程控制部分不做介绍。

  随着LED显示屏幕分辨率的不断增加,同一个显示屏对信息容量的需求也相应的增长,在面向广告的LED屏中这种需求尤其突出。典型的LED多区域显示情形是一个视频区域,多个图片区域,一个滚动字幕区域。脱机播放系统主要面向户外广告屏,因此,必须重点考虑多区域显示功能。

  为了更好的支持LED屏幕多区域显示,必须从传统的全屏显示概念中脱离出来,建立基于区域(zone)显示的概念,即显示内容总是在某个显示区域上完成显示,单屏显示只是多区域显示的一个特例。在结构上区域按层次划分,区域可以划分为多个子区域。同级子区域的位置不能重叠。这样,在理论上,可以支持任意的以矩形为单位的分区域显示形式。多个区域并行显示,通过多线程方式实现。

  每个区域都包含一个播放列表(playlist)。每个播放列表由一系列显示项目(playitem)组成。 显示项目的概念是指在某个显示区域上进行一次完整的显示过程。如一段视频播放,一幅图片定时显示,文字的运动显示等。程序采用了面向对象的设计思想,将不同类型的显示项目的共性抽象出来,以方便不断扩展的新的显示项目和客户定制的显示内容。

  所有的显示项目,无论其内容如何,都可以抽象为一个随时间变化的状态机。每个显示项目在时间的推移下在其所属的区域中完成自身的显示,也就是完成一个从初始化到结束的状态转换过程。因此,playitem是一个抽象基类。每种类型的显示项目只需重新实现playitem提供的公共调用接口即可。

  每个区域具有一个播放线程,该线程不断地从playlist中取出一个显示项目,执行其状态转换接口完成显示过程。这种设计允许不同类型的显示项目混合排列在同一个显示列表下,极大的增加了播放过程安排的灵活性。

  显示层的设计旨在提供一套可移植的、使用方便的2D显示接口,包括基于区域内部坐标的应用显示层接口和基于屏幕坐标而与硬件无关的底层显示接口。应用显示层给显示项目playitem提供简单的基于区域坐标的显示接口。基于屏幕坐标的底层显示直接工作在SM501硬件之上,最大化利用了SM501硬件加速能力,同时还提供了可移植的接口。在移植到其他的2D硬件上只需要重新实现底层显示接口即可。

  由于硬件设计上SM501处于slave mode与S3C2440连接,SM501不能访问系统内存,所有要进行加速操作的显示内容必须存放在SM501的独立显存上,这样不方便移植DirectFB作为底层显示接口。因此本文按照通用的2D显示接口,独立实现了一套基于屏幕坐标的通用底层2D显示接口。

  在实现上通过mmap把SM501的控制寄存器和独立显存全部从内核空间映射到用户空间,这样在程序中可以直接访问SM501的寄存器和管理本地显存,避免了在显示时应用程序与内核之间的数据交换,显示加速作用得以充分发挥。基于对SM501的直接访问,底层显示层实现了一套基本接口,包括显存分配与释放和基本2D加速操作如画线(line)、矩形填充(fill_rect),位图复制(bitblt)、缩放(bitblt_stretch)、色空间转换(CSC)等。其中对视频播放性能影响最大的是缩放和色空间转换。linux操作系统文章专题:linux操作系统详解(linux不再难懂)

上一篇:五年上册科学实验大全 下一篇:LED驱动电源中的电容降压原理简
首页 雷火官网 雷火电竞 雷火平台 解决方案 联系我们
XML地图|Copyright [c]2018 雷火官网 版权所有 All Rights Reserved.
备案号:粤ICP备17008278号-1 技术支持:雷火官网
地 址:深圳市宝安区航城大道航城创新工业园
    A5栋二楼2016-218
联系人:刘先生 13424245917
    张先生 13751282129
电 话:0755-86249117
传 真:0755-26502485
网站地图