版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
PAGEPAGE51绪论1.1引言在20世纪六十年代结束时,出现了半导体显示装置发光二极管,简称为LED。经由多个发光二极管根据一定的排列规则而形成的具有显示功能的器件称之为——LED点阵显示屏。是通过控制发光二极管的工作状态(二极管的截断或是导通)来对文字、图片、动画、视频等进行显示的。LED点阵显示屏是一个具有模块化组件的显示设备,它通常由电源系统加上控制系统和显示模块组成的。LED点阵显示屏的制造相较于其他显示屏要更简易,安装也更加方便,所以被广泛应用在各类公共场所。例如车站报站器,广告屏以及公告牌等。LED显示屏将要显示的内容转换为计算机可以识别的语言,然后调用一些函数让它在屏上得以显示。一开始,系统利用KeiluVision5开发平台,通过单片机模块对文字、数字等要求显示内容进行编译,并利用取模软件将待显示的内容转换生成为相应的点阵数据,当数据传递给芯片控制模块后,由单片机通过74HC595芯片(八位串行输入串/并行输出寄存器)构成的行/列驱动电路来控制点阵的显示。点阵显示单位为16x16,单个数字或汉字可以动态地进行显示。点阵显示屏的行低(将LED的阴极连接在一起),列高(阳极连接在一起)。如果要点亮某个点,则必须点亮行与列的交点[1]。1.2课题研究背景及现状随着中国经济的快速发展,对图形显示的需求与日俱增,城市街道上随处可见的闪光灯牌、红绿灯等数量猛增。在此背景下,通过对文本和字符在LED点阵显示屏中可以稳定显示的原理和其接线图的研究,综合应用单片机原理、74HC595芯片工作原理和LED显示原理等知识,结合单片机仿真系统的使用方法,通用结合软件和硬件,采用AT89C51单片机设计了符合要求的LED点阵显示系统。该系统可以实现输入字符和数字的循环显示,还可以根据具体情况调整显示速度,从而提高显示屏的综合应用能力。在单片机技术的不断升级和高亮度的LED发光管被广泛应用后,LED点阵显示屏作为上个世纪八十年代末的一种新型信息通信媒体,在国际上得到了迅速的发展。从目前遍布全球的LED的发展情况来看,在国内外的照明光源领域创新中LED颇受关注,随之得到了迅猛的发展。包括台湾在内的世界主要国家纷纷推出半导体照明计划[2]。又因LED技术的先进性和它在照明领域有着良好的节能环保的表现,被认为是全球最具发展潜能的高科技领域之一。1.3论文章节介绍本文总共分为六章来对基于51单片机的点阵系统的设计进行论述。第一章绪论,主要是高度概括了LED点阵显示屏历史背景以及在国际上的现状和未来的发展趋势;第二章提出了整体的设计方案,介绍了系统功能的实现;第三章是对系统硬件设计的论述,主要对单片机的外围电路,驱动电路如何工作,显示屏如何拼接进行阐述;第四章是系统的软件设计,主要介绍了程序代码的控制功能,系统设计中所涉及的软件应用;第五章为仿真测试,再解决出现的问题后对设计结果进行展示;第六章总结与展望,高度总结了本次系统设计的原理、实施及结果,并对设计中存在的不足以及改进措施有进一步的展望。2系统的整体设计2.1系统的功能实现本文是采用AT89C51单片机作为主控模块,74HC595芯片负责驱动电路,来对汉字数字在规格为16x16的LED点阵显示屏上的系统设计。要求设计可以满足文字及数字在LED点阵显示屏上进行稳定的循环显示的功能;且能够简易的控制内容的显示频率,设计成果在Proteus上进行仿真。2.2系统整体设计方案本次设计中要求实现文字数字在规格为16x16的点阵显示屏中显示。由于仿真软件元器件库中没有该规格的点阵显示屏,所以16x16的LED显示屏则是由四片8x8的LED点阵显示屏级联构成。在硬件连接时,只需将同列点阵单元的列引脚连接,再将同行点阵单元的行引脚连接就可级联成一个16x16的点阵显示屏。依照点阵的显示原理,如需要该点阵可以实现正常的显示功能,就需要在其中加上相应的列驱动电路和行驱动电路。列驱动器作用于输入数据,行驱动器则用来控制扫描。可得到如下结构,如图2-1所示。图2-1显示系统结构框图单片机控制模块的功能是将接收到的信号指令经4片8位串行输入并行/串行输出的移位寄存器(74HC595芯片)构成的行/列驱动电路和驱动点阵显示屏[2]。2.3显示模式方案LED常以动态或是静态的方式进行显示。静态显示时LED一种处于选中状态,每个LED数码管都需要独立的带锁存功能的输入/出口。第一次出现的二进制代码经由单片机传送至接口电路,当更新了显示内容时,才会再次发送一个新的数据。因为静态显示的稳定性比较高,所以长期占据主导地位。与静态显示相对应的是动态显示。按照所需要呈现的运动特性,共分为:平移(Translation)、旋转(Rotation)、闪烁(Flashing)、放缩(Scaling)这四大类。动态显示通常指的就是显示屏按照特定的方式被逐行点亮,但因为人眼存在“余辉效应”,视觉现象并不立即消失,通常无法看到闪烁的现象,因此观察到的现象是稳定的。动态扫描显示具有能大幅度的让LED损耗降低和节省外部端口线的优点。除此之外还利用了二——十进制代码,简化了译码驱动电路,更加便捷的解决了和PC相连等问题[3]。现如今,动态扫描显示技术已较为成熟,在各行各业中得到了很好的发展。3系统的硬件设计硬件设计是整个系统设计的关键部分。本次系统设计选用的单片机的AT89C51,两片74HC595芯片作用于驱动电路以及4块规格为8x8的点阵显示屏。3.1单片机及最小系统电路3.1.1单片机基本概述单片机是一种通过超大规模的集成电路技术,可以把CPU、RAM、ROM、多种I/O口以及中断系统和计数器等功能集合到一块小硅片上,形成一个虽然微小但是功能完整的微型计算机系统,称之为单片机。(1)特点制作简易、使用方便,易于改换组合且适应环境能力强,不容易被破坏;响应快、低电压、低功耗、有较强的的控制和分析数据的能力。(2)分类根据使用环境条件以及应用领域的不同,可将单片机主要分为通用型(专用型)和总线型(非总线型)。(3)发展历程单片机诞生于1971年,经历了SCM(单片微型计算机)、MCU(微控制器)、SOC三大阶段[4]。3.1.2主控单片机的选择(1)51单片机的发展及优缺点51单片机的优点在于其性能高的同时功耗也低。除此之外51单片机的最小外围电路相较于其他的单片机的外围电路更易操作,还同时具备了2个定时器引脚和外部中断引脚。缺点在于当需要对外部中断进行编程时,会涉及到其内部寄存器的操作,这就增加了操作的复杂度,对于才接触单片机的人来说不易上手,并且51单片机的处理不够迅速,且I/O口的输出电流较小,如需驱动继电器或是其他需要加上拉电阻或者三极管进行驱动,但本设计中无需使用到大电流驱动的设备,因此51单片机的输出能力在此设计中可以不做考虑。常用的51单片机如图3-1所示。图3-151单片机的实物图2、STM32单片机发展及优缺点其优点在于CPU处理速度快,片内外设丰富,串口资源及I2C、SPI、DMA等外设丰富。封装较小,便于集成化电路设计。具有丰富的GPIO接口。缺点在于其内部的寄存器较多,难上手。开源库不多,且无论使用寄存器编程还是标准库亦或HAL库,对于初学者来说都较难快速上手。在目前晶圆不稳定的情况下,ST系列的MCU价格昂贵,不适合学生设计开发。图3-2STM单片机实物图对比两种大家熟知的单片机的优缺点后,结合本设计的实际需要,最终选择使用51单片机系列中的AT89C51作为本系统的控制模块。3.1.3AT89C51芯片介绍本次选用的单片机是AT89C51来实现对整个系统进行控制。它可以提供以下标准功能:一个全双工串行通信口、片内振荡器和时钟电路、一个可以输入输出的两级中断结构;同时包含4K字节的Flash闪速存储,两个16位计数器/定时器,32个I/O口线、256字节的RAM内部存储。对于本次系统设计中要求显示的常见汉字和阿拉伯数字,AT89C51片内集成的4KB的FlashPEROM即可满足字库存储要求,无需扩展外存储器。1、单片机内部结构MCS-51系列的单片机结构大致相同,其中主要包含了中断系统、I/O端口、计数器/定时器、算术逻辑单元ALU和片内RAM等等,其内部框图如下图3-3所示。图3-351单片机内部框图(1)串行中断控制系统。中断源,2个外部中断源、2个定时/计数中断源构成51单片机的中断系统。(2)并行的I/O口。MCS-51单片机中包含32根口线,可划分成4个8位的输入/输出接口,它们可用于八位数据的连接口,还可作为I/O端口单独使用。(3)定时器/计数器。89C51单片机通过T0和T1两种定时器/计数器来实现对单片机实时控制的功能。(4)内部存储器。存储器分4KB的ROM和为用户提供可读写的128位地址空间的内部RAM,二者分开寻址。(5)全双工串行口。能实现单片机和其它数据设备间数据传递的功能外,也可以当做全双工异步通讯收发器和同步移位器来使用。(7)时钟电路。时钟电路分为内部振荡和外部引入两种。MCS-51构成self-excitedoscillator的方法是通过利用片内自带的时钟电路和外接可调电容和一个12MHZ的晶振来实现。2、单片机引脚功能AT89C51的引脚图如下图3-4所示,共40个引脚,DIP封装,可大致分成下列四大类。图3-4AT89C51引脚图VCC:接+5V的电压供电。GND:接地。XTAL1:内部时钟工作电路及反向振荡放大器的输入。XTAL2:来自反向振荡器的输出。振荡器特性:XTAL1和XTAL2分别是反向放大器的输入和输出。石晶或是陶瓷振荡均可配置成片内的振荡器采用。驱动器件如果使用的是外部时钟源,则XTAL2应不接。时钟电路也可以为振荡器脉冲信号进行分频。3、AT89C51控制线功能(1)ALE/PROG:地址锁存允许端。在访问外部存储器期间时,用来锁存低8位地址。在Flash编程期间,其用作PROG的输入端[4]。(2)PSEN:外部编程存储器的选通信号。用于片外存储器的访问。(3)EA/VPP:内外ROM选择端。当EA为逻辑“1”时访问内ROM,否则访问外ROM。(4)RST/VPD:复位端/备用电源,RESET的缩写连接此引脚可实现复位功能。I/O引脚如下表3-1所示。表3-1输入/输出接口功能表当输入的阵列全部置一时,在任意一个非空存储字节反复编程前,必须要保证地址锁存允许端一直处于低电平时,所有的PEROM和点擦除才可以作为控制信号准确的完成此次操作。CPU不运行处于闲置状态下时,其它的系统还会继续工作。当遇到突然断电的情况时RAM中的内容会被保留,其它的硬件会在下一个硬件复位前一直处于不运行的状态。3.1.3单片机系统及外围电路时钟振荡电路和复位电路一起构成单片机的系统外围电路,如图3-5所示。图3-5单片机系统外围电路振荡电路时钟信号可以通过内部振荡或是外部引入的方式产生。本次系统设计选择通过内部振荡来产生时钟信号。晶振又叫做石英晶体振荡器,晶振可以直白的理解成是单片机系统的心脏,单片机的正常工作和代码的执行、相关指令的执行都离不开晶体振荡器,一般我们所使用的是12MHz的晶振,即1S震荡12M次,为单片机提供源源不断的振荡周期,保证单片机的程序下载、执行等相关操作。在C51的单片机系统中,如果使用12M的晶振,其振荡周期为1/12ms,因此一个机器周期为(1/12)*12=1us,单片机的指令的运行等都是通过机器周期去完成的。像__NOP()指令,该条语句的含义是执行一次该语句,需要一个机器周期的时间,在本设计中因此执行一次为1微秒,常用在需要短时间的延时上,可以大大的提高效率,省去了单片机运行其他延时函数时进入和退出函数所用的时间消耗。有时常会看到晶振的大小取值为11.0592MHz,该取值是为了保证正在使用串口通讯时保证波特率的准确性,进而传输的数据不会出错。常用的波特率一般是9600,11.0592M可以整除9600,因此使用该晶振产生的波特率会更加准确,本设计中无需使用串口通讯的相关功能,因此在晶振上选择了常规的12MHz的晶振,使其机器周期刚好为1us,便于代码中相关延时的计算。AT89C51单片机内部集成了FlashPEROM,晶振频率高达24MHZ,有一个高增益反向放大器可以构成内部振荡器,该放大器的输入端和输出端分别是引脚XTAL1和XTAL2[5]。构成一个内部的时钟脉冲阀振荡电路的方式是:在C51单片机的XTAL1和XTAL2间加一个12MHZ的石英振荡晶体,再使得振荡器的两端接上电容耦合接地。连接电路图如图3-6所示。图3-6内部时钟脉冲振荡电路图通过外部引入来产生时钟信号的方式是:当XTAL1外接一个外部时钟脉冲产生电路,XTAL2接空引脚。构成方式如图3-7所示。图3-7外部时钟脉冲振荡电路图(2)复位电路单片机在上电时都需要执行一次复位操作,复位就是把电路恢复到起始状态[7]。复位电路存在上电复位和手动复位这两种方式。选择使用手动复位的方式来设计此次的复位电路。设计中的复位电路的构成采用标准的接法,在复位按键的两端并联了10uF的电容,同时在复位脚上增加了10K的下拉电阻,由于C51的单片机系统是高电平复位,因此,为了保证单片机不会被其他干扰信号导致复位,所以在复位脚增加10K的下拉电阻到地,保证了复位脚电平稳定性,同时为电解电容提供了放电回路。手动复位电路如图3-8所示,基本工作原理是当按键被手动按下时,复位脚被直接拉到了高电平,此时维持两个机器周期在本设计中也就是2微秒的时间即可完成单片机系统的复位,为了保证其可以正常的完成复位,在按键按下时,电容中存储的电荷被释放出来,使用电容中的电量为单片机的复位脚提供一个持续的高电平,其持续的时间由电容的大小以及下拉电阻构成的放电回路决定,RC越大,放电时间也就越长,在此我们需要保证其复位,只需要维持两个机器周期的高电平即可。图3-8手动复位电路图上电复位是指当单片机上电的同时给复位引脚加上高电平。上电复位的电路如图3-9所示,电容C上端接+5V电源(高电平),电阻R1下端接地,中间接RST复位端。图3-9上电复位电路图3.2驱动电路3.2.174HC595简介74HC595采用的是具有硅结构的CMOS型器件,同时兼具存储器及三态输出、8位移位寄存器功能,还可以作为串入并出的输入/输出口。复位端、DS和SQH(Q7’)共同构成移位寄存器。清除端MR低电平有效,仅对移位寄存器进行复位操作(Q7’为低电平时)。8位的串行输入/输出、并行输出的存储状态寄存器,具有三态输出方式,且能够直接清除100MHz的移位频率。74HC595的数据由DS口负责传送,DS端上的数据会被送到寄存器中,当SH_CP的下一个上升沿到来时,当且在SH_CP的第9个上升沿出现时,数据便从串行数据输出引脚Q7’移出。设计中将第一片74HC595的SQH(Q7’)与第二片的DS连接起来,这样第1-8列数据传送完毕后以此送进9-16列数据中。要想点阵可以显示内容需要将8列输出点阵屏相接,同时需要在SH_CP的上升沿时期将数据送至锁存器内使OE有效。74HC595共有16个引脚,如图3-10所示。Q0-Q7:数据并行输出引脚;SQH(Q7’):串行数据输出引脚;A(DS):串行数据输入引脚;SHIFTCOLOCK(SH_CP):移位寄存器时钟输入引脚;LATCHCOLOCK(ST_CP):存储寄存器时钟输入引脚(上升沿有效);RESET(MR):主复位端(低电平有效);OutputEnable(OE):输出使能端;VCC:电源电压+5V;GND:接地。图3-1074HC595引脚图3.2.2驱动电路本次设计LED点阵显示屏共有16行16列,因此其中需要两片74HC595来对点阵显示屏的行列电路进行驱动,如图3-11所示。74HC595采用级联方式,当并行输出有效脉冲时,则可以实现16行信号同时有效,这时就需要将一片74HC595的级联输出端(Q7’)和第二块芯片的数据段DS相连。图3-11单片机与74HC595的电路连接图单片机先送一个8位数据到第一个芯片的数据输入端,先送高位,再送低位。然后将位输出的数据依次送入寄存器芯片中,当P1.0口每输入一位数据时,P1.2口将产生一上升沿,595移位寄存器里的内容也就相应地由高向低移动一次。当前8列数据送完后,第9列数据到来时,第一片595芯片的Q7’就将串行输出移位寄存器里的第1位数据送给下一片595的第一位,新进来的数据送给第8位,当第1行至第16行的数据准备后,P1.1口就会产生一个上升沿脉冲送给595的ST_CP引脚,将级联的芯片并行输出时钟引脚串联在一起同时由P1.1控制,这样当输出时钟到来的时候后,每片595的行数据同时输出。为了实现更简单的数据控制,本次设计的列驱动电路和行驱动电路选用的是同种芯片,使用的都是一样的工作原理,列驱动电路的工作原理就不过多赘述。3.3LED点阵显示屏设计3.3.1LED点阵显示屏的概述LED点阵显示屏(LEDpanel)是由一定数量的发光二极管按矩阵方式排列构成的,它通过控制发光二极管的工作状态来对字符进行显示。通常分为4x4、4x8、5x7、5x8、8x8、16x16、24x24等多种规格的点阵显示屏模块。一般用来显示文字、图像、视频等各种信息,在日常生活中有许多应用。LED点阵显示屏单块在实际应用时,既可以显示各种中西文字及符号,也可以代替数码管显示数字,例如规格为5x7的点阵可用于显示字母,5x8的点阵可用来显示中西文,而8x8的点阵除了可以显示文字,简易的图形也可以显示。因为本次系统的设计没有制作实物,基于仿真软件的元器件库只有5x8和8x8规格的点阵显示屏,最终选择了4块单元规格为8x8的点阵来级联成一整块16x16的点阵显示屏。在连接上分为共阳极和共阴极两种连接方式。本系统设计主要采用共阳极的连接方式。因为当行上正选通信号时,则对于列选通16位数据16位数据为0的发光二极管则会被点亮。所以要想显示图形或文字,只需要把显示的图形或文字的显示编码设定为相应的列信号和对应行信号,再次进行逐行的扫描就可以点亮点阵。3.3.2LED点阵显示屏的设计对于一片8x8点阵,其内部电路结构分为8条行线和8条列线。行和列的交叉处就有一个发光二极管,每个单元由64个发光二极管构成。一片8x8点阵单元的内部结构如图3-12所示。图3-128x8点阵单元的内部结构图本设计选取的是4片8x8的LED基础点阵模块,排列构成一个16x16的点阵显示屏,并且以动态方式显示一个汉字/数字。将二极管的低电位端连接在一起构成点阵显示屏的行,每一列的高电位端连接在一起构成点阵显示屏的列。若要选中某点,便要让行与列的交叉处的二极管被点亮。若要选中某一列时,则要给此列送高电平;若要选中某一行时,则要给此行送低电平[6]。若要在点阵显示屏上显示汉字/数字需要将控制数据送如单片机中,AT89C51在接收处理控制命令后,由595芯片控制行、列电路驱动显示屏对汉字数字进行显示。本次设计中要求实现LED点阵显示屏能够清晰稳定的循环显示10个数字和四个汉字(2017036132毕业快乐)。要清晰完整的显示一个汉字就需要一个规格16x16的点阵,因为一个汉字占两个字节,又因本次设计成果均在仿真软件中实现,但Proteus软件的元件库里只有5x7和8x8的点阵显示屏,所以选用了4块8x8的点阵来构建规格为16x16的点阵显示屏。仿真软件元件库中有蓝色、绿色、橙色、红色四种颜色的8x8基础点阵模块,每种颜色的点阵显示屏选取一个,将其放置在编辑区窗口中,依次对四种不同颜色的8x8的LED点阵显示屏进行测试。测试过程如下图3-13(1)、(2)所示。图3-13(1)8x8的LED点阵显示屏行列测试图3-13(2)8x8的LED点阵显示屏行列测试经测试发现,蓝色,绿色,橙色三个点阵显示屏的上方的引脚接地(低电平),下方引脚接电源(高电平)有效,说明上端的引脚表示LED的行,下端的引脚则为列。而红色点阵显示屏则恰好相反,下方是行线(低电平),上方是列线(高电平)。经过亮灯显示测试后,因绿色点阵的亮灯展示结果最清晰,且符合设计中行线接低电平列线接高电平的原则,最终选择的是4块绿色点阵,如下图3-13(3)所示,测试后4块点阵显示均能正常被点亮。图3-13(3)4块点亮中的绿色点阵4系统的软件设计系统软件的设计主要是针对字模软件和代码编辑软件的设计。字模软件负责将输入的文字数字转化成16进制的数据,代码编辑软件负责数据的处理,然后传输给595芯片后在LED点阵上进行显示。4.1字模软件的设计LED显示是点阵显示方式,故在显示数字和汉字前需要提取字模数据。字模软件是可将查询的汉字数字被分割成小格子后生成数组代码,用二进制0,1来代表汉字在网格中所处的区域,“0”代表笔画没有经过的区域“1”代表的就是汉字笔画经过的区域。用连续的二进制代码“0”“1”来表示的字模软件提取的汉字。打开字模软件界面后,根据系统设计的需要完成相关的取模设置,如图4-1所示。点阵格式应设置为“阴码”,即亮为1,灭为0;字模的提取方式应设成“逐行式”,即从左端的第一位起,每行第一个点到最后一个点;输出数制选择“十六进制”,程序中是十六进制,在字模提取时转化为二进制;自定义格式为根据本次系统设计应选择“C51”。在完成字模软件的设置后,则可以开始对字模进行提取。图4-1字模软件设置字模软件的主要功能是将汉字转化生成LED显示屏的可以识别的二进制代码。每个汉字取16行,16列,汉字一行16位,一个汉字共256位。首先在“文字输入区”输入汉字/数字,输入汉字时展示如图4-2(1)。当要求对数字进行展示时应如图4-2(2)红色框线部分,对字宽进行调整至32。本次设计中使用的取模软件初始设置的字宽字高均为16,因汉字占两个字节,所以在输入汉字时则不需要调整字宽,但因数字只占一个字节,故需要将字模软件的字宽调置为32,这样所要求显示的数字在16x16的点阵上就可以正常显示。图4-2(1)文字在字模软件中展示效果图4-2(2)数字在字模软件中展示效果直接点击“生成字模”后,如图4-3展示字模,则可以将生成的字模数据粘贴至代码编辑区域。图4-3生成字模的展示“毕业快乐”生成的部分字模展示如下,详细可见附录1。(可删){0x04,0x01,0x04,0x11,0x04,0x0D,0x7C,0x03,0x04,0x01,0x04,0x21,0x64,0x21,0x1C,0x3E},{0x84,0x00,0x80,0x00,0xFF,0x7F,0x80,0x00,0x80,0x00,0x80,0x00,0x80,0x00,0x80,0x00},/*"毕",0*/{0x20,0x02,0x20,0x02,0x20,0x02,0x20,0x02,0x22,0x22,0x24,0x22,0x24,0x12,0x28,0x12},{0x28,0x0A,0x28,0x06,0x20,0x02,0x20,0x02,0x20,0x02,0x20,0x02,0xFF,0x7F,0x00,0x00},/*"业",1*/LED点阵显示屏所需要的的显示数据以及各类控制信号都是有软件系统来提供的,以确保屏体能够按照预期的要求稳定、流畅的显示。4.2代码编辑软件的设计主程序的设计要对单片机的初始化进行设置,如片选、时钟、端口和数据等;初始化功能完成后则进入LED点阵显示屏的控制模块,等待要求显示的内容正常展示一个周期后将会循环展示下一个周期,系统的主程序总体框图如图4-4所示。图4-4系统主程序框图4.2.1Keil软件的介绍本次设计是以MSC-51为控制核心,利用编程KeiluVision(5.0版本向上兼容)进行C语言程序的设计和编译。它具有编译、创建.hex文件、仿真调试文件等多种功能,也可以兼容单片机C语言,上手也较为简单。KeiluVision是一个标准的32位应用程序,功能强大。可与软件Proteus进行联合调试。实际操作界面如下图4-6。图4-6KeiluVision实际操作界面5调试与仿真为了保证电路能在实际应用中达到预期的效果,确保点阵可以稳定流畅的显示,可以在仿真软件上进行仿真的调试。通常选用硬件电路仿真软件,让编程软件与仿真软件联合来实现对输入内容的显示。本次设计采用Proteus软件与Keil软件联调进行仿真。5.1仿真软件Proteus介绍Proteus有完善的仿真功能,它除了具有一般电子设计自动化工具软件的仿真功能外,还能够对单片机及其外围进行仿真。该软件具有以下特点。Proteus具有三十多个元件库可以调用,能够为用户提供所需要的的大量仿真元器件资源,可用于仿真数字;也可以实现单片机和SPICE电路仿真的结合。及单片机和外围电路组成的系统仿真。针对模型选择可见图5-1所示。图5-1模型选择工具栏(1)仿真调试功能系统进行硬件仿真时在“调试”下拉菜单可进行相应的选择,如、“单步”“不加断点执行”等操作,同时可以和KeiluVision5.0等软件进行联调;(2)原理图绘制功能Proteus的工作界面如图5-2所示,和类似Windows的操作面板,包括原理编辑窗口、预览窗口、模型选择工具栏、元件列表、库管理按钮、挑选元件按钮、仿真进程控制按钮等。图5-2Proteus工作操作界面5.2Keil和Proteus的联合调试Proteus仿真时,单片机首先需要加载之前在Keil软件中生成好的.hex文件。本次设计利用KeiluVision5.0,生成.hex文件。具体操作如下:在Keil5.0中先创建新的项目文件,其次双击“Atmel”并且选择AT89C51单片机作为CPU,然后把源程序添加到项目中。如图5-3(3)中所示在“OptionsForTarget1”对话框中点击“Output”中的“CreateHEXFile”后生成所需要的.hex文件。图5-3(1)选择AT89C51作为CPU图5-3(2)生成.c的文件图5-3(3)选择“OptionsForTargetTarget1”图5-3(4)生成.hex的文件(2)把将作为控制程序的“.hex”文件添加到Proteus软件中已经绘制好的AT89C51芯片中。(3)在Proteus仿真界面中,进行参数设置,将单片机的时钟频率修改为12MHz,并按照文件路径加载生成.hex文件。(4)参数设置完成后,结合软件Keil和仿真Proteus两个软件进行模拟仿真,得到最终的系统展示结果。5.3仿真电路图通过软硬件设计和C语言程序的开发,本次设计基本完成。绘制好电路图,经过Proteus的仿真测试后,按照上述的步骤操作,得到设计结果,结果如图5-4,5-5(1)和5-5(2)所示。图5-4仿真电路图图5-5(1)仿真显示数字“2”样例图5-5(2)仿真结果显示汉字“毕”样例6总结与展望6.1总结本次设计采用的是以AT89C51为核心控制系统,动态扫描的方式,,实现对16x16点阵显示屏的控制。该系统具有结构简单,稳定性好,成本低易于
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年中石化芜湖石油分公司招聘考试备考题库及答案解析
- 2025云南昆明市官渡区北京八十学校招聘5人参考考试试题及答案解析
- 2025新疆和田果业有限公司招聘备考笔试题库及答案解析
- 2026届重庆市重点中学数学高二上期末联考模拟试题含解析
- 2025年副处级干部考试题及答案
- 零碳园区绿色屋顶设计
- DB11T 814-2011 城市轨道交通路网运营指标体系
- 零碳园区气候变化响应策略
- 城区排水管网整治效果评估方案
- 2025广东广州市南沙区教育局联合中国教科院招聘事业编制小学校长1人考试备考题库及答案解析
- 诗经中的爱情课件
- 2025年烟花爆竹经营单位安全管理人员考试试题及答案
- 2025天津大学管理岗位集中招聘15人参考笔试试题及答案解析
- 2025广东广州黄埔区第二次招聘社区专职工作人员50人考试笔试备考题库及答案解析
- 2025年云南省人民检察院聘用制书记员招聘(22人)考试笔试参考题库及答案解析
- 2026届上海市青浦区高三一模数学试卷和答案
- 2026年重庆安全技术职业学院单招职业技能测试题库附答案
- 环卫设施设备采购项目投标方案投标文件(技术方案)
- 微创机器人手术基层普及路径
- 24- 解析:吉林省长春市2024届高三一模历史试题(解析版)
- 2025年黑龙江省公务员《申论(行政执法)》试题含答案
评论
0/150
提交评论