问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

51单片机入门:LED点阵屏控制详解

创作时间:
作者:
@小白创作中心

51单片机入门:LED点阵屏控制详解

引用
CSDN
1.
https://blog.csdn.net/qq_74114817/article/details/137422199

LED点阵屏介绍

LED点阵屏由若干个独立的LED组成,LED以矩阵的形式排列,通过灯珠的亮灭来显示文字、图片、视频等。LED点阵屏广泛应用于各种场合,如广告屏、公告牌等。

分类

  • 按颜色:单色、双色、全彩
  • 按像素:88、1616等(大规模的LED点阵屏通常由很多个小点阵屏拼接而成)

显示原理
如图所示为8*8点阵模块,总共有8×8=64个LED灯,由16个引脚来控制,其中8个为正极(Da、Db、...、Dh);8个为负极(P00、P01、...、P07)。

LED点阵屏与数码管一样,有共阴和共阳极两种接法,不同的接法对应的电路结构不同(对于单色点阵屏区别不大,对于双色或多色区别大)。

LED点阵屏需要逐行或逐列扫描,才能使所有LED同时显示。

原理:当16个引脚状态确定,LED点阵屏中的所有LED状态也确定,就构成了一幅画面。不停地改变16个引脚的状态,就会组成不同的画面,也就显示出了动态画面。

74HC595芯片

74HC595芯片是一个串行输入、并行输出的设备。内部包含一个8位移位寄存器、一个存储器以及三态输出门电路。其中移位寄存器和存储器都有相互独立的时钟。

用三根线(SER、SRCLK、RCLK)输入串行数据,8根线输出并行数据;多片级联后可输出16位、24位、32位等数据。

引脚定义

  • OE:输出使能(上图为低电平有效),即当其为0时这个芯片才能工作(通过跳线帽将J24的VCC和OE连接在一起即可)。
  • SER(DS):串行数据输入。
  • RCLK:移位寄存器时钟。当出现上升沿时,将移位寄存器的数据存到存储寄存器。
  • SRCLR(MR):串行清零端(低电平时将清空移位寄存器的数据),一般不用,接高电平即可。
  • SRCLK:串行时钟。当出现上升沿时,移位寄存器的数据向前移位,并从SER上读取新的一位数据存到移位寄存器里(压子弹一样)。
  • QH':当串行数据多于8位时,会将已有的位挤出去。级联后可作为下一级的SER引脚输入。
  • Qa到Qh:并行输出引脚。

工作流程

  1. 每个芯片的数据都是通过SER引脚输入,并保存到移位寄存器中;
  2. SRCLK引脚出现一次上升沿,就读取SER引脚状态,将数据保存到移位寄存器中;
  3. 当需要传递的数据都保存到各级芯片的移位寄存器后,RCLK引脚出现一次上升沿,就将移位寄存器的值刷新到存储寄存器中,更新8个并行输出引脚的状态;

芯片应用

通常使用74HC595芯片来控制LED点阵屏,优点如下:

  1. 采用74HC595芯片,只需3个引脚就能控制LED点阵屏,减少了引脚的使用数;
  2. 控制更大的LED点阵屏,还是只需使用3个引脚,只是要增加级联的74HC595芯片数量;

LED点阵屏显示图片代码:

#include <REGX52.H>
#include <delay.h>

sbit RCK=P3^5; //RCLK
sbit SCK=P3^6; //SRCLK
sbit SER=P3^4; //SER

void _74HC595(unsigned char Byte){
    unsigned char i;
    for(i=0;i<8;i++){
        SER=Byte&(0x80>>i);
        SCK=1;
        SCK=0;
    }
    RCK=1;
    RCK=0;
}

void LEDshow(unsigned char x, unsigned char y){
    _74HC595(y);  //代表这一列亮哪几个灯
    P0=~(0x80>>x);//代表第几列亮
    Delay100us();
    P0=0xFF;
}

void main (){
    SCK=0;
    RCK=0;
    while(1){
        LEDshow(0,0x70);
        LEDshow(1,0x88);
        LEDshow(2,0x44);
        LEDshow(3,0x22);
        LEDshow(4,0x22);
        LEDshow(5,0x44);
        LEDshow(6,0x88);
        LEDshow(7,0x70);
    }
}
© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号