基于ARM S3C44B0X 的LED显示屏设计

发布者:CyberJolt最新更新时间:2011-11-28 关键字:ARM  S3C44B0X  LED显示屏 手机看文章 扫描二维码
随时随地手机看文章

  为了简化L ED 显示屏的驱动电路,节约单片机的端口资源,对常见的L ED 显示屏驱动电路进行了改进,全部采用通用的串入并出移位寄存器作为选通驱动,系统全部采用串行数据控制,形成了一种只需4 根信号线的L ED 显示屏驱动电路解决方案,仅需占用单片机的4个I/ O 端口发送串行数据就可以实现正常的显示功能,文中给出相应的程序代码。
 

  1 、引言

  L ED 显示屏应用十分广泛,是信息传播的有效工具。在某井下矿采设备监测系统中选用了ARM S3C44B0X 32 位单片机作为CPU ,根据应用要求,监测系统的显示部分使用16 行的单色L ED 显示屏实时显示监测数据。由于系统外设较多,端口资源十分紧张,针对这种情况开发了一种四线驱动的显示屏电路设计方案,很好地解决了这个问题。

  2、 常见的驱动电路设计及改进

  在常见的显示驱动电路设计中,列控制一般采用串入并带锁存的移位寄存器如74HC595 ,将数据打入锁存器中,使寄存器各引脚呈现与锁存器相同的状态来选中需要点亮的列。行控制一般采用译码器电路如4/ 16 译码器74HC154 ,控制信号经译码后选中需要点亮的行。这种硬件结构设计需要较多的控制信号线,占用单片机较多端口从而造成端口资源的浪费。

  在改进的L ED 显示屏驱动电路设计方案中,行、列控制均采用串入并出带锁存的移位寄存器,控制信号的产生均由S3C44B0X的I/ O 口发送串行数据来实现,这样仅需要4 根信号线L ED 显示屏就能正常工作。

  3 、显示驱动电路设计

  3. 1 电路结构

  LED显示屏由多个LED点阵模块构成。显示电路采用1/ 16 扫描方式,显示点阵的一行对应一路行选通信号,各行的同一列共用一个列选通信号。

  当需要在L ED 显示屏上显示图文内容时,只要在行、列显示数据控制下让显示屏上相应的发光器件点亮就可以了,一次点亮一行,依次点亮各行,只要速度足够快就会产生连续的视觉感受。

  行驱动电路采用HEF4094 带锁存功能的串入并出移位寄存器。如图1 ,引脚D 为串行数据输入端,引脚CP 为移位时钟脉冲输入端,STR 为输出锁存器打入信号输入端,OE 为输出使能信号输入端,当其为高时锁存器的输出才开放,芯片输出端为00~07 ,OS、OS′作为级联输出,见参考文献。

  列驱动电路采用74HC595 带锁存功能的串入并出移位寄存器。如图1 ,引脚SER 为串行数据输入端,引脚SRCL K 为移位时钟脉冲输入端,引脚RCL K 为输出锁存器打入信号输入端, EO为输出使能信号输入端,只有当其为低时锁存器的输出才开放,引脚SRCLR 为移位寄存器的清零输入端,当其为低时移位寄存器的输出全部为零,芯片输出端为QA~QH ,QH′作为级联输出,见参考文献。

 由I/ O 口送出的控制信号经总线驱动器74HC245 分别接到行、列驱动电路上。显示电路结构如图2 所示。

  该L ED 显示屏为16 行×64 列点阵,共需两片HEF4094 级联以及8 片74HC595 级联。

  由HEF4094 组成的行驱动器如图1 所示。

  由两片HEF4094 组成16 行的驱动,图中只画出第一片。第一片HEF4094 的D 端连接I/ O 口输出的串行行显示数据,OS 端连接下一片的D 端。

  两片相应的CP 并联,作为统一的串行数据移位信号。在各控制信号输入端中, STR 端(高电平有效) 、EO(高电平有效) 锁存输出使能端接直流电源正极。

  由74HC595 组成的列驱动器如图1 所示。

  由8 片74HC595 组成64 列的驱动,图中只画出第一片。第一片595 的SER 端连接I/ O 口输出的串行列显示数据,Q’H 端连接下一片的SER 端,各片均采用相同的方法组成8 片的级联,各片相应的SRCL K, SRCLR , RCL K 分别并联,作为统一的串行数据移位信号和输出锁存打入信号。在各控制信号输入端中,SRCLR(低电平有效) 移位寄存器清零输入端接电源正极、OE(低电平有效)锁存输出使能端直接接地。

  图1 中黑箭头所指即为下一片74HC595 或HEF4904 的信号输入端。

  由于行驱动电路同时驱动64 列的L ED 发光器件,按每一L ED 器件电流20 mA 计算,64 个L ED 同时发光时就需要64 ×20 = 1 280 mA 的驱动电流。因此需要用功率管驱动, 如TP122等。

  3. 2 基本显示原理

  采用这种显示驱动电路设计,只需4 个I/ O口分别发送SRCL K、RCL K&CP、SER、D 信号就能实现正常的显示功能,其中74HC595 的RCL K和HEF4094 的CP 共用一根信号线,由同一I/ O口发出控制信号。74HC595 的SRCLR 信号输入端接直流电源正极避免进行清零操作,OE 信号输入端接地使得一旦列显示数据出现在锁存器的同时各输出引脚即呈现出相应的高低电平状态。

  HEF4094 的STR 信号输入端接直流电源正极使得行显示数据出现在片内移位寄存器的同时即被打入锁存器从而避免锁存打入操作,OE 信号输入端接直流电源正极使得一旦行显示数据出现在锁存器的同时各输出引脚即呈现出相应的高低电平状态。因此,需要点亮某一行时,需要执行以下几个步骤:

  (1) 将15 位行显示数据通过D、CP 信号依次送入到两片级联的HEF4094 中,最后一次移位在第三步完成。

  (2) 将64 位列显示数据通过SER、SRCL K信号依次送入到8 片级联的74HC595 中。

  (3) 发出列显示的锁存打入信号RCL K,把列显数据打到各595 的输出引脚上,完成列显示的准备工作,同时由于行移位信号CP 与RCL K共用一根信号线,行显示数据完成最后一次移位,完成行显示准备工作。

  (4) 行列数据都准备完毕,显示屏中被选中的那一行被点亮。

  (5) 延时几毫秒保证每一行有充分的点亮时间然后进行下一行的显示。

  按照以上步骤依次点亮16 行,即可让L ED屏显示需要的图文内容。



      4 、L ED 显示屏的软件设计

      HEF4094 和74HC595 都是串入并出移位寄存器,显然应用串行口驱动,但是S3C44B0X 的串口资源有限,还要用来与上位机进行通信;因此采用将并行的I/ O 口模拟成串行口的方法来解决。

  这样仅需要4 个并行I/ O 口就可以完成显示任务,在程序中使用PORTD0 到PORTD3 这4 个I/ O 口,PORTD 由8 个I/ O 端口组成。

  下面是已经在Hitool For ARM 编译环境中通过的在16 行×64 列点阵L ED 显示屏上显示4个汉字的程序,该程序用C 语言编写,稍做修改就可以用于各种单片机系统。

  首先将要显示的4 个16 ×16 点阵的汉字字模存储在数组zimo[128 ]中。

  主程序代码如下:

  void Send-Char (void)

  {  unsigned short Row-Data = 0 ×8 000 ;int k ;

  for ( k = 0 ; k < 128 ; k + = 8)

  {   ∥调用发送行显示数据子函数

  Send-Row-Data (Row-Data) ;

  int j ;

  ∥依次取0~7 ,8~16 等数组元素

  for ( j = 0 ; j < 8 ; j + + )∥调用发送列显示数据子函数

  Send-Line-Data (zimo [ j + k ]) ;∥对PORTD3 清零置位发送列显示的锁存打入信号

  rPDATD = rPDATD &0 ×fb ;rPDATD = rPDATD | 0 ×04 ;∥延时几毫秒保证该行的点亮时间

  Delay (6) ;∥行选数据移位准备发送下一行数Send-Data m = 1 ;}

  }

  行显示数据发送子程序代码如下:

  void Send-Row-Data (unsigned short y){

  int m = 0 ;∥发送行显示数据

  for ( m = 0 ; m < 16 ; m + + )

  {

  if (y &1)∥如果显示该行则对PORTD0 置1 否则置

  0rPDATD = rPDATD | 0 ×01 ;elserPDATD = rPDATD &0 ×fe ;∥行显示数据移位准备发送下一位

  y >> = 1 ;∥只移位15 次

  if ( m < 15){   ∥对PORTD3 清零置位发送行显示数据移位时钟脉冲

  rPDATD = rPDATD &0 ×f7 ;rPDATD = rPDATD | 0 ×08 ;}

  }

  }

  列显示数据发送子程序代码如下:

  void Send-Line-Data (unsigned char x){

  int i ;∥发送列显示数据

  for ( i = 0 ; i < 8 ; i + + ){

  if ( x &1)∥如果该列需点亮则PORTD1置0 否则置

  1rPDATD = rPDATD &0 ×fd ;elserPDATD = rPDATD | 0 ×02 ;∥列显示数据移位准备发送下一位

  x >> = 1 ;∥对PORTD2 清零置位发送列显示数据移位时钟脉冲

  rPDATD = rPDATD &0 ×fb ;rPDATD = rPDATD | 0 ×04 ;}

  }

  延时子程序代码如下,LoopCount 的数值可根据所选用的单片机时钟频率来设定。

  void Delay (int time){

  int LoopCount = 300 ;

  for ( ; time > 0 ; time22)

  for ( i = 0 ; i < LoopCount ; i + + ) ;

  }

  5、结束语

  这种设计方案大大节省了单片机的端口资源,有效简化了显示屏的电路结构,提高了整个显示系统的可靠性,根据这个设计原理可设计出各种规模的L ED 显示屏。

