基于单片机的LED汉字点阵显示屏的设计毕业论文.docx

上传人:b****8 文档编号:28295891 上传时间:2023-07-10 格式:DOCX 页数:81 大小:1.72MB
下载 相关 举报
基于单片机的LED汉字点阵显示屏的设计毕业论文.docx_第1页
第1页 / 共81页
基于单片机的LED汉字点阵显示屏的设计毕业论文.docx_第2页
第2页 / 共81页
基于单片机的LED汉字点阵显示屏的设计毕业论文.docx_第3页
第3页 / 共81页
基于单片机的LED汉字点阵显示屏的设计毕业论文.docx_第4页
第4页 / 共81页
基于单片机的LED汉字点阵显示屏的设计毕业论文.docx_第5页
第5页 / 共81页
点击查看更多>>
下载资源
资源描述

基于单片机的LED汉字点阵显示屏的设计毕业论文.docx

《基于单片机的LED汉字点阵显示屏的设计毕业论文.docx》由会员分享,可在线阅读,更多相关《基于单片机的LED汉字点阵显示屏的设计毕业论文.docx(81页珍藏版)》请在冰豆网上搜索。

基于单片机的LED汉字点阵显示屏的设计毕业论文.docx

基于单片机的LED汉字点阵显示屏的设计毕业论文

仅供参考,支持原创,鄙视抄袭!

 

毕业设计

设计题目:

基于单片机的LED汉字点阵显示屏的设计

 

系别:

_________________________

班级:

_________________________

姓名:

_________________________

指导教师:

_________________________

 

2000年6月10日

 

基于单片机的LED汉字点阵显示屏的设计

摘要

本文介绍了LED汉字点阵显示屏的设计及实现过程。

通过Proteus仿真详细介绍了显示的原理和显示屏驱动电路的设计,仿真效果的实现为后续实际硬件电路的焊接和调试提供了理论基础。

该系统通过单片机来控制整个系统的运行,采用逐行扫描的方式实现汉字的显示,主要分为三大部分:

上位机软件部分、控制部分、LED点阵显示屏。

上位机软件部分主要通过VB软件编写一个字模转换发送的界面,实现上位机与下位机的通信;控制部分主芯片是STC89C52RC,是系统的核心,再利用C语言编程下载实现对单片机各引脚的控制;LED点阵显示屏包括驱动电路和显示屏,74LS138译码器输出控制显示屏的行扫描,74HC595(八位并行输出移位寄存器)控制显示屏的列,由于人眼视觉的滞留现象,行列驱动电路通过动态控制便实现了汉字的显示。

基于单片机的LED点阵显示屏与普通的平面静态广告相比,可以动态显示信息,可以随时更换显示信息,与视频广告相比,造价低,信息显示地点随意性高。

因此,无论商业广告,还是一般的信息公告显示,LED点阵显示屏都有着广泛的应用。

关键词:

单片机LED点阵显示屏Proteus仿真显示屏驱动电路

 

DesignofLEDdotmatrixdisplayChinesecharactersBasedonMCU

Abstract

ThisarticleintroducesthedesignandimplementationofthedotmatrixdisplayofLEDChinesecharacters.ItintroducestheprincipleofdisplayandthedesignofdisplaydrivecircuitthroughProteussimulation.Theresultsofsimulationprovidestheorybasisfortheweldinganddebuggingoftheactualhardwarecircuit.

ItcontrolstheoperationofthewholesystemthroughtheMCU,itdisplaysChineseinformationbyprogressivescan,itmainlydividedintothreesections:

PCsoftwareparts,controlpart,displayscreenofLEDdotmatrix.PCsoftwarepartsmainlyarewritedthroughVBsoftware,itwritesainterfaceofthefontconversionandsending,soastoachievePCandMCUcommunications;ThemainchipofthecontrolpartisSTC89C52RC,itisthecoreofthesystem,andthendownloadedtheCprogramminglanguagetoMCUtocontrolitspins;ThedisplayscreenofLEDdotmatrixincludesdrivecircuitanddisplayscreen,74LS138decodercontrolsthelinescanning,74HC595(shiftregisterthatoutputseightparalleldata)controlsthecolumnscanning.Becauseofhumanvisualretentionphenomenon,drivingcircuitachievesthedisplayoftheChinesecharactersthroughtheranksofthedynamiccontrol.

ComparedwithLEDdotmatrixdisplayofChinesecharactersbasedonMCU,itcandisplaydynamicinformation,changeinformationatanytime,comparedwithvideoadvertising,lowcost,arbitraryoftheinformationdisplaysiteishigh.Sowhethercommercialadvertisingorgeneralinformationannouncement,thedisplayscreenofLEDisappliedwildly.

