LED点阵电子显示屏的设计.docx

上传人:b****8 文档编号:9925095 上传时间:2023-05-22 格式:DOCX 页数:35 大小:1.62MB
下载 相关 举报
LED点阵电子显示屏的设计.docx_第1页
第1页 / 共35页
LED点阵电子显示屏的设计.docx_第2页
第2页 / 共35页
LED点阵电子显示屏的设计.docx_第3页
第3页 / 共35页
LED点阵电子显示屏的设计.docx_第4页
第4页 / 共35页
LED点阵电子显示屏的设计.docx_第5页
第5页 / 共35页
LED点阵电子显示屏的设计.docx_第6页
第6页 / 共35页
LED点阵电子显示屏的设计.docx_第7页
第7页 / 共35页
LED点阵电子显示屏的设计.docx_第8页
第8页 / 共35页
LED点阵电子显示屏的设计.docx_第9页
第9页 / 共35页
LED点阵电子显示屏的设计.docx_第10页
第10页 / 共35页
LED点阵电子显示屏的设计.docx_第11页
第11页 / 共35页
LED点阵电子显示屏的设计.docx_第12页
第12页 / 共35页
LED点阵电子显示屏的设计.docx_第13页
第13页 / 共35页
LED点阵电子显示屏的设计.docx_第14页
第14页 / 共35页
LED点阵电子显示屏的设计.docx_第15页
第15页 / 共35页
LED点阵电子显示屏的设计.docx_第16页
第16页 / 共35页
LED点阵电子显示屏的设计.docx_第17页
第17页 / 共35页
LED点阵电子显示屏的设计.docx_第18页
第18页 / 共35页
LED点阵电子显示屏的设计.docx_第19页
第19页 / 共35页
LED点阵电子显示屏的设计.docx_第20页
第20页 / 共35页
亲,该文档总共35页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

LED点阵电子显示屏的设计.docx

《LED点阵电子显示屏的设计.docx》由会员分享,可在线阅读,更多相关《LED点阵电子显示屏的设计.docx(35页珍藏版)》请在冰点文库上搜索。

LED点阵电子显示屏的设计.docx

LED点阵电子显示屏的设计

点阵电子显示屏的设计

专业:

学号:

4学生姓名:

指导老师:

摘要:

本设计是一个16×16点阵LED电子显示屏显示滚动汉字的设计。

整机以ATMEL公司生产的40脚单片机AT89S52为控制核心,介绍了以它为控制系统的LED点阵电子显示屏的动态设计和开发过程。

驱动部分使用两个移位存储器的74HC595和两个移位寄存器74HC164组成,74HC595负责列扫描数据,74HC164负责行扫描数据。

行控制电路采用三极管放大电流,加大扫描强度,提高点阵屏亮度。

该电子显示屏可以显示各种单色图像及汉字,全屏能显示1个汉字,本文就是使用4块8×8共阳型点阵组成1块16×16点阵,采用按列扫描按行控制控制方式,扫描顺序自上而下,以满足汉字显示的要求。

文中详细介绍了LED点阵显示的硬件设计思路、硬件电路各个部分的功能及原理、相应程序的设计及调试。

关键词:

AT89S52单片机,16×16LED,彩灯显示

 

Thedesignof16×16-dot-matrixofLEDdisplay

Abstract:

Thisdesignisa16×16latticeLEDelectronicdisplayscreendisplayrolledcharactersdesign.Theproductionsofthecompanyareinthe40feetATMELAT89S52SCM,whichisthecontrolcore,introducingitforthecontrolsystemofLEDdotmatrixelectronicdisplaydynamicdesignanddevelopmentprocess.Drivingpartofmemoryisformedbytwo74HC164whichincludeshiftpacketandthetwo74HC595,74HC595isusedtoscanthedataofrolls,74HC164isforcontrollingdata.Usingtransistoramplifiercircuitcontrollinecurrent,increasethestrengthofscanning,improvethedot-matrix-scanbrightness.Theelectronicdisplayscreencanshowallsortsofcolorimageandcharacters,fullscreencanshow1character,thistextistouse4piecesoftypeof8×8-dot-matrixtomake16×16-dot-matrix,rowsofscanningaccordingtolistcontrolmode,scanningsequencecontrol,inordertomeettherequirementsofthat.Thistextintroducesthehardwaredesignofdot-matrixofLEDdisplay,thecircuitofhardwareandthefunctionofeachpartofthehardware,correspondingprogram,designanddebugging.

