基于CPLD和ARM的异步LED显示屏控制系统设计

发布者:alpha11最新更新时间:2011-08-29 关键字:CPLD  ARM  LED  S3C44B0X 手机看文章 扫描二维码
随时随地手机看文章
    基于LED技术的大屏幕显示屏已经广泛用于广场、机场、体育场馆和车站等公共场所,在大屏幕上显示文字、动画、图像以及视频等多媒体信息。LED大屏幕控制系统在显示信息时,不需要经过计算机对数据进行处理,是直接读取存放在显示器缓冲区中的信息来显示的,当需要更新信息时,显示屏的数据采集模块向显示模块发送新数据。本文利用高速数据存储和处理的技术方法,设计了一种彩色异步LED大屏幕显示屏控制系统。

  1系统设计

  1.1系统的总体框架

  本文设计的LED大屏幕显示屏控制系统总体框架如图1所示。  

 
图1LED大屏幕控制系统结构图

  从图中可以看出,系统主要包括以下4个组成部分:

  1)上位机用户控制平台部分,主要用于对图像数据进行压缩和对显示信息的修改;

  2)基于ARM的屏幕通信接口部分,用于实现与上位机通信,接收上位机部分的图像数据和控制信号;

  3)基于CPLD和ARM的大屏幕主控制器部分,实现图像灰度调制和重构;

  4)大屏幕显示驱动电路部分,是为大屏幕的LED灯管提供驱动恒定的电流。

  如图2所示为系统的数据流图。  

 
图2LED大屏幕控制系统数据流图

  1.2系统硬件设计

  目前有两种主流主处理器供显示屏控制系统使用,一种是ARM,另一种是ATMEL公司生产的89055。因为ARM不但运算速度快,还可以对各种数字信号进行实时处理,很适合LED大屏幕控制系统的主处理器在运行过程中需要对大量数据进行搬移的特点,同时也为设计后期的软件编程留有充裕的时间空间。因此我们选定ARM为本系统的主处理器。

  1.2.1通信模块设计

  在异步LED大屏幕控制系统中,可以在脱机状态显示不同的信息。因此,实现对大屏幕显示内容的实时更新和调整是LED大屏幕控制系统设计中必须要进行的重要环节。对于LED显示器与上位机的通信功能进行设计与研究,其目的是为了快速、可靠地获得调整后的显示内容。因此,本文设计的系统提供了3种通信方式,分别是以太网通信、串口通信和无线射频通信。这3种通信方式不但增强了通信的性能,而且方便了用户的使用。

  1.2.2显示控制模块设计

  屏幕控制电路是LED大屏幕控制系统中的一个重要组成部分,显示屏控制逻辑电路生成读写控制信号和访问显示缓冲区数据的地址,读取出来的显示数据通过显示驱动程序发送到LED显示屏显示。显示控制模块主要由读/写地址产生器、计数器、读/写地址选择器、读/写选择器、读/写信号产生器、移位锁存器和同步控制器等部分组成。

  要在LED大屏幕上显示一幅完整的图形图像,CPLD和ARM必须要协同一致工作,完成显示存储器中图形图像数据的读取、解压,图像显示效果的制作、灰度调制和生成显示屏的驱动逻辑等各个部分的功能。显示控制模块的硬件结构图如图3所示。  

 