Keywords:

MCU;displayscreenofLEDdotmatrix;Proteussimulation;drivecircuitofdisplayscreen

 

1引言

1.1课题背景

LED汉字点阵显示屏作为一种信息传递方式,主要应用在需要显示内容较少的公共场所,基于单片机的LED汉字点阵显示成本低,效果好,可以满足大部分用户需求,因此被广泛应用。

LED汉字点阵显示屏是由发光二极管排列组成的一种显示器件,通过控制半导体发光二极管的显示方式来显示汉字,具有耗电少、使用寿命长、成本低、亮度高、视角大、可视距离远等特点。

近年来LED汉字点阵显示屏在银行、邮电、税务、机场、车站、证券市场及医院、海关、体育场所等需要进行公告、宣传的场合得到了广泛的应用。

目前LED汉字点阵屏作为信息传播的一种重要手段,已经成为城市信息现代化的标志之一。

1.2系统功能概述

本系统设计的目的是显示汉字信息,用16块8×8的点阵屏组成16×64的四字点阵显示屏,通过STC89C52单片机软件扫描来控制需要点亮的点阵,从而显示相应的汉字。

本系统一屏可以显示4个汉字,屏幕显示内容可以通过上位机(PC)向下位机传送的信息做出改变。

1.2.1总体设计框架

本系统需要6大部分来实现:

上位机(PC)、串行通信接收器、单片机、外扩存储器、LED显示屏行列驱动电路和LED点阵显示屏。

系统结构如图1-1所示。

图1-1汉字点阵显示屏系统方案

1.2.2上位机(PC)

上位机部分用VB软件编写,用于实现上位机向下位机数据传输,主要包括汉字显示输入窗口、字模代码生成显示窗口、字模生成按键、发送按键等。

上位机发送界面如图1-2所示。

图1-2上位机发送界面

1.2.3串行通信接收器

串行通信接收器部分主要由MAX232芯片及外围电路组成,用于程序的下载及数据的传输。

如图1-3控制部分电路的标注所示。

图1-3控制部分电路

1.2.4单片机

单片机部分是整个系统的核心,即主控部分,控制单片机的所有外围电路,协调外围电路部分的工作,从而实现预期的效果。

如图1-3中标注所示。

1.2.5外扩存储器

外扩存储器部分存储上位机(PC)传到下位机(单片机)的数据,并且在显示点阵汉字时,将数据发送到LED点阵显示屏驱动电路。

由于STC89C52仅有512字节的RAM,因此加了外扩存储器,使用的是EEPROM24C32。

如图1-3的标注。

1.2.6LED显示屏行列驱动电路

LED显示屏行列驱动电路分为行驱动和列驱动,行驱动不间断逐行扫描,列驱动控制需要点亮的点,从而显示出预期的汉字效果。

如图1-4的标注所示。

图1-4LED点阵显示屏及驱动电路

1.2.7LED点阵显示屏

LED点阵显示屏部分由16块8×8的LED点阵显示模块组成,一屏可显示四个汉字。

每块有18个引脚,8行8列和2个固定脚。

如图1-4的标注所示。

 

2Proteus模拟仿真

2.1Proteus介绍

单片机是现代电子技术的新兴领域,它的出现极大地推动了电子工业的发展,已成为电子系统设计中最为普遍的应用手段。

近年来单片机技术得到了突飞猛进的发展,各种单片机开发工具层出不穷。

虚拟仿真就是近年来兴起的一种新型应用技术,采用虚拟仿真技术,在原理图设计阶段就可以对单片机应用设计进行评估,验证所设计电路是否达到所要求的技术指标,还可以通过改变元器件参数使整个电路性能达到最优化。

这样就无须多次购买元器件及制作印刷电路板,节省了设计时间与经费,提高了设计效率与质量。

英国Labcenter公司推出的Proteus软件是一款极好的单片机应用开发平台,它以其特有的虚拟仿真技术很好地解决了单片机及其外围电路的设计和协同仿真问题,可以在没有单片机实际硬件的条件下,利用PC以虚拟仿真方式实现单片机系统的软、硬件同步仿真调试,使单片机应用系统设计变得简单容易。

Proteus软件涵盖了PIC、AVR、MCS8051、68HC11、ARM等微处理器模型,以及多种常用电子元器件,包括74系列、CMOS4000系列集成电路、A/D和D/A转换器、键盘、LCD显示器、LED显示器,还提供示波器、逻辑分析仪、通信终端、电压/电流表、I2C/SPI终端等各种虚拟仪表,这些都可以直接用于仿真设计,极大地提高了设计效率和设计水平。

