广告牌的单片机设计报告.docx

上传人:b****2 文档编号:18588743 上传时间:2023-08-19 格式:DOCX 页数:20 大小:85.92KB
下载 相关 举报
广告牌的单片机设计报告.docx_第1页
第1页 / 共20页
广告牌的单片机设计报告.docx_第2页
第2页 / 共20页
广告牌的单片机设计报告.docx_第3页
第3页 / 共20页
广告牌的单片机设计报告.docx_第4页
第4页 / 共20页
广告牌的单片机设计报告.docx_第5页
第5页 / 共20页
广告牌的单片机设计报告.docx_第6页
第6页 / 共20页
广告牌的单片机设计报告.docx_第7页
第7页 / 共20页
广告牌的单片机设计报告.docx_第8页
第8页 / 共20页
广告牌的单片机设计报告.docx_第9页
第9页 / 共20页
广告牌的单片机设计报告.docx_第10页
第10页 / 共20页
广告牌的单片机设计报告.docx_第11页
第11页 / 共20页
广告牌的单片机设计报告.docx_第12页
第12页 / 共20页
广告牌的单片机设计报告.docx_第13页
第13页 / 共20页
广告牌的单片机设计报告.docx_第14页
第14页 / 共20页
广告牌的单片机设计报告.docx_第15页
第15页 / 共20页
广告牌的单片机设计报告.docx_第16页
第16页 / 共20页
广告牌的单片机设计报告.docx_第17页
第17页 / 共20页
广告牌的单片机设计报告.docx_第18页
第18页 / 共20页
广告牌的单片机设计报告.docx_第19页
第19页 / 共20页
广告牌的单片机设计报告.docx_第20页
第20页 / 共20页
亲,该文档总共20页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

广告牌的单片机设计报告.docx

《广告牌的单片机设计报告.docx》由会员分享,可在线阅读,更多相关《广告牌的单片机设计报告.docx(20页珍藏版)》请在冰点文库上搜索。

广告牌的单片机设计报告.docx

广告牌的单片机设计报告

广告牌的设计报告

 

指导老师张丹

 

小组成员张子仁2007221105200104

童琦琦2007221105200114

刘希宇2007221105200097

 

目录

摘要1

关键词1

1.背景介绍2

1.1LED及LED显示屏2

1.2MCS-51系列单片机简介2

1.2.1MCS-51系列单片机及其特点2

1.2.2单片机的发展历史简介2

3.功能要求3

4.方案实现3

4.1系统硬件电路的设计4

4.1.1单片机系统及外围电路4

4.1.2列驱动电路4

4.1.3行驱动器5

4.2.系统程序的设计5

4.2.1显示驱动程序5

4.2.2系统主程序6

5性能分析与总结7

5.1性能分析7

5.2总结8

 

附录A16x16的点阵LED图文显示屏的硬件原理图9

附录B程序清单………………………………………………………….9

 

1.背景介绍

1.1LED及LED显示屏

LED就是LightEmittingDiode(发光二极管)的缩写。

在某些半导体材料的PN结中,注入的少数载流子与多数载流子复合时会把多余的能量以光的形式释放出来,从而把电能直接转换为光能。

PN结加反向电压,少数载流子难以注入,故不发光。

这种利用注入式电致发光原理制作的二极管叫发光二极管,通称LED。

发光二极管是由p型和n型半导体组成的二极管。

在LED的p-n结附近,n型材料中多数载流子是电子,p型材料中多数载流子是空穴。

p-n结上未加电压时构成一定的势垒,当加正向偏压时,在外电场作用下,p区的空穴和n区的电子就向对方扩散运动,构成少数载流子的注入,从而在p-n结附近产生导带电子和价带空穴的复合,同时释放出相对应的能量hν(h为普朗克常数,ν为光子频率)而发光。

该能量相当于半导体材料的带隙能量Eg(Ev),其与发光波长λ(nm)的关系为λ=1239.6PEg。

LED显示屏是一种通过控制半导体发光二极管的显示方式,用来显示文字、图形、图像、动画、行情、视频、录像信号等各种信息的显示屏幕。

LED显示屏分为图文显示屏和视频显示屏,均由LED矩阵块组成。

图文显示屏可与计算机同步显示汉字、英文文本和图形;视频显示屏采用微型计算机进行控制,图文、图像并茂,以实时、同步、清晰的信息传播方式播放各种信息,还可显示二维、三维动画、录像、电视、VCD节目以及现场实况。

