LED点阵显示屏设计Word下载.docx
《LED点阵显示屏设计Word下载.docx》由会员分享,可在线阅读,更多相关《LED点阵显示屏设计Word下载.docx(22页珍藏版)》请在冰豆网上搜索。
其显示和动态效果(主要是显示内容的滚动)的实现主要依靠硬件扫描驱动,该方法虽然比较方便,但显示只能按照预先的设计进行。
而实际上经常会遇到一些特殊要求的动态显示,比如电梯运行中指示箭头的上下移动、某些智能仪表幅值的条形显示、广告中厂家的商标显示等。
这时一般的显示系统就很难达到要求。
另外,由于受到存储器本身的局限,其特殊字符往往难以显示,同时显示内容也不能随意更改。
因此就提出了一种利用PC机和单片机控制的LED显示系统通信方法。
该方法可以对显示内容进行实时控制,从而实现诸如动态显示效果。
同时用户也可以在PC机上进行显示效果的预览,显示内容亦可以即时修改。
同时它具有发光率高、使用寿命长、组态灵活、色彩丰富以及对室内外环境适应能力强等优点。
并广泛的用于公交汽车、商店、体育场馆、车站、学校、银行、高速公路等公共场所的信息发布和广告宣传。
LED显示屏发展较快,本文讲述了基于AT89C51单片机8×
8LED汉字点阵滚动显示的基本原理、硬件组成与设计、程序编写与调试、Proteus软件仿真等基本环节和相关技术。
第一章概述
1.1单片机概述
单片微型计算机(singlechipmicroputer)简称单片机,它是为各类专用控制器而设计的通用或专用微型计算机系统,高密度集成了普通计算机微处理器,一定容量的RAM和ROM以及输入/输出接口,定时器等电路于一块芯片上构成的。
1976年Intel公司推出的MCS—48系列8位单片机,以其体积小,功能全,价格低等特点赢得了广泛的应用。
MCS—48为单片机的发展奠定了基础,成为单片机发展过程中的一个重要阶段。
在MCS—48成功的激励下,许多半导体公司和计算机公司竞相研制和开发自己的单片机系列。
其中包括MOTOROLA,Zilog,Philips,Atmel等公司的产品。
尽管目前单片机品种繁多,但其中最具有典型性的当数Intel公司的MCS—51系列。
MCS—51系列是在MCS—48系列的基础上于80年代发展起来的,虽然它仍然是8位单片机,但其功能较MCS—48有很大的增强。
此外,它还具有品种全,兼容性强,软硬件资源丰富的特点,因此应用较为广泛,成为继MCS—48之后最重要的单片机品种。
直到现在,MCS—51仍不失为一种单片机是主流芯片。
在8位单片机之后,16位的单片机也有很大的发展。
例如,1983年Intel公司的MCS—96系列单片机就是其中的典型代表。
与MCS—51相比,MCS—96不但字长增加了一倍,而且还具有4路或8路的10位的A/D转换功能。
此外,在其他性能方面也有一定的提高。
在单片机的基础上发展起来的嵌入式系统已成功进入商业市场。
嵌入式计算机系统是以应用为中心,以计算机技术为基础,软,硬件可裁减,适应应用系统对功能,可靠性,成本,体积,功耗等严格要求的专用计算机系统。
1981年,ReadySysten开发出世界上第一个商业嵌入式实时内核,这个实时内核包含了许多传统操作系统的特征,包括任务间通信,同步与相互排斥,中断支持,内存管理等功能。
此后一些公司也纷纷推出了自己的嵌入式操作系统,这些嵌入式操作系统都具有嵌入式的典型特点:
它们均采用占先式的调度,响应时间短,任务执行的时间可以确定;
系统内核很小,具有可裁减性。
可扩充性和可移植性,可移植到各种处理器上,较强的实时性和可靠性。
适合嵌入式应用。
如今,实时内核逐渐发展为多任务操作系统,并作为一种软件平台逐步成为目前国际嵌入式系统的主流。
嵌入式系统由软件和硬件两大部分组成。
从硬件方面来讲。
嵌入式系统的核心部件是嵌入式处理器。
据不完全统计,全世界嵌入式处理器的品种数量已经超过1000多种,其中8051体系占大多数。
嵌入式系统的软件一般由嵌入式操作系统和应用软件组成。
操作系统是连接计算机硬件与应用程序的系统程序。
操作系统有两个基本功能:
使计算机硬件便于使用,高效组织和正确使用计算机系统。
如今,嵌入式系统主要应用于工业控制,交通管理,信息家电,家庭智能管理系统,POS网络及电子商务,环境监测,机器人等领域。
1.2单片机特点
1)小巧灵活,成本低,易于产品化。
它能方便的组合成各种智能化的控制设备及各种智能仪器与仪表。
2)面向控制,能针对性的解决从简单到复杂的各类控制任务,因而能获得最佳的价格性能比。
3)抗干扰能力强,适应温度X围宽,在各种恶劣环境下都能可靠性工作,这是其它机种无法比拟的。
4)可以很方便的实现多机和分布控制。
使整个控制系统的效率和可靠性大幅度提高。
单片机具有体积小、功耗低,价格便宜等优点,近年来还还开发了一些以单片机母片为核(如80C51),在片中嵌入更多功能的专用型单片机(或者叫专用微控制器),因此单片机在计算机控制领域中应用越来越广泛。
8051是MCS51系列单片机的一个产品。
MCS51系列单片机是Intel公司推出的通用型单片机,在本设计中我选用的是89S51。
1.3汇编语言及其优点
本设计采用的是汇编语言编程,所以下面我们对汇编语言及其优点做一些简介。
汇编语言(AssemblyLanguage)是面向机器的程序设计语言。
在汇编语句中,用助记符(Memoni)代替操作码,用地址符号(Symbol)或标号(Label)代替地址码。
这样符号代替机器语言的用二进制码,就把机器语言变成了汇编语言。
于是汇编语言亦称为符号语言。
使用汇编语言编写的程序,机器不能直接识别,要由一种程序将汇编语言翻译成机器语言,这种起翻译作用的程序叫汇编程序。
汇编程序是系统软件中语言处理系统软件。
汇编语言把汇编程序翻译成机器语言的过程称为f汇编。
作为最基本的编程语言之一,汇编语言虽然应用的X围不算很广,但重要性却勿庸置疑,因为它能够完成许多其它语言所无法完成的功能。
汇编语言的主要优点有:
1)速度快,可以直接对硬件进行操作(这对诸如图形处理等关键应用是非常重要的)2)能够直接访问与硬件相关的存储器或I/O端口3)能够不受编译器的限制,对生成的二进制代码进行完全的控制4)能够对关键代码进行更准确的控制,避免因线程共同访问或者硬件设备共享引起的死锁5)能够根据特定的应用对代码做最佳的优化,提高运行速度6)能够最大限度地发挥硬件的功能。
1.4LED点阵数码显示屏概述
1.4.1LED的简介
LED是英文lightemittingdiode(发光二极管)的缩写,发光二极管的核心部分是由p型半导体和n型半导体组成的晶片,在p型半导体和n型半导体之间有一个过度层p-n结,注入的少数载流子复合时会把多余的能量以光的形式释放出来,从而把电能直接转换为光能。
LED在我们日常生活的电器中随处可见,极为普通也广为人知。
LED具有效率高、光线质量高、能耗小、寿命长等特点,主要可用于平面显示领域、便携设备显示屏、照明以及红外线LED领域等下游应用产品市场。
与传统的照明工具相比,LED照明产品,尤其是氮化镓基(GaN)白光LED照明光源体积小、重量轻、方向性好并可耐各种恶劣条件,在功耗、寿命以及环保等方面均有不可比拟的优越性。
1.4.2点阵的概述
LED点阵显示器,以发光二极管为像素,它用高亮度发光二极管芯阵列组合后,环氧树脂和塑模封装而成。
具有高亮度、功耗低、引脚少、视角大、寿命长、耐湿、耐冷热、耐腐蚀等特点。
点阵显示器有单色和双色两类,可显示红,黄,绿,橙等。
LED点阵有4×
4、4×
8、5×
7、5×
8、8×
8、16×
16、24×
24、40×
40等多种;
根据像素的数目分为等,双基色、三基色等,根据像素颜色的不同所显示的文字、图象等内容的颜色也不同,单基色点阵只能显示固定色彩如红、绿、黄等单色,双基色和三基色点阵显示内容的颜色由像素内不同颜色发光二极管点亮组合方式决定,如红绿都亮时可显示黄色,如果按照脉冲方式控制二极管的点亮时间,则可实现256或更高级灰度显示,即可实现真彩色显示。
图1--5示出几种LED点阵显示器的内部电路结构和外型规格,其它型号点阵的结构与引脚可试验获得。
LED点阵显示器单块使用时,既可代替数码管显示数字,也可显示各种中西文字及符号.如5x7点阵显示器用于显示西文字母.5×
8点阵显示器用于显示中西文,8x8点阵用于显示中文文字,也可用于图形显示。
用多块点阵显示器组合则可构成大屏幕显示器,但这类实用装置常通过微机或单片机控制驱动。
1.5LED点阵数码显示屏的前景和发展
LED电子显示屏是随着计算机及相关的微电子﹑光电子技术的迅猛发展而形成的一种新型信息显示媒体。
它利用发光二极管构成的点阵模块或像素单元组成可变面积的显示屏幕,以可靠性高、使用寿命长、环境适应能力强、性能价格比高、使用成本低等特点,在短短的十来年中,迅速成长为平板显示的主流产品,在信息显示领域得到了广泛的应用。
LED点阵电子显示屏是集微电子技术、计算机技术、信息处理技术于一体的大型显示屏系统。
它以其色彩鲜艳,动态X围广,亮度高,寿命长,工作稳定可靠等优点而成为众多显示媒体以及户外作业显示的理想选择。
其显示和动态效果(主要是显示内容的滚动)的实现主要依靠硬件扫描驱动,该方法虽然比较方便,但显示只能按照预先的设计进行。
这时一般的显示系统就很难达到要求。
另外,由于受到存储器本身的局限,其特殊字符或图案也往往难以显示,同时显示内容也不能随意更改。
本文提出一种利用PC机和单片机控制的LED显示系统通讯方法。
该方法可以对显示内容(包括汉字和特殊图符)进行实时控制,从而实现诸如闪动、滚动、打字等多种动态显示效果。
该方法同时还可以调节动态显示的速度,同时用户也可以在PC机上进行显示效果的预览,显示内容亦可以即时修改。
另外,通过标准的RS232/485转换模块还可以实现对显示系统的远程控制。
在我国改革开放之后,特别是进入90年代国民经济高速增长,对公众场合发布信息的需求日益强烈,LED显示屏的出现正好适应了这一市场形势,因而在LED显示屏的设计制造技术与应用水平上都得到了迅速的提高,生产也得到了迅速的发展,并逐步形成产业,成为光电子行业的新兴产业领域。
第二章硬件介绍
2.1AT89C51单片机简介
AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM—FalshProgrammableandErasableReadOnlyMemory)的低电压,高性能CMOS8位微处理器,俗称单片机。
AT89C2051是一种带2K字节闪烁可编程可擦除只读存储器的单片机。
单片机的可擦除只读存储器可以反复擦除100次。
该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。
由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,AT89C2051是它的一种精简版本。
AT89C单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。
图1AT89C51单片机
2.1.1主要特性
•4K字节可编程闪烁存储器,寿命:
1000写/擦循环,数据保留时间:
10年
•全静态工作:
0Hz-24Hz
•三级程序存储器锁定
•128*8位内部RAM
•32可编程I/O线•两个16位定时器/计数器
•5个中断源
•可编程串行通道
•低功耗的闲置和掉电模式
•片内振荡器和时钟电路
2.1.2管脚说明
P0口:
P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。
当P1口的管脚第一次写1时,被定义为高阻输入。
P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。
在FIASH编程时,P0口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。
P1口:
P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。
P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。
在FLASH编程和校验时,P1口作为第八位地址接收。
P2口:
P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。
并因此作为输入时,P2口的管脚被外部拉低,将输出电流。
这是由于内部上拉的缘故。
P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。
在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。
P2口在FLASH编程和校验时接收高八位地址信号和控制信号。
P3口:
P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。
当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。
作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。
RST:
复位输入。
当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。
ALE/PROG:
当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。
在FLASH编程期间,此引脚用于输入编程脉冲。
在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。
因此它可用作对外部输出的脉冲或用于定时目的。
然而要注意的是:
每当用作外部数据存储器时,将跳过一个ALE脉冲。
如想禁止ALE的输出可在SFR8EH地址上置0。
此时,ALE只有在执行MOVX,MOVC指令是ALE才起作用。
另外,该引脚被略微拉高。
如果微处理器在外部执行状态ALE禁止,置位无效。
/PSEN:
外部程序存储器的选通信号。
在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。
但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。
/EA/VPP:
当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。
注意加密方式1时,/EA将内部锁定为RESET;
当/EA端保持高电平时,此间内部程序存储器。
在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。
XTAL1:
反向振荡放大器的输入及内部时钟工作电路的输入。
XTAL2:
来自反向振荡器的输出。
2.2汉字的点阵显示原理及字库代码获取方法
我们以UCDOS中文宋体字库为例,每一个字由8行8列的点阵组成显示。
我们可以把每一个点理解为一个象素,而把每一个字的字形理解为一幅图像。
事实上这个汉字屏不仅可以显示汉字,也可以显示在64象素X围内的任何图形。
如查用8位的AT89C51单片机控制,如图2所示
图2汉字显示原理
为了弄清楚汉字的点阵组成规律,首先通过列扫描方法获取汉字的代码。
首先将8行分成4位的上、下两部分,把发光的象素位编为0不发光的象素位为1的十六进制代码。
这样就把要显示的“四”字编为如下代码:
DB0FFH,80H,0BAH,82H,0BEH,82H,0BAH,80H;
四
由这个原理可以看出,无论显示何种字体或图像,都可以用这个方法来分析出他的扫描代码从而显示在屏幕上。
上述方法虽然能够让我们弄清楚汉字点阵代码的获取过程,但是依靠人工方法获取汉字代码是一件非常繁琐的事情。
对于16X16十六进制数据的汉字代码,我们经常采用字库软件查找字符代码,软件打开后输入汉字,点“检取”,十六进制数据的汉字代码即可自动生成,把我们所需要的竖排数据复制到程序中即可,如图4所示。
可见,汉字点阵显示一般有点扫描、行扫描和列扫描3种。
为了符合视觉暂留要求,点扫描方法的扫描频率必须大于16×
64—1024Hz,周期小于1ms即可。
行扫描和列扫描方法的扫描频率必须大于16×
8—128Hz,周期小于7.8ms即可,但是一次驱动一列或一行(8颗LED)时需外加驱动电路提高电流,否则LED亮度会不足。
图3显示结果
2.38×
8LED点阵介绍
图(4)为8×
8点阵LED外观及引脚图,,只要其对应的X、Y轴顺向偏压,即可使LED发亮。
例如如果想使左上角LED点亮,则Y0=1,X0=0即可。
应用时限流电阻可以放在X轴或Y轴。
图48*8点阵
(1)把“单片机系统”区域中的P1端口用8芯排芯连接到“点阵模块”区域中的“DR1-DR8”端口上;
(2)把“单片机系统”区域中的P3端口用8芯排芯连接到“点阵模块”区域中的“DC1-DC8”端口上;
第三章电路设计
3.1硬件电路组成及工作原理
本产品采用以AT89C51单片机为核心芯片的电路来实现,主要由AT89C51芯片、时钟电路、复位电路、列扫描驱动电路、8×
8LED点阵5部分组成,电路框图如图1所示。
其中,AT89C51是一种带4kB闪烁可编程可擦除只读存储器(FalshProgrammableandErasableReadOnlyMemory,FPEROM)的低电压、高性能CMOS型8位微处理器,俗称单片机。
该器件采用ATMEL高密度非易失存储器制造技术制造,工业标准的MCS一51指令集和输出管脚相兼容。
由于将多功能8位CPU和闪烁存储器组合在单个芯片中,能够进行1000次写/擦循环,数据保留时间为10年。
他是一种高效微控制器,为很多嵌人式控制系统提供了一种灵活性高且价廉的方案。
因此,在智能化电子设计与制作过程中经常用到AT89C51芯片。
时钟电路由AT89C51的18,19脚的时钟端(XTAI1及XTAL2)以及12MHz晶振X、电容C2、C3组成,采用片内振荡方式。
复位电路采用简易的上电复位电路,主要由电阻R,R2,电容C,开关K组成,分别接至AT89C51的RST复位输人端。
LED点阵显示屏采用8x8共64个象素的点阵,可通过万用表检测发光二极管的方法测试判断出该点阵的引脚分布。
我们把行列总线接在单片机的I/O口,然后把上面分析到的扫描代码送入总线,就可以得到显示的汉字了。
我们在实际应用中是将LED点阵的8条列线通过驱动电路接在PO口8条行线通过限流电阻接在P2口,考虑到PO口必需设置上拉电阻,我们采用1k排电阻作为上拉电阻。
汉字扫描显示的基本过程是这样的:
通电后由于电阻R,电容cl的作用,使单片机
图5硬件电路组成框图
的RST复位脚电平先高后低,从而达到复位;
之后,在C、C3、X以及单片机内部时钟电路的作用下,单片机89C51按照设定的程序在P2和P0接口输出与内部汉字对应的代码电平送至LED点阵的行列线(高电平驱动),从而选中相应的象素LED发光,并利用人眼的视觉暂留特性合成整个汉字的显示。
再改变取表地址实现汉字的滚动显示。
硬件电路组成框图如图5所示,硬件电路如图6所示。
图6硬件电路
3.2时钟电路
(1)就是产生象时钟一样准确的振荡电路。
(2)任何工作都按时间顺序。
用于产生这个时间的电路就是时钟电路。
图7时钟电路图
3.3复位电路
为确保微机系统中电路稳定可靠工作,复位电路是必不可少的一部分,复位电路的第一功能是上电复位。
一般微机电路正常工作需要供电电源为5V±
5%,即4.75~5.25V。
由于微机电路是时序数字电路,它需要稳定的时钟信号,因此在电源上电时,只有当VCC超过4.75V低于5.25V以及晶体振荡器稳定工作时,复位信号才被撤除,微机电路开始正常工作。
(如图8)
图8复位电路
3.4列扫描驱动电路
扫描驱动电路的功能是产生扫描信号,使每一扫描行依次接通。
它主要由简单的移位寄存器和缓冲放大器实现。
移位寄存器分为静态寄存器和动态寄存器,静态移位寄存器是把电平存储在存储单元里,是一个稳定的状态,动态移位寄存器是把电荷存储在电极节点上。
移位寄存器由反向器和传输门组成,静态移位寄存器由4个反向器和4个传输门组成,动态移位寄存器由2个反向器和2个传输门组成。
通常,水平扫描线频率相对低一些,用静态移位寄存器;
而数据线驱动工作频率较高,用动态移位寄存器
第四章程序设计
4.1在Keil环境中程序设计
软件程序主要由开始、初始化、主程序、字库组成。
其中主程序的流程图如图5所示。
下面的程序能够用来实现滚动显示“四”。
汉字的显示。
程序清单如下:
图9主程序流程图
4.1.1程序清单
ORG0000H
AJMPMAIN
ORG0030H
MAIN:
MOVDPTR,#TAB;
字码表初址赋值
MOVR1,#0FEH;
列控制码
MOVR3,#8;
列数
MOVR4,#80;
移动“及”“0~9”11个字符,共88列
CM:
MOVR5,#12;
每屏反