LED屏幕字符显示屏设计
摘要
LED点阵显示屏作为一种新兴的显示器件,是人们获得信息的一个方便工具。包括在商场门口,售票大厅,候车大厅,会议室,广场等场所,各种信息都可以通过LED显示屏清晰地显示出来,使人们方便的获得他们想要的更多信息。它是由多个的LED发光二极管组合封装而成. LED点阵显示屏可以显示数字或符号, 通常用来显示时间、公告、通知、速度等。文章给出了一种基于ATC52单片机的16×16 点阵LED显示屏的设计方案。此LED点阵显示屏设计主要包括三大部分:系统具体的硬件设计方案,显示程序的设计,软件流程图和部分汇编语言程序等方面。此LED点阵显示屏具有很强的扩展性,在负载范围内, 只需通过简单的级联就可以对显示屏进行扩展,是一种成本低廉的图文显示方案。 关键词: LED;单片机;汇编语言;
I
LED screen character display screen
Abstract
As a popular display device component, People get their information is a convenient tool. Included in the market doorway, the ticket hall, waiting hall, meeting rooms, square, etc all kinds of information can pass the LED display clearly shown, make it easy for people to get what they want more information..,LED dot-matrix display board consists of several independent LED (Light Emitting Diode). The LED dot-matrix display board can display the number or sign, and it is usually used to show time, speed, the state of system etc. This paper introduces a kind of simple 16x16 LED display screen design process based on MCU single chip minicomputer . The LED detail hardware scheme, software flow and assemble language programmer design and so on is followed. This destem strong expansibility ,The display part can be cascaded to meet the need. The practice proves the design is low-cost and effective. Keyword:LED;MCU;Assemble language
II
Abstract
目录
摘要 ............................................................................................................................................. I Abstract ................................................................................................................................... II 第一章 绪论 .............................................................................................................................. 1
1.1 LED及LED显示屏 .................................................. 1 第二章 MCS-51系列单片机简介 ........................................................................................... 2
2.1 MCS-51系列单片机及其特点 ......................................... 2 2.2
单片机的发展历史简介 ........................................... 5
第三章 功能要求及特点 .......................................................................................................... 6 第四章 方案实现 ...................................................................................................................... 7
4.1 系统硬件电路的设计 ................................................ 9
4.1.1单片机系统及外围电路 ......................................... 9 4.1.2列驱动电路 ................................................... 9 4.1.3行驱动器 .................................................... 10 4.2.系统程序的设计 ................................................... 10
4.2.1显示驱动程序 ................................................ 10 4.2.2系统主程序 .................................................. 12
第五章 性能分析与总结 ........................................................................................................ 13
5.1 性能分析 ........................................................ 13 5.2 硬件调试 ......................................................... 14 5.3 总结 ............................................................. 14 参考文献 .................................................................................................................................. 16 致谢 .......................................................................................................................................... 17 附录 1 protel原理图 ..................................................................................................... 18 附录 2 Proteus仿真 ....................................................................................................... 19 附录 3 protel制版图 ..................................................................................................... 20 附录 4 主要汇编程序清单 .................................................................................................. 21
III
第一章 背景介绍
第一章 绪论
1.1 LED及LED显示屏
LED 就是Light Emitting Diode(发的缩写光二极管)。发光二极管发明于20世纪60年代,在随后的几年中,其基本用途是作为电路和电子设备的指示灯。随着LED的不断发展,近几年它被广泛的用于汽车的照明灯上。在半导体材料的PN结中,少数载流子与多数载流子复合时会把多余的能量以光的形式释放出来,从而把电能直接转换为光能。在PN结加反向电压,少数载流子难以注入,故不发光。这种利用注入多数载离子和少数载离子发光原理制作的二极管叫发光二极管。发光二极管包括可见光、不可见光、激光等类型。发光二极管是由p 型和n 型半导体组成的二极管。在LED 的PN结附近,p型材料中多数载流子是空穴,n 型材料中多数载流子是电子。在PN结上加正向偏压时,在外电场作用下将多数载流子推向空间电荷区,p 区的空穴和n 区的电子就向对方扩散运动,构成少数载流子的注入,从而在PN结附近产生带电子和价带空穴的复合,同时释放出相对应的能量hν(h 为普朗克常数,ν为光子频率)而发光。该能量相当于半导体材料的带隙能量Eg(Ev) ,其与发光波长λ(nm) 的关系为λ= 1239. 6PEg。
LED显示屏是一种通过控制半导体发光二极管的显示方式,用来显示文字、图形、图像、符号、动画、表格、视频、录像信号等各种信息的显示屏幕。
LED显示屏分为图文显示屏和视频显示屏,均由LED矩阵块组成。图文显示屏可与计算机同步显示文本和图形;视频显示屏采用微型计算机进行控制,图文、图像,以实时、同步、清晰的信息传播方式播放各种信息,还可显示二维、三维动画、录像、电视、VCD节目以及现场实况。LED显示屏显示画面色彩鲜艳,立体感强,静如油画,动如电影,广泛应用于会议室、车站、地铁、码头、机场、商场、社区、集贸市场、医院、校园、宾馆、银行、证券市场、建筑市场、拍卖行和其它公共场所。
它的优点:耐风雨、亮度高、工作电压低、功耗小、微型化、易与集成电路匹配、驱动简单、寿命长、耐冲击、性能稳定。 LED显示屏显示画面色彩鲜艳,立体感强,静如油画,动如电影。在实际应用中的显示屏由于成本和可靠性的因素常采用一种称为动态扫描的显示方法。本文设计的是一个室内用4个8x8点阵组成1个16x16的点阵LED图文显示屏,图形或文字显示有静
- 1 -
第一章 背景介绍
止、移入移出等显示方式。发光二极管简称为LED。由镓(Ga)与砷(AS)、磷(P)的化合物制成的二极管,当电子与空穴复合时能辐射出可见光,因而可以用来制成发光二极管,在电路及电子设备中作为指示灯,或者组成文字或数字显示出来,还有就是用于汽车行业。LED点阵是由发光二极管组成,它是半导体二极管的一种,可以把电能转化成光能。发光二极管与普通二极管一样是由一个PN结组成,也具有单向导电性。当给发光二极管加上正向电压后,从P区注入到N区的空穴和由N区注入到P区的电子,在PN结附近数微米内分别与N区的电子和P区的空穴复合,产生自发辐射的荧光。当电子和空穴复合时释放出的能量多少不同,释放出的能量越多,则发出的光的波长越短。常用的是发红光、绿光或黄光的二极管。
点阵原理,8X8点阵共由个发光二极管组成,且每个发光二极管是放置在行线和列线的交叉点上,当对应的某一行置1电平,某一列置0电平,则相应的二极管就亮;如要将第一个点点亮,则9脚接高电平13脚接低电平,则第一个点就亮了;如果要将第一行点亮,则第9脚要接高电平,而(13、3、4、10、6、11、15、16)这些引脚接低电平,那么第一行就会点亮;如要将第一列点亮,则第13脚接低电平,而(9、14、8、12、1、7、2、5)接高电平,那么第一列就会点亮。
- 2 -
第三章 功能要求
第二章 MCS-51系列单片机简介
2.1 MCS-51系列单片机及其特点
MCS-51系列是我国较早引进的Intel公司的单片机产品,由于其性能优良,已被国内用户广泛认可和采用,占据了主要的市场。同时,单片机产品的性能还在不断提高,技术也在更新换代。 ①可靠性高:
因为芯片是按工业测控环境要求设计的,故抗干扰的能力优于PC机。系统软件(如:程序指令,常数,表格)固化在ROM中,不易受病毒破坏。许多信号的通道均在一个芯片内,故运作时系统稳定可靠。 ②具备扩展:
芯片内部ROM、RAM的容量、I/O口数目、定时/计数器及中断等资源还是有限的,因此大多数单片机还是极有系统扩展能力的,以便于实际应用需要时,允许扩展各种外围电路,以弥补单片机内部资源不足,从而满足一些特定应用系统的需要。由于片内具有计算机正常运行所必需的部件,片外又有很多供扩展用的(总线,并行和串行的输入/输出)管脚,因而,一块单片机电路往往就是一台完整的微型机。 ③控制功能强:
具有丰富的指令系统,MCS-51单片机指令系统由111条指令组成,其中控制指令17条。分别为:无条件转移指令,条件转移指令,子程序调用及返回指令,空指令等。 ④实用性好:
体积小,功能全,功耗低,价廉,面向控制,应用软件丰富,技术在不断更新,开发应用方便。 ATC52的简介:
ATC52是美国ATMEL公司生产的低电压,高性能的CMOS 8位单片机,片内含8k bytes的可反复擦写的只读程序存储器(PEROM)和256 bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度,非易失性存储技术生产,与标准MCS-51指令系统及8052产品引脚兼容,片内置通用8位处理器(CPU)和Flash存储单元,功能强大的ATC52单片机在电子行业有着很广泛的应用。
- 3 -
第三章 功能要求
主要性能参数:
1、与MCS-51产品兼容,指令系统完全相同 2、8k字节可重擦写Flash闪存ROM存储器 3、大于1000次擦写周期 4、全静态操作:0Hz—24Hz
5、具有三级加密程序存储器,可通过软件编程获得一些附加功能 6、256x8字节内部RAM存储器 7、32个双向可编程I/O口
8、3个16位可编程定时/计数器中断 9、8个中断源
10、可编程串行UART通道 11、低功耗空闲和掉电模式
12、具有掉电模式,软件控制睡眠和唤醒功能
功能特性概述:
①ATC52ATC52提供以下标准功能:8k字节Flash闪存存储器,256字节内部RAM,32个I/O口线,3个16位定时/计数器。一个6向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。同时ATC52可降至0Hz的静态逻辑操作,并支持两种软件可选的节电工作模式。空闲方式停止CPU的工作,但允许RAM,定时/计数器,串行通信口及中断系统继续工作。掉电方式保存RAM中的内容,但振荡器停止工作并禁止其他所有部件工作直到下一个硬件复位。
② ATC52芯片的管脚、引线与功能 ATC52芯片图如表2.1所示。 (1)引脚信号介绍:
P00~P07 :P0口8位双向口线 P10~P17 :P1口8位双向口线 P20~P27 :P2口8位双向口线 P30~P37 :P3口8位双向口线 (2)P1口的第二功能如表2-1:
表2-1 P1口第二功能表
引脚号 P1.0 P1.1 第二功能 T2(定时器/计数器T2的外部计数输入),时钟输出 T2EX(定时器/计数器T2的捕捉/重载触发信号和方向控制)
- 4 -
第三章 功能要求
引脚号 第二功能 P1.0 P1.1
T2(定时器/计数器T2的外部计数输入),时钟输出
T2EX(定时器/计数器T2的捕捉/重载触发信号和方向控制)
访问程序存储器控制信号:当 信号为低电平时,对ROM的读操作限 定在外部程序存储器;而当信号为高电平时,则对ROM的读操作是从内部程序存储器开始,并可延至外部程序存储器。
ALE地址锁存控制信号:在系统扩展时,ALE用于控制把P0口输出低8位地址锁存起来,以实现低位地址和数据的隔离。此外由于ALE是以晶振六分之一的固定频率输出的正脉冲,因此可作为外部时钟或外部定时脉冲作用。 外部程序存储器读选取通信号:在读外部ROM时 有效(低电平),以实现外部ROM单元的读操作。
XTAL1和XTAL2外接晶体引线端:当使用芯片内部时钟时,此二引线端用于外接石英晶体和微调电容;当使用外部时钟时,用于拉外部的时钟脉冲信号。 RST复位信号:当输入的复位信号延续2个机器周期以上高电平时即为有效,用以完成单片机的复位初始化操作。 VSS:地线 VCC:+5V电源 引脚号 第二功能 P3.0 P3.1 P3.2 P3.3 P3.4 P3.5 P3.6 P3.7
(3)P3口的第二功能如表2-2:
表2-2 P3口第二功能表
引脚号 P3.0 P3.1 P3.2 第二功能 RXD(串行输入) TXD(串行输出) INT0(外部中断0) RXD(串行输入) TXD(串行输出) INT0(外部中断0) INT0(外部中断0) T0(定时器0外部输入) T1(定时器1外部输入) WR(外部数据存储器写选通) RD(外部数据存储器读选通)
- 5 -
第三章 功能要求
P3.3 P3.4 P3.5 P3.6 P3.7 INT0(外部中断0) T0(定时器0外部输入) T1(定时器1外部输入) WR(外部数据存储器写选通) RD(外部数据存储器读选通) ③ATC52的总线结构
ATC52的管脚除了电源、复位、时钟接入、用户I/O口部分P3外,其余管脚都是为实现系统扩展而设置的。这些管脚构成了三总线形式,即: (1)地址总线(AB):地址总线宽度为16位,因此,其外部存储器直接地址外围为K字节。16位地址总线由P0经地址锁存器提供低8位地址(A0~A7);P2口直接提供高8位地址(A8~A15)。
(2)数据总线(DB):数据总线宽度为8位,由P0口提供。
(3)控制总线 (CB):由部分P3口的第二功能状态和4根控制线RESET、 、ALE、 组成。
2.2 单片机的发展历史简介
微处理器和微型计算机问世二十多年来,微处理器的集成度几乎每两年提高一倍,产品每3~4年更新一代。按CPU的字长、集成度和速度划分,已经历五代的演变。
①第1代(1971年—1973年) 是4位和8位抵挡微机,以4004微处理器为代表,它集成了1200个晶体管,基本指令执行时间为20us,它虽然功能不强,速度不快,但它却标志着计算机的发展进入了一个新纪元。
②第2代(1974年—1978年)是8位中高档微机,以8008/8080/8085处理器为典型代表,其集成度达9000个晶体管,基本指令执行时间为1usm。 ③第3代(1979—1982年)是16位微机,以8086/8088/80186/80286/处理器为代表,集成度已达13.4万个晶体管,指令执行速度为1~200万条指令/秒。 ④第4代(1983年—1993年) 是32位微机,其典型产品是80386/80486/Pentium系列处理器,内含120万个晶体管,运算速度为12~36MIPS。
⑤第5代(1993年至今)是位微机,位微处理器内含950多万个晶体管,其整数和浮点运算部件采用了超级流水线结构,从而使它的性能达到了现代巨型机的水平,向巨型机发起了强有力的挑战。微处理器体系结构和PC机性能引入了全新的概念。
- 6 -
第三章 功能要求
第三章 功能要求及特点
设计一个室内用16x16的点阵LED图文显示屏,要求在目测条件下LED显示屏各点亮度均匀、充足,可显示图形和文字,显示图形和文字应稳定、清晰无串扰。图形或文字显示有静止、移入移出等显示方式。
“ 南昌航空大学”
“上滚屏”显示效果
移动方式:
“右滚屏”显示效果
“左滚屏”显示效果 “下滚屏”显示效果 移动时间:上移5S,左移5S,下移5S,右移5S.
对于显示的字符可以通过改写汇编程序进行改变,例如:要把“南昌航
空大学”这六个字换成“电子信息工程”这六个字, 只要把本文附录5中汇编程序最后的“TABLE1”段的内容替换成“电子信息工程”的字模代码即可。
大屏幕显示系统一般是将由多个LED点阵组成的小模块以搭积木的方式组合而成的,每一个小模块都有自己的的控制系统,组合在一起后只要引入一个总控制器控制各模块的命令和数据即可,这种方法既简单而且具有易展、易维修的特点。
- 7 -
第四章 方案实现
第四章 方案实现
从理论上说,不论显示图形还是文字,只要控制与组成这些图形或文字的各个点所在的位置相对应的LED器件发光,就可以得到我们想要的显示结果,所以这种同时控制各个发光点亮灭的方法称为静态驱动显示方式。16x16的点阵共有256个发光二极管,很显然单片机没有这么多的端口,如果我采用锁存器来扩展端口,按8位的锁存器来计算,16x16的点阵需要256/8=32个锁存器。显而易见,这个数字很庞大,因为我们仅仅是16x16的点阵,在实际应用中的显示屏往往要大得多,这样在锁存器上花的成本将是一个很庞大的数字。因此在实际应用中的显示屏几乎都不采用这种设计,而采用另外一种称为动态扫描的显示方法。另外,一般我们使用点阵显示汉字是用的16*16的点阵宋体字库,所谓16*16,是每一个汉字在纵、横各16点的区域内显示的。也就是说得用四个8*8点阵组合成一个16*16的点阵。组合方法如图1所示
图1 4个8*8组合法
动态扫描的意思简单地说就是逐行轮流点亮,这样扫描驱动电路就可以实现多行(比如16行)的同名列共用一套驱动器。具体就16x16的点阵来说,把所有同1行的发光管的阳极连在一起,把所有同1列的发光管的阴极
- 7 -
第四章 方案实现
连在一起(共阳极的接法),先送出对应第一行发光管亮灭的数据并锁存,然后选通第1行使其燃亮一定时间,然后熄灭;再送出第二行的数据并锁存,然后选通第2行使其燃亮相同的时间,然后熄灭;以此类推,第16行之后,又重新燃亮第1行,反复轮回。当这样轮回的速度足够快(每秒24次以上),由于人眼的视觉暂留现象,就能够看到显示屏上稳定的图形了。
采用扫描方式进行显示时,每一行有一个行驱动器,各行的同名列共用一个驱动器。显示数据通常存储在单片机的存储器中,按8位一个字节的形式顺序排放。显示时要把一行中各列的数据都传送到相应的列驱动器上去,这就存在一个显示数据传输的问题。从控制电路到列驱动器的数据传输可以采用并列方式或串行方式。显然,采用并行方式时,从控制电路到列驱动器的线路数量大,相应的硬件数目多。当列数很多时,并列传输的方案是不可取的。
采用串行传输的方法,控制电路可以只用一根信号线,将列数据一位一位传往列驱动器,在硬件方面无疑是十分经济的。但是,串行传输过程较长,数据按顺序一位一位地输出给列驱动器,只有当一行的各列数据都以传输到位之后,这一行的各列才能并行地进行显示。这样,对于一行的显示过程就可以分解成列数据准备(传输)和列数据显示两部分。对于串行传输方式来说,列数据准备时间可能相当长,在行扫描周期确定的情况下留给行显示的时间就太少了,以致影响到LED的亮度。
解决串行传输中列数据准备和列数据显示的时间矛盾问题,可以采用重叠处理的方法。即在显示本行各列数据的同时,传送下一列数据。为了达到重叠处理的目的,列数据的显示就需要具有锁存功能。经过上述分析,就可以归纳出列驱动器电路应具有的功能。对于列数据准备来说,它应能实现串入并处的移位功能;对于列数据显示来说,应具有并行锁存的功能。这样,本行已准备好的数据打入并行锁存器进行显示时,串并移位寄存器就可以准备下一行的列数据,而不会影响本行的显示。图2为显示屏电路实现的结构框图。
- 8 -
第四章 方案实现
列驱动器 单 片 机 电源 行驱动器 LED显示点阵
图2 显示屏电路框图
4.1 系统硬件电路的设计
硬件电路大致上可以分成单片机系统及外围电路、列驱动电路和行驱动电路三部分。
4.1.1单片机系统及外围电路
单片机采用MSC-51或其兼容系列芯片,采用24MHZ或更高频率晶振,以获得较高的刷新频率,时期显示更稳定。单片机的串口与列驱动器相连,用来显示数据。P1口低4位与行驱动器相连,送出行选信号;P1.5~P1.7口则用来发送控制信号。P0口和P2口空着,在有必要的时候可以扩展系统的ROM和RAM。
4.1.2列驱动电路
ATC52的P0、P2口作为列数据输入端。
- 9 -
第四章 方案实现
4.1.3行驱动器
单片机P1口低4位输出的行号经4/16线译码器74HC154译码后生成16条行选通信号线,再经过驱动器驱动对应的行线。74154这种单片4 线—16 线译码器非常适合用于 高性能存储器的译码器。当两个选通输入G1 和G2 为低时, 它可将4 个二进制编码的输入译成16 个互相的输出之一。实现解调功能的办法是:用4 个输入线写出输出线的地址,使得在一个选通输入为低时数据通过另一个选通输入。当任何一个选通输入是高时,所有输出都为高。一条行线上要带动16列的LED进行显示,按每一LED器件20MA电流计算,16个LED同时发光时,需要320MA电流,选通三极管8550作为驱动管可满足要求。
4.2.系统程序的设计
显示屏软件的主要功能是向屏体提供显示数据,并产生各种控制信号,使屏幕按设计的要求显示。根据软件分层次设计的原理,可以把显示屏的软件系统分为两层;第一层是底层的显示驱动程序,第二层是上层的系统应用程序。显示驱动程序负责向屏体送显示数据,并负责产生行扫描信号和其他控制信号,配合完成LED显示屏的扫描显示工作。显示驱动器程序由定时器T0中断程序实现。系统应用程序完成系统环境设置(初始化)、显示效果处理等工作,由主程序来实现。
从有利于实现较复杂的算法(显示效果处理)和有利于程序结构化考虑,显示屏程序适宜采用C语言编写。
4.2.1显示驱动程序
显示驱动程序在进入中断后首先要对定时器T0重新赋初值,以保证显示屏刷新率的稳定,1/16扫描显示屏的刷新率(帧频)计算公式如下:
刷频率(帧频)=1/16×T0溢出率
=1/16×f/12(65536-t)
其中f位晶振频率,t为定时器T0初值(工作在16位定时器模式)。
- 10 -
第四章 方案实现
然后显示驱动程序查询当前燃亮的行号,从显示缓存区内读取下一行的显示数据,并通过串口发送给移位寄存器。为消除在切换行显示数据的时候产生拖尾现象,驱动程序先要关闭显示屏,即消隐,等显示数据打入输出锁存器并锁存,然后再输出新的行号,重新打开显示。图3为显示驱动程序(显示屏扫描函数)流程图。
送新行显示数据
发送新行号,打开显示 切换显示数据 消 隐 读取行号并增加1 定时器赋初值 进入中断
退出中断
图 3 显示驱动程序流程图
4.2.2系统主程序
本文设计的系统软件能使系统在目测条件下LED显示屏各点亮度均匀、充足,可显示图形和文字,显示图形和文字应稳定、清晰无串扰。图形或文
- 11 -
第四章 方案实现
字显示有静止、移入移出等显示方式。
系统主程序开始以后,首先是对系统环境初始化,包括设置串口、定时器、中断和端口;然后以上移效果显示图形,停留约1s;接着向左滚动显示“我爱南昌大学”这6个汉字。由于单片机没有停机指令,所以可以设置系统程序不断的循环执行上述显示效果。
单元显示屏可以接收来自控制器(主控制电路板)或上一级显示单元模块传输下来的数据信息和命令信息,并可将这些数据信息和命令信息不经任何变化地再传送到下一级显示模块单元中,因此显示板可扩展至更多的显示单元,用于显示更多的显示内容。 图4是系统主程序流程图。
“上滚屏”显示效果
“右滚屏”显示效果
图4 系统主程序流程图
开始 系统初始化 “左滚屏”显示效果 ““下滚屏”显示效果
- 12 -
第五章 性能分析与总结
第五章 性能分析与总结
5.1 性能分析
LED显示屏硬件电路只要硬件质量可靠,引脚焊接正确,一般无需调试即可 正常工作。软件部分需要调试的主要有显示屏刷新频率及显示效果两部分。显示屏刷新率由定时器T0的溢出率和单片机的晶振频率决定,表5.1给出了实验调试时采用的频率及其对应的定时器T0初值。
表5.1 显示平刷新率与T0初值关系表(24MHz晶振)
刷新率 T0初值 25 0Xec78 50 0Xf63C 62.5 0Xf830 75 0xF97E 85 0XFA42 100 0XFB1E 120 0xFBEE 从理论上来说,24Hz以上的刷新频率就能看到稳定的连续的显示,刷新率越高,显示越稳定,同时刷新频率越高,显示驱动程序占用的CPU时间越多。试验证明,在目测条件下刷新频率40Hz一下的画面看起来闪烁较严重,刷新频率50Hz以上的已基本察觉不出画面的闪烁,刷新频率达到85Hz以上时再增加画面闪烁没有明显的改善。
显示效果处理程序的内容及方法非常广泛,其调试过程在此不作具体讨论,读者可以照源程序自行分析。
这个方案设计的16x16的点阵LED图文显示屏,电路简单,成本较低,且较容易扩展成更大的显示屏;显示屏各点亮度均匀、充足;显示图形或文字稳定、清晰无串扰;可用静止、移入移出等多种显示方式显示图形或文字。
5.2 硬件调试
所谓的硬件调试就是对所有的电路板进行检查及测量,以保证硬件电路的正确性。它是我们设计能否成功的关键。下面是硬件调试的过程:
- 13 -
第五章 性能分析与总结
1、用力用表测量电路板之间的连线是否接通。按照原理图检查,看电路板是否符合我们的设计要求,把接错的线重新修改过来。
2、按元器件的大小,有顺序的焊接在电路板上,全部焊完之后,再重新测量电路板,检查是否有虚焊的地方。当电路板中所有器件都焊接好之后,把点阵块插在上面。然后,块与块之间再用数据线连接上, 确保它们正常工作。
3、开始分块调试电路,先调试控制电路,主要检查控制器,看单片机是否复位、晶振电路以及其它的扩展电路是否正常。这些都需要通过软件来调试,直到工作正常为止。接下来对驱动电路进行调试,先选通所有的行和列,让所有的点都亮起来,检查器件是否工作正常。接着行和列间隔送1或间隔送0,看它能否正常运行。
4、检查通讯部分,看所有引脚是否都连接好。当硬件没有错误后,在上位机编写一个小的程序(不停地向下位机发送05H、OaI-I),用示波器观察MAx232的输出口是否有脉冲送出。如果有,则表示所有器件都是正确的;否则检查串口线是否完好。当所有的硬件都没有问题时,就可以进行软件调试了。
5、在软件调试结束后,把程序固化到程序存贮器中。这时要注意单片机的E^引脚是否接在高电平上,如果没有接,一定要把它接在高电平,否则不能正常工作。
5.3 总结
本文设计的一个室内用16x16的点阵LED图文显示屏,能够在目测条件下LED显示屏各点亮度均匀、充足,可显示图形和文字,显示图形和文字稳定、清晰。图形或文字显示分三种方式分别为:静止、移入移出等显示方式。本系统具有硬件少,结构简单,容易实现,性能稳定可靠,成本低等特点。 总结本文的研究工作,主要做了下面几点较突出的工作:
一、通过查阅大量的相关资料,详细了解了LED的发光原理和LED显示屏的原理,了解了LED的现状,清楚地了解了LED显示屏与其它显示屏相比较有哪些优点,明确了研究目标。
二,本文设计的LED显示屏能够实现在目测条件下LED显示屏各点亮度均匀、充足,可显示图形和文字,显示图形和文字应稳定、清晰无串扰。图形或文字显示有静止、移入移出等显示方式。
- 14 -
第五章 性能分析与总结
三,文章给出了系统具体的硬件设计方案,硬件结构电路图,软件流程图和具体汇编语言程序设计与调试等方面。
四,在这次毕业设计的过程中学会了 Protel 99se 的基本使用,感到Protel 99se 对电子信息工程专业的同学来说是一门很有用的课程。
五,通过这次毕业设计,重新复习并进一步学习了MCS-51; 六,存在缺陷:没有考虑抗干扰的问题。
通过这次的锻炼,不仅动手能力得到了加强,更重要的是学到了很多新的专业技能知识,经验也更加丰富了。我觉得我还有很多不足的地方,如:基本知识掌握不牢固、动手能力不强、知识面不够宽。我争取在以后的学习当中弥补它,不断的完善自己。虽然期间我们遇到了不少的难题,但是经过自己查阅资料以及请求同学的帮助,再大的困难也被给一一的解决了。
通过对本篇论文的论证,实现了论证的目的和主导思想。不但实现了LED条形显示屏显示所设定的文字的要求,而且在设计的成本上也占了很大的优势。由于LEO条型显示屏的拼装简单且成本很低,将几块条屏组合到一起就构成了图文显示屏,可显示较多的信息,因此可被广泛推广和使用。
参考文献
[1] 何立民.MCS-51系列单片机应用系统设计与接口技术 .北京航空航天大学出版社,1990
[2] 任涛等.闪速存储器数据及应用简明速查手册.电子工业出版社,1997 [3] 何立民.单片机应用技术选编.北京航空航天大学出版社,2000 [4] 张毅刚等.MCS-51单片机应用设计.哈尔滨工业电子出版社,1996 [5] 邬宽明.单片机外围器件实用手册.北京航空航天大学出版社,1998 [6] 张凯.LED介绍完全手册.北京航空航天大学出版社,2000 [7] 张友德等.单片微型机原理应用与实验,复旦大学出版社,1996
- 15 -
致谢
致谢
本文是在王忠老师的悉心指导下完成的。从课题的立项、选题到课题的开发与研究,再到本论文的撰写到定稿的每一步工作都倾注着王忠老师的心血和汗水,同时得到同学们相助,并提供了大量的资料。 在此,对于老师和同学们的帮助表示忠心的感谢。
- 16 -
附录
附录 1 protel原理图
- 17 -
附录
附录 3 Proteus 仿真图
- 18 -
附录
附录 4 protel印制版图
印制版图
- 19 -
附录
附录 5 主要汇编程序清单
以下是16x16的点阵LED电子图文显示屏的源程序采用汇编语言编写(也可采用C语言编写,C程序KeiluVision2 V2.30环境下调试通过。
以下为用汇编语言编写的字符显示控制程序:
; *************************************** ; * * ; * 四个8x8的点阵电子屏字符显示器 * ; * ATAC52 12MHz晶振 * ; * * ; ***************************************
;org 0000h jmp begin
org 0030h
begin1:mov sp,#40h mov dptr,#table mov p0,#00 mov p2,#00 call delay l4:mov 21h,#0bfh mov r0,#0bfh mov r5,#04 l3:mov r3,#20h l2:mov r4,#16 mov r1,#10h mov r2,00h
l1:mov a,r1 mov p1,r1 dec r1 mov a,r2 movc a,@a+dptr mov p2,a dec r2 mov a,r2 movc a,@a+dptr
- 20 -
附录
mov p0,a dec r2 call delay mov p0,#00h mov p2,#00h djnz r4,l1 djnz r3,l2 dec 21h dec 21h
mov r0,21h cjne r2,#01,l3 jmp start START: MOV SP,#70H MOV R6,#00H MOV R0,#20H MOV R1,#30H MOV DPTR,#TABLE1 CALL LOADING ;MOV R0,#20H ;MOVX A,@R0 LOOP: MOV 60H,#06H MOV DPTR,#TABLE2 AGAIN:MOV R0,#40H MOV R1,#50H CALL LOADING MOV R4,#16 NEXT: CALL ROTATE ; MOV R0,#20H ; MOV A,@R0 MOV R5,#255 LP2: MOV R7,#16 MOV R3,#00H MOV R0,#20H MOV R1,#30H LP1:
MOV A,R3
- 21 -
MOV P1,A MOV A,@R0 MOV P0,A INC R0 MOV A,@R1 MOV P2,A INC R1 INC R3 DJNZ R7,LP1 DJNZ R5,LP2 DJNZ R4,NEXT DJNZ 60H,AGAIN JMP begin begin:mov sp,#40h mov dptr,#table3 mov p0,#00 mov p2,#00 call delay x4:mov 21h,#00h mov r0,#00h mov r5,#04 x3:mov r3,#20h x2:mov r4,#16 mov r1,#00h mov r2,00h
x1:mov a,r1 mov p1,r1 inc r1 mov a,r2 movc a,@a+dptr mov p0,a inc r2 mov a,r2 movc a,@a+dptr mov p2,a inc r2
附录
- 22 -
附录
call delay mov p0,#00h mov p2,#00h djnz r4,x1 djnz r3,x2 inc 21h inc 21h
mov r0,21h cjne r2,#0beh,x3 jmp start1 START1: MOV SP,#70H MOV R6,#00H MOV R0,#20H MOV R1,#30H MOV DPTR,#TABLE1 CALL LOADING1 ;MOV R0,#20H ;MOVX A,@R0 LOOP1: MOV 60H,#6 MOV DPTR,#TABLE2 AGAIN1:MOV R0,#40H MOV R1,#50H CALL LOADING1 MOV R4,#16 NEXT1: CALL ROTATE10 ; MOV R0,#20H ; MOV A,@R0 MOV R5,#255 LP21: MOV R7,#16 MOV R3,#00H MOV R0,#20H MOV R1,#30H LP11:
MOV A,R3 MOV P1,A MOV A,@R0
- 23 -
MOV P0,A INC R0 MOV A,@R1 MOV P2,A INC R1 INC R3 DJNZ R7,LP11 DJNZ R5,LP21 DJNZ R4,NEXT1 DJNZ 60H,AGAIN1 JMP l4
LOADING1:MOV R2,#16
L_11: MOV A,#0
MOVC A,@A+DPTR MOV @R0,A INC R0 INC DPTR CLR A
MOVC A,@A+DPTR MOV @R1,A INC R1 INC DPTR
DJNZ R2,L_11 RET ROTATE10:PUSH ACC SETB RS1
MOV R3,#00H MOV R4,#16 ROTATE11:CLR CY MOV A,#40H ADD A,R3 MOV R0,A MOV A,@R0
附录
- 24 -
RRC A MOV @R0,A MOV A,#50H PUSH PSW ADD A,R3 MOV R0,A MOV A,@R0 POP PSW RRC A MOV @R0,A MOV A,#20H PUSH PSW ADD A,R3 MOV R0,A MOV A,@R0 POP PSW RRC A MOV @R0,A MOV A,#30H PUSH PSW
ADD A,R3 MOV R0,A MOV A,@R0 POP PSW RRC A MOV @R0,A INC R3
DJNZ R4,ROTATE11 CLR RS1 POP ACC RET
LOADING:MOV R2,#16
附录
- 25 -
附录
L_1 : MOV A,#00H MOVC A,@A+DPTR MOV @R0,A INC R0 INC DPTR CLR A
MOVC A,@A+DPTR MOV @R1,A INC R1 INC DPTR
DJNZ R2,L_1 RET ROTATE:PUSH ACC SETB RS1
MOV R3,#00H MOV R4,#16 ROTATE1:CLR CY MOV A,#50H ADD A,R3 MOV R0,A MOV A,@R0 RLC A MOV @R0,A MOV A,#40H PUSH PSW ADD A,R3 MOV R0,A MOV A,@R0 POP PSW RLC A MOV @R0,A MOV A,#30H PUSH PSW ADD A,R3
- 26 -
附录
MOV R0,A MOV A,@R0 POP PSW RLC A MOV @R0,A MOV A,#20H PUSH PSW
ADD A,R3 MOV R0,A MOV A,@R0 POP PSW RLC A MOV @R0,A INC R3
DJNZ R4,ROTATE1 CLR RS1 POP ACC RET delay:setb rs0
mov r6,#02 d1:mov r7,#25 djnz r7,$ djnz r6,d1 clr rs0 ret
TABLE1: DB 001H,020H,005H,070H,009H,01EH,009H,010H db 021H,010H,07FH,0FFH,001H,010H,009H,010H DB 009H,050H,006H,030H,002H,018H,005H,016H
TABLE2: DB 01EH,000H,001H,0FCH,008H,088H,004H,090H db 07FH,0FEH,040H,042H,020H,041H,01FH,0FEH DB 000H,020H,00FH,0E0H,004H,050H,002H,090H db 001H,008H,006H,088H,038H,044H,010H,030H ; 昌
DB 000H,080H,020H,080H,07FH,0FFH,000H,080H
- 27 -
db 004H,090H,028H,050H,028H,014H,030H,008H ;南
附录
db 020H,080H,07FH,0FEH,024H,012H,022H,022H DB 02FH,0FAH,020H,082H,020H,082H,02FH,0FAH db 020H,082H,020H,082H,028H,082H,010H,002H ; 航
DB 00FH,0F8H,008H,008H,008H,008H,00FH,0F8H db 008H,008H,008H,008H,00FH,0F8H,010H,000H DB 03FH,0FCH,010H,004H,010H,004H,01FH,0FCH db 010H,004H,010H,004H,01FH,0FCH,010H,004H ;空
DB 000H,080H,000H,080H,000H,080H,000H,080H db 020H,080H,07FH,0FFH,000H,080H,001H,040H DB 001H,040H,002H,040H,002H,020H,004H,020H db 008H,010H,070H,008H,020H,006H,000H,000H ;大
DB 010H,044H,010H,088H,008H,088H,004H,000H db 07FH,0FEH,040H,002H,020H,001H,007H,0F8H DB 002H,000H,021H,080H,07FH,0FFH,000H,080H db 000H,080H,000H,080H,000H,0A0H,000H,040H ;学
DB 001H,020H,005H,070H,009H,01EH,009H,010H db 021H,010H,07FH,0FFH,001H,010H,009H,010H DB 009H,050H,006H,030H,002H,018H,005H,016H db 004H,090H,028H,050H,028H,014H,030H,008H
TABLE :
DB 010H,044H,010H,088H,008H,088H,004H,000H db 07FH,0FEH,040H,002H,020H,001H,007H,0F8H DB 002H,000H,021H,080H,07FH,0FFH,000H,080H db 000H,080H,000H,080H,000H,0A0H,000H,040H ;昌
DB 000H,080H,000H,080H,000H,080H,000H,080H db 020H,080H,07FH,0FFH,000H,080H,001H,040H DB 001H,040H,002H,040H,002H,020H,004H,020H db 008H,010H,070H,008H,020H,006H,000H,000H ;航
- 28 -
;南
附录
DB 00FH,0F8H,008H,008H,008H,008H,00FH,0F8H db 008H,008H,008H,008H,00FH,0F8H,010H,000H DB 03FH,0FCH,010H,004H,010H,004H,01FH,0FCH db 010H,004H,010H,004H,01FH,0FCH,010H,004H ;空
DB 000H,080H,020H,080H,07FH,0FFH,000H,080H db 020H,080H,07FH,0FEH,024H,012H,022H,022H DB 02FH,0FAH,020H,082H,020H,082H,02FH,0FAH db 020H,082H,020H,082H,028H,082H,010H,002H ; 大
DB 01EH,000H,001H,0FCH,008H,088H,004H,090H db 07FH,0FEH,040H,042H,020H,041H,01FH,0FEH DB 000H,020H,00FH,0E0H,004H,050H,002H,090H db 001H,008H,006H,088H,038H,044H,010H,030H ; 学
DB 001H,020H,005H,070H,009H,01EH,009H,010H
db 021H,010H,07FH,0FFH,001H,010H,009H,010H DB 009H,050H,006H,030H,002H,018H,005H,016H db 004H,090H,028H,050H,028H,014H,030H,008H
TABLE3 :
DB 001H,020H,005H,070H,009H,01EH,009H,010H
db 021H,010H,07FH,0FFH,001H,010H,009H,010H DB 009H,050H,006H,030H,002H,018H,005H,016H db 004H,090H,028H,050H,028H,014H,030H,008H
DB 01EH,000H,001H,0FCH,008H,088H,004H,090H db 07FH,0FEH,040H,042H,020H,041H,01FH,0FEH DB 000H,020H,00FH,0E0H,004H,050H,002H,090H db 001H,008H,006H,088H,038H,044H,010H,030H ; 昌
DB 000H,080H,020H,080H,07FH,0FFH,000H,080H db 020H,080H,07FH,0FEH,024H,012H,022H,022H DB 02FH,0FAH,020H,082H,020H,082H,02FH,0FAH
- 29 -
;
;南
附录
db 020H,082H,020H,082H,028H,082H,010H,002H ; 航
DB 00FH,0F8H,008H,008H,008H,008H,00FH,0F8H db 008H,008H,008H,008H,00FH,0F8H,010H,000H DB 03FH,0FCH,010H,004H,010H,004H,01FH,0FCH db 010H,004H,010H,004H,01FH,0FCH,010H,004H ;空
DB 000H,080H,000H,080H,000H,080H,000H,080H db 020H,080H,07FH,0FFH,000H,080H,001H,040H DB 001H,040H,002H,040H,002H,020H,004H,020H db 008H,010H,070H,008H,020H,006H,000H,000H
DB 010H,044H,010H,088H,008H,088H,004H,000H db 07FH,0FEH,040H,002H,020H,001H,007H,0F8H DB 002H,000H,021H,080H,07FH,0FFH,000H,080H db 000H,080H,000H,080H,000H,0A0H,000H,040H end - 30 -
大 ;学 ;
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- 7swz.com 版权所有 赣ICP备2024042798号-8
违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务