基于P89V51RD2单片机LED点阵显示屏的实现

发布者:吾道明亮最新更新时间:2012-05-05 来源: 电子设计工程 关键字:LED点阵屏  P89v51RD2  移位寄存器 手机看文章 扫描二维码
随时随地手机看文章
    LED点阵显示屏是一种简单的字符显示器,具有价廉、易于控制、使用寿命长等特点,可广泛应用于各种公共场合,如车站、码头、银行、学校、火车、公共汽车显示等。本文详细介绍了一种低廉的16x16点阵LED显示屏的设计过程。本系统采用P89V51RD2单片机作控制器,整个电路主要由单片机控制及其接口电路、驱动显示电路、电源电路等部分组成。为了使显示屏电路更具实用性,本系统在单片机部分外加数据存储器。在PC机上编辑汉字和字符显示信息,并将其转换为相应的点阵显示数据,然后通过串口(采用RS-232通信标准)送单片机存储并显示,实现LED显示屏的功能。

1 系统原理及特点
    系统原理框图如图1所示,该系统主要由飞利浦公司生产的单片机P89V51RD2、移位寄存器74HC595、4-16译码器74HC154、LED点阵、数据存储器RAM6264以及RS232电平转换芯片组成,汉字字模存储外部数据存储器6264中,用单片机P89V51RD2控制移位寄存器与译码器完成汉字的显示。

c.JPG


    本系统的特点:
    1)采用P89V51RD2单片机,P89V51RD2是PHILIPS公司推出的51系列的新型微控制器,它包含64KB?Flash和1024字节的数据RAM,支持并行和串行的在系统编程(ISP)和在应用中编程(IAP),具有SPI和增强型UART。
    2)采用移位寄存器,节约单片机的IO资源,容易扩展多位LED显示。
    3)通过串口下载单片机的程序代码以及与PC机通信获取显示信息的字模。
    4)显示内容多时,可以把汉字字模存储到外部数据存储器6264中。
1.1 移位寄存器的工作原理
    74HC595是一款漏极开路输出的CMOS移位寄存器,输出端口为可控的三态输出端,也能串行输出控制下一级级联芯片。
    74HC595的引脚图如图2所示。

d.JPG[page]

1.1.1 引脚说明
    1)74595的数据端:
     QA-QH:8位并行输出端,可以直接控制数码管的8个段;QH:级联输出端。将它接下一个595的SI端;SI:串行数据输入端。
    2)74595的控制端说明:
    /SCLR(10脚):低点平时将移位寄存器的数据清零;SCK(11脚):上升沿时数据寄存器的数据移位。QA->QB->QC->…->QH;下降沿移位寄存器数据不变;RCK(12脚):上升沿时移位寄存器的数据进入数据存储寄存器,下降沿时存储寄存器数据不变。
    3)74HC595与单片机的硬件连接
    2片74HC595与单片机串行接口连接,移位寄存器的输出作为点阵LED的行驱动,硬件电路图如图3。其中,RCK接单片机的P3.3端口;SC LR接单片机的P3.2端口;SCK接单片机的P3.3端口;SI接单片机的P3.4端口。串行移位寄存器7HC595也可以用74HC164。

e.JPG


1.2 译码器及驱动电路
    单片机的P1口低四位的输出,经4-16线译码器73HC154译码后,作为列选通信号线,再经过驱动器驱动对应的列线,一条列线上要驱动16个的led进行显示,按每一个LED器件需要10 mA计算,16个LED同时发光时,需要160 mA电流,选用三极管8550作为驱动管可满足要求。考虑减少PCB板的面积,也可以选择uln2803驱动LED的列。
    硬件电路连接如图4所示。

f.JPG

[page]

1.3 16x16点阵LED屏
    一个汉字32个字节需要16*16LED屏,由4个8*8LED组成,型号SD411988。LED点阵屏的极性,可以用数字万用表的电阻档来测试;万用表的黑表棒测试LED的一个引脚,红表棒放到其他的引脚,若有一个LED灯亮,说明黑表棒测试的引脚为负极,红表棒测试的引脚为正极;此时,可以把黑表棒接的引脚作为行,红表棒接的引脚作为列,当然,反过来也可以,行、列是相对的。
    然后黑表棒测试的引脚不动,改换红表棒测试的其他的引脚,测试结果如上述,这样可以把一行的所有列控制的引脚确定;同理,也可以确定其他的行控制引脚。
    16×16 LED屏的原理图如图5所示。

g.JPG



2 系统软件设计
    限于篇幅,这里没有给出VB提取字模的程序,仅把单片机的主要程序列出。在调试下位机程序时,可以用取膜软件PCtoLCD来提取汉字字模。“南京工程学院”的字模如下
    unsigned char code table[]={
    0xFE,0xFF,0xFE,0xFB,0x00,0x01,0xFE,0xFF,0xFD,0xFF,0xC0,0x03,0xDB,0xDB,0xDD,0xBB,
    0xD0,0x0B,0xDE,0xFB,0xC0,0x03,0xDE,0xFB,0xDE,0xFB,0xDE,0xEB,0xDE,0xF7,0xFF,0xFF,/*“南”,0*/
    };限于篇幅,仅给出一个汉字的字模。
    移位寄存器有关控制位的定义void wr_595(sindata)//写移位寄存器74HC595函数