关键字:ARM  S3C44B0X  LED显示屏 引用地址:基于ARM S3C44B0X 的LED显示屏设计

上一篇:ARM料明年授权量增长低于今年
下一篇:基于ARM7和DSP双核控制的逆变电源设计

推荐阅读最新更新时间:2024-03-16 12:47

Linux之ARM(IMX6U)裸机汇编LED驱动实验--烧写bin文件到SD卡运行
代码烧写 I.MX6U 虽然内部有 96K 的 ROM,但是这 96K 的 ROM 是 NXP自己用的,不向用户开放。所以相当于说 I.MX6U 是没有内部 flash 的,但是我们的代码得有地方存放啊,为此,I.MX6U 支持从外置的 NOR Flash、NAND Flash、SD/EMMC、SPI NOR Flash和 QSPI Flash 这些存储介质中启动,所以我们可以将代码烧写到这些存储介质中中。在这些存储介质中,除了 SD 卡以外,其他的一般都是焊接到了板子上的,我们没法直接烧写。但是 SD卡是活动的,是可以从板子上插拔的,我们可以将 SD 卡插到电脑上,在电脑上使用软件将.bin文件烧写到 SD 卡中,然后再插到板子
[单片机]
Linux之<font color='red'>ARM</font>(IMX6U)裸机汇编LED驱动实验--烧写bin文件到SD卡运行
ARM多核和MIPS多执行绪---嵌入式处理器技术剖析
在嵌入式装置中建置多核心(包含同质或异质)以及多执行绪技术,的确能带来诸多效益,尤其是改进系统效能方面最为明显。 尽管RISC嵌入式技术所面临的挑战越来越多,但是在维持以往嵌入式软件资源兼容性的前提之下,能够改善其未来适用性,并且有效提升新系统的效能表现,使其不失为良好的解决方案。 应用决定多核或多绪 多核心与多执行绪在效能表现上有其帮助,但是效能与这些技术的内建其实并没有绝对关系,会造成这样的原因主要是应用环境的需求。以手机为例,整合于手机内的SoC芯片虽然是属于多核心架构的一环,但是手机采用的SoC芯片多为应用处理器,其整合的核心并非完全属于同性质架构,同质多核心在嵌入式系统实际应用上的案例其实非常少。 而多执
[单片机]
<font color='red'>ARM</font>多核和MIPS多执行绪---嵌入式处理器技术剖析
ARM核的双CPU数字信号处理器
    摘要: 主要介绍美国TI公司最新推出的定点数字信号处理器TMS320VC5470的结构、功能及特性。对集成到该器件中的TMS320C54x数字信号处理器和ARM7TDMI RISC MCU及其两者的连接分别作了介绍。对选用TMS320VC5470作为数字信号处理器构建嵌入式系统有一定的参考价值。     关键词: TMS320VC5470 DSP MCU TMS320C54x ARM7TDMI 引言 TMS320VC5470(简称5470)是集成了基于TMS320C54x体系结构的DSP子系统和基于ARM7TDMI核的RISC微控制器子系统的CPU定点数字信号处理器。它与以前的器件相比,
