【《基于单片机的LED点阵流水字幕硬件和软件设计案例概述》4200字】_第1页
【《基于单片机的LED点阵流水字幕硬件和软件设计案例概述》4200字】_第2页
【《基于单片机的LED点阵流水字幕硬件和软件设计案例概述》4200字】_第3页
【《基于单片机的LED点阵流水字幕硬件和软件设计案例概述》4200字】_第4页
【《基于单片机的LED点阵流水字幕硬件和软件设计案例概述》4200字】_第5页
已阅读5页,还剩9页未读, 继续免费阅读

付费下载

下载本文档

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

文档简介

基于单片机的LED点阵流水字幕硬件和软件设计案例概述目录TOC\o"1-3"\h\u31281基于单片机的LED点阵流水字幕硬件和软件设计案例概述 115611基于单片机的LED点阵流水字幕硬件设计 1101061.1系统硬件总体架构 1315491.2单片机最小系统与说明 26851.316×16点阵的组成及显示原理 394421.4行列驱动模块 547671.4.1列驱动模块74HC138 547411.4.2行驱动模块74HC595 694551.5按键控制模块 7120511.6红外遥控模块 895852基于单片机的LED点阵流水字幕软件设计 9146302.1系统开发环境 9148612.2系统设计流程图 10250732.3按键模块设计流程图 1136942.4显示模块设计流程图 12288492.5红外模块设计流程图 131基于单片机的LED点阵流水字幕硬件设计1.1系统硬件总体架构本次设计采用LED点阵式模块来显示内容,切换不同的功能通过按键与红外遥控器来控制,本次设计所使用到的单片机型号为STC89C52,可以通过按键和红外遥控来实现静止、加减速、闪烁等不同功能,且每个列的发光发射二极管都应该是被分别安装在列到行线和某条列的一个方向交汇处,当其中相对于对应的某条列和行的电流水平行置1电平,某一列置0电平,则那么该发光二极管中相应的发光二极管就会发生明亮。行列驱动74HC595和74HC138分别控制各行列的电路,通过单片机驱动LED点阵显示内容。该系统电路原理图如图1.1所示。图1.1系统原理图1.2单片机最小系统与说明此次设计的主控单片机选择的是STC89C52RC单片机,虽然与51单片机属于一个类别,但它的实际性能使用表现确实更为的强劲。51单片机所具有的功能和资源,本次所使用的单片机也同样具备。STC89C52RC是宏晶公司的增强型MCS-51单片机,此单片机与51单片机相比较的话,不但有着较大的RAM和存储器,并且其高强度计算使用了MCS-51内核,并且为了可以与更多的外部设备和驱动相连接其拥有32个I/O口,8K字节的FLASH存储器可以让其拥有非常多的计算缓存,而其反应速度也因为有521字节的RAM也极大的提高了。并且此单片机的烧录过程十分简便,只需使用TX与RX口,采用与其相对应的编译器就可以快速的将程序烧录进去。是一款价格低廉、使用简便并且性能很高的单片机。STC89C52单片机最小系统原理图如图1.2所示。图1.2单片机最小系统主要特性如下:片上集成512字节RAM、具有看门狗功能、PDIP封装。以下以为STC89C52单片机为例,与ATMEL公司的AT89C52相比,有以下优点:(1)支持STC的2线制软件下载模块使用,下载应用程序更方便;(2)支持6T模式(即在6T模式下,6个机器的时钟周期也就是机器的工作周期);(3)带有P4口,具有更多的I/O;(4)程序存储器拥有更多的擦写寿命;1.316×16点阵的组成及显示原理此次的16×16点阵显示,此次的16×16LED点阵流水字幕显示屏就是通过每一行每一列都是16个单位长度的点阵显示屏来设计的,而16×16就是利用四块8×8的点阵显示屏拼接而成的。先用万用表测出四个8×8点阵的行、列的控制线。行、列各16条线分别连P0、P1口。四个点阵级联方法如图1.3所示。图1.3四个点阵图把00,01相同的行线相连接、把10,11相同的行线相连接、把00,10相同的列线相连接、把01,11相同的列线相连接。最终,00,01的两个列就完全可以被我们当作16×16点阵曲线中的完整列控制线。00,10的一条整数行就成为可以直接用来表示作为16×16点阵的行控制线。8×8点阵的外观图如图1.4所示。图1.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)引脚连接起来到一个高电平。点阵视图和引脚图如图1.5和图1.6所示。图1.5点阵视图图1.6点阵引脚图1.4行列驱动模块1.4.1列驱动模块74HC138列译码所用器件为串并转换器74HC138。如果只利用单片机的端口输出来控制16×16的LED点阵屏显示,需要32个端口。而采用了译码电路后仅仅需要7~9个端口便可实现控制显示。两个74HC138联成4线-16线译码器,锁存器74HC595接74HC138的使能端,实现对74HC138的使能控制,达到锁存功能。74HC138作用的主要原理对一些高性能仓储存贮数据译码,或者一些要求数据传送延迟时间短的存储数据实时传送进行处理译码系统,一般采用的是高性能的仓储存贮仪译码系统中,用这类存贮译码器大大程度改善了存贮译码系统的实际工作效率。在此次系统设计中的作用则为八位二进制译十进制译码器。74HC138电路图和实物图如图1.7和图1.8所示。图1.774HC138电路图图1.874HC138实物图1.4.2行驱动模块74HC59574HC595是一款可以串行输入并行输出并且具有锁存器功能的行驱动器,输出输入端口为它是一个用于可编程控制的串行三态级联输出输入端,也就是有一种可以直接用于控制串行信号输出或用来同时控制下一级联和级联的输出芯片。本系统设计中的作用:LED驱动芯片,八位移位锁存器。74HC595电路图和实物图如图1.9和图1.10所示,其主要优势:(1)高速移位转换器的高速移位信号时钟频率Fmax>25MHz;(2)标准化的串行(SPI)信号接口;(3)CMOS串行信号输出,可以广泛应用于多种电子设备的电源级联;图1.974HC595电路图图1.1074HC595实物图1.5按键控制模块此次设计采用的为实体按键为6个微动开关并联组成,其工作原理就是检测按键按下过程中的高低电平的变化,但由于按下时间及不可抗拒抖动的其他因素会出现误差的情况,所以在编写程序时添加了一道去除抖动的函数,具体为延时消除按键抖动,这个步骤就是检测在实际操作过程中按键按下是否立刻松手确认按下,而不是只是轻轻的抖动,或者是由于物理外力、不是人为主观的去按下了按键导致代码检测到误以为是按下了按键导致误操作,在实际操作使用中这个步骤尤为重要不可缺失。按键控制原理图如图1.11所示。图1.11按键控制电路1.6红外遥控模块红外发射和红外接收是一对,成对使用。发射管是白色的,接收管是黑色的。可以使用三极管搭建接收电路也可以使用比较器来搭建电路,在没有接收到红外信号时,接收管不导通,单片机接收到持续的高电平;当接收管接收到红外信号时,单片机接收到低电平。单片机在接收到红外发射端不同按键不同编码脉冲之后就会开始解析并执行相应预设次脉冲的功能。但是,黑色的红外接收管抗干扰能力比较低,在设计电路的时候一般不选用,而是选用专用的红外接收头,此次用到的型号为国产1838红外接收头。当红外发射端的按下按键后,发射管就会发出一串包含引导码、用户码、按键码等其他脉冲出来,红外探头解析将这些编码翻译成单片机能识别的不同长度的0和1的序列之后,计算出按下按键的预设信息,再执行对应的操作,这样用户就可以远程遥控了。由于通讯部分要处理比较复杂的数据,所以这类电路都是需要单片机支持的。遥控编码格式采用NEC编码方式。红外接收电路如图1.12所示。图1.12红外接收电路2基于单片机的LED点阵流水字幕软件设计2.1系统开发环境一个基于单片机的系统设计的成功与否,不单单需要对硬件电路进行完善的设计与开发,同样重要的是有着非常大作用的是软件部分的设计。此次系统设计主要采用的是C语言完成编程,本系统应用程序的设计和开发过程中所采用的软件是keil5软件,该系统的开发环境支持STC系列调用库函数方式来直接编写自己的应用程序,增加了对程序的移植性,也大大减少了软件方面学习的难度,并且提高了兼容性,更加容易学习掌握,可以大大的提高使用工作的效率。此款软件集语言的编辑、编译和软件的调试集中在一起,功能强大,极大的方便了我们对单片机的开发。本次设计所使用到的为C语言,因为对于刚接触到代码的大学生而言C语言的优点很多,比如代码量小、运行速度快以及功能强大。而本文一方面是基于C语言的速度足够快,其次是C语言可以直接访问硬件,以及代码量小这几点来综合考虑最终使用C语言。Keil5的开发流程步骤如下:(1)根据新建的工程项目,选用合适的单片机和设备型号,对开发环境进行配置;(2)在工程中添加C文件和H文件,并在其中编写程序;(3)对代码进行了编译和调试,最后生成一个可以烧录在单片机上面的hex等目标文件;(4)通过串口和仿真器将目标文件下载到单片机中;2.2系统设计流程图本系统设计的核心工作是在整体的基础上能够实现不同的显示功能,通过对主程序的设计,使整个系统以单片机为核心正常运行。将系统模块化、功能化设计,使得通过简单的按键操作就可以实现想要的显示效果。当通电之后首先系统会自动进行一个初始化,单片机所指的初始化,其实就是程序从头开始跑。比如我们日常生活或学习中应该会遇到电脑死机或者某些机器死机,要让它们重新工作起来我们经常做的就是重启一下。它可以使CPU和其他功能恢复到一个初始状态,而且这个状态会从单片机的main函数开始工作。然后进行一个循环的显示预设的内容,当检测到按键确定按下之后就会执行按键相对应的功能。主函数流程图如图2.1所示。图2.1主函数流程图2.3按键模块设计流程图基于单片机的LED点阵流水字幕设计的按键设计模块在系统通电之后,首先进行的是一个初始化定时器,然后将按键按下,这是进行的一个操作是延时消除按键抖动,这个步骤就是检测在实际操作过程中按键按下是否立刻松手确认按下,而不是只是轻轻的抖动,或者是由于物理外力、不是人为主观的去按下了按键导致代码检测到误以为是按下了按键导致误操作,在实际操作使用中这个步骤尤为重要不可确实。然后检测实体按键确实被使用者进行了按到底部的操作,如果没有完成此操作就保持愿状态,如果确实进行了按到底端的操作就执行相对应的系统切换功能,然后等待松手,如果没有松手就继续检测按键是否按下没如果检测到松手就执行按键功能并结束。按键流程图如图2.2所示。图2.2按键流程图2.4显示模块设计流程图此次的系统设计在接通电源之后先进行初始化,然后进行送入列、行信号,然后延时保持数据,这步操作就是进行一个图形持续的显示,然后关闭显示进行一个图像消隐的操作,如果没有消隐结束,就继续延时保持数据,直到循环到消隐结束,继续检测如果控数据

温馨提示

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

评论

0/150

提交评论