Scope
这页适合哪些规格
根据本地产品表,MAX7219 相关规格较多,先按用途合并整理。后面如果某个 SKU 有专用图片、不同方向或特殊代码,再单独拆页。
| SKU / 编码 | 规格 | 说明 |
|---|---|---|
| H54 | 1 位红色 MAX7219 SMD 模块 | 客户常用入门点阵模块 |
| B203 | 直线 4 位 7219 红色 | 表格备注 FC-16,方向仍以实物为准 |
| K2 / K102 | 4 合一 MAX7219 黄绿光 / 蓝光 | 常见 8x32 点阵,适合滚动文字 |
| O53 | MAX7219 8 位数码管显示模块 | 适合时钟、计数、温度显示 |
| O30 / B504 | 8x8 点阵 DIY 套件 | 焊接方向和点阵型号需看实物 |
| C102 / S0406 / M710 / S1104 / K104 | 2/4/8/16 位点阵规格 | 级联数量和方向待按批次确认 |
Wiring
Arduino / ESP32 通用接线
MAX7219 不是 I2C,也不是 UART;模块常见接口是 VCC、GND、DIN、CS/LOAD、CLK、DOUT。
| MAX7219 | Arduino UNO/Nano | ESP32 常用 |
|---|---|---|
| VCC | 5V | 5V / VIN |
| GND | GND | GND |
| DIN | D11 | GPIO23 |
| CS / LOAD | D10 | GPIO5 |
| CLK | D13 | GPIO18 |
| DOUT | 接下一块 DIN | 接下一块 DIN |
如果只亮一部分或文字方向不对,先检查 IN/OUT 方向、模块数量和库里的硬件类型设置。
Arduino Code
LedControl 入门测试代码
这段适合先确认单块 MAX7219 能不能点亮。UNO/Nano 默认 D11=DIN、D10=CS、D13=CLK;ESP32 需要把引脚改为 23、5、18。
#include <LedControl.h>
// LedControl(dataPin, clkPin, csPin, numDevices)
// Arduino UNO/Nano: DIN=D11, CLK=D13, CS=D10
LedControl lc = LedControl(11, 13, 10, 1);
void setup() {
lc.shutdown(0, false); // 退出省电模式
lc.setIntensity(0, 5); // 亮度 0~15
lc.clearDisplay(0);
}
void loop() {
for (int row = 0; row < 8; row++) {
lc.setRow(0, row, B11111111);
delay(120);
lc.setRow(0, row, B00000000);
}
for (int col = 0; col < 8; col++) {
lc.setColumn(0, col, B11111111);
delay(120);
lc.setColumn(0, col, B00000000);
}
}
MD_MAX72XX
4 合一 / 8x32 点阵滚动文字建议
4 合一点阵常见用 MD_MAX72XX 或 MD_Parola。很多“代码不能通用”的原因,不是芯片不同,而是硬件方向、模块数量和库版本设置不同。
#include <MD_MAX72xx.h>
#include <SPI.h>
#define HARDWARE_TYPE MD_MAX72XX::FC16_HW
#define MAX_DEVICES 4
#define CS_PIN 10
MD_MAX72XX mx = MD_MAX72XX(HARDWARE_TYPE, CS_PIN, MAX_DEVICES);
void setup() {
mx.begin();
mx.control(MD_MAX72XX::INTENSITY, 3);
mx.clear();
}
void loop() {
for (uint8_t col = 0; col < MAX_DEVICES * 8; col++) {
mx.setColumn(col, 0xFF);
delay(60);
mx.setColumn(col, 0x00);
}
}
Troubleshooting
常见问题排查
上电全亮或乱亮
先确认 VCC/GND 是否接反、5V 是否稳定、CS/CLK/DIN 是否接对。MAX7219 上电后需要程序初始化,未初始化时显示状态可能不固定。
点阵方向反了、文字倒了
常见原因是模块硬件类型不同。MD_MAX72XX 里可以试 `FC16_HW`、`GENERIC_HW`、`PAROLA_HW` 等类型,直到方向正确。
多块级联后只亮第一块
检查 DOUT 是否接下一块 DIN,库里的模块数量是否设置正确,例如 4 合一要设 `MAX_DEVICES 4`。
8 位数码管和点阵代码是否通用
底层 MAX7219 通信类似,但显示对象不同。8 位数码管适合用 `setDigit()` / `setChar()`,点阵适合用 `setRow()`、`setColumn()` 或 MD_MAX72XX 图形库。
ESP32 能不能直接接
ESP32 可用 SPI 引脚 GPIO23/GPIO18/GPIO5。模块供电一般仍接 5V;3.3V 控制信号多数模块能识别,但长线、多模块或干扰环境建议实测,必要时加电平转换。
Customer Reply
淘宝客户简短话术
References