[应用]
ARM系统设计JTAG接口详细图解
ARM系统的JTAG接口的设计不当往往使硬件系统无法调试,所以在设计ARM系统前要先熟悉ARM系统的JTAG接口的定义和常见问题。 1.ARM系统的JTAG接口是如何定义的? 每个PIN又是如何连接的? 下图是JTAG接口的信号排列示意: 接口是一个20脚的IDC插座。下表给出了具体的信号说明: 2.目标系统如何设计?   目标板使用与Dragon-ICE一样的20脚针座,信号排列见表1。RTCK和 nTRST这两个信号根据目标ASIC有否提供对应的引脚来选用。nSRST则根据目标系统的设计考虑来选择使用。下面是一个典型的连接关系图: 表 1 JT
[单片机]
<font color='red'>ARM</font>系统设计JTAG接口详细图解
ARM的服务器芯片有多强
处理器的世界没有什么绝对的护城河。被认为是X86阵营最稳固后方的PC和服务器领域,正在被ARM内核慢慢渗透。先是苹果宣布将用自研的处理器芯片替代Intel处理器,然后是富士通的48核SoC驱动的Fugaku超级计算机夺得了全球超算500的榜首,最后就是Ampere公司推出了面向云计算的Altra处理器的最新款,128核的Ampere™ Altra Max。而这枚基于7nm工艺的处理器巨无霸也将ARM服务器芯片的性能推向了极致。 为云原生而升级 在今年的3月份,Ampere公司发布了世界上第一款云原生处理器Altra。这款处理器满足了云原生处理器的三大需求:一是可预测的高性能,二是高可扩展性,三是高能效。 据Ampere 产品高
[手机便携]
<font color='red'>ARM</font>的服务器芯片有多强
解析LED显示屏网络直连的设计与实现
随着 网络 普及和速度的提升,网络通信方式被更多的用户采用,即用户通过 集线器 或网络直连的方式与显示屏通信。其中通过集线器,PC机和显示屏 IP 可不在同一个网段;而网络直连时,PC机和显示屏的IP地址必须在同一个网段。不管采用哪一种方法,都必须知道两者的IP地址才能进行通信。但在调试过程中,由于LED控制卡太多、放置时间太长或由不同的人进行配置,有时用户可能不知道显示屏的IP地址,这样就很难开展工作了。另外,出厂配置的IP地址和现场安装的IP地址可能不一样,并且现场安装的显示屏IP地址由于用户千差万别,其IP地址段也不一样。这样一来,在调试过程中,需要反复修改显示屏或PC机的IP地址,带来很大的工作量。因此,基于应用中的这些问
[电源管理]
LED显示屏知识详细讲解
  近几年随着北京奥运会、上海世博会、广州亚运会的举办, LED显示屏 的身影随处可见。LED显示屏可以 显示 变化的数字、文字、图形图像;不仅可以用于室内环境还可以用于室外环境,具有 投影 仪、电视墙、 液晶 显示屏 无法比拟的优点。    LED 受到广泛重视并得到迅速发展,与它本身所具有的优点密不可分。这些优点概括起来是: 亮度 高、工作电压低、功耗小、小型化、寿命长、耐冲击和性能稳定。LED的发展前景极为广阔,老牌企业上海幸马电子作为行业领头羊,在行业发展先期起着关键性作用。目前来说,LED正朝着更高亮度、更高耐气候性、更高的发光密度、更高的发光均匀性,可靠性、全色化方向发展。   一、LED显示屏的种类:  
