基于51单片机的LED点阵显示屏PROUTES 下载本文

本科生毕业论文

显示驱动电路PC机串行通信单片机译码电路16×16LED显示屏

图2-3 硬件设计方案

2.2 系统软件方案

软件的设计除了满足设计功能外还必须要满足易读写,方便下载和编译。设计目标和硬件总体结构确定的情况下,软件可以分为主程序,显示子程序,各种特效显示子程序,通信程序三个主要部分组成。具体结构如图2-4所示。

控制程序通信程序主程序特效显示程序静态显示程序

图2-4 软件功能结构框图

软件的编写需要借助软件编辑器和编译软件,编译完成后还需要下载到单片机中执行。编写软件之前得首先选择一种合适的语言以及配套的编辑器和编译软件。最后还要选择一款与所选单片机的下载器或下载软件来把编写的程序下载到单片机中执行。

2.2.1 单片机编程语言

现在主要运用的单片机编程语言为汇编语言和C语言。两种语言相比较各有优点。

汇编语言(Assembly Language)是面向机器的程序设计语言,是一种功能很强的程序设计语言,也是利用计算机所有硬件特性并能直接控制硬件的语言。其具有执行速度快,占内存空间少等优点,但在编写复杂程序时具有明显的局限性,汇编语

5

本科生毕业论文

言依赖于具体的机型,不能通用,也不能在不同机型之间移植[8]。

C语言是一种源于编写UNIX操作系统的语言,它是一种结构化语言,可产生压缩代码。C语言结构是以括号{ }而不是子和特殊符号的语言。C可以进行许多机器级函数控制而不用汇编语言。与汇编相比,有如下优点:对单片机的指令系统不要求了解,仅要求对51的存储器结构有初步了解;寄存器分配、不同存储器的寻址及数据类型等细节可由编译器管理;程序有规范的结构,可分为不同的函数。这种方式可使程序结构化;将可变的选择与特殊操作组合在一起的能力,改善了程序的可读性;编程及程序调试时间显著缩短,从而提高效率;提供的库包含许多标准子程序,具有较强的数据处理能力;已编好程序可容易的植入新程序,因为它具有方便的模块化编程技术。C语言作为一种非常方便的语言而得到广泛的支持,C语言程序本身并不依赖于机器硬件系统,基本上不做修改就可根据单片机的不同较快地移植过来。

基于以上理由决定采用C语言为该显示系统的编程语言。 2.2.2 系统软件编译器介绍

C语言编写的程序并不能被单片机直接执行还需要编译为单片机可执行的机器语言。因此在系统软件设计中,编译器必不可少。支持MCS-51用C语言编程的编译器主要有两种:Franklin C51编译器和KEILC51编译器。目前在单片机开发中普遍都是使用KEIL C51来进行编译。

因此软件设计最终方案为采用C语言为程序语言,KELC为编译工具按照控制、通信、显示等几个功能模块来编写程序。 2.2.3 上位机控制传输软件

其中系统采用现在已经非常普遍的PC机作为上位机,这样对该显示系统的硬件要求便降低了,增加了系统的通用性。上位机的作用是存储并处理显示内容,然后通过通信系统传送到控制系统驱动显示。

LED显示上位机的内容一般有实时显示和存储显示两种方法。实时显示及上位机屏幕上的内容同时显示在LED显示屏上,上位机上内容变化LED显示屏也跟着变化。存储显示是将显示内容处理过后存储在上位机中通过通信系统传输到显示屏显示[9]。两种显示方法相比较:实时显示屏幕能及时反应上位机内容的变化,显示的效果和内容的实时性好多用于新闻播报、实况转播用,但实时显示硬件开销大,

6

本科生毕业论文

对通信系统要求高,工艺复杂,成本高;存储显示虽实时性不高但硬件开销小,成本低廉。课题设计题目对显示的实时性要求较低且所设计的显示屏尺寸不大同时显示的内容不多,所以实时显示就没有必要。所以上位机选择存储显示的方法,控制LED显示屏的显示内容[10]。

7

本科生毕业论文

第3章 系统硬件设计

3.1 硬件整体设计概述及功能分析

显示系统具体设计主要由上位机,通信系统,单片机系统,译码电路,显示驱

动电路和16×16的点阵屏六部分组成。具体工作流程为:上位PC机通过通信系统向单片机发送控制指令和显示代码内容,单片机接收后执行控制指令处理显示代码将显示内容通过I/O口串行输出并且控制译码电路完成串并转换并行输出,最后由显示驱动电路进行电压和电流的处理以达到LED显示屏的显示电流,电压要求进而使显示屏显示内容[11]。

根据硬件的功能结构图选取合适器件,器件不但要求能实现所要求的功能还要能兼容至整个系统之中。通过查阅资料和对比最终的硬件原理图如图3-1所示。

电源74LS16474LS3738550三极管LED点阵模块阳极74LS164AT89S5174LS3734块8×8点阵模块构成的16×16LED点阵屏74LS164ULN2803MAX232LED点阵模块阴极74LS164PC机ULN2803

图3-1 硬件原理图

该系统所要实现的功能和要求有以下几点:

(1)LED显示屏的面积必须满足至少显示一个汉字的标准。并且显示要清晰。 (2)驱动电路要能提供LED显示所需范围内的电压和电流要求。

(3)译码电路的高低电平的区分能力以及译码的输入输出频率必须满足单片机以

及驱动电路的要求。

(4)单片机要能接收上位机的指令和显示内容且能够处理后控制LED显示屏的显

8