WS2811 Breakout · NEO_GRB 色序确认

U1301 RGB LED 排错记录:三个坑一次踩平

给这颗 RGB 灯模块写了个色序校色固件。固件写得很快,但上电实测踩了三个坑——USB 供电不足烧录失败、信号线插错脚灯不亮、补光灯抢电电压掉到 4.14V。修完确认:NEO_GRB 色序正确,红绿蓝白正常循环,以后放心用。

更新于 2026-08-12分类:显示与LEDSKU:U1301芯片:WS2811 Breakout库:Adafruit_NeoPixel引脚:D8开发板:Arduino UNO R3
Arduino 固件下载包含实物验证通过的 rgb_colorcheck.ino,可直接烧录。自动循环红绿蓝白,不需要串口输入命令。
下载 .ino 文件

一句话结论

U1301 RGB 灯模块接线 DI→D8,色序 NEO_GRB 正确,固件上电即自动循环红绿蓝白,发什么亮什么。

模块商品名写的是"WS2812 彩色灯模块",但实物丝印是 WS2811 Breakout。实测确认 Adafruit_NeoPixel 库用 NEO_GRB + NEO_KHZ800 参数,颜色完全正确,不需要改色序。

验证状态

✓RGB 灯点亮
✓色序 NEO_GRB
✓烧录通过
✓视频已发布

测试时间:2026-08-12 · Arduino UNO R3 · COM36 · 自动循环固件

接线

模块有两面针脚:输入侧(接 UNO)和输出侧(穿透接下一颗,本项目不需要)。只接输入侧的三根针:

模块输入侧→Arduino UNO备注
DI (Data In)→D8⚠ 不是 D9——实测踩过坑,插错灯不亮
5V→5VPOWER 排针上的 5V 脚
GND→GNDPOWER 排针上跟 5V 相邻的那个

⚠ 烧录时先拔掉灯模块——USB 供电只有 500mA,灯模块虽然功耗不大,但加上 bootloader 复位浪涌就超了,板子电压不稳会导致烧录握手失败。先拔灯→烧录→再接回灯。

Arduino 固件

固件是 自动循环版,不需要串口输入命令。上电即刻红→绿→蓝→白→灭→重复。

参数值说明
引脚D8⚠ 是 8,不是 9
LED 数量1单颗 WS2812/WS2811
色序NEO_GRB✅ 实测确认正确
速率NEO_KHZ800800kHz,实测可用
亮度40 / 255故意压暗,防拍照过曝
rgb_colorcheck.ino
/*
 * U1301 RGB / NeoPixel D8 auto test
 * 接线: DI → D8, 5V → 5V, GND → GND
 * 上电自动循环: 红 → 绿 → 蓝 → 白 → 灭 → 重复
 */

#include <Adafruit_NeoPixel.h>

const uint8_t LED_PIN = 8;
const uint16_t LED_COUNT = 1;
const uint8_t BRIGHTNESS = 40;

Adafruit_NeoPixel strip(LED_COUNT, LED_PIN, NEO_GRB + NEO_KHZ800);

void showColor(uint8_t r, uint8_t g, uint8_t b, unsigned long ms) {
  strip.clear();
  strip.setPixelColor(0, strip.Color(r, g, b));
  strip.show();
  digitalWrite(LED_BUILTIN, HIGH);
  delay(80);
  digitalWrite(LED_BUILTIN, LOW);
  delay(ms);
}

void setup() {
  pinMode(LED_BUILTIN, OUTPUT);
  strip.begin();
  strip.setBrightness(BRIGHTNESS);
  strip.clear();
  strip.show();
  delay(300);
}

void loop() {
  showColor(255, 0, 0, 900);     // red
  showColor(0, 255, 0, 900);     // green
  showColor(0, 0, 255, 900);     // blue
  showColor(255, 255, 255, 900); // white
  strip.clear();
  strip.show();
  delay(400);
}

完整源码下载见页面顶部下载区域。

三个踩坑

这条视频的核心内容就是三个真实排错记录——坑一个比一个隐蔽,都是实物测试时才暴露出来的。

①

USB 供电不足 → 烧录失败

编译通过,上传却一直报 programmer not responding / not in sync。关串口、换线、换口、切 Bootloader 全试了都不行。最后拔掉灯模块空板烧录——秒过。解法:先拔灯,烧录,再接回灯。

根因:USB 只有 500mA,灯模块 + bootloader 复位浪涌超了上限,板子电压不稳。

②

信号线插错脚 → 灯不亮

烧录成功,灯完全不亮。查了半天才发现杜邦线插到了 D9,固件输出脚是 D8(#define LED_PIN 8)。一根线插错,灯就不理你。排查硬件第一件事——看引脚号。

③

补光灯抢电 → 电压掉到 4.14V

拍灯的时候,灯在视频里看着是亮的,拍着拍着就不亮了。万用表一量:USB 口电压只有 4.14V(正常 5V)。拍摄那盏 USB 补光灯功耗大,跟 UNO 插在同一台电脑上把电压拉低了。解法:补光灯独立供电——手机充电头或充电宝。

✅ 三条踩坑全部定位清楚、解法明确。以后这颗灯怎么用都放心——接线 DI→D8,色序 NEO_GRB,烧录时拔灯、供电独立。

视频与发布

B站验证短片:2 分 03 秒,6 个场景(2 段实测录屏 + 4 段信息图/幻灯片),5 个章节,全面复盘三个排错过程。

片尾有完整资料汇总——固件、接线表、三坑排错步骤,看完可直接下载复现。

资料下载与参考

  • Arduino 固件:rgb_colorcheck.ino(页面顶部下载按钮,或项目文件夹 03_RGB色序校准\src\rgb_colorcheck\)
  • 视频源文件:见项目文件夹 03_RGB色序校准\视频脚本\U1301-RGB灯-排错记录.mp4
  • 完整交付清单:见项目文件夹 03_RGB色序校准\交付清单.md
  • SKU 资料:SKU素材库\RGB_WS2812\info.md

✅ 本页所有信息均为 2026-08-12 实测确认。色序 NEO_GRB 正确,三个踩坑全部定位清楚,无推测或待验证项。

返回首页 显示与LED 电位器 + OLED + SG90 联动