LED点阵显示屏实验评测报告.docx

上传人:b****6 文档编号:13864308 上传时间:2023-06-18 格式:DOCX 页数:12 大小:311.06KB
下载 相关 举报
LED点阵显示屏实验评测报告.docx_第1页
第1页 / 共12页
LED点阵显示屏实验评测报告.docx_第2页
第2页 / 共12页
LED点阵显示屏实验评测报告.docx_第3页
第3页 / 共12页
LED点阵显示屏实验评测报告.docx_第4页
第4页 / 共12页
LED点阵显示屏实验评测报告.docx_第5页
第5页 / 共12页
LED点阵显示屏实验评测报告.docx_第6页
第6页 / 共12页
LED点阵显示屏实验评测报告.docx_第7页
第7页 / 共12页
LED点阵显示屏实验评测报告.docx_第8页
第8页 / 共12页
LED点阵显示屏实验评测报告.docx_第9页
第9页 / 共12页
LED点阵显示屏实验评测报告.docx_第10页
第10页 / 共12页
LED点阵显示屏实验评测报告.docx_第11页
第11页 / 共12页
LED点阵显示屏实验评测报告.docx_第12页
第12页 / 共12页
亲,该文档总共12页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

LED点阵显示屏实验评测报告.docx

《LED点阵显示屏实验评测报告.docx》由会员分享,可在线阅读,更多相关《LED点阵显示屏实验评测报告.docx(12页珍藏版)》请在冰点文库上搜索。

LED点阵显示屏实验评测报告.docx

LED点阵显示屏实验评测报告

16

16点阵LED电子显示屏的设计

摘要:

文章介绍了基于单片机AT89C51的16

16点阵LED电子显示屏的设计。

分别阐述了显示屏显示的基本原理,硬件设计、控制方法及其程序的实现。

经过调试和分析,设计的结果能够实现对汉字的静态和动态显示,动态显示的内容有多种方式,同时又可通过上位机更新显示的内容。

关键字:

AT89C51;16

16点阵;LED;显示屏

一绪论

LED显示屏是利用发光二极管点阵模块或像素单元组成的平面式显示屏幕。

它具有发光效率高、使用寿命长、组态灵活、色彩丰富以及对室内外环境适应能力强等优点。

并广泛的应用于公交汽车,码头,商店,学校和银行等公共场合的信息发布和广告宣传。

LED显示屏经历了从单色,双色图文显示屏到现在的全彩色视频显示屏的发展过程,自20世纪八十年代开始,LED显示屏的应用领域已经遍布交通、电信、教育、证券、广告宣传等各方面。

b5E2RGbCAP

1LED点阵显示屏概述

LED点阵显示屏的构成型式有多种,其中典型的有两种。

一种把所需展示的广告信息烧写固化到EPROM芯片内,能进行固定内容的多幅汉字显示,称为单显示型;另一种在机内设置了字库、程序库,具有程序编制能力,能进行内容可变的多幅汉字显示,称可编程序型。

p1EanqFDPw

目前,国内的LED点阵显示屏大部分是单显示型,其显示的内容相对较少,显示花样较单一。

一般在产品出厂时,显示内容就已写入显示屏控制系统中的EPROM芯片内,当需要更换显示内容时就非常困难,这样使该类型的显示屏使用范围受到了限制。

国内的另一种LED显示屏——可编程序型LED显示屏,虽然增加了显示屏系统的编程能力,显示内容和显示花样都有所增加,但也存在着更换显示内容不便的缺点。

随着社会经济的迅速发展,如今的广告牌都存在着显示内容丰富、信息量大、信息更换速度快等特点。

因此传统的LED显示屏控制系统已经越来越不能满足现代广告宣传业的需要。

而利用PC机通信技术控制LED显示屏,则具有显示内容丰富,信息更换灵活等优点。

DXDiTa9E3d

2LED显示屏控制技术状况

显示屏的控制系统包括输入接口电路、信号控制、转换和数字化处理电路及输出接口电路等,涉及的具体技术很多,其关键技术包括串行传输与并行传输技术、动态扫描与静态锁存技术、自动检测及远程控制技术等。

RTCrpUDGiT

二系统总体设计方案

1硬件框图

汉字点阵的控制电路采用C51系列单片机,硬件电路可分为单片机控制器、LED显示屏行列驱动电路、LED点阵显示屏三部分,如下图所示。

5PCzVD7HxA

jLBHrnAILg

系统设计硬件框图

 

2基本原理

点阵LED扫描法介绍

点阵LED一般采用扫描式显示,实际运用分为三种方式:

<1)点扫描

<2)行扫描

<3)列扫描

若使用第一种方式,其扫描频率必须大于16×64=1024Hz,周期小于1ms即可。

