学士基于MS单片机的个×点阵LED电子显示屏的设计_第1页
学士基于MS单片机的个×点阵LED电子显示屏的设计_第2页
学士基于MS单片机的个×点阵LED电子显示屏的设计_第3页
学士基于MS单片机的个×点阵LED电子显示屏的设计_第4页
学士基于MS单片机的个×点阵LED电子显示屏的设计_第5页
已阅读5页,还剩30页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Ⅰ、毕业设计(论文)题目基于MS551单片机的4个16x16点阵LED电子显示屏屏的设计Ⅱ、毕业设计(论论文)工作内内容设计一个四位的的16X16的点阵电子子显示屏。利利用单片机串串口扩展为并并口,实现数数据的列扫描描,利用单片片机的P1口译码来实实现行扫描。加加深对单片机机和数字电路路的理解,熟熟悉单片机串串口的工作方方式以及串口口的扩展。学学会独立的查查找资料,并并给出完整的的设计方案。为为以后独立开开展与专业相相关的工作打打下了基础。熟熟练使用proteel,keiil,C软件。学会会论文的撰写写及排版工作作。本方案设计一个个电子显示屏屏,具体要求求满足以下条条件:(1)要求采用用51单片机作为为微控制器;;(2)通过四个个16x16的点阵LED进行文字显显示;(3)在目测条条件下LED显示屏各点点亮度均匀、充充足、稳定、清清晰无串扰。(4)文字显示示具有每排字字有滚动和逐逐排等显示方方式。Ⅲ、进度安排::第1--2周收集资料并并整理设计思思想第3--4周开始硬件部部分设计,学学习AT89SS52单片机的应应用第5周周列驱动电路路设计第6周周行驱动电路路设计第7周周绘制PROTEELL原理图第8周周软件设计第9周周软件设计—显示驱动程程序第100周软件设计—系统主程序第111周调试并进行行性能分析第122-14周整理文档Ⅳ、主要参考资资料:[1]诸昌昌钤编著:《LED显示屏系统统原理及工程程技术》.成成都:电子科科技大学出版版社,2000[2]张志志良主编:《单片机机原理及控制制技术》(第第2版).北京京:机械工业业出版社,2005[3]李光光飞编著:《单片机机课程设计实实例指导》(第2版).北京:北京航空航天出版社,[4]吴金金戍,沈庆阳阳,郭庭吉编编著.8051单片机实践践与应用.北北京:清华大大学出版社..[5]吉雷主编:《Proteel99从入门到精精通》.西安安:西安电子子科技大学出出版社,2004.[6]侯丽丽玲:基于AT89SS52单片机的LEDD点阵显示屏屏控制系统的的设计[J],漳州职业业技术学院学学报。系负责人审核意意见(从选题题是否符合专专业培养目标标、是否结合合科研或工程程实际、综合合训练程度、内内容难度及工工作量等方面面加以审核)::摘要LED点阵显示示屏作为一种种新兴的显示示器件,是由多个独独立的LEDD发光二极管管封装而成..LED点点阵显示屏可可以显示数字字或符号,通常用来显显示时间、速速度、系统状状态等。本设计是4个116×16点阵LED电子显示屏屏的设计。整整机以美国ATMEL公司生产的40脚单片机AT89CC51为核心,介介绍了以它为为控制系统的的LED点阵电子显显示屏的动态态设计和开发发过程。通过过该芯片控制制一个行驱动动器74LS1154和八个列驱驱动器74HC5595来驱动显示示屏显示。该该电子显示屏屏可以显示各各种文字或单单色图像,全全屏能显示4个汉字,采采用16块8x8点阵LED显示模块来来组成4个16x16点阵显示模模式。显示采采用动态显示示,使得图形形或文字能够够实现静止、移移入移出等多多种显示方式式。文中详细细介绍了LED点阵显示的的硬件设计思思路、硬件电电路各个部分分的功能及原原理、相应软软件的程序设设计,以及使使用说明等。关键词:AT889C51单片机LLED点阵显示动态显示AbstracctAsappopulaardissplaydeviccecommponennt,LEEDdott-matrrixdiisplayyboarrdconnsistssofsseveraalinddependdentLLED(LLightEmitttingDDiode)).TheeLEDdot-mmatrixxdispplaybboardcanddisplaaytheenumbberorrsignn,andditiisusuuallyusedtoshhowtiime,sspeed,,thestateeofssystemmetc..Thiisdessigniis4116×166lattticeLLEDellectroondissplaymonittordeesign..Thewwholeequippmentiswiiththhe40--pinAAT89C551MCUU(MiccroCoontrolllerUUnit)produucedbbytheeAmerricanATMELLcomppanyaattheecoree,inttroduccedtaakeittastthecoontrollsysttemLEEDlattticeelecttronddisplaaymonnitordynammicdeesignandtthedeeveloppmentproceess.CControolsgoooddrriver74LS1154anndeighhtrowwdrivver744HC5955throoughtthiscchipaactuattesthhedissplaymonittordeemonsttratioon.Thheeleectronnicsccreencansshowaallkiindsoofwriittenormoonochrromeiimagess,oneefulllscreeendiisplayyChinneseccharaccters,,sixteeenpiiecesof8x8ddot-maatrixLEDddisplaaymoddulestofoormthhe16xx16dootmattrixddisplaaymodde.Shhowdyynamiccshowwthattmakeesstaaticggraphiicortextcanbbeachhievedd,shiiftedoutoofvarriousformaats.TThisppaperdescrribesthehhardwaaredeesignofthheLEDDdotmatriixdissplay,,andthepprinciipleffunctiionoffthevarioouspaartsooftheecirccuit,theccorresspondiingsooftwarreproogramdesiggnanddtheuseoofsommesucch.Keyworrds:ATT89C511MicrroConntrolllerUnnit;LED;LattiiceDissplay;DynammicDissplay目录TOC\o"1-3"\h\uHYPERLINK\l"_Toc263235465"摘要2HYPERLINK\l"_Toc263235466"Abstracct3HYPERLINK\l"_Toc263235467"第一章绪论5HYPERLINK\l"_Toc263235468"1.1问题提出出5HYPERLINK\l"_Toc263235469"1.2课题背景景6HYPERLINK\l"_Toc263235470"第二章功能要求求及方案论证证8HYPERLINK\l"_Toc263235471"2.1功能要求求8HYPERLINK\l"_Toc263235472"2.2显示模块块方案论证88HYPERLINK\l"_Toc263235473"2.3数据传输输方案论证99HYPERLINK\l"_Toc263235474"第三章系统硬件件电路的设计计11HYPERLINK\l"_Toc263235475"3.1单片机系系统及外围电电路11HYPERLINK\l"_Toc263235476"3.2列驱动电电路13HYPERLINK\l"_Toc263235477"3.3行驱动器器15HYPERLINK\l"_Toc263235478"3.4元件清单单18HYPERLINK\l"_Toc263235479"第四章系统程序序的设计200HYPERLINK\l"_Toc263235480"4.1显示驱动动程序20HYPERLINK\l"_Toc263235481"4.2系统主程程序22HYPERLINK\l"_Toc263235482"第五章调试及性性能分析277HYPERLINK\l"_Toc263235483"5.1开发环境境介绍27HYPERLINK\l"_Toc263235484"5.2理论性性能分析277HYPERLINK\l"_Toc263235485"5.3系统调调试28HYPERLINK\l"_Toc263235486"第六章总结299HYPERLINK\l"_Toc263235487"6.1工作过过程介绍299HYPERLINK\l"_Toc263235488"6.2系统功功能的拓展方方向29HYPERLINK\l"_Toc263235489"致谢32第一章绪论1.1问题提出出LED显示屏分分为数码显示示屏、图文显显示屏和视频频显示屏,均均由LED矩阵块组成成。LED数码显示屏屏的显示器件件为7段码数码管管,适于制作作时钟屏、利利率屏等,显显示数字的电电子显示屏。图图文显示屏可可与计算机同同步显示汉字字、英文文本本和图形;视视频显示屏采采用微型计算算机进行控制制,图文、图图像并茂,以以实时、同步步、清晰的信信息传播方式式播放各种信信息,还可显显示二维、三三维动画、录录像、电视、VCD节目以及现现场实况。LED之所以受受到广泛重视视而得到迅速速发展,是与与它本身所具具有的优点分分不开的。这这些优点概括括起来是:亮亮度高、工作作电压低、功功耗小、小型型化、寿命长长、耐冲击和和性能稳定。LED的发展前景景极为广阔,目目前正朝着更更高亮度、更更高耐气候性性、更高的发发光密度、更更高的发光均均匀性,可靠靠性、全色化化方向发展。近年来,单片机机已经成为科科技领域的有有力工具,人人类社会生活活的得力助手手。它的广泛泛应用,不仅仅仅体现在工工业控制、机机电应用、智智能仪表、实实时控制、航航空航天、尖尖端武器等行行业和领域的的智能化、高高精度化,而而且在人类日日常生活中也也随处可见它它的身影。单片机是嵌入式式系统的独立立发展之路,向MCU阶段发展的重要因素,就是寻求应用系统在芯片上的最大化解决;因此,专用单片机的发展自然形成了SoC化趋势。随着微电子技术、IC设计、EDA工具的发展,基于SoC的单片机应用系统设计会有较大的发展。因此,对单片机的理解可以从单片微型计算机、单片微控制器延伸到单片应用系统。目前,单片机正正朝着高性能能和多种方向向发展,其趋趋势将进一步步向着CMOS化、低功耗耗、小体积、大大容量、高性性能、低价格格和外围电路路内装化等几几个方面发展展,其功能也也将越来越丰丰富,速度也也越来越快,甚甚至有些方面面并不逊于ARM或DSP。随着LED显示示屏在广告传传媒领域逐渐渐崭露头角,其其控制系统也也如雨后春笋笋,层出不穷穷。由于它的的控制系统均均是基于嵌入入式微处理器器开发,所以以单片机在其其中也占有一一席之地。但但是,由于LED显示屏控制制较复杂,特特别是对于显显示特殊效果果,如循环移移动、覆盖霓霓虹灯效果,要要求处理器运运算速度快、执执行效率高,所所以很多控制制卡生产厂家家采用高端嵌嵌入式系统进进行设计。这这样做虽然能能在一定程度度上提高数据据处理速度,但但是并不能完完全满足所有有显示效果要要求,而且开开发和产品成成本也会随之之成倍增加,甚甚至由于其设设计不当可能能在显示时出出现抖动、闪闪烁、重影等等现象。归根根结底,LED显示屏控制制卡的设计中中硬件是一方方面因素,同同时还要考虑虑到显示数据据组织方式,通通过软硬件结结合的方法才才能设计出一一款性价比较较高的控制卡卡。本论文提提出基于普通通51系列单片机机实现LED显示屏控制制的原理及方方法。1.2课题背景景LEDD显示屏的发发展可分为以以下几个阶段段:第一阶阶段为1990年到1995年,主要是是单色和16级双色图文文屏。用于显显示文字和简简单图片,主主要用在车站站、金融证券券、银行、邮邮局等公共场场所,作为公公共信息显示示工具。第二阶阶段是1995年到1999年,出现了64级、256级灰度的双双基色视频屏屏。视频控制制技术、图像像处理技术、光光纤通信技术术等的应用将将LED显示屏提升升到了一个新新的台阶。LED显示屏控制制专用大规模模集成电路芯芯片也在此时时由国内企业业开发出来并并得以应用。第三阶阶段从1999年开始,红红、纯绿、纯纯蓝LED管大量涌入入中国,同时时国内企业进进行了深入的的研发工作,使使用红、绿、蓝蓝三原色LED生产的全彩彩色显示屏被被广泛应用,大大量进入体育育场馆、会展展中心、广场场等公共场所所,从而将国国内的大屏幕幕带入全彩时时代。随着LED原材材料市场的迅迅猛发展,表表面贴装器件件从2001年面世,主主要用在室内内全彩屏,并并且以其亮度度高、色彩鲜鲜艳、温度低低的特性,可可随意调整的的点间距,被被不同价位需需求者所接受受,在短短两两年多时间内内,产品销售售额已超过3亿元,表面面贴装全彩色色LED显示屏应用用市场进入新新世纪。为了了适应2008年奥运会的“瘦身”计划,利亚亚德开发了表表面贴装双基基色显示屏,大大量用于训练练馆和比赛计计时计分系统统。在奥运场场馆全彩屏方方面,为紧缩缩投资,全彩彩屏大部分采采用可拆卸方方式,奥运期期间可作为实实况转播工具具,赛事结束束后可用于租租赁,作为演演出、国家政政策发布等公公共场合应用用工具,通过过这种方式可可尽快收回成成本。单片机诞生于220世纪70年代末,经经历了SCM、MCU、SoC三大阶段。SCM即单片微微型计算机(SinglleChiipMiccrocommputerr)阶段,主主要是寻求最最佳的单片形形态嵌入式系系统的最佳体体系结构。“创新模式”获得成功,奠奠定了SCM与通用计算算机完全不同同的发展道路路。在开创嵌嵌入式系统独独立发展道路路上,Intel公司功不可可没。MCU即微控制制器(MicrooConttrolleerUniit)阶段,主主要的技术发发展方向是::不断扩展满满足嵌入式应应用时,对象象系统要求的的各种外围电电路与接口电电路,突显其其对象的智能能化控制能力力。它所涉及及的领域都与与对象系统相相关,因此,发发展MCU的重任不可可避免地落在在电气、电子子技术厂家。从从这一角度来来看,Intel逐渐淡出MCU的发展也有有其客观因素素。在发展MCU方面,最著著名的厂家当当数Philiips公司。Philiips公司以其在在嵌入式应用用方面的巨大大优势,将MCS-551从单片微型型计算机迅速速发展到微控控制器。因此此,当我们回回顾嵌入式系系统发展道路路时,不要忘忘记Intel和Philiips的历史功绩绩。单片机是嵌入式式系统的独立立发展之路,向MCU阶段发展的重要因素,就是寻求应用系统在芯片上的最大化解决;因此,专用单片机的发展自然形成了SoC化趋势。随着微电子技术、IC设计、EDA工具的发展,基于SoC的单片机应用系统设计会有较大的发展。因此,对单片机的理解可以从单片微型计算机、单片微控制器延伸到单片应用系统。单片机机可以从以下下几个方面分分类:1.按按应用领域可可分为:家电电类、工控类类、通信类和和个人信息终终端类等。2.按按通用性可分分为:通用型型和专用型。3.按按总线结构可可分为总线型型和非总线型型。4.按按指令运行的的振荡周期可可分为标准型型和改进型。第二章功能要要求及方案论论证2.1功能要求求本方案案设计一个电电子显示屏,具具体要求满足足以下条件::1.要要求采用51单片机作为为微控制器;;2.通通过四个16x16的点阵LED进行文字显显示;3.在在目测条件下下LED显示屏各点点亮度均匀、充充足、稳定、清清晰无串扰。4.文文字显示具有有每排字有滚滚动和逐排等等显示方式。2.2显示模块块方案论证四个8×8的点点阵构成一个个16×16的点阵。行行和列的交叉叉处有一个LED,共由256个LED构成,如果LED的阳极与行行相连,而阴阴极与列相连连,那么只要要给该LED对应的行以以高电平,列列以低电平,那那么对应的LED就发光。图2-1画出了了室内直插式式8×8点阵双基色LED模块实物图图。这种模块块由64个发光LED芯片以8×8的形式构成成一个正方形形模块,然后后用2列8针引脚将内内部电路接口口引出,供驱驱动电路使用用。图2-1LEED点阵显示原原理图行对应的给LLED的阳极,先先给第一行以以高电平,如如果送给16列的代码为EFFF,则第一行行的第4个LED被点亮,再再给第二行以以高电平,如如果送给16列的代码为EF07,则第二行行的第4、9、10、11、12、13个被点亮,接接着给第三行行以高电平,同同时给列以驱驱动代码,这这样不断地进进行行行的扫扫描,只要速速度够快,由由于人的视觉觉暂留作用,就就不会感觉到到明显的闪烁烁感。点阵上上会看到一个个清晰的“机”字。LEDD数码管结构构简单,价格格便宜。本文文所述的是LED的数据显示示方式,这种种方式通常使使用8段LED或者16段LED。在实际应应用中,点亮亮LED数码管的方方式有静态和和动态2种方法。本本文以8段LED作为示例来来论证方案1.静态显示方方式静态显示方式,即8段LED数码管在显示某一个数码时,加在数码管上的段码保持不变,直至换显其他数码为止。这样数码管的每一段均应由一条输出线来控制,每显示以为数码需要8根输出线,当N位显示则需N×8根输出控制线。占用较多I/O资源。2.动态显示方方式为解决静态显示示占用较多I/O资源的问题题,在多位显显示时通常采采用动态显示示方式,动态态显示是将所所有数码管的的段码线对应应并联在一起起,由一个8位的输出口口控制,每位位数码管的公公共端分别出出一位I/O线控制。显显示不同数码码时,由位线线控制各位轮轮流显示。位位线控制某位位选通时,该该位应显示数数码的段码同同时加在段码码线上,即每每一时刻仅仅仅有一位数码码管是被点亮亮的,当轮流流显示的速度度较快(每秒秒24次以上),由由于人眼的视视觉暂留现象象,看起来就就像所有位同同时显示一样样,这时,我我们就能看到到稳定的图像像了由于单片机的特特性,我们将将采用方案2:动态显示示方式,采用用动态显示方方式进行显示示时,每一行行有一个行驱驱动器,各行行的同名列共共用一个驱动动器。显示数数据通常存储储在单片机的的存储器中,按8位一个字节的形式顺序排放。显示时要把一行中各列的数据都传送到相应的列驱动器上去,这就存在一个显示数据传输的问题。从控制电路到列驱动器的数据传输可以采用并列方式或串行方式。2.3数据传输输方案论证显然,采用并行行方式时,从从控制电路到到列驱动器的的线路数量大大,相应的硬硬件数目多。当当列数很多时时,并列传输输的方案是不不可取的。采用串行行传输的方法法,控制电路路可以只用一一根信号线,将将列数据一位位一位传往列列驱动器,在在硬件方面无无疑是十分经经济的。但是是,串行传输输过程较长,数数据按顺序一一位一位地输输出给列驱动动器,只有当当一行的各列列数据都以传传输到位之后后,这一行的的各列才能并并行地进行显显示。这样,对对于一行的显显示过程就可可以分解成列列数据准备(传传输)和列数数据显示两部部分。对于串串行传输方式式来说,列数数据准备时间间可能相当长长,在行扫描描周期确定的的情况下留给给行显示的时时间就太少了了,以致影响响到LED的亮度。解决串行传输中中列数据准备备和列数据显显示的时间矛矛盾问题,可可以采用重叠叠处理的方法法。即在显示示本行各列数数据的同时,传传送下一列数数据。为了达达到重叠处理理的目的,列列数据的显示示就需要具有有所存功能。经经过上述分析析,就可以归归纳出列驱动动器电路应具具有的功能。对对于列数据准准备来说,它它应能实现串串入并处的移移位功能;对对于列数据显显示来说,应应具有并行锁锁存的功能。这这样,本行已已准备好的数数据打入并行行锁存器进行行显示时,串串并移位寄存存器就可以准准备下一行的的列数据,而而不会影响本本行的显示。图2-2为显示屏电路实现的结构框图。图2-2.显示示屏电路框图图第三章系统硬硬件电路的设设计硬件电路大致上上可以分成单单片机系统及及外围电路、列列驱动电路和和行驱动电路路三部分。116×16点阵显示屏屏的硬件原理理图如图3-6。3.1单片机系系统及外围电电路单片机采用MSSC-51或其兼容系系列芯片,采采用24MHZ或更高频率率晶振,以获获得较高的刷刷新频率,时时期显示更稳稳定。单片机机的串口与列列驱动器相连连,用来显示示数据。P1口低4位与行驱动动器相连,送送出行选信号号;P1.5~P1.7口则用来发发送控制信号号。P0口和P2口空着,在在有必要的时时候可以扩展展系统的ROM和RAM。图3-1MSSC51单片机最小小系统MSC51单片片机管脚说明明如下:VCC:供电电电压。GND:接地。P0口:P0口口为一个8位漏级开路路双向I/O口,每脚可可吸收8TTL门电流。当P1口的管脚第第一次写1时,被定义义为高阻输入入。P0能够用于外外部程序数据据存储器,它它可以被定义义为数据/地址的第八八位。在FIASH编程时,P0口作为原码码输入口,当当FIASH进行校验时时,P0输出原码,此此时P0外部必须被被拉高。P1口:P1口口是一个内部部提供上拉电电阻的8位双向I/O口,P1口缓冲器能能接收输出4TTL门电流。P1口管脚写入1后,被内部部上拉为高,可可用作输入,P1口被外部下下拉为低电平平时,将输出出电流,这是是由于内部上上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。P2口:P2口口为一个内部部上拉电阻的的8位双向I/O口,P2口缓冲器可可接收,输出出4个TTL门电流,当P2口被写“1”时,其管脚脚被内部上拉拉电阻拉高,且且作为输入。并并因此作为输输入时,P2口的管脚被被外部拉低,将将输出电流。这这是由于内部部上拉的缘故故。P2口当用于外外部程序存储储器或16位地址外部部数据存储器器进行存取时时,P2口输出地址址的高八位。在在给出地址“1”时,它利用用内部上拉优优势,当对外外部八位地址址数据存储器器进行读写时时,P2口输出其特特殊功能寄存存器的内容。P2口在FLASH编程和校验验时接收高八八位地址信号号和控制信号号。P3口:P3口口管脚是8个带内部上上拉电阻的双双向I/O口,可接收收输出4个TTL门电流。当P3口写入“1”后,它们被被内部上拉为为高电平,并并用作输入。作作为输入,由由于外部下拉拉为低电平,P3口将输出电电流(ILL)这是由于于上拉的缘故故。RST:复位输输入。当振荡荡器复位器件件时,要保持持RST脚两个机器器周期的高电电平时间。ALE/PROOG:当访问外外部存储器时时,地址锁存存允许的输出出电平用于锁锁存地址的地地位字节。在在FLASH编程期间,此此引脚用于输输入编程脉冲冲。在平时,ALE端以不变的的频率周期输输出正脉冲信信号,此频率率为振荡器频频率的1/6。因此它可可用作对外部部输出的脉冲冲或用于定时时目的。然而而要注意的是是:每当用作作外部数据存存储器时,将将跳过一个ALE脉冲。如想想禁止ALE的输出可在SFR8EEH地址上置0。此时,ALE只有在执行MOVX,MOVC指令是ALE才起作用。另另外,该引脚脚被略微拉高高。如果微处处理器在外部部执行状态ALE禁止,置位位无效。/PSEN:外外部程序存储储器的选通信信号。在由外外部程序存储储器取指期间间,每个机器器周期两次/PSEN有效。但在在访问外部数数据存储器时时,这两次有有效的/PSEN信号将不出出现。/EA/VPPP:当/EA保持低电平平时,则在此此期间外部程程序存储器(0000HH-FFFFFH),不管是是否有内部程程序存储器。注注意加密方式式1时,/EA将内部锁定定为RESET;当/EA端保持高电电平时,此间间内部程序存存储器。在FLASH编程期间,此此引脚也用于于施加12V编程电源(VPP)。XTAL1:反反向振荡放大大器的输入及及内部时钟工工作电路的输输入。XTAL2:来来自反向振荡荡器的输出。3.2列驱动电电路列驱动电路由集集成电路74HC5595构成。它具具有一个8位串入并出出的移位寄存存器和一个8位输出锁存存器的结构,而而且移位寄存存器和输出锁锁存器的控制制是各自独立立的,可以实实现在显示本本行列数据的的同时,传送送下一行的列列数据,既达达到重叠处理理的目的。图3-2744HC5955结构图表74HHC595的外形及内内部结构如图图3-2所示。它的的输入侧有8个串行移位位寄存器,每每个移位寄存存器的输出都都连接一个输输出锁存器。引引脚SI是串行数据据的输入端。引引脚SCK是移位寄存存器的移位时时钟脉冲,在在其上升沿发发生移位,并并将SI的下一个数数据打入最低低位。74HC5595引脚说明见见表3-1。列驱动电电路见图3-3。表3-1744HC5955引脚说明符号引脚描述Oo~O71~7并行数据输出GND8地Q7’9串行数据输出SRCLR10主复位(低电平平)SRCLK11移位寄存时钟输输入RCLK12存储寄存时钟输输入CE13输出有效(低电电平)SER14串行数据输入VCC16电源移位后的各位信信号出现在各各移位寄存器器的输出端,也也就是输出锁锁存器的输入入端。RCK是输出锁存存器的打入信信号,其上升升沿将移位寄寄存器的输出出打入输出锁锁存器。引脚脚G是输出三态态门的开放信信号,只有当当其为低时锁锁存器的输出出才开放,否否则为高组态态。SCLR信号是移位位寄存器清零零输入端,当当其为低时移移位寄存器的的输出全部为为零。由于SCK和RCK两个信号是是互相独立的的,所以能够够做到输入串串行移位与输输出锁存互不不干扰。芯片片的输出端为为QA~QH,最高位QH可作为多片74HC5595级联应用时时,向上一级级的级联输出出。但因为QH受输出锁存存器的打入控控制,所以还还从输出锁存存器前引出QH,作为与移移位寄存器完完全同步的级级联输出。图3-3列驱动动电路将8片74HCC595进行级连,可可共用一个移移位时钟SCK及数据锁存存信号RCK。这样,当当第一行需要要显示的数据据经过8x8=664个SCK时钟后便可可将其全部移入74HC5595中,此时还还将产生一个个数据锁存信信号RCK将数据锁存存在74HC5595中,并在使使能信号G的作用下,使使串入数据并并行输出,从从而使与各输输出位对应的的场驱动管处处于放大或截截止状态;同同时由行扫描描控制电路产产生信号使第第一行扫描管管导通,相当当于第一行LED的正端都接接高,显然,第第一行LED管的亮灭就取决于74HC5595中的锁存信信号;此外,在在第一行LED管点亮的同同时,再在74HC5595中移入第二二行需要显示示的数据,随随后将其锁存存,同时由行行扫描控制电路将第第一行扫描管管关闭而接通通第二行,使使第二行LED管点亮,以以此类推,当当第十六行扫扫描过后再回回到第一行,这这样,只要扫扫描速度足够够高,就可形形成一幅完整整的文字或图图像。3.3行驱动器器由于4点阵显示示器有16行,为充分分利用单片机机的接口,本本电路中加入入了一个4-16线译码器74LS1154,其输入是是一个16进制码,解解码输出为低低态扫描信号号,它的结构构如图3-4所示。图3-4744LS1544结构图74LS1544引脚说明如如表3-2表3-2符号引脚描述~,~1~11,113~17输出端GND12GND电源地~18~19使能输出端A、B、C、DD20~23地址输出端Vcc24VCC电源正图3-5行驱驱动电路如图3--5所示的行驱驱动电路中,把74LS1154的G1和G2引脚接地,然然后以A、B、C、D四脚为输入入端。就会形形成16种不同的输输入状态,分分别为0000~1111,然后使每每种状态只控控制一路输出出,即会有16路输出。如如果一行64点全部点亮亮,则通过74LS1154的电流将达640mmA,而实际上上,74LS1154译码器提供供不了足够的的吸收电流来来同时驱动64个LED同时点亮,因因此,应在74LS1154每一路输出出端与16x64点阵显示器对应的的每一行之间间用一个三极极管来将电流流信号放大,本本文选用的是是三极管8550。这样,74LS1154某一输出脚脚为低电平时时,对应的三三极管发射极为高电电平从而使点点阵显示器的的对应行也为为高电平。3.4元件清单单在本次设计中,用用到的元件清清单如下表3-3表3-3元件名称数量(个)8×8LED显显示屏16MSC51单片片机174LS1544线译码器174LS5955集成电路874HC2455驱动芯片174HC00与与非门1图3-644个16×16点阵显示屏屏硬件原理图图图3-6为44个点阵显示示屏硬件原理理图,因为市市场上买不到到16×16的点阵显示示屏,所以在现实实中,硬件部部分采用了4块8×8的点阵显示示屏来构成1块16×166LED显示屏.第四章系统程程序的设计显示屏软件的主主要功能是向向屏体提供显显示数据,并并产生各种控控制信号,使使屏幕按设计计的要求显示示。根据软件件分层次设计计的原理,可可以把显示屏屏的软件系统统分为两层;;第一层是底底层的显示驱驱动程序,第第二层是上层层的系统应用用程序。显示示驱动程序负负责向屏体送送显示数据,并并负责产生行行扫描信号和和其他控制信信号,配合完完成LED显示屏的扫扫描显示工作作。显示驱动动器程序由定定时器T0中断程序实实现。系统应应用程序完成成系统环境设设置(初始化化)、显示效效果处理等工工作,由主程程序来实现。从有利于实现较较复杂的算法法(显示效果果处理)和有有利于程序结结构化考虑,显显示屏程序适适宜采用C语言编写。4.1显示驱动动程序显示驱动程序在在进入中断后后首先要对定定时器T0重新赋初值值,以保证显显示屏刷新率率的稳定,1/16扫描显示屏屏的刷新率(帧帧频)计算公公式如下:刷频率(帧频频)=×溢出率=×(4-1)其中f位晶振频频率,t为定时器T0初值(工作作在16位定时器模模式)。然后显示驱动程程序查询当前前燃亮的行号号,从显示缓缓存区内读取取下一行的显显示数据,并并通过串口发发送给移位寄寄存器。为消消除在切换行行显示数据的的时候产生拖拖尾现象,驱驱动程序先要要关闭显示屏屏,即消隐,等等显示数据打打入输出锁存存器并锁存,然然后再输出新新的行号,重重新打开显示示。图4-1为显示驱动动程序(显示示屏扫描函数数)流程图。图4-1.显示示驱动程序流流程图显示驱动程序::多个16*166LED显示演示程程序MCUAT889C51XAL24MHzz//以下程序能能实现多个16*166LED屏的多个字字符显示,显示方式有有整行上移、帘帘入帘出、左左移、右移//#includde"reeg52.hh"#defineeBLKNN8//列锁存器数(=LED显示字数*2)#defineeTOTAAL20//待显示字个个数,本例共20个#defineeCONIIOP1//显示控制口口sbitG==CONIOO^7;//CCONIO..7为154译码器显示示允许控制信信号端口,0时输出,1时输出全为为高阻态.sbitCLLK=CONNIO^6;;//CCONIO..6为595输出锁存器器时钟信号端端,1时输出数据,从1到0时锁存输出出数据.sbitSCCLR=COONIO^55;//CCONIO..5为595移位寄存器器清零口,平时为1,为0时,输出全为0.unsigneedchaaridaatadiispramm[(BLKKN/2)**32]={{0};///显示区缓存,四字共4*32单元///***********显示屏扫描描(定时器T0中断)函数************/voidleeddispplay(vvoid)interrrupt1usiing1{registeerunssigneddcharrm,nn=BLKNN;TH0=00xFc;//设定显示屏屏刷新率每秒秒62.5帧(16毫秒每帧)TL0=00x18;m=CONNIO;//读取当前显显示的行号m=++mm&0xx0f;//行号加1,屏蔽高4位do{n--;;SBUFF=diispramm[m*2++(n/2))*30++n];//送显示数据据whille(!TTI);TTI=00;}whiile(nn);//完成一行数数据的发送G=1;//消隐(关闭闭显示)CONIO&&=0xff0;//行号端口清○CLK=1;//显示数据打打入输出锁存存器CONIO||=m;//写入行号CLK=0;//锁存显示数数据G=0;//打开显示}//4.2系统主程程序本文设计的系统统软件能使系系统在目测条条件下LED显示屏各点点亮度均匀、充充足,可显示示图形和文字字,显示图形形和文字应稳稳定、清晰无无串扰。图形形或文字显示示有静止、移移入移出等显显示方式。系统主程序开始始以后,首先先是对系统环环境初始化,包包括设置串口口、定时器、中中断和端口;;然后以“卷帘出”效果显示图图形,停留约约3s;接着向上上滚动显示“我爱单片机”这5个汉字及一一个图形,然然后以“卷帘入”效果隐去图图形。由于单单片机没有停停机指令,所所以可以设置置系统程序不不断的循环执执行上述显示示效果。单元显示屏可以以接收来自控控制器(主控控制电路板)或或上一级显示示单元模块传传输下来的数数据信息和命命令信息,并并可将这些数数据信息和命命令信息不经经任何变化地地再传送到下下一级显示模模块单元中,因因此显示板可可扩展至更多多的显示单元元,用于显示示更多的显示示内容。图5是系统主程程序流程图。图5.系统主程程序流程图系统主主程序:/********************主函数*************************/voidmaain(vooid){registeerunssigneddcharri,j,,k,l,qq,w;//初始化SCON==0x000;//串口工作模模式0:移位寄存存器方式TMOD=0x01;;//定时器T0工作方式1:16位方式TR0=11;//启动定时器T0CONIO==0x3ff;///CONIOO端口初值IE=0xx82;//允许定时器T0中断//while((1){delay(22000);;///2秒//第一种显示示效果:卷帘出显示示笑脸图案for((i=0;ii<32;ii++){forr(q=0;;q<BLKKN/2;qq++){{disprram[i++q*32]]=Bmp11[5][ii];}iif(i%%2)deelay(1120);}delay(11000);;//卷帘出显示示文字,每次字数为BLKN//2,共显示TOTALL*2/BLLKN次for(w==0;w<TTOTAL**2/BLKKN;w+++){for(i==0;i<332;i+++){forr(q=0;;q<BLKKN/2;qq++){{disprram[i++q*32]]=Bmp[[q+w*BBLKN/22][i];;}iif(i%%2)deelay(1120);}delay(33000);;}//第一种显示示效果:卷帘出显示示笑脸图案for((i=0;ii<32;ii++){forr(q=0;;q<BLKKN/2;qq++){{disprram[i++q*32]]=Bmp11[5][ii];}iif(i%%2)deelay(1120);}delay(11000);;//第二种显示示效果:向上上滚屏,每次BLKN//2个字for((i=0;i<TOTTAL*2//BLKN;;i++)){forr(j=00;j<116;j+++){{ffor(kk=0;kk<15;k++){for(qq=0;q<<BLKN//2;q+++){disppram[kk*2+q**32]==disppram[((k+1)**2+q*332];diispramm[k*2++1+q*332]=disprram[(kk+1)*22+1+q**32];}}}ffor(q==0;q<BBLKN/22;q++)){disprram[300+q*322]=BBmp[q++i*BLKKN/2][[j*2];;disprram[311+q*322]=BBmp[q++i*BLKKN/2][[j*2+11];}ddelay((100);;}}dellay(30000);///滚动暂停}//第一种显示示效果:卷帘出黑屏屏for((i=0;ii<32;ii++){forr(q=0;;q<BLKKN/2;qq++){{disprram[i++q*32]]=0xfff;}iif(i%%2)deelay(1120);}delay(11000);;//第三种显示示效果:左移移出显示for((i=0;i<TOTTAL;ii++){forr(j=00;j<22;j+++)ffor(kk=0;kk<8;kk++){for(ll=0;ll<16;l++){for((q=0;qq<BLKNN/2;q+++){disprram[l**2+q*332]=disprram[l**2+q*332]<<11|diispramm[l*2++1+q*332]>>77;if(q===BLKNN/2-1))disppram[ll*2+1++q*32]]=diispramm[l*2++1+q*332]<<11|Bmmp[i][[l*2+jj]>>(77-k);elseddispraam[l*22+1+q**32]==disppram[ll*2+1++q*32]]<<1||disppram[ll*2+(qq+1)*332]>>77;}}delay((100);;}}delayy(30000);//第一种显示示效果:卷帘出黑屏屏for((i=0;ii<32;ii++){forr(q=0;;q<BLKKN/2;qq++){{disprram[i++q*32]]=0xfff;}iif(i%%2)deelay(1120);}delay(11000);;//第三种显示示效果:右移移出显示for((i=0;i<TOTTAL;ii++){forr(j=22;j>00;j)ffor(kk=0;kk<8;kk++){for(ll=0;ll<16;l++){for((q=0;qq<BLKNN/2;q+++){disprram[l**2+1+qq*32]=disspram[[l*2+11+q*322]>>1|disspram[[l*2+qq*32]<<<7;if(q===0)ddispraam[l*22+q*322]=ddispraam[l*22+q*322]>>1|Bmpp[i][ll*2+j--1]<<((7-k);;elseddispraam[l*22+q*322]=ddispraam[l*22+q*322]>>1|disspram[[l*2+11+(q-11)*32]]<<7;}}delay((100);;}}delayy(30000);//第四种显示示效果:卷帘帘入for((i=0;ii<32;ii++){forr(q=0;;q<BLKKN/2;qq++){dispraam[i+qq*32]==0x000;}if(i%22)dellay(1000);}}}第五章调试试及性能分析析5.1开发环境境介绍程序编写采用KKeil511环境下调试,KeilC51是美国KeilSoftwware公司出品的51系列兼容单单片机C语言软件开开发系统,与与汇编相比,C语言在功能能上、结构性性、可读性、可可维护性上有有明显的优势势,因而易学学易用。用过过汇编语言后后再使用C来开发,体体会更加深刻刻。KeilC551软件提供丰丰富的库函数数和功能强大大的集成开发发调试工具,全Windows界面。另外重要的一点,只要看一下编译后生成的汇编代码,就能体会到KeilC51生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。在开发大型软件时更能体现高级语言的优势。5.2理论性性能分析LED显示屏硬硬件电路只要要硬件质量可可靠,引脚焊焊接正确,一一般无需调试试即可正常工作。软软件部分需要要调试的主要要有显示屏刷刷新频率及显显示效果两部部分。显示屏屏刷新率由定定时器T0的溢出率和和单片机的晶晶振频率决定定,表5-1给出了实验验调试时采用用的频率及其其对应的定时时器T0初值。表5-1显示示平刷新率与与T0初值关系表表(24MHz晶振)刷新率255062.57585100120T0初值0xec780xf63c0xf8300xf97e0xfa420xfb1e0xfbee从理论上来说,24Hz以上的刷新新频率就能看看到稳定的连连续的显示,刷刷新率越高,显显示越稳定,同同时刷新频率率越高,显示示驱动程序占占用的CPU时间越多。试试验证明,在在目测条件下下刷新频率40Hz一下的画面面看起来闪烁烁较严重,刷刷新频率50Hz以上的已基基本察觉不出出画面的闪烁烁,刷新频率率达到85Hz以上时再增增加画面闪烁烁没有明显的的改善。这个方案设计的的16x16的点阵LED图文显示屏屏,电路简单单,成本较低低,且较容易易扩展成更大大的显示屏;;显示屏各点点亮度均匀、充充足;显示图图形或文字稳

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论