矩阵LED(8x8 点阵)
8行8列64点 · 动态扫描显示 · 视觉暂留效应
一、理论基础
1.1 器件概述
本系统采用 8x8 矩阵 LED(点阵显示器),由 8 行 8 列共 64 个发光二极管组成,每个发光二极管放置在行线和列线的交叉点上。当对应的某一行置高电平、某一列置低电平时,相应的二极管就点亮。
矩阵LED广泛应用于信息显示屏、广告牌、游戏设备、状态指示等场景。
1.2 工作原理
行列扫描:要显示一个字符或图形,需要使与字的形状相近的点亮起来。具体方法:
- 先把第一行送高电平,然后给每一列送去相应的字节(列数据),第一行的相应点就亮起来
- 经过一段延时,把第二行送高电平,再给每一列送相应的字节,第二行也亮起来
- 同样继续第三行、第四行……直到第八行
- 由于每一行 LED 很快就转到下一行,利用视觉暂留效应,在快速扫描的情况下整个矩阵就显示出一个完整的字符或图形
1.3 关键参数
| 参数 | 规格 |
|---|---|
| 点阵规格 | 8 x 8 = 64 点 |
| 驱动方式 | 行扫描 + 列数据(动态扫描) |
| 行控制 | 74HC573 锁存器(P0.5 使能) |
| 列控制 | 74HC573 锁存器(P0.6 使能) |
| 数据口 | P1(8 位数据总线) |
| 扫描频率 | ≥ 50Hz(避免闪烁) |
1.4 典型应用
- 信息显示屏(公交车、电梯、车站)
- 电子广告牌、走字屏
- 游戏设备(贪吃蛇、俄罗斯方块)
- 状态指示与图案显示
- 时钟显示(点阵时钟)
- 教学实验(动态扫描原理)
二、实验实例:矩阵LED控制
2.1 实验目的
- 掌握矩阵LED的控制原理
- 掌握矩阵LED控制程序的编程方法
2.2 实验内容
在 IAR 集成开发环境中编写矩阵LED控制程序,实现全灭、行循环显示、列循环显示、全亮等效果。
2.3 预备知识
- 了解 C 语言的基本知识
- 了解 IAR 中编写和调试程序的方法
- 了解动态扫描显示和视觉暂留效应
2.4 实验设备
- 硬件:WSN-V 教学实验箱(带指示扩展板)、PC 机
- 软件:Windows + IAR EW for 8051
2.5 驱动电路
矩阵LED采用两片 74HC573 锁存器分别控制行和列,P1 口作为 8 位数据总线,P0.5 控制行锁存,P0.6 控制列锁存。

电路说明:
- 两片 74HC573 锁存器(U1 行控制、U2 列控制)
- P1(P1.0~P1.7)为 8 位数据总线,连接到两片 74HC573 的数据输入端
- P0.5 使能行锁存器(LE 引脚),P0.6 使能列锁存器
- 74HC573 输出端连接 8x8 LED 矩阵的行线和列线
- 行线置高、列线置低时,交叉点的 LED 点亮
2.6 关键代码
c
void main(void)
{
unsigned char i;
P0DIR = (0x01<<0)|(0x01<<4)|(0x01<<5)|(0x01<<6)|(0x01<<7);
P1DIR = 0xff; // P1 为输出方式
P2DIR |= 0x01;
P0_7 = 0; // 关闭蜂鸣器
while(1)
{
// 全灭
P0 |= (0x1 << 6); P1 = 0x0; P0 &= ~(0x1 << 6);
delay();
// 逐行显示
for(i=0;i<8;i++){
P0 |= (0x1 << 6); P1 = 0xff; P0 &= ~(0x1 << 6);
P0 |= (0x1 << 5); P1 = ~(0x01<<i); P0 &= ~(0x1 << 5);
delay();
}
// 逐列显示(类似)...
// 全亮...
}
}2.7 实验步骤
- 连接好仿真器及指示扩展板
- 新建工程 MatrixLED,添加相应文件并修改工程设置
- 创建 MatrixLED.c 并加入到工程中
- 编写矩阵LED控制函数,实现全灭、行循环、列循环、全亮等显示效果
- 编译下载运行,观察 8x8 矩阵 LED 的显示效果
2.8 实验现象
- 全灭:所有 64 个 LED 熄灭
- 行循环显示:8 行依次点亮,形成从上到下的流动效果
- 列循环显示:8 列依次点亮,形成从左到右的流动效果
- 全亮:所有 64 个 LED 全部点亮
知识点
矩阵LED的关键是动态扫描:利用人眼的视觉暂留效应(约 1/24 秒),以足够快的速度(≥50Hz)逐行扫描,人眼就会看到稳定的图像而不是闪烁。扫描频率越高,显示越稳定,但占用 CPU 时间越多。实际项目中常用定时器中断来实现扫描,确保扫描频率稳定。显示字符时需要预先制作"字模"(每个字符对应 8 字节的列数据)。
内容来源:《WSN-V 物联网综合教学实验指导书》第 7 章·7.2 矩阵LED控制实验,结合课程教学经验整理。