基于51单片机的LED点阵显示屏系统的设计与实现.doc
《基于51单片机的LED点阵显示屏系统的设计与实现.doc》由会员分享,可在线阅读,更多相关《基于51单片机的LED点阵显示屏系统的设计与实现.doc(41页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、摘要:本文介绍了一款以单片机AT89S51为控制器的LED点阵显示屏系统的设计。该系统可实现中英文字符的显示和动态特效显示。并且可以通过级连的方式来扩大显示屏幕的尺寸以到达增加显示内容的目的。系统采用PC机作为上位机,上位机向单片机发送控制命令和上位机所存储的显示代码,AT89S51单片机接收并处理PC机的控制命令以及显示代码,由显示驱动模块驱动一个1616分辨率的LED点阵显示屏的扫描显示。PC机与单片机之间的通信采用RS232C通信标准来实现。所选用的AT89S51单片机具有价格低廉程序写入方便的特点使得整个系统方便维护和检修。除此之外,该系统只占用了单片机少量的I /O口和内存,为系统留
2、下了功能扩展的空间。关键字:AT89S51;LED点阵显示;串行通对设计题目的特点,作者对论文的内容和结构将做如下安排:1初步方案的论证和选择 搜集题目的有关资料,并参照目前通用的设计思想和设计方法拟定几套设计方案进行分析比拟。最终选定了以PC机为上位机,单片机为核心控制器件,外加译码电路和驱动电路的设计方案。2方案实现以设计方案为指导思想选择适宜的器件来实现这一思想,选择器件时要从功能和电气特性两方面来选择和论证。经过比照选择选定AT89S51单片机为核心控制器件,由串并转换器74LS164和锁存器74LS373为译码电路器件,三极管8550和ULN2803为驱动电路器件。论文列出了详细的器
3、件参数和在系统中的连接使用方法。 3软件编写 根据硬件特点和设计要求,软件选用C语言编写。程序按功能分为静态显示、动态显示、通信等几个功能上相对独立的模块。然后按照所划分的模块逐个编写和调试,最后将独立的模块整合起来。4验证与测试 调试分为硬件调试、软件调试和系统联合调试几步来进行。在硬件调试中发现有单片机端口驱动能力缺乏、驱动电路工作不稳定等问题。在软件调试中出现程序整合工作不协调等问题。通过分析,查找找出了问题原因并设法将其解决。5结论 设计完成后对设计中所遇到的问题、经验教训、以及自己的想法进行总结。第2章 方案论证与选择2.1 系统硬件方案大多数的LED显示屏都在户外,所以对硬件的质量
4、要求非常的高。为方便检修和维护硬件电路设计时常常采用模块化的设计方法。硬件的设计采用模块化设计,既要满足模块本身功能又要能够和整个系统兼容。如图2-1所示,根据显示系统的功能特点确定系统硬件由显示屏局部,控制局部,通信系统及上位机四局部组成。上位机通过通信局部向控制局部发送控制指令和显示内容代码,控制局部执行显示指令并将显示代码处理后控制显示局部的显示内容和显示方式3。图2-1 系统硬件组成框图2.1.1 显示屏主控制器控制局部是整个系统的核心局部,其功能为与上位机通信接收上位机发送的数据和控制指令处理过后控制显示局部显示内容。其常用的电子设计方法有单片机、DSP、及EDA技术。几种设计方法比
5、拟各有其特点:1单片机单片机是集成了CPU,ROM,RAM和I/ O口的微型计算机。它有很强的接口性能,非常适合于工业控制,因此又叫微控制器(MCU)。单片机品种齐全,型号多样 CPU 从8,16,32到64位,多采用RISC 技术,片上I/O非常丰富,有的单片机集成有A/ D,“ 看门狗,PWM,显示驱动,函数发生器,键盘控制等。它们的价格也上下不等,这样极大地满足了开发者的选择自由。除此之外单片机还具有低电压和低功耗的特点。随着超大规模集成电路的开展,NMOS工艺单片机被CMOS代替,并开始向HMOS 过渡。供电电压由5V 降到3V,2V甚至到1V,工作电流由mA降至A ,这在便携式产品中
6、大有用武之地4。2DSP 芯片DSP 又叫数字信号处理器。顾名思义,DSP主要用于数字信号处理领域,非常适合高密度,重复运算及大数据容量的信号处理。现在已经广泛应用于通信、便携式计算机和便携式仪表、雷达、图像、航空、家用电器、医疗设备等领域,DSP具有修正的哈佛结构,多总线技术以及流水线结构。将程序与数据存储器分开,使用多总线,取指令和取数据同时进行,以及流水线技术,这使得速度有了较大的提高。DSP区别于一般微处理器的另一重要标志是硬件乘法器以及特殊指令,一般微处理器用软件实现乘法,逐条执行指令,速度慢。而DSP 依靠硬件乘法器单周期完成乘法运算,而且还具有专门的信号处理指令,如TM320 系
7、列的FIRS ,LMS,MACD指令等5。3EDAEDA(即Electronic Design Automation) 即电子设计自动化,它是以计算机为工具,在EDA 软件平台上,对用硬件描述语言HDL 完成的设计文件自动地逻辑编译、逻辑化简、逻辑分割、逻辑综合及优化、逻辑布局布线、逻辑仿真,直至对于特定目标芯片进行适配编译、逻辑影射和编程下载等。设计者只需用HDL 语言完成系统功能的描述,借助EDA工具就可得到设计结果,将编译后的代码下载到目标芯片就可在硬件上实现。由于FPGA/CPLD可以通过软件编程对该硬件的结构和工作方式进行重构,修改软件程序就相当于改变了硬件,软件编写可以采用自顶向下
8、的设计方案,而且可以多个人分工并行工作这样便缩短了开发周期和上市时间,有利于在剧烈的市场竞争中抢占先机。而且MCU和DSP都是通过串行执行指令来实现特定功能,不可防止低速,而FPGA/CPLD那么可实现硬件上的并行工作,在实时测控和高速应用领域前景广阔;另一方面,FPGA/CPLP器件在功能开发上是软件实现的,但物理机制却和纯硬件电路一样,十分可靠。三种设计方式相比拟各有优点且都能够实现控制功能,但单片机的技术门槛较低开发本钱也较低非常适合初学者进行学习和锻炼使用。现在市场上常用的单片机主要有MCS-51、AVR、ARM、PIC等。其中应用最广泛的单片机首推Intel的51系列,由于产品硬件结
9、构合理,指令系统标准,加之生产历史“悠久,有先入为主的优势常作为单片机学习的教材。且51系列的I/O脚的设置和使用非常简单,当该脚作输入脚使用时,只须将该脚设置为高电平复位时,各I/O口均置高电平。当该脚作输出脚使用时,那么为高电平或低电平均可。所以在控制局部方案的选择中选定51系列单片机作为控制局部的核心器件。2.1.2 通信系统 通信局部要满足的设计要求就是稳定、快速、简单易实现。因为通常情况下显示屏和上位机的距离不会很远,所以通信距离的要求不是很高。计算机数据通信主要采用并行通信和串行通信两种方式。1并行通信并行通信时数据的各个位同时传送,可以字或字节为单位并行进行。并行通信速度快,但用
10、的通信线多、本钱高,故不宜进行远距离通信。2串行通信串行通信数据是一位一位顺序传送,只用很少几根通信线,串行传送的速度低,但传送的距离长,因此串行适用于长距离而速度要求不高的场合。在串行发送时,数据是一位一位按顺序进行的,而计算机内部的数据是并行的。因此,当计算机向外发送数据时,必须将并行数据转换为串行数据再发送。反之,又必须将串行数据转换为并行数据输入计算机中。这种转换即可以用硬件实现也可以用软件实现。单由软件实现会增加CPU负担,降低其利用率,故目前常采用硬件实现。通用的通用异步接收/发送器,简称UARTUniversal Asynchromous Receeiver/Trabsnitte
11、r是完成这一功能的硬件电路。在单片机芯片中,UART已经集成在其中,作为其组成局部,构成一个串行口6。 综上所述,题目设计已经选定了单片机为开发方式而单片机的UART已经集成在单片机内,所以通信系统选择串行通信为通信方式。2.1.3 LED点阵显示屏显示局部包括了一块至少可以显示一个汉字的显示屏,以及驱动该显示屏的驱动电路。由于单片机的I/O口有限要不能直接用I/O口来驱动LED显示屏,所以需要对单片机IO口进行扩展增加单片机并行输出的能力。LED显示屏是由一个一个的发光二极管点阵构成的,要构成大屏幕的LED显示屏就需要多个发光二极管。构成LED屏幕的方法有两种,一是由单个的发光二极管逐点连接
12、起来,如图2-2所示;二是选用一些由单个发光二极管构成的LED点阵子模块构成大的LED点阵模块。目前市场上普遍采用的点阵模块有88、1616几种;这两种屏幕构成方法各有有缺点,单个发光二极管构成显示屏优点在于当单个的发光二极管出现问题时只需更换一个二极管即可,检修的本钱较低,缺点在于连接线路复杂;而点阵模块构成的方法却正好与之相反,模块构成省约了大量的连线,不过当一个LED出现问题时同在一个模块的所有LED都必须被更换。这就加大了维修的本钱。两种方法相比拟,决定采取模块构成的方法来制作一个LED点阵显示屏。为了防止模块的缺点,选择点阵数较小的模块来减小出现这一问题的风险。所以构建一个1616的
13、LED点阵屏选用四块88点阵模块。图 2-2 LED点阵图一个1616的LED显示屏行和列各有16支引脚,不能单靠51单片机的端口驱动所以必须要对单片机的端口个数进行扩展。经常采用的端口扩展方法是用串并转换芯片进行译码。常用的串并转换芯片有74LS1544线-16线译码器、74LS1648位串并转换器、74HC595等。51系列单片机端口低电平时,吸入电流可达,具有一定的驱动能力;而为高电平时,输出电流仅数十甚至更小电流实际上是由脚的上拉电流形成的,根本上没有驱动能力,所以单片机不能直接驱动LED显示屏显示。在单片机和显示屏之间还需要增加以功能放大位目的的驱动电路7。2.1.4 硬件设计方案最
14、终方案如图2-3所示,以PC机作为上位机存储和处理显示内容用串行通信的方式将显示内容和控制指令传输到单片机系统,单片机根据上位机传输来的内容和指令通过端口译码扩展后驱动4块88LED点阵模块构成的1616的LED点阵显示屏。题目将以此方案为指导思想展开具体的硬件电路设计。图2-3 硬件设计方案2.2 系统软件方案软件的设计除了满足设计功能外还必须要满足易读写,方便下载和编译。设计目标和硬件总体结构确定的情况下,软件可以分为主程序,显示子程序,各种特效显示子程序,通信程序三个主要局部组成。具体结构如图2-4所示。图2-4 软件功能结构框图软件的编写需要借助软件编辑器和编译软件,编译完成后还需要下
15、载到单片机中执行。编写软件之前得首先选择一种适宜的语言以及配套的编辑器和编译软件。最后还要选择一款与所选单片机的下载器或下载软件来把编写的程序下载到单片机中执行。第3章 系统硬件设计 3.1 硬件整体设计概述及功能分析 显示系统具体设计主要由上位机,通信系统,单片机系统,译码电路,显示驱动电路和1616的点阵屏六局部组成。具体工作流程为:上位PC机通过通信系统向单片机发送控制指令和显示代码内容,单片机接收后执行控制指令处理显示代码将显示内容通过I/O口串行输出并且控制译码电路完成串并转换并行输出,最后由显示驱动电路进行电压和电流的处理以到达LED显示屏的显示电流,电压要求进而使显示屏显示内容1
16、1。根据硬件的功能结构图选取适宜器件,器件不但要求能实现所要求的功能还要能兼容至整个系统之中。通过查阅资料和比照最终的硬件原理图如图3-1所示。 图3-1 硬件原理图 3.2.2 控制系统设计控制电路设计中采用的是单片机系统,该系统必须要是工作在一个最小系统指单片机的可以的最小配置系统。AT89S51的最小系统包括了外界时钟电路和复位电路,选定一定数量的IO口作为控制口控制外部的各种器件和数据的输出。根据功能选择一定的单片机端口添加外围的器件,具体电路如图3-2所示。在该系统中,P1各口主要用作LED显示数据的控制输出。由于端口的驱动能力有限所以该端口外接了5K的上拉电阻来提高驱动能力。其中P
17、1.5P1.6P1.7还复用为ISP下载功能口。具体接法为:P1.0,P1.1,P1.4,P1.5分别接四块74LS164的A端,向74LS164送入串行数据经过其转换后并行输出;P1.2和P1.6分别接列和行的74LS164的CLOCK端,产生移位脉冲是串行数据并行输出;P1.3和P1.7接列和行的CLEAR端,在一组数据完成串并转换后去除164芯片中的内容转换新的数据;其中P1.5P1.6P1.7还复用为ISP下载功能口。P2.0接164芯片的使能控制端,当为高电平使允许输出;P2.2和P2.3接锁存器74LS373的OE和LE端控制锁存器的工作状态。 端口30,EA/VPP:外部访问允许
18、。欲使CPU仅访问外部程序存储器地址为0000HFFFFH,EA端必须保持低电平接地。因为没有扩展外部程序存储器所以将EA置为高电平。图3-2 控制局部电路图由于P3口是特殊功能口,在该系统中根本是采用其第二功能。其第二功能和实际运用如表3-1所示:表3-1 AT89S51P3口第二功能的应用端口第二功能实际作用P3.0RXD串行输入口与上位机通信的数据输入口P3.1TXD(串行输出口)与上位机通信的数据输出口P3.2外部中断0做按键中断,控制显示状态P3.3外部中断1做按键中断,控制运行模式AT89S51单片机的P1在访问外部数据存储器或程序存储器时,这组口线分时转换地址低8位和数据总线复用
19、,P2口在访问外部程序存储器或16位地址的外部数据存储器时,P2口送出高8位地址数据。所以P1和P2口留为外部数据存储器和程序存储器的扩展用,以备内部存储器和程序存储器不够用的情况时使用12。3.3 译码电路设计 译码电路的功能是为了解决单片机I/O端口缺乏。行译码所用器件为串并转换器74LS164和锁存器74LS373。具体电路如图3-3所示图3-3 行译码电路图3.3.1 串并转换器74LS164列译码采用的是芯片74LS164。如果不采用译码电路完全依靠单片机的端口输出来控制1616的LED点阵屏显示,需要32个端口。而采用了译码电路后仅仅需要79个端口便可实现控制显示。大大减少了I/O
20、口的占用数目,为单片机扩展其他功能预留下来了空间。74LS164为一个8位数据的串并转换器。当去除端CLEAR为低电平时,输出端QAQH均为低电平。串行数据输入端A,B可控制数据。当A、B任意一个为低电平,那么禁止新数据输入,在时钟端CLOCK脉冲上升沿作用下Q0为低电平。当A、B有一个为高电平,那么另一个就允许输入数据,并在CLOCK上升沿作用下决定Q0的状态。表3-1 74LS164工作参数参数最小值标准值最大值单位高电平输入电压2V低电平输入电压0.8V高电平输出电压2.43.2-V低电平输出电压0.20.4V时钟频率025MHZ这就要求单片机的引脚输出的上下电平要在芯片的识别范围内,由
21、于采用了列选通行传送显示代码的方法所以行译码电路上也加上了74L373锁存芯片。这就要求74LS164芯片的输出要满足锁存芯片的上下电平区分范围和频率要求。 3.3.2 锁存器74L373由于74LS164芯片不具有锁存功能,所以在74LS164进行八位数据的串并转换时,串行数据的第一位会从QA依次移位到QH,第二位数据会从QA依次移位到QG,依次类推在八位数据转换完成之前74LS164芯片的输出会出现一段时间的乱序输出,这一结果会通过驱动电路表现在显示屏上。结果就是显示屏无序导通闪烁,不能显示所需内容。因此在串并转换完成前就需要74LS164的输出口不与驱动电路导通。所以选择锁存器74LS3
22、73来完成这一功能。74LS373为八D锁存器(3S,锁存允许输入有回环特性)。373为三态输出的八D透明锁存器,共有54/74S373和54/74LS373两种线路结构形式当三态允许控制端OE为低电平时,O0O7为正常逻辑状态,可用来驱动负载或总线。当OE为高电平时,O0O7呈高阻态,即不驱动总线,也不为总线的负载,但锁存器内部的逻辑操作不受影响。当锁存允许端LE为高电平时,O随数据D而变。当LE为低电平时,O被锁存在已建立的数据电平。表3-2 74LS373工作参数表参数最小值额定值最大值单位电源电压4.7555.25V输入高电平电压2V输入低电平电压0.8V输出高电平电压2.6mA输出低
23、电平电压24mA由表与表比拟可以看出,74LS164的输出条件与74LS373的输入条件相匹配,理论上可以实现锁存器对译码器的数据锁存。3.4 驱动电路设计3.4.1 行驱动电路设计发光二极管,LED(Light Emitting Diodes),即是在在某些半导体材料的PN结中,注入的少数载流子与多数载流子复合时会把多余的能量以光的形式释放出来,从而把电能直接转换为光能。PN结加反向电压,少数载流子难以注入,故不发光。这种利用注入式电致发光原理制作的二极管叫发光二极管,通称LED。 行驱动采用PNP三极管8550接法如图3-4示:图3-4 行驱动器件8550的接法8550为PNP型三极管,内
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 51 单片机 LED 点阵 显示屏 系统 设计 实现
限制150内