【《基于STC89C52单片机的LED点阵字幕控制系统设计与实现》15000字】_第1页
【《基于STC89C52单片机的LED点阵字幕控制系统设计与实现》15000字】_第2页
【《基于STC89C52单片机的LED点阵字幕控制系统设计与实现》15000字】_第3页
【《基于STC89C52单片机的LED点阵字幕控制系统设计与实现》15000字】_第4页
【《基于STC89C52单片机的LED点阵字幕控制系统设计与实现》15000字】_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

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

文档简介

基于STC89C52单片机的LED点阵字幕控制系统设计与实现目录TOC\o"1-3"\h\u1209967882摘要 119811644121绪论 36963257491.1课题提出的背景及意义 415084709401.2国内外发展现状 418266357451.3论文的研究内容 519882323502基于单片机的LED点阵流水字幕系统分析 713755591302.1系统功能分析 713608379552.2主控芯片的论证与选择 89026691352.3显示模块的论证与选择 1013356695372.4数据传输方式的论证 119513462682.5字模提取软件的论证与选择 1212609743613基于单片机的LED点阵流水字幕硬件设计 1318274567313.1系统硬件总体框架 137541585233.2单片机最小系统与说明 146938114673.316×16点阵的组成及显示原理 16531226593.4行列驱动模块 1816268163083.4.1列驱动模块74HC138 181398949523.4.2行驱动模块74HC595 1818673484463.5按键控制模块 1911993146643.6红外遥控模块 206000471064基于单片机的LED点阵流水字幕软件设计 224085042304.1系统开发环境 222253741514.2系统设计流程图 2218496861964.3按键模块设计流程图 237026222004.4显示模块设计流程图 2421062241945系统整体调试 261895914105.1系统仿真 2617445793695.2功能模块调试 2715512222925.3本章小结 289415870646总结 301595103423参考文献 331864864860附录 35摘要随着我国现代信息社会的进步,针对目前技术研究的现状和现阶段普遍存在的问题,设计了基于单片机的LED点阵流水字幕系统。此次LED点阵模块,它的体积较小,重量偏轻,且它的工作电压和功耗都比较低,这正是其独特性的优点之处所在,它不仅能够实时显示各种数字、文本或者字母,只要我们通过向单片机编程写入一定量的控制器文本并连接LED点阵模块就可以完成。该设计是基于单片机来控制的显示系统,采用了STC89C52单片机为微控制器和两个74HC138列驱动以及两个74HC595行驱动来分别对行和列进行扫描处理,本系统设计由LED点阵模块、按键模块、红外遥控模块、行列驱动模块等构成并且相互配合最终完成了本次基于单片机的LED点阵流水字幕设计,此次设计不仅能对显示内容进行红外遥控正反向的移动,而且可以控制它的速率,并且可以预存三条显示内容,使用切换比传统更为方便。关键词:单片机,点阵,LED,行列驱动,红外遥控1绪论本设计主要是以16×16点阵阵列LED点阵显示屏为主要工艺控制动态系统设计,以一个STC89C52单片机为主要设计工艺控制内容和设计核心,介绍以它的工作为主要设计工艺流程控制动态系统的点阵LED,以及点阵微型电子显示屏的主要工艺控制动态系统设计及其技术研究设计开发工作流程。自动控制系统的应用程序语言需要选择采用先进的汇编语言,采用汇编语言的操作方式对应用程序语言进行代码编辑,通过一种基于自动化的应用程序语言编辑器软件即可来精确地地控制各开关显示器节点,或对应的各个LED开关阳极和LED阴极端在工作时的电压水平,这样我们就可以非常有效地精确地来控制各个开关显示器节点的开关灯光电平亮度明灭。对需要进行显示字符的每个点阵芯片数据不仅可以直接进行自己的手动编写,又甚至可以在一个标准的点阵字库中直接进行自动提取,通过这个点阵芯片用户可以分别通过控制两个系统中的驱动器74HC138和两个系统中的驱动器74HC595等方式来直接进行点阵的显示。想要既显示单个的文字信息或者想要显示不同种类的图形图案的话就可以用到这种电子文字点阵显示屏幕,但是需要注意的一点就是现在只能同时显示单一的文字,而且本设计设计的是16×16点阵流水字幕是使用了四块8×8汉字点阵LED屏幕显示电路模块合并后实现的。本次的数字动态显示全部都是在显示屏的使用,可以轻松地自动实现对各种图形或者其他文字的自动静止、移入和自动转换、前进和后退。本片论文主要描述的是LED点阵流水字幕中显示屏设计的硬件电路、软硬件设计思路以及其余各个电路组成部分的使用工作原理、使用到的电路软件应用程序设计和使用说明方法。LED点阵显示屏因为产品具有系统结构灵活、功耗低、使用寿命长、技术成熟、造价低廉等五大特征,被广泛应用于各种大型社会公共信息、公开新闻发布、公益活动宣传、现场实时自动检测参数、各种重大节庆活动倒计时等室内外广播设备和电视显示屏等场合,如车站、证券公司、体育场馆、公交主干道等。1.1课题提出的背景及意义根据时代的发展进步,目前大量的大型数字电路LED显示器件被广泛的运用到各个场景,如:广告显示屏、数字化产品、可视化产品等等已经被愈来愈多的国家、公司、个人使用到这些显示技术的应用。另外在如今的时代,相较于每个领域业界的要求那些老套的数码管LED显示技术早就不能达到现在的技术标准。基于STC89C52单片机的LED点阵流水字幕设计就是依靠单片机独有的特性,LED点阵的流水字幕显示模块系统就是靠着单片机的文本输出程序,因为这种单片机不单单使用起来非常的容易上手,而且只要通过简单的源代码编译与调试就能够直接使用。不但能输出数字、文本,而且还可以有效的显示出各式各样的图案,控制流水字幕的显示只需要我们通过单片机的代码输出程序,就可以直接通过程序代码非常快速无误的控制显示屏的显示,各行各业的要求通过程序代码操作的不同都是可以达到相应的效果而满足要求。随着时代的进步和发展技术越来越成熟,相较于那些体积偏大、重量也偏大并且输出电压和功耗都很高的显示模块相比,此次研究的LED点阵流水字幕显示模块就显得更像是现代的产物,而这方面特别突出的就是本文所讲述的LED点阵流水字幕显示模块,而且对于现阶段来说,由于我们已经对这类模块的功能有了大致的认知,所以未来这方面的发展方向可以是使用到各种电子设备、仪盘仪表以及智能时代的微小化,因为显示模块与其他设备组合利用才能发挥出最大的效果,也就是我们常说的这类所具备的特点与功能都是在与其他的设备、仪盘仪表相组合才能让其的显示效果得以最好的发挥出来。而且目前的阶段来说大量的显示设备已经成为我们日常生活中不可缺少的一部分,无论是学习和生活中都经常使用到这些显示器件来帮助我们,所以此次设计对于研究点阵显示这方面的钻研、创新和增加日常使用的体验上的意义都非常重大。1.2国内外发展现状LED点阵流水字幕设计中显示系统主要含义指的就它是在数字显示屏上的一种设计应用,因为相对于其他的产品整体发光散热效率低、使用寿命短、僵硬单一、颜色单一、对室内外光环境的变化适应性较差相比此次研究的产品的优点就显而易见了,而且此次系统设计构成的流水字幕显示使用到的点阵字幕系统设计大致指的就是通过许多发光二极管晶体原件作为一个LED点阵像素模块甚至多个LED点阵像素模块为单位所组合而成的。在1980年之后,LED显示屏技术是在世界范围飞速崛起的新型显示技术。而在上世纪末尾之前则是它的成长阶段,这时期还没有发展起来。直到1990年左右才是LED显示屏技术快速崛起的时候,主要是由于全球信息产业需求较大,并且由于信息技术不同领域不断地突破原有的技术,因此LED原材料以及显示屏技术方面也不断地突破进展有了新的成果。二十一世纪以来,LED显示屏技术总体的发展来到了一个基于总体进步稳定提高的并且各个产业都比较完善的时期。而中国1980年之后才正式开始,随着LED电子装备制造工艺和技术的不断完善,在国外也得到了广泛的研究和应用,在中国的改革和开放之后,特别重要的是由于我国进入90年代后,国民经济的高速成长,公众场所需要发布的信息也越来越频繁,所以此时期就需要一种显示器件来适应和过度此阶段的需求,所以在这方面的创新与钻研与各种方面应用层面上均有快速地得到提升。目前的社会上我们所能见到的图像显示技术都是通过时代的发展逐步演变过来的,我们都是到最开始只有非常单调的一种颜色的显示屏,然后再慢慢发展为可以使用到两种颜色的显示屏,最终发展为现在我们所熟知的多种多样的图形文字显示屏技术。自从我国第一代民用LED液晶电视显示产品诞生的这二十余年以来,在我们日常生活和工作中已经能随处可见那些原来在我们看来只能是那些传说中的专业实验室才能研发制造的LED电子显示相关产品,现在逐渐演变发展为一些个人的公司或者部分都可以轻松的进行学习研发并制造出令人满意的产品,已经不需要很强的专业技能就可以进军这个以前很神秘的领域。现如今随着对LED液晶显示的深入研发学习之后,绝大多数的独立LED显示产业工业大量的研发与生产已经和我们的生活密不可分了,再加上时代不断地变化,这些产业也在与时俱进。1.3论文的研究内容一般对于LED点阵流水字幕的设计都是通过编程代码来实现汉字或图案的显示,而且往往显示的内容都是固定的,如需修改显示内容的话就要通过代码来一对一修改,实在是不方便,而本次流水字幕设计充分的解决了这一点,通过在编程与设计环节的改进使得可以预存三组字幕或图案,只需通过按键或红外遥控的点按就可以轻松切换。而且在正常平移显示的基础上进行了改进,可以自由控制速度,通过按键的点按可以使得显示内容速度的加快与减缓,并且可以正反方向的流动,最后的改进是可以使得显示内容闪烁。本文所需要研究的模块正是STC89C52单片机系统基本模块的一部分,即利用单片机STC89C52来驱动显示屏的工作。其中点阵行扫描由一个单片机直接进行驱动,需要点阵行所显示的文件或内容字幕或者图案都是用户自行修改的,也就是用户在标准的字库中进行提取,通过这个芯片来实现对两个74HC138和两个74HC595的驱动进行显示,利用代码的编译与改写可以对点阵显示内容的修改。我们知道单片机的具体操作应用和这部分的电子电路是密不可分的,我们不但需要了解74HC138的列扫描和74HC595的行扫描都是什么样的工作原理,更应当熟悉并完全了解点阵显示屏的电路显示工作原理,还应当适当的了解具体是利用什么来驱动74HC138列扫描和74HC595行扫描的,相较于此类的点阵流水字幕显示屏及其余各式各样的电子显示屏我们都应当有更详细的认知。查阅文献,了解基于单片机的LED点阵流水字幕设计发展概况及趋势,目前主要采用的技术和实现方法,明确本设计的目的和意义,了解STC89C52单片机与LED显示的相关知识。基于单片机的显示软件进行了设计,其中主要内容包括了单片机、点阵屏幕显示、按键遥控和红外遥控控制模块及其微控制器集成电路的整套总体设计等一些基于系统相关硬件的整套总体设计框架。而系统软件设计,包括主要模块的程序流程、程序实现、调试等。2基于单片机的LED点阵流水字幕系统分析基于单片机的LED点阵流水字幕设计是随着社会需求发展而出现的一种显示模块,该系统实用性高、操作简便、功能强大、具有良好的稳定性的同时也兼顾到了价格。参考了国内外的LED点阵流水字幕设计的现阶段发展前景,于是就有了本次设计的流水字幕系统。本次的设计可以非常优秀的满足现阶段人们对点阵显示系统方便、快捷、便宜、性能的要求。2.1系统功能分析随着现代信息社会的进步,传统数码管式液晶显示器已经远远无法满足各种工业的需要,所以针对目前技术研究的现状和现阶段普遍存在问题,设计了基于单片机的LED点阵流水字幕系统。而且越来越多的国家和地方都需要使用应用中的显示功能。系统方框图如图2.1所示。图2.1系统方框图严格某种意义上来说,对于此次的流水字幕设计,想要实现内容的显示就只需要对那些需要发光的显示节点进行同时控制图案或者文字的每一显示节点,让其器件所处理的位置相同而适合的LED发光器件就能进行静态发光,这时就一定会自动呈现出我们可以预期的显示效果,这种器件能够同时自动控制各个显示节点的静态发光指示灯的点亮和熄灭的显示方式,则为静态发光驱动期间显示的一种方式。此次设计的16×16点阵显示屏实际上是由四个8×8的点阵构成的,虽然单片机的锁存器和输出端口也够用,但是在实际生活中我们往往见到的都是非常庞大的点阵显示屏,尺寸甚至是锁存器的上百上千倍,如果还是这样设计使用锁存器的话就会花费非常庞大的成本,这是非常不划算的。因此目前在实践中人们使用的数字显示屏几乎都不是直接采用该处理技术直接进行工业设计,而是直接采用了另外一种被人们称之为用于动态图像扫描的数字显示处理技术。如果想要很多行和列都同时共用一套驱动器的话,动态扫描就可以很好的实现这样的功能,这样的动态扫描可以很好的实现逐行燃亮。对于16×16的LED点阵模块来看,对所处同一行与所处同一列的各行各列的发光管的控制的方法,就是把同一行阳极相连,并且同一列阴极相连,在将第一行的LED点阵亮灭送出之后立刻将其数据锁存,然后选通让其熄灭之前点亮些许时间;之后对第二行的数据进行同样的操作,对其余行也进行同样的操作直至第16行操作进行之后再重新对第一行执行此操作。而由于我们使用人眼平时能够捕捉到的图像中在闪烁时的频率通常可以直接达到每秒24张以上的闪烁速度,我们就经常会基于视觉暂留的现象来控制观看显示屏上所有的图像并出现流畅的闪烁画面。当我们所经常使用的自动扫描图像显示软件模块就是为了对之后扫描图形增加行列的时候,只需要使用每行每列的一个驱动器就足以使得各行相同文件名称下的列都会共享一个行或列驱动器。单片机的文字数据排放存储器一般都指的是直接存储着屏上显示的文字数据。在传送显示数据过程中你需要把每一列中所有的显示数据都直接从行传送出来给在每一行中所有相应的一个列数据驱动器。由一个控制电路向一系列驱动器端口传输的控制数据信号,可以自由选择进行并列或者串行。2.2主控芯片的论证与选择方案一:AT公司推出的AT8051系列,片内含有FLASH存储器则为此系列单片机的最大特点,在我们使用用途上带来很大的便利,正是因为有此特点的原因,所以对程序代码的修改从在开发之初就可以进行,于是系统整体设计的时间周期就极大的缩短了,但是即使设计时间周期缩短了却不影响整体的工作性能,开发过程中能最大限度的准确保存重要信息,以至于如果遭遇了意外停电或电源损坏都不会对内部信息的储存造成影响。CPU就相当于单片机的大脑,还可以完成对指令的提取、解码和执行等一系列复杂操作。而且AT单片机系列大多用的是ISP下载方式,并且内部没有自带EEPROM存储空间,但是虽然此系列单片机可以在开发过程中很容易的进行代码的改写,但是AT只能用编程器烧录,十分的不方便后期的修改,基于本次设计的考虑此次不使用此系列的单片机。方案二:使用89C51单片机,此种单片机分别配备4K字节闪存存储器和2K字节快闪存储器,它们都具有一个功耗低但是性能高的特点,是可编程可擦写只读存储器的微控制器,同时,它的EEPROM可以重复擦除上千次。在整个单片机市场行业中,51单片机目前具有非常大的技术优势。STC等产品基本上是完全兼容AT的各型号产品,可以做到pintopin兼容,方便原本使用AT产品的方案直接替换成STC的产品。STC还进行了诸多改进,批量价格也相当有优势。STC单片机内置有带2K字节的EEPROM字节存储数据空间,AT该单片的主机没有内置的带字节EEPROM字节存储数据空间。STC多用于串口数据的下载,而AT则多用ISP下载方式。STC的外设功能更多一点,其次编程方式有区别,STC支持ISP,AT只能用编程器烧录,工作电压也有区别,STC范围更广一些:3.3~5.5V;STC内存要大一些;STC定时器比AT多一个,有3个。方案三:使用89C52单片机,尽管89C51系列单片机和AT系列单片机相比已经有很大的优势了,且本款单片机和51单片机同属一类,但确实是51单片机的改型和加强版,51单片机所具有的功能和资源,本次所使用的单片机也同样具备。STC89C52RC是宏晶公司的增强型MCS-51单片机,此单片机与51单片机相比较的话,不但有着较大的RAM和存储器,并且其高强度计算使用了MCS-51内核,并且为了可以与更多的外部设备和驱动相连接其拥有32个I/O口,8K字节的FLASH存储器可以让其拥有非常多的计算缓存,而其反应速度也因为有521字节的RAM也极大的提高了。并且此单片机的烧录过程十分简便,只需使用TX与RX口,采用与其相对应的编译器就可以快速的将程序烧录进去。是一款价格低廉、使用简便并且性能很高的单片机。综上所述,通过这三种芯片的综合比较,最终选择方案三的单片机作为此次系统的主控芯片,既能使用功能较多的最小系统,也能达到最好的效果。STC89C52实物图如图2.2所示。图2.2STC89C52实物图2.3显示模块的论证与选择而16×16就是通过直接利用四个8×8点阵的图形显示屏模块来对它进行图形拼接。只需要将各行各列的高低电平分别与此次设计的点阵各阳极与阴极相连接,这样也是因为我们如果需要控制各行各列的驱动器的话就需要依赖单片机的特性来进行,通过赋予行列不同的高电平,并且需要对一个相对应的行列进行低电平,那么这个相对应的高电平LED就是显示发光,就可以很好地实现了我们在设计中想要能够让显示模块所需要显示的内容。而在实际应用中点亮LED的操作过程中通常每次都会遇到两种不同的显示模式,它们分别是静态扫描显示方式与动态扫描显示方式这两种。方案一:采用静态显示方式,我们如果想要设计的点阵阵列进行显示的话就可以通过以一种静态扫描显示的方式来利用单片机的程序控制的各种特性来点亮阵列。所以事实上不管最终我们想要电路显示我们想要的文字或者图案,仅通过控制显示的图形或字幕在电路上的交叉点就足以达到我们的目的,目前对这种方法我们叫做静态显示,但此种控制系统还仍然存在着许多的技术缺点,由于目前采用单片机的两个I/O口显示控制系统资源相对较少,所以当目前显示系统模块设计中的LED点阵式静态显示屏庞大时,单片机却根本没有什么办法能够保证能有足够多的I/O口同时用来进行显示控制。而此次基于八位单片机的LED点阵流水字幕设计共有256个放光二极管组成,仅依靠单片机的端口的话此次就需要32个锁存器,这样的设计是不合理的,我们在日常生活中经常能看到各种各样的又薄又大的显示屏,如果都采用这样的设计那么需要的锁存器数量巨多,显然这样设计非常的不合理,此次设计也不例外的选择来另一种更为合理的设计方式。方案二:本设计使用一种动态系统扫描点阵显示的设计方式,因为此次的基于单片机的LED点阵流水字幕系统所有的需要进行设计的点阵模块序列数量均设定为16×16设计,此次的LED显示设计中需要的点阵模块相对于普通显示设计来说数量比较多,所以就必须充分依靠这个芯片来快速扩展整个基于单片机的显示终端,为了非常有效的解决现阶段点阵显示中静态扫描在各种工业设计中占用较多的I/O口以及资源的复杂问题,此次的动态扫描已经非常有效的解决了静态扫描所带来的各种问题。只需对各行各列的点阵模块进行快速的循环点亮这个操作就可以非常迅速并且高效的使得每一个点阵都可以共用一列行驱动器和一列列驱动器。对于此次的16×16点阵驱动系统的结构设计来说,将使在LED点阵的每个列与行和列与主驱动器的行相接。将两个74HC138联成4线-16线的点阵编译器可以作为一个行列的点阵译码器,锁存器74HC595接74HC138的使能端,实现对74HC138的使能控制,达到锁存功能。行的每个驱动通过编译器在其中将所选中的这一列中每个点阵16个发光二极管亮灯消灭的正常情况。以此结果为计算依据依次类推,这样反复地多次点亮,由于屏幕出现了一个人眼的局部视觉瞬间停留运动现象(每秒24次以上),只要屏幕运转时的速度能够达到规定足够快,这样我们就已经完全能够清晰地直接看到该显示屏所需要呈现出的稳定而又清晰的文字信息内容。综上所述,最终本次设计采用的显示方式为动态显示方式,这样的设计方式可以解决此次设计LED点阵数目较多的问题。2.4数据传输方式的论证方案一:采用并行传输数据,指的是在传输过程中有很多数据位同时在各种设备之中同时进行数据的传输,一般一个字符是由很多二进制数表示,如用ASCII码编码的符号是由8位二进制数表示的,则并行传输ASCII编码符号就需要8个传输信道,使表示一个符号的所有数据位能同时沿着各自的信道并排的传输。这种传输方式优点是发送速度快,但是缺点是传输距离短,并且资源占用多。很明显这种传输方式一方面大大的增加了此次设计的成本,在一般数量很小的点阵中可以使用这样的传输方式,可是本次如果使用这样的传输方式就会造成资源浪费、并且行列驱动器的数量使用量非常大,十分的不合理,所以此次采用另外一种更为合理的方式。方案二:采用串行传输数据,此传输方式大大弥补来并行传输的不足,一方面使用串行传输这种方式可以大大契合74HC595的元件特点,这样的话如果想要传输数据就非常便捷,只需一根连接单片机某个I/O口就可以一次性的将一位一位传送到行驱动器中的数据在检测到上升沿之后瞬间输出数据,就轻松实现对点阵的控制,大大节约了成本。但是其也有很大的缺点,就是每行的数据只能等待全部传送结束之后才开始显示。这样传输的时间就极大的增加来,所以在编写代码和扫描周期都足够的状态下这样的传输方式会最终使得LED显示屏的亮度不能达到预期的效果,所以为了解决准备和显示阶段时间跨度较长的问题此次设计采用来重叠处理的解决办法,在前一行点亮显示的时候就立刻传输下一行的数据,这样极大的缩短了传输时间较长的问题。而此次选择的74HC595也同时拥有锁存器的功能,并且串行输入并行输出,这也使得重叠处理的方法得以实现。综上所述,此次设计采用串行传输数据的方式最为恰当。2.5字模提取软件的论证与选择字符提取软件,这个作用就是将输入的字符或图案在我们调试好输出的代码格式之后就可以非常迅速的输出我们想要的结果,而目前市面上的字模生成软件都大同小异,没有太大的差别,所以本次也是选择了本人使用过比较熟悉的一款字模生成软件PctoLCD2002,调试好格式之后只需要输入字符就可以生成想要的字符代码。以此次设计中的16×16点阵显示屏中的“点”为例。字模软件如图2.3所示。图2.3字模软件示意图3基于单片机的LED点阵流水字幕硬件设计3.1系统硬件总体架构本次设计采用LED点阵式模块来显示内容,切换不同的功能通过按键与红外遥控器来控制,本次设计所使用到的单片机型号为STC89C52,可以通过按键和红外遥控来实现静止、加减速、闪烁等不同功能,且每个列的发光发射二极管都应该是被分别安装在列到行线和某条列的一个方向交汇处,当其中相对于对应的某条列和行的电流水平行置1电平,某一列置0电平,则那么该发光二极管中相应的发光二极管就会发生明亮。行列驱动74HC595和74HC138分别控制各行列的电路,通过单片机驱动LED点阵显示内容。该系统电路原理图如图3.1所示。图3.1系统原理图3.2单片机最小系统与说明此次设计的主控单片机选择的是STC89C52RC单片机,虽然与51单片机属于一个类别,但它的实际性能使用表现确实更为的强劲。51单片机所具有的功能和资源,本次所使用的单片机也同样具备。STC89C52RC是宏晶公司的增强型MCS-51单片机,此单片机与51单片机相比较的话,不但有着较大的RAM和存储器,并且其高强度计算使用了MCS-51内核,并且为了可以与更多的外部设备和驱动相连接其拥有32个I/O口,8K字节的FLASH存储器可以让其拥有非常多的计算缓存,而其反应速度也因为有521字节的RAM也极大的提高了。并且此单片机的烧录过程十分简便,只需使用TX与RX口,采用与其相对应的编译器就可以快速的将程序烧录进去。是一款价格低廉、使用简便并且性能很高的单片机。STC89C52单片机最小系统原理图如图3.2所示。图3.2单片机最小系统主要特性如下:片上集成512字节RAM、具有看门狗功能、PDIP封装。以下以为STC89C52单片机为例,与ATMEL公司的AT89C52相比,有以下优点:(1)支持STC的2线制软件下载模块使用,下载应用程序更方便;(2)支持6T模式(即在6T模式下,6个机器的时钟周期也就是机器的工作周期);(3)带有P4口,具有更多的I/O;(4)程序存储器拥有更多的擦写寿命;3.316×16点阵的组成及显示原理此次的16×16点阵显示,此次的16×16LED点阵流水字幕显示屏就是通过每一行每一列都是16个单位长度的点阵显示屏来设计的,而16×16就是利用四块8×8的点阵显示屏拼接而成的。先用万用表测出四个8×8点阵的行、列的控制线。行、列各16条线分别连P0、P1口。四个点阵级联方法如图3.3所示。图3.3四个点阵图把00,01相同的行线相连接、把10,11相同的行线相连接、把00,10相同的列线相连接、把01,11相同的列线相连接。最终,00,01的两个列就完全可以被我们当作16×16点阵曲线中的完整列控制线。00,10的一条整数行就成为可以直接用来表示作为16×16点阵的行控制线。8×8点阵的外观图如图3.4所示。图3.4点阵外观图8×8点阵每个列的发光发射二极管都被分别安装在行线和列线的一个方向交汇处,当对应的某条列和行的电流水平行置1电平、列置0电平,则那么该发光二极管中相应的发光二极管就会发生明亮;若要将第一个引脚端连接点亮,则1脚需要接一个高电平,而a接低电平,于是第一个引脚端连接点亮了;如果我们只是想把第一行引脚连接点亮,则第1脚应该需要先连接到一个列的高电平,而(a、b、c、d、e、f、g、h)这些引脚都需要连接起来到一个列的低电平;若要将第一列引脚点亮,则第a脚需要接到一个低电平,而(1、2、3、4、5、6、7、8)引脚连接起来到一个高电平。点阵视图和引脚图如图3.5和图3.6所示。图3.5点阵视图图3.6点阵引脚图3.4行列驱动模块3.4.1列驱动模块74HC138列译码所用器件为串并转换器74HC138。如果只利用单片机的端口输出来控制16×16的LED点阵屏显示,需要32个端口。而采用了译码电路后仅仅需要7~9个端口便可实现控制显示。两个74HC138联成4线-16线译码器,锁存器74HC595接74HC138的使能端,实现对74HC138的使能控制,达到锁存功能。74HC138作用的主要原理对一些高性能仓储存贮数据译码,或者一些要求数据传送延迟时间短的存储数据实时传送进行处理译码系统,一般采用的是高性能的仓储存贮仪译码系统中,用这类存贮译码器大大程度改善了存贮译码系统的实际工作效率。在此次系统设计中的作用则为八位二进制译十进制译码器。74HC138电路图和实物图如图3.7和图3.8所示。图3.774HC138电路图图3.874HC138实物图3.4.2行驱动模块74HC59574HC595是一款可以串行输入并行输出并且具有锁存器功能的行驱动器,输出输入端口为它是一个用于可编程控制的串行三态级联输出输入端,也就是有一种可以直接用于控制串行信号输出或用来同时控制下一级联和级联的输出芯片。本系统设计中的作用:LED驱动芯片,八位移位锁存器。74HC595电路图和实物图如图3.9和图3.10所示,其主要优势:(1)高速移位转换器的高速移位信号时钟频率Fmax>25MHz;(2)标准化的串行(SPI)信号接口;(3)CMOS串行信号输出,可以广泛应用于多种电子设备的电源级联;图3.974HC595电路图图3.1074HC595实物图3.5按键控制模块此次设计采用的为实体按键为6个微动开关并联组成,其工作原理就是检测按键按下过程中的高低电平的变化,但由于按下时间及不可抗拒抖动的其他因素会出现误差的情况,所以在编写程序时添加了一道去除抖动的函数,具体为延时消除按键抖动,这个步骤就是检测在实际操作过程中按键按下是否立刻松手确认按下,而不是只是轻轻的抖动,或者是由于物理外力、不是人为主观的去按下了按键导致代码检测到误以为是按下了按键导致误操作,在实际操作使用中这个步骤尤为重要不可缺失。按键控制原理图如图3.11所示。图3.11按键控制电路3.6红外遥控模块红外发射和红外接收是一对,成对使用。发射管是白色的,接收管是黑色的。可以使用三极管搭建接收电路也可以使用比较器来搭建电路,在没有接收到红外信号时,接收管不导通,单片机接收到持续的高电平;当接收管接收到红外信号时,单片机接收到低电平。单片机在接收到红外发射端不同按键不同编码脉冲之后就会开始解析并执行相应预设次脉冲的功能。但是,黑色的红外接收管抗干扰能力比较低,在设计电路的时候一般不选用,而是选用专用的红外接收头,此次用到的型号为国产1838红外接收头。当红外发射端的按下按键后,发射管就会发出一串包含引导码、用户码、按键码等其他脉冲出来,红外探头解析将这些编码翻译成单片机能识别的不同长度的0和1的序列之后,计算出按下按键的预设信息,再执行对应的操作,这样用户就可以远程遥控了。由于通讯部分要处理比较复杂的数据,所以这类电路都是需要单片机支持的。遥控编码格式采用NEC编码方式。红外接收电路如图3.12所示。图3.12红外接收电路4基于单片机的LED点阵流水字幕软件设计4.1系统开发环境一个基于单片机的系统设计的成功与否,不单单需要对硬件电路进行完善的设计与开发,同样重要的是有着非常大作用的是软件部分的设计。此次系统设计主要采用的是C语言完成编程,本系统应用程序的设计和开发过程中所采用的软件是keil5软件,该系统的开发环境支持STC系列调用库函数方式来直接编写自己的应用程序,增加了对程序的移植性,也大大减少了软件方面学习的难度,并且提高了兼容性,更加容易学习掌握,可以大大的提高使用工作的效率。此款软件集语言的编辑、编译和软件的调试集中在一起,功能强大,极大的方便了我们对单片机的开发。本次设计所使用到的为C语言,因为对于刚接触到代码的大学生而言C语言的优点很多,比如代码量小、运行速度快以及功能强大。而本文一方面是基于C语言的速度足够快,其次是C语言可以直接访问硬件,以及代码量小这几点来综合考虑最终使用C语言。Keil5的开发流程步骤如下:(1)根据新建的工程项目,选用合适的单片机和设备型号,对开发环境进行配置;(2)在工程中添加C文件和H文件,并在其中编写程序;(3)对代码进行了编译和调试,最后生成一个可以烧录在单片机上面的hex等目标文件;(4)通过串口和仿真器将目标文件下载到单片机中;4.2系统设计流程图本系统设计的核心工作是在整体的基础上能够实现不同的显示功能,通过对主程序的设计,使整个系统以单片机为核心正常运行。将系统模块化、功能化设计,使得通过简单的按键操作就可以实现想要的显示效果。当通电之后首先系统会自动进行一个初始化,单片机所指的初始化,其实就是程序从头开始跑。比如我们日常生活或学习中应该会遇到电脑死机或者某些机器死机,要让它们重新工作起来我们经常做的就是重启一下。它可以使CPU和其他功能恢复到一个初始状态,而且这个状态会从单片机的main函数开始工作。然后进行一个循环的显示预设的内容,当检测到按键确定按下之后就会执行按键相对应的功能。主函数流程图如图4.1所示。图4.1主函数流程图4.3按键模块设计流程图基于单片机的LED点阵流水字幕设计的按键设计模块在系统通电之后,首先进行的是一个初始化定时器,然后将按键按下,这是进行的一个操作是延时消除按键抖动,这个步骤就是检测在实际操作过程中按键按下是否立刻松手确认按下,而不是只是轻轻的抖动,或者是由于物理外力、不是人为主观的去按下了按键导致代码检测到误以为是按下了按键导致误操作,在实际操作使用中这个步骤尤为重要不可确实。然后检测实体按键确实被使用者进行了按到底部的操作,如果没有完成此操作就保持愿状态,如果确实进行了按到底端的操作就执行相对应的系统切换功能,然后等待松手,如果没有松手就继续检测按键是否按下没如果检测到松手就执行按键功能并结束。按键流程图如图4.2所示。图4.2按键流程图4.4显示模块设计流程图此次的系统设计在接通电源之后先进行初始化,然后进行送入列、行信号,然后延时保持数据,这步操作就是进行一个图形持续的显示,然后关闭显示进行一个图像消隐的操作,如果没有消隐结束,就继续延时保持数据,直到循环到消隐结束,继续检测如果控数据制位增加就继续执行相对应的图像显示。显示流程图如图4.3所示。图4.3显示流程图4.5红外模块设计流程图此次使用到的红外接收端为国产1838红外接收器,遥控器的作用就是我们所说的红外发射端,通过点按遥控器上不同的按键就会对红外接收端发出一串包含引导码、用户码、按键码等其他一系列的脉冲出来,红外探头解析将这些编码翻译成单片机能识别的不同长度的0和1的序列之后,计算出按下按键的预设信息,再执行对应的操作,这样用户就可以远程遥控了。红外遥控流程图如图4.4所示。图4.4红外遥控流程图5系统整体调试5.1系统仿真本设计中使用的是一个采用C语言进行编写的应用程序,在将所有的程序代码都写好之后,然后经过简单的编译工作完成后,如果我们发现了应用程序代码方面存在问题就即使进行修正,最终将已经调试好的应用程序代码写入一台单片机中时,首先我们需要把这个程序代码文件编译生成一个hex文件,然后再直接下载到整个单片机中。首先在proteus的仿真软件中双击单片机,把刚才产生的hex文件直接下载到单片机中,运行系统。这时候如果发现不能进行仿真或者出现其他的错误,就要搜查到底是哪里出现了问题,然后再继续调试。当系统调试成功时,运行系统,就会显示第一条默认的字幕图形,然后点击不同的按钮功能观察是否能正常运行各个功能按键。在对于proteus等等仿真处理软件中对于STC89C52、74HC138、74HC595等仿真芯片及LED等的显示器都已经能够正常地启动运行且完全清晰显示出并得到了我们所想要能够达到的仿真效果。基于单片机的LED点阵流水字幕仿真图如图5.1所示。图5.1仿真图结论:通过系统仿真可以观察到此次的代码设计与硬件是可以正常工作的,并且能够实现字幕的显示,并且功能正常。5.2系统整体调试由于本次设计用的是万用板,所以在焊接的时候就会更加灵活多变,所以需要提前规划好每个元器件的位置,避免最终剩余的空间太小不足以焊下剩余的元件或者太近使得功能不能够很好的呈现。首先准备好所用到的元器件以及电烙铁、国标焊锡丝等专用焊接材料,根据自己提前布局焊接的安排,开始着手整体电路的焊接调整。将元器件按照相应位置进行放置并焊接,尤其需要注意的是某些元器件的正负极问题,一旦焊接错误,就会导致系统不能够正常运行。焊接后的实物图如图5.2和图5.3所示。图5.2实物图正面图5.3实物图反面在仿真之后将所有电子元件焊接到电路上之后仔细进行检查,注意不要焊接错误,并且通过观察了解到系统是正常运行的,这时就开始通过点按不同的按键和红外遥控来检测功能是否正常,以及是否能正确的显示所设置的内容,所设置的功能有对字幕静止显示、正反转显示、单字闪烁显示、切换预设三段内容并且加减速功能全部都没有问题。实物预设内容演示结果和流水字幕效果演示如图5.4和图5.5所示。图5.4实物图图5.5流水字幕效果实物图LED点阵模块的调试,首先我们需要观察焊接电路是否完整,由于本次设计用的是万用板,所以在焊接的时候就会更加灵活多变,所以需要确保在焊接中发现没有任何错误,之后通过一个编程烧录器把已经成功进行编译完的编程代码通过烧录器放到了STC89C52单片机内,最后接通电源。通过USB进行供电,按下LED点阵显示屏的开关,观察16×16LED点阵显示屏的每个按键显示是否正常按键显示,正常按键显示后,说明显示开关电路正常,之后依次反复按下开关,观察LED显示器每个按键的具体工作原理功能与查看LED点阵显示屏按键是否正常。本设计还可以通过红外遥控来代替实体按键的功能,在经过系统测试之后可以观察到系统的功能与焊接调试都可以正常的实现预期的效果,之后就是开始测试此次设计的红外遥控模块是否正常,通过点按预设的6个按键可以观察到各项功能指标都是正常的,所以此次的红外遥控在经过前期的调试与后期的总体整合协调下是可以正常使用并且能够达到预期的目标的。红外遥控器如图5.6所示。图5.6红外遥控器5.3本章小结本章是系统调试部分,也是设计的最后一部分,是实现所有功能的重要步骤,通过前面所有的设计与调试在本章进行一个综合实践,是测试系统的重要流程。在通过系统仿真与软件编译正确无误后,通过认真仔细的进行对电子元件的焊接与调试后最终成功的实现了此次的设计,完成此次的设计最终不仅可以对流水字幕进行显示,并且可以使其静止、左右移动、加减速、闪烁,并且可以通过按键和红外遥控进行切换三段预设的内容,这些功能都完整并且成功的实现。6总结本基于单片机的流水字幕设计中我们采用了常见汇编语言程序的设计,这样才能够成功地达到LED点阵式显示屏上的流水字幕。在设计过程中所采用的控制芯片主要有STC89C52、74HC595、74HC138及4个8×8LED点阵显示器。其主要功能是:可以显示字幕或图案、滚动字幕可以左右方向的移动、可以预存三条显示的内容通过按键及红外遥控一键切换、可以加减速、可以闪烁。其特征:硬件结构简单、应用广泛、工作效率高、价格低廉。本次设计的基于单片机的LED点阵流水字幕进行设计性测试仿真,并且能清晰地看到文字的滚动显示,画面相对稳定、流畅。有时候候会出现一个字符串的显示不全部的现象,我觉得是因为程序在时间范围内进行的控制没有办法做得足够好。但代码编程的一个整体逻辑思维还是建立在正确的运行轨迹上的,只需要在大致正确的方向上再将代码中的错误进行找到修改以及补充,然后再将代码进行简写及优化最终达到最优的方案,这样方便我们观察修改代码,以有助于我们理解,电路设计也更能轻松掌握,尤其特别是在进行焊接和调试的过程中,我们首先需要考虑此次设计的板子的实际大小,过大就可能会直接造成自身资源不能良好地利用,太小就会导致电子元件位置不合理,还需要注意电子元件的正反方向是否摆正,否则一旦开始焊接出现方向错误就会导致后期处理非常麻烦,也不能出现飞线等常见错误,同时也要合理的设置线的走向位置,避免后期处理缠绕在一起的尴尬情况,最终再一步步的完成调试和检验。完成本次设计后,我们既明白了各种流水字幕的基本安装工作使用原理,对各种单片机以及其他外部电子元器件也对此有了进一步的认识理解,对目前市场上各种电子元器件的基本价格也对此有了进一步的认识了解,也对各种电子点阵图和广告牌等各种电子广告显示屏的基本安装工作和使用原理也对此有了进一步的了解掌握。同时,在深入考虑重要问题的总体设计框架方面也有了更深的理解,对于此组成部分的产品总体设计,在我们最初在进行总体设计的那个早期阶段就已经完善了一个大致的产品总体设计框架。通过本次基于单片机的LED点阵流水字幕的设计,理论知识的学习和现场实际设计

温馨提示

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

评论

0/150

提交评论