本科生毕业论文1摘要:本文介绍了一款以单片机AT89S51为控制器的LED点阵显示屏系统的设计。该系统可实现中英文字符的显示和动态特效显示。并且可以通过级连的方式来扩大显示屏幕的尺寸以达到增加显示内容的目的。系统采用PC机作为上位机,上位机向单片机发送控制命令和上位机所存储的显示代码,AT89S51单片机接收并处理PC机的控制命令以及显示代码,由显示驱动模块驱动一个16×16分辨率的LED点阵显示屏的扫描显示。PC机与单片机之间的通信采用RS—232C通信标准来实现。所选用的AT89S51单片机具有价格低廉程序写入方便的特点使得整个系统方便维护和检修。除此之外,该系统只占用了单片机少量的I/O口和内存,为系统留下了功能扩展的空间。关键字:AT89S51;LED点阵显示;串行通对设计题目的特点,作者对论文的内容和结构将做如下安排:(1)初步方案的论证和选择搜集题目的有关资料,并参照目前通用的设计思想和设计方法拟定几套设计方案进行分析比较。最终选定了以PC机为上位机,单片机为核心控制器件,外加译码电路和驱动电路的设计方案。(2)方案实现以设计方案为指导思想选择合适的器件来实现这一思想,选择器件时要从功能和电气特性两方面来选择和论证。经过对比选择选定AT89S51单片机为核心控制器件,由串并转换器74LS164和锁存器74LS373为译码电路器件,三极管8550和ULN2803为驱动电路器件。论文列出了详细的器件参数和在系统中的连接使用方法。(3)软件编写根据硬件特点和设计要求,软件选用C语言编写。程序按功能分为静态显示、动态显示、通信等几个功能上相对独立的模块。然后按照所划分的模块逐个编写和调试,最后将独立的模块整合起来。(4)验证与测试调试分为硬件调试、软件调试和系统联合调试几步来进行。在硬件调试中发现有单片机端口驱动能力不足、驱动电路工作不稳定等问题。在软件调试中出现程序本科生毕业论文2整合工作不协调等问题。通过分析,查找找出了问题原因并设法将其解决。(5)结论设计完成后对设计中所遇到的问题、经验教训、以及自己的想法进行总结。第2章方案论证与选择2.1系统硬件方案大多数的LED显示屏都在户外,所以对硬件的质量要求非常的高。为方便检修和维护硬件电路设计时常常采用模块化的设计方法。硬件的设计采用模块化设计,既要满足模块本身功能又要能够和整个系统兼容。如图2-1所示,根据显示系统的功能特点确定系统硬件由显示屏部分,控制部分,通信系统及上位机四部分组成。上位机通过通信部分向控制部分发送控制指令和显示内容代码,控制部分执行显示指令并将显示代码处理后控制显示部分的显示内容和显示方式[3]。通信部分控制部分显示部分上位机图2-1系统硬件组成框图2.1.1显示屏主控制器控制部分是整个系统的核心部分,其功能为与上位机通信接收上位机发送的数据和控制指令处理过后控制显示部分显示内容。其常用的电子设计方法有单片机、DSP、及EDA技术。几种设计方法比较各有其特点:(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,这在便携式产品中大有用武之地[4]。本科生毕业论文3(2)DSP芯片DSP又叫数字信号处理器。顾名思义,DSP主要用于数字信号处理领域,非常适合高密度,重复运算及大数据容量的信号处理。现在已经广泛应用于通信、便携式计算机和便携式仪表、雷达、图像、航空、家用电器、医疗设备等领域,DSP具有修正的哈佛结构,多总线技术以及流水线结构。将程序与数据存储器分开,使用多总线,取指令和取数据同时进行,以及流水线技术,这使得速度有了较大的提高。DSP区别于一般微处理器的另一重要标志是硬件乘法器以及特殊指令,一般微处理器用软件实现乘法,逐条执行指令,速度慢。而DSP依靠硬件乘法器单周期完成乘法运算,而且还具有专门的信号处理指令,如TM320系列的FIRS,LMS,MACD指令等[5]。(3)EDAEDA(即ElectronicDesignAutomation)即电子设计自动化,它是以计算机为工具,在EDA软件平台上,对用硬件描述语言HDL完成的设计文件自动地逻辑编译、逻辑化简、逻辑分割、逻辑综合及优化、逻辑布局布线、逻辑仿真,直至对于特定目标芯片进行适配编译、逻辑影射和编程下载等。设计者只需用HDL语言完成系统功能的描述,借助EDA工具就可得到设计结果,将编译后的代码下载到目标芯片就可在硬件上实现。由于FPGA/CPLD可以通过软件编程对该硬件的结构和工作方式进行重构,修改软件程序就相当于改变了硬件,软件编写可以采用自顶向下的设计方案,而且可以多个人分工并行工作这样便缩短了开发周期和上市时间,有利于在激烈的市场竞争中抢占先机。而且MCU和DSP都是通过串行执行指令来实现特定功能,不可避免低速,而FPGA/CPLD则可实现硬件上的并行工作,在实时测控和高速应用领域前景广阔;另一方面,FPGA/CPLP器件在功能开发上是软件实现的,但物理机制却和纯硬件电路一样,十分可靠。三种设计方式相比较各有优点且都能够实现控制功能,但单片机的技术门槛较低开发成本也较低非常适合初学者进行学习和锻炼使用。现在市场上常用的单片机主要有MCS-51、AVR、ARM、PIC等。其中应用最广泛的单片机首推Intel的51系列,由于产品硬件结构合理,指令系统规范,加之生产历史“悠久”,有先入为主的优势常作为单片机学习的教材。且51系列的I/O脚的设置和使用非常简单,当该脚作输入脚使用时,只须将该脚设置为高电平(复位时,各I/O口均置高电平)。当该脚作输出脚使用时,则为高电平或低电平均可。所以在控制部分方案的选择中选本科生毕业论文4定51系列单片机作为控制部分的核心器件。2.1.2通信系统通信部分要满足的设计要求就是稳定、快速、简单易实现。因为通常情况下显示屏和上位机的距离不会很远,所以通信距离的要求不是很高。计算机数据通信主要采用并行通信和串行通信两种方式。(1)并行通信并行通信时数据的各个位同时传送,可以字或字节为单位并行进行。并行通信速度快,但用的通信线多、成本高,故不宜进行远距离通信。(2)串行通信串行通信数据是一位一位顺序传送,只用很少几根通信线,串行传送的速度低,但传送的距离长,因此串行适用于长距离而速度要求不高的场合。在串行发送时,数据是一位一位按顺序进行的,而计算机内部的数据是并行的。因此,当计算机向外发送数据时,必须将并行数据转换为串行数据再发送。反之,又必须将串行数据转换为并行数据输入计算机中。这种转换即可以用硬件实现也可以用软件实现。单由软件实现会增加CPU负担,降低其利用率,故目前常采用硬件实现。通用的通用异步接收/发送器,简称UART(UniversalAsynchromousReceeiver/Trabsnitter)是完成这一功能的硬件电路。在单片机芯片中,UART已经集成在其中,作为其组成部分,构成一个串行口[6]。综上所述,题目设计已经选定了单片机为开发方式而单片机的UART已经集成在单片机内,所以通信系统选择串行通信为通信方式。2.1.3LED点阵显示屏显示部分包括了一块至少可以显示一个汉字的显示屏,以及驱动该显示屏的驱动电路。由于单片机的I/O口有限要不能直接用I/O口来驱动LED显示屏,所以需要对单片机IO口进行扩展增加单片机并行输出的能力。LED显示屏是由一个一个的发光二极管点阵构成的,要构成大屏幕的LED显示屏就需要多个发光二极管。构成LED屏幕的方法有两种,一是由单个的发光二极管逐点连接起来,如图2-2所示;二是选用一些由单个发光二极管构成的LED点阵子模块构成大的LED点阵模块。目前市场上普遍采用的点阵模块有8×8、16×16几种;这两种屏幕构成方法各有有缺点,单个发光二极管构成显示屏优点在于当单本科生毕业论文5个的发光二极管出现问题时只需更换一个二极管即可,检修的成本较低,缺点在于连接线路复杂;而点阵模块构成的方法却正好与之相反,模块构成省约了大量的连线,不过当一个LED出现问题时同在一个模块的所有LED都必须被更换。这就加大了维修的成本。两种方法相比较,决定采取模块构成的方法来制作一个LED点阵显示屏。为了避免模块的缺点,选择点阵数较小的模块来减小出现这一问题的风险。所以构建一个16×16的LED点阵屏选用四块8×8点阵模块。图2-2LED点阵图一个16×16的LED显示屏行和列各有16支引脚,不能单靠51单片机的端口驱动所以必须要对单片机的端口个数进行扩展。经常采用的端口扩展方法是用串并转换芯片进行译码。常用的串并转换芯片有74LS154(4线-16线译码器)、74LS164(8位串并转换器)、74HC595等。51系列单片机端口低电平时,吸入电流可达20mA,具有一定的驱动能力;而为高电平时,输出电流仅数十μA甚至更小(电流实际上是由脚的上拉电流形成的),基本上没有驱动能力,所以单片机不能直接驱动LED显示屏显示。在单片机和显示屏之间还需要增加以功能放大位目的的驱动电路[7]。本科生毕业论文62.1.4硬件设计方案最终方案如图2-3所示,以PC机作为上位机存储和处理显示内容用串行通信的方式将显示内容和控制指令传输到单片机系统,单片机根据上位机传输来的内容和指令通过端口译码扩展后驱动4块8×8LED点阵模块构成的16×16的LED点阵显示屏。题目将以此方案为指导思想展开具体的硬件电路设计。单片机译码电路16×16LED显示屏显示驱动电路串行通信PC机图2-3硬件设计方案2.2系统软件方案软件的设计除了满足设计功能外还必须要满足易读写,方便下载和编译。设计目标和硬件总体结构确定的情况下,软件可以分为主程序,显示子程序,各种特效显示子程序,通信程序三个主要部分组成。具体结构如图2-4所示。通信程序控制程序主程序静态显示程序特效显示程序图2-4软件功能结构框图软件的编写需要借助软件编辑器和编译软件,编译完成后还需要下载到单片机中执行。编写软件之前得首先选择一种合适的语言以及配套的编辑器和编译软件。最后还要选择一款与所选单片机的下载器或下载软件来把编写的程序下载到单片机中执行。本科生毕业论文7第3章系统硬件设计3.1硬件整体设计概述及功能分析显示系统具体设计主要由上位机,通信系统,单片机系统,译码电路,显示驱动电路和16×16的点阵屏六部分组成。具体工作流程为:上位PC机通过通信系统向单片机发送控制指令和显示代码内容,单片机接收后执行控制指令处理显示代码将显示内容通过I/O口串行输出并且控制译码电路完成串并转换并行输出,最后由显示驱动电路进行电压和电流的处理以达到LED显示屏的显示电流,电压要求进而使显示屏显示内容[11]。根据硬件的功能结构图选取合适器件,器件不但要求能实现所要求的功能还要能兼容至整个系统之中。通过查阅资料和对比最终的硬件原理图如图3-1所示。74LS373PC机74LS164AT89S51ULN2803MAX23274LS16474LS16474LS164ULN280374LS3734块8×8点阵模块构成的16×16LED点阵屏LED点阵模块阳极LED点阵模块阴极8550三极管电源图3-1硬件原理图3.2.2控制系统设计控制电路设计中采用的是单片机系统,该系统必须要是工作在一个最小系统(指单片机的可以的最小配置系统)。AT89S51的最小系统包括了外界时钟电路和复位电路,选定一定数量的IO口作为控制口控制外部的各种器件和数据的输出。本科生毕业论文8根据功能选择一定的单片机端口添加外围的器件,具体电路如图3-2所