驱动LED显示屏显示。在单片机和显示屏之间还需要增加以功能放大位目的的驱动电路[7]。
2.1.4 硬件设计方案
最终方案如图2-3所示,以PC机作为上位机存储和处理显示内容用串行通信的方式将显示内容和控制指令传输到单片机系统,单片机根据上位机传输来的内容和指令通过端口译码扩展后驱动4块8×8LED点阵模块构成的16×16的LED点阵显示屏。题目将以此方案为指导思想展开具体的硬件电路设计。
PC机串行通信单片机译码电路显示驱动电路16×16LED显示屏
图2-3 硬件设计方案
2.2 系统软件方案
软件的设计除了满足设计功能外还必须要满足易读写,方便下载和编译。设计目标和硬件总体结构确定的情况下,软件可以分为主程序,显示子程序,各种特效显示子程序,通信程序三个主要部分组成。具体结构如图2-4所示。
控制程序通信程序主程序特效显示程序静态显示程序
图2-4 软件功能结构框图
软件的编写需要借助软件编辑器和编译软件,编译完成后还需要下载到单片机中执行。编写软件之前得首先选择一种合适的语言以及配套的编辑器和编译软件。最后还要选择一款与所选单片机的下载器或下载软件来把编写的程序下载到单片
机中执行。
2.2.1 单片机编程语言
现在主要运用的单片机编程语言为汇编语言和C语言。两种语言相比较各有优点。
汇编语言(Assembly Language)是面向机器的程序设计语言,是一种功能很强的程序设计语言,也是利用计算机所有硬件特性并能直接控制硬件的语言。其具有执行速度快,占内存空间少等优点,但在编写复杂程序时具有明显的局限性,汇编语言依赖于具体的机型,不能通用,也不能在不同机型之间移植[8]。 2.2.2 上位机控制传输软件
其中系统采用现在已经非常普遍的PC机作为上位机,这样对该显示系统的硬件要求便降低了,增加了系统的通用性。上位机的作用是存储并处理显示内容,然后通过通信系统传送到控制系统驱动显示。
LED显示上位机的内容一般有实时显示和存储显示两种方法。实时显示及上位机屏幕上的内容同时显示在LED显示屏上,上位机上内容变化LED显示屏也跟着变化。存储显示是将显示内容处理过后存储在上位机中通过通信系统传输到显示屏显示[9]。两种显示方法相比较:实时显示屏幕能及时反应上位机内容的变化,显示的效果和内容的实时性好多用于新闻播报、实况转播用,但实时显示硬件开销大,对通信系统要求高,工艺复杂,成本高;存储显示虽实时性不高但硬件开销小,成本低廉。课题设计题目对显示的实时性要求较低且所设计的显示屏尺寸不大同时显示的内容不多,所以实时显示就没有必要。所以上位机选择存储显示的方法,控制LED显示屏的显示内容[10]。
第3章 系统硬件设计
3.1 硬件整体设计概述及功能分析
显示系统具体设计主要由上位机,通信系统,单片机系统,译码电路,显示驱
动电路和16×16的点阵屏六部分组成。具体工作流程为:上位PC机通过通信系统向单片机发送控制指令和显示代码内容,单片机接收后执行控制指令处理显示代码将显示内容通过IO口串行输出并且控制译码电路完成串并转换并行输出,最后由显示驱动电路进行电压和电流的处理以达到LED显示屏的显示电流,电压要求进而使显示屏显示内容[11]。
根据硬件的功能结构图选取合适器件,器件不但要求能实现所要求的功能还要能
兼容至整个系统之中。
该系统所要实现的功能和要求有以下几点:
(1)LED显示屏的面积必须满足至少显示一个汉字的标准。并且显示要清晰。 (2)驱动电路要能提供LED显示所需范围内的电压和电流要求。
(3)译码电路的高低电平的区分能力以及译码的输入输出频率必须满足单片机以
及驱动电路的要求。
(4)单片机要能接收上位机的指令和显示内容且能够处理后控制LED显示屏的显
示,并且端口驱动能力要足以驱动译码电路。执行频率要能达到扫描显示的最低要求。
(5)单片机由ISP下载线下载程序和供电,可不设立专用供电电源。
(6)由串口完成单片机与上位机的通信,通信速度和数据传输的可靠性要达到显
示要求。
3.2 控制单元设计
控制单元是整个显示系统的核心,该系统中采用51系列单片机为核心器件,用来和上位机通信处理上位机发送的控制指令和显示内容。并且直接输出数据通过译码电路控制LED显示屏的显示内容和显示状态。
在51系列单片机中选定一款合适的机型来作为控制单元的主控芯片。根据题目的要求该芯片必须要具有的就是方便的编程能力,因为在软件设计时方便的程序下载对程序的验证和编写非常有用。还有就是为了提高LED显示屏的扫描速度,单片机的执行速度要尽可能的快。根据这两点要求,选择美国ATMEL公司生产的AT89S51为控制单元的主控芯片。 3.2.1 AT89S51简介
AT89S51是美国ATMEL公司生产的低功耗,高性能CMOS8位单片机,片内含4k bytes的可系统编程的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准8051指令系统及引脚。它集Flash程序存储器既可在线编程(ISP)也可用传统方法进行编程及通用8位微处理器于单片芯片中,ATMEL公司的功能强大,低价位AT89S51单片机可提供许多高性价比的应用场合,可灵活应用于各种控制领域。
AT989S51具有以下特点: ·与MCS-51产品指令系统完全兼容
·4k字节在系统编程(ISP)Flash闪速存储器 ·1000次擦写周期
·4.0-5.5V的工作电压范围 ·全静态工作模式:0Hz-33MHz ·三级程序加密锁 ·128×8字节内部RAM ·32个可编程IO口线 ·2个16位定时计数器 ·6个中断源
·全双工串行UART通道 ·低功耗空闲和掉电模式 ·中断可从空闲模唤醒系统 ·看门狗(WDT)及双数据指针 ·掉电标识和快速编程特性
·灵活的在系统编程(ISP字节或页写模式)
AT89S51提供以下标准功能:4k字节Flash闪速存储器,128字节内部RAM,32个IO口线,看门狗(WDT),两个数据指针,两个16位定时计数器,一个5向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。同时,AT89S51可降至0Hz的静态逻辑操作,并支持两种软件可选的节电工作模式。空闲方式停止CPU的工作,但允许RAM,定时计数器,串行通信口及中断系统继续工作。掉电方式保存RAM中的内容,但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位。
3.2.2 控制系统设计
控制电路设计中采用的是单片机系统,该系统必须要是工作在一个最小系统(指单片机的可以的最小配置系统)。AT89S51的最小系统包括了外界时钟电路和复位电路,选定一定数量的IO口作为控制口控制外部的各种器件和数据的输出。根据功能选择一定的单片机端口添加外围的器件,具体电路如图3-2所示。
在该系统中,P1各口主要用作LED显示数据的控制输出。由于端口的驱动能力有限所以该端口外接了5K的上拉电阻来提高驱动能力。其中P1.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,EAVPP:外部访问允许。欲使CPU仅访问外部程序存储器(地址为0000H-FFFFH),EA端必须保持低电平(接地)。因为没有扩展外部程序存储器所以将EA置为高电平。
图3-2 控制部分电路图
由于P3口是特殊功能口,在该系统中基本是采用其第二功能。其第二功能和实际运用如表3-1所示:
表3-1 AT89S51P3口第二功能的应用