37款传感器与模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的。鉴于本人手头积累了一些传感器和执行器模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的,这里准备逐一动手试试多做实验,不管成功与否,都会记录下来——小小的进步或是搞不掂的问题,希望能够抛砖引玉。
【Arduino】189种传感器模块系列实验(资料代码+仿真编程+图形编程)
实验二百二十:P6全彩LED模组16X32显示屏单元板 P6-RGB-16X32-8S室内全彩8扫电子屏(HX-P6-16X32-A)
P6全彩LED模组 16x32显示屏单元板是一种常用的LED显示屏模块,常用于广告牌、信息显示、指示牌以及其他需要显示动态图像、文字和视频的场景。P6代表着LED像素的间距为6mm,表示每个LED像素点之间的距离为6毫米。此模块一般被广泛应用于户内或近距离显示的场合,具有较高的分辨率和较清晰的显示效果。
主要特点:
- 模块尺寸和像素
• 显示尺寸:通常每个模块的尺寸是16x32像素,即一个模块由16行32列的小型LED点阵组成。
• 像素间距:6mm的像素间距,即每个LED点之间的距离为6毫米,适合近距离查看。 - 全彩显示:
• 全彩色:P6模块支持红、绿、蓝三种颜色的混合,通过调节不同的颜色亮度,形成丰富的彩色图像、文字和动画效果。
• 显示效果:能呈现高质量的图片、视频、文本,适用于动态广告显示和信息广播。 - 扫描方式:
• 8扫描:这表示每个模块的扫描方式为8扫描。扫描方式是指模块在显示时,LED每8行进行一次扫描更新,意味着每次显示的行数是8行,通过扫描显示,减少了电流和驱动电路的压力,保证了显示屏的稳定性和功耗。
• 驱动IC:常见的P6模块使用的是定制的驱动芯片,如MBI5024,它负责驱动每个LED点的亮灭。 - 接口方式:
• 串口/并口接口:通常通过串口(如UART)或并口(如TTL)来控制P6模块。通过微控制器(如Arduino、Raspberry Pi和ESP32等)进行数据传输和显示控制。
• 连接方式:多个模块可以通过排线连接形成更大的显示屏,拼接起来达到任意显示尺寸。 - 应用场景:
• 广告牌和电子屏幕:由于其色彩鲜艳,分辨率较高,广泛应用于户内广告、商场展示、车站和机场的公告显示。
• 动态信息显示:用于显示新闻、天气、公告和实时动态信息。
• 图像和视频播放:由于支持全彩显示,可以播放图像、动画视频等内容。
典型应用:
• 室内广告牌:商场、车站、电影院、地铁站等地方,用于动态显示广告内容。
• 信息发布系统:用于发布企业、学校、交通、公共场所等的实时信息。
• 创意显示:可以用在舞台、演唱会等场合,作为装饰性显示屏,展示实时画面或动态效果。
引脚接线设置,主要参考这个
【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
实验二百二十:P6全彩LED模组 16X32显示屏单元板 P6-RGB-16X32-8S室内全彩8扫电子屏(HX-P6-16X32-A)
项目三:P6全彩16X32单元板之使用 fillScreen() 彻底点亮整个屏幕
实验开源代码
/*
【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
实验二百二十:P6全彩LED模组 16X32显示屏单元板 P6-RGB-16X32-8S室内全彩8扫电子屏(HX-P6-16X32-A)
项目三:P6全彩16X32单元板之使用 fillScreen() 彻底点亮整个屏幕
*/
#include <ESP32-HUB75-MatrixPanel-I2S-DMA.h>
#include <Adafruit_GFX.h>
// 创建 LED 显示屏配置(适用于 16x32 面板)
HUB75_I2S_CFG mxconfig(32, 16, 1);
// 创建矩阵对象
MatrixPanel_I2S_DMA matrix(mxconfig);
void setup() {
// 设定 ESP32 与 LED 面板的连接引脚(HUB75 标准)
mxconfig.gpio.r1 = 25;
mxconfig.gpio.g1 = 26;
mxconfig.gpio.b1 = 27;
mxconfig.gpio.a = 23;
mxconfig.gpio.b = 19;
mxconfig.gpio.c = 5;
mxconfig.gpio.d = 17;
mxconfig.gpio.lat = 4;
mxconfig.gpio.oe = 15;
matrix.begin(); // 初始化 LED 显示屏
matrix.setBrightness8(128); // 设定亮度(范围 0~255,128 为中等亮度)
matrix.fillScreen(matrix.color565(255, 0, 0)); // **填充全红色,点亮整个屏幕**
}
void loop() {
// 保持亮屏状态,无需额外刷新
}
代码解读
这段代码使用 ESP32-HUB75-MatrixPanel-I2S-DMA 库来控制 P6 16x32 LED 显示屏,并点亮整个屏幕。它的核心功能如下:
1、初始化 LED 矩阵
配置 ESP32 的 GPIO 引脚,与 HUB75 显示屏连接。
调用 matrix.begin() 来启动 LED 面板。
2、设置亮度
matrix.setBrightness8(128); 设置 LED 面板的亮度(范围 0~255)。
3、填充整个屏幕
matrix.fillScreen(matrix.color565(255, 255, 255)); 让整个屏幕变成 白色。
你可以更改 RGB 颜色 来显示 红、绿、蓝。
4、保持亮屏
loop() 为空,屏幕保持亮起,不进行额外刷新。
这段代码能够确保你的 P6 16x32 LED 显示屏 正常点亮并显示颜色。
实验场景图