8X8点阵LED广告屏系统设计.docx
《8X8点阵LED广告屏系统设计.docx》由会员分享,可在线阅读,更多相关《8X8点阵LED广告屏系统设计.docx(44页珍藏版)》请在冰豆网上搜索。
8X8点阵LED广告屏系统设计
机电一体化强化训练
单片机系统设计说明书
(8X8点阵LED广告屏系统设计)
学院(系)机电工程系
专业/方向机械工程及其自动化
班级机械5、6班
学生姓名
指导老师
2012年6月13日
华南理工大学广州学院
单片机系统设计任务书
兹发给机械5、6班学生设计任务书,内容如下
1.设计题目:
8X8点阵LED广告屏系统设计
2.应完成的项目:
(1)原理图设计;
(2)PCB设计;
(3)PCB板制作;
(4)程序编写;
(5)程序下载与调试
3.参考资料以及说明:
(1)张文灼单片机技术与应用–北京:
化学工业出版社,2010.6
(2)郭天祥.新概念51单片机C语言教程--北京:
电子工业出版社,2009.1
(3)姚超友光机电一体化强化训练实训教材华南理工大学广州学院机械工程实验教学中心2011年9月
(4)陈正义单片机控制实习__-北京:
人民邮电出版社2006.7
4.本设计任务书于2012年6月3日发出,应于2012年6月14日前完成,然后进行答辩。
专业教研室、研究所负责人审核年月日
指导教师签发年月日
设计评语:
设计总评成绩:
设计答辩负责人签字:
2012年6月日
摘要
LED广告屏是一种用发光二极管按顺序排列而制成的新型成像电子设备。
由于其亮度高、可视角度广、寿命长等特点,正被广泛应用于户外广告等产品中。
本文介绍的是8X8点阵LED广告屏系统设计。
其工作原来是以AT89C51单片机为核心,SN74HC573AN和82C55AC作为I\O口拓展,8×8LED点阵、数码管作为显示,通过软键盘的手动输入来显示不同状态的三个字——“华广大”。
分别是逐字显示、向上滚动显示和向右滚动显示。
本说明书主要介绍了单片机工作的基本原理、8×8LED点阵、数码管的显示、按键的工作原理以及I\O的拓展方式。
该系统工作包括原理图的设计、PCB的设计、PCB板的制作和程序编写调试,通过对软、硬件进行了调试,来实现了上述功能。
同时,本说明书还有介绍在整个工作流程中遇到的问题和具体解决的方法。
8×8LED点阵显示汉字,主要点阵LED电路原理图和设计要求;
本次论文分为七章,第一章:
单片机简介,主要介绍AT89C51芯片;第二章:
I\O的拓展方式,主要介绍了SN74HC573AN和82C55AC作为I\O口拓展;第三章:
数码管的显示,主要介绍了4位共阴数码管的工作原理;第四章:
键盘的工作原理;第五章:
8×8LED点阵显示,主要介绍了点阵的工作原理和显示汉字程序编写;第六章8×8LED点阵显示汉字程序设计;第七章:
8×8LED点阵显示汉字调试结果及分析;最后是结束语、参考文献和附录。
通过这六章内容的描述,详细介绍了本次任务设计的内容、方法、以及设计中遇到的问题和解决问题的途径。
关键词:
单片机;AT89C51芯片;8×8LED点阵;I\O的拓展;程序编写;
1.4电源部分…………………………………………………………………………11
1.5复位电路12
1.6晶振电路……………………………………………………………………………12.
1.7最小系统……………………………………………………………………………13
第六章8×8LED点阵显示汉字程序设计…………………………24
6.1主程序流程图...............................................................................................................24
6.2程序代码…………………………………………………………………………………….25
第七章8×8LED点阵显示汉字调试结果及分析………………..26
7.18×8LED点阵显示汉字调试结果及分析…………………………………….,26
7.2遇到问题……………………………………………………………………………………27
7.3、结论与体会……………………………………………………………………………………29
附件1…………………………………………………………………………………………….35
附件2…………………………………………………………………………………………….38
第一章单片机简介
1.1单片机原理概述
单片机(single-chipmicrocomputer)是把微型计算机主要部分都集成在一块芯片上的单芯片微型计算机。
是一种集成在电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计时器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的计算机系统。
图2-1中表示单片机的典型结构图。
由于单片机的高度集成化,缩短了系统内的信号传送距离,优化了结构配置,大大地提高了系统的可靠性及运行速度,同时它的指令系统又很适合于工业控制的要求,所以单片机在工业过程及设备控制中得到了广泛的应用。
1.2单片机的应用系统
单片机在进行实时控制和实时数据处理时,需要与外界交换信息。
人们需要通过人机对话,了解系统的工作情况和进行控制。
单片机芯片与其它CPU比较,功能虽然要强得多,但由于芯片结构、引脚数目的限制,片内ROM、RAM、I/O口等不能很多,在构成实际的应用系统时需要加以扩展,以适应不同的工作情况。
单片机应用系统的构成基本上如图1-2所示。
单片机应用系统根据系统扩展和系统配置的状况,可以分为最小应用系统、最小功耗系统、典型应用系统。
本设计是设计一款最小应用系统,最小应用系统是指能维持单片机运行的最简单配置的系统。
这种系统成本低廉、结构简单,常用来构成简单的控制系统,如开关量的输入/输出控制、时序控制等。
对于片内有ROM/EPROM的芯片来说,最小应用系统即为配有晶体振荡器、复位电路和电源的单个芯片;对与片内没有ROM/EPROM芯片来说,其最小应用系统除了应配置上述的晶振、复位电路和电源外,还应配备EPROM或EEPROM作为程序存储器使用。
1.3AT89C51简介
AT89C51的主要参数如表1-3所示:
AT89C51含E²PROM电可编闪速存储器。
有两级或三级程序存储器保密系统,防止E²PROM中的程序被非法复制。
不用紫外线擦除,提高了编程效率。
程序存储器E²PROM容量可达20K字节。
AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM—FalshProgrammableandErasableReadOnlyMemory)的低电压,高性能CMOS8位微处理器,俗称单片机。
该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。
由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。
其引脚如图2-3所示。
●1主要特性:
全静态工作:
0Hz-24Hz
●与MCS-51兼容;
●4K字节可编程闪烁存储器寿命:
1000写/擦循环
●三级程序存储器锁定
●128*8位内部RAM
●32可编程I\O线
●两个16位定时器/计时器
●5个中断源
●可编程串行通道
●低功耗的闲置和掉电模式
●片内振荡器和时钟电路
2、管脚说明:
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)这是由于上拉的缘故。
P3口也可作为AT89C51的一些特殊功能口,如下所示:
P3口管脚备选功能
P3.0RXD(串行输入口)
P3.1TXD(串行输出口)
P3.2/INTO(外部中断0)
P3.3/INTO(外部中断1)
P3.4T0(计时器0外部输入)
P3.5T1(计时器1外部输入)
P3.6/WR(外部数据存储器写选通)
P3.7/RD(外部数据存储器读选通)
P3口同时为闪烁编程和编程校验接收一些控制信号。
RST:
复位输入。
当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。
ALE/PROG:
当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。
在FLASH编程期间,此引脚用于输入编程脉冲。
在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。
因此它可用作对外部输出的脉冲或用于定时目的。
然而要注意的是:
每当用作外部数据存储器时,将跳过一个ALE脉冲。
如想禁止ALE的输出可在SFR8EH地址上置0。
此时,ALE只有在执行MOVX,MOVC指令是ALE才起作用。
另外,该引脚被略微拉高。
如果微处理器在外部执行状态ALE禁止,置位无效。
/PSEN:
外部程序存储器的选通信号。
在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。
但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。
/EA/VPP:
当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。
注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。
在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。
XTAL1:
反向振荡放大器的输入及内部时钟工作电路的输入。
XTAL2:
来自反向振荡器的输出。
3、I/O口引脚:
a:
P0口,双向8位三态I/O口,此口为地址总线(低8位)及数据总线分时复用;
b:
P1口,8位准双向I/O口;
c:
P2口,8位准双向I/O口,与地址总线(高8位)复用;
d:
P3口,8位准双向I/O口,双功能复用口。
4、振荡器特性:
XTAL1和XTAL2分别为反向放大器的输入和输出。
该反向放大器可以配置为片内振荡器。
石晶振荡和陶瓷振荡均可采用。
如采用外部时钟源驱动器件,XTAL2应不接。
有余输入至内部时钟信号要通过一个二分频触发器,因此对外部时钟信号的脉宽无任何要求,但必须保证脉冲的高低电平要求的宽度。
5、芯片擦除:
整个EPROM阵列和三个锁定位的电擦除可通过正确的控制信号组合,并保持ALE管脚处于低电平10ms来完成。
在芯片擦操作中,代码阵列全被写“1”且在任何非空存储字节被重复编程以前,该操作必须被执行。
此外,AT89C51设有稳态逻辑,可以在低到零频率的条件下静态逻辑,支持两种软件可选的掉电模式。
在闲置模式下,CPU停止工作。
但RAM,定时器,计数器,串口和中断系统仍在工作。
在掉电模式下,保存RAM的内容并且冻结振荡器,禁止所用其他芯片功能,直到下一个硬件复位为止。
1.4电源部分
由USB接口、6脚开关、电源指示灯、电阻组成
1.5复位电路
单片机RST引脚接收到2us以上的电平信号,只要保证电容的充放电时间大于2us,即可实现复位。
1.6晶振电路
8051片内有一个由高增益反向放大器构成的振荡器。
反向发达器的输入端XTAL1,输出端XTAL2,两端跨接石英晶体及两个电容形成稳定的自激振荡器。
电容通常取30pf左右。
1.7最小系统图
第二章I\O的拓展方式
I/O接口的扩展
当所需扩展的外部I/O口数量不多时,可以使用常规的逻辑电路、锁存器进行拓展,一类的外围芯片一般价格较低而且种类较多,常用的74LS377
74HC573、74LS373
2.1熟悉74HC573外围芯片的特性和扩展方法
74HC573
八进制3态非反转透明锁存器
高性能硅门CMOS器件
SL74HC573跟LS/AL573的管脚一样。
器件的
锁存器
输入是和标准CMOS输出兼容的;加上拉电阻,他们能和LS/ALSTTL输出兼容。
当锁存使能端LE为高时,这些器件的锁存对于数据是透明的(也就是说输出同步)。
当锁存使能变低时,符合建立时间和保持时间的数据会被锁存。
×\u36755X出能直接接到CMOS,NMOS和TTL接口上
×\u25805X作电压范围:
2.0V~6.0V
×\u20302X输入电流:
1.0uA
×CMOS器件的高噪声抵抗特性
LE为锁存控制端
2、8255A可编程I/O接口设计及扩展技术
8255A是一种常见的8位可编程并行接口芯片,本接将着重介绍8255A的工作原理、编程方式和应用。
1)8255A芯片的结构
引脚功能如下:
RESE:
复位信号输入端,高电平有效,有效时清除8255A内部寄存器,
同时三个端口自动设为输入端;
D0-D7:
数据线;
VCC:
电源;
GND:
接地线。
PA:
A组8位I/O口;
PB:
B组8位I/O口;
PC:
C组8位I/O口,还具备其它控制功能;
CS:
片选信号输入线,低电平有效;
RD:
读选通信号输入线,低电平有效;
WR:
写选通信号输入线,低电平有效;
A0A1:
端口信号选择端,用于决定当前对哪一个端口进行操作,
Intel8086/8088系列的可编程外设接口电路(ProgrammablePeripheralInterface)简称PPI,型号为8255(改进型为8255A及8255A-5),具有24条输入/输出引脚、可编程的通用并行输入/输出接口电路。
它是一片使用单一+5V电源的40脚双列直插式大规模集成电路。
8255A的通用性强,使用灵活,通过它CPU可直接与外设相连接。
8255A在使用前要写入一个方式控制字,选择A、B、C三个端口各自的工作方式,共有三种;
方式0:
基本的输入输出方式,即无须联络就可以直接进行的I/O方式。
其中A、B、C口的高四位或低四位可分别设置成输入或输出。
方式1:
选通I/O,此时接口和外围设备需联络信号进行协调,只有A口和B口可以工作在方式1,此时C口的某些线被规定为A口或B口与外围设备的联络信号,余下的线只有基本的I/O功能,即只工作在方式0.
方式2:
双向I/O方式,只有A口可以工作在这种方式,该I/O线即可输入又可输出,此时C口有5条线被规定为A口和外围设备的双向联络线,C口剩下的三条线可作为B口方式1的联络线,也可以和B口一起方式0的I/O线。
8255A是一个并行输入、输出器件,具有24个可编程设置的I/O口,包括3组8位的I/O为PA口、PB口、PC口,又可分为2组12位的I/O口:
A组包括A口及C口高4位,B组包括B口及C组的低4位。
A口可以设置为方式0、方式1、方式2,B口与C口只能设置为方式0或方式1
第三章数码管的显示
3.1、产品分类
数码管按段数分为七段数码管和八段数码管,八段数码管比七段数码管多一个发光二极管单元(多一个小数点显示);按能显示多少个“8”可分为1位、2位、4位等等数码管;
按发光二极管单元连接方式分为共阳极数码管和共阴极数码管。
共阳数码管是指将所有发光二极管的阳极接到一起形成公共阳极(COM)的数码管,共阳数码管在应用时应将公共极COM接到+5V,当某一字段发光二极管的阴极为低电平时,相应字段就点亮,当某一字段的阴极为高电平时,相应字段就不亮。
共阴数码管是指将所有发光二极管的阴极接到一起形成公共阴极(COM)的数码管,共阴数码管在应用时应将公共极COM接到地线GND上,当某一字段发光二极管的阳极为高电平时,相应字段就点亮,当某一字段的阳极为低电平时,相应字段就不亮。
3.2、结构
led数码管(LEDSegmentDisplays)是由多个发光二极管封装在一起组成“8”字型的器件,引线已在内部连接完成,只需引出它们的各个笔划,公共电极。
led数码管常用段数一般为7段有的另加一个小数点,还有一种是类似于3位“+1”型。
位数有半位,1,2,3,4,5,6,8,10位等等....,led数码管根据LED的接法不同分为共阴和共阳两类,了解LED的这些特性,对编程是很重要的,因为不同类型的数码管,除了它们的硬件电路有差异外,编程方法也是不同的。
图2是共阴和共阳极数码管的内部电路,它们的发光原理是一样的,只是它们的电源极性不同而已。
颜色有红,绿,蓝,黄等几种。
led数码管广泛用于仪表,时钟,车站,家电等场合。
选用时要注意产品尺寸颜色,功耗,亮度,波长等。
图3-1
3.3、8字高度
8字上沿与下沿的距离。
比外型高度小。
通常用英寸来表示。
范围一般为0.25-20英寸。
长*宽*高
长——数码管正放时,水平方向的长度;宽——数码管正放时,垂直方向上的长度;高——数码管的厚度。
时钟点
四位数码管中,第二位8与第三位8字中间的二个点。
一般用于显示时钟中的秒。
3.4、电流与电压
电流
静态时,推荐使用10-15mA;动态时,16/1动态扫描时,平均电流为4-5mA,峰值电流50-60mA。
电压
查引脚排布图,看一下每段的芯片数量是多少?
当红色与黄绿色时,使用1.9V乘以每段的芯片串联的个数;当绿色/蓝色时,使用3.1V乘以每段的芯片串联的个数。
图3-2图3-3
第四章键盘的工作原理
4.1、键盘的工作方式
在键盘中按键数量较多时,为了减少I/O口的占用,通常将按键排列成矩阵形式,如图1所示。
在矩阵式键盘中,每条水平线和垂直线在交叉处不直接连通,而是通过一个按键加以连接。
这样,一个端口(如P1口)就可以构成4*4=16个按键,比之直接将端口线用于键盘多出了一倍,而且线数越多,区别越明显,比如再多加一条线就可以构成20键的键盘,而直接用端口线则只能多出一键(9键)。
由此可见,在需要的键数比较多时,采用矩阵法来做键盘是合理的。
矩阵式结构的键盘显然比直接法要复杂一些,识别也要复杂一些,上图中,列线通过电阻接正电源,并将行线所接的单片机的I/O口作为输出端,而列线所接的I/O口则作为输入。
这样,当按键没有按下时,所有的输出端都是高电平,代表无键按下。
行线输出是低电平,一旦有键按下,则输入线就会被拉低,这样,通过读入输入线的状态就可得知是否有键按下了。
在单片机应用系统中,键盘是人机对话不可缺少的组件之一。
在按键比较少时,我们可以一个单片机I/O口接一个按键,但当按键需要很多,I/O资源又比较紧张时,使用矩阵式键盘无疑是最好的选择。
4x4矩阵键盘是运用得最多的键盘形式,也是单片机入门必需掌握的一种键盘识别技术,下面我们就以实例来说明一下4x4矩阵键盘的识别方法。
如下图所示,我们把按键接成矩阵的形式,这样用8个I/O口就可以对16个按键进行识别了,节省了I/O口资源。
图4-1
我们的识别思路是这样的,初使化时我们先让P1口的低四位输出低电平,高四位输出高电平,即让P1口输出0xF0。
扫描键盘的时候,我们读P1口,看P1是否还为0xF0,如果仍为0xF0,则表示没有按键按下;如果不0xF0,我们先等待10ms左右,再读P1口,再次确认是否为0xF0,这是为了防止是抖动干扰造成错误识别,如果不是那就说明是真的有按键按下了,我们就可以读键码来识别到底是哪一个键按下了。
识别的过程是这样的,初使化时我们让P1口的低四位输出低电平,高四位输出高电平,确认了真的有按键按下时,我们首先读P1口的高四位,然后P1口输出0x0F,即让P1口的低四位输出高电平,高四位输出低电平,然后读P1口的低四位,最后我们把高四位读到的值与低四位读到的值做或运算就得到了该按键的键码。
就可以知道是哪个键按下了。
以0键为例,初使化时P1输出0xF0,当0键按下时,我们读高四位的状态应为1110,即P1为0xE0,然后让P1输出0x0F,读低四位产状态应为0111,即P1为0x07,让两次读数相与得0xE7。
现在我们在P0口和P2口分别接一个共阳极的数码管,用来显示我们按下去的键的键值,P0口接的是个位,P2口接的是十位。
如0键按下显示00,1键按下显示01,15键按下显示15……,
4.2、选用的键盘工作方式
图4-2
图4-3
第五章8×8LED点阵显示汉字
5.18×8LED点阵显示汉字的研究背景
点阵LED显示器是把一些LED组合在同一个包装中,常见的规格有5×7,8×8,16×16等几种。
通常,若要显示阿拉伯数字、英文字母、特殊符号等,则可采用5×7的点阵即可够用,若要显示中文字,则需要4片8×8的点阵组成16×16的点阵显示器才能显示一个中文字。
LED电子显示屏是利用发光二极管点阵模块或像素单元组成的平面式显示屏幕。
它是集微电子技术、光电子技术、计算机技术、信息处理技术于一体的显示系统,是目前国际上极为先进的显示媒体。
由于它具有发光效率高、使用寿命长、组态灵活、色彩丰富、工作性能稳定以及对室内室外环境适应能力强等优点而日渐成为显示媒体中的佼佼者。
在我国改革开放之后,特别是进入90年代国民经济高速增长,对公众场合发布信息的需求日益强烈,LED显示屏的出现正好适应了这一市场形势,因而在LED显示屏的设计制造技术与应用水平上都得到了迅速的提高,生产也得到了迅速的发展,并逐步形成产业,成为光电子行业的新兴产业领域。
LED显示屏经历了从单色、双色图文显示屏,到图像显示屏的发展过程。
随着信息产业的高速发展,LED显示屏作为信息传播的一种重要手段成为现代信息化社会的一个闪亮标志。
近年LED显示屏已广泛应用于室内、外需要进行服务内容和服务宗旨宣传的公众场所如银行、营业部、车站、机场、港口、体育场馆等信息的发布,政府机关政策、政令,各类市场行情信息的发部和宣传等。
汉字显示