回到首页 返回首页
回到顶部 回到顶部
返回上一页 返回上一页

【花雕学编程】Arduino动手做(220)---P6全彩16X32单元板之实现红绿蓝三色在屏幕上依次点亮 简单

头像 驴友花雕 2025.04.30 12 0

0.jpg
0-.jpg
13.jpg
14.jpg
14-.jpg

  【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
 实验二百二十:P6全彩LED模组 16X32显示屏单元板 P6-RGB-16X32-8S室内全彩8扫电子屏(HX-P6-16X32-A)
 项目二:P6全彩16X32单元板之实现红、绿、蓝三种颜色在屏幕上依次点亮

实验开源代码

 

代码
/*
  【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
  实验二百二十:P6全彩LED模组 16X32显示屏单元板 P6-RGB-16X32-8S室内全彩8扫电子屏(HX-P6-16X32-A)
  项目二:P6全彩16X32单元板之实现红、绿、蓝三种颜色在屏幕上依次点亮
*/

#include <ESP32-HUB75-MatrixPanel-I2S-DMA.h>
#include <Adafruit_GFX.h>

// 创建配置对象(32x16,1块面板)
HUB75_I2S_CFG mxconfig(32, 16, 1);

// 设置引脚连接
void setupPins() {
  mxconfig.gpio.r1 = 25;  // 红色通道引脚
  mxconfig.gpio.g1 = 26;  // 绿色通道引脚
  mxconfig.gpio.b1 = 27;  // 蓝色通道引脚

  mxconfig.gpio.a  = 23;  // 地址 A 引脚
  mxconfig.gpio.b  = 19;  // 地址 B 引脚
  mxconfig.gpio.c  = 5;   // 地址 C 引脚
  mxconfig.gpio.d  = 17;  // 地址 D 引脚

  mxconfig.gpio.lat = 4;  // 锁存引脚
  mxconfig.gpio.oe  = 15; // 输出使能引脚

  // 如使用不同的时钟引脚,请取消注释并设置
  // mxconfig.gpio.clk = ...;
}

// 创建矩阵对象
MatrixPanel_I2S_DMA matrix(mxconfig);

void setup() {
  setupPins();               // 设置引脚
  matrix.begin();            // 初始化矩阵
  matrix.setBrightness8(30); // 设置亮度(0~255)

  matrix.fillScreen(matrix.color565(0, 0, 0)); // 清屏,填充黑色
}

void loop() {
  // 显示红色
  matrix.fillScreen(matrix.color565(255, 0, 0));
  delay(1000); // 延迟1秒

  // 显示绿色
  matrix.fillScreen(matrix.color565(0, 255, 0));
  delay(1000); // 延迟1秒

  // 显示蓝色
  matrix.fillScreen(matrix.color565(0, 0, 255));
  delay(1000); // 延迟1秒
}

简单解读

你的代码使用 ESP32-HUB75-MatrixPanel-I2S-DMA 库控制 P6 16x32 LED 面板,核心功能如下:

初始化 LED 矩阵

设定 GPIO 引脚(如 r1, g1, b1 控制颜色)。

调用 matrix.begin() 启动 LED 屏幕。

设置亮度

matrix.setBrightness8(30); 设定屏幕亮度(范围 0-255)。

循环显示颜色

matrix.fillScreen(matrix.color565(R, G, B)); 设置屏幕颜色。

依次显示 红 → 绿 → 蓝,每种颜色保持 1 秒。

 

实验场景图  动态图

 

15-1 (1).jpg
15-1 (2).jpg
15-1 (3).jpg
00120----.gif

评论

user-avatar
icon 他的勋章
    展开更多