基于51单片机的LED点阵显示屏系统方案_第1页
基于51单片机的LED点阵显示屏系统方案_第2页
基于51单片机的LED点阵显示屏系统方案_第3页
基于51单片机的LED点阵显示屏系统方案_第4页
基于51单片机的LED点阵显示屏系统方案_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、. . . . 信息工程学院综合课程设计报告书题目: 基于51单片机的LED点阵显示屏系统的设计与实现专 业:电子信息科学与技术班 级:0309412学 号: 学生:指导教师:黄老师2012 年 10 月 16 日 基于51单片机的LED点阵显示屏系统的设计与实现摘 要:LED是指发光二极管,在某些半导体的PN结中,注入的少数载流子与多数载流子复合时会把多余的能量以光的形式释放出来,从而把电能直接转换为光能。PN结加反向电压,少数载流子难以注入,故不发光。这种利用注入式点知发光原理制作的二极管叫发光二极管,简称LED。由于电子显示屏制作简单,安装方便,被广泛应用于各种公共场合,如公交汽车的报站

2、器、广告屏以与公告牌等等。介绍的LED点阵电子显示屏,其功能有固定汉字、字母、数字的显示;平行左移、右移;固定信息的循环显示;显示屏的亮度连续可调;时间的显示和上位机对显示容可修改的功能随着LED显示屏在广告领域逐渐崭露头角,其控制系统也如雨后春笋,层出不穷。由于他的控制系统均是基于嵌入式处理器开发,所以单片机在其中也占有一席之地。但是,由于LED显示屏控制较复杂,特别是对于显示特殊效果,如循环移动、覆盖霓虹灯效果,要求处理器运算速度快、执行效率高,关键词:AT89C51 74HC154(行驱动器) 74HC595(列驱动器) 16*64点阵 LED 1、 系统设计总述从LED材料的不断更新,

3、灰度控制技术的发展,真彩色图像的展现:到驱动电路的灵活、高效,控制系统技术的提高无不体现了LED 行业技术的飞跃发展。另外,随着计算机的网路技术的发展,LED显示屏在网路环境下的使用情况越来越多,在多媒体、多种显示设备组成的信息显示系统中,采用智能化网路控制,联网控制多屏技术也在实际中得到应用。现存显示屏的控制系统包括了输入接口电路、信号的控制、转换和数字化处理线路、输出接口电路等,涉与的具体技术很多,其中为关注并研究开发和应用关键技术包括:串行传输与并行传输、动态扫描与静态锁存、输入接口技术、自动检测、远程控制技术等。文本以4个16*64点阵显示器为例,单片机AT89C51作为控制器,探讨简

4、单的汉字、数字显示技术。1.1方案分析显然,采用并行方式时,从控制电路到列驱动器的线路数量大,相应的硬件数目多。当列数很多时,并列传输的方案是不可取的。 采用串行传输的方法,控制电路可以只用一根信号线,将列数据一位一位传往列驱动器,在硬件方面无疑是十分经济的。但是,串行传输过程较长,数据按顺序一位一位地输出给列驱动器,只有当一行的各列数据都以传输到位之后,这一行的各列才能并行地进行显示。这样,对于一行的显示过程就可以分解成列数据准备(传输)和列数据显示两部分。对于串行传输方式来说,列数据准备时间可能相当长,在行扫描周期确定的情况下留给行显示的时间就太少了,以致影响到LED的亮度。解决串行传输中

5、列数据准备和列数据显示的时间矛盾问题,可以采用重叠处理的方法。即在显示本行各列数据的同时,传送下一列数据。为了达到重叠处理的目的,列数据的显示就需要具有所存功能。经过上述分析,就可以归纳出列驱动器电路应具有的功能。对于列数据准备来说,它应能实现串入并处的移位功能;对于列数据显示来说,应具有并行锁存的功能。这样,本行已准备好的数据打入并行锁存器进行显示时,串并移位寄存器就可以准备下一行的列数据,而不会影响本行的显示。图为显示屏电路实现的结构框图。显示屏电路框图2、16*64点 阵 屏 原 理点阵部结构与外形如下,16*64点阵共由1024个发光二极管组成,且每个发光二极管是放置在行线和列线的交叉

6、点上,当对应的某一行置1电平,某一列置0电平,则相应的二极管就亮;如要将第一个点点亮,则9脚接高电平13脚接低电平,则第一个点就亮了;如果要将第一行点亮,则第9脚要接高电平,而(13、3、4、10、6、11、15、16)这些引脚接低电平,那么第一行就会点亮;如要将第一列点亮,则第13脚接低电平,而(9、14、8、12、1、7、2、5)接高电平,那么第一列就会点亮。 一般我们使用点阵显示汉字是用的16*16的点阵宋体字库,所谓16*16,是每一个汉字在纵、横各16点的区域显示的。也就是说得用四个8*8点阵组合成一个16*16的点阵。如下图所示,要显示“你”则相应的点就要点亮,由于我们的点阵在列线