Proteus软件已有20多年的历史,在国外应用较为普遍,尤其在教育界的口碑极佳。

近年来Proteus软件被引入国内,在多所高等工科院校中得到成功应用。

在单片机教学中采用Proteus软件,使单片机的学习过程变得直观形象,可以直接在基于原理图的虚拟模型上进行编程,并实现源码级的程序仿真调试,如有显示及输出,还能看到程序运行后的输出效果,配合各种虚拟仪表来展现整个单片机系统的运行过程,很好地解决了长期以来困扰单片机教学过程中软件和硬件无法很好结合的难题。

采用PC进行虚拟仿真实验要比采用单片机实验箱更为有效,因为用户可以根据需要随时对原理电路图进行修改,并立即获得仿真结果。

由于在PC上修改原理电路图要比在实验箱上修改硬件电路容易得多,而且还可以根据设计要求采用不同元器件,或者修改元器件参数以获得不同输出结果,在成功进行虚拟仿真并获得期望结果的条件下,再制作实际硬件进行在线调试,可以获得事半功倍的效果。

学生普遍反映,在Proteus软件平台上学习单片机知识,比以往单纯学习书本知识更易于接受,以原理图虚拟模型进行程序仿真调试,更易于提高单片机编程能力,还可以通过绘制和修改原理电路图增加很多实践经验。

Proteus组合了高级原理布图、混合模式SPICE仿真、PCB设计以及自动布线来实现一个完整的电子设计系统。

此系统受益于15年来的持续开发,被《电子世界》在其对PCB设计系统的比较文章中评为最好产品—“TheRoutetoPCBCAD”。

Proteus产品系列也包含了我们革命性的VSM技术,用户可以对基于微控制器的设计连同所有的周围电子器件一起仿真。

用户甚至可以实时采用诸如LED/LCD、键盘、RS232终端等动态外设模型来对设计进行交互仿真。

其功能模块:

—个易用而又功能强大的ISIS原理布图工具;PROSPICE混合模型SPICE仿真;ARESPCB设计。

PROSPICE仿真器的一个扩展ProteusVSM:

便于包括所有相关的器件的基于微处理器设计的协同仿真。

此外,还可以结合微控制器软件使用动态的键盘、开关、按钮、LED,甚至LCD显示CPU模型。

支持许多通用的微控制器,如PIC、AVR、HC11以及8051;交互的装置模型包括:

LED和LCD显示,RS232终端,通用键盘;强大的调试工具:

包括寄存器和存储器,断点和单步模式;IARC-SPY和KeiluVision2等开发工具的源层调试;应用特殊模型的DLL界面提供有关元件库的全部文件。

2.2KeiluVision3介绍

KeilC51是美国KeilSoftware公司出品的51系列兼容单片机C语言软件开发系统,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。

Keil提供了包括C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境(uVision)将这些部分组合在一起。

运行Keil软件需要WIN98、NT、WIN2000、WINXP等操作系统。

如果你使用C语言编程,那么Keil几乎就是你的不二之选,即使不使用C语言而仅用汇编语言编程,其方便易用的集成环境、强大的软件仿真调试工具也会令你事半功倍。

1.系统概述

KeilC51软件提供丰富的库函数和功能强大的集成开发调试工具,全Windows界面。

另外重要的一点,只要看一下编译后生成的汇编代码,就能体会到KeilC51生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。

在开发大型软件时更能体现高级语言的优势。

2.KeilC51单片机软件开发系统的整体结构

C51工具包的整体结构,uVision与Ishell分别是C51forWindows和forDos的集成开发环境(IDE),可以完成编辑、编译、连接、调试、仿真等整个开发流程。

开发人员可用IDE本身或其它编辑器编辑C或汇编源文件。

然后分别由C51及C51编译器编译生成目标文件(.OBJ)。

目标文件可由LIB51创建生成库文件,也可以与库文件一起经L51连接定位生成绝对目标文件(ABS)。

ABS文件由OH51转换成标准的Hex文件,以供调试器dScope51或tScope51使用进行源代码级调试,也可由仿真器使用直接对目标板进行调试,也可以直接写入程序存贮器如EPROM中。

使用独立的Keil仿真器时,注意事项:

(1)仿真器标配11.0592MHz的晶振,但用户可以在仿真器上的晶振插孔中换插其他频率的晶振。

(2)仿真器上的复位按钮只复位仿真芯片,不复位目标系统。

