在Maix duino开发板上实现LED闪烁

文章目录
简单介绍
如果你还不知道如何点亮LED,请看:点亮LED
今天开始上手在开发板上运行程序了,学习点亮LED灯就像是学习编程语言的 H e l l o , w o r l d Hello, world Hello,world 。学会电亮一盏LED灯之后,我便尝试着自己实现了个LED闪烁 。
我当然不会满足于一个灯的闪烁 。我发现板子上有绿、红、蓝三个LED灯泡,它们的引脚分别是12,13,14 。我们知道三个灯泡的组合可以产生8种同的状态,那么,
如何实现八个状态轮流出现的闪灯?
看看下面这段代码,
注意是//的整除运算,而不是/,因为/运算得到的结果是小数 。写C++习惯了,这个问题导致我懵了好久 。
for i in range(8):print(i // 4 % 2, i // 2 % 2, i % 2)
让我们运行一下,
编程实现
这下就好办了,我们的灯泡是低电平有效(即0亮1灭),那么整体的实现代码如下,
from fpioa_manager import fmfrom Maix import GPIOio_led_gre = 12io_led_red = 13io_led_blu = 14fm.register(io_led_gre, fm.fpioa.GPIO0)fm.register(io_led_red, fm.fpioa.GPIO1)fm.register(io_led_blu, fm.fpioa.GPIO2)led_g = GPIO(GPIO.GPIO0, GPIO.OUT)led_r = GPIO(GPIO.GPIO1, GPIO.OUT)led_b = GPIO(GPIO.GPIO2, GPIO.OUT)for i in range(80):# 闪烁10轮led_g.value(i//4%2)led_r.value(i//2%2)led_b.value(i%2)for j in range(200000):# 用来消耗时间k = 1
效果展示
【在Maix duino开发板上实现LED闪烁】接下来让我们看看效果吧!

你也可以试试自己实现不同的效果 。例如,改变灯泡亮起的顺序,让它们按照格雷码的顺序闪烁 。