WS2812炫彩灯开发手册
ws2812 LED芯片API
概要
小龟小车内置了针对WS2812系列LED芯片的简化访问API,大家可以通过下面这些API快速的操控WS2812 LED全彩灯带。注意:由于WS2812灯珠的功耗很大,过长的灯带需要给小车加外接电源才行!
固件版本需要大于 V200106
注意:本API用到的RGB颜色为标准的8位红绿蓝三原色组成的长整型值,如0x112233代表红色为0x11、绿色为0x22、蓝色为0x33。
WS2812 API
- car.ws2812.open(pin:str)->bool
- 在指定的小车扩展管脚上开启WS2812信号输出功能。 范例:
- pin: 扩展管脚的名称
#打开A1管脚上的WS2812灯带的信号输出功能 car.ws2812.open("A1");
- 参数:
- car.ws2812.close(pin:str)->bool
- 关闭指定扩展管脚上的WS2812信号输出功能。 范例:
- pin: 扩展管脚的名称
#关闭A1管脚上的WS2812灯带信号输出功能 car.ws2812.close("A1");
- 参数:
- car.ws2812.write(pin:str, colors:list)->bool
- 往指定管脚上输出色彩信号。如果指定的管脚没有执行过前面的open函数,管脚本身也是闲置的话,系统会自动开启该管脚的ws2812输出功能。 范例:
- pin: 扩展管脚的名称
- colors: 色彩列表,系统会自动根据列表次序把颜色输给灯带上对应次序的灯珠
#往接在A1管脚上的WS2812灯带信号依次输出红绿蓝三盏灯 #WS2812灯带的RGB排序是Red, Green, Blue car.ws2812.write("A1", [0x00FF00, 0xFF0000, 0x0000FF]);
- 参数:
- car.ws2812.rgb(red:int, green:int, blue:int)->bool
- 根据红绿蓝三个单色数值合成一个RGB 32位整数供前面的write函数使用。 范例:
- red: 红色数值 0到255
- green: 绿色数值 0到255
- blue: 蓝色数值 0到255
#往接在A1管脚上的WS2812灯带信号依次输出红绿蓝三盏灯 from car import ws2812 ws2812.write("A1", [ws2812.rgb(255,0,0), ws2812.rgb(0,255,0), ws2812.rgb(0,0,255)]);
- 参数: