【麦昆试用】python编程(4)
<div class='showpostmsg'> 本帖最后由 dcexpert 于 2019-5-20 12:54 编辑麦昆上有4颗WS2812全彩色RGB LED,它使用P15控制。WS2812是一种串行控制的LED,它内部带有控制器,通过1个数据线传递控制命令,可以多个WS2812级联起来,用一个数据线就能控制多个WS2812。
在micropython中,控制WS2812需要使用到neopixel库,定义时需要两个参数,一个是控制引脚,另一个是WS2812的数量。
4个LED显示红绿蓝白,并循环旋转
import neopixel
np = neopixel.NeoPixel(pin15, 4)
np = (8, 0, 0)
np = (0, 8, 0)
np = (0, 0, 8)
np = (8, 8, 8)
while 1:
t= np
for i in range(3):
np = np
np = t
np.show()
sleep(500)
红绿蓝依次渐亮
import neopixel
np = neopixel.NeoPixel(pin15, 4)
n = 0
while 1:
r = g = b = 0
for i in range(4):
if n<16:r = 1
elif n<32:g = 1
else: b = 1
np = (r*n%16, g*n%16, b*n%16)
np.show()
n = (n + 1)%48
sleep(100)
红绿蓝依次渐亮,然后渐暗,效果比上面更好
import neopixel
np = neopixel.NeoPixel(pin15, 4)
n = 0
while 1:
r = g = b = 0
for i in range(4):
if n<16:r = 1
elif n<32:g = 1
else: b = 1
if (n%16)<9:m=n%16
else: m=16-n%16
np = (r*m%16, g*m%16, b*m%16)
np.show()
n = (n + 1)%48
sleep(100)
此内容由EEWORLD论坛网友dcexpert原创,如需转载或用于商业用途需征得作者同意并注明出处
</div><script> var loginstr = '<div class="locked">查看本帖全部内容,请<a href="javascript:;" style="color:#e60000" class="loginf">登录</a>或者<a href="https://bbs.eeworld.com.cn/member.php?mod=register_eeworld.php&action=wechat" style="color:#e60000" target="_blank">注册</a></div>';
if(parseInt(discuz_uid)==0){
(function($){
var postHeight = getTextHeight(400);
$(".showpostmsg").html($(".showpostmsg").html());
$(".showpostmsg").after(loginstr);
$(".showpostmsg").css({height:postHeight,overflow:"hidden"});
})(jQuery);
} </script><script type="text/javascript">(function(d,c){var a=d.createElement("script"),m=d.getElementsByTagName("script"),eewurl="//counter.eeworld.com.cn/pv/count/";a.src=eewurl+c;m.parentNode.insertBefore(a,m)})(document,523)</script>
页:
[1]