当前位置:首页 > 显示光电 > 显示光电
[导读]本文提出了一种基于NiosII32位处理器的设计方案,能有效地实现单屏幕多窗口的任意位置显示,使得显示方式更加灵活方便。1 系统总体设计1.1 系统硬件结构LED显示系统主要由计算机系统、数据通信传输模块、数据处理模

本文提出了一种基于NiosII32位处理器的设计方案,能有效地实现单屏幕多窗口的任意位置显示,使得显示方式更加灵活方便。

1 系统总体设计

1.1 系统硬件结构

LED显示系统主要由计算机系统、数据通信传输模块、数据处理模块、扫描控制模块、显示驱动模块和LED屏构成,如图1所示。计算机系统将要显示的点阵信息通过RS485串行接口送往存储设备,数据处理模块读取存储设备的数据并进行各种特技显示处理,将处理好的数据送往扫描控制模块,显示驱动模块接收到扫描控制模块的数据后送往LED屏上显示。数据通信传输模块、数据处理模块、扫描控制模块3部分均在FPGA上实现,即构成LED异步控制器。

 

1.2 系统软件方案

软件基于NiosIIIDE开发完成,应用程序基于μC/OS2II实时操作系统实现。软件程序主要由2个任务和1个定时器中断服务程序组成,任务间采用信号量的方式进行通信。任务1将上位机传送到CF卡存储设备的数据写入内存中;任务2从内存中读取数据并进行分析处理,把分析处理完的数据送往扫描控制模块。为了充分利用μC/OS2II的实时性和多任务的特点,采用嵌入式文件系统进行数据管理。

2 控制系统硬件部分设计

数据处理模块由NiosII软核CPU、1片SDRAM和1片Flash存储器组成。NiosII软核CPU是整个控制器的核心,负责数据的处理;SDRAM作为CPU处理数据时的缓存使用;Flash存储器用于存储点阵信息数据和LED屏显示控制参数。

扫描控制模块由用户自定义的PWMIP核和显存组成。显存采用1片SRAM实现,用来保存当前显示的一帧点阵信息数据。PWM模块通过Avalon总线和NiosIICPU连接,将从CPU接收到的数据按指定地址写入显存,然后再按一定的寻址方式从显存中读取点阵信息数据进行扫描。

串口控制器、定时器、存储器控制器、CF卡控制器通过SOPCBuilder软件定制集成IP核自动生成。本控制器的硬件结构如图2所示。

 

3 控制系统软件部分设计

控制系统软件是基于实时操作系统μC/OS2II进行设计的。该操作系统利用高效任务调度算法调度每个任务,而每个窗口的显示由单个任务完成。主函数创建了2个任务:一个用于读取CF卡数据;另一个用于接收来自不同显示模块的场景数据和播放显示文件。

3.1 数据结构

数据在存储器中的存储形式直接影响数据的存取速度和控制的复杂度。本系统对显存中的数据和缓存中的数据均重新组织,降低了数据处理和扫描控制的复杂度。

3.1.1 显存数据的组织

LED显示屏的每个像素点都包括红、绿、蓝3种基色,每种颜色的灰度级均为256级(即由8位数据对像素点灰度级进行编码),故每个像素点需要占用3字节的存储空间。显示时,每个像素的红管、绿管、蓝管是同时点亮的,也就是说,3种颜色的数据是并行上屏的。

可将红、绿、蓝3种颜色对应的数据分开存储,以方便操作。数据存储方式如图3所示。同一种颜色的数据集中存放在某个区域中,区域的首地址作为该颜色的基址。在进行数据存放时,每个像素点只需给出相对变化地址(变址),加上不同颜色的基址就可以在3个区域中找到对应点的视频数据。

LED显示屏灰度的实现方法是分权重扫描的。这样就需要对颜色数据进行位分离,然后同权重的位重新组合。为了方便操作,存储时把图3所示的每个区再分为8个权重区,所有同权重的数值集中放于对应的权重区中。

所谓位分离,就是把数据的高低位按权重分开,然后重新组织。位分离在可编程逻辑器件中比较容易实现,可以划出一块逻辑矩阵,操作时横向存入,纵向读出即可。位分离示意图如图4所示。

3.1.2 缓存数据的组织

若要进行特技效果显示,则当前显示的数据帧和下一个数据帧存在着某种变换关系。由于CPU只能对显存进行写操作,所以需在缓存中划分出一块大小和显存相等、地址一一对应的区域screen,用于存储当前显示的数据帧信息。如果各窗口之间存在重叠现象,且特技数据处理运算直接在screen区域进行,则窗口重叠部分信息可能发生混乱。故在缓存中再为每一个窗口划分出一块存取空间(part1,part2,partn),用于存储本窗口显示的前一帧数据信息。在特技数据处理运算时,先在part区域处理各窗口的数据信息,将转换完的数据送往各窗口在screen区域中所对应地址的存取空间,最后将screen中的数据写入地址对应的显存。