若使用第二和第三种方式,则频率必须大于16×8=128Hz,周期小于7.8ms即可符合视觉暂留要求。

此外一次驱动一列或一行<8颗LED)时需外加驱动电路提高电流,否则LED亮度会不足。

xHAQX74J0X

汉字的存储

用动态分时扫描技术使LED点阵模块显示图像,需要进行两步工作。

第一步是获得数据并保存,即在存贮器中建立汉字数据库。

第二步是在扫描模块的控制下,配合行扫描的次序正确地输出这些数据。

获得图像数据的步骤是,先将要显示的每一幅图像画在一个如图所示的被分成16×16共256个小方格的矩形框中,这样就形成了与这个汉字所对应的二进制数据在该矩形框上的分布,再将此分布关系以32×16的数据结构组成64个字节的数据,并保存在只读存贮器ROM中。

以这种方式将若干个汉字的数据贮存在存贮器内,就完成了图像数据库的建立工作。

LDAYtRyKfE

然后,依次对多汉字抽取像素信息,并按序排队存放起来,便可得到一个待显示数据序列。

将这个序列存到ROM中进一步通过寻址的方法来控制该数据序列的释放过程,就可实现在LED发光二极管点阵上显示多汉字信息的目的。

Zzz6ZB2Ltk

第二步工作的步骤是:

先在扫描模块的控制下,由地址线确定每次由ROM送出某一列的16个LED所要显示的汉字的控制字节数据,同时由扫描模块输出的5位扫描码经两个4-16译码器解码后决定相应的某一列可以被点亮,而另外31列都不能被点亮。

该状态持续约0.4毫秒后,就接着进行下一行的扫描。

当完成了一次32行的扫描后,也就完成了一帧画面的显示。

重复上述过程不断修改ROM的地址区间的起始地址,转向下一幅画面的数据传送和显示。

如此进行,就可以在LED点阵模块上显示ROM中存储的汉字。

dvzfvkwMI1

 

三硬件系统设计

1硬件原理图

利用Proteus仿真软件制作出详细的硬件原理图如下:

 

硬件原理图

 

2元器件的选择

元件编号

规格参数

LED

16x16点阵

PCB板

10cm*10cm环氧板

U1~U6

74HC595

U7

AT89C51

U8

74HC154

R1

2K欧姆

C1、C2

33pF

C3

10uF

3芯片简介

(1>AT89C51

AT89C51是一种带4K字节FLASH存储器

AT89C2051是一种带2K字节闪存可编程可擦除只读存储器的单片机。

单片机的可擦除只读存储器可以反复擦除1000次。

该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。

由于将多功能8位CPU和闪速存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,AT89C2051是它的一种精简版本。

AT89C51单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。

rqyn14ZNXI

时钟电路由AT89C51的18,19脚的时钟端(XTAL1及XTAL2>以及12 MHz晶振X1、电容C2,C3组成,采用片内振荡方式。

复位电路采用简易的上电复位电路,主要由电阻R1,R2,电容C1,开关K1组成,分别接至AT89C51的RST复位输入端。

EmxvxOtOco

外形及引脚排列如图所示

SixE2yXPq5

AT89C51外形及引脚排列

(2>74HC154

74HC154是一款高速CMOS器件,74HC154引脚兼容低功耗肖特基TTL

74HC154译码器可接受4位高有效二进制地址输入,并提供16个互斥的低有效输出。

74HC154的两个输入使能门电路可用于译码器选通,以消除输出端上的通常译码“假信号”,也可用于译码器扩展。

该使能门电路包含两个“逻辑与”输入,必须置为低以便使能输出端。

任选一个使能输入端作为数据输入,74HC154可充当一个1-16的多路分配器。

当其余的使能输入端置低时,地址输出将会跟随应用的状态。

6ewMyirQFL

(3>74HC595

74HC595是硅结构的CMOS器件,兼容低电压TTL电路,遵守JEDEC标准。

74HC595是具有8位移位存储器和一个存储器,三态输出功能。

移位寄存器和存储器是分别的时钟。

数据在SHCP<移位寄存器时钟输入)的上升沿输入到移位寄存器中,在STCP<存储器时钟输入)的上升沿输入到存储寄存器中去。

如果两个时钟连在一起,则移位寄存器总是比存储寄存器早一个脉冲。

移位寄存器有一个串行移位输入

其特点:

1.是8位串行输入/8位串行或并行输出存储状态寄存器,三种状态。

2.输出寄存器<三态输出:

就是具有高电平、低电平和高阻抗三种输出状态的门电路。

)可以直接清除100MHz的移位频率kavU42VRUs

 

四系统软件设计

1编程思路

根据以上硬件电路和单片机控制原理,编程思路为:

a先对相关变量进行初始化。

b调用显示程序

c装载三个汉字的第一行数据,并显示出来。

d依次显示三个汉字的第二行至第十六行。

e结束

 

2流程图:

 

y6v3ALoS89

3系统的仿真调试

1)将上述程序原代码用Keil软件编译产生一个“.hex”为后缀的用于烧写芯片的文件。