Keywords:

AT89S52MCU,16×16LED,lightsdisplay

 

目录

摘要I

Abstrct.II

第一章绪论1

1.1问题的提出及研究背景1

1.2国内外研究现状及发展趋势1

1.3本文所做的主要工作2

1.4方案实现2

第二章系统硬件部分设计4

2.1整体模块设计4

2.2电源电路设计4

2.3单片机最小系统电路5

2.3.1复位电路5

2.3.2晶振电路5

2.4列扫描电路5

2.5行扫描电路6

2.6LED显示屏电路7

2.7总体硬件电路设计8

第三章系统软件部分设计9

3.1系统主程序设计9

3.2显示驱动程序9

第4章系统调试与测试结果分析12

4.1系统调试12

4.2测试结果12

参考文献14

致谢15

附录一:

系统总程序16

附录二:

系统总体原理图23

附录三:

汉字字摸提取软24

附录四:

实物图25

 

第一章绪论

1.1问题的提出及研究背景

八十年代以来出现了组合型LED点阵显示器,以发光二极管为像素,它用高亮度发光二极管芯阵列组合后,环氧树脂和塑模封装而成。

具有高亮度、功耗低、引脚少、视角大、寿命长、耐湿、耐冷热、耐腐蚀等特点。

点阵显示器有单色和双色两类,可显示红,黄,绿,橙等。

LED点阵有4×4、4×8、5×7、5×8、8×8、16×16、24×24、40×40等多种;根据像素的数目分为双基色、三基色等,根据像素颜色的不同所显示的文字、图像等内容的颜色也不同,单基色点阵只能显示固定色彩如红、绿、黄等单色,双基色和三基色点阵显示内容的颜色由像素内不同颜色发光二极管点亮组合方式决定,如红绿都亮时可显示黄色,如果按照脉冲方式控制二极管的点亮时间,则可实现256或更高级灰度显示,即可实现真彩色显示。

LED点阵显示器单块使用时,既可代替数码管显示数字,也可显示各种中西文字及符号.如5×7点阵显示器用于显示西文字母.5×8点阵显示器用于显示中西文,8×8点阵用于显示中文文字,也可用于图形显示。

用多块点阵显示器组合则可构成大屏幕显示器,一般这类实用点阵显示器常通过微机或单片机控制驱动。

[1]

1.2国内外研究现状及发展趋势

LED点阵显示屏是八十年代后期在全球迅速发展起来的新型信息显示媒体,它利用发光二极管构成的点阵模块或像素单元组成在面积显示屏幕,以可靠性高、使用寿命长、环境适应能力强、价格性能比高、使用成本低等特点,在短短的十来年中,迅速成长为平板显示的主流产品,在信息显示领域得到了广泛的应用。

LED点阵显示屏发展的简要回顾:

发光二极管(LED)是六十年代未发展起来的一种半导体显示器件,七十年代,随着半导体材料合成技术、单晶制造技术和P-N结形成技术的研究进展,发光二极管在发光颜色、亮度等性能得以提高并迅速进入批量化和实用化。

进入八十年代后,LED在发光波长范围和性能方面大大提高,并开始形成平板显示产品即LED点阵显示屏。

[2]

LED点阵显示屏发展经历了三个阶段:

1)1990年以前LED点阵显示屏的成长形成时期。

一方面,受LED材料器件的限制,LED点阵显示屏的应用领域没有广泛展开,另一方面,显示屏控制技术基本上是通讯控制方式,客观上影响了显示效果。

这一时期的LED点阵显示屏在国外应用较广,国内很少,产品以红、绿双基色为主,控制方式为通讯控制,灰度等级为单点4级调灰,产品的成本比较高。

2)1990-1995年,这一阶段是LED点阵显示屏迅速发展的时期。

进入九十年代,全球信息产业高速增长,信息技术各个领域不断突破,LED点阵显示屏在LED材料和控制技术方面也不断出现新的成果。