i.JPG

[page]

  j.JPG

3 结论
    经过实际测试证明,本显示屏可以作为信息显示装置,用于公共场所来进行信息显示,而且具有工作稳定、字符清晰、亮度适中等特点。为了使显示的内容丰富,可以使文字屏在显示信息时滚动显示。另外,本硬件电路可以在集成电路芯片上使用方面加以改进,用大规模的可编程逻辑器件代替中规模的逻辑电路译码器和移位寄存器,可以节约PCB的面积;本显示屏只有一位LED显示,再级联多个移位寄存器,容易实现多位LED显示。

关键字:LED点阵屏  P89v51RD2  移位寄存器 引用地址:基于P89V51RD2单片机LED点阵显示屏的实现

上一篇:基于ZigBee的无线病房呼叫系统便携端设计
下一篇:基于RTX51的排爆机器人嵌入式控制器固件开发

推荐阅读最新更新时间:2024-03-16 12:58

基于P89V51RD2的多功能蓄电池充电系统设计
  1 引言   免维护蓄电池(简称蓄电池)以易用、价廉和储能比高等优良性能在电动自行车、电动游览车及不间断电源系统中得到广泛的应用,成为普及率最高的电能储能设备。目前的蓄电池充电器绝大多数以恒流恒压方式充电,没有考虑环境温度变化对蓄电池充电过程的影响,影响了蓄电池性能的充分发挥和使用寿命。笔者结合蓄电池的充电特性,以P89V51RD2型微处理器为控制核心,开发了多功能数字式蓄电池充电机,实现了对36 V以下、100 Ah以内的蓄电池的初充、激活、快充和正常充电等功能,同时根据环境温度变化,自动调整充电终止电压,实现了充电过程的智能化。   2 蓄电池充电特性   蓄电池的充电是一个复杂的电化学过程。影响充电效果的因素很
[单片机]
基于<font color='red'>P89V51RD2</font>的多功能蓄电池充电系统设计
74ls164驱动数码管电路 74ls164应用电路
74ls164应用电路 本文采用了74LS164 这个串入并出的移位寄存器,很好地解决了2051 与L ED 的显示接口电路。 1 硬件电路 2051 余下的并行I/ O 口线不足8 根,数据的并行输出已不可能,但可以考虑串行输出方法,图1 给出串行口扩展的4 位L ED 显示接口电路。该电路只使用2051 的3 个端口,配接4 片串入并出移位寄存器74LS164 与1 片三端可调稳压器LM317T 3 结束语 本串行口扩展的LED 显示接口电路已被笔者成功地应用到以AT89C2051 单片机为核心的智能仪表中,如单片机湿度测量仪、单片机温度测量仪等。现场运行表明,LED 显示清晰稳定不闪烁,特别是在现场环境如光照强弱不同的
[单片机]
74ls164驱动数码管电路 74ls164应用电路
5×7 LED点阵屏的特别使用方式
本例中的电路给出了一种5×7 LED点阵屏的特别使用方式。 电路无需做任何修改,只要对LED单元稍加安排,就可以用于一组5×7 LED单元的设计中。使用一只5×7 LED点阵屏可以显示两个字符,而将N个单元水平排列(不是垂直排列)则可以显示2×N个字符。小写和大写字母最少都只需要一个3×5 LED的结构,但字母M和m除外,它们至少需要5×5LED结构,需要一个专用的子例程。图1中的电路使用了一只8位、18脚的PIC微控制器和一个十进制计数器,驱动一个或两个5×7 LED单元,提供了一个显示两个或四个数字的模块。电路采用了一个小型按键开关做计数器的递增。默认情况下,电路工作在高亮度模式。如果在上电时按住按键,则电路工作在低功耗模式。
[电源管理]
5×7 <font color='red'>LED</font><font color='red'>点阵屏</font>的特别使用方式
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
  • ARM裸机篇--按键中断
    先看看GPOI的输入实验:按键电路图:GPF1管教的功能:EINT1要使用GPF1作为EINT1的功能时,只要将GPFCON的3:2位配置成10就可以了!GPF1先配 ...
  • 网上下的--ARM入门笔记
    简单的介绍打今天起菜鸟的ARM笔记算是开张了,也算给我的这些笔记找个存的地方。为什么要发布出来?也许是大家感兴趣的,其实这些笔记之所 ...
  • 学习ARM开发(23)
    三个任务准备与运行结果下来看看创建任务和任运的栈空间怎么样的,以及运行输出。Made in china by UCSDN(caijunsheng)Lichee 1 0 0 ...
  • 学习ARM开发(22)
    关闭中断与打开中断中断是一种高效的对话机制,但有时并不想程序运行的过程中中断运行,比如正在打印东西,但程序突然中断了,又让另外一个 ...
  • 学习ARM开发(21)
    先要声明任务指针,因为后面需要使用。 任务指针 volatile TASK_TCB* volatile g_pCurrentTask = NULL;volatile TASK_TCB* vol ...
  • 学习ARM开发(20)
  • 学习ARM开发(19)
  • 学习ARM开发(14)
  • 学习ARM开发(15)
何立民专栏 单片机及嵌入式宝典

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

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