项目简介
本项目在ESP32设备上集成了Web服务器和控制器应用,用户可借助智能手机、平板电脑或桌面PC控制LED灯的行为。原项目能随机改变颜色并定期闪烁LED以模拟火花或闪电效果,添加Web服务器后,用户能更便捷地控制LED灯的颜色、闪烁次数等。
项目的主要特性和功能
- Web服务器控制:可通过Web服务器API控制LED灯行为。
- 多平台支持:支持通过桌面浏览器和移动设备控制LED灯。
- 随机模式:ESP32设备能随机选色展示,模拟随机变化效果。
- 闪电模拟:利用白色LED随机闪烁模拟闪电效果。
- 颜色控制:支持用API命令设置LED灯特定颜色。
- 闪烁控制:支持设置LED灯的闪烁次数和颜色。
安装使用步骤
1. 配置Wi-Fi设置
在项目里配置Wi-Fi网络的SSID和密码。找到文件constants.h.rename
,重命名为constants.h
,接着在Arduino IDE中打开该文件。
```c
define WIFI_SSID "your_network_name"
define WIFI_PASSWORD "your_password"
``
把
your_network_name和
your_password`替换成你的Wi-Fi网络名称和密码。
2. 配置服务器名称
项目使用ESPmDNS库为Web服务器注册友好名称。默认服务器名称是pumpkin.local
,若想使用其他名称,可在代码中修改HOSTNAME
的值。
```c
define HOSTNAME "pumpkin"
```
3. 编译和上传代码
在Arduino IDE中编译代码,并将其上传到ESP32设备。
4. 访问Web服务器
上传代码后,打开浏览器并输入pumpkin.local
(或自定义的服务器名称)来访问Web服务器,通过浏览器控制LED灯行为。
5. 使用控制应用
可使用提供的Web应用或移动应用控制LED灯。Web应用通过浏览器访问,移动应用需要Flutter SDK和移动开发经验。
API介绍
Web服务器通过以下API命令接收并处理信息:
| 方法 | 描述 |
| -------------- | ------------------------------------------ |
| /color:#
| 将所有NeoPixel灯设置为特定颜色。命令接受一个参数,即所选颜色的数组索引。例如,要将所有LED设置为紫色("Purple"),命令是color:3
,因为紫色在数组中的索引为3(数组索引从0开始计数)。若要设置蓝色("Blue")灯,命令为color:0
。 |
| /flash:#:#
| 使LED矩阵以特定的颜色闪烁指定的次数和时间长度。例如,将LED矩阵以蓝色闪烁三次的命令是flash:0:3
。 |
| /lightning
| 使LED矩阵以白色随机闪烁以模拟闪电或内部电火花效果。该命令随机生成LED矩阵的闪烁次数和时间长度。 |
| /off
| 关闭LED矩阵(将所有NeoPixel灯设置为CRGB::Black
)。 |
| /random
| 启动随机模式,其中ESP32设备会从数组中随机选择颜色并在几秒钟内展示选中的颜色之后切换另一随机选择的颜色进入新一轮的操作周期。 |
通过这些API命令,可灵活控制LED灯的行为,实现各种视觉效果。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】