7、上是低电平有效,而在行线上是高电平有效,所以要显示“你”字的话,它的位代码信息要取反,即所有列(1316脚)送(11111,0xF7,0x7F),而第一行(9脚)送1信号,然后第一行送0。再送第二行要显示的数据(1316脚)送(11111,0xF7,0x7F),而第二行(14脚)送1信号。依此类推,只要每行数据显示时间间隔够短,利用人眼的视觉暂停作用,这样送16次数据扫描完16行后就会看到一个“你”字;第二种送数据的方法是字模信号送到行线上再扫描列线也是同样的道理。同样以“你”字来说明,16行(9、14、8、12、1、7、2、5)上送(00000,0x00,0x00)而第一列(13脚)送、“0

8、”。同理扫描第二列。当行线上送了16次数据而列线扫描了16次后一个“你”字也就显示出来了。 2.1 系统的主要结构       单片机控制器行扫描电路行驱动列扫描电路列驱动16*64点阵  图1、16*64LED点阵系统设计系统框图3、系统硬件电路的设计本系统采用AT89C51单片机作控制器。整个电路主要由单片机控制与其接口电路、驱动显示电路、电源电路等部分组成。为了简化显示屏电路,降低成本,本系统在单片机部分不加字库存储器,而在PC机上编辑汉字和字符显示信息,并将其转换为相应的点阵显示数据。然后通过串口

9、(采用RS一232通信标准)送给单片机存储并进行显示处理。31单片机控制电路(1)MCU的选择:由于软件对空间的需求和硬件的简化,本系统MCU采用的是AT89C51,它具有8KB的ROM,128字节的RAM,不需再外扩存储器了。图2、AT89C51的电路设计图3、AT89C51引脚图3.2、16*64点阵显示屏设计图4是一种8x8的LED点阵单色行共阳模块的部结构图,其单点工作电压矾为18 V,正向电流露为810 mA。当某一行线为高电平而某一列线为低时,其行列交叉的点就被点亮;而当其某一列线为高时,其行列交叉的点为暗;当某一行线为低电平时。无论列线如何。对应这一行的点全部为暗。用四个8x8点

10、阵显示可构成16x16点阵显示器,其连接方法如图5所示。图中,将(A)和(B)的8列、(C)和(D)的8列分别对应相连,同时将(A)和(C)的8行、 (B)和(D)的8行分别对应相连。即可形成一个16行(每一行有16个LED)、16列(每一列也有16个LED)的16x16点阵显示器,可将这256个点称为一页,这样,显示字符时。只要对一页中对应的亮灭进行控制即可。把4个16x16点阵显示器相连从而构成16x64的点阵显示器如图6。图4、行共阳8*8点阵显示屏部原理图 图5、16*16点阵连接图图6、16*64点阵连接图33 LED点阵显示器的扫描驱动LED显示屏驱动电路的设计应与所用控制系统相配

11、合。驱动通常分为动态扫描型与静态锁存型驱动二大类。本文以动态扫描型驱动电路的设计为例来进行分析。动态扫描型驱动方式是指显示屏上的16行发光二极管共用一组列驱动寄存器,然后通过行驱动管的分时工作来使每行LED的点亮时间占总时间的116。只要每行的刷新速率大于50 Hz,利用人眼的视觉暂留效应。人们就可以看到一幅完整的文字或画面。   AT89C51单片机有四个IO口(P0、P1、P2、P3)。每个IOEl有8位,如果都采用并行输出,显然不能满足要求。因此,本设计中的行扫描驱动采用并口输出。而场扫描驱动采用串口输出。3.3.1、行驱动电路由于16x64点阵显示器有16行,为充分

12、利用单片机的接口。本电路中加入了一个416线译码器74HCl54,其输入是一个16进制码,解码输出为低态扫描信号它们的管脚示意图如图7所示。把74HCl54的E1和E2引脚接地。然后以A、B、C、D四脚为输入端。就会形成16种不同的输入状态,分别为00001111,然后使每种状态只控制一路输出。即会有16路输出。如果一行64点全部点亮。图7、74HC154引脚图3.3.2、列驱动电路本系统列扫描驱动电路的设计可用串人并出的通用集成电路74HC595来作为数据锁存。74HC595是一个八位串行输入三态并行输出的移位寄存器,其管脚见图8所示,其中SI是串行数据的输入端,RCK是存储寄存器的输入时钟