(3)仿真芯片的31脚(/EA)已接至高电平,所以仿真时只能使用片内ROM,不能使用片外ROM;但仿真器外引插针中的31脚并不与仿真芯片的31脚相连,故该仿真器仍可插入到扩展有外部ROM(其CPU的/EA引脚接至低电平)的目标系统中使用。

2.3KeiluVision3与Proteus的连接

KeiluVision3和Proteus的连接需要分别设置这两个软件,设置好后必须把Keil工程的所有文件和Proteus工程的所有文件放在一个文件夹里面。

打开Keil和Proteus项目,点击Debug—start/stopdebugsession就开始进入联调,点击单步运行,这时可以看到原本没有动过的Protues现在开始根据你运行到的程序位置而显示不同的现象,说明联调已经成功了。

本系统的仿真效果如图2-1所示,显示内容为“”。

图2-1电路仿真效果图

2.4硬件仿真电路

2.4.1下位机汉字显示的仿真

下位机的仿真电路,没有涉及到上位机向下位机传输数据的部分,可以将字模信息直接放到程序中,烧录到单片机中。

进行这部分仿真的目的是确认汉字的显示原理,图2-2是这部分的硬件仿真电路图。

图2-2部分硬件仿真图

2.4.2EEPROM外扩存储器读写的仿真

上位机向模拟下位机传送数据,并存入24C32,然后通过P2口连接的发光二极管显示出这个字节的数据,图2-3为电路效果图,写入一个8字节数据,然后将其读出,由P2口输出,八位二进制数据为“01100110”。

图2-324C32读写仿真图

2.4.3下位机接收上位机传输数据的仿真

下位机接收上位机传送的数据必定是在同一台电脑上完成的,进行的类似内部信息的传送,因此,需要在电脑上安装虚拟串口,让Proteus仿真时识别的是虚拟串口,图2-4是虚拟串口仿真软件,此图显示的COM1与COM2已经连接上,即图2-5电脑的设备管理器所示。

图2-4虚拟串口仿真软件界面

图2-5设备管理器串口显示图

Proteus仿真软件提供了一个数据接收的显示仪器,通过它可以观察到上位机下传的数据信息。

只需将单片机的数据线(RXD)与该仿真仪器的RXD端相连即可。

图2-6是本部分的仿真电路图。

 

图2-6下位机接收数据仿真电路图

2.5调试过程

1.问题:

电路按原理图连接完整,此时该系统的行驱动部分用到了TIP127大功率放大管,放大电流,以便同时驱动8块8×8LED点阵屏的行。

而在仿真时TIP127的输出端(集电极)显示却为灰色。

解决方法:

经过查阅,Proteus中的输入输出端显示的状态用红色、蓝色、灰色、黄色四种颜色来表示,红色代表高电平,蓝色代表低电平,灰色代表没有电平或者不稳定,黄色代表短路。

因此初步判定TIP127的输出不稳定,使电路处于暂停状态,用Proteus中的仿真数字电压表测74LS138译码器的输出端电压为5V,电流不用测,便可推断仿真电路中译码器的输出电流可以驱动足够多的LED点阵屏,不用再次放大。

去掉电路中的TIP127,将74LS138译码器的输出端与LED点阵屏直接相连,运行电路,出现了预期的效果。

2.问题:

Proteus中的默认电源为VCC=5V,GND=0,当我们要使用其它电压值时该如何设置?

解决方法:

点击菜单栏的Design下拉菜单的ConfigurePowerRails…选项,打开后如图2-7~2-9所示。

图2-7

注意:

Name可以随意改变,Voltage值才是电压值。

图2-8

图2-9

3.问题:

Proteus中电解电容正负极的判断

解决方法:

通用电解电容(CAP-ELEC)的正负极,如图2-10所示。

图2-10

当不知道元件的正负时,可以通过以下方法来分辨出元件的正负极,如图2-11所示。

(1)把元件放到工作区中,右击元件,选择Decompose。

(2)双击元件的一个引脚,在PinName中可以看出正负极了。

 

图2-11

4.问题:

下载仿真时,文件夹内会生成一个PWI格式的文件,一旦有了这个文件,下次仿真时,Proteus的仿真电路打不开,甚至在仿真阶段会出现软件崩溃。

解决方法:

由于在第一次仿真后就发现生成了PWI格式的文件,猜测应该是它的问题,删除后,可以正常打开仿真电路,但仍不知道这个是什么文件,经过上网查阅有人说PWI的文件与crack序列号有关,通过hex文件,查看是关于sch的一些设置参数和图纸的size。

 

3硬件部分

3.1单片机简介

