LED点阵显示屏文档格式.docx
《LED点阵显示屏文档格式.docx》由会员分享,可在线阅读,更多相关《LED点阵显示屏文档格式.docx(9页珍藏版)》请在冰豆网上搜索。
![LED点阵显示屏文档格式.docx](https://file1.bdocx.com/fileroot1/2022-12/7/4b1a837a-4210-49e4-952b-ad5d3da43eb4/4b1a837a-4210-49e4-952b-ad5d3da43eb41.gif)
1.2.2…………………………………………………………………………单片机的组成
2………………………………………………………………其他芯片介绍
3……………………………………………………………………程序设计
附录(所有的源程序)
摘要
LED是发光二极管LightEmittingDiode的英文缩写,是一种能够将电能转化为可见光的半导体。
LED点阵是由发光二极管排列组成的显示器件,在我们日常生活的电器中随处可见,极为普通也广为人知。
特别是它的发光类型属于冷光源,效率及发热量是普通发光器件难以比拟的,它采用低电压扫描驱动,具有:
耗电少、使用寿命长、成本低、亮度高、故障少、视角大、可视距离远、规格品、可靠耐用、应用灵活、安全、响应时间短、绿色环保、控制灵活种等特点。
目前LED显示屏作为新一代的信息传播媒体,已经成为城市信息现代化建设的标志。
随着社会经济的不断进步,以及LED显示技术的不断完善,人们对LED显示屏的认识将越来越深入,其应用领域将会越来越广。
1.1LED点阵控制原理
显示屏是由发光二极管行列组成的LED点阵模块组成显示屏体。
1.1.1LED简介
LED是发光二极管英文LightEmittingDiode的缩写格式,LED器件种类繁多,早期的LED产品是单个发光管,随着数字化设备的出现,LED数码管和字符管得到了广泛的应用,LED点阵等显示器件的出现,适应了信息化社会发展的需要,成为了大众传媒的重要工具。
LED发光灯按类型可以分为单色发光灯、双色发光灯、三色发光灯、面发光灯、闪烁发光灯、电压型发光灯等;
按发光强度可分为普通亮度发光灯、高亮度发光灯、超高亮度发光灯等;
LED发光灯结构如图2所示,它由芯片3、阳极引脚1、阴极引脚2和环氧树脂封装外壳四部分组成。
它核心部分是具有复合发光功能的PN结,即芯片3。
环氧树脂封装外壳具有保护芯片的作用,还有透光聚光的能力,以增强显示效果。
图4
1.1.2LED点阵
随着LED应用领域的扩大,要求生产更为直接和方便的LED显示器件。
因而出现了数码管、字符管、电平管、LED点阵等多种LED显示器。
不管显示器的结构怎么变,它的核心部件仍然是发光半导体芯片。
例如一个8*8的点阵是由64个发光二极管按一个规律组成的,如图3。
图5
如图3所示的发光二极管,行接低电平,列接高电平,发光二极管导通发光。
1.1.3显示原理
人眼的亮度感觉不会因光源的消失而立即消失,要有一个延迟时间,这就是视觉的惰性。
视觉惰性可以理解为光线对人眼视觉的作用、传输、处理等过程都需要时间,因而使视觉具有一定的低通性。
实验表明,当外界光源突然消失时,人眼的亮度感觉是按指数规律逐渐减小的。
这样当一个光源反复通断,在通断频率较低时,人眼可以发现亮度的变化;
而通断频率增高时,视觉就逐渐不能发现相应的亮度变化了。
不致于引起闪烁感觉的最低反复通断频率称为临界闪烁频率。
通过实验证明临界闪烁频率大约为24Hz。
因此采用每秒24幅画面的电影,在人看起来就是连续活动的图象了。
同样的原理,日光灯每秒通断50次,而人看起来却是一直亮的。
由于视觉具有惰性,人们在观察高于临界闪烁频率的反复通断的光线时,所得到的主观亮度感受实际上是客观亮度的平均值。
视觉惰性可以说是LED显示屏得以广泛应用的生理基础。
首先,在LED显示屏中可以利用视觉惰性,改善驱动电路的设计,形成了目前广为采用的扫描驱动方式。
扫描驱动方式的优点在于LED显示屏不必对每个发光灯提供单独的驱动电路,而是若干个发光灯为一组共用一个驱动电路,通过扫描的方法,使各组发光灯依次点燃,只要扫描频率高于临界闪烁频率,人眼看起来各组灯都在发光。
由于LED显示屏所使用的发光灯数量很大,一般在几千只到几十万只的范围,所以节约驱动电路的效益是十分可观的。
1.3单片机小系统
1.3.151系列单片机的概述
单片机也被称作“单片机微型计算机”、“微控制器”、“嵌入式微控制器”,国际上采用“MCU”(MicroControllerUnit)称呼单片机。
如果将8位单片机的推出作为起点(1976年),那么单片机的发展的历史大致可以分为4个阶段。
第一阶段是单片机探索阶段,主要探索如何把计算机的主要部件集成在单芯上;
第二阶段是单片机完善阶段,完善了8位单片机的并行总线结构、外围功能单元由CPU集中管理模式、体现控制特性的位地址空间和位操作方式、指令系统趋于丰富和完善,并且增加了许多突出控制功能的指令;
第三阶段是向微控制器发展的阶段,说的是在51系列的基本结构的基础上,加强了外围电路的功能,突出了单片机的控制功能,将一些用测控对象的模数转换器、数模转换器、程序运行监视器、脉宽调制器等纳入芯片中,体现单片机的微控制器特征;
第四阶段是单片机的全面发展阶段,很多大半导体和电气厂商都开始加入单片机的研制和生产,单片机世界出现了百花齐放,欣欣向荣的景象。
随着单片机在各个领域全面深入地发展和应用,出现了高速、大寻址范围、强运算能力的8位、16位、32位通用型单片机,以及小型谦价的专用型单片机。
目前,单片机正朝着高性能和多品种方向发展,今后单片机的发展趋势将是进一步向着CMOS化、低功耗、小体积、大容量、高性能、低价格和外围电路内装等方面发展。
1.3.2单片机的组成
图7是单片机典型组成框图,由图可见它通过内部总线把计算机的各主要部件连为一体,其内部总线包括地址总线、数据总线和控制总线。
其中,地址总线的作用是为进行数据交换时提供地址,CPU通过将地址输出到存储器或I/O接口;
数据总线用于在CPU与存储器或I/O接口之间或存储器与外设之间交换数据;
控制总路线包括CPU发出的控制信号线和外部送入CPU的应答线等。
图8单片机结构框图
51系列有3种封装形式,一种是DIP(DualInlinePackage)封装形式,一种是LCC(QuadFlatPackage)封装形式。
这种形式是具有44个“J”形脚的方型芯片。
另一种是QFP(QuadFlatPackage)封装形式,这种形式是具有44个“J”形脚的方型芯片,但它的体积更小、更薄,是一种表面贴焊的封装形式。
下面介绍下89S52单片机的引脚的功能和其内部结构图。
AT89S52单片机实际有郊的引脚为40个,以下是89S52单片机的DIP封装形式的引脚的名称,如图8。
图9单片机的引脚说明
图9是89c51的内部结构图,由图可以看到在单片机内部除了有CPU、RAM、ROM和定时器、串行口等主要功能部件之外,还有驱动器、锁存器、指令寄存器、地址寄存器等辅助电路部分,以及各功能模块在单片机中的位置和相互关系。
图1089C51的内部结构
2其他芯片
74HC573是低功耗的肖特基TTL8D
锁存器,内有8个相同的D型(三态相同
)锁存器,由两个控制端(11脚G或EN;
一脚OUT,CONT,OE)控制。
当OE接地时,
若G为高电平,74HC373接收由PPU输出的地址
信号;
如果G为低电平,则将地址信号所存。
工作原理:
74HC373的输出端00-07可直接与总线相连。
当三态允许控制端
OE为低电平时,00-07为正常逻辑状态,可用来驱动负载或总线。
当OE
为高电平时,00-07呈高阻态,即不驱动总线,也不为总线的负载,但锁存
器内部的逻辑操作不受影响。
当锁存允许端LE为高电平时,Q随数据D而变
。
当LE为低电平时,Q被锁存在已建立的数据电平。
74HC373引脚即外观
如上图。
译码器是组合逻辑电路的一个重要器件,
74LS138的输出时低电平有效,故实现逻辑
功能时,输出端不可接或门及非门,74LS138与
前面不同,其有使能端,故使能端必须加以处理,
否则无法实现需要的逻辑功能。
发光二极管点亮
只须使其正向导通即可,根据LED的公共极是阳极
还是阴极分为两类译码器,即针对共阳极的低电平
有效的译码器;
针对公共阴极LED的高电平输出有
效的译码器。
仿真电路:
实验程序:
#include<
reg52.h>
#defineuintunsignedint
#defineucharunsignedchar
sbitA=P3^0;
sbitB1=P3^1;
sbitC=P3^2;
sbitD=P3^3;
ucharHS[][8]={0x00,0x00,0x00,0x55,0xaa,0x00,0x00,0x00,
0xFF,0x81,0xA5,0xA5,0xFF,0x24,0x24,0xFF,
0x00,0x00,0x00,0x55,0xaa,0x00,0x00,0x00,
0x67,0x94,0x15,0x16,0x34,0x57,0x94,0x14,
0xC7,0x21,0x11,0xFF,0x11,0xFF,0x81,0xFF,
0x81,0x42,0x24,0x14,0x08,0xFF,0x08,0x08,
};
uintSS=0;
uintx=-1;
uinty=0;
voidma38(void)
{
if(x==15)x=0;
elsex++;
D=x/8;
A=(x%8)/4;
B1=(x%4)/2;
C=x%2;
}
voidmain()
uinti1=0,j=0;
uinta,i2=1;
uinth=1;
uintf;
while
(1)
{
h++;
if(h==9)
{
i1++;
i2++;
if(i1==8)i1=0;
if(i2==8)i2=0;
h=1;
}
for(a=40;
a;
a--)
for(j=0;
j<
8;
j++)
{
P1=0x00;
ma38();
SS=HS[i1][j]>
>
h|HS[i2][j]<
<
(8-h);
P1=SS;
for(f=100;
f;
f--);
}
}