0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

STC89LE516实现RS485总线LED显示屏控制系统

电子设计 2018-10-23 09:28 次阅读

引言

LED显示屏具有成本低、寿命长、功耗小、工作温度范围宽等优点,广泛应用于文字及图像信息的显示。整个系统一般分为3个部分:上位机,显示屏控制电路和LED阵列及其驱动。

其中显示屏控制电路的设计广泛采用两类器件作为其控制核心来实现,一类是单片机控制系统,另一类是可编程逻辑器件。该设计采用基于单片机的控制方案,如图1所示,一台PC机通过RS485总线与多块控制器相连,每块控制器扩展了温度传感器实时时钟和其他外围器件,控制LED屏的显示。

采用单片机的控制方案,结构简单,应用灵活,并且易于扩展。

1系统的硬件设计

系统硬件框图如图2所示,上位PC机用专门的软件编辑将要显示的信息,通过串口发给单片机,存储在Flash内,单片机再驱动电路将字符的编码通过LED点阵的形式显示出来。

LED点阵为双基色屏,能显示红,绿,黄3种颜色。控制器的核心选用STC89LE516单片机,扩展32KSRAM作为显示缓存区,512KFlash用于存储显示的点阵信息和一些必要的参数

拨码开关选择本屏的物理地址。控制器还扩展了1片温度传感器采集温度数据,1片时钟芯片进行实时时间的读写。

1.1存储器扩展电路

STC89LE516是一款强抗干扰,高速,低功耗的单片机,增强型51内核,集成了看门狗电路,内含64K字节Flash存储器,512字节RAM,可在线编程,可远程升级,价格便宜。

为了提高响应速度,系统扩展了32KSRAMIS61LV256作为显示缓存区,用于保存当前正在显示的一帧数据和一些特技处理数据,和单片机的接口如图3所示,SRAM的最高位地址线A14由单片机的P3.2单独控制,以便于将红色和绿色LED点阵的数据分块存放,当P3.2输出为0时,选中RAM地址0x0000~0x3fff,为红色LED的数据区;当P3.2输出为1时,选中RAM地址0x4000~0x7fff,为绿色LED的数据区。

Flash用于存储代码,显示的数据信息和字库。可采用查表的方式调用需要显示的汉字和英文点阵数据。用64K字节的存储空间存储16×16点阵的汉字,可以显示2048个,512K的Flash可满足常用字不同字体的存储需求。SST39VF040的地址线有19位,单片机用P1口来扩充高三位地址线。

系统中单片机,SRAM,Flash要求313V供电,而系统接入电源为5V,可通过LM1117-3.3为芯片提供3.3V稳压电源

低压差电源芯片LM1117输出电流可达800mA,输出电压精度在±1%以内,还具有电流限制和热保护功能。

1.2串行接口电路

控制器接收数据采用单片机内部全双工的通用异步收发器UART)。在传输距离小于20m时采用非平衡的RS-232,在传输距离为几十m到上km时采用RS-485。RS-485采用平衡发送和差分接收,因此具有抑制共模干扰的能力,可以联网构成分布式系统。由于显示屏的位置是分散的,彼此相距几十甚至几百m,所以控制器用MAX232和SN75176分别做电平转换,用跳线进行RS-232和RS-485之间的切换选择,从而实现和PC的通信,完成数据的存储和更新。

1.3实时时钟电路

单片机与HT1381低功耗实时时钟芯片接口采用串行传输方式,如图4所示只需3根线就可以读写年、月、日、星期、时、分、秒,在需要时显示到LED屏幕上。HT1381所需时钟独立于单片机,外接321768kHz晶振就可以工作。配备3V充电电池,系统采用外部供电时,二极管导通,外部电源一方面向芯片供电,另一方面对充电电池进行充电。当系统电源停止供电时,二极管截至,芯片由电池来供电。

1.4温度传感器电路

温度传感器选用单总线数字温度传感器DS18B20,该器件将温度传感器、温度报警触发器、ROM等集成在一个很小的芯片上,传感器直接输出的就是温度信号的数字值。DS18B20以9位数字的方式反映温度值,读出或写入数据仅需要一根信号线。

1.5扫描控制电路和LED阵列

目前大多数LED显示屏的屏幕设计采用的是模块化的结构,其基本单元是LED显示单元模块,屏幕大小和形状可灵活改变,显示屏的安装和维护也十分方便。LED显示单元模块分为LED点阵和驱动电路2部分。

