当前位置:网站首页>ESP8266-Arduino编程实例-WS2812驱动
ESP8266-Arduino编程实例-WS2812驱动
2022-08-03 19:51:00 【视觉&物联智能】
WS2812驱动
1、WS2812介绍
WS2812系列是控制电路和RGB芯片集成在5050个元件封装内的智能控制LED光源。它内部包括智能数字端口数据锁存器和信号整形放大驱动电路。有效保证像素点光色高度一致。
数据传输协议采用单 NZR 通信方式。像素上电复位后,DIN 口接收控制器的数据,第一个像素采集初始 24 位数据,然后发送到内部数据锁存器,其他数据通过内部信号整形放大电路整形后发送到下一个级联像素通过 DO 端口。
每个像素传输后,信号减少24bit。像素采用自动整形传输技术,使得像素级联数不受信号传输的限制,只取决于信号传输的速度。 LED具有驱动电压低、环保节能、亮度高、散射角大、一致性好、功耗低、寿命长等优点。
在前面的文章中,对WS2812做了了详细的介绍,请参考:
- Ardunio开发实例-WS2812B独立寻址LED调色调光
- Arduino与Proteus仿真实例-WS2812-RGB-LED灯带酷炫效果仿真
- Arduino与Proteus仿真实例-WS2812-RGB-LED点阵(8x8)驱动仿真
- ESP32-IDF开发实例-传感器模块编程-WS2812
2、硬件准备
- ESP8266 NodeMCU开发板一块
- WS2812模块(或灯带)一个/条
- 面板板一个
- 杜邦线若干
- 数据线一条
硬件接线如下:

3、软件准备
- Arduino IDE或VSCode + PlatformIO
在前面的文章中,对如何搭建ESP8266开发环境做了详细的介绍,请参考:
ESP8266 NodeMCU的引脚介绍在前面的文章中做了详细的介绍,请参考:
4、代码实现
本次使用WS2812驱动库如下:
- https://github.com/adafruit/Adafruit_NeoPixel
1)导入依赖库文件
#include <Adafruit_NeoPixel.h>
// WS2812数据引脚
#define PIN D2
// WS2812数量
#define NUMPIXELS 1
// WS2812驱动对象
Adafruit_NeoPixel pixels = Adafruit_NeoPixel(1, PIN, NEO_GRB + NEO_KHZ800);
2)设备初始化
void setup() {
// 启动WS2812
pixels.begin();
}
3)驱动数据传输及显示效果
void loop() {
// 延时
int delayval = 500;
// 对于一组 NeoPixel,第一个 NeoPixel 为 0,第二个为 1,一直到像素数减一
for(int i=0;i<NUMPIXELS;i++){
// pixel.Color 采用 RGB 值,从 0,0,0 到 255,255,255
pixels.setPixelColor(i, pixels.Color(0,255,0));
// 显示
pixels.show();
delay(delayval);
pixels.setPixelColor(i, pixels.Color(255,0,0));
pixels.show();
delay(delayval);
pixels.setPixelColor(i, pixels.Color(0,0,255));
pixels.show();
delay(delayval);
}
}
边栏推荐
- JWT详解
- 622 设计循环队列——Leetcode天天刷【循环队列,数组模拟,双指针】(2022.8.2)
- ECCV2022 | 用于视频问题回答的视频图Transformer
- 149. The largest number on a straight line, and check the set
- Interview Blitz: What Are Sticky Packs and Half Packs?How to deal with it?
- 花 30 美金请 AI 画家弄了个 logo,网友:画得非常好,下次别画了!
- 力扣刷题之数组序号计算(每日一题7/28)
- 使用 ReportLab 绘制 PDF
- ThreadLocal详解
- In-depth understanding of JVM-memory structure
猜你喜欢
随机推荐
力扣刷题之数组序号计算(每日一题7/28)
JMeter笔记5 |Badboy使用和录制
docker mysql 容器中执行mysql脚本文件并解决乱码
Postgresql snapshot optimization Globalvis new system analysis (performance greatly enhanced)
Postgresql source code (64) Query execution - data structure and execution process before submodule Executor (2) execution
开源生态研究与实践| ChinaOSC
力扣刷题之合并两个有序数组
【leetcode】剑指 Offer II 008. 和大于等于 target 的最短子数组(滑动窗口,双指针)
redis常用命令,HSET,XADD,XREAD,DEL等
盘点在线帮助中心对企业能够起到的作用
简易电子琴设计(c语言)
In-depth understanding of JVM-memory structure
Matlab论文插图绘制模板第42期—气泡矩阵图(相关系数矩阵图)
利用net-snmp的库实现snmpget,snmpset
List类的超详细解析!(超2w+字)
危化企业双重预防机制数字化建设进入全面实施阶段
Anaconda virtual environment migration
Handler source code analysis
百利药业IPO过会:扣非后年亏1.5亿 奥博资本是股东
Shell programming loop statement









