当前位置:文档之家› 点阵实现汉字显示系统的设计

点阵实现汉字显示系统的设计

目录摘要 (2)1 硬件介绍 (4)1.1 AT89C51单片机介绍 (4)1.2 74HC595介绍 (5)1.3 LED点阵介绍 (6)1.4 双色点阵介绍 (7)2 理论分析 (8)2.1 系统功能 (8)2.2 LED显示方式 (8)2.3 程序流程图 (9)2.4 颜色变换 (10)3 电路与程序设计 (10)3.1 源程序 (10)3.2 PROTEUS仿真 (13)4 结果分析 (13)4.1 仿真结果 (13)4.2 实验台测试结果 (14)5 总结(经验教训) (15)参考文献 (16)摘要LED点阵显示屏在银行、车站、医院、街头、公交车等随处可见。

LED点阵模块以发光二极管为像素单元,将发光二极管芯阵列组合后封装而成。

本设计中采用的LED点阵是由2个8×8矩阵LED模块组成的8×16双色共阴极LED点阵,其内部使用74HC595芯片,使串行输出转换成并行输出,驱动矩阵LED。

设计中使用AT89C51和双色共阴极LED点阵最终完成点阵显示汉字(包括移动、跳变)的功能。

由于点阵为双色点阵,所以该程序实现了第一个矩阵模块显示红色,而另一模块显示绿色。

该设计不仅使用KEIL软件在实验台上测试成功,而且还利用PORTEUS仿真软件画出了仿真图。

关键词:LED点阵(矩阵LED)、汉字、74HC595、双色AbstractLED dot matrix display in the bank, railway stations, hospitals, streets, buses, etc. everywhere.LED dot matrix module with LED as a pixel unit, the combined light-emitting diode array package from the core.The design of LED dot matrix is used in two 8 × 8 matrix LED module consisting of a total of 8 × 16 color cathode LED dot matrix, and its internal use 74HC595 chip, the serial output into a parallel output, driven matrix LED.AT89C51 used in the design and color common cathode LED dot matrix display Chinese characters finally completed (including mobile, transition) function.As for the two-color dot matrix, so the program achieved the first matrix module displays red, while the other module shows green.The design is not only used in the experimental stage, KEIL software tested successfully, but also drawn by PORTEUS simulation software simulation charts.Keywords: LED dot-matrix (matrix LED), Chinese characters, 74HC595, color1 硬件介绍1.1 AT89C51单片机介绍AT89C51是美国ATMEL公司生产的低电压,高性能CMOS8位单片机,可提供以下标准功能:4K 字节闪存,128字节内部RAM,32个I/O口线,两个16位定时/计数器,一个5向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。

同时,AT89C51可降至0HZ的静态逻辑操作,并支持两种软件可选的节电工作模式。

空闲方式停止CPU的工作,但允许RAM,定时/计数器,串行通信口及中断系统继续工作。

掉电方式保存RAM 中的内容,但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位。

图1 AT89C51引脚图引脚功能说明Vcc:电源电压 GND:地P0口:P0口是一组8位漏极开路型双向I/O口,即地址/数据总线复位口。

作为输出口用时,每位能吸收电流的方式驱动8个逻辑门电路,对端口写“1”可作为高阻抗输入端用。

在访问外部数据存储器或程序存储器时,这组口线分时转换地址(低8位)和数据总线复用,此时P0激活内部的上拉电阻。

P1口:P1是一个带有内部上拉电阻的8位双向I/O口。

P1的输出缓冲级可驱动(输入或输出)4个TTL逻辑门电路。

对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可做输入口。

因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流。

P2口:P2是一个带有内部上拉电阻的8位双向I/O口,P2的输出缓冲级可驱动(输入或输出电流)4个TTL逻辑门电路。

对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作为输入口。

因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流。

在访问外部程序存储器获16位地址的外部数据存储器(例如执行 MOVX @DPTR 指令)时,P2口送出高8位地址数据。

在访问8位地址的外部数据存储器(如执行 MOVX @RI 指令)时,P2口线上的内容(也即特殊功能寄存器(SFR)区中R2寄存器的内容),在整个访问期间不改变。

P3口:P3口是一组带有内部上拉电阻的8位双向I/O口。

P3口输出缓冲级可驱动(输入或输出)4个TTL逻辑门电路。

对P3口写入“1”时,他们被内部上拉电阻拉高并可作为输入口。

此时,被外部拉低的P3口将用上拉电阻输出电流。

RST:复位输入。

当振荡器工作时,RST引脚出现两个机器周期以上高电平将使单片机复位。

ALE/PROG:当访问外部程序存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低8位字节。