LED显示屏显示画面色彩鲜艳,立体感强,静如油画,动如电影,广泛应用于车站、码头、机场、商场、医院、宾馆、银行、证券市场、建筑市场、拍卖行、工业企业管理和其它公共场所。

它的优点:

亮度高、工作电压低、功耗小、微型化、易与集成电路匹配、驱动简单、寿命长、耐冲击、性能稳定。

1.2MCS-51系列单片机简介

1.2.1MCS-51系列单片机及其特点

①可靠性高:

因为芯片是按工业测控环境要求设计的,故抗干扰的能力优于PC机。

系统软件(如:

程序指令,常数,表格)固化在ROM中,不易受病毒破坏。

许多信号的通道均在一个芯片内,故运作时系统稳定可靠。

②便于扩展:

片内具有计算机正常运行所必需的部件,片外有很多供扩展用的(总线,并行和串行的输入/输出)管脚,很容易组成一定规模的计算机应用系统。

③控制功能强:

具有丰富的控制指令:

如:

条件分支转移指令,I/O口的逻辑操作指令,位处理指令。

④实用性好:

体积小,功耗低,价格便宜,易于产品化。

1.2.2单片机的发展历史简介

①第1阶段(1971年—1978年),以MCS-48系列为代表,称4位单片机。

在片内:

CPU有4位或8位;ROM有1KB或2KB;RAM有64B或128B;只有并行接口,无串行接口;只有1个8位的定时/计时器;中断源只有2个。

在片外:

寻址范围只有4KB;芯片引脚有40个。

②第2阶段(1978年—1983年),以MCS-51系列为代表,称8位单片机。

在片内:

CPU有8位;ROM有4KB或8KB;RAM有128B或256B;有串/并行接口;有2个或3个16位的定时/计时器;中断源有5至7个。

在片外:

寻址范围有64KB;芯片引脚有40个。

③第3阶段(1983年以后),以MCS-96系列为代表,称16位单片机。

在片内:

CPU有16位;ROM有8KB;RAM有232B;有串/并行接口;有4个16位的定时/计时器;中断源有8个;增加了D/A和A/D转换电路。

在片外:

寻址范围有64KB;芯片引脚有48个或68个。

以上MCS-51系列以其优良的性价比,在我国得到了广泛的应用。

3.功能要求

设计一个室内用16x16的点阵LED图文显示屏,要求在目测条件下LED显示屏各点亮度均匀、充足,可显示图形和文字,显示图形和文字应稳定、清晰无串扰。

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

4.方案实现

方案1:

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

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

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

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

描驱动电路就可以实现多行(比如16行)的同名列共用一套驱动器。

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

图1为显示屏电路实现的结构框图。

 

 

图1,显示屏电路框图

方案2:

用分离元件来做,取代用单片机来进行对LED显示的实现,原理基本上与方案1相同。

方案论证:

方案2所用的器件比方案1多得多,虽然在原理上比方案1更简单,在结构上要比方案1复杂的多,且方案2比较昂贵,稳定性不高。

所以采用方案1.

 

4.1系统硬件电路的设计

硬件电路大致上可以分成单片机系统及外围电路、列驱动电路和行驱动电路三部分。

4.1.1单片机系统及外围电路

单片机采用MSC-51或其兼容系列芯片,采用12MHZ或更高频率晶振,以获得较高的刷新频率,时期显示更稳定。

单片机的串口与列驱动器相连,用来显示数据。

P1口低4位与行驱动器相连,送出行选信号;P1.5~P1.7口则用来发送控制信号。

P0口和P2口空着,在有必要的时候可以扩展系统的ROM和RAM。

16x16的点阵显示屏的硬件原理图如图2所示(在附录A)。

4.1.2列驱动电路

列驱动电路有集成电路74HC595构成。

它具有一个8位串入并出的移位寄存器和一个8位输出锁存器的结构,而且移位寄存器和输出锁存器的控制是各自独立的,可以实现在显示本行列数据的同时,传送下一行的列数据,既达到重叠处理的目的。

74HC595的外形及内部结构如图3所示。

它的输入侧有8个串行移位寄存器,每个移位寄存器的输出都连接一个输出锁存器。

引脚SI是串行数据的输入端。

引脚SCK是移位寄存器的移位时钟脉冲,在其上升沿发生移位,并将SI的下一个数据打入最低位。

移位后的各位信号出现在各移位寄存器的输出端,也就是输出锁存器的输入端。

RCK是输出锁存器的打入信号,其上升沿将移位寄存器的输出打入输出锁存器。

引脚G是输出三态门的开放信号,只有当其为低时锁存器的输出才开放,否则为高组态。