蓝色LED晶片研制成功,全彩色LED点阵显示屏进入市场,电子计算机及微电子领域的技术发展,在显示屏控制技术领域出现了视频控制技术,显示屏灰度等级实现16级灰度和64级灰度调灰,显示屏的动态显示效果大大提高。

这一阶段,LED点阵显示屏在我国发展速度非常迅速,从初期的几家企业、年产值几千万元发展到几十家企业、年产值几亿元,产品应用领域涉及金融证券、体育、机场、铁路、车站、公路交通、商业广告、邮电电信等诸多领域,特别是1993年证券股票业的发展更引发了LED点阵显示屏市场的大幅增长。

LED点阵显示屏在平板显示领域的主流产品局面基本形成,LED点阵显示屏产业成为新兴的高科技产业。

3)1995年以来,LED点阵显示屏的发展进入一个总体稳步提高产业格局调整完善的时期。

1995年以来,LED点阵显示屏产业内部竞争加剧,形成了许多中小企业,产品价格大幅回落,应用领域更为广阔,产品在质量、标准化等方面出现了一系列新的问题,有关部门对LED点阵显示屏的发展予以重视并进行了适当的规范和引导,目前这方面的工作正在逐步深化。

[3]

我国LED点阵显示屏的发展现状:

产业发展初期规模:

我国的LED点阵显示屏产业经过几年的发展,基本形成了一批具有一定规模的骨干企业。

据不完全统计,至1998年底,年度销售总额在1000万元以上的企业有20多家,其销售总额达6亿元左右,占行业市场总额的85%以上。

全国从事LED点阵显示屏的各类企业有100余家,从业人员近6000人,行业年度销售总额近8亿元人民币,1996年、1997年的增长速度均保持40%左右,1998年略有回落。

在国内市场上,国产LED点阵显示屏的市场占有率近100%,国外同类产品基本没有市场,四十三届世乒赛主会场天津体育中心、京九铁路、北京西客站、首都机场、浦东机场等,均由国内代表企业中标。

技术水平相对领先:

我国LED点阵显示屏产业在规模发展的同时,产品技术推陈出新,一直保持比较先进的水平。

90年代初即具备了成熟的16级灰度256色视频控制技术及无线遥控等国际先进水平技术,近年在全彩色LED点阵显示屏、256级灰度视频控制技术、集群无经线控制、多级群控技术等方面均有国内先进、达到国际水平的技术和产品出现;LED点阵显示屏控制专用大规模集成电路也已由国内企业开发生产并得到应用。

[4]

1.3本文所做的主要工作

本文要求设计一个由单片机驱动的16×16点阵LED图文显示屏,并且在目测条件下LED显示屏各点亮度均匀、充足,可显示图形和文字,显示图形或文字应稳定、清晰无串扰。

图形或文字显示有静止、移入移出等显示方式。

根据任务要求,需做的工作如下:

1、查阅点阵的相关文献资料,学习最简单的点阵的使用方法;

2、将简单点阵进行扩展,设计成16×16LED点阵,使用PROTUES软件进行硬件的系统设计;

3、利用KEIL软件编写单片机程序,编译链接生成HEX文件,然后下载到PROTUES软件中进行硬件仿真;

4、仿真调试成功后制作PCB板实物电路,实现16×16点阵LED电子显示屏各项功能。

1.4方案实现

从理论上说,不论显示图形还是文字,只要控制组成这些图形或文字的各个点所在的位置相对应的LED器件发光,就可以得到我们想要的显示结果,这种同时控制各个发光点亮灭的方法称为静态驱动显示方式。

16×16的点阵共有256个发光二极管,显然单片机没有这么多的端口,如果我采用锁存器来扩展端口,按8位的锁存器来计算,16×16的点阵需要256/8=32个锁存器。

这个数字很庞大,因为我们仅仅是16×16的点阵,在实际应用中的显示屏往往要大得多,这样在锁存器上花的成本将是一个很庞大的数字。

因此在实际应用中的显示屏几乎都不采用这种设计,而采用另外一种称为动态扫描的显示方法。

动态扫描的意思简单地说就是逐行轮流点亮,这样扫描驱动电路就可以实现多行(比如16行)的同名列共用一套驱动器。