[电源管理]
ARM的等精度测频在机组转速测控中的应用
  传统测量方法有2种,一种是测频法(M 法),是对被测信号在闸门时间(T—Nfo,N 个基准信号脉冲的时间)内的脉冲进行计数(计数值为M),被测信号的频率为 ,误差为   另一种是测周法(T法),是在被测信号一个周期内对基准脉冲计数(计数值为N),被测信号的频率为 , 误差为 。   其中, 为基准信号频率准确度,通常可达 ;对于测频法,在相同的闸门时间内,对于任意的f不能保证在T时间内正好有M 个T ,因此会产生最大±1个T 的量化误差,并且随着被测频率f 减小,M 减小,误差越大,因此,测频法只对高频信号有较好的测量精度;对于测周法,随着被测频率.f 增大,N 越小,误差越大,因此测周法只对低频信号有较好的测量精度
[单片机]
<font color='red'>ARM</font>的等精度测频在机组转速测控中的应用
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
  • 学习ARM开发(16)
    ARM有很多东西要学习,那么中断,就肯定是需要学习的东西。自从CPU引入中断以来,才真正地进入多任务系统工作,并且大大提高了工作效率。采 ...
  • 学习ARM开发(17)
    因为嵌入式系统里全部要使用中断的,那么我的S3C44B0怎么样中断流程呢?那我就需要了解整个流程了。要深入了解,最好的方法,就是去写程序 ...
  • 学习ARM开发(18)
    上一次已经了解ARM的中断处理过程,并且可以设置中断函数,那么它这样就可以工作了吗?答案是否定的。因为S3C44B0还有好几个寄存器是控制中 ...
  • 嵌入式系统调试仿真工具
    嵌入式硬件系统设计出来后就要进行调试,不管是硬件调试还是软件调试或者程序固化,都需要用到调试仿真工具。 随着处理器新品种、新 ...
  • 最近困扰在心中的一个小疑问终于解惑了~~
    最近在驱动方面一直在概念上不能很好的理解 有时候结合别人写的一点usb的例子能有点感觉,但是因为arm体系里面没有像单片机那样直接讲解引脚 ...
  • 学习ARM开发(1)
  • 学习ARM开发(2)
  • 学习ARM开发(4)
  • 学习ARM开发(6)
何立民专栏 单片机及嵌入式宝典

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

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