3.2 读取CF卡软件设计

任务1负责将CF卡上的数据读取到SDRAM中,供其他任务使用。在程序中使用了1个指针(3pwmdata),为数据文件在SDRAM中分配空间。在文件系统初始化时,首先调用CF卡初始化函数IDE_initialize()判断CF卡是否存在。若存在,则读取文件系统的基本信息。通过调用函数FS_SearchFile(char3FName,FS_TFile3R,unsignedchardir)来查找需要读取的文件是否存在,若存在,则通过指针(3pwmdata)为数据文件在SDRAM中分配一个缓冲区。读取时,每次读取一个扇区,直到将数据全部读取到SDRAM中。

部分程序源码如下:

3.3 软件总体设计

基于以上数据结构,软件设计的流程如图5所示。系统首先进行初始化操作,然后从Flash中读取显示屏参数,进行参数初始化。接着建立任务TaskControl(),其优先级比各窗口显示任务都要高,主要用于实时管理各窗口显示任务,每个窗口的显示由单个窗口显示任务来控制。

窗口显示任务根据各窗口显示方式的不同,在其对应的part存储区域进行下一帧数据的处理运算,然后调用窗口显示子任务进行显示。在完成一帧数据的显示后,调用一次OSTimeDlyHMSM()使当前任务进入等待状态,下一个优先级最高并进入了就绪态的任务,立刻被赋予了CPU的控制权,由此完成窗口显示任务之间的切换。任务TaskControl()定期查询Reset是否有效,若有效则删除原来建立的任务,重新读取窗口数,建立新任务,启用各个窗口显示任务Task_i。

任务TaskControl的伪程序段描述如下:

4 结语

本设计充分利用了NiosII32位处理器的高性能和μC/OS2II实时操作系统高效的任务调度算法,实现了单屏幕多窗口显示,且显示屏控制变得更加灵活。整个控制系统在1片FPGA芯片上完成,有效地降低了系统的成本。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

2024年4月18日,重庆——今日,英特尔AI教育峰会暨OPS2.0全球发布活动在第83届中国教育装备展示会期间顺利举行。峰会现场,英特尔携手视源股份、德晟达等合作伙伴正式发布新一代开放式可插拔标准——OPS 2.0,并...

关键字: OPS 2.0 显卡 处理器

今天,小编将在这篇文章中为大家带来led显示屏的有关报道,通过阅读这篇文章,大家可以对它具备清晰的认识,主要内容如下。

关键字: LED 显示屏 LED显示屏

全新Balletto™系列无线MCU基于Alif Semiconductor先进的MCU架构,该架构具有DSP加速和专用NPU,可快速且低功耗地执行AI/ML工作负载

关键字: 处理器 微控制器 AI

Supermicro广泛多元的系统产品组合提供高度灵活性,可满足现今针对工作负载优化且具液冷设计的数据中心需求,并集成了新型高效核(Efficient-core)与性能核(Performance-core)处理器,这些处...

关键字: Intel MICRO SUPER 处理器

亿道信息旗下品牌ONERugged刚刚上新了四款高性价比三防平板电脑,分别是M87J和M81T两款8寸机型,以及M17J和M11T两款10.1寸机型。作为一站式加固计算机品牌,ONERugged一直以打造坚固耐用的三防终...

关键字: 平板电脑 处理器

LED(Light Emitting Diode)与LCD(Liquid Crystal Display)是当今显示技术领域的两大重要分支,各自凭借独特的优势在消费电子、广告传媒、工业控制、家用电器等多个领域占据着主导地...

关键字: LED LCD

通往定制高端 3.5 英寸系统的更快、更可持续的途径

关键字: 处理器 嵌入式设计 OEM

发布AI开放系统战略,展示与新客户、合作伙伴跨越AI各领域的合作。

关键字: AI 英特尔 处理器

作为温度依赖性低、广角发射且光线均匀的光源,有助于汽车驾驶辅助技术提升

关键字: VCSEL LED 红外光源

2024年4月10日,苏州——英特尔与苏州阿普奇物联网科技有限公司联合举办2024阿普奇生态大会暨新品发布会。会上,阿普奇携手英特尔及其他行业专家共同发布了阿普奇E-Smart IPC新一代旗舰产品AK系列,该系列采用英...

关键字: 数字化 英特尔 处理器
关闭
关闭