基于单片机的LED汉字显示屏的设计与仿真

发布者:cw57324588最新更新时间:2011-08-25 来源: EEWORLD关键字:LED 手机看文章 扫描二维码
随时随地手机看文章

    研究了基于AT89C51单片机16×16 LED汉字滚动显示屏的设计与运用Proteus软件的仿真实现。主要介绍了LED汉字显示屏的硬件电路、汇编程序设计与调试、Proteus软件仿真等方面的内容,本显示屏的设计具有体积小、硬件少、电路结构简单及容易实现等优点。能帮助广大电子爱好者了解汉字的点阵显示原理,认识单片机的基本结构、工作原理及应用方法,并提高单片机知识技术的运用能力。
关键词:单片;LED;点阵;汉字显示


O 引言
    LED显示屏是利用发光二极管点阵模块或像素单元组成的平面式显示屏幕。它具有发光率高、使用寿命长、组态灵活、色彩丰富以及对室内外环境适应能力强等优点。并广泛的用于公交汽车、商店、体育场馆、车站、学校、银行、高速公路等公共场所的信息发布和广告宣传。LED显示屏发展较快,本文讲述了基于AT89C51单片机16×16LED汉字点阵滚动显示的基本原理、硬件组成与设计、程序编写与调试、Proteus软件仿真等基本环节和相关技术。


1 硬件电路组成及工作原理
    本产品采用以AT89C51单片机为核心芯片的电路来实现,主要由AT89C51芯片、时钟电路、复位电路、列扫描驱动电路(74HCl54)、16×16LED点阵5部分组成,如图1所示。其中,AT89C51是一种带4kB闪烁可编程可擦除只读存储器(Falsh Programmable and Erasable Read OnlyMemory,FPEROM)的低电压、高性能CMOS型8位微处理器,俗称单片机。该器件采用ATMEL高密度非易失存储器制造技术制造,工业标准的MCS一5l指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,能够进行1 000次写/擦循环,数据保留时间为10年。他是一种高效微控制器,为很多嵌人式控制系统提供了一种灵活性高且价廉的方案。因此,在智能化电子设计与制作过程中经常用到AT89C51芯片。时钟电路由AT89C5l的18,19脚的时钟端(XTAI l及XTAL2)以及12 MHz晶振X、电容C2、C3组成,采用片内振荡方式。复位电路采用简易的上电复位电路,主要由电阻R,R2,电容C,开关K组成,分别接至AT89C51的RST复位输入端。LED点阵显示屏采用16×16共256个象素的点阵,可通过万用表检测发光二极管的方法测试判断出该点阵的引脚分布。
    我们把行列总线接在单片机的I/0口,然后把上面分析到的扫描代码送入总线,就可以得到显示的汉字了。但是若将LED点阵的行列端口全部直接接入89S5 1单片机,则需要使用32条I/0口,这样会造成I/0口资源的耗尽,系统也再无扩充的余地。因此,我们在实际应用中只是将LED点阵的16条行线直接接在P0口和P2口,至于列选扫描信号则是由4—16线译码器74HCl54来选择控制,这样一来列选控制只使用了单片机的4个I/O口,节约了很多I/O口资源,为单片机系统扩充使用功能提供了条件。考虑到P0口必需设置上拉电阻,我们采用4.7 kΩ排电阻作为上拉电阻。汉字扫描显示的基本过程是这样的:通电后由于电阻R,电容c1的作用,使单片机的RST复位脚电平先高后低,从而达到复位;之后,在C、C3、X以及单片机内部时钟电路的作用下,单片机89C51按照设定的程序在P0和P2接口输出与内部汉字对应的代码电平送至LED点阵的行选线(高电平驱动),同时在P1.1,P1.2,P1.3,P1.4接口输出列选扫描信号(低电平驱动),从而选中相应的象素LED发光,并利用人眼的视觉暂留特性合成整个汉字的显示。再改变取表地址实现汉字的滚动显示。

