Example 14: RGB LED strip(WS2812B)
About 3 min
Example 14: RGB LED strip(WS2812B)
Synchronized Device Documentation
This page corresponds to the synchronized Chinese source. Commands, JSON examples, API paths, field names, and screenshots are kept aligned with the Chinese device-side source documentation.
What This Page Covers
- Overview
- Wiring
- JSON Configuration Example
- PeriphExec Linkage
- Notes
Source Reference
The detailed operational source is preserved below so implementation details stay exact while the English navigation, titles, and reading path remain available.
示例14:RGB彩灯(WS2812B)
实验概述
通过单线协议驱动 WS2812B(NeoPixel)RGB LED 灯珠,实现全彩色控制。FastBee 内置 NEO_PIXEL 外设类型(type: 45),支持设置颜色、亮度和灯珠数量。
硬件接线
| 开发板标识 | GPIO引脚 | 连接设备 |
|---|---|---|
| DATA | GPIO4 | WS2812B 数据引脚(DIN) |
WS2812B 供电建议使用 5V,数据线可直接接 3.3V GPIO(大多数 WS2812B 兼容)。
JSON 配置示例
{
"peripherals": [
{
"id": "ws2812b",
"name": "WS2812B彩灯",
"type": 45,
"enabled": false,
"pins": [4],
"params": {
"count": 8,
"brightness": 64
}
}
]
}参数说明
| 参数 | 说明 | 范围 |
|---|---|---|
| count | 灯珠数量 | 1~255 |
| brightness | 全局亮度 | 0~255 |
外设执行联动
场景1:设置单个灯珠颜色(平台触发)
功能:通过云平台指令设置第0号灯珠为红色
Web界面配置步骤
步骤1:创建规则
- 点击左侧菜单 外设配置 → 切换到 外设执行管理 标签
- 点击 新增规则 按钮
- 填写基础配置:
- 规则名称:
设置RGB颜色 - 上报数据:✅ 启用
- 启用:✅ 启用
- 规则名称:
步骤2:配置触发器
点击 添加触发 按钮
填写触发器配置:
字段 填写内容 说明 触发类型 选择 平台触发 接收云平台指令 操作符 选择 匹配模式 匹配指令 比较值 {"cmd":"color"}颜色控制指令
步骤3:配置动作
点击 添加动作 按钮
填写:
- 动作类型:选择 设置RGB
- 目标外设:选择
ws2812b - 灯珠索引:
0(第0号灯珠) - R值:
255 - G值:
0 - B值:
0
点击 保存 按钮
场景2:全部设置为同一颜色(平台触发)
功能:通过云平台指令将所有灯珠设置为绿色
Web界面配置步骤
- 创建规则,名称:
全部绿色 - 触发器配置:
- 触发类型:选择 平台触发
- 操作符:选择 匹配模式
- 比较值:
{"cmd":"all_green"}
- 动作配置:
- 动作类型:选择 填充RGB
- 目标外设:选择
ws2812b - R值:
0 - G值:
255 - B值:
0
- 点击 保存
RGB颜色常用值
| 颜色 | R | G | B | 说明 |
|---|---|---|---|---|
| 红色 | 255 | 0 | 0 | 纯红 |
| 绿色 | 0 | 255 | 0 | 纯绿 |
| 蓝色 | 0 | 0 | 255 | 纯蓝 |
| 白色 | 255 | 255 | 255 | 白色 |
| 黄色 | 255 | 255 | 0 | 黄 |
| 紫色 | 255 | 0 | 255 | 紫 |
| 青色 | 0 | 255 | 255 | 青 |
注意事项
- 电源:每颗 WS2812B 满亮度约 60mA,多颗灯珠需独立 5V 供电
- 电平:部分 WS2812B 需要 5V 逻辑电平,可加电平转换或在 DIN 串联 330Ω 电阻
- 时序敏感:WS2812B 对时序要求严格,建议使用 RMT 外设(ESP32 默认使用)
- 刷新率:灯珠越多刷新越慢,100 颗约 3ms
- 数据顺序:颜色顺序可能是 GRB 而非 RGB,取决于型号