SCLR信号是移位寄存器清零输入端,当其为低时移位寄存器的输出全部为零。

由于SCK和RCK两个信号是互相独立的,所以能够做到输入串行移位与输出锁存互不干扰。

芯片的输出端为QA~QH,最高位QH可作为多片74HC595级联应用时,向上一级的级联输出。

但因为QH受输出锁存器的打入控制,所以还从输出锁存器前引出QH,作为与移位寄存器完全同步的级联输出。

 

QB116Vcc

QC215QA

QD314SI

QE413G

QF512RCK

QG611SCK

QH710SCLR

GND89QH

图3.74HC595外形及引脚

 

4.1.3行驱动器

单片机P1口低4位输出的行号经4/16线译码器74LS154译码后生成16条行选通信号线,再经过驱动器驱动对应的行线。

一条行线上要带动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位定时器模式)。

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

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

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

图4显示驱动程序流程图

4.2.2系统主程序

本文设计的系统软件能使系统在目测条件下LED显示屏各点亮度均匀、充足,可显示图形和文字,显示图形和文字应稳定、清晰无串扰。

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

系统主程序开始以后,首先是对系统环境初始化,包括设置串口、定时器、中断和端口;然后显示图形,由于单片机没有停机指令,所以可以设置系统程序不断的循环执行上述显示效果。

显示文字为“努力学习”。

开机全屏点亮,1秒过后,开始右移显示汉字!

单片机P2.6,P2.7口接有自锁开关,当P2.6口按下,即可令显示文字暂停,当P2.6口开启,文字继续按原定方式显示!

当P2.7口按下,待右移完毕后,间隔3秒,卷帘显示汉字,当P2.7开启,待卷帘完毕后,又会右移显示汉字!

循环往复!

单元显示屏可以接收来自控制器(主控制电路板)或上一级显示单元模块传输下来的数据信息和命令信息,并可将这些数据信息和命令信息不经任何变化地再传送到下一级显示模块单元中,因此显示板可扩展至更多的显示单元,用于显示更多的显示内容。

图5是系统主程序流程图。

5性能分析与总结

5.1性能分析

LED显示屏硬件电路只要硬件质量可靠,引脚焊接正确,一般无需调试即可正常工作。

软件部分需要调试的主要有显示屏刷新频率及显示效果两部分。

显示屏刷新率由定时器T0的溢出率和单片机的晶振频率决定,表5.1给出了实验调试时采用的频率及其对应的定时器T0初值。

表5.1显示平刷新率与T0初值关系表(12MHz晶振)

刷新率

25

50

62.5

75

85

100

120

T0初值

0Xec78

0Xf63C

0Xf830

0xF97E

0XFA42

0XFB1E

0xFBEE

从理论上来说,24Hz以上的刷新频率就能看到稳定的连续的显示,刷新率越高,显示越稳定,同时刷新频率越高,显示驱动程序占用的CPU时间越多。

试验证明,在目测条件下刷新频率40Hz一下的画面看起来闪烁较严重,刷新频率50Hz以上的已基本察觉不出画面的闪烁,刷新频率达到85Hz以上时再增加画面闪烁没有明显的改善。

显示效果处理程序的内容及方法非常广泛,其调试过程在此不作具体讨论,读者可以照源程序自行分析。

这个方案设计的16x16的点阵LED图文显示屏,电路简单,成本较低,且较容易扩展成更大的显示屏;显示屏各点亮度均匀、充足;显示图形或文字稳定、清晰无串扰;可用静止、移入移出等多种显示方式显示图形或文字。

5.2总结

本文设计的一个室内用16x16的点阵LED图文显示屏,能够在目测条件下LED显示屏各点亮度均匀、充足,可显示图形和文字,显示图形和文字应稳定、清晰无串扰。

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

本系统具有硬件少,结构简单,容易实现,性能稳定可靠,成本低等特点。

总结本文的研究工作,主要做了下面几点较突出的工作:

  一、通过查阅大量的相关资料,详细了解了LED的发光原理和LED显示屏的原理,了解了LED的现状,清楚地了解了LED显示屏与其它显示屏相比较有那些

优点,明确了研究目标。

二,本文设计的LED显示屏能够实现在目测条件下LED显示屏各点亮度均匀、充足,可显示图形和文字,显示图形和文字应稳定、清晰无串扰。

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

三,文章给出了系统具体的硬件设计方案,硬件结构电路图,软件流程图和具体汇编语言程序设计与调试等方面。

附录A16x16的点阵LED图文显示屏的硬件原理图

 

附录B主要C程序清单