具体就16×16的点阵来说,把所有同1行的发光管的阳极连在一起,把所有同1列的发光管的阴极连在一起(共阳极的接法),先送出对应第一行发光管亮灭的数据并锁存,然后选通第1行使其燃亮一定时间,然后熄灭;再送出第二行的数据并锁存,然后选通第2行使其燃亮相同的时间,然后熄灭;以此类推,第16行之后,又重新燃亮第1行,反复轮回。

当这样轮回的速度足够快(每秒24次以上),由于人眼的视觉暂留现象,就能够看到显示屏上稳定的图形了。

采用扫描方式进行显示时,每一行有一个行驱动器,各行的同名列共用一个驱动器。

显示数据通常存储在单片机的存储器中,按8位一个字节的形式顺序排放。

显示时要把一行中各列的数据都传送到相应的列驱动器上去,这就存在一个显示数据传输的问题。

从控制电路到列驱动器的数据传输可以采用并列方式或串行方式。

显然,采用并行方式时,从控制电路到列驱动器的线路数量大,相应的硬件数目多。

当列数很多时,并列传输的方案是不可取的。

采用串行传输的方法,控制电路可以只用一根信号线,将列数据一位一位传往列驱动器,在硬件方面无疑是十分经济的。

但是,串行传输过程较长,数据按顺序一位一位地输出给列驱动器,只有当一行的各列数据都以传输到位之后,这一行的各列才能并行地进行显示。

这样,对于一行的显示过程就可以分解成列数据准备(传输)和列数据显示两部分。

对于串行传输方式来说,列数据准备时间可能相当长,在行扫描周期确定的情况下留给行显示的时间就太少了,以致影响到LED的亮度。

解决串行传输中列数据准备和列数据显示的时间矛盾问题,可以采用重叠处理的方法。

即在显示本行各列数据的同时,传送下一列数据。

为了达到重叠处理的目的,列数据的显示就需要具有锁存功能。

经过上述分析,就可以归纳出列驱动器电路应具有的功能。

对于列数据准备来说,它应能实现串入并出的移位功能;对于列数据显示来说,应具有并行锁存的功能。

这样,本行已准备好的数据打入并行锁存器进行显示时,串并移位寄存器就可以准备下一行的列数据,而不会影响本行的显示。

 

第二章系统硬件部分设计

系统硬件部分电路大致上可以分成电源电路、单片机最小系统电路及外围电路、列扫描电路、行扫描电路和LED显示屏电路五部分。

2.1整体模块设计

本设计行、列驱动电路,显示屏电路,运用单片机的智能化,系统的将每个功能电路模块连接在一起,总体结构设计如下图2.1所示:

图2.1系统结构设计总图

2.2电源电路设计

三端稳压集成电源电路L7805C的功能是把9V直流电压转变为所需的、稳定的5V直流电压。

它由9V直流电源接口、9V电源滤波电路、三端稳压集成电路、5V滤波电路和及电源接通提示四个部分组成。

C4、C5为9V、5V电源的滤波电容,D2、D3分别为9V、5V接通提示电路,R3、R4为D2、D3的限流电阻,防止D2、D3烧坏。

S2为5V电源接通和关断用的,由于电路非常简单,在此就不再赘述。

电源电路原理图如下图2.2所示:

图2.2电源电路

2.3单片机最小系统电路

AT89S52是美国ATMEL公司生产的低电压,高性能CMOS8位单片机,片内含8KB可反复擦写的Flash只读程序存储器和256字节随机存取数据存储器。

该器件采用ATMEL公司高密度、非易失性存储技术制造,兼容标准MCS-51指令系统,灵活应用于各种控制领域。

AT89S52单片机最小系统电路由复位电路、晶振电路两部分组成。

2.3.1复位电路

AT89S52单片机在启动运行时或者出现死机时需要复位,使CPU以及其他功能部件处于一个确定的初始状态,并从这个状态开始工作。

复位电路产生的复位信号(高电平有效)由RST引脚送入到内部的复位电路,对AT89S52单片机进行复位,复位信号要持续两个机器周期(24个时钟周期)以上,才能使AT89S52单片机可靠复位。

AT89S52单片机复位电路如下图2.3所示:

图2.3复位电路图图2.4晶振电路图

复位电路工作原理:

