LED点阵模块控制器.docx

上传人:b****5 文档编号:7423605 上传时间:2023-01-23 格式:DOCX 页数:42 大小:392.46KB
下载 相关 举报
LED点阵模块控制器.docx_第1页
第1页 / 共42页
LED点阵模块控制器.docx_第2页
第2页 / 共42页
LED点阵模块控制器.docx_第3页
第3页 / 共42页
LED点阵模块控制器.docx_第4页
第4页 / 共42页
LED点阵模块控制器.docx_第5页
第5页 / 共42页
点击查看更多>>
下载资源
资源描述

LED点阵模块控制器.docx

《LED点阵模块控制器.docx》由会员分享,可在线阅读,更多相关《LED点阵模块控制器.docx(42页珍藏版)》请在冰豆网上搜索。

LED点阵模块控制器.docx

LED点阵模块控制器

编号:

引言……………………………………………………………………1

1系统的设计与分析………………………………………………2

1.1LED点阵控制原理………………………………………………………………3

1.1.1LED简介……………………………………………………………………3

1.1.2LED点阵……………………………………………………………………4

1.1.3显示原理……………………………………………………………………5

1.1.4显示屏的原理图及结构……………………………………………………6

1.2单片机小系统…………………………………………………………………8

1.2.151系列单片机的概述………………………………………………………8

1.2.2单片机的组成………………………………………………………………8

2程序设计………………………………………………………10

2.1系统程序的框架………………………………………………………………10

2.1.1串口通讯协议………………………………………………………………10

2.1.2显示处理效果函数…………………………………………………………10

2.1.3显示函数……………………………………………………………………10

2.2程序流程图……………………………………………………………………9

3总结………………………………………………………………11

谢辞…………………………………………………………………13

参考文献……………………………………………………………14

附录(所有的源程序)………………………………………………15

 

LED点阵模块控制器

 

摘要

LED是发光二极管LightEmittingDiode的英文缩写,是一种能够将电能转化为可见光的半导体。

LED点阵是由发光二极管排列组成的显示器件,在我们日常生活的电器中随处可见,极为普通也广为人知。

特别是它的发光类型属于冷光源,效率及发热量是普通发光器件难以比拟的,它采用低电压扫描驱动,具有:

耗电少、使用寿命长、成本低、亮度高、故障少、视角大、可视距离远、规格品、可靠耐用、应用灵活、安全、响应时间短、绿色环保、控制灵活种等特点。

目前LED显示屏作为新一代的信息传播媒体,已经成为城市信息现代化建设的标志。

随着社会经济的不断进步,以及LED显示技术的不断完善,人们对LED显示屏的认识将越来越深入,其应用领域将会越来越广。

本文设计一个16*64点阵模块控制器,根据标准的08控制接口要求,可以驱动市面上常见的16扫单色显示屏,显示汉字、英文、阿拉伯数字及其他信息等。

整个系统提供很宽的外部扩展,包括时钟、温湿度、亮度等常规点阵控制器的模块。

关键词:

LED点阵控制器;89S52;16扫;08接口

 

Abstract

LEDLightEmittingDiodeLightEmittingDiodeistheEnglishabbreviationisanelectricalenergyintovisiblelightcanbeasemiconductor.LEDdotmatrixiscomposedoflight-emittingdiodearraydisplaydevices,theappliancesinourdailylifeeverywhere,itiscommonarealsowellknown.Inparticular,itbelongstothetypeoflight-emittingcoldlightsource,efficiency,andheatanordinarylight-emittingdevicesisdifficulttomatch,ituseslow-voltagescandriverwith:

lowpowerconsumption,longlife,lowcost,highbrightness,faultlesslargeangle,visualdistancespecificationproducts,reliableanddurable,applicationflexibility,security,responsetimeisshort,greenenvironmentalprotection,controlandflexiblekindsofcharacteristics.PresentLEDdisplayasanewgenerationofinformationandcommunicationmedia,hasbecomeasymbolofthemodernizationofcityinformation.Associalandeconomicadvances,aswellasLEDdisplaytechnologycontinuestoimprove,people'sunderstandingoftheLEDdisplaywillbemorein-depth,itsapplicationswillbecomemorewidely.

Thisdesignofa16*64DotMatrixmodulecontroller,accordingtothestandardcontrolinterfaceofthe08requirementsofthecommonmarketcandrive16scanmonochromedisplay,displayChinesecharacters,English,Arabic,andotherinformation.Throughoutthesystemprovidesawideexternalexpansion,includingclock,temperatureandhumidity,brightnessandotherconventionaldotmatrixcontrollermodule.

Keywords:

LEDdotmatrixcontroller;89S52;16sweep;08Interface

 

引言