13、,SCK是移位寄存器的输入时钟。Q 7H是串入数据的输出,G是对输入数据的输出使能控制,QAQH为串人数据的并行输出。从SI口输入的数据可在移位寄存器的SCK脚上升沿的作用下输入到74HC595中并在RCK脚的上升沿作用下将输入的数据锁存在74HC595中,这样,当G为低电平时,数据便可并行输出。为了避免与PC机串口输入的数据相互干扰,也可使用模拟串口P14P17来分别输出串行数据、移位时钟SCK、存储信号RCK和并行输出的使能信号G。为了消除电源电压的波动与行扫描管压降(第一行点亮的点数不同,将引起管压降的变化,从而影响通过LED管的电流1的变化对LED显示屏亮度的影响,设计时可采用列恒流驱

14、动电路,可选用三极管8550和外围元件构成列恒流驱动电路,并通过调整100 kQ可调电阻使三极管处于放大状态。同时将集电极电流调整为10 mA从而使点亮对应点阵时通过LED的电流不变。图8、74HC595引脚图4、系统软件的设计   显示屏软件的主要功能是向屏体提供显示数据,并产生各种控制信号,使屏幕按设计的要求显示。根据软件分层次设计的原理,可以把显示屏的软件系统分为两层;第一层是底层的显示驱动程序,第二层是上层的系统应用程序。显示驱动程序负责向屏体送显示数据,并负责产生行扫描信号和其他控制信号,配合完成LED显示屏的扫描显示工作。显示驱动器程序由定时器T0中断

15、程序实现。系统应用程序完成系统环境设置(初始化)、显示效果处理等工作,由主程序来实现。从有利于实现较复杂的算法(显示效果处理)和有利于程序结构化考虑,显示屏程序适宜采用C语言编写。4.1显示驱动程序显示驱动程序在进入中断后首先要对定时器T0重新赋初值,以保证显示屏刷新率的稳定,1/16扫描显示屏的刷新率(帧频)计算公式如下: 刷频率(帧频)=×溢出率=× (4-1)其中f位晶振频率,t为定时器T0初值(工作在16位定时器模式)。然后显示驱动程序查询当前燃亮的行号,从显示缓存区读取下一行的显示数据,并通过串口发送给移位寄存器。为消除在切换行显示数据的时候产生拖尾现象,驱动程序

16、先要关闭显示屏,即消隐,等显示数据打入输出锁存器并锁存,然后再输出新的行号,重新打开显示。4.2系统主程序本文设计的系统软件能使系统在目测条件下LED显示屏各点亮度均匀、充足,可显示图形和文字,显示图形和文字应稳定、清晰无串扰。图形或文字显示有静止、移入移出等显示方式。系统主程序开始以后,首先是对系统环境初始化,包括设置串口、定时器、中断和端口;单元显示屏可以接收来自控制器(主控制电路板)或上一级显示单元模块传输下来的数据信息和命令信息,并可将这些数据信息和命令信息不经任何变化地再传送到下一级显示模块单元中,因此显示板可扩展至更多的显示单元,用于显示更多的显示容。函数声明、宏定义、全局变量开始

17、初始化程序显示列表函数显示程序主程序延时程序结束程序流程图5、调试与性能分析5.1开发环境介绍程序编写采用Keil51环境下调试,Keil C51是美国Keil Software公司出品的51系列兼容单片机C语言软件开发系统,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。用过汇编语言后再使用C来开发,体会更加深刻。 Keil C51软件提供丰富的库函数和功能强大的集成开发调试工具,全Windows界面。另外重要的一点,只要看一下编译后生成的汇编代码,就能体会到Keil C51生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。在开发大型软件时

18、更能体现高级语言的优势。5.2 理论性能分析LED显示屏硬件电路只要硬件质量可靠,引脚焊接正确,一般无需调试即可 正常工作。软件部分需要调试的主要有显示屏刷新频率与显示效果两部分。显示屏刷新率由定时器T0的溢出率和单片机的晶振频率决定,表5-1给出了实验调试时采用的频率与其对应的定时器T0初值。表5-1 显示平刷新率与T0初值关系表(24MHz晶振)刷新率255062.57585100120T0初值0xec780xf63c0xf8300xf97e0xfa420xfb1e0xfbee从理论上来说,24Hz以上的刷新频率就能看到稳定的连续的显示,刷新率越高,显示越稳定,同时刷新频率越高,显示驱动程序占用的CPU时间越多。试验证明,在目测条件下刷新频率40Hz一下的画面看起来闪烁较严重,刷新频率50Hz以上的已基本察觉不出画面的闪烁,刷新频率达到85Hz以上时再增加画面闪烁没有明显的改善。这个方案

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论