基于AT89C5151的8×8点阵LED数码字符显示器的设计
- 格式:doc
- 大小:509.00 KB
- 文档页数:67
目 录 第一章 引 言 ........................................................ 1 第二章 方案选择及总体设计 ........................................... 3 2.1 方案确定 .................................................... 3 2.1.1 功能要求 ............................................... 3 2.1.2 方案确定 ............................................... 3 2.2 器件选择 .................................................... 3 第三章 控制系统硬件设计 ............................................. 4 3.1 整体模块设计 ................................................ 4 3.2 单片机最小系统设计 .......................................... 4 3.2.1 晶振电路设计 .......................................... 4 3.2.2 复位电路设计 ........................................... 5 3.3 驱动电路设计 ................................................ 6 3.4 LED点阵显示设计 ............................................. 7 第四章 控制系统软件设计 ............................................ 10 4.1 软件设计思想 ............................................... 10 4.2 主程序流程图 ............................................... 11 第五章 系统仿真及性能分析 .......................................... 12 5.1 软件系统仿真 ............................................... 12 5.2 硬件仿真结果分析 .......................................... 12 第六章 总结致谢 .................................................... 15 第七章 参考文献 .................................................... 17 附 录 ............................................................. 18 附录A 硬件结构图 .............................................. 18 附录B 主程序清单 .............................................. 18 附录C 元件清单 ................................................ 22
第一章 引言 LED是光二极管LIGHT EMINTTING DIODE的英文缩写,是一种直接能将电能转化为可见光的半导体。LED点阵是由发光二极管排列组成的显示器件,在日常生活中随处可见,其发光类型属于冷光源,效率及发热量是普通发光器件难以比拟的。它采用低电压扫描驱动,具有耗电少、使用寿命长、成本低、亮度高、故障少、视角大、可视距离远、可靠耐用、应用灵活、安全、响应时间短、绿色环保、控制灵活等特点。随着社会经济的不断进步,人们对LED显示器的认识不断加深,其应用领域越来越广。 本设计是基于AT89C5151的8×8点阵LED数码字符显示器的设计,LED点阵显示屏作为一种新兴的显示器件,是由多个独立的LED发光二极管封装而成. LED点阵显示屏可以显示数字或符号, 通常用来显示时间、速度、系统状态等。本文讲述了基于AT89C51单片机8×8 LED数码字符显示器的基本原理、硬件组成与设计,Proteus软件仿真,程序设计等基本环节与相关技术。 LED电子显示屏具有所显内容信息量大,外形美观大方,操作使用方便灵活。适用于火车,汽车站,码头,金融证券市场,文化中心,信息中心体育设施等公共场所。该项目广泛涉及了计算机及电子技术中的电源技术,单片机技术,数据通讯技术,显示技术,存储技术,系统软件技术,接口及驱动等技术。 本设计是8×8点阵LED数码字符显示器的设计。整机以美国ATMEL公司生产的40脚单片机AT89C51为核心,介绍了以它为控制系统的LED点阵电子显示屏的动态设计和开发过程。通过该芯片控制一个驱动器来驱动显示屏显示,该电子屏可以各种文字或单色图像,采用动态显示,使得图形或文字能够实现静止、移入移出等多种显示方式。 第二章 方案选择及总体设计 2.1 方案确定 2.1.1 功能要求
1、采用MCS-51单片机作为微处理器。 2、设计一个8×8点阵LED数码字符显示器。 3、在目测条件下LED显示屏各点亮度均匀、充足、稳定、清晰无串扰。 4、动态显示“8”“0”“5”“1”几个字符。
2.1.2 方案确定 采用AT89C51单片机作为微处理器,将共阳极二极管用共阴型接法连接成8×8点阵LED数码字符阵列,通过程序控制,采用动态显示,建立字符库“元”“旦”“快”“乐”。
2.2 器件选择 微处理器采用AT89C51系列单片机,AT89C51单片机是这几年在我国非常流行的单片机,是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM—Flash Programmable and Erasable Read Only Memory)高性能单片机,可擦除只读存储器可以反复擦除100次,具有低功耗、高性能的特点,并且可与工业标准的MCS—51指令集和输出管脚相兼容,对于本设计需要实现的功能,完全可胜任。 第三章 控制系统硬件设计 3.1 整体模块设计 本设计行、列驱动电路,显示器电路,运用单片机的智能化,系统的将每个功能电路模块连接在一起,总体结构设计如图1所示。
PC上位机单片机
点阵显示器行驱动电路
点阵显示器列驱动电路
8×8点阵LED显示器电路
图3.1硬件系统框图 此次需要实现的功能是利用一个AT89C51,一个8×8LED点阵,动态显示“元旦快乐”4个字,采用PC上位机驱动显示电路。
3.2 单片机最小系统设计 AT89C51单片机最小系统电路由复位电路、晶振电路两部分组成。 3.2.1 晶振电路设计 AT89C51单片机芯片内部设有一个由反向放大器构成的振荡器,XTAL1和XTAL2分别为振荡电路的的输入端和输出端,时钟可有内部或外部生成,在XTAL1和XTAL2引脚上外接定时元件,内部振荡电路就会产生自激振荡。系统采用的定时元件为石英晶体和电容组成的并联谐振回路。晶振频率fosc采用12MHZ,C1、C2的电容值取30pF,电容的大小起频率微调的作用。晶振电路图如图所示。 C130pFC230pF
X112MHZ
XTAL1
XTAL2 图3.2.1 晶振电路图
3.2.2 复位电路设计 AT89C51单片机在启动运行时或者出现死机时需要复位,使CPU以及其他功能部件处于一个确定的初始状态,并从这个状态开始工作。单片机有多种复位方式,常用的复位操作有上电复位和手动复位方式。本设计采用最简单的上电复位方式,电路如图3所示。上电复位是通过外部复位电路的电容充电来实现的,复位电路产生的复位信号(高电平有效)由RST引脚送入到内部的复位电路,对AT89C51单片机进行复位,复位信号要持续两个机器周期(24个时钟周期)以上,才能使AT89C51单片机可靠复位。当上电时,C1相当于短路,有时碰到干扰时会造成错误复位,可在复位端加个去耦电容,可以取得很好的效果。 AT89C51单片机复位电路如下图所示:
R94.7K
VCCVCC
RST
VSS
C510MF/25V
AT89C51
R24.7K
VCCVCC
RSTVSS
C10MF/25VAT89C51R1S5 RST
图3 上电复位电路图 图4 按键电平复位电路图 复位电路工作原理: 上电瞬间RST引脚的电位与VCC等电位,RST引脚为高电平,随着电容C5充电电流的减少,RST引脚的电位不断下降,可以保持RST引脚在为高电平的时间内完成复位操作。 当单片机已在运行当中时,按下复位键S5后再松开,也能使RST引脚为一段时间的高电平,从而实现AT89C51单片机复位。
3.3 驱动电路设计 正向点亮一颗LED,至少也要10~20mA,若电流不够大,则LED不够大。而不管是AT89C51的I/O口,还是TTL、CMOS的输出端,其高态输出电流都不是很高,不过1~2mA而已。因此很难直接高态驱动LED,这时候就需要额外的驱动电路,通常有共阳型与共阴型LED阵列驱动电路,本设计才用共阴型高态扫描信号驱动电路。 共阴型LED阵列驱动电路采用高态扫描,也就是任何时间只有一个高态信号,其它则为低态。一行扫描完成后,再把高态信号转化到近邻的其他行,扫描信号接用一个反向驱动器,AT89C51本身内置一个反向驱动器,本设计将AT89C51作为点矩阵显示控制系统的控制核心,通过点矩阵实时显示并移动字符。 单片机的串口与行驱动器相连,用来发送显示数据信息。P0口与LED阵列的行引脚相连,送出数据、地址以及系统控制信号。输出低态时,最大可吸取0.5A,即500mA,若每个LED取30mA,7个LED同时点亮,需要210mA,完全满足LED点亮的基本条件。