上电瞬间RST引脚的电位与VCC等电位,RST引脚为高电平,随着电容C3充电电流的减少,RST引脚的电位不断下降,其充电时间常数为T=R3*C3=100ms,此时间常数足以RST引脚在保持为高电平的时间内完成复位操作。

当单片机已在运行当中时,按下复位键S5后再松开,也能使RST引脚为一段时间的高电平,从而实现AT89S52单片机复位。

2.3.2晶振电路

晶振电路如上图2.4所示:

XTAL1和XTAL2是片内振荡电路输入端,这两个端子用来外接石英晶体和微调电容,即用来连接AT89S52单片机片内OSC的定时反馈回路。

晶振起振后要能在XTAL2端输出一个3V左右的正弦波,以便使片内OSC电路按晶振相同频率自激振荡。

通常,OSC的输出时钟频率FOSC为6MHZ—16MHZ,典型值为12MHZ或11.0592MHZ。

电容C1和C2帮助晶振起振,典型值为30pf,调节它们可以达到微调FOSC的目的。

本系统中,晶振为12MHZ,C1=C2=20pf。

2.4列扫描电路

列扫描电路由集成电路74HC595构成如图2.5所示,列的处理信号有三个,SER、SRCLK、RCLK,SER做为列移位寄存器的输入,SRCLK是移位时钟,RCLK做为锁存时钟当将16个位数据在SRCLK的脉冲作用下移位寄存器后,就可以开启RCLK时钟,使寄存器的数据存入锁存器,因使能脚接0使能,数据直接输出Q端,Q端数据经330欧姆的限流电阻接入点阵

列脚位,即一行的数据显示。

[13]

图2.5列扫描电路原理图

2.5行控制电路

行控制电路如下图2.6所示:

 

图2.6行驱动电路原理图

行的处理信号有AB和SCK,AB做为行移位寄存器的输入,SCK是移位时钟,AB的输入在SCK的时钟脉冲下移入寄存器,寄存器输出端Q经4.7K电阻接入三极管B极,控制三极管的导通和截止,从而控制点阵行脚位电量。

每次移位的输出16个Q位只允许有一个是低电平,即是分时轮流的输出低电平是三极管导通,从而使扫描至上而下进行。

本文行扫描采用的工作方式是:

单片机的P2^3不断的向单片机一位一位的(即串行)发送数据,74HC164不断的接收数据并且存储起来,待到74HC164寄存器‘集满’16位数据的时候,再通过并行输出把数据传给点阵,发送给点阵的16位行信号与两片74HC595芯片发送的16位列信号‘会合’从而产生一个汉字或其他别的图形通过点阵显示出来。

排阻RP1和RP2为限流排阻,以免74HC164的输出电流过大烧坏三极管,本文将74HC164输出的信号通过S8550三极管放大再传送给点阵行输入端,以加大扫描强度,提高点阵显示亮度。

2.6LED显示屏电路

LED显示屏是将发光二极管按行按列布置的,在扫描驱动方式下可以按行扫描按列控制,也可以按列扫描按行控制。

本文就是使用4块8×8点阵组成1块16×16点阵,采用按列扫描按行控制控制方式,扫描顺序自上而下,以满足汉字显示的要求。

16×16点阵LED结构如图2.7所示:

图2.716×16点阵电路图

要实现显示动画,只需考虑其显示方式,通过编程控制各显示点对应LED阳极和阴极端的电平,就可以有效的控制各显示点的亮灭。

当采用按行扫描按列控制的驱动方式时,LED显示屏8行的同名列共用一套列驱动器。

行驱动器一行的行线连接到电源的一端,列驱动器一列的列线连接到电源的另一端。

应用时还应在各条行线或列线上接上限流电阻。

扫描中控制电路将行线的1到8轮流接通高电位,使连接到各该行的全部LED器件接通正电源,但具体那一个LED导通,还要看它的负电源是否接通,这就是列控制的任务了。

当对应的某一列置0电平,则相应的二极管就亮;反之则不亮。

行线上只管一行一行的轮流导通,列线上进行通断控制,实现了行扫描列控制的驱动方式。

以上就是16×16点阵显示屏系统硬件部分的各功能模块分述,经过合理的设计论证后和就可以整体结合在一起,再根据设计配备好各元器件实物,通过组装后等在单片机的程序存储器里放入编制好的程序即可成为一个完整的应用系统。