2)把生成的hex文件添加到硬件电路图中的单片机驱动程序中。

3)在ISIS电路图中点击左下角的运行按钮,则可在LED显示点阵中看到图结果。

 

五设计总结

本次课程设计的制作使我对Proteus、Keiluvision2等软件的认识有了进一步的加深,对它们的使用能力也得到了进一步的加强。

同时也加深对单片机课程的全面掌握和认识,对单片机课程的应用得到了更深的了解。

虽然本设计只使用了一块16×16LED点阵,电路简单,但是已经包涵了LED汉字滚动显示屏的电路基本原理、基本程序和Proteus软件仿真,只要扩展单片机的10接口,并增加一些LED点阵和相关芯片,就能设计出更大面积、更多花样的LED显示屏。

M2ub6vSTnP

在一开始做课程设计的时候由于缺乏经验和资料,没有找准目标,思路和设计都缺乏针对性,在一些小细节上浪费了很多时间。

通过和同学的交流,找准了此次课程设计的重点,在网上有目的的找到了相关的资料,在同学的帮助和自己的努力下完成了最后的课程设计。

虽然还有很多地方需要完善,但通过本次课程设计使我对自己的动手能力更加的有自信,同时也了解到人多力量大的道理,和同学的交流以及上网搜索资料能更快更好的完成任务。

0YujCfmUCw

参考文献:

1)谢龙汉,莫衍,Protues电子电路设计及仿真.电子工业出版社2018.1

2)楼然苗,李光飞.单片机课程设计指导[M].北京:

北京航空航天大学出版社,2007.7.

3)周兴华.单片机智能化产品C语言设计实例详解北京航空航天大学出版社,2005.

4)戴俊峰.嵌入式系统大屏幕LED点阵显示器[J].现代电子技术,2004,27(19>.

5)冯寿鹏.基于嵌入式系统的LED信息显示技术研究[J].现代电子技术,2005(1>.

6)金炯泰,金奎焕.如何使用KEIL8051C编译器[M]北京航空航天大学出版社,2002.

7)杨世品.基于Proteus的单片机出租车计价器的设计.微计算机信息,2007.

 

附录:

#include

#include

unsignedcharcodeFONT16x16[3][32]={

{0x12,0x48,0x12,0x48,0x13,0xC8,0x12,0x48,0x10,0x08,0x10,0x08,0x10,0x28,0x10,0x10,0x08,0x00,0x08,0x04,0x0F,0xFE,0x10,0x08,0x10,0x48,0x33,0xE8,0x52,0x48,0x92,0x48},//何eUts8ZQVRd

{0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x05,0x00,0x02,0x00,0x02,0x00,0x01,0x00,0x7F,0xFE,0x40,0x02,0x80,0x04,0x00,0x00,0xFF,0xFE,0x01,0x00},//宁sQsAEJkW5T

{0x14,0x08,0x25,0x10,0xE4,0xA0,0x24,0x40,0x28,0xA0,0x29,0x10,0x32,0x0E,0x24,0x04,0x00,0x40,0x40,0x40,0x30,0x40,0x17,0xFC,0x04,0x44,0x84,0x48,0x44,0x40,0x0F,0xF8,GMsIasNXkA

}}。

//波

sbitSDI=P2^1。

sbitSRCLK=P2^0。

sbitRCLK=P2^2。

#defineLineCtrlP1

voiddelay(unsignedintus>

{

while(us-->。

}

 

voidSendByte(unsignedchardat>

{

unsignedchari。

for(i=0。

i<8。

i++>

{

SRCLK=0。

if(dat&0x80>

SDI=1。

else

SDI=0。

SRCLK=1。

dat=dat<<1。

}

}

voidDisplay(unsignedchar*dat1,unsignedchar*dat2,unsignedchar*dat3>TIrRGchYzg

{

unsignedchari。

for(i=0。

i<16。

i++>

{

SendByte(dat3[2*i+1]>。

SendByte(dat3[2*i]>。

SendByte(dat2[2*i+1]>。

SendByte(dat2[2*i]>。

SendByte(dat1[2*i+1]>。

SendByte(dat1[2*i]>。

RCLK=0。

_nop_(>。

_nop_(>。

_nop_(>。

_nop_(>。

LineCtrl=i。

RCLK=1。

delay(100>。

}

}

voidmain(void>

{while(1>

Display(FONT16x16[0],FONT16x16[1],FONT16x16[2]>。

}

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

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

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

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