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

发布者:luanzgc最新更新时间:2012-09-25 来源: 21ic 关键字:AT89C51  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所示。下面的程序能够用来实现滚动显示“我爱你一一祖国”。汉字的显示。程序清单如下:

    [page]

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

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

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

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

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

上一篇:89C2051在直流母线降压控制器中的应用
下一篇:基于AT89C51单片机的LED汉字显示屏的设计与仿真

推荐阅读最新更新时间:2024-03-16 13:09

有关LED雷击保护的电路设计问题探讨
2Pro AC系列器件提供了综合的过流/过压/过热电路保护,帮助保护多种多样的低功率系统以防止由过电压故障引起的损坏,包括雷击、电源零线丢失、输入电压错误和电力线感应。 2Pro AC器件将PolySwitch聚合物正温度(polymeric positive temperature coefficient, PPTC)过电流器件和金属氧化物压敏电阻(metal oxide varistor, MOV)元件集成在一个创新的热保护器件中,帮助提供可恢复限流,用于过电压故障中的过电流保护和电压箝位。这种单一器件方法可以帮助制造商满足行业测试要求、减少元件数目并提高设备可靠性。 对于家用型的LED照明,雷击的保护要求都会小于2kV
[电源管理]
有关<font color='red'>LED</font>雷击保护的电路设计问题探讨
STM32之定时器中断控制LED闪烁
上篇博客我们是用延时函数实现了LED的闪烁,今天我们使用STM32的定时器来使LED闪烁。 关于32的定时器的种类,今天我在这先不做过多的说明,有时间我会再另写一篇博客来专门介绍32的定时器。今天我们使用32的定时器3来产生中断,以实现LED的闪烁。 今天我们需要配置的有LED和定时器,首先来配置LED,我们还是使用正点原子精英版开发板上的DS0来进行实验 配置LED的过程还是和上篇博客中点亮LED的方法一样,我就不再过多的说明,只贴下代码 led.c文件如下 #include led.h void led_init(void) { GPIO_InitTypeDef GPIO_InitStructure
[单片机]
STM32之定时器中断控制<font color='red'>LED</font>闪烁
高效无金属散热器LED照明灯关键技术简述
   LED照明 具有光效更高、寿命更长;不含有害物质汞;使用寿命与灯的开关次数几乎无关、可提倡“随手关灯”;可以瞬间起亮等突出优点,被认为终将替代白炽灯和节能灯,成为节能 照明 的主流。实际上,只有在 LED 灯的性价比全面超过白炽灯、特别是超过目前广泛使用的节能灯后才能成为通用照明灯的主流。   而LED照明的课题看起来十分明确,即在保证光质量的前提下光效需要大幅提高,例如比节能灯高一倍以上;价格需要大幅下降,最好接近节能灯;使其性价比明显优于节能灯。   目前的LED通用照明灯大多由功率型LED加金属散热器和恒流驱动电路构成。笨重的金属散热器不仅增加了灯的成本和重量,同时要消耗大量铝资源,有悖环保。一个LED灯就像一个金属球
[电源管理]
高效无金属散热器<font color='red'>LED</font>照明灯关键技术简述
LED节能灯优劣鉴别“五看”
LED节能灯因其具有节电效果明显、使用寿命长,无频闪效应、无噪声、光线柔和工作电压范围宽等特点而日益受到消费者的欢迎。但是目前市场上的LED节能灯很多,质量良莠不齐。如何在灯具店琳琅满目的节能灯中选购自己满意的产品呢?通过“五看”可鉴别节能灯的优劣,介绍如下。   一看包装和商标   国家强制要求LED灯具生产厂家产品在外包装上标出以下内容:额定电压、电压范围、额定功率、额定频率。一般说来,优质产品的商标印刷质量好,字体清晰,不易脱落,用软湿布擦拭,标志清晰可辨,不易擦掉,有生产厂家的商标及相关认证标志。伪劣产品印刷质量差,字体模糊,易擦除,无生产厂家的商标及相关认证标志。   二看LED灯管外观   真正的LED
[电源管理]
<font color='red'>LED</font>节能灯优劣鉴别“五看”
AT89C51及TWH9221在电冰箱中的应用
  随着家用电冰箱的普及,人们对电冰箱的控制功能要求越来越高,这对电冰箱控制器提出了 更高的要求,多功能、智能化是其发展方向之一,传统的机械式、简单的电子控制已经难以 满足发展要求。本文介绍了采用 AT89C51作为控制器核心,对电冰箱的工作过程进行控制, 采用臭氧发生器专用集成电路 TWH9221组成电冰箱的异味消除电路。 1电冰箱的工作原理及控制要求    电冰箱的控制原理是根据蒸发器的温度控制制冷压缩机的启、停,使冰箱内的温度保持在设 定温度范围内。一般当蒸发器温度高至 3~5 ℃时启动压缩机制冷,当温度低于-10~-20 ℃ 时停止制冷,关断压缩机。采用单片机控制,可以使控制更准确、灵活。   电冰