图3LED显示屏主控制器电路图

  在控制电路中,数据总线将CPLD与ARM之间连接起来,S3C44B0X通过芯片2选通CPLD中的数据缓冲区,所以ARM输出数据的基地址为0x40000000。ARM首先将FLASH中保存的图像数据复制到SDRAM中,经过相关处理后,调用不同的动态显示效果程序将SDRAM中的图像数据循环写入CPLD缓冲区,CPLD生成相应的时序转换,串行输出至LED驱动电路。

  2LED大屏幕控制系统软件设计与实现

  考虑到系统硬件驱动程序的运行效率以及软件的开发周期,本系统采用C语言作为软件的开发工具。

  设计的应用程序要实现与显示屏硬件的连接功能,一要与系统底层的硬件驱动程序进行通信,二要为用户提供控制界面并可以接收用户输入的各种指令。为此,采用VisualC++作为系统应用程序的开发工具。通信应用程序使用MSComm(MicrosoftCommunicationsControl)控件来编写,MSComm是微软公司为用户提供的简化Window、下串行的通信编程ActiveX控件。MSComm控件通过外部设备的串行端口进行数据的传输和接收,可以为应用程序提供串行的通信功能。利用MSComm控件进行串口的编程非常快捷、方便。MSComm控件是基于事件驱动的,在一般情况下,在事件发生时必须要得到通知。在实际编程中,可以在OnComm事件处理函数中加入自己编写的处理代码,OnComm事件处理函数还可以检查和处理程序在运行过程中出现通信错误。OnComm控件的最大优点是程序响应的时间非常短,可靠性较高。每个MSComm控件于一个串行端口对应。如果应用程序需要访问多个串行端口,就要使用多MSComm控件。MSComm控件的行为是由其各种属性决定的。在VC++中可以通过一系列的成员函数设置这些属性,从而控制串行口的数据格式、波特率等特征。另外,在VC++中,MSComm控件是作为CWND类的派生类出现的,在系统初始化时必须创建这个窗口,并使用成员函数设置其属性,使它和下位机使用相同的通讯格式,否则是不能建立正确的串行通讯的。

  3结论

  目前,现有的LED大屏幕控制系统中,还有很多是采用8位或者16位单片机作为系统的主处理器,系统存在运算速度慢、存储空间较小、通信方式单一以及数据传输速度慢等缺点。针对上述存在的问题,本文设计了一种新的LED大屏幕控制系统,系统采用ARM作为主处理器,结合可编程逻辑器件设计了系统的驱动电路,实现了异步LED大屏幕的彩色图像、文字和视频等的显示。



关键字:CPLD  ARM  LED  S3C44B0X 引用地址:基于CPLD和ARM的异步LED显示屏控制系统设计

上一篇:基于FPGA的ADSP-TS101扩展USB接口设计
下一篇:利用CoolRunner-II CPLD设计GPS系统

推荐阅读最新更新时间:2024-05-02 21:33

九号机器人携手芯片巨头英伟达进军ARM
近日,科创板上市企业九号公司在接受投资者调研时透露,公司正在积极探索其他场景下短途移动“物”的 机器人 新业务,例如和英伟达合作开发的第一代AMR(自主移动机器人),已进入产品开发的后期测试阶段。 AMR是指自主移动机器人(AutonomousMobileRobot),是AGV(AutomatedGuidedVehicle)的升级产品,广泛应用在自动化仓储中,通过机器人进行搬运、拣选,完成入库、拣货、包装到运输等一系列工作。 AGV应用比较单一,仅限于遵循一条固定安装于地面上的工厂固定路线,如需改变路线需要重新进行设置规划和地面布局,会造成生产中断,且需要改造成本。AMR内置激光雷达等自动导航装置,具备较强的计算能力,可以通过 传
[机器人]
LED照明市场引爆对LED驱动器的巨大需求
   早在2003年,Lumileds Lighting公司的Roland Haitz就提出,LED大约每经过18到24个月可提升一倍的亮度,这就是著名的Haitz定律(图1),也被称为LED行业的摩尔定律。根据这个定律,具有突破性质的亮度达100lm/W的LED约在2008~2010年间出现。实际上,2006年6月日本日亚化学公司就推出100lm/W白光 LED工程样品,2007年6月Cree宣布推出在350mA下最小光通量为100lm的高亮度LED。 图1 LED大约每经过18到24个月提升一倍的亮度   研究显示,仅仅在美国,如果55%的白炽灯和55%的日光灯被LED取代,每年将节省350亿美元电费,减少7.55亿
