美文网首页
树莓派用gpiozero库控制LED灯

树莓派用gpiozero库控制LED灯

作者: 少儿创客 | 来源:发表于2019-06-20 10:27 被阅读0次

树莓派很强大,也很好玩。

准备

硬件

  • 树莓派一个,我的是3B+
  • 闪迪SD卡(class10),不小于8G
  • 树莓派电源,电流2.5A以上,否则供电不足

软件

给树莓派刷好系统,这部分网上教程有非常多。如果你用的不是noobs,那么建议使用Etcher这个镜像烧录软件:

Ether

安装gpiozero库

gpiozero库介绍和一些废话

zero是零的意思,也有初级入门的含义,所以gpiozero库的宗旨就是为了降低使用树莓派gpio的门槛,相比于其他操纵树莓派引脚gpio的库,gpiozero用户体验更加友好,更加直观和简单。15/16年的时候,makeblock的mblock(现kittenblock的CTO开发)软件非常流行,大大降低了人们学习和使用arduino的难度。

scratch-like图形化编程积木块编程当然降低了编程的难度,但是我觉得易用的本质原因是抽象的程度足够高,而gpiozero就是像scratch一样,具有非常高抽象程度的,可以让我们更加直观的控制树莓派gpio的第三方python库。

gpiozero定义了诸如LED,Button,Buzzer,Motor等类,与现实世界的传感器和硬件直接映射,跟使用mixly或者mblock,kittenlock等软件有相同的体验,极大的降低了使用难度。而且又不是灵活性,而且使用gpiozero库编写按钮控制LED灯的程序也因为python中函数式编程的特性而大大简化,这些后面我们会介绍。

图形化编程在入门的时候固然方便,但是在编写稍微复杂程序的时候,往往会力不从心,这也是为什么我不太喜欢图形化编程的原因,我更喜欢编代码的灵活。我不喜欢图形化编程的原因,就好像有时候喜欢用命令行一样,以在Linux下安装软件为例,比如安装lamp开发环境,Linux在只需要sudo apt install tasksel & sudo tasksel就完事了,然而在Windows图形界面下,要打开浏览器,下载wamp软件包,双击,一路next,最后安装完成。当然再怎么封装的python库,在入门的时候相比于图形化也稍微难一点,不过,也只是男那么一丢丢罢了。

安装gpiozero库

启动树莓派之后,按Ctrl + Shift + T,打开命令终端Terminal,然后输入

sudo apt install python3-gpiozero

这样就成功安装了,注意,树莓派默认安装的python版本是python2.7:

2.7
而python 2.x基本上快要退出历史舞台了,而我们安装的gpiozero是针对python3版本的,怎么办呢,启动python的时候,在命令行输入python3
3.5
虽然3.5版本略低,但是对于我们来说足够用了。

电路连接

元器件

  • 面包板 1个
  • 公母头杜邦线 2根
  • LED灯 1个
  • 1kΩ电阻1个

连接

  • 树莓派GPIO17连接电阻
  • 电阻另外一端连接LED阳极(长)
  • LED阴极(短)连接树莓派Gnd


点亮LED灯

然后新建文件,输入以下程序:


程序
from gpiozero import LED as Led
from time import sleep

led = Led(17)

while True:
    led.on()
    sleep(1)
    led.off()
    sleep(1)

在树莓派终端输入python3 led.py,就可以看到LED灯闪烁了。

相关文章

网友评论

      本文标题:树莓派用gpiozero库控制LED灯

      本文链接:https://www.haomeiwen.com/subject/sbzrqctx.html