第一篇:基于单片机的16×16点阵LED电子显示屏的设计报告
单片机原理及应用
课程设计报告书
题
目:16×16点阵LED电子显示屏的设计 姓
名:蔡臣 学
号:083521041 专
业:电气工程及其自动化 指导老师:徐武雄 设计时间:2011年 5月
目
录
1.引言...............................................1 1.1 设计意义......................................1 1.2 系统功能要求..................................1 2.方案设计..........................................1 3.硬件设计..........................................3 4.软件设计.........................................10 5.系统调试.........................................13 6.设计总结.........................................14 7.附录A源程序.....................................15 8.附录B作品实物图片...............................35 9.参考文献.........................................36
16×16点阵LED电子显示屏的设计
单片机原理及应用课程设计
16×16点阵LED电子显示屏的设计
1.引 言
LED点阵显示屏是一种简单的汉字显示器,具有价廉、易于控制、使用寿命长等特点,可广泛应用于各种公共场合,如车站、码头、银行、学校、火车、公共汽车显示等。本文详细介绍了一种低廉的16x64阵LED显示屏的设计过程。
1.1.设计意义
1、实现LED点阵屏核心功能即汉字及字母的多样化显示。
2、通过本次课程设计加深对单片机课程的全面认识和掌握,对单片机课程的应用进一步的了解。
3、掌握SPI串口进行数据传输的应用,并学会使用外部芯片辅助项目设计。
4、锻炼通过自学与自己探索的方式解决问题的能力。
5、通过此次课程设计将单片机软硬件结合起来对程序进行编辑,校验,锻炼实践能力和理论联系实际的能力。
1.2.系统功能要求
设计一个室内用16×16点阵LED图文显示屏,要求在目测条件下LED显示屏各点亮度均匀、充足,可显示图形和文字,显示图形或文字应稳定、清晰无串扰。图形或文字显示有静止、移入移出等显示方式。
2.方案设计
从理论上说,不论显示图形还是文字,只要控制与组成这些图形或文字的各个点所在位置相对应的LED器件发光,就可以得到我们想要的显示结果,这种同时控制各个发光点亮灭的方法称为静态驱动显
16×16点阵LED电子显示屏的设计
单片机原理及应用课程设计
示方式。16×16的点阵共有256个发光二极管,显然单片机没有这么多端口,如果我们采用锁存器来扩展端口,按8位的锁存器来计算,16×16的点阵需要256/8=32个锁存器。这个数字很庞大,因为我们仅仅是16×16的点阵,在实际应用中的显示屏往往要大的多,这样在锁存器上花的成本将是一个很庞大的数字。因此在实际应用中的显示屏几乎都不采用这种设计,而采用另一种称为动态扫描的显示方法。
动态扫描的意思简单地说就是逐行轮流点亮,这样扫描驱动电路就可以实现多行(比如16行)的同名列共用一套列驱动器。具体就16×16的点阵来说,我们把所有同一行的发光管的阳极连在一起,把所有同一列的发光管的阴极连在一起(共阳的接法),先送出对应第一行发光管亮灭的数据并锁存,然后选通第一行使其燃亮一定的时间,然后熄灭;再送出第二行的数据并锁存,然后选通第二行使其燃亮相同的时间,然后熄灭;„„ 第十六行之后又重新燃亮第一行,这样反复轮回。当这样轮回的速度足够快(每秒24次以上),由于人眼的视觉暂留现象,我们就能看到显示屏上稳定的图形了。
采用扫描方式进行显示时,每行有一个行驱动器,各行的同名列共用一个列驱动器。显示数据通常存储在单片机的存储器中,按8位一个字节的形式顺序排放。显示时要把一行中各列的数据都传送到相应的列驱动器上去,这就存在一个显示数据传输的问题。从控制电路到列驱动器的数据传输可以采用并行方式或串行方式。显然,采用并 2
16×16点阵LED电子显示屏的设计
单片机原理及应用课程设计
行方式时,从控制电路到列驱动器的线路数量大,相应的硬件数目多。当列数很多时,并行传输的方案是不可取的。
采用串行传输的方法,控制电路可以只用一根信号线,将列数据一位一位传往列驱动器,在硬件方面无疑是十分经济的。但是,串行传输过程较长,数据按顺序一位一位地输出给列驱动器,只有当一行的各列数据都已传输到位之后,这一行的各列才能并行地进行显示。这样,对于一行的显示过程就可以分解成列数据准备(传输)和列数据显示两个部分。对于串行传输方式来说,列数据准备时间可能相当长,在行扫描周期确定的情况下,留给行显示的时间就太少了,以至影响到LED的亮度。
解决串行传输中列数据准备和列数据显示的时间矛盾问题,可以采用重叠处理的方法。即在显示本行各列数据的同时,传送下一行的列数据。为了达到重叠处理的目的,列数据的显示就需要具有锁存功能。经过上述分析,可以归纳出列驱动器电路应具备的主要功能。对于列数据准备来说,它应能实现串入并出的移位功能;对于列数据显示来说,应具有并行锁存的功能。这样,本行已准备好的数据打入并行锁存器进行显示时,串并移位寄存器就可以准备下一行的列数据而不影响本行的显示。硬件系统设计
本系统采用AT89C52单片机作控制器,整个电路主要由单片机控制及其接口电路、驱动显示电路、电源电路等部分组成。为了简化显
16×16点阵LED电子显示屏的设计
单片机原理及应用课程设计
示屏电路,降低成本,本系统在单片机部分不加字库存储器。而在PC机上编辑汉字和字符显示信息,并将其转换为相应的点阵显示数据,然后通过串口(采用RS-232通信标准)送给单片机存储并进行显示处理。图1所示为其硬件系统原理图。
3.1 单片机控制电路
本系统由AT89C52构成单片机最小应用系统.同时配有11.0592 MHz晶振和按键复位电路等。系统外扩的一片Flash存储器29F040为数据存储器,可用来存储由PC机串口送来的点阵信息(通过软件将 4
16×16点阵LED电子显示屏的设计
单片机原理及应用课程设计
图像或文字转换成与LED显示屏的像素相对应的点阵信息)。该Flash存储器是一种非易失性存储器,它在供电电源关闭后仍能保持片内信息。由于29F040的容量为512 KB(该芯片内部由8个64 Kbyte的读写块组成,可分块进行读、写和擦除等操作),而AT89C52只能管理64KB的数据空间,所以,需将29F040分成8页,每页64KB。其页码可由单片机的P3.2~P3.4来选择。另外,采用MAX232可完成RS232与TTL电平的转换,以便使PC机与单片机交换信息。3.2 16x16点阵显示器的设计
(a)图2是一种8x8的LED点阵单色行共阳模块的内部结构图,其单点工作电压Uf为1.8 V,正向电流IF为8~10 mA。当某一行线为高电平而某一列线为低时,其行列交叉的点就被点亮;而当其某一列线为高时,其行列交叉的点为暗;当某一行线为低电平时,无论列线如何,对应这一行的点全部为暗。
16×16点阵LED电子显示屏的设计
单片机原理及应用课程设计
用四个8x8点阵显示可构成16x16点阵显示器,其连接方法如图3所示。图中,将(A)和(B)的8列、(C)和(D)的8列分别对应相连,同时将(A)和(C)的8行、(B)和(D)的8行分别对应相连。即可形成一个16行(每一行有16个LED)、16列(每一列也有16个LED)的16x16点阵显示器,可将这256个点称为一页,这样,显示字符时。只要对一页中对应的亮灭进行控制即可。
(b)LED点阵显示器的扫描驱动
LED显示屏驱动电路的设计应与所用控制系统相配合。驱动通常分为动态扫描型及静态锁存型驱动二大类。本文以动态扫描型驱动电
16×16点阵LED电子显示屏的设计
单片机原理及应用课程设计
路的设计为例来进行分析。动态扫描型驱动方式是指显示屏上的16行发光二极管共用一组列驱动寄存器,然后通过行驱动管的分时工作,来使每行LED的点亮时间占总时间的1/16。只要每行的刷新速率大于50 Hz,利用人眼的视觉暂留效应,人们就可以看到一幅完整的文字或画面。
AT89S52单片机有四个I/O口(P0、P1、P2、P3),每个I/O口有8位,如果都采用并行输出,显然不能满足要求,因此,本设计中的行扫描驱动采用并口输出,而场扫描驱动采用串口输出。
(1)行扫描驱动
由于16x64点阵显示器有16行,为充分利用单片机的接口,本电路中加入了一个4-16线译码器74LS154,其输入是一个16进制码,解码输出为低态扫描信号,它们的管脚示意图如图4所示。把74LS154的G1和G2引脚接地,然后以A、B、C、D四脚为输入端。就会形成16种不同的输入状态,分别为0000~1111,然后使每种状态只控制一路输出,即会有16路输出。
16×16点阵LED电子显示屏的设计
单片机原理及应用课程设计
如果一行64点全部点亮,则通过74LS154的电流将达640 mA,而实际上,74LS154译码器提供不了足够的吸收电流来同时驱动64个LED同时点亮,因此,应在74LS154每一路输出端与16x64点阵显示器对应的每一行之间用一个三极管来将电流信号放大,本文选用的是达林顿三极管TIP127。这样,74LS154某一输出脚为低电平时,对应的三极管发射极为高电平,从而使点阵显示器的对应行也为高电平。
(b)场扫描驱动
本系统场扫描驱动电路的设计可用串入并出的通用集成电路74HC595来作为数据锁存。74HC595是一个八位串行输入三态并行输
16×16点阵LED电子显示屏的设计
单片机原理及应用课程设计
出的移位寄存器,其管脚见图4所示,其中SI是串行数据的输入端,RCK是存储寄存器的输入时钟,SCK是移位寄存器的输入时钟,Q'H是串人数据的输出,G是对输人数据的输出使能控制,QA~QH为串入数据的并行输出。从SI口输入的数据可在移位寄存器的SCK脚上升沿的作用下输入到74HC595中。并在RCK脚的上升沿作用下将输入的数据锁存在74HC595中,这样,当G为低电平时,数据便可并行输出。为了避免与PC机串口输入的数据相互干扰,也可使用模拟串口P1.4~P1.7来分别输出串行数据、移位时钟SCK、存储信号RCK和并行输出的使能信号G。
为了消除电源电压的波动及行扫描管压降(第一行点亮的点数不同,将引起管压降的变化,从而影响通过LED管的电流)的变化对LED显示屏亮度的影响,设计时可采用列恒流驱动电路,可选用三极管8550和外围元件构成列恒流驱动电路,并通过调整100 kΩ可调电阻使三极管处于放大状态,同时将集电极电流调整为10 mA,从而使点亮对应点阵时通过LED的电流不变。
(c)扫描显示工作过程
将8片74HC595进行级连,可共用一个移位时钟SCK及数据锁存信号RCK。这样,当第一行需要显示的数据经过8x8=64个SCK时钟后便可将其全部移入74HC595中,此时还将产生一个数据锁存信号RCK将数据锁存在74HC595中,并在使能信号G的作用下,使串入数据并行输出,从而使与各输出位对应的场驱动管处于放大或截止状
16×16点阵LED电子显示屏的设计
单片机原理及应用课程设计
态;同时由行扫描控制电路产生信号使第一行扫描管导通,相当于第一行LED的正端都接高,显然,第一行LED管的亮灭就取决于74HC595中的锁存信号;此外,在第一行LED管点亮的同时,再在74HC595中移入第二行需要显示的数据,随后将其锁存,同时由行扫描控制电路将第一行扫描管关闭而接通第二行,使第二行LED管点亮,以此类推,当第十六行扫描过后再回到第一行,这样,只要扫描速度足够高,就可形成一幅完整的文字或图像。
4软件设计
显示屏软件的主要功能是向屏体提供显示数据,并产生各种控制信号,使屏幕按设计的要求显示。根据软件分层次设计的原理,我们可把显示屏的软件系统分成两大层:第一层是底层的显示驱动程序,第二层是上层的系统应用程序。显示驱动程序负责向屏体送显示数据,并负责产生行扫描信号和其它控制信号,配合完成LED显示屏的扫描显示工作。显示驱动程序由定时器T0中断程序实现。系统应用程序完成系统环境设置(初始化)、显示效果处理等工作,由主程序来实现。
从有利于实现较复杂的算法(显示效果处理)和有利于程序结构化考虑,显示屏程序适宜采用C语言编写。(1).显示驱动程序
16×16点阵LED电子显示屏的设计
单片机原理及应用课程设计
显示驱动程序在进入中断后首先要对定时器T0重新赋初值以保证显示屏刷新率的稳定,1/16扫描的显示屏的刷新率(帧频)的计算公式如下:
刷新率(帧频)fosc11 式1 T0溢出率161612(65536t0)其中fosc为晶振频率,t0为定时器T0初值(工作在16位定时器模式)。
然后显示驱动程序查询当前燃亮的行号,从显示缓存区内读取下一行的显示数据,并通过串口发送给移位寄存器。为消除在切换行显示数据的时候产生拖尾现象,驱动程序先要关闭显示屏,即消隐,等显示数据打入输出锁存器并锁存,然后再输出新的行号,重新打开显示。图5为显示程序流程图。
16×16点阵LED电子显示屏的设计
单片机原理及应用课程设计
(2).系统主程序
系统主程序开始以后首先是对系统环境初始化,包括设置串口、定时器、中断和端口。先是显示屏中所有的灯全亮用以验证实验线路的正确,然后以“卷帘出”效果向上滚动显示“咸宁学院电子与信息工程学院零八级电气工程及其自动化一班周俊龙!指导老师:徐武雄”的字样,由于单片机没有停机指令,所以我们可以设置系统程序不断地循环执行上述显示效果。
16×16点阵LED电子显示屏的设计
单片机原理及应用课程设计
5系统调试
介绍所设计的系统调试过程、在调试中遇到的问题及解决的办法。
LED显示屏硬件电路只要器件质量可靠,管脚焊接正确,一般无需调试即可正常工作。软件部分需要调试的主要有显示屏刷新频率及显示效果两部分。显示屏刷新率由定时器T0的溢出率和单片机的晶振频率决定,1.测试仪器:
AVR Studio软件、仿真器、万用表 2.测试与分析:
(1)测试点阵:系统上电后,全屏点亮时无暗点,表明点阵正常,可使用。
(2)测试键盘:直接连接键盘到单个可用LED发光二极管(这里采用实验板上发光二极管),按下每个按键看LED是否可亮,若亮,说明键盘可用。
(3)程序调试:通过AVR Studio下载程序到单片机上,逐步运行程序,并Watch相关变量的值的改变,以确定各部分程序是否正常运行并可用,直到检测完毕。
(4)实时操作:运行已通过调试的程序,这时点阵屏自左往右滚动显示“我爱学习零八级电气一班蔡臣:学号083521041,指导老师:徐武雄”
至此,调试彻底通过!
16×16点阵LED电子显示屏的设计
单片机原理及应用课程设计
整个课程大体操作如上所述,但实际在细节上遇到较多问题,因为所做为点阵,相关实验数据没有,遇到的问题主要有因存在虚焊点而导致有灰点;因程序问题而导致的重影;还有一个问题是因单片机端口输出的低电平不够低,使得我们不能用使能端控制74HC154。详细实验遇到的问题及解决将在总结报告中指出。显示效果处理程序的内容及方法非常广泛,其调试过程在此不作具体讨论,读者可对照源程序自行分析。这个方案设计的16×16点阵LED图文显示屏,电路简单,成本较低,且较容易扩展成更大的显示屏;显示屏各点亮度均匀、充足;显示图形或文字稳定、清晰无串扰;可用静止、移入移出等多种显示方式显示图形或文字。
6设计总结
本文所讨论的点阵显示屏的设计采用了单片机AT89S52作为系统的中央控制单元,并结合软件编程,实现的点阵显示屏静态显示、动态显示,简化了系统操作,丰富了系统功能,符合未来交通智能化、网络化的发展方向。经过实际应用证明,本显示屏可以作为信息显示装置。用于公共场所来进行信息显示,而且具有工作稳定、字符清晰、亮度适中等特点。若所显示的信息较为简单,也可直接将信息代码拷入单片机中,还可以通过外扩储存器的方式来增加显示的信息量。
在本次课程设计过程当中,指导老师徐武雄老师和其他老师以及同学们都给予了很大的帮助支持,徐老师严谨的治学态度和务实的 14
16×16点阵LED电子显示屏的设计
单片机原理及应用课程设计
求知精神给我留下了很深的印象,他鼓励我孜孜不倦,锐意进取,特别是在困难的时候,他有意识地培养我独立思考和解决问题的能力。徐老师的严格要求,令我以后的工作和生活当中受益匪浅。在此,对他们所给予的指导和帮助表示最衷心的感谢。
7附 录A;源程序
源程序代码(主要语句要有注释)。;
;***********************************;*
*;* 咸宁学院 单片机课程设计
*;* 单个16*16点阵电子屏字符显示器 *;* AT89S52 12MHz晶振 *;
*
2011.5.8 *;************************************* 15
16×16点阵LED电子显示屏的设计
单片机原理及应用课程设计
;显示字用查字法,不占内存,字符用16*16共阳极LED点阵,;效果:向上滚动显示19个字,再重复循环。
;R1:查表偏址寄存器,B:查表首址,R2:扫描地址(从00H~0FH)。;R3:滚动显示时控制移动速度,单字显示可控制静止显示时间。;*****************;中断入口程序;;*****************;ORG 0000H LJMP START ORG 0003H RETI ORG 000BH LJMP INTT0 ORG 0013H RETI ORG 001BH RETI ORG 0023H RETI ORG 002BH RETI;
16×16点阵LED电子显示屏的设计
单片机原理及应用课程设计
;**********;初始化程序;**********;**********;主程序;**********;START: MOV 20H,#00H;始扫描标志,;01 MOV A,#0FFH;MOV P1,A MOV P2,A MOV P3,A MOV P0,A CLR P1.6;控制位
MOV TMOD,#01H;扫描用
MOV TH0,#0FCH;1ms MOV TL0,#18H MOV SCON,#00H;MOV IE,#82H;T0
清标志,00H为第16行开为一帧扫描结束标志 端口初始化 串行寄存器输入打入输出使用T0作16位定时器,行初值(12MHz)
串口0方式传送显示字节 中断允许,总中断允许
16×16点阵LED电子显示屏的设计
单片机原理及应用课程设计
MOV SP,#70H MAIN: LCALL DIS1;显示准备,黑屏,1.5s MOV DPTR,#TAB LCALL MOVDISP;向上滚动显示一页(8个字)INC DPH LCALL MOVDISP;向上滚动显示一页(8个字)INC DPH LCALL MOVDISP;向上滚动显示一页(8个字)INC DPH LCALL MOVDISP;向上滚动显示一页(8个字)INC DPH LCALL MOVDISP;向上滚动显示一页(8个字)AJMP MAI;;******************;多字滚动显示子程序;******************;每次8个字,入口时定义好DPTR;MOVDISP: MOV B,#00H;向上移动显示,查表偏址暂存(从00开始)
DISLOOP: MOV R3,#07H;移动速度 DISMOV: MOV R2,#00H;从第0行开始 MOV R1,B
16×16点阵LED电子显示屏的设计
单片机原理及应用课程设计
SETB TR0;开扫描(每次一帧)WAITMOV:JBC 01H,DISMOV1;标志为1扫描一帧结束(16ms为一帧,每行1ms)
AJMP WAITMOV DISMOV1:DJNZ R3,DISMOV;一帧重复显示(控制移动速度)
INC B;INC B MOV A,R1;R1 JZ MOVOUT AJMP DISLOOP MOVOUT:RET;;**************;单字显示子程序;**************;显示表中的某个字
DIS1: MOV R3,#5AH
(16ms*#=1.6s)DIS11: MOV R2,#00H;00~0Fh)
MOV DPTR,#TAB;MOV R1,#00H;
显示下一行(每行2字)为0,8个字显示完 移动显示结束;
;静止显示时间控制一帧扫描初始值(行地址从取表首地址
查表偏址(显示第一个字)
16×16点阵LED电子显示屏的设计
单片机原理及应用课程设计
SETB TR0;开扫描(每次一帧)WAIT11:JBC 01H,DIS111;为1,扫描一帧结束 AJMP WAIT11 DIS111:DJNZ R3,DIS11 RET;;*************;扫描程序;*************;1ms刷新一次,每行显示1ms INTT0: PUSH ACC MOV TH0,#0FCH;1ms MOV TL0,#18H JBC 00H,GOEND;16 INC R1;MOV A,R1 MOVC A,@A+DPTR;CLR TI MOV SBUF,A;WAIT: JBC TI,GO;AJMP WAIT GO: DEC R1;MOV A,R1
初值重装 行扫描标志为1,结束取行右边字节偏址 查表 串口0方式发送 等待发送完毕 取左边字节偏址
16×16点阵LED电子显示屏的设计
单片机原理及应用课程设计
MOVC A,@A+DPTR CLR TI MOV SBUF,A WAIT1: JBC TI,GO1 AJMP WAIT1 GO1: SETB P1.7;NOP;SETB 出端
NOP NOP CLR P1.6;MOV A,R2;ORL A,#0F0H;MOV R2,A;MOV A,P1;ORL A,#0FH;ANL A,R2;MOV P1,A;CLR P1.7;INC R2;INC R1
P1.6;关行显示,准备刷新 串口寄存器数据稳定 产生上升沿,行数据达入输恢复低电平修改显示行地址 修改显示行地址 修改显示行地址 修改显示行地址 修改显示行地址 修改显示行地址 修改完成 开行显示 下一行扫描地址值 21
16×16点阵LED电子显示屏的设计
单片机原理及应用课程设计
INC R1;下一行数据地址 MOV A,R2 ANL A,#0FH JNZ GO2 SETB 00H;GO2: POP ACC RETI GOEND: CLR TR0 SETB 01H POP ACC RETI TAB: DB 00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H;DB 00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,0FFH,00H;;--文字: 我--;--华文行楷12;此字体下对应的点阵为:宽x高=16x16 DB 0F9H,0BFH,0C7H,0AFH,0F7H,0B7H,0F7H,0B7H,0F7H,0BFH,00H,01H,0
16×16点阵LED电子显示屏的设计
单片机原理及应用课程设计
F7H,0BFH,0F7H,0B7H;DB 0F1H,0D7H,0C7H,0CFH,37H,0DFH,0F7H,0AFH,0F6H,6DH,0F7H,0F5H,0D7H,0F9H,0EFH,0FDH;;--文字: 爱--;--华文行楷12;此字体下对应的点阵为:宽x高=16x16 DB 0FFH,07H,0C0H,6FH,0EDH,0EFH,0F6H,0DFH,0C0H,01H,0DDH,0FDH,0BDH,0FFH,0C0H,03H;DB 0FBH,0FFH,0F8H,0FH,0F3H,0DFH,0F4H,0BFH,0EFH,3FH,9CH,0CFH,73H,0F1H,0CFH,0FBH;;--文字: 学--;--华文行楷12;此字体下对应的点阵为:宽x高=16x16 DB 0FEH,0F7H,0EFH,73H,0F3H,37H,0F7H,6FH,80H,01H,0BFH,0FBH,70H,17H,0FFH,0BFH;DB 0FFH,7FH,80H,01H,0FFH,7FH,0FFH,7FH,0FFH,7FH,0FFH,7FH,0FDH,7FH,0FEH,0FFH;;--文字:习--;--华文行楷12;此字体下对应的点阵为:宽x高=16x16
16×16点阵LED电子显示屏的设计
单片机原理及应用课程设计
DB 0FFH,0FFH,0C0H,03H,0FFH,0FBH,0F7H,0FBH,0FBH,0FBH,0FCH,0FBH,0FEH,0EBH,0FFH,9BH;DB 0FEH,7BH,0F9H,0FBH,0C7H,0FBH,0EFH,0FBH,0FFH,0FBH,0FFH,0DBH,0FFH,0EBH,0FFH,0F7H;;--文字:!--;--华文行楷12;此字体下对应的点阵为:宽x高=16x16 DB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0EFH,0FFH,0EFH,0FFH,0EFH,0FFH,0EFH,0FFH;DB 0EFH,0FFH,0EFH,0FFH,0EFH,0FFH,0EFH,0FFH,0EFH,0FFH,0FFH,0FFH,0EFH,0FFH,0FFH,0FFH;;--文字: 零--;--华文行楷12;此字体下对应的点阵为:宽x高=16x16 DB 0E0H,07H,0FEH,0FFH,80H,01H,0BEH,0FBH,0E2H,8FH,0FEH,0FFH,0E2H,8FH,0FDH,7FH;DB 0FBH,9FH,0E5H,0E1H,1EH,0F7H,0E0H,1FH,0FFH,0BFH,0FDH,7FH,0FEH,0FFH,0FEH,0FFH;
16×16点阵LED电子显示屏的设计
单片机原理及应用课程设计
;--文字: 八--;--华文行楷12;此字体下对应的点阵为:宽x高=16x16 DB 0FFH,0FFH,0FFH,0BFH,0FBH,9FH,0F9H,0BFH,0FBH,0BFH,0FBH,0BFH,0FBH,0BFH,0F7H,0DFH;DB 0F7H,0DFH,0EFH,0EFH,0EFH,0EFH,0DFH,0F7H,0BFH,0F1H,7FH,0FBH,0FFH,0FFH,0FFH,0FFH;;--文字: 电--;--华文行楷12;此字体下对应的点阵为:宽x高=16x16--DB 0FEH,0FFH,0FEH,0FFH,0FEH,0FFH,0C0H,07H,0DEH,0F7H,0DEH,0F7H,0C0H,07H,0DEH,0F7H;DB 0DEH,0F7H,0DEH,0F7H,0C0H,07H,0DEH,0F7H,0FEH,0FDH,0FEH,0FDH,0FFH,01H,0FFH,0FFH;;--文字: 气--;--华文行楷12;此字体下对应的点阵为:宽x高=16x16 DB 0F7H,0FFH,0F7H,0FFH,0E0H,01H,0EFH,0FFH,0DFH,0FFH,0B0H,07H,0FFH,0FFH,0E0H,0FH;DB
16×16点阵LED电子显示屏的设计
单片机原理及应用课程设计
0FFH,0EFH,0FFH,0EFH,0FFH,0EFH,0FFH,0EFH,0FFH,0F5H,0FFH,0F5H,0FFH,0F9H,0FFH,0FDH;;--文字: 一--;--华文行楷12;此字体下对应的点阵为:宽x高=16x16 DB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FBH,80H,01H;DB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH;;--文字: 班--;--华文行楷12;此字体下对应的点阵为:宽x高=16x16 DB 0FEH,0FFH,06H,81H,0DEH,0EFH,0DEH,0EFH,0DEH,0EFH,0DAH,0EFH,02H,81H,0DAH,0EFH;DB 0D6H,0EFH,0DEH,0EFH,0DEH,0EFH,0C5H,0EFH,3DH,0EFH,0FBH,01H,0F7H,0FFH,0EFH,0FFH;;--文字: 蔡--;--华文行楷12;此字体下对应的点阵为:宽x高=16x16 DB 0FBH,0BFH,00H,01H,0FBH,0BFH,0EFH,0FFH,0E1H,07H,0DDH,77H,0AB
16×16点阵LED电子显示屏的设计
单片机原理及应用课程设计
H,0AFH,57H,0DFH;DB 0E8H,27H,0DFH,0F9H,20H,07H,0FEH,0FFH,0EEH,0DFH,0E6H,0E7H,0DAH,0F7H,0BDH,0FFH;;--文字: 臣--;--华文行楷12;此字体下对应的点阵为:宽x高=16x16 DB 0FFH,0FFH,0C0H,03H,0DEH,0FFH,0DEH,0FFH,0DEH,0FFH,0C0H,07H,0DFH,0F7H,0DFH,0F7H;DB 0DFH,0F7H,0C0H,07H,0DEH,0FFH,0DEH,0FFH,0DEH,0FFH,0DEH,0FFH,0C0H,01H,0FFH,0FFH;;--文字:,--;--华文行楷12;此字体下对应的点阵为:宽x高=16x16 DB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH;DB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0CFH,0FFH,0CFH,0FFH,0EFH,0FFH,0DFH,0FFH,0FFH,0FFH;;--文字: 学--;--华文行楷12;此字体下对应的点阵为:宽x高=16x16
16×16点阵LED电子显示屏的设计
单片机原理及应用课程设计
DB 0FEH,0F7H,0EFH,73H,0F3H,37H,0F7H,6FH,80H,01H,0BFH,0FBH,70H,17H,0FFH,0BFH;DB 0FFH,7FH,80H,01H,0FFH,7FH,0FFH,7FH,0FFH,7FH,0FFH,7FH,0FDH,7FH,0FEH,0FFH;;--文字: 号--;--华文行楷12;此字体下对应的点阵为:宽x高=16x16 DB 0E0H,0FH,0EFH,0EFH,0EFH,0EFH,0EFH,0EFH,0E0H,0FH,0FFH,0FFH,00H,01H,0F7H,0FFH;DB 0F7H,0FFH,0E0H,0FH,0F7H,0EFH,0FFH,0EFH,0FFH,0EFH,0FEH,0EFH,0FFH,5FH,0FFH,0BFH;;--文字: :--;--华文行楷12;此字体下对应的点阵为:宽x高=16x16 DB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH;DB 0FFH,0FFH,0CFH,0FFH,0CFH,0FFH,0FFH,0FFH,0CFH,0FFH,0CFH,0FFH,0FFH,0FFH,0FFH,0FFH;
16×16点阵LED电子显示屏的设计
单片机原理及应用课程设计
;--文字: 0--;--华文行楷12;此字体下对应的点阵为:宽x高=16x16 DB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0E7H,0FFH,0DBH,0FFH,0BDH,0FFH,0BDH,0FFH,0BDH,0FFH;DB 0BDH,0FFH,0BDH,0FFH,0BDH,0FFH,0BDH,0FFH,0DBH,0FFH,0E7H,0FFH,0FFH,0FFH,0FFH,0FFH;;--文字: 8--;--华文行楷12;此字体下对应的点阵为:宽x高=16x16 DB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0C3H,0FFH,0BDH,0FFH,0BDH,0FFH,0BDH,0FFH,0DBH,0FFH;DB 0E7H,0FFH,0DBH,0FFH,0BDH,0FFH,0BDH,0FFH,0BDH,0FFH,0C3H,0FFH,0FFH,0FFH,0FFH,0FFH;;--文字: 3--;--华文行楷12;此字体下对应的点阵为:宽x高=16x16 DB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0C3H,0FFH,0BDH,0FFH,0BDH,0FFH,0FBH,0FFH,0E7H,0FFH;DB
16×16点阵LED电子显示屏的设计
单片机原理及应用课程设计
0FBH,0FFH,0FDH,0FFH,0FDH,0FFH,0BDH,0FFH,0BBH,0FFH,0C7H,0FFH,0FFH,0FFH,0FFH,0FFH;;--文字: 5--;--华文行楷12;此字体下对应的点阵为:宽x高=16x16 DB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,81H,0FFH,0BFH,0FFH,0BFH,0FFH,0BFH,0FFH,0A7H,0FFH;DB 9BH,0FFH,0FDH,0FFH,0FDH,0FFH,0BDH,0FFH,0BBH,0FFH,0C7H,0FFH,0FFH,0FFH,0FFH,0FFH;;--文字: 2--;--华文行楷12;此字体下对应的点阵为:宽x高=16x16 DB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0C3H,0FFH,0BDH,0FFH,0BDH,0FFH,0BDH,0FFH,0FBH,0FFH;DB 0FBH,0FFH,0F7H,0FFH,0EFH,0FFH,0DFH,0FFH,0BDH,0FFH,81H,0FFH,0FFH,0FFH,0FFH,0FFH;;--文字: 1--;--华文行楷12;此字体下对应的点阵为:宽x高=16x16 DB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0EFH,0FFH,8FH,0FFH,0EFH,0FFH,16×16点阵LED电子显示屏的设计
单片机原理及应用课程设计
0EFH,0FFH,0EFH,0FFH;DB 0EFH,0FFH,0EFH,0FFH,0EFH,0FFH,0EFH,0FFH,0EFH,0FFH,83H,0FFH,0FFH,0FFH,0FFH,0FFH;;--文字: 0--;--华文行楷12;此字体下对应的点阵为:宽x高=16x16 DB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0E7H,0FFH,0DBH,0FFH,0BDH,0FFH,0BDH,0FFH,0BDH,0FFH;DB 0BDH,0FFH,0BDH,0FFH,0BDH,0FFH,0BDH,0FFH,0DBH,0FFH,0E7H,0FFH,0FFH,0FFH,0FFH,0FFH;;--文字: 4--;--华文行楷12;此字体下对应的点阵为:宽x高=16x16 DB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FBH,0FFH,0F3H,0FFH,0EBH,0FFH,0DBH,0FFH,0DBH,0FFH;DB 0BBH,0FFH,0BBH,0FFH,81H,0FFH,0FBH,0FFH,0FBH,0FFH,0E1H,0FFH,0FFH,0FFH,0FFH,0FFH;;--文字: 1--;--华文行楷12;此字体下对应的点阵为:宽x高=16x16
16×16点阵LED电子显示屏的设计
单片机原理及应用课程设计
DB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0EFH,0FFH,8FH,0FFH,0EFH,0FFH,0EFH,0FFH,0EFH,0FFH;DB 0EFH,0FFH,0EFH,0FFH,0EFH,0FFH,0EFH,0FFH,0EFH,0FFH,83H,0FFH,0FFH,0FFH,0FFH,0FFH;;--文字:,--;--华文行楷12;此字体下对应的点阵为:宽x高=16x16 DB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH;DB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0CFH,0FFH,0CFH,0FFH,0EFH,0FFH,0DFH,0FFH,0FFH,0FFH;;--文字: 指--;--华文行楷12;此字体下对应的点阵为:宽x高=16x16 DB 0EEH,0FFH,0EEH,0C7H,0EEH,3FH,0EEH,0FBH,02H,0FBH,0EEH,03H,0EBH,0FFH,0E6H,03H;DB 0CEH,0FBH,2EH,0FBH,0EEH,03H,0EEH,0FBH,0EEH,0FBH,0EEH,0FBH,0AEH,03H,0DFH,0FFH;
16×16点阵LED电子显示屏的设计
单片机原理及应用课程设计
;--文字: 导--;--华文行楷12;此字体下对应的点阵为:宽x高=16x16--DB 0FFH,0FFH,0E0H,0FH,0EFH,0EFH,0E0H,0FH,0EFH,0FBH,0EFH,0FBH,0F0H,03H,0FFH,0DFH;DB 0FFH,0DFH,00H,01H,0F7H,0DFH,0FBH,0DFH,0F9H,0DFH,0FBH,0DFH,0FFH,5FH,0FFH,0BFH;;--文字: 老--;--华文行楷12;此字体下对应的点阵为:宽x高=16x16 DB 0FDH,0FFH,0FDH,0F7H,80H,03H,0FDH,0F7H,0FDH,0EFH,0FDH,0DFH,00H,01H,0FEH,7FH;DB 0FDH,0FFH,0F3H,0CFH,0CBH,3FH,38H,0FFH,0FBH,0FBH,0FBH,0FBH,0FCH,03H,0FFH,0FFH;;--文字: 师--;--华文行楷12;此字体下对应的点阵为:宽x高=16x16 DB 0F7H,0FFH,0F4H,01H,0B7H,0DFH,0B7H,0DFH,0B4H,01H,0B5H,0DDH,0B5H,0DDH,0B5H,0DDH;
16×16点阵LED电子显示屏的设计
单片机原理及应用课程设计
DB 0B5H,0DDH,0ADH,0DDH,0ADH,0D5H,0EDH,0DBH,0DFH,0DFH,0BFH,0DFH,7FH,0DFH,0FFH,0DFH;;--文字: :--;--华文行楷12;此字体下对应的点阵为:宽x高=16x16 DB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH;DB 0FFH,0FFH,0CFH,0FFH,0CFH,0FFH,0FFH,0FFH,0CFH,0FFH,0CFH,0FFH,0FFH,0FFH,0FFH,0FFH;;--文字: 徐--;--华文行楷12;此字体下对应的点阵为:宽x高=16x16 DB 0EFH,0BFH,0E7H,0BFH,0DFH,5FH,0BEH,0E7H,6DH,0F1H,0E2H,0BH,0CFH,0BFH,9FH,0BFH;DB 58H,03H,0DFH,0BFH,0DDH,0AFH,0DCH,0B3H,0DBH,0B9H,0D7H,0BBH,0DEH,0BFH,0DFH,7FH;;--文字: 武--;--华文行楷12;此字体下对应的点阵为:宽x高=16x16--
16×16点阵LED电子显示屏的设计
单片机原理及应用课程设计
DB 0FFH,0BFH,0FFH,0AFH,0C0H,0B7H,0FFH,0BFH,00H,01H,0FFH,0BFH,0FBH,0BFH,0FBH,0DFH;DB 0D8H,5FH,0DBH,0DFH,0DBH,0DFH,0DBH,0EFH,0D8H,0EDH,0C7H,0F5H,1FH,0F9H,0FFH,0FDH;;--文字: 雄--;--华文行楷12;此字体下对应的点阵为:宽x高=16x16 DB 0EFH,5FH,0EFH,6FH,0EFH,6FH,02H,01H,0DEH,0EFH,0DCH,0EFH,0D6H,03H,0B6H,0EFH;DB 0AEH,0EFH,0AEH,03H,5EH,0EFH,0D6H,0EFH,0BAH,0EFH,02H,01H,0FAH,0FFH,0FEH,0FFH;END
8附 录B;作品实物图片
16×16点阵LED电子显示屏的设计
单片机原理及应用课程设计
9参考文献
[1] 刘欣铭,张广斌.LED显示屏技术综述[J].黑龙江电力,2003, 25(4):294-296.[2] 阳进.基于单片机的LED显示屏的汉字显示[J].中国科技信息,2005,(12):112.[3] Mark Nelson著.潇湘工作室译.串行通信开发指南[M].中国水利水电出版社,2002.[4] 王宜怀.单片机原理及其嵌入式应用教程[M].北京希望电子出版社,2002.[5] 韩润萍,陈小萍.点阵LED显示屏控制系统[J].微计算机信息,2003,19(10):50-51.[6] http://www.xiexiebang.com
第二篇:LED点阵显示屏设计报告
XX大学
开发性实验结题报告
学
院:
电子工程学院
班
级:光信
姓
名:
学
号:
班
级:光信
姓
名:
学
号:
班
级:光信
姓
名:
学
号:
2014年X月X日
1632点阵LED电子显示屏
摘要:
本设计是一16×32点阵LED电子显示屏的设计。
整机以美国ATMEL
公司生产的40脚单片机AT89C52为核心,介绍了以它为控制系统的LED点阵电子显示屏的动态设计和开发过程。通过该芯片控制两个行驱动器74HC573和四个列驱动器74HC573来驱动显示屏显示。该电子显示屏可以显示各种文字或单色图像,全屏采用8块8×8点阵LED显示模块来组成16×32点阵显示模式。文中详细介绍了LED点阵显示的硬件设计思路、硬件电路各个部分的功能及原理、相应软件的程序设计,以及使用说明等。
单片机控制系统程序采用单片机C语言进行编辑,通过编程控制各显示点对应LED阳极和阴极端的电平,就可以有效的控制各显示点的亮灭。LED显示以其组构方式灵活、显示稳定、功耗低、寿命长、技术成熟、成本低廉等特点得到广泛的应用。
关键词:AT89C51单片机;LED;点阵显示;动态显示;C语言。
一
绪论
LED显示屏是利用发光二极管点阵模块或像素单元组成的平面式显示屏幕。它具有发光效率高、使用寿命长、组态灵活、色彩丰富以及对室内外环境适应能力强等优点。并广泛的应用于公交汽车,码头,商店,学校和银行等公共场合的信息发布和广告宣传。LED显示屏经历了从单色,双色图文显示屏到现在的全彩色视频显示屏的发展过程,自20世纪八十年代开始,LED显示屏的应用领域已经遍布交通、电信、教育、证券、广告宣传等各方面。
LED点阵显示屏概述
LED点阵显示屏的构成型式有多种,其中典型的有两种。一种把所需展示的广告信息烧写固化到EPROM芯片内,能进行固定内容的多幅汉字显示,称为单显示型;另一种在机内设置了字库、程序库,具有程序编制能力,能进行内容可变的多幅汉字显示,称可编程序型。
目前,国内的LED点阵显示屏大部分是单显示型,其显示的内容相对较少,显示花样较单一。一般在产品出厂时,显示内容就已写入显示屏控制系统中的EPROM芯片内,当需要更换显示内容时就非常困难,这样使该类型的显示屏使用范围受到了限制。
国内的另一种LED显示屏——可编程序型LED显示屏,虽然增加了显示屏系统的编程能力,显示内容和显示花样都有所增加,但也存在着更换显示内容不便的缺点。随着社会经济的迅速发展,如今的广告牌都存在着显示内容丰富、信息量大、信息更换速度快等特点。因此传统的LED显示屏控制系统已经越来越不能满足现代广告宣传业的需要。而利用PC机通信技术控制LED显示屏,则具有显示内容丰富,信息更换灵活等优点。
LED显示屏控制技术状况
显示屏的控制系统包括输入接口电路、信号控制、转换和数字化处理电路及输出接口电路等,涉及的具体技术很多,其关键技术包括串行传输与并行传输技术、动态扫描与静态锁存技术、自动检测及远程控制技术等。
二
系统总体设计方案
需要实现的功能
设计一个室内用16×32点阵LED图文显示屏,要求在目测条件下LED显示屏各点亮度均匀、充足,可显示图形和文字,显示图形或文字应稳定、清晰无串扰。图形或文字显示有静止、移入移出等显示方式。
LED显示特点
从理论上说,不论显示图形还是文字,都是控制与组成这些图形或文字的各个点所在位置相对应的LED器件发光。通常事先把需要显示的图形文字转换成点阵图形,再按照显示控制的要求以一定的格式形成显示数据。对于只控制通断的图文显示屏来说,每个LED发光器件占据数据中的1位(1bit),在需要该LED器件发光的数据中相应的位填1,否则填0。当然,根据控制电路的安排,相反的定义同样是可行的。这样依照所需显示的图形文字,按显示屏的各行各列逐点填写显示数据,就可以构成一个显示数据文件。
显示图形的数据文件,其格式相对自由,只要能够满足显示控制的要求即可。文字的点阵格式比较规范,可以采用现行计算机通用的字库字模。组成一个字的点阵,其大小也可以有16×16、24×24、32×32、48×48等不同规格。汉字的点阵结构相应的显示数据是用16进制格式以字节为单位表示的。
用点阵方式构成图形或文字,是非常灵活的,可以根据需要任意组合和变化,只要设计好合适的数据文件,就可以得到满意的显示效果。因而采用点阵式图文显示屏显示经常需要变化的信息,是非常有效的。点阵显示方式适应信息变化的优点,是以点阵显示器的价格和其复杂的控制电路为代价的。点阵显示器在整个显示单元的所有位置上都布置了LED器件,而像数码管一类的显示器件只在需要发光的七段位置上布置LED器件,其它位置是空白的。因此,点阵显示器在相同面积情况下,价格要贵些。但是,数码管可显示的信息有限,只有0~9或单个的英文字符,由于组合形成的字符不多,所以其显示数据和控制电路都比较简单。点阵显示器则不然,它要对点阵上全部LED进行控制,并能生成所有可能显示的图形文字,其显示数据和控制电路自然要复杂得多。
设计方案论证:
3.1显示模式方案
为了吸引观众增强显示效果,可以有多种显示模式,最简单的显示模式是静态显示。这里所说的“静态显示模式”不同于静态驱动方式。与静态显示模式相对应,就有各种动态显示模式,它们所显示的图文都是能够动的。按照图文运动的特点又可以分为闪烁、平移、旋转、缩放等多种显示模式。产生不同显示模式的方法,并不意味着一定要重新编写显示数据,可以通过一定的算法从原来的显示数据直接生成。例如,按顺序调整行号,可以使显示图文产生上下平移;而顺序调整列显示数据的位置,就可以达到左右平移的目的;同时调整行列顺序,就能得到对角线平移的效果。其它模式的数据刷新,也可找到相应的算法。不过当算法太复杂,太浪费时间的话,也可以考虑预先生成刷新数据,存储备用。刷新的时间控制,要考虑运动图形文字的显示效果。刷新太慢,动感不显著;刷新太快了,中间过程看不清。一般刷新周期可控制在几十毫秒范围之内。
动态扫描的意思简单地说就是逐行轮流点亮,这样扫描驱动电路就可以实现多行(比如16行)的同名列共用一套列驱动器,每行有一个行驱动器,具体就16×32的点阵来说,把所有同一行的发光管的阳极连在一起,把所有同一列的发光管的阴极连在一起(共阳的接法),由行译码器给出的行选通信号,从第一行开始,按顺序依次对各行进行扫描(把该行与电源的一端接通)。
另一方面,根据各列锁存的数据,确定相应的列驱动器是否将该列与电源的另一端接通。接通的列,就在该行该列燃亮相应的LED;未接通的列所对应的LED熄灭。当一行的扫描持续时间结束后,该行燃亮的LED也就熄灭;下一行又以同样的方法进行显示。全部各行都扫过一遍之后(一个扫描周期),又从第一行开始下一个周期的扫描。只要一个扫描轮回的速度足够快(每秒24次以上),由于人眼的视觉暂留现象,就不容易感觉出闪烁现象,就能看到显示屏上稳定的图形了。而且动态扫描方式功耗低,硬件成本低,每个LED都不是连续工作,因而还有利于延长LED的使用寿命。
3.2
数据传输方案
采用扫描方式进行显示时,显示数据通常存储在单片机的存储器中,按8位一个字节的形式顺序排放。显示时要把一行中各列的数据都传送到相应的列驱动器上去,这就存在一个显示数据传输方式的问题。从控制电路到列驱动器的数据传输可以采用并行方式或串行方式。显然,采用并行方式时,从控制电路到列驱动器的线路数量大,相应的硬件数目多。当列数很多时,并行传输的方案是不可取的。
采用串行传输的方法,控制电路可以只用一根信号线,将列数据一位一位传往列驱动器,在硬件方面无疑是十分经济的。但是,串行传输过程较长,数据要经过并行到串行和串行到并行两次变换。首先,单片机从存储器中读出的8位并行数据要通过并串变换,按顺序一位一位地输出给列驱动器。与此同时,列驱动器中每一列都把当前数据传向后一列,并从前一列接收新数据,一直到全部列数据都传输完为止。只有当一行的各列数据都已传输到位之后,这一行的各列才能并行地进行显示。这样,对于一行的显示过程就可以分解列数据准备(传输)和列数据显示两个部分。对于串行传输方式来说,列数据准备时间可能相当长,在行扫描周期确定的情况下,留给行显示的时间就太少了,以至影响到LED的亮度。
解决串行传输中列数据准备和列数据显示的时间矛盾问题,可以采用重叠处理的方法。即在显示本行各列数据的同时,准备下一行的列数据。为了达到重叠处理的目的,列数据的显示就需要具有锁存功能。
经过上述分析,可以归纳出列驱动器电路应具备的主要功能。对于列数据准备来说,它应能实现串入并出的移位功能;对于列数据显示来说,应具有并行锁存的功能。这样,本行已准备好的数据打入并行锁存器进行显示时,串并移位寄存器就可以准备下一行的列数据,而不会影响本行的显示。图2-1为显示屏电路实现的结构框图。
单片机
列驱动器
四个74HC573
两个74HC573
列
LED显示点阵
16x32
电源
显示屏电路框图
三
硬件系统设计
元器件的选择
元件编号
规格参数
LED
16x32点阵
PCB板
20cm*20cm环氧板
U1~
U6
74HC573
U7
AT89C52
U8,U9
74HC02
R1~R33
330欧姆
C1、C2
22pF
晶振
1个
可行性分析:作品选用52做核心,相对于其他芯片52读取也很方便,价格低廉。选取138以及02选通74HC573做行、列驱动器。之所以选取138以及02是因为用138及02选通573是因为,当138选通573时其他573被默认关闭,这给软件编写提供了很大便利。用573而不用595做驱动是因为对573熟悉,对以前学过的硬件有一个复习巩固的作用。没有用2803做驱动是因为573提供的电压完全可以提供16x32LED灯的两端电压。
芯片简介
(1)AT89C52
AT89C52是美国ATMEL公司生产的8位Flash
ROM单片机。其最突出的优点是片内ROM为Flash
ROM,可擦写1000次以上,应用并不复杂的通用ROM写入器就能方便的擦写,读取也很方便,价格低廉,具有在片程序ROM二级保密系统。因此可灵活应用于各种控制领域。AT89C52包含以下一些功能部件:
(1)一个8位CPU;
(2)一个片内振荡器和时钟电路;
(3)4KB
Flash
ROM;
(4)128B
内RAM;
(5)可寻址64KB的外ROM和外RAM控制电路;
(6)两个16位定时/计数器;
(7)21个特殊功能寄存器;
(8)4个8位并行I/O口;
AT89C52单片机一般采用双列直插DIP封装,共40个引脚,图3-3为其引脚排列图。40个引脚大致可分为4类:电源、时钟、控制各I/O引脚。
电源
Vcc——芯片电源,接+5V;GND——接地端。
时钟
XTAL1、XTAL2——晶体振荡电路反相输入端和输出端。
单片机系统外围电路
(2)74HC573
编程时,先将使能端置1,此时输出数据和输入数据一致;为了将输出的数据锁定,防止误操作,可将使能端清0,此时,输出端保持原有值,不再变化。(1,使能置1;
2,数据输入到锁存器输入端(输出=输入);
3,使能置0(输
出恒定=先前输入);(达到锁存功能))
74HC系列的数字集成电路,当5V供电时,输出高电平接近5V,带负载后,能输出4.95V左右。
从你图上看,这里需要573输出高电平段码,138输出位码,进行动态显示。但是图上有错,为了LED安全使用,在573的输出端与7LED连接之间,应串联300Ω电阻。
附加:
锁存器的作用
锁存器(Latch)是一种对脉冲电平敏感的存储单元电路,它们可以在特定输入脉冲电平作用下改变状态。锁存,就是把信号暂存以维持某种电平状态。锁存器的最主要作用是缓存,其次完成高速的控制其与慢速的外设的不同步问题,再其次是解决驱动的问题,最后是解决一个
I/O
口既能输出也能输入的问题。
(3)74HC02
74HC02
概述
74HC02是一款高速CMOS器件,74HC02遵循JEDEC标准no.7A。74HC02引脚兼容低功耗肖特基TTL(LSTTL)系列。
74HC02实现了4路2输入或非门功能。
74HC02
特性
·
输入电平
o
74HC02
CMOS电平
·
ESD保护
o
HBM
JESD22-A114E超过2000
V
o
MM
JESD22-A115-A超过200
V
·
可选多种封装类型
·
温度范围
o
-40~+85
℃
o
-40~+125
℃
(4)74HC138
CD74HC138,CD74HC238和CD74HCT138,CD74HCT238是高速硅栅CMOS解码器,适合内存地址解码或数据路由应用。74HC138
作用原理于高性能的存贮译码或要求传输延迟时间短的数据传输系统,在高性能存贮器系统中,用这种译码器可以提高译码系统的效率。将快速赋能电路用于高速存贮器时,译码器的延迟时间和存贮器的赋能时间通常小于存贮器的典型存取时间,这就是说由肖特基钳位的系统译码器所引起的有效系统延迟可以忽略不计。HC138
按照三位二进制输入码和赋能输入条件,从8
个输出端中译出一个
低电平输出。两个低电平有效的赋能输入端和一个高电平有效的赋能输入端减少了扩展所需要的外接门或倒相器,扩展成24
线译码器不需外接门;扩展成32
线译码器,只需要接一个外接倒相器。在解调器应用中,赋能输入端可用作数据输入端。
行、列驱动电路
行、列驱动电路由集成电路74HC573构成,它具有一个8位串行输入/输出或者并行输出的移位寄存器和一个8位输出锁存器的结构,而且移位寄存器和输出锁存器的控制是各自独立的,可以实现在显示本行各列数据的同时,传送下一行的列数据,即达到重叠处理的目的。
74HC系列的数字集成电路,当5V供电时,输出高电平接近5V,带负载后,能输出4.95V左右。
从你图上看,这里需要573输出高电平段码,138输出位码,进行动态显示。但是图上有错,为了LED安全使用,在573的输出端与7LED连接之间,应串联300Ω电阻。
行由两个573分别控制,列由四个573控制。行给高电平,列给低电平实现
点阵控制。
LED显示屏电路
LED显示屏是将发光二极管按行按列布置的,驱动时也就按行按列驱动。在扫描驱动方式下可以按行扫描按列控制,当然也可以按列扫描按行控制。LED显示屏现多采用多块8×8点阵显示单元拼接而成。本文就是使用8块SBM1388型号的实验模块组成16×32点阵,以满足汉字显示的要求。8×8
LED点阵是最基本的点阵显示模块,理解了8×8
LED点阵的工作原理就可以基本掌握LED点阵显示技术。8×8点阵LED结构如图3-10所示,其等效电路如图3-11所示:
图3-10
8×8点阵LED结构图
从图中(本图的LED阵列采用共阳的接法)可以看出,8×8点阵共需要64个发光二极管组成,且每个发光二极管是放置在行线和列线的交叉点上。要实现显示图形或字体,只需考虑其显示方式,通过编程控制各显示点对应LED阳极和阴极端的电平,就可以有效的控制各显示点的亮灭。当采用按行扫描按列控制的驱动方式时,LED显示屏8行的同名列共用一套列驱动器。行驱动器一行的行线连接到电源的一端,列驱动器一列的列线连接到电源的另一端。应用时还应在各条行线或列线上接上限流电阻。扫描中控制电路将行线的1到
8轮流接通高电位,使连接到各该行的全部LED器件接通正电源,但具体那一个LED导通,还要看它的负电源是否接通,这就是列控制的任务了。当对应的某一列置0电平,则相应的二极管就亮;反之则不亮。例如:如果想使屏幕左上角LED点亮,左下角LED熄灭的话,在扫描到第一行时,第一列的电位就应该为低,而扫描到第八行时第一列的电位就应该为高。这样行线上只管一行一行的轮流导通,列线上进行通断控制,实现了行扫描列控制的驱动方式。
四
系统软件设计
在单片机系统中,硬件是系统的基础,软件则是在硬件的基础上对其合理的调配和使用,从而完成应用系统所要完成的任务。软件的设计是设计控制系统的应用程序。其任务是在总体设计和硬件设计的基础上,确定程序结构,分配内RAM资源,划分功能模块,然后进行主程序和各模块程序的设计,最后连接起来成为一个完整的应用程序。
在进行系统总体设计时,曾经规划过软件结构,但由于硬件系统尚未仔细确定,软件结构框图十分粗糙,当硬件设计接口扩展及各功能模块与CPU连接关系确定后,就能够具体明确对软件设计的要求。本设计的LED显示屏软件的主要功能是向屏体提供显示数据,并产生各种控制信号,使屏幕按设计的要求显示。根据软件分层次设计的原理,可把显示屏的软件系统分成两大层:第一层是底层的显示驱动程序,第二层是上层的系统应用程序。显示驱动程序负责向屏体送显示数据,并负责产生行扫描信号和其它控制信号,配合完成LED显示屏的扫描显示工作。显示驱动程序由定时器T0中断程序实现。系统应用程序完成系统环境设置(初始化)、显示效果处理等工作,由主程序来实现。
编程思路
根据以上硬件电路和单片机控制原理,编程思路为:
a先对相关变量进行初始化。
b调用显示程序
c装载汉字的第一行数据,并显示出来。
d依次显示汉字的第二行至第十六行。
e结束
程序见附录1
流程图:
调用显示程序序
扫描第1行并显示
显示汉字
延时
扫描第2行并显示
依次扫描3,4….16行
结束
开始
五
调试及性能分析
一个单片机系统经过总体设计,完成了硬件和软件设计开发。元器件安装后,在系统的程序存储器中写入编制好的应用程序,系统即可运行。但编制好的程序或焊接好的线路不能按预计的那样正常工作是常见的事,多少会出现一些硬件、软件上的错误。这就需要通过调试来发现错误并加以改正。调试可分为硬件调试和软件调试。在允许的条件下,根据本设计系统的需求性首先采用在PC机上用模拟开发软件进行检测和调试,然后进行硬件的组装与调试。
软件调试
软件调试采用脱机调试的方法,即完全用仿真器软件在PC机上对目标电路原理图和程序进行检测和调试。调试过程中单片机相应输入端由通用键盘和鼠标设定,运行状态、各寄存器状态、端口状态等都可以在CRT指定的窗口区域显示出来,以确定程序运行有无错误。调试可按下列步骤进行:
目标程序纠错
该阶段工作通常在目标程序编辑时就完成。一般来说,仿真器软件能给用户输入的程序指令纠错,包括书写格式、标号未定义或多重定义、转移地址溢出等错误。
整体程序综合调试
即把各子程序整体连起来进入到综合电路调试,看是否能实现预计的功能显示。在这阶段若发生故障,可以考虑各子程序在运行时是否破坏现场,数据缓冲单元是否发生冲突,标志位的建立和清除在设计上是否失误,堆栈是否溢出,输入输出状态是否正常等。
硬件调试
单片机应用系统的硬件调试和软件调试是分不开的,许多硬件故障在软件调试时才能发现,但通常要先排除系统中明显的硬件故障。调试工作可以分为四步:
目测检查
根据硬件逻辑设计图,仔细检查样机线路是否连接正确,并核对元器件的型号、规格和安装是否符合要求,必要时可用万用表检测线路通断情况。
电源调试
样机的第一次通电测试很重要,若样机中存在电源故障,则加电后将造成器件损坏。调试的方法有两种:一种是断开样机稳压电源的输出端检查空载时电源工作情况;另一种是拔下样机上的主要集成芯片,检查电源的负载能力(用假负载)。确保电源无故障并性能符合设计要求。
通电检查
在确保电源良好前提下,接通电源。最好在电源与其余电路之间串接一个电流表。若接通后电流很大,必须立即切断电源。电源大得超出正常范围,说明电路中有短路或故障。通电检查的主要目的是看系统是否存在短路或由元器件损坏、装配错误引起的电流异常。
检查相应芯片的逻辑关系
加电后检查各芯片插座上相关引脚的电位,仔细测量相应的输入输出电平是否正常。单片机系统大都是数字逻辑电路,使用电平检查法可首先查出逻辑设计是否正确,选用器件和连接关系是否符合要求等。
根据实践证明,这个方案设计的16×32点阵LED图文显示屏,结构合理,成本较低,且较容易扩展成更大的显示屏;显示屏各点亮度均匀、充足;显示图形或文字稳定、清晰无串扰;可用静止、移入移出等多种显示方式显示图形或文字。
心得:
以上仅对LED显示屏的结构和驱动、显示电路原理作一详细介绍和分析。LED点阵的应用很广,对于不同的应用环境和应用要求,可以有各种各样的应用方式,在这里就不做详尽叙述。由于自己知识水平的局限和时间的仓促,设计中或还存在着一些不足,我真诚的接受老师们的批评和指正。
从课题选择、方案论证到具体设计,每一步对我来说无疑是巨大的尝试和挑战,我不断地给自己提出新的问题,然后去论证、推翻,不懂就请教学长,再接着提出新的问题,在这个往复的过程中,我这篇稚嫩的设计日趋完善。每一次改进我都收获良多,虽然我的设计作品不是很成熟,而且借鉴了前人的很多资料,但我仍然心里有一种莫大的幸福感,因为我实实在在地走过了一个完整的设计所应该走的每一个过程,并且享受了每一个过程,更重要的是这个设计中我加入了自己鲜活的思想,而且在调试中积累了很多经验。
在做这次的设计过程中使我学到了很多,加深了对数子电路的理解,验证了所学理论知识,提高了基本的解决实际问题的能力,并增加了对电子设计方面的兴趣。更重要的是我体会到不论做什么事都要真真正正用心去做,才会使自己更好的成长,没有学习就不可能有实践的能力,实践才是最终的目的,没有实践就不会有自己的突破和创新,希望这次的经历能让我在以后的工作和生活中不断成长与进步。
在这里要特别感谢我们的学长,谢谢他们的悉心指导!
参考文献:马家辰.MCS-51单片机原理及接口技术.哈尔滨工业大学出版社,1997
胡汉才.单片机原理与应用.清华大学出版社
邱丽芳.单片机原理与应用
[M].北京:人民邮电出版社,2007
附录1
#include
#define
uchar
unsigned
char
#define
uint
unsigned
int
uchar
code
atable[]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}
;
uchar
code
btable[]={0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};
void
delay(uint
i)
//延时1ms
{
uint
x,y;
for(x=i;x>0;x--)
for(y=115;y>0;y--);
}
void
clear()
//清屏
{
P2=0xa0;P0=0xff;
P2=0xc0;P0=0xff;
P2=0x00;P0=0xff;
P2=0x20;P0=0xff;
P2=0x40;P0=0xff;
P2=0x60;P0=0xff;
}
void
main(void)
{
uint
x;
clear();
WR
=
0;
while(1)
{
P2=0xa0;
P0=atable[0];
P2=0xe0;
P0=btable[0];
P2=0x60;
P0=0xf7;
P2=0x40;
P0=0x7f;
P2=0xc0;
P0=0xff;
P2=0x00;
P0=0xff;
delay(2);
//扫描第1行
P2=0xa0;
P0=atable[1];
P2=0xe0;
P0=btable[1];
P2=0x60;
P0=0xfb;
P2=0x40;
P0=0x07;
P2=0xc0;
P0=0xfe;
P2=0x00;
P0=0xff;
delay(2);
//2
P2=0xa0;
P0=atable[2];
P2=0xe0;
P0=btable[2];
P2=0x60;
P0=0xfd;
P2=0x40;
P0=0x7f;
P2=0xc0;
P0=0xff;
P2=0x00;
P0=0xff;
delay(2);
//3
P2=0xa0;
P0=atable[3];
P2=0xe0;
P0=btable[3];
P2=0x60;
P0=0xfe;
P2=0x40;
P0=0x7f;
P2=0xc0;
P0=0xff;
P2=0x00;
P0=0xff;
delay(2);
//4
P2=0xa0;
P0=atable[4];
P2=0xe0;
P0=btable[4];
P2=0x60;
P0=0xff;
P2=0x40;
P0=0x07;
P2=0xc0;
P0=0x01;
P2=0x00;
P0=0xff;
delay(2);
//5
P2=0xa0;
P0=atable[5];
P2=0xe0;
P0=btable[5];
P2=0x60;
P0=0xff;
P2=0x40;
P0=0x7f;
P2=0xc0;
P0=0x7f;
P2=0x00;
P0=0xff;
delay(2);
//6
P2=0xa0;
P0=atable[6];
P2=0xe0;
P0=btable[6];
P2=0x60;
P0=0xff;
P2=0x40;
P0=0x7f;
P2=0xc0;
P0=0xbf;
P2=0x00;
P0=0x93;
delay(2);
//7
P2=0xa0;
P0=atable[7];
P2=0xe0;
P0=btable[7];
P2=0x60;
P0=0x80;
P2=0x40;
P0=0x07;
P2=0xc0;
P0=0xbf;
P2=0x00;
P0=0x6d;
delay(2);
//8
P2=0xa0;
P0=atable[8];
P2=0xe0;
P0=btable[8];
P2=0x60;
P0=0xbf;
P2=0x40;
P0=0xff;
P2=0xc0;
P0=0xbf;
P2=0x00;
P0=0x7d;
delay(2);
//9
P2=0xa0;
P0=atable[9];
P2=0xe0;
P0=btable[9];
P2=0x60;
P0=0xbf;
P2=0x40;
P0=0xff;
P2=0xc0;
P0=0xbf;
P2=0x00;
P0=0xbb;
delay(2);
//10
P2=0xa0;
P0=atable[10];
P2=0xe0;
P0=btable[10];
P2=0x60;
P0=0x80;
P2=0x40;
P0=0x27;
P2=0xc0;
P0=0xbf;
P2=0x00;
P0=0xd7;
delay(2);
//11
P2=0xa0;
P0=atable[11];
P2=0xe0;
P0=btable[11];
P2=0x60;
P0=0xfe;
P2=0x40;
P0=0xdb;
P2=0xc0;
P0=0xbe;
P2=0x00;
P0=0xef;
delay(2);
//12
P2=0xa0;
P0=atable[12];
P2=0xe0;
P0=btable[12];
P2=0x60;
P0=0xfe;
P2=0x40;
P0=0xfb;
P2=0xc0;
P0=0xbe;
P2=0x00;
P0=0xff;
delay(2);
//13
P2=0xa0;
P0=atable[13];
P2=0xe0;
P0=btable[13];
P2=0x60;
P0=0x80;
P2=0x40;
P0=0x77;
P2=0xc0;
P0=0xbf;
P2=0x00;
P0=0xff;
delay(2);
//14
P2=0xa0;
P0=atable[14];
P2=0xe0;
P0=btable[14];
P2=0x60;
P0=0xff;
P2=0x40;
P0=0xaf;
P2=0xc0;
P0=0xbf;
P2=0x00;
P0=0xff;
delay(2);
//15
P2=0xa0;
P0=atable[15];
P2=0xe0;
P0=btable[15];
P2=0x60;
P0=0xff;
P2=0x40;
P0=0xdf;
P2=0xc0;
P0=0xbf;
P2=0x00;
P0=0xff;
delay(2);
//16
}
}
第三篇:基于单片机的LED点阵广告牌设计
基于单片机的LED点阵广告牌设计
摘要:单片机作为LED主控制模块,利用简单的外围电路来驱动64×16的点阵LED显示屏。利用多个系列高速单片机本身强大的功能,可以很方便的实现单片机与PC机间的数据传输及存储,并能利用软件方便的进行显示内容的多样变化,点阵显示屏广泛的应用于医院、机场、银行等公共场所,所以LED显示屏具有很强的现实应用性。
关键词:动态显示;单片机;点阵字库
中图分类号:TN312.8;TP368.1文献标识码:A文章编号:1674-7712(2014)08-0000-01
LED(Light Emitting Diode),发光二极管,简称LED,是一种能够将电能转化为可见光的固态的半导体器件,它可以直接把电转化为光。LED的心脏是一个半导体的晶片,晶片的一端附在一个支架上,一端是负极,另一端连接电源的正极使整个晶片被环氧树脂封装起来。半导体晶片由两部分组成,一部分是P型半导体,在它里面空穴占主导地位,另一端是N型半导体,在这边主要是电子。但这两种半导体连接起来的时候,它们之间就形成一个“P-N结”。当电流通过导线作用于这个晶片的时候,电子就会被推向P区,在P区里电子跟空穴复合,然后就会以光子的形式发出能量,这就是LED发光的原理。多个LED发光灯组成固定的字符或图形进行显示,即形成LED点阵图文显示屏。其主要特征是只控制LED点阵中各发光器件的通断(发光或熄灭),而不控制LED的发光强弱。LED点阵的汉字显示方式是先根据所需要的汉字提取汉字点阵(如16×16点阵),将点阵文件存入ROM,形成新的汉字编码;而在使用时则需要先根据新的汉字编码组成语句,再由MCU根据新编码提取相应的点阵进行汉字显示。
一、LED电子显示屏概况
LED电子显示屏是由几百到几十万个半导体发光二极管构成的像素点,按矩阵均匀排列组成。利用不同的半导体材料可以制造不同色彩的LED像素点。目前应用最广的是红色、绿色、黄色。而蓝色和纯绿色LED的开发已经达到了实用阶段。LED显示屏是一种通过控制半导体发光二极管的亮度的方式,来显示文字、图形、图像、动画、行情、视频、录像信号等各种信息的显示屏幕。
LED显示屏分为图文显示屏和条幅显示屏,均由LED矩阵块组成。图文显示屏可与计算机同步显示汉字、英文文本和图形,而条幅显示屏则适用于小容量的字符信息显示。LED显示屏因为其像素单元是主动发光的,具有亮度高,视角广、工作电压低、功耗小、寿命长、耐冲击和性能稳定等优点。因而被广泛应用于车站、码头、机场、商场、医院、宾馆、银行、证券市场、建筑市场、拍卖行、工业企业管理和其它公共场所。LED显示屏的发展前景极为广阔,目前正朝着更高亮度、更高气候耐受性、更高的发光密度、更高的发光均匀性,可靠性、全色化方向发展。
二、点阵式LED汉字广告屏显示原理及单片机应用
点阵式LED汉字广告屏绝大部分是采用动态扫描显示方式,这种显示方式巧妙地利用了人眼的视觉暂留特性。将连续的几帧画面高速的循环显示,只要帧速率高于24帧/秒,人眼看起来就是一个完整的,相对静止的画面。最典型的例子就是电影放映机。在电子领域中,因为这种动态扫描显示方式极大的缩减了发光单元的信号线数量,因此在LED显示技术中被广泛使用。以8×8点阵模块为例,说明一下其使用方法及控制过程。广告牌设计过程中使用的红色水平线Y0、Y1„„Y7叫做行线,接内部发光二极管的阳极,每一行8个LED的阳极都接在本行的行线上。相邻两行线间绝缘。同样,蓝色竖直线X0、X1„„X7叫做列线,接内部每列8个LED的阴极,相邻两列线间绝缘。
在这种形式的LED点阵模块中,若在某行线上施加高电平(用“1”表示),在某列线上施加低电平(用“0”表示)。则行线和列线的交叉点处的LED就会有电流流过而发光。比如,Y7为1,X0为0,则右下角的LED点亮。再如Y0为1,X0到X7均为0,则最上面一行8个LED全点亮。随着广告屏显示内容的多媒体化,对控制器传输速度,运算能力的要求越来越高。因此控制器的种类也在不断发展以适应要求,从最初的8051单片机,到PIC单片机,又到FPGA,直到现在的ARM处理器。不同功能档次的广告屏对应着不同的处理器。
单片机运算速度及通信速率的限制,LED动态显示的刷新率不可能做得太高。对显示效果和移动算法的处理也比较吃力,在实际显示效果上有比较明显的闪烁感。除此之外,传统8051单片机的内部资源贫乏,仅128字节的数据存储器,几K字节的程序存储器,无E2PROM,SPI。这就需要对单片机扩展外设,无疑增加了硬件成本。因此,8051控制的条屏只能用于显示内容及其简单,不需要经常更改显示内容的场合。
因为PIC单片机是RISC架构的工业专用单片机,处理指令的速度有所增加,抗干扰能力优秀,型号种类繁多。作为条屏的控制器,可以明显的改善显示效果,同时PIC单片机内部的资源较丰富,可节省外部电路设计难度,同时降低了硬件成本。因此,以PIC单片机为控制器的条屏目前仍是单色条屏市场的主流。
参考文献:
[1]李建忠.单片机原理及应用[M].西安:西安电子科技大学出版社,2002.[2]李群芳,肖看.单片机原理、接口及应用[M].北京:清华大学出版社,2005.[3]于海生.微型计算机控制技术[M].北京:清华大学出版社,2008.[4]戴梅萼,史嘉权.微型计算机技术及应用(第3版)[M].北京:清华大学出版社,2008.[5]江晓安,董秀峰.数字电子技术(第二版)[M].西安:西安电子科技大学出版社,2005.[作者简介]周丽萍(1979.09-),女,学士学位,科员,工程师,研究方向:电子通信技术、led显示屏研发。
第四篇:单片机实习报告 LED点阵汉字显示
广东纺织职业技术学院
广东纺织职业技术学院 单片机与接口技术实习报告
题目 16*16 LED点阵汉字显示
院(系)
机电工程系
专
业
学生姓名
指导教师
起始日期: 2009年12月16日
广东纺织职业技术学院
单片机与接口技术实习计划及任务书
一、实习任务
《单片机与接口技术》实训课是理论课程的实践教学环节,它是机电技术专业的主要实践技能课程。课程内容包括单片机软件编程与仿真和调试。单片机硬件设计安装与调试,单片机应用系统综合设计,安装与调试等。实训课程的基本任务是:使学生在掌握单片机基础知识的基础上,掌握单片机软硬件的设计、开发、调试能力。具有较好的单片机实际应用能力。为今后从事生产一线的技术工作以及进一步提高科学技术水平打下坚实的基础。同时,结合本课程的特点,逐步培养学生观察分析问题和动手解决问题的能力。
二、项目设计
汉字显示屏广泛应用于汽车报站器,广告屏等。在本实训中,汉字显示屏采用了16*16的点阵模块;汉字显示的原理以在UCDOS中文宋体字库为例,每一字由16行16列的点阵组成显示。即国际汉字库中的每一字均由256点阵来表示。我们可以把每一个点理解为一个像素,而把每一个字的字形理解为一幅图像。所以在这个汉字屏上不仅可以显示汉字,也可以显示在256像素范围内的任何图形。
项目要求在16*16的点阵模块上实现一组可移动的汉字或一副简图。
三、报告及方案
1、了解、熟悉单片机开发的特点、方法及趋势。
2、熟悉软件编制、调试的方法、流程。
3、理解单片机控制的原理和特点。
4、养成良好的设计习惯、培养正确的思路和工作态度。
5、熟练运用单片机开发软件——Keill。
四、原理介绍
广东纺织职业技术学院
1、电路原理图如图所示
广东纺织职业技术学院
2、电路工作原理分析:
汉字显示在UCDOS中文宋体字库中,每一个字由16行16列的点阵组成显示。即国标汉字库中的每一个字均由256点阵来表示。我们可以把每一个点理解为一个像素,而把每一个字的字形理解为一副图像。所以在这个汉字屏上不仅可以显示汉字,也可以显示在256像素范围内的任何图形。我是显示汉字“施”,扫描原理如下:在UCDOS中文宋体字库中,每一个字由16行16列的点阵组成显示。如果用8位的AT89C51单片机控制,由于单片机的总线为8位,一个字需要拆分为2个部分,一般我们拆分为上部和下部,上部由8*16点阵组成,下部也由8*16点阵组成。
单片机首先显的是左上角的的第一列的上列的上半部分,即第0 列的p00---p07口。方向为p00到p07,显示汉字“施”时,由上而下排列,为P0.0灭,P0.1灭,P0.3亮,P0.4灭,P0.5灭,P0.6灭,P0.7亮。即二进关系00100011, 转换为16进制国23H。上半部第一列完成后,继续扫描下半部的第一列,为了接线方便,我们使用仍设计成由上往下扫描,即从p27向p20方向扫描,从右图可以看到,这一列为,P2.7亮,P2.6亮,P2.5灭,P2.4灭,P2.3灭,P2.4灭,P2.3亮,P2.2亮,即为1100001,16进制为0C3H.然后单片机转向上半部每二列,仍为00100010,即22H,16进制为22H,这一列完成后继续进行下半部分,二进制为01000001,即16进制41H。依照这个方法,继续进行下面的扫描,一共扫描32个8位,可以得出汉字“施”。
3、显示原理图
1)静态显示原理图 2)静态显示程序编写
3)静态显示工作原理分析
静态显示方式下,所有LED显示器的COM公共极接地(共阴极显示器)或接电源(共阳极显示器),显示器的8个段与并行输出端口的输出端相连。所谓静态显示,就是每一个显示器各笔画段都要独占具有锁存功能的输出口线,CPU把欲显示的字形代码送到输出口上,就可以使显示屏显示出所需的数字或符号。此后,即使CPU不再去访问它,显示的内容也不会消失(因为各笔画段接口具有锁存功能)。
静态显示法的优点是,显示程序十分简单,显示亮度大,由于CPU不必经常扫描显示器,所以节约了CPU的工作时间。但静态显示也有其缺点,主要是占用的I/O口线较多,硬件成本也较高。所以,静态显示法常用在显示器数目较少的应用系统中。
五、心得体会
时间如白驹过隙,一晃一个星期就过去了,在这个星期里,我们迎来了单片机与接口技术的实习。此次我们实习的内容是了解矩阵LED显示的基本原理和功能,掌握16*16矩阵LED和单片机的硬件和软件接口设计方法以及完成驱动程序的编程。
这次实习的要求是在16*16的点阵模块上实现一组可移动的汉字或一幅简图,因为这前我们在课堂上还没有学习到这个程度,所以在开始实习的时候老师就为我们讲解了一下,在显示一个点的基础上显示不同的点,从而组成汉字或简图。在认真听了老师对实验的讲解后,广东纺织职业技术学院
我们就开始画点阵图,编写自己的程序。
这次实习,我们是以小组为单位的。在编写程序时,我却忘了点阵图里面每个点的表示方法,后来通过同学的帮忙,我终于编写出静态“施”的程序。
在实验室中,老师先教我们接线,怎样检查线的好坏,因为这关系到后面编写的程序能否显示。当这些准备工作都做好时,我就把我要显示的“施”字的程序打到电脑上,但却发现程序有错误,经过反复的检查才发现原来有一步程序中的00H,打成了ooH。程序没问题时,就操作保存——复位——显示,在显示屏上,清晰鲜艳的“施”字宣告我静态显示实验成功了。接下来,就开始我们的动态显示的编程,这就需要我们去查找相关的资料了。经过了我们的努力和请教老师,我们终于把动态的程序编出来了,看着显示屏上从左到右,不断循环走过的“施”字,一种成就感油然而生。
在这次实习过程中,我发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固。但我们通过查阅大量有关资料,并在小组中互相讨论,交流经验和自学,若遇到实在搞不明白的问题就会及时请教老师,使自己学到了不少知识,也经历了不少艰辛,但收获同样巨大。其次,在这次实习中,我们运用到了其它所学的专业课知识,如:电子CAD,这让我明白各个学科都不可能独立的,知识是相通的,这是我这次实习的又一收获。
另外,这次实习让我感到了团队合作的重要性。在团队中,我们互帮互助,对整个实习来说,这是至关重要的。还有要感谢指导老师在我们遇到困难时,给予我们的建议与鼓励。
一个星期的实习虽然结束了,但是从中学到的知识会让我受益终身。发现、提出、分析、解决问题和实践能力的提高都会受益于我在以后的学习、工作和生活中。
附件一:动态点阵信息图 2
5
广东纺织职业技术学院 8 1113 14
6
广东纺织职业技术学院
附件二:动态显示程序编写
ORG 0000H AJMP START ORG 0030H START: MOV P0,#00H MOV P3,#00H L1: MOV P1,#00H MOV R4,#250 MOV R5,#13 MOV DPTR,#TAB1 L2: LCALL DISPLAY MOV A,DPL ADD A,#32 MOV DPL,A MOV A,DPH ADDC A,#0 MOV DPH,A DJNZ R5,L2 AJMP L1 DISPLAY: MOV R3,#16 MOV R1,#00H MOV R2,#00H L3: MOV A,R1 MOV P1,A MOV A,R2 MOVC A,@A+DPTR MOV P0,A INC R2 MOV A,R2 MOVC A,@A+DPTR MOV P3,A INC R1 INC R2 DJNZ R3,L3 DJNZ R4,DISPLAY
广东纺织职业技术学院
RET TAB1: DB 22H,41H,23H,0C3H,00H,00H,00H,00H DB 00H,00H,00H,00H,00H,00H,00H,00H DB 00H,00H,00H,00H,00H,00H,00H,00H DB 00H,00H,00H,00H,00H,00H,00H,00H TAB2: DB 2FH,0C1H,22H,01H,22H,41H,23H,0C3H DB 00H,00H,00H,00H,00H,00H,00H,00H DB 00H,00H,00H,00H,00H,00H,00H,00H DB 00H,00H,00H,00H,00H,00H,00H,00H TAB3: DB 22H,01H,22H,01H,2FH,0C1H,22H,01H DB 22H,41H,23H,0C3H,00H,00H,00H,00H DB 00H,00H,00H,00H,00H,00H,00H,00H DB 00H,00H,00H,00H,00H,00H,00H,00H TAB4 : DB F2H,00H,27H,FFH,22H,01H,22H,01H DB 2FH,0C1H,22H,01H,22H,41H,23H,0C3H DB 00H,00H,00H,00H,00H,00H,00H,00H DB 00H,00H,00H,00H,00H,00H,00H,00H TAB5: DB 25H,0FFH,08H,00H,F2H,00H,27H,0FFH DB 22H,01H,22H,01H,2FH,0C1H,22H,01H DB 22H,41H,23H,0C3H,00H,00H,00H,00H DB 00H,00H,00H,00H,00H,00H,00H,00H TAB6: DB 21H,03H,21H,01H,25H,0FFH,08H,00H DB F2H,00H,27H,0FFH,22H,01H,22H,01H DB 2FH,0C1H,22H,01H,22H,41H,23H,0C3H DB 00H,00H,00H,00H,00H,00H,00H,00H TAB7: DB 0AFH,00H,79H,00H,21H,03H,21H,01H DB 25H,0FFH,08H,00H,F2H,00H,27H,0FFH DB 22H,01H,22H,01H,2FH,0C1H,22H,01H DB 22H,41H,23H,0C3H,00H,00H,00H,00H TAB8: DB 20H,0FH,20H,F0H,0AFH,00H,79H,00H DB 21H,03H,21H,01H,25H,0FFH,08H,00H DB F2H,00H,27H,0FFH,22H,01H,22H,01H DB 2FH,0C1H,22H,01H,22H,41H,23H,0C3H TAB9: DB 00H,00H,00H,00H,20H,0FH,20H,F0H, DB 0AFH,00H,79H,00H,21H,03H,21H,01H DB 25H,0FFH,08H,00H,F2H,00H,27H,0FFH DB 22H,01H,22H,01H,2FH,0C1H,22H,01H TAB10: DB 00H,00H,00H,00H,00H,00H,00H,00H DB 20H,0FH,20H,F0H,0AFH,00H,79H,00H DB 21H,03H,21H,01H,25H,0FFH,08H,00H DB F2H,00H,27H,0FFH,22H,01H,22H,01H TAB11: DB 00H,00H,00H,00H,00H,00H,00H,00H DB 00H,00H,00H,00H,20H,0FH,20H,F0H DB 0AFH,00H,79H,00H,21H,03H,21H,01H
广东纺织职业技术学院
DB 25H,0FFH,08H,00H,F2H,00H,27H,0FFH TAB12: DB 00H,00H,00H,00H,00H,00H,00H,00H DB 00H,00H,00H,00H,00H,00H,00H,00H DB 20H,0FH,20H,F0H, 0AFH,00H,79H,00H DB 21H,03H,21H,01H,25H,0FFH,08H,00H TAB13: DB 00H,00H,00H,00H,00H,00H,00H,00H DB 00H,00H,00H,00H,00H,00H,00H,00H DB 00H,00H,00H,00H,20H,0FH,20H,F0H DB 0AFH,00H,79H,00H,21H,03H,21H,01H TAB14: DB 00H,00H,00H,00H,00H,00H,00H,00H DB 00H,00H,00H,00H,00H,00H,00H,00H DB 00H,00H,00H,00H,00H,00H,00H,00H DB 20H,0FH,20H,F0H,0AFH,00H,79H,00H TAB15: DB 00H,00H,00H,00H,00H,00H,00H,00H DB 00H,00H,00H,00H,00H,00H,00H,00H DB 00H,00H,00H,00H,00H,00H,00H,00H DB 00H,00H,00H,00H,0AFH,00H,79H,00H TAB16: DB 00H,00H,00H,00H,00H,00H,00H,00H DB 00H,00H,00H,00H,00H,00H,00H,00H DB 00H,00H,00H,00H,00H,00H,00H,00H DB 00H,00H,00H,00H,00H,00H,00H,00H
END
第五篇:LED电子显示屏申请书
申 请 书
尊敬的县政府采购办:
为了繁荣、美化、创造和谐校园文化环境,提升我校宣传内容的效率,厉行节约,同时为了提升学校办学品位,我校急需安装LED显示屏一套,安装在我校新教学楼正面位置,长10M,宽0.9M,整套设备价格预计壹万叁仟元(13000元)。我们相信这一项创新的科技,为我校增添科技含量,增添光彩,为我校建立了良好的校园文化,将会为学校带来前所未有的宣传效率,方便师生,是一项重大的举措,更为我县教育均衡发展顺利通过验收添光加彩。
因时间紧迫,特向县政府采购办申请自行采购学校LED显示屏一套,我校将按政府自行采购程序,多家询价,确保质量进行采购安装,望给予批准为谢!
特此申请!
X X 小 学
2015年4月29日