[单片机]
意法半导体推出车规级12通道LED驱动芯片,简化当下最先进的车灯设计
2019年10月9日—— 意法半导体 A LED 1262ZT 12通道 LED驱动器 可用于驱动当下流行的汽车后组合灯和室内照明灯,支持炫酷创新的视觉效果设计。 每条通道都有独立的7位PWM调光功能,可以灵活地控制尾灯、刹车灯、转向灯,使灯光具有动态视觉效果。每条通道输出19V恒流,可以控制由多颗LED灯珠串联而成的灯带。 电流 调节范围6mA至60mA,在保证灯光亮度调范围非常宽的同时,还能保证最大亮度很高,支持主微控制器 I2C 命令,内置两中不同的预设配置,可以让驱动器独立运行,提高设计的灵活性。 AlD1262ZT的诊断功能包括LED 开路 检测和过热报警关断,为车灯的耐用性和长期稳定性提供保障。5.5V到38
[汽车电子]
意法半导体推出车规级12通道<font color='red'>LED</font>驱动芯片,简化当下最先进的车灯设计
AT89C51/55构成的温湿度自动监测系统
1系统硬件设计   系统结构如图1所示,采用ATMEL公司生产的51系列单片机AT89C55和AT89C51为核心,其中主机采用AT89C55、从机采用AT89C51。从机负责64点的数据检测,各检测点的温度和湿度经过温、湿度传感器及其转换电路转变为电压信号;经过矩阵网络进行信号选择,所得信号送到相应的信号放大整理电路放大,再进入A/D转换器,进行模数转换,将数字量送入从机,再经从机的数据处理,送给LED进行显示,同时定时传送给主机AT89C55;主机负责收集各粮仓内的数据(可监测50"100个粮仓),实现数据的保存、打印以及调用历史数据,并可巡回显示各粮仓的及时温湿度及报警状态。   AT89C55/51芯片是由ATMEL
[测试测量]
华新光电进军LED模组市场,耕耘有成
    台湾的华新光电团队于2005年跨入发光二极体模组及应用研发,产品开发锁定高功率光源,聚焦优势产品,期望快速佔有市场。在台湾、中国大陆都有生产线。     目前该公司的产品线包括LTCC、Chip array及专利OPS产品等。华新光电表示,目前是进行LED模组次世代技术研发,设法提升产品亮度及效率设计,同时并积极开发应用市场产品,主要应用于室外及室内照明产品的LED光源。     2007年该公司正式开始高亮度及高功率LED磊晶、LED芯片组的研发与制造,採购硬体设备,并延揽国内外优秀技术团队人员,运用高端创新技术研究开发符合市场需求的光电产品,使华新具有从上游原材料,到中下游应用产品设计方案的整合与生产能力。
[电源管理]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
  • 学习ARM开发(16)
    ARM有很多东西要学习,那么中断,就肯定是需要学习的东西。自从CPU引入中断以来,才真正地进入多任务系统工作,并且大大提高了工作效率。采 ...
  • 学习ARM开发(17)
    因为嵌入式系统里全部要使用中断的,那么我的S3C44B0怎么样中断流程呢?那我就需要了解整个流程了。要深入了解,最好的方法,就是去写程序 ...
  • 学习ARM开发(18)
    上一次已经了解ARM的中断处理过程,并且可以设置中断函数,那么它这样就可以工作了吗?答案是否定的。因为S3C44B0还有好几个寄存器是控制中 ...
  • 嵌入式系统调试仿真工具
    嵌入式硬件系统设计出来后就要进行调试,不管是硬件调试还是软件调试或者程序固化,都需要用到调试仿真工具。 随着处理器新品种、新 ...
  • 最近困扰在心中的一个小疑问终于解惑了~~
    最近在驱动方面一直在概念上不能很好的理解 有时候结合别人写的一点usb的例子能有点感觉,但是因为arm体系里面没有像单片机那样直接讲解引脚 ...
  • 学习ARM开发(1)
  • 学习ARM开发(2)
  • 学习ARM开发(4)
  • 学习ARM开发(6)
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved