汤果 发表于 2020-1-14 20:36:08

[树莓派]13-Python版流水灯

上一节我们体验了人工智能之人脸识别,这一节我们试着用 Python 代码编写一个流水灯程序。

什么是流水灯呢?流水灯就像水流从上往下依次亮起和熄灭。举个简单的例子,四个灯的流水灯就是 1 号灯亮后熄灭然后 2 号灯亮,2 号灯灭后 3 号灯亮,3 号灯灭后 4 号灯亮。

我们要用到的器材就是 4 个 LED,分别接到扩展板的 5、6、12、16 号接口。

![连线图](data/attachment/album/202001/14/195559nkbryg8ylglsoh7z.jpg)

具体实现的代码如下:

!(data/attachment/album/202001/14/201806bcse8esx3wl674l1.png)

使用模块之前需要导入相应的模块。RPi.GPIO 模块可以对树莓派的 GPIO 端口进行控制。注意:使用 as 重命名模块后,以后调用时也必须使用新的名字。time 模块提供了时间管理。

因为我们的四个 LED 所在的接口号没有规律,这最适合用列表来存储和遍历访问了。我们做一个双向流水灯,因此 pin 列表需要写入来回的接口号。

GPIO.setwarnings(False)                     #模块内置功能,一般要加上,不然会提示警告
GPIO.setmode(GPIO.BCM)               #设置 GPIO 引脚为 BCM 编码模式
GPIO.setup(LED, GPIO.OUT)                #设置该端口为输出模式

接下来便通过 for 循环来依次访问列表中的每一个引脚,依次点亮每一盏灯,0.2 秒后熄灭,再点亮下一盏灯。

编写好的程序默认会用 Thonny 打开。点击顶部“Run”按钮即可运行。运行效果如下:

![效果](data/attachment/album/202001/14/202858g26zfwd2tdjtfgpt.gif)

看上去 Python 硬件编程与 Arduino 的 C 编程有点类似,都需要引入库,做初始化声明,再编写主程序。

小结:古德微树莓派编程平台不仅有适合中小学生的图形化编程,也有面向高年级学生的 Python 编程,而且兼容硬件种类多,与人工智能、物联网联系紧密,非常适合一线中小学校教学使用。

wwwdelphi 发表于 2020-1-15 09:23:44

学习,谢谢分享!

DFrJ5KYVQaH 发表于 2020-1-15 15:07:03

学习学习

gada888 发表于 2020-1-25 10:21:51

记号下

kylinpoet 发表于 2020-2-18 10:56:17

这个好,必须支持。

gray6666 发表于 2020-4-7 21:43:41

巧了,最近我也在写树莓派的玩法。{:6_213:}
页: [1]
查看完整版本: [树莓派]13-Python版流水灯