2.7总体硬件电路设计

在整个电路设计中,用两片8位输出锁存移位寄存器74HC595作为列扫描,用两片74LS164芯片作为行扫描,用单片机AT89S52对74HC595和74HC164进行控制和驱动。

总电路原理图如附录二所示(更清楚的电路原理图有pdf格式的文档)。

 

 

第三章系统软件部分设计

本设计的软件的主要功能是向显示屏提供显示数据,并产生各种控制信号,使屏幕显示汉字的移动。

根据软件分层次设计的原理,可把显示屏的软件系统分成两大层:

第一层是底层的显示驱动程序,第二层是上层的系统应用程序。

显示驱动程序负责向屏体送显示数据,并负责产生列扫描信号和其它控制信号,配合完成LED显示屏的扫描显示工作。

系统应用程序完成系统环境设置(初始化)、显示效果处理等工作,由主程序来实现。

从有利于实现较复杂的算法(显示效果处理)和有利于程序结构化考虑,显示屏程序适宜采用C语言编写。

3.1系统主程序设计

系统主程序的总体结构如图3.1所示。

系统的主程序开始以后,首先是对系统环境初始化,然后LED显示屏进入开机状态,转入正常的显示,每次显示一个汉字,连续实现汉字循环向左滚动效果。

由于单片机没有停机指令,所以可以设置系统程序不断地循环执行上述显示效果。

 

3.2显示驱动程序

显示驱动程序查询当前燃亮的行号,从显示缓存区内读取下一行的显示数据,并通过串口发送给移位寄存器。

为消除在切换行显示数据的时候产生拖尾现象,驱动程序先要关闭显示屏,即消隐,等显示数据打入输出锁存器并锁存,然后再输出新的行号,重新打开显示。

图3.2为显示驱动程序(显示屏扫描函数)流程图。

voiddisplay()//显示

{

unsignedchari,ia,j,tmp;//定义变量

DATAOUT=0XFF;//置位高电平做准备

AB=0;//将列数据位清0,准备移位

for(i=0;i<16;i++)

{//循环输出16行数据

SCK=0;//为列移位做准备

SCLT=0;//为行锁存做准备

for(ia=2;ia>0;)

{//每行16个点,循环位移两个字节

ia--;//循环两次

tmp=~lhj[i*2+ia];//读取点阵数据做输出,这里用到ia目的是先读取点阵数据的第二位字节,因一行16个点由两个字节组成,

//电路中的移位寄存器最后一位对应最后一列,所以要先输出一行中的第二个字节数据

for(j=0;j<8;j++)

{//循环两次,每次移一个字节,

SCLH=0;//为列移位做准备

DATA=tmp&0x01;//将数据低位做输出,由电路图可知,移位寄存器的最后一位对应最后一列,因此先移最后一位

tmp>>=1;//将数据缓冲右移一位,为下次输出做准备

SCLH=1;//将DATA上的数据移入寄存器

}//移入单字节结束

}//移入两个字节结束

SCK=1;//SCK拉高,列数据移位,相应行拉低,三极管导通输出电量到相应行点阵管阳极(共阳)

SCLT=1;//SCLT拉高,将数据锁存输出到相应行的点阵发光管显示,显示一行后将保持到下一行显示开始

AB=1;//列数据位只在第一行时为0,其它时候都为1,当将这个0移入寄存器后,从第一位开始一直移位最后一位,//移位的过程,AB就必需是1,这是因为不能同时有两个及两个以上0的出现,否则显示出乱

}

j=64;

while(j--);//每一行的显示,保持16个移位时间,因此,最后一行的显示,也要加入保持时间,补尝显示的亮度

SCK=0;//

SCK=1;//将最后一行数据移出

}

3.3汉字字库的提取

3.3.1汉字的表示及编码原理

计算机用编码的方式来处理和使用字符,英文在计算机机内是用一个ASCII码来表示,

而中文汉字则由两个ASCII码表示。

1981年我国正式发布国家标准-—《信息交换用汉字

编码字符集--基本集》[GB2312-80]。

在这个标

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 临时分类 > 批量上传

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2