即使不访问外部存储器,ALE仍以时钟振荡频率的1/6输出固定的正脉冲信号,因此它可对输出时钟信号或用于定时。

要注意的是:当访问外部数据存储器时将跳过一个ALE脉冲。

闪存编程期时,该引脚还用于输入编程脉冲。

PSEN:程序存储允许输出是外部程序存储器的读选通信号,当AT89C51由外部程序存储器取指令(或数据)时,每个机器周期两个PSEN有效,即输出两个脉冲。

在此期间,当访问外部数据存储器,这两次有效的PSEN信号不出现。

EA/VPP:外部访问允许。

要使CPU仅访问外部程序存储器(地址为0000H---FFFFH),EA端必须保持低电平(接地)。

需注意的是; 如果加密位LB1被编程,复位时内部会锁存EA端状态。

如 EA端为高电平(接VCC端),CPU则执行内部程序存储器中的指令。

XTAL1:振荡器反相放大器及内部时钟发生器的输入端。

XTAL2 :振荡器反相放大器的输出端。

1.2 74HC595介绍图2 74HC595引脚图74HC59574HC595是硅结构的CMOS器件,兼容低电压TTL电路,遵守JEDEC标准。

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

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

数据在SCK的上升沿输入,在RCK的上升沿进入的存储寄存器中去。

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

移位寄存器有一个串行移位输入(Ds),和一个串行输出(Q7’),和一个异步的低电平复位,存储寄存器有一个并行8位的,具备三态的总线输出,当使能OE时(为低电平),存储寄存器的数据输出到总线。

8位串行输入/输出或者并行输出移位寄存器,具有高阻关断状态。

三态。

符号引脚如图2描述:QA…QH 15, 1, 7 并行数据输出; GND 8 地; Q’ H 9 串行数据输出;MR 10主复位(低电平;SCK 11 移位寄存器时钟输入 RCK 12 存储寄存器时钟输入 G 13 输出有效(低电平) SER 14 串行数据输入 Vcc 16 电源1.3 LED点阵介绍8×8单色点阵共需要64个发光二极管组成,且每个二极管是放置在行线与列线的叉点上。

对于点阵型LED显示可以采用共阴极或共阳极,本系统采用共阳极,其硬件电路如图3所示。

当行上有一正选通信号时,列选端八位数据为0的发光二极管便导通点亮。

这样只需要将图形或文字的显示编码作为列信号跟对应的行信号进行逐次扫描,就可以逐行点亮点阵。

只要扫描速度大于24Hz,由于扫描时间很快,人眼的视觉有暂留效应,就可以看到显示的是完整的图形或文字。

8×8点阵LED结构下图4所示。

图3 8×8点阵外观及引脚图图4 8×8 LED点阵结构点阵实现汉字显示系统的设计1.4 双色点阵介绍使用双色共阴极LED点阵,其内部结构如图5所示。

系统使用74HC595芯片,使串行输出转换成并行输出,驱动矩阵LED。

图5 LED点阵内部结构图6 双色点阵显示接口电路本实验需要用到实验台上的CPU模块(F3区)、LED双色点阵显示模块(B2区)。

双色点阵显示电路原理图参见图6。

2 理论分析2.1 系统功能该系统实现了汉字显示的功能,由于数字、字母等的显示原理与汉字相同,所以为了程序的简便本系统只是实现了汉字的显示。

汉字的显示效果为:中国、加油分别显示和中国加油滚动显示两种情况交替往复出现。

2.2 LED显示方式下面是简单的汉字显示屏的制作,由单片机控制汉字的显示内容。

使用了两块8×8的LED点阵发光管的模块,组成了一个8×16的LED点阵显示屏。

在这里仅做了四个汉字的显示,在实际的使用中可以根据这个原理自行的扩展显示的内容,下面是介绍汉字显示的原理。

LED驱动显示采用动态扫描方法,动态扫描方式是逐行轮流点亮,描驱动以8×16点阵为例,把所有同一行的发光管的阳极连在一起,把所有同一列的发光管的阴极连在一起,先送出对应第1行发光管亮灭的数据并锁存,然后选通第1行使其燃亮一定的时间,然后熄灭;再送出第2行的数据并锁存,然后选通第2行使其燃亮相同的时间,然后熄灭;….第8行之后,又重新燃亮第1行,反复轮回。

当这样轮回的速度足够快(每秒24次以上),由于人眼的视觉暂留现象,就能看到显示屏上稳定的图形。

该方法能驱动较多的LED,控制方式较灵活,而且节省单片机的资源。

显示数据传输采用串行传输的方法,控制电路可以只用一根信号线,将行列数据一位一位传往行列驱动器,在硬件方面无疑是十分经济的。

相关主题