该LED点阵选用红绿双基色屏,可显示红、绿、黄3种颜色,价格适中。每个模块是16×64像素,由16块8×8像素共阳极LED点阵组成。16行LED共用一列数据,每行LED的显示时间占一个扫描周期的1/16。根据人眼的视觉暂留效应,只要整屏的刷新频率大于60Hz,即可形成一幅稳定的画面。每个LED显示单元有8个红色数据输入端、8个绿色数据输入端和8个行控制信号输入端。

驱动电路分为行驱动和列驱动。

行驱动电路由2片3-8译码器74HC138组成。一个行选信号同时控制着一行中所有LED的通断,所以它需要较大的驱动电流,为此选用4953。4953内含2个P沟道的MOSFET管,漏极电流最大可达419A,保证了行驱动能力,16×64点阵需要8片4953。2片138的16路输出分别通过4953的驱动用于选通相应的行,实现对行的控制。

列驱动采用74HC595,内含移位寄存器和三态输出锁存器,可以把串行输入的8bit数据并行输出。分别用8个74HC595锁存红色、绿色数据。单片机2路控制信号与所有595的时钟输入SRCLK,锁存信号RCLK相连。第1片595的串行输出接到第2片595的串行输入端,同理,其他引脚的连接方式一样,通过这种级联的方式,把8个595芯片连在一起,同时每个595芯片的并行输出连接8个LED的列。

显示过程为:

(1)把显示缓存区中的第1行红色数据和绿色数据分别送入595锁存;

(2)送行扫描信号,选通LED阵列的第一行并延时;

(3)行消隐,行扫描信号下移一行并重复上述过程直至完成第16行的显示。如此循环。

每个LED显示单元模块有2个接口,可根据显示长度的不同需求灵活扩展LED单元,控制器保持不变。如需高度上扩展,可通过扩展CPLD/FPGA控制行扫描信号的同步来实现,在显示和控制原理上并无差别。

2系统的软件设计

系统软件包括上位机软件和下位机软件。上位机软件用VC编写,与下位机通过异步串口进行通信。上位机软件的任务是校准时钟,编辑显示的内容、颜色和显示效果等并把数据广播发送到LED显示控制器。通信的数据格式如表1所示。

下位机开机进行中断、串口初始化后,按照指令执行显示子程序,定时进行温度采样和时钟数据的读取。下位机始终处于监听状态,当有串口中断时,和上位机通信,上位机发1字节地址符,下位机接收后与本屏地址进行比较,本屏地址由控制器的拨码开关设定。如果地址相同则接收数据,否则中断返回,由此实现LED屏的分布式控制。接收完全部数据后,进行校验,如出错则要求重发,校验正确则发送接受成功标志给上位机,结束中断。串口中断程序和定时器中断程序流程见图5。

控制器接收到数据后存于Flash中,根据数据中的命令字,执行相应的操作,操作判断流程如图6所示。

显示子程序根据汉字内码从字库中查找出字模,送至显示缓存区,通过数据处理后输出至列选通信号,配合行扫描信号,进行动态扫描显示。其中数据处理功能主要完成字幕左移、右移、百叶窗、变色、闪烁等。

3结语

本文选用了STC89LE516单片机,在保证功能和稳定的前提下,降低了成本,扩展了大容量Flash数据存储器,上位机只需传送汉字内码即可显示,减少了数据传送量,提高了响应速度。LED显示单元可灵活扩展,满足不同需求。经实验验证,该系统显示稳定可靠,支持温度、日历、汉字和各种特效等,可运用于工业生产线、楼宇安防、停车场等的分布式LED显示。


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • LED显示屏
    +关注

    关注

    35

    文章

    1820

    浏览量

    98627
  • RS485
    +关注

    关注

    39

    文章

    1140

    浏览量

    82125
  • STC89LE516
    +关注

    关注

    0

    文章

    2

    浏览量

    6345
