当前位置:网站首页>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);
}
}
边栏推荐
猜你喜欢
Line the last time the JVM FullGC make didn't sleep all night, collapse
余弦距离介绍
百利药业IPO过会:扣非后年亏1.5亿 奥博资本是股东
虚拟机vmware设置桥接模式上网
ctfshow php features
危化企业双重预防机制数字化建设进入全面实施阶段
一种能有效缓解环境噪声对音频质量干扰的方案
Interview Blitz: What Are Sticky Packs and Half Packs?How to deal with it?
友宏医疗与Actxa签署Pre-M Diabetes TM 战略合作协议
微导纳米IPO过会:年营收4.28亿 君联与高瓴是股东
随机推荐
ECCV2022 | 用于视频问题回答的视频图Transformer
友宏医疗与Actxa签署Pre-M Diabetes TM 战略合作协议
docker mysql 容器中执行mysql脚本文件并解决乱码
Statistical machine learning 】 【 linear regression model
MySQL master-slave, 6 minutes you master!
【leetcode】剑指 Offer II 009. 乘积小于 K 的子数组(滑动窗口、双指针)
Execute the mysql script file in the docker mysql container and solve the garbled characters
(十六)51单片机——红外遥控
小马智行起诉擎天智卡:索赔6000万 彭军称要斗争到底
Pytorch GPU 训练环境搭建
CS kill-free pose
MySQL 主从,6 分钟带你掌握!
LeetCode 952. Calculate Maximum Component Size by Common Factor
PHP according to the longitude and latitude calculated distance two points
建模该从哪一步开始?给你分析,给零基础的你一些学习建议
【leetcode】剑指 Offer II 008. 和大于等于 target 的最短子数组(滑动窗口,双指针)
Unity gets the actual coordinates of the ui on the screen under the canvas
子结点的数量(2)
「学习笔记」高斯消元
redis常用命令,HSET,XADD,XREAD,DEL等