以下是16x16的点阵LED电子图文显示屏的源程序采用C语言编写,C程序KeiluVision2V2.30环境下调试通过。

以下为用汇编语言编写的字符显示控制程序:

;***************************************

;**

;*单个16x16的点阵电子屏字符显示器*

;*ATA89C5212MHz晶振*

;*2004.2.11LRM*

;***************************************

;显示字用查表法,不占用内存,字符用16x16共阳LED点阵,

;效果:

向上滚动显示4个字,再重复循环。

#include

#defineBLKN2

#defineTOTAL4

#defineCONIOP1

sbitkey1=P2^7;

sbitkey2=P2^6;

sbitG=P1^7;

sbitCLK=P1^6;

sbitSCLR=P1^5;

unsignedcharidatadispram[(BLKN/2)*32]={0};

unsignedcharcodeBmp[4][32]={

{

0xEF,0xFF,0xEF,0x03,0x81,0xBB,0xDD,0xBB,0xDD,0xD7,0xEB,0xEF,0xF3,0xD7,0xCD,0xB9,

0x3E,0xFF,0xC0,0x07,0xFE,0xF7,0xFD,0xF7,0xFD,0xF7,0xFB,0xF7,0xF7,0xD7,0xEF,0xEF},

{

0xFE,0xFF,0xFE,0xFF,0xFE,0xFF,0xFE,0xFF,0x80,0x03,0xFE,0xFB,0xFE,0xFB,0xFE,0xFB,

0xFE,0xFB,0xFD,0xFB,0xFD,0xFB,0xFB,0xFB,0xFB,0xFB,0xF7,0xFB,0xEF,0xD7,0xDF,0xEF},

{

0xFE,0xF7,0xEF,0x73,0xF3,0x37,0xF7,0x6F,0x80,0x01,0xBF,0xFB,0x70,0x17,0xFF,0xBF,

0xFF,0x7F,0x80,0x01,0xFF,0x7F,0xFF,0x7F,0xFF,0x7F,0xFF,0x7F,0xFD,0x7F,0xFE,0xFF},

{

0xFF,0xFF,0xC0,0x03,0xFF,0xFB,0xF7,0xFB,0xFB,0xFB,0xFC,0xFB,0xFE,0xEB,0xFF,0x9B,

0xFE,0x7B,0xF9,0xFB,0xC7,0xFB,0xEF,0xFB,0xFF,0xFB,0xFF,0xDB,0xFF,0xEA,0xFF,0xF6},

};

voiddelay(unsignedintdt)

{

registerunsignedcharbt;

for(;dt;dt--)

for(bt=0;bt<255;bt++);

}

voidstyle1()

{

registerunsignedcharw,i,q;

delay(1000);

for(w=0;w

{

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

{

for(q=0;q

if(key2==0)delay(20);if(key2==0)while

(1){if(key2==1)break;};

if(i%2)delay(120);}

delay(1000);}

}

voidstyle2()

{

registerunsignedchari,j,k,l,q;

delay(1000);

for(i=0;i

{

for(j=2;j>0;j--)

{

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

{

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

{

for(q=0;q

{dispram[l*2+1+q*32]=dispram[l*2+1+q*32]>>1|dispram[l*2+q*32]<<7;

if(q==0)dispram[l*2+q*32]=dispram[l*2+q*32]>>1|Bmp[i][l*2+j-1]<<(7-k);

elsedispram[l*2+q*32]=dispram[l*2+q*32]>>1|dispram[l*2+1+(q-1)*32]<<7;

if(key2==0)delay(20);if(key2==0)while

(1){if(key2==1)break;}}

}

delay(100);

}

}

}

delay(1000);

}

voidmain(void)

{

SCON=0x00;

TMOD=0x01;

TR0=1;

CONIO=0x2f;

IE=0x82;

while

(1){

key1=1;

if(key1==0)delay(20);if(key1==0)

while

(1)

{style1();if(key1==1)break;}

if(key1==1)delay(20);if(key1==1)

while

(1)

{style2();if(key1==0)break;}}

}

voidleddisplay(void)interrupt1using1

{

registerunsignedcharm,z=BLKN;

TH0=0xFc;

TL0=0x18;

m=~m;

m=CONIO;

m=++m&0x0f;

do{

z--;

SBUF=dispram[m*2+(z/2)*30+z];

while(!

TI);TI=0;

}while(z);

G=1;

CONIO&=0xf0;

CLK=1;

CONIO|=m;

CLK=0;

G=0;

}

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

当前位置:首页 > 医药卫生

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

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