[电源管理]
<font color='red'>LED</font>照明市场引爆对<font color='red'>LED</font>驱动器的巨大需求
以太网远程监控系统实现远程监测控制和管理技术设计开发
随着网络通信技术的发展,以太网在工业控制领域的应用日趋广泛,基于以太网的远程监控系统实现远程监测、控制和管理的有效集成 。使用远程监控系统通过网络对工业生产过程进行监测,及时了解现场信息,快速进行决策。   远程控制的关键技术在于如何解决工业现场设备的网络接入问题。目前,主要有两种方法:一种是使用PC机通过PC机端口(如RS232、USB接口)或数据采集卡来采集数据同时提供网络接口 ,这种方法利用强大的PC机软件支持,容易实现网络通信功能,但是PC机端口资源有限,专用采集卡成本较高,难以推广;另一种就是在现场使用嵌入式系统实现网络接入,嵌入式系统具有功耗低、体积小、成本低、可靠性高、实时性强等特点,使用在工业控制现场比较合适。
[单片机]
以太网远程监控系统实现远程监测控制和管理技术设计开发
LED驱动电源基础知识介绍
  LED电源也是一个配套产品,目前市场上的电源品质参差不齐,下面就为初入该行的业者提供一些LED驱动电源的相关知识。   1、什么是LED驱动电源   LED驱动电源把电源供应转换为特定的电压电流以驱动LED发光的电压转换器,通常情况下:LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。而LED驱动电源的输出则大多数为可随LED正向压降值变化而改变电压的恒定电流源。LED电源核心元件包括开关控制器、电感器、开关元器件(MOSfet)、反馈电阻、输入滤波器件、输出滤波器件等等。根据不同场合要求、还要有输入过压保护电路、输入欠压保护电路,LED开路保护、过流保护等电路。  
[电源管理]
<font color='red'>LED</font>驱动电源基础知识介绍
LED显示屏驱动芯片存在问题分析
LED驱动 芯片可分为通用芯片和专用芯片。通用芯片一般用于 LED显示屏 的低端产品,如户内的单、双色屏等。最常用的通用芯片是74HC595,具有8位锁存、串一并移位寄存器和三态输出功能。每路最大可输出35mA的电流(不是恒流)。一般 IC 厂家都可生产此类芯片。 由于 LED 是电流特性器件,即在饱和导通的前提下,其 亮度 随着电流大小的变化而变化,不是随着其两端电压的变化而变化。因此,专用芯片的一个最大特点是提供恒流源。恒流源可保证LED的稳定 驱动 ,消除LED的闪烁现象。下面将重点介绍LED显示屏的专用驱动芯片存在的问题。 存在的问题 1、功耗及发热问题 由于输出电流
[电源管理]
激活手机LED灯同时保持较低待机功耗的解决方案
随着用户对手机功能的要求日益增长,一项新的需求进入手机制造商的考虑中,,即手机可以有提供状态的 led 提示,以便在待机的同时,提醒用户注意有未读消息、即将到来的约会安排或者其它通知。最近发布的几款手机甚至因为没有提供LED提示而受到差评。与此同时,用户希望手机的待机时间能够更长。这两个看似简单的问题使手机制造商陷入了意想不到的两难境地:如何在为LED提示供电的同时,保持较低的总待机功耗? LED指示灯通常由 电源管理 IC (PMIC)或其它小型处理器供电。当手机处于唤醒状态时,这没有问题,但该处理器必须持续掌握时序,即使在休眠模式下,也要自动使能和禁用各LED。为了实现此功能,在为整个PMIC上电时会增加数毫安的待机
[电源管理]
激活手机<font color='red'>LED</font>灯同时保持较低待机功耗的解决方案
ARM 汇编指令 DCD
简介 DCD:数据定义( Data Definition )伪指令 一般用于为特定的数据分配存储单元,同时可完成已分配存储单元的初始化。 语法格式: 标号 DCD(或 DCDU) 表达式 DCD(或 DCDU)伪指令用于分配一片连续的字存储单元并用指定的表达式初始化。其中表达式可以为程序标号或数字表达式。 DCD 也可用 “ &” 代替。 用 DCD 分配的字存储单元是字对齐的,而用 DCDU 分配的字存储单元并不严格字对齐。 实例(STM32 启动文件): __Vectors DCD __initial_sp ; Top of Stack DCD Reset_Handler
[单片机]
ARM汇编编程规则
1. 基本概念 • ATPCS (ARM-Thumb Procedure Call Standard) 规定了一些子程序间调用的基本规则,这些规则包括子程序调用过程中寄存器的使用规则,数据栈的使用规则,参数的传递规则。有了这些规则之后,单独编译的 C语言 程序就可以和汇编程序相互调用。 使用ADS的 c语言 编译器编译的C语言子程序满足用户指定的ATPCS类型。而对于汇编语言来说,则需要用户来保证各个子程序满足ATPCS的要求。 • AAPCS (ARM Archtecture Procedure Call Standard) 2007年ARM公司正式推出了AAPCS标准,AAPCS是ATPCS的改进版,
[单片机]
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

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

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