一、esp8266/32 炫彩LED氛围灯(Http版本)
- 作者:pengqiangsheng
- 说明:基于太极创客智能LED改进而来,适应 esp8266/32 系列。
- 技术栈:Http + FastLed
- 硬件需要:esp8266/esp32开发板 + ws2812灯带 + 5v开关电源
- 注意事项:供电一定要足够, 灯带需要单独供电。电量计算:一颗灯珠0.3w,30颗灯珠需要 30 * 0.3w = 9w,因此带动30颗灯珠的灯带需要一个5v 2A的开关电源。
- 推荐网站:太极创客 http://www.taichi-maker.com/
- 创建时间:05/10/2021
二、介绍
- esp8266/32智能LED(Http版本)是一款可用APP/PC/Web页面等多种方式通过Http协议进行无线控制的智能光带。
- 光带的颜色,亮度,开关,动态色彩,工作模式调整等均可以使用手机应用通过WIFI进行无线遥控。
- 光带配有多种工作模式,可以静态单色点亮您所喜爱的色彩,也可以通过动态彩色的模式为您的生活增添欢乐气氛!
三、初次使用必看
3.1目录结构
- esp32_DazzleLED // 32选这个进入烧写
- esp8266_DazzleLED // 8266选这个进入烧写
- img // 示例图片
本项目烧写到esp32/8266后直接访问获取到的ip即可:
3.2主界面
3.3对灯带进行操作
移动端日志点击右下角的vconsole
; PC端直接按F12
四、指令说明:
字符 | 说明 | 参数范围 | 说明 |
---|---|---|---|
a | 点亮所有LED为统一颜色色调 | 0-255 | 设置色调 |
b | 设置亮度 | 0-255 | |
c | 关闭光带 | ||
d | 设置延迟参数 | 0-255 | 常用数值10 |
e | 上调/下调动态模式 | 0/1 | 上调 = 0, 下调 = 1. |
f | 设置色盘 | 0-255 | 只对部分动态特效有效果 |
g | 光点闪烁 | 打开/关闭光点闪烁 | |
h | 显示可用指令列表 | ||
i | 色盘色调设置 | 0-255 | 将色盘色彩设置为靠近色调数值的颜色 |
l | 设置光带灯珠数量并存储于EEPROM | 1-255 | |
m | 设置显示模式 | 0-255 | 设置动态色彩模式:实际只有38种:1-38, 详见strobe_mode函数 |
n | 设置光亮方向 | 有些动态模式如 Matrix 和 one_sin可以设置光亮方向 | |
p | 工作模式 | 0-2 | 0:固定模式 1:顺序模式 2:随机模式 |
q | 获取版本号 | ||
r | 报告当前系统主要参数状态 | ||
t | 设置色盘模式 | 0-3 | 调整色盘模式 0=固定, 1=相似, 2=随机 |
u | 每种动态色彩播放时间 | 1-255 | 1秒 - 255秒 |
w | 将当前动态模式写入EEPROM |
4.1指令示例:
/cmd/m/arg/5
- 显示第5种动态效果(此程序定义了多种动态效果可固定显示也可以顺序轮流显示)/cmd/a/arg/80/
- 将所有光带设置为相同颜色并且显示, 色调为80。(饱和度为255,亮度有用户自定义亮度决定。)/cmd/p/arg/1
- 使用第1种工作模式。智能光带设有3种工作模式。- 模式1:固定模式,即固定显示用户设定的LED颜色或者动态效果。
- 模式2:顺序播放模式,在这种工作模式下LED将顺序播放动态效果。
- 模式3:随机播放模式,在这种工作模式下LED将随机播放动态效果。
4.2开始使用
直接在webApp上设置相应指令即可。
4.3高级玩法
可以自己搭建页面,通过路由方式调用相应功能
4.4API说明
调用接口为:/cmd/指令/arg/参数
,指令和参数在指令说明有。
例子 192.168.1.7/cmd/a/arg/255
: 设置色调为255
web App界面所缺少的功能,通过路由方式获取:
/cmd/w/arg/0
: 将配置信息写入eeprom/cmd/r/arg/0
: 获取设备主要参数状态/cmd/q/arg/0
: 获取版本号/cmd/h/arg/0
: 获取帮助文档
五、版权说明
本项目的LED灯的主要代码由太极创客的智能LED改进而来,其余例如webServer及前端webApp等为本人一手编写,改进的目的就是为了适应 esp8266/32 系列,仅供学习交流使用。如果有任何问题请留下issue。
六、固件包
目前只有esp32的智能配网固件,下载地址:esp32_DazzleLED.ino.esp32.bin
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。