自20世纪80年代后期开始,随着LED制造技术的不断完善,在国外得到了广泛的应用。

在我国改革开放之后,提别是进入90年代国民经济的高速增长,对公众场合发布信息的需求日益强烈。

而LED显示屏作为信息传播的一种重要手段,已经成为城市信息现代化建设的标志,LED显示屏随着社会经济的不断进步,以及LED制造技术的完善,人们对LED显示屏的认识将会越来越深入,其应用领域将会越来越广;LED显示屏经多年的开发、研制、生产,其技术目前已经成熟。

现在各种广告牌不再是白底黑字了,也不再是单一的非电产品,而是用上了丰富多彩的LED电子产品,为城市的增添了一道靓丽的风景。

而且它采用低电压扫描驱动,具有耗电少、使用寿命长、成本低、发光效率高、故障少、视角大、可视距离远、可靠耐用、组态灵活、安全、响应时间短、绿色环保、控制灵活、色彩丰富以及对室内外环境适应能力强等特点。

近年来LED显示屏市场得到了迅猛的发展,已经广泛应用到银行、邮电、税务、机场、车站、证券市场及其它交易市场、医院、电力、海关、体育场等需要进行多种公告、宣传的场合。

因此,学习LED系统原理与工程技术很有必要。

通过设计一个可显示文字与图形的16*64点阵控制器来学习和熟悉LED的使用。

1系统的设计与分析

本文是通过设计一个可显示文字与图形的16*64点阵控制器电路来学习和熟悉LED的使用,LED点阵控制器分为五个模块,系统框图(如图1),一是参数输入部分,例如温度、湿度、亮度等;二是字库部分,如16点阵、24点阵或者32点;三是单片机控制部份;四是接口部分(如图2),一般采用08接口,如果需要不同的接口类型,可以根据08接口为基础进行转接,这也是本系统采用08接口的原因之一;五是串口通讯部分(图3),其中亮度、温度、时钟模块由于时间的原因没有完善,等待扩展。

图1系统框图

图2标准08接口部分

图3串口通讯部分

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.1.4显示屏的原理图及结构

图6行扫描部分

图7列扫描部分

根据显示屏的原理图结构,分析LED点阵控制器的控制原理:

如显示10个汉字,先将这10个汉字的点阵从字库中读出,放到显示缓存,如果要实现左移或者其它的显示效果则将显示缓存中的每个位进行移位或者其它处理,然后再调用扫描显示函数就可以实现所规定的效果。

扫描显示函数是显示缓存的内容,如果要实现不同的内容,比如说图片、汉字、英文等内容,只需要将这些内容按扫描显示函数对显示缓存的协议要求就可以显示出来。

由于显示屏中采用74HC595移位缓存器,所以需要做74HC595的驱动,这个相对简单,只要将数据按位传输,一位送一个时钟,送完一行所有的数据送一个锁存时钟,再通过74HC138选通该行,这样一直循环,人眼就会看到一幅完整的内容。

对于显示屏来说,显示使能端是比较重要的,主要是因为送完一行后需要一个消隐的动作,所谓的消隐就是让显示屏黑屏一段时间,如果不做该动作,则在显示的过程中会有拖影的现象。

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是89S52的内部结构图,由图可以看到在单片机内部除了有CPU、RAM、ROM和定时器、串行口等主要功能部件之外,还有驱动器、锁存器、指令寄存器、地址寄存器等辅助电路部分,以及各功能模块在单片机中的位置和相互关系。

图1089S52的内部结构

2程序设计

2.1程序的思路

根据点阵的显示原理就可以编写出显示函数,整个程序的设计分为串口通讯协议、扫描程序函数、效果处理函数。

2.1.1串口通讯协议

#p:

为显示图片

#c:

为显示汉字

#l:

为显示英文

#n:

为显示数字

所有的控制命令必须以回车结束,指令接收并解码正确则返回“ReceiveOK”,否则返回“error”

2.1.2显示处理效果函数

本系统只做了两个显示效果,一个是闪烁,一个是左移。

闪烁相对简单,先显示延时,清屏延时,再显示。

左移则相对复杂,需要将显示缓存的内容全部左移一点,左移的时候取前一个字节的低位等于后一个字节的低位,一屏移完一点后送显示,再移一点,这样循环就可以实现了左移的效果。

2.1.3显示函数

这个函数是将显示缓存的内容送到显示屏,做一个74HC595的驱动即可,送完一行数据后点亮,再送下一行,这样循环16次,就可以扫描完16行高的显示屏。

2.2程序流程图

主要程序见附录。

 

3总结

