neopixel
— 控制 WS2812 / NeoPixel LED¶
此模块提供了对 WS2818 / NeoPixel LED 的驱动程序。
备注
此模块仅默认包含在 ESP8266、ESP32 和 RP2 移植版本中。在 STM32 / Pyboard 和其他移植版本上,您可以使用 mip 安装 neopixel
包,或者您可以直接从 micropython-lib 下载模块并将其复制到文件系统中。
NeoPixel 类¶
此类存储连接到引脚的 WS2812 LED 条的像素数据。应用程序应设置像素数据,然后在准备好更新条时调用 NeoPixel.write()
。
例如:
import neopixel
# 32 LED strip connected to X8.
p = machine.Pin.board.X8
n = neopixel.NeoPixel(p, 32)
# Draw a red gradient.
for i in range(32):
n[i] = (i * 8, 0, 0)
# Update the strip.
n.write()
构造函数¶
- class neopixel.NeoPixel(pin, n, *, bpp=3, timing=1)¶
构造一个 NeoPixel 对象。参数为:
pin 是一个 machine.Pin 实例。
n 是条中 LED 的数量。
bpp 是 RGB LED 为 3,RGBW LED 为 4。
timing 为 0 表示 400KHz,1 表示 800KHz 的 LED(大多数是 800KHz)。
像素访问方法¶
- NeoPixel.fill(pixel)¶
将所有像素的值设置为指定的 pixel 值(即 RGB/RGBW 元组)。
- NeoPixel.__len__()¶
返回条中LED的数量。
- NeoPixel.__setitem__(index, val)¶
将 index 处的像素设置为值,这个值是一个 RGB/RGBW 元组。
- NeoPixel.__getitem__(index)¶
返回 index 处的像素作为 RGB/RGBW 元组。
输出方法¶
- NeoPixel.write()¶
将当前像素数据写入条中。