【MicroPython编程-ESP32篇】-WS2812B全彩LED驱动
WS2812B全彩LED驱动
文章目录
- WS2812B全彩LED驱动
-
- 1、WS2812B介绍
- 2、软件准备
- 3、硬件准备与接线
- 4、代码实现
-
- 4.1 简单控制WS2812B实现
- 4.2 酷炫效果实现
-
- 4.2.1 清空所有像素
- 4.2.2 设置所有像素颜色相同
- 4.4.3 弹跳效果
- 4.4.4 循环效果
- 4.4.5 移动彩虹效果
- 4.4.6 主程序实现
在本文中,将介绍如何将WS2812B全彩RGBLED模块与 ESP32一起使用,并通过MicroPython 来控制WS2812B的显示效果。
1、WS2812B介绍
WS2812/WS2812B LED 使用 24 位来表示绿色、红色和蓝色值。

WS2812采用单线通信的设计,通信协议为非归零编码,每个LED需要24个bit的数据,数据依次经过串联的LED时,第一个LED截取数据开头的24bit,并将剩下的数据流传给下一个LED,以此类推。数据线上的位由高脉冲编码,然后是低脉冲。时序如下:

WS2812支持高速数据传输并且其数据传输时序与SPI的通信时序类似,因此可以使用STM32的SPI外设模拟WS2812的通信时序。
在前面的文章中,对WS2812做了详细的介绍,请参考:
- Ardunio开发实例-WS2812B独立寻址LED调色调光