通过这次实训,真正地做了一个点阵控制器,能显示汉字、图片、英文、数字,虽然之前有接触过LED点阵,但是一直是在门外看,没有真正深入进去实际操作,只是对显示原理有个大概的了解;本来计划将时钟、亮度、温度加入到整个系统中来,这样就更加接近实际应用,但是由于时间的关系,只做了串口通讯部分进去,而且功能也较为简单。

在调试串口通讯花的时候是最多的,主要是因为串口通讯芯片与单片机的连接错误,导致无法通讯。

在整个实训过程中,真正能学到东西的是调试,虽然我们平常使用的Proteus仿真软件也与实际差距越来越小,但是理论与实际的还是有相当的不同,最关键的是发现问题,并解决问题,这样会对以后的学习中都有较大的帮助。

除此之外,在实训的过程中与其它同学之间互相沟通与交流,通过学习其它的设计思路,发现其优点及缺点,然后一起讨论,这有利于提高我们的综合能力,为以后走上好的工作岗位打下坚实的基础。

 

谢辞

实训临近结束了,在此过程中很多同学和老师都在耐心的帮助我。

衷心感谢老师的悉心指导和同学们的热情帮助,在我实训完成过程中,老师同学提供了许多宝贵意见,让我学到了许多知识,开阔了眼界,增强了我的动手和动脑能力。

同时,感激06级师兄的帮助,有了他们耐心的指导我做板,我才能在规定的时间完成这次实训,并从中学到了更多的知识。

我水平有限,所以这次设计还存在着许多不尽如人意的地方,欢迎老师和同学批评指正。

此外,还要感谢我们学院为我们提供这个机会和必要物质支持。

 

参考文献

[1]陈孟建等编著.C语言程序设计.电子工业出版社,2006.6:

19~36,171~182.

[2]郭勇编著.Protel99SE印制电路板设计教程.机械工业出版社,2005.1:

5~150

[3]徐爱钧,彭秀华编著.单片机高级语言c51windows环境编程与应用.电子工业出版社,2001.7:

1~112,

 

附录

具体程序如下:

串口通讯部分:

/***********************************************

函数名称:

Interrupt_serial()

传入参数:

函数功能:

串口通讯协议

************************************************/

voidInterrupt_serial()interrupt4using1

{

EA=0;

if(RI)

{

Serial_Int_temp[Receiv_Count]=SBUF;//

Receiv_Count++;

if(Receiv_Count>=4)

{

if(Serial_Int_temp[Receiv_Count-2]==0x0d&&Serial_Int_temp[Receiv_Count-1]==0x0a)//以回车结尾

{

Send_char(&Serial_Int_temp[0],Receiv_Count);

if(Serial_Int_temp[0]=='#')//指令格式

{

switch(Serial_Int_temp[1])

{

case'p':

Send_char(&Serial_Recei_OK[0],10);//命令正确,反馈接收成功信息

break;

case'n':

Send_char(&Serial_Recei_OK[0],10);//命令正确,反馈接收成功信息

break;

case'l':

Send_char(&Serial_Recei_OK[0],10);//命令正确,反馈接收成功信息

break;

case'c':

Send_char(&Serial_Recei_OK[0],10);//命令正确,反馈接收成功信息

break;

default:

Send_char(&Serial_Error[0],7);//指令错误

break;

}

scan_mod=Serial_Int_temp[1];//显示内容

cldispb();//清缓存

}

else{Send_char(&Serial_Error[0],7);}//指令错误

}

else

{

Send_char(&Serial_Error[0],7);//指令错误

}

Receiv_Count=0;//接收数据字节计数器

}

if(Receiv_Count>=39)Receiv_Count=0;

}

RI=0;//清接收标志

EA=1;//开中断

}

/***********************************************

函数名称:

display1p()

传入参数:

函数功能:

扫描显示屏

************************************************/

voiddisplay1p()

{

uchartemp,j,k,i;

unsignedchar*point,*point1;

ucharhangxu=1;

point1=&disp_buf[0];

point=point1;

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

{

for(k=0;k

{

temp=*point;

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

{

CLK=0;

R1=1;

if((temp&0x80)==0x00)

{

R1=0;

}

CLK=1;

temp<<=1;

}

point++;

}

OE=0;

STR=0;

STR=1;

STR=0;

Showline(j);

OE=1;

ddlay(9);

OE=0;

point=point1+plong*(j);

}

}

/***********************************************

函数名称:

moveleft(unsignedcharsspp)

传入参数:

unsignedcharsspp移动速度

函数功能:

左移显示效果

************************************************/

voidmoveleft(unsignedcharsspp)

{

uchari,j,k;

switch(scan_temp)

{

case'p':

photo_todisp();

break;

case'l':

letter_todisp();

break;

case'n':

num_todisp();

break;

case'c':

dztodisp();

break;

default:

dzt

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

当前位置:首页 > 小学教育 > 其它课程

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1