基于STC51单片机16X16点阵屏显示设计论文教材Word文件下载.docx
《基于STC51单片机16X16点阵屏显示设计论文教材Word文件下载.docx》由会员分享,可在线阅读,更多相关《基于STC51单片机16X16点阵屏显示设计论文教材Word文件下载.docx(24页珍藏版)》请在冰豆网上搜索。
在各大动车站,火车站的站台都出现了很多的LED提示牌,这些无疑不显示出现在这个LED显示屏在当今社会的热潮。
LED的传送信息的技术越来越先进,我们利用我们所学知识完成我们简单的单片机点阵屏的设计,这个与我们的专业息息相关,有助于我们了解LED更有机会利用我们的专业知识。
2:
硬件设计
2.1设计框图及介绍
LED点阵总体框图如图2.1所示,点阵电路主要是由单片机为主体在周边添加必要的电路,时钟震荡电路,电源电路,复位电路。
需要我们行驱动芯片和列驱动芯片来进行对点阵的行扫描和列扫面,这样有效地减少了单片机的I/O口的占有率。
有利于单片机在实现其他功能的时候有足够的I/O口。
图2.1基本工作原理框图
2.252系列单片机简介
单片机(Microcontroller,又称微处理器)是在一块硅片上集成了各种部件的微型机,这些部件包括中央处理器CPU、数据存储器RAM、程序存储器ROM、定时器/计数器和多种I/O接口电路。
AT89C52单片机的基本结构见图2.2
图2.252单片机的基本结构
52是MCS-52系列单片机的一个产品。
MCS-52系列单片机是Intel公司推出的通用型单片机,52单片机系列指的是MCS-52系列和其他公司的52衍生产品。
这些衍生品是在基本型基础上增强了各种功能的产品。
这些产品给8位单片机注入了新的活力,给它的开发应用开拓了更广泛的前景。
52系列的内部结构可以划分为CPU、存储器、并行口、串行口、定时器/计数器、中断逻辑几部分。
(1)中央处理器
52的中央处理器由运算器和控制逻辑构成,其中包括若干特殊功能寄存器(SFR)。
算术逻辑单元ALU能对数据进行加、减、乘、除等算术运算;
“与”、“或”、“异或”等逻辑运算以及位操作运算。
PSW的格式如下所示,其各位的含义是:
CY:
进位标志。
有进位/错位时CY=1,否则CY=0。
AC:
半进位标志。
当D3位向D4位产生进位/错位时,AC=1,否则AC=0,常用于十进制调整运算中。
F0:
用户可设定的标志位,可置位/复位,也可供测试。
RS1、RS0:
四个通用寄存器组选择位,该两位的四种组合状态用来选择0~3寄存器组。
。
OV:
溢出标志。
当带符号数运算结果超出-128~+127范围时OV=1,否则OV=0。
当无符号数乘法结果超过255时,或当无符号数除法的除数为0时OV=1,否则OV=0。
P:
奇偶校验标志。
每条指令执行完,若A中1的个数为奇数时P=1,否则P=0,即偶校验方式。
控制逻辑主要包括定时和控制逻辑、指令寄存器、译码器以及地址指针DPTR和程序寄存器PC等。
(2)存储器组织
52单片机在物理上有四个存储空间:
片内程序存储器和片外程序存储器、片内数据存储器和片外数据存储器。
52的存储器组织结构如图2.3所示。
图2-352存储器组织结构
程序存储器的某些单元是保留给系统使用的:
0000H~0002H单元是所有执行程序的入口地址,复位以后,CPU总是丛0000H单元开始执行程序。
0003H~002AH单元均匀地分为五段,用做五个中断服务程序的入口。
用户程序不应进入上述区域。
52的RAM虽然字节数不很多,但却起着十分重要的作用。
256个字节被分为两个区域:
00H~7FH时真正的RAM区,可以读写各种数据。
而80H~FFH是专门用于特殊功能寄存器(SFR)的区域。
对于8052安排了21个特殊功能寄存器,每个寄存器为8位,所以实际上128个字节并没有全部利用。
内部RAM的各个单元,都可以通过直接地址来寻找,对于工作寄存器,则一般都直接用R0~R7,对特殊功能寄存器,也是直接使用其名字较为方便。
8052内部特殊功能寄存器都是可以位寻址的,并可用“寄存器名.位”来表示,如ACC.0,B.7等.8052系列的单片机
2.389C52芯片
89C52是美国ATMEL公司生产的低电压,高性能CMOS8位单片机,片内含4kbytes的反复擦写的Flash只读程序存储器和128bytes的随机存取数据存储器(RAM),器件采用ATMEL公司高密度、非易失性存储技术生产,兼容标准MCS-52指令系统,片内置通用8位中央处理器(CPU)和Flash存储单元,功能强大AT89C52单片机可为您提供许多高性价比的应用场合,可灵活应用于各种控制领域。
AT89C52引脚如图2.4所示。
89C52单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。
图2.4单片机复位和时钟电路图
(1).管脚说明
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口也可作为AT89C52的一些特殊功能口,如下表所示:
口管脚备选功能
P3.0RXD(串行输入口)
P3.1TXD(串行输出口)
P3.2/INT0(外部中断0)
P3.3/INT1(外部中断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:
来自反向振荡器的输出
复位的实现通常用2种方式:
开机上电复位和外部手动复位,本设计用的是外部手动复位。
电路图2.4复位电路部分。
AT89C52工作电压VCC=5V,其EA引脚需接高电平,5V电源电路如图2.5所示。
图2.5单片机电源原理图
2.474LS138芯片介绍
74HC138基本功能:
74LS138为3线-8线译码器如图2.6,共有54/74S138和54/74LS138两种线路结构型式,其74LS138工作原理如下:
当一个选通端(G1)为高电平,另两个选通端(/(G2A)和/(G2B))为
低电平时,可将地址端(A、B、C)的二进制编码在一个对应的输出端以低
电平译出。
74LS138的作用:
利用G1、/(G2A)和/(G2B)可级联扩展成24线译码器;
若外接一个反相器还可级联扩展成32线译码器。
若将选通端中的一个作为数据输入端时,74LS138还可作数据分配器
图2.6
71LS138有三个附加的控制端、和。
当、时,输出为高电平(S=1),译码器
处于工作状态。
否则,译码器被禁止,所有的输出端被封锁在高电平,如表3.3.5所示。
这三个控制端也叫做“片选”输入端,利用片选的作用可以将多篇连接起来
扩展译码器的功能。
带控制输入端的译码器又是一个完整的数据分配器。
在图3.3.8电路中如果把作为“数据”输入端(在同一个时间),而将作为“地址”输入端,那么从送来的数据只能通过所指定的一根输出线送出去。
这就不难理解为什么把叫做地址输入了。
例如当=101时,门的输入端除了接至输出端的一个以外全是高电平,因此的数据以反码的形式从输出,而不会被送到其他任何一个输出端上。
下图2.7为两片138构成的4线16出的译码器,本文所用设计就是此方案。
图2.7
2.574HC595芯片介绍
74HC595是8位串行输入/输出或者并行输出移位寄存器,具有高阻、关、断三态。
特点8位串行输入8位串行或并行输出存储状态寄存器,三种状态输出寄存器可以直接清除100MHz的移位频率输出能力并行输出,总线驱动串行输出;
595是具有8位移位寄存器和一个存储器,三态输出功能。
移位寄存器和存储器是分别的时钟。
数据在SCHcp的上升沿输入,在STcp的上升沿进入的存储寄存器中去。
如果两个时钟连在一起,则移位寄存器总是比存储寄存器早一个脉冲。
移位寄存器有一个串行移位输入(Ds),和一个串行输出(Q7’),和一个异步的低电平复位,存储寄存器有一个并行8位的,具备三态的总线输出,当使能OE时(为低电平),存储寄存器的数据输出到总线。
CPD决定动态的能耗,PD=CPD×
VCC×
f1+∑(CL×
VCC2×
f0)F1=输入频率,CL=输出电容f0=输出频率(MHz)Vcc=电源电压引脚说明符号引脚描述内部结构
结合引脚说明就能很快理解595的工作情况
74HC595引脚图,管脚图,如下图:
-----------------
QB--|116|--Vcc
QC--|215|--QA
QD--|314|--SI
QE--|413|--/G
QF--|512|--RCK
QG--|611|--SRCK
QH--|710|--/SRCLR
GND-|89|--QH'
|_______________|
74595的数据端:
QA--QH:
八位并行输出端,可以直接控制数码管的8个段。
QH'
:
级联输出端。
我将它接下一个595的SI端。
SI:
串行数据输入端。
74595的控制端说明:
/SRCLR(10脚):
低点平时将移位寄存器的数据清零。
通常我将它接Vcc。
SRCK(11脚):
上升沿,数据寄存器的数据移位。
QA-->
QB-->
QC-->
...-->
QH;
下降沿移位寄存器数据不变。
(脉冲宽度:
5V时,大于几十纳秒就行了。
我通常都选微秒级)
RCK(12脚):
上升沿时移位寄存器的数据进入数据存储寄存器,下降沿时存储寄存器数据不变。
(通常我将RCK置为低电平,)当移位结束后,在RCK端产生一个正脉冲(5V时,大于几十纳秒就行了。
我通常都选微秒级),更新显示数据。
/G(13脚):
高电平时禁止输出(高阻态)。
如果单片机的引脚不紧张,用一个引脚控制它,可以方便地产生闪烁和熄灭效果。
比通过数据端移位控制要省时省力。
注:
1)74164和74595功能相仿,都是8位串行输入转并行输出移位寄存器。
74164的驱动电流(25mA)比74595(35mA)的要小,14脚封装,体积也小一些。
2)74595的主要优点是具有数据存储寄存器,在移位的过程中,输出端的数据可以保持不变。
这在串行速度慢的场合很有用处,数码管没有闪烁感。
与164只有数据清零端相比,595还多有输出端时能/禁止控制端,可以使输出为高阻态。
3)595是串入并出带有锁存功能移位寄存器,它的使用方法很简单,在正常使用时SCLR为高电平,G为低电平。
从SER每输入一位数据,串行输595是串入并出带有锁存功能移位寄存器,它的使用方法很简单,如下面的真值表,在正常使用时SCLR为高电平,G为低电平。
从SER每输入一位数据,串行输入时钟SCK上升沿有效一次,直到八位数据输入完毕,输出时钟上升沿有效一次,此时,输入的数据就被送到了输出端。
入时钟SCK上升沿有效一次,直到八位数据输入完毕,输出时钟上升沿有效一次,此时,输入的数据就被送到了输出端。
2.616×
16点阵LED原理及应用
设计时必须掌握点阵工作原理方能进行更深层设计。
16x16LED点阵其实就是4块8x8点阵LED级联而成的,因此特给出8×
8点阵LED的工作原理。
图
(1)为8×
8点阵LED外观及引脚图,其等效电路如图
(2)所示,只要其对应的X、Y轴顺向偏压,即可使LED发亮。
例如如果想使左上角LED点亮,则Y0=1,X0=0即可。
应用时限流电阻可以放在X轴或Y轴。
而16x16就是在8x8原理的基础上将四块8x8级联而成,如图(3)。
图
(1)8×
8点阵LED外观及引脚图
图
(2)8×
8点阵LED等效电路
2.7LED点阵的显示文字图形原理
(3)点阵屏模块
汉字显示屏用于显示汉字、字符及图像信息,在公共汽车、银行、医院及户外广告等地方都有广泛的应用。
下面是简单的汉字显示屏的制作,由单片机控制汉字的显示内容。
为了降低成本,使用了四块8×
8的LED点阵发光管的模块,组成了一个16×
16的LED点阵显示屏,如图(3)所示。
下面是介绍汉字显示的原理。
LED驱动显示采用动态扫描方法,动态扫描方式是逐行轮流点亮,这样扫描驱动电路就可以实现多行的同名列共用一套列驱动器。
以16×
16点阵为例,把所有同一行的发光管的阴极连在一起,把所有同一列的发光管的阳极连在一起(共阴的接法),先送出对应第1列发光管亮灭的数据并锁存,然后选通第1列使其燃亮一定的时间,然后熄灭;
再送出第2列的数据并锁存,然后选通第2列使其燃亮相同的时间,然后熄灭;
….第16列之后,又重新燃亮第1列,反复轮回。
当这样轮回的速度足够快(每秒24次以上),由于人眼的视觉暂留现象,就能看到显示屏上稳定的图形。
该方法能驱动较多的LED,控制方式较灵活,而且节省单片机的资源。
显示数据可通过单片机的P0,,P2口接驱动电路传输到点阵行引脚。
2.8点阵驱动电路
正向点亮一颗LED,至少也得10到20毫安,若电流不够大,则LED不够亮!
而不管是8052的输入还是输出端其高态输出电流都不是很高,不过1~2毫安而已。
本设计采用74HC595芯片和74LS138芯片作为驱动芯片,主要是为了节约单片机的I/O口,完成对点阵的驱动其中两块138芯片构成4/16译码器输出供给阴极,采用的共阴极点阵驱动。
595作为高电平输入,利用编程让点阵显示屏得到我们相应的汉字显示。
3:
软件设计
3.1软件编写分析
由于我们选择的是滚动显示这样的显示设计是比较简单的一种设计汉字显示方案。
通过改变送入595寄存的数据从而达到一种滚动显示的效果。
可以改变汉字显示速度。
相对于左移右移而言此种设计是很简单的。
我们只需要分析清楚595工作状态就行了。
我们利用中断完成每一组数据字符的循环显示,达到一种能够保持循环显示状态,我们能通过按键改变其显示的数据,达到我们此物的功能。
3.2点阵滚动显示流程图
主流程图
中断流程
调试
调试主要分为硬件调试和软件调试:
由于本设计没有做出实物,所以我们这里就大谈硬件测试,简化硬件测试,我们在审核硬件电路的时候我们需要检查元器件方向,电路是否有错,点阵方向是否正确,是否存在虚焊漏焊情况。
避免出错后难以察觉。
软件调试:
我们软件调试主要分析硬件电路设计的时候采用的单片机I/O口是哪些,各个I/O口对应的是我们驱动芯片的哪一个引脚,在编程时需要注意各个芯片的管脚图,还有就是我们每个芯片的时序图,才能很快很准确的完成程序的编写,实现我们的程序一步到位,进行简单的调试便可用的效果。
仿真显示效果图:
滚动显示:
“福建示范性院校”由于是截图看不出明显效果。
按键切换后滚动显示“泉州信息职业技术学院”
总结
本次毕业设计历时较为长,但是在我精心的设计并认真的完善下虽然历时久,但是我从中学到了不少的东西。
首先独立查找资料并完善毕业设计,从网上查找毕业设计所需要的文档,进行分析,认真考核,让自己毕业设计能够一步到位,虽然此毕业设计不需要实物的演示,但是我们追求完美利用仿真软件对我们的电路进行了测试,并完成了我们电路的功能。
论文的撰写主要包括以下几个步骤:
一、我们进行选题后,完成我们电路设计,并制作仿真图。
二、完成仿真,并且完成我们程序设计,仿真出实际的效果。
三、当我们所有功能实现,我们构思论文,撰写论文时候需要做的是把我们电路所需要的资料都进行整理,自己总结后用自己的语言撰写出来。
四、主要过程查资料,整合,分析,查看整篇论文的可用性。
参考文献
[1]张堔,耿标.16x16点阵LED的设计.高科技产品研发,2010,(8):
64
[2]花海安.点阵LED显示屏的设计与实践.江淮水利科技,2009,(3):
20~21
[3]龙安国.基于单片机的LED汉字显示屏设计与制作.现代电子技术,2007,30(13):
186~188
[4]季晓芳.双汉字16×
16LED点阵广告屏的制作.安徽水利水电职业技术学院学报,2010,(10):
60~61
[5]阳进.基于单片机的LED显示屏的汉字显示.中国科技信息,2005,(12):
112
[6]翟淑霞.基于单片机的LED显示屏的汉字显示.今日科苑,2006,(9):
114
[7]刘永军.单片机控制LED点阵显示原理及Proteus仿真.电脑知识与技术,2010,27(6):
7651~7653
[8]罗云松,于娟.基于Proteus的单片机点阵LED汉字显示.机械与电子,2009,(17):
[9]杨延宁,刘立军,张志勇.基于Proteus的单片机汉字点阵显示设计.液晶与显示,2009,24
(1):
98~102
[10]钟蔚,袁臣虎,林志贵.点阵式LED滚动汉字显示屏的Proteus仿真设计.微计算机信息,2008,24(62):
106~107
致谢
感谢导师陈桂松的关心、指导和教诲。
陈桂松老师追求真理、献身科学、严以律己、宽已待人的崇高品质对学生将是永远的鞭策。
感谢三年来为我们辛勤付出的各位老师,我们在这里学到的不只是知识,我们学校的更是专业技能,对于我们在泉州信息学院的成长,我表示最感激的是我们的老师,有你们才会有我们今天的满载而归。
也谢谢桂松老师的培训,让我们的专业技能得到了很大的改善和提高,让我们能在未来的道路上走得更远,走得更好。
谢谢院系领导背后的辛勤付出,让我们能在今天完满的结束我们的大学旅程,让我们充满信心的去面对这个社会。
毕业设计(论文)知识产权声明
本人完全了解泉州信息职业技术学院有关保护知识产权的规定,即:
高职学生在校学习期间毕业设计(论文)工作的知识产权属于泉州信息职业技术学院。
本人保证毕业离校后,使用毕业设计(论文)工作成果或用毕业设计(论文)工作成果发表论文时署名单位仍然为泉州信息职业技术学院。
学校有权保留送交的毕业设计(论文)的原文或复印件,允许毕业设计(论文)被查阅和借阅;
学校可以公布毕业设计(论文)的全部或部分内容,可以采用影印、缩印或其他复制手段保存毕业设计(论文)。
(保密的毕业设计(论文)在解密后应遵守此规定)
毕业设计(论文)作者签名:
指导教师签名:
年月日
毕业设计(论文)独创性声明
秉承学校严谨的学风与优良