2 汉字的点阵显示原理及字库代码获取方法
    我们以UCDOS中文宋体字库为例,每一个字由16行16列的点阵组成显示。即国标汉字库中的每一个字均由256点阵来表示。我们可以把每一个点理解为一个象素,而把每一个字的字形理解为一幅图像。事实上这个汉字屏不仅可以显示汉字,也可以显示在256象素范围内的任何图形。如查用8位的AT89C51单片机控制,由于单片机的总线由8位,一个字需要拆分为2个部分,如图2所示

 为了弄清楚汉字的点阵组成规律,首先通过列扫描方法获取汉字的代码。汉字可拆分为上部和下部,上部由8×16点阵组成,下部也由8×16点阵组成。本例通过列扫描方法首先显示左上角的第一列的上半部分,即第0列的P00~P07口,方向为P00到P07,显示汉字“我”时,为全灭,第一列的下半部分也为全灭。第二列的上半部分P06、点亮,由上往下排列,为:PO.0灭,PO.1灭,P0.2灭PO.3灭,PO.4灭,P0.5灭,P0.6亮,P0.7灭。即二进制00000010,转换为十六进制为02h。上半部第二列完成后,继续扫描下半部的第二列,为了接线的方便,我们仍设计成由上往下扫描,即从P27向P20方向扫描,从图3可以看到,这一列P23亮,即为00001000,十六进制则为08h。依照这个方法转向第三列、第四列,……,直至第十六列的扫描,一共扫描32个8位,可以得出汉字“我”的扫描代码为:
    00H,02H,08H,06H,28H,02H,24H,22H
    0FCH,3FH,24H,2 1H,20H,10H,3CH,08H
    0E2H,07H,20H,0AH,0E4H,11H,0A8H,20H
    20H,30H,00H,00H,00H,00H,00H,00H
    由这个原理可以看出,无论显示何种字体或图像,都可以用这个方法来分析出他的扫描代码从而显示在屏幕上。上述方法虽然能够让我们弄清楚汉字点阵代码的获取过程,但是依靠人工方法获取汉字代码是一件非常繁琐的事情。为此,我们经常采用字库软件查找字符代码,软件打开后输入汉字,点“检取”,十六进制数据的汉字代码即可自动生成,把我们所需要的竖排数据复制到程序中即可,如图3所示。

    可见,汉字点阵显示一般有点扫描、行扫描和列扫描3种。为了符合视觉暂留要求,点扫描方法的扫描频率必须大于16×64—1 024 Hz,周期小于1 ms即可。行扫描和列扫描方法的扫描频率必须大于16×8一128 Hz,周期小于7.8 ms即可,但是一次驱动一列或一行(8颗LED)时需外加驱动电路提高电流,否则LED亮度会不足。


3 在Keil环境中程序设计与调试
    软件程序主要由开始、初始化、主程序、字库组成。其中主程序的流程图如图4所示。下面的程序能够用来实现滚动显示“我爱你一一祖国”。汉字的显示。程序清单如下:

   

  
    在keil软件中完成程序编写、调试和编译之后,生成能让单片机运行的Hex文件,如图5所示。

4 元器件选择
    本设计所需元器件如表1所示。

5 运用Proteus软件仿真LED汉字显示屏
    Proteus与其它单片机仿真软件不同的是,它不仅能仿真单片机外围电路或没有单片机参与的其它电路的工作情况,也能仿真单片机CPU的工作情况。因此在仿真和程序调试时,是从工程的角度直接看程序运行和电路工作的过程和结果。从某种意义上讲Proteus仿真,基本接近与工程应用。本次基于AT89C51单片机16×16LED汉字滚动显示屏的设计已运用Proteus软件仿真实现,如图6所示。

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

关键字:LED 引用地址:基于单片机的LED汉字显示屏的设计与仿真

上一篇:大型LCD背光照明系统设计
下一篇:RGB LED气氛灯光照明—营造温馨照明的MSP430

推荐阅读最新更新时间:2024-03-30 21:48

2.LED摩托车信号灯配光设计
1. 2  曲面LED 阵列的光强分布的数学模型   当接受屏距离足够远时,多个L ED 组合形成的面光源可以简化为点光源,且相邻两个LED 之间的间距对曲面L ED 阵列的光强空间的影响可以忽略。则曲面L ED 阵列的光强分布只与L ED 的型号、L ED 的个数、以及单个L ED 倾斜角的垂直分量角φ和水平分量角γ有关。   则光强函数表达式可以表述为:      式中I 为LED 阵列的光强; in 为第n 种型号的单个LED 光源; N 为LED 光源的个数。   根据公式(5) 则:      由公式(7) 可知:改变γi 和φi , 可以改变曲面L ED 阵列的分布,通过合理的配置,无需
[电源管理]
2.<font color='red'>LED</font>摩托车信号灯配光设计
LED背光驱动技术探讨
    面对全球环境保护意识日益高涨,产生了针对含有对环境有害物质的电子产品的限制与欧盟电子电机设备中有害物质禁用指令 (RoHS) 。因此全球各地液晶显示屏 (LCD) 面板厂商积极地寻求冷阴极荧光灯 (CCFL) 的替代解决方案。过去数年, LED 已得到广泛的应用,其中成长最快的应用领域是 LCD 的背光应用;数年间 LED 尤其在小尺寸显示屏的背光应用得到普及,并已取代了 CCFL ,而在中大尺寸的应用中, LED 取代 CCFL 也正成为趋势; LED 背光已开始迈入需要更高性能和更长工作时间的中大尺寸显示屏背光应用,如 GPS 、 P-DVD 、 DPF 、 NOTEBOOK 、 E-PC 等设备。 LED 背光技