单片机诞生于20世纪70年代末,经历了SCM、MCU、SoC三大阶段。

单片机作为微型计算机的一个重要分支,应用面很广,发展很快。

自单片机诞生至今,已发展为上百种系列的近千个机种。

目前,单片机正朝着高性能和多品种方向发展趋势将是进一步向着CMOS化、低功耗、小体积、大容量、高性能、低价格和外围电路内装化等几个方面发展。

3.1.1单片机的发展及应用

单片机是为了满足工业控制的需要而诞生的,是自动控制系统的核心,因而主要应用于工业控制、智能仪器仪表、家用电器中。

1975年美国德克斯仪器公司研制成第一片单片机至今,单片机有了飞速的发展,它体积小,个性突出,价格低的特点极大增强它在各领域应用范围。

如果将8位单片机为起点,它的发展过程可分为以下几个阶段:

第一阶段(1976-1978):

单片机的探索阶段。

以Intel公司的MCS–48为代表。

MCS–48的推出是在工控领域的探索,参与这一探索的公司还有Motorola、Zilog等,都取得了满意的效果。

这就是SCM的诞生年代,“单机片”一词即由此而来。

第二阶段(1978-1982):

单片机的完善阶段。

Intel公司在MCS–48基础上推出了完善的、典型的单片机系列MCS–51。

它在以下几个方面奠定了典型的通用总线型单片机体系结构。

(1)完善的外部总线。

MCS-51设置了经典的8位单片机的总线结构,包括8位数据总线、16位地址总线、控制总线及具有很多机通信功能的串行通信接口。

(2)CPU外围功能单元的集中管理模式。

(3)体现工控特性的位地址空间及位操作方式。

(4)指令系统趋于丰富和完善,并且增加了许多突出控制功能的指令。

第三阶段(1982-1990):

8位单片机的巩固发展及16位单片机的推出阶段,也是单片机向微控制器发展的阶段。

Intel公司推出的MCS–96系列单片机,将一些用于测控系统的模数转换器、程序运行监视器、脉宽调制器等纳入片中,体现了单片机的微控制器特征。

随着MCS–51系列的广应用,许多电气厂商竞相使用80C51为内核,将许多测控系统中使用的电路技术、接口技术、多通道A/D转换部件、可靠性技术等应用到单片机中,增强了外围电路路功能,强化了智能控制的特征。

第四阶段(1990年以后):

微控制器的全面发展,出现了高速、大寻址范围、强运算能力的8位、16位、32位通用型单片机,以及小型廉价的专用型单片机。

3.1.2单片机的应用

目前单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。

导弹的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种智能IC卡,民用豪华轿车的安全保障系统,录像机、摄像机、全自动洗衣机的控制,以及程控玩具、电子宠物等等,这些都离不开单片机。

更不用说自动控制领域的机器人、智能仪表、医疗器械以及各种智能机械了。

因此,单片机的学习、开发与应用将造就一批计算机应用与智能化控制的科学家、工程师。

3.1.3单片机的开发平台

单片机的应用首先要考虑的是它的开发平台,也即我们常说的开发环境。

由于Intel公司的MCS-51系列较早进入我国,事实上已形成了工业标准,MCS-51的单片机应用场合随处可见,它的软件资源相当丰富,硬件的支持也很完善,价廉物美的开发器材随处可取。

国内的大部分单片机开发工程技术人员还是普遍使用汇编语言编写程序。

汇编语言有其缺陷性,但它编写的代码最小,最直接,效率也最高,所以还深得用户接受。

但是,它有着固有的缺陷,必须十分了解所用单片机的硬件结构,程序编写困难,代码难以理解,不易于识读,难于移植,排错困难,编写程序花的时间相当多,调试不便等等。

随着国内单片机开发环境的完善,开发技术水平不断提高,现在已有相当的开发器材支持高级语言的使用和调试,为单片机的开发应用提供了更好的物质条件。

高级语言(如C语言)具有开发周期短,易于识读,容易移植,也便于初学着掌握。

诚然,高级语言也有它不足之处,就是高级语言产生的代码过长,对于早期单片机不大的ROM来说,可是非常突出的矛盾,另外它的运行速度太慢,对于本来主频不高的单片机是致命的弱点。

但现在这方面的研制工作也取得了较大的进展,高级语言的弱点也已被较大的克服,像MCS-51上的C语言的代码长度,如果未加上人工优化条件,也可做到最优汇编程序水平的120%~150%,这也相当可观了。

可以说相当于中等汇编程序员的水平。

C语言是可以在高

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高中教育 > 高考

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1