回到首页 返回首页
回到顶部 回到顶部
返回上一页 返回上一页

【花雕学编程】Arduino动手做(232)---ESP32-S3-CAM使用WS2812FX库最简驱动WS2812B十五位灯环 简单

头像 驴友花雕 2024.09.28 32 0

000-0.jpg
09-.jpg
58-.jpg

WS2812B是一种智能控制LED光源,广泛应用于各种灯光装置中。它的控制电路和RGB芯片集成在一个5050封装中,具有高亮度、低功耗和长寿命等优点。

WS2812B十五位灯环是由15个WS2812B LED灯珠串联组成的环形灯带。每个灯珠都可以独立控制颜色和亮度,通过单一的数据线进行通信。以下是一些关键特点:
1、高可编程性:每个LED可以独立设置颜色和亮度,实现丰富的动态效果和颜色变化。
2、简单的控制接口:使用单一数据线进行通信,控制每个LED的颜色和亮度。
3、低功耗:采用高效的LED驱动技术,适合电池供电的应用。
4、灵活应用:广泛应用于室内装饰、灯光艺术、电子产品原型设计等领域。

使用方法:
1、硬件连接:将灯环的VCC连接到5V电源,GND连接到地,DIN连接到控制器的数据输出端。
2、软件控制:可以使用Arduino等微控制器,通过库文件(如Adafruit_NeoPixel或FastLED)编写代码来控制灯环的颜色和效果。
这是WS2812B十五位灯环。

 

56.jpg

搜索并安装二个库
 

57.jpg
58.jpg

  【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
  实验二百三十二:ESP32-S3 WROOM N16R8 CAM开发板WiFi+蓝牙模块
  OV2640/5640摄像头模组
 {花雕动手做}项目之十L六:ESP32-S3-CAM使用WS2812FX库最简驱动WS2812B十五位灯环

实验开源代码

代码
/*
  【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
   实验二百三十二:ESP32-S3 WROOM N16R8 CAM开发板WiFi+蓝牙模块
   OV2640/5640摄像头模组
  {花雕动手做}项目之十L六:ESP32-S3-CAM使用WS2812FX库最简驱动WS2812B十五位灯环
*/

#include <WS2812FX.h> // 导入WS2812FX库

#define LED_COUNT 15 // 定义WS2812B LED的数量
#define LED_PIN  48  // 定义WS2812B LED连接的引脚

// 创建WS2812FX对象,参数为LED数量、引脚和LED类型
WS2812FX ws2812fx = WS2812FX(LED_COUNT, LED_PIN, NEO_GRB + NEO_KHZ800);

void setup() {
  ws2812fx.init(); // 初始化WS2812FX库
  ws2812fx.setBrightness(100); // 设置亮度(0-255),可以控制总电流(重要!)
  ws2812fx.setSpeed(200); // 设置动画速度
  ws2812fx.setMode(FX_MODE_FIREWORKS_RANDOM); // 设置动画模式(内置63种模式)
  ws2812fx.start(); // 启动动画
}

void loop() {
  ws2812fx.service(); // 循环运行动画
}

代码提示:
1、电源管理:确保你的电源能够提供足够的电流。每个WS2812B LED在全亮时大约需要60mA,15个LED大约需要900mA。
2、动画模式:WS2812FX库提供了多种动画模式,你可以尝试不同的模式来找到最适合你的效果。例如:

```cpp
ws2812fx.setMode(FX_MODE_RAINBOW_CYCLE); // 彩虹循环模式
ws2812fx.setMode(FX_MODE_THEATER_CHASE); // 影院追逐模式
```

3、颜色设置:你可以设置特定的颜色来创建自定义效果。例如:

```cpp
ws2812fx.setColor(0xFF0000); // 设置为红色
ws2812fx.setColor(0x00FF00); // 设置为绿色
ws2812fx.setColor(0x0000FF); // 设置为蓝色
```

4、调试和测试:在实际应用中,调试和测试是非常重要的。你可以使用串口监视器来输出一些调试信息,帮助你了解代码的运行情况。

 

实验场景图

 

59.jpg
60.jpg

实验记录视频

评论

user-avatar
icon 他的勋章
    展开更多