[嵌入式]
为LCD背光应用驱动120个LED
  随着白光发光二极管(led)的效率持续快速提升且其解决方案的尺寸变得更小更薄,它们如今已应用在便携式DVD播放器、电子相框和全球卫星定位系统(GPS)等设备中,作为5~10英寸的液晶显示(LCD)面板背光。   本文将阐述如何利用一个20V白光LED驱动器来为LCD背光应用驱动多个LED串,以及如何将输出电压范围扩展至高于最大额定电压以驱动串联的6~10个LED。   带电流镜像的多个LED串   图1显示了如何将流经初级支路的恒定电流复制到次级支路。NCP5050是LED驱动芯片,它可将感测电阻RLCS的电压维持在250mV来对初级支路的恒定电流I1进行稳流。   电流I1由式1来确定。 RLCS=FBV/IOUT
[电源管理]
为LCD背光应用驱动120个<font color='red'>LED</font>
LED背光屏幕PWM调光引不适问题的解决方法
如果长时间使用 LED 背光的LCD屏幕后感到不适,可能是与屏幕的PWM调光机制有关。以下整理了小弟解决此问题时的调查资料与尝试,希望方便同样遇到此问题的朋友更易改善情况。   简单点说就是现今绝大部份LCD屏幕所使用的LED背光都是使用PWM调控方法来控制亮度,而此方法会使画面出现肉眼看不见的高速闪动,并且在屏幕亮度调得越低时越明显。这些闪动会刺激眼睛及大脑引起眼压上升(眼痛及累)、头痛等问题,严重程度因人而异。而大部份LCD屏幕当亮度调到最大(100%)时便会停用PWM,i.e.闪动会停止。下面我们就针对这个问题寻找相关的解决方案吧!    理想的使用条件   1.屏幕亮度与房间环境亮度接近,反差越少对眼睛的压力越少   2
[电源管理]
LED对手电筒进行改进
这里描述的电源把电压从一节手电筒电池的1.5伏提高到LED所需的3.5伏,同时用电源把LED和手电筒电池串联起来。设计这种电路是为了用 LED 对 手电筒 进行改进。增压电路在有两节电池的手电筒中将代替的一节电池,LED装置则代替白炽灯(见图1)。 结果是,仅用一节手电筒电池,LED手电筒就可以用很长时间。该设计最大的难点是:当电源只有一端与电池相连而另一端与白炽灯相连时,提高电压。 图2所示的电源电路要靠一个窍门来工作。在LED装置中,有一个与LED相连的二极管,以便当电源吸收电流时,电流也通过该二极管。在这期间,LED是反向偏置的。经过一段很短的时间,电源停止吸收电流而转向供电,这样LED处于正向偏置状态。
[电源管理]
用<font color='red'>LED</font>对手电筒进行改进
51单片机学习-按键控制LED
1.按下按键一次亮闪LED灯一次 #include REGX52.H void Delay(unsigned int xms) //@12.000MHz { unsigned char i, j; while(xms) { i = 2; j = 239; do { while (--j); } while (--i); xms--; } } void main() { //P2=0xFE; while(1) {if(P3_1==0) { Delay(20); while(P3_1==0); Delay(20); P2_0
[单片机]
LED显示屏大屏幕操作使用的那些事
目前,随着中国led显示屏发展产业不断增加,在各大城市街头巷尾的led大屏幕幕幕显示屏慢慢多起来了。人们消费水平也日益增长,LED照明已逐步运用到家庭的日常生活当中,LED电子显示屏不但提升了城市形象,还丰富人们的文化生活,在这方面可以体现了LED产业的发展速度是如此快,在我们享受LED电子屏带来经济效益的同时,一些拥有LED电子显示屏的商家并未完全懂得LED电子屏操作和使用注意事项,以导致缩短LED电子显示屏的寿命。在此,解析LED电子显示屏操作和使用注意事项,以确保led显示屏系统安全、正常地运行! 一、开关LED显示屏注意事项: 1、开关顺序: 开屏时:先开机,后开屏。 关屏时:先关屏,后关机 (先关计算机不关显示
[电源管理]
利用LDO改善白光LED的匹配度
白光LED与荧光灯相比具有使用简单、成本低的优势,与白炽灯相比可以提供真正的白色光,因此,其用量在最近几年呈现出稳步上升的趋势,在手持式产品中被广泛用作闪光灯、显示器背光等。当然,在实际应用中针对白光LED也存在一些有待解决的技术问题。 选用白光LED最明显的问题是产品的匹配性差,按照白光LED的典型规格,电流为20mA时正向电压的最小值为3.0V、典型值为3.5V、最大值为 4.0V。显然,稳压源不是合理的解决方案。当然,利用相同的电流驱动每只LED可以获得均匀亮度,但成本很高。在许多应用中只是简单地用一个固定偏置电压和镇流电阻驱动LED,如图1所示。 按照图1设计电路通常可以得到相当好的亮度匹配。但对于大批量生产的用户,同一
[电源管理]
利用LDO改善白光<font color='red'>LED</font>的匹配度
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
最新工业控制文章
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved