tonny点亮一盏ws2812循环变色
时间: 2023-07-24 07:14:13 浏览: 147
stm32控制WS2812B实例代码(旧-GPIO方式)
5星 · 资源好评率100%
要在Thonny中实现WS2812 LED灯的循环变色效果,你可以使用以下代码:
```python
import machine
import neopixel
import time
NUM_LEDS = 1
PIN = 4
np = neopixel.NeoPixel(machine.Pin(PIN), NUM_LEDS)
# 定义颜色列表
colors = [
(255, 0, 0), # 红色
(0, 255, 0), # 绿色
(0, 0, 255), # 蓝色
]
# 循环变色
while True:
for color in colors:
np[0] = color
np.write()
time.sleep(1)
```
在上述代码中,我们使用了`neopixel`库来控制WS2812 LED灯。首先,我们创建了一个`NeoPixel`对象,并指定引脚和LED数量。然后,我们定义了一个颜色列表`colors`,其中包含了三种颜色(红色、绿色和蓝色)。接下来,我们使用一个无限循环来遍历颜色列表,并将每个颜色依次设置到LED上,然后使用`write()`函数将颜色值发送到LED灯上。每个颜色的显示时间为1秒,通过`time.sleep(1)`函数实现延时。这样,LED就会不断循环显示不同的颜色。
请注意,在这个示例中,我们只使用了一个LED,因此将其索引设置为0。如果你使用多个LED,可以根据需要设置索引和颜色值。
上传并运行这段代码后,WS2812 LED灯将会循环显示红色、绿色和蓝色三种颜色。如果你希望停止循环,可以点击Thonny中的停止按钮或者按下键盘上的Ctrl+C组合键。
阅读全文