【掌控】mpythonX:玩灯带也简单

2019-01-111.5万
精华项目
AI 快速预览详细 收起
本文介绍了如何使用mpythonX和DF的bit扩展板来控制灯带,实现各种效果。从点亮灯带到流水灯、渐变色,通过代码学习,让孩子在实践中掌握编程基础。文中提供了具体的代码示例,如使用while和for循环实现流水灯效果。此外,还展示了如何定义彩虹灯效,并提供了旋转的彩虹代码参考链接。
X系列

X灯带

【掌控】mpythonX:玩灯带也简单图7

【目标】

玩灯带,做些简单效果本帖子中,用了DF的bit扩展板,灯带接13口

【掌控】mpythonX:玩灯带也简单图8

哇呀呀,用图形化,超级简单,不过学学代码,也不错啊。

1、测试点亮灯带

【掌控】mpythonX:玩灯带也简单图1

经测试0、1不行,下个版本会修正。


2、点亮灯带

【掌控】mpythonX:玩灯带也简单图2

3、rgb调色

【掌控】mpythonX:玩灯带也简单图3

4、点亮N个灯,第一个编号0,第10个灯编号9

【掌控】mpythonX:玩灯带也简单图4

5、流水灯

主要用while 和for循环

【掌控】mpythonX:玩灯带也简单图5

【掌控】mpythonX:玩灯带也简单图6

6、渐变色

【掌控】mpythonX:玩灯带也简单图9

其实能玩很多效果的,上面就只是抛个砖头了。


还有,少个彩虹灯效。
【掌控】mpythonX:玩灯带也简单图10

还要有移动的彩虹。

希望后面的版本能加上。


可以先用代码玩越来。


[mw_shl_code=python,true]from mpython import *
import machine
import neopixel

np= neopixel.NeoPixel(machine.Pin(18), n=10,bpp=3,timing=1)
# 输出引脚 n LED灯的个数 bpp:3:默认为3元组RGB timing:默认等于0,为400KHz速率;等于1,为800KHz速率

# 定义彩虹灯效
def np_rainbow(np, num, bright=32, offset = 0):
    rgb = ((255,0,0), (255,127,0), (255,255,0), (0,255,0), (0,255,255),(0,0,255),(136,0,255), (255,0,0))
    for i in range(num):
        t = 7*i/num
        t0 = int(t)
        r = round((rgb[t0][0] + (t-t0)*(rgb[t0+1][0]-rgb[t0][0]))*bright)>>8
        g = round((rgb[t0][1] + (t-t0)*(rgb[t0+1][1]-rgb[t0][1]))*bright)>>8
        b = round((rgb[t0][2] + (t-t0)*(rgb[t0+1][2]-rgb[t0][2]))*bright)>>8
        np[(i+offset)%num] = (r, g, b)

np_rainbow(np, 10, bright=255, offset=0) # 设置彩虹条的长度、亮度、偏移量等参数
np.write()  # 执行数据写入[/mw_shl_code]

旋转的彩虹代码参考:
【掌控】mpython_29…掌控WS2812灯带&彩虹灯效

创作许可协议

本项目采用 None(不开放任何权利,保留所有权利) 进行许可。

评论(9)
那齐士
那齐士
请问一下这个图形编程界面是mixly吗?这个可以用Romeo来实现吗
hlex
hlex
还是在板载(RGB)上玩玩把:))
hlex
hlex
这个扩展板所有的引脚都能用吗?我用小喵科技的扩展也点不亮
rzyzzxw
rzyzzxw
作者
回复hlex
灯带是部分引脚才能驱动的。帖子里有提到。每一个硬件都有自己特点,所以了解要有个过程。
hlex
hlex
我用DF另一款bit扩展板,似乎只点亮一点点,感觉电压不够还是怎么回事
rzyzzxw
rzyzzxw
作者
回复hlex
是的。供电不足。
hlex
hlex
扩展哪里买
rzyzzxw
rzyzzxw
作者
回复hlex
风痕
风痕
厉害
gada888
gada888
漂亮
ZZ小海鸥
ZZ小海鸥
赞,漂亮
rzegkly
rzegkly
- 没有更多了 -