收藏 人收藏

    评论

    相关推荐

    【产品应用】RS485典型电路应用详解

    前言RS485电路‌是一种常见的串行通信接口标准,广泛应用于工业控制环境中。它采用平衡发送和差分接收的方式,具有抑制共模干扰的能力,适用于通信距离从几十米到上千米的场景,并且在多节点系统中表现良好
    的头像 发表于 11-16 01:06 160次阅读
    【产品应用】<b class='flag-5'>RS485</b>典型电路应用详解

    RS485到底能跑多少协议?

    一种差分信号电平通信。 总线的接线方式,广泛应用于数据采集和工业控制,它的主要优点之一是它允许将多个RS485设备放在同一条总线上,可以方便地实现
    的头像 发表于 10-26 10:15 401次阅读
    <b class='flag-5'>RS485</b>到底能跑多少协议?

    如何解决RS485总线冲突和支线问题?

    什么是RS485总线RS485采用半双工通信方式,能够在单条总线上连接多达32个(理论值,实际应用中可扩展)设备进行双向通信。它支持的数据传输速率范围较广,从几百比特每秒至10兆比特
    的头像 发表于 08-30 12:35 1245次阅读
    如何解决<b class='flag-5'>RS485</b><b class='flag-5'>总线</b>冲突和支线问题?

    RS485常见问题及解决方法

    RS485总线是工业上最常用的通信方式之一,在实际布线或使用过程中通常会出现一系列问题,今天总结一些平时RS485通讯可能会出现的通讯问题及其解决方法以供大家参考。什么是RS485
    的头像 发表于 06-14 08:20 1704次阅读
    <b class='flag-5'>RS485</b>常见问题及解决方法

    LED显示屏系统大揭秘:揭秘璀璨背后的科技力量

    LED显示屏系统是一个集内部结构、驱动系统控制系统、电源系统、散热
    的头像 发表于 06-12 00:21 304次阅读
    <b class='flag-5'>LED</b><b class='flag-5'>显示屏</b><b class='flag-5'>系统</b>大揭秘:揭秘璀璨背后的科技力量

    [天拓四方]RS485网关在工业自动化控制系统中的应用

    随着工业自动化控制系统的不断发展,各种现场总线技术在工业领域得到了广泛应用。其中,RS485作为一种半双工的通信方式,因其通信距离远、抗干扰能力强、传输速率高等优点,在工业现场得到了广泛应用。而
    的头像 发表于 05-28 17:20 466次阅读

    LED显示屏设计方案

    1、LED显示屏基础知识2、LED显示屏设计要素3、LED显示屏驱动方案4、
    发表于 04-03 17:21 9次下载

    LED显示屏同步系统与异步系统的区别

    LED显示屏中,控制系统也是很重要的一个部分。LED显示屏控制系统,一般情况下分为同步
    发表于 04-03 11:38 830次阅读

    RS485和CAN总线电缆超过多长才需安装终端电阻?

    RS485和CAN总线电缆超过多长才需安装终端电阻? RS485和CAN总线是常用于工业自动化领域的通信总线,它们在工业
    的头像 发表于 02-06 10:23 2272次阅读

    RS485集线器工作原理是什么?RS485集线器具有什么功能?

    以将一条RS485总线分为多个分支,每个分支上可连接多个RS485设备,同时提供了电气隔离和信号增强功能。RS485集线器的工作原理是通过在总线
    的头像 发表于 02-03 16:25 3123次阅读

    Led显示屏控制系统怎么使用 led显示屏控制器怎么设置

    Led显示屏控制系统是一种用于控制LED显示屏的硬件设备,通过它可以
    的头像 发表于 02-03 14:03 7434次阅读

    RS-485典型配网结构 RS485总线优缺点

     RS485总线是一种低成本的串行通信总线,具有高灵敏度、长距离传输和多节点支持等优点。在工业自动化领域中,RS485总线被广泛应用于各种设
    的头像 发表于 02-02 16:56 2792次阅读
    <b class='flag-5'>RS-485</b>典型配网结构 <b class='flag-5'>RS485</b><b class='flag-5'>总线</b>优缺点

    RS485与MODBUS RTU的区别 如何选择合适的通信技术?

    合适通信技术的建议。 1. RS485 RS485是一种通信总线标准,用于在工业自动化和控制系统实现多个设备之间的通信。它通过一对电线来传
    的头像 发表于 02-01 10:27 9117次阅读

    RS485总线在连接时为什么要屏蔽接地?

    RS485总线在连接时为什么要屏蔽接地? RS485总线是一种常见的串行通信协议,用于在工业控制系统和现场
    的头像 发表于 01-04 16:59 1920次阅读

    RS485总线连接采用什么样的线缆呢?多台RS485设备如何连接呢?

    RS485总线连接采用什么样的线缆呢?多台RS485设备如何连接呢? RS485总线是一种串行通信协议,常用于工业自动化、楼宇管理和数据采集
    的头像 发表于 01-04 16:59 4407次阅读