上一篇文章写了使用树莓派点亮一个led,然后给了一张树莓派的引脚图,然后感觉引脚图的扩充没有说的不清不楚,所以我在这章里补充一下关于引脚编码对应的相关的库,wiringPi编码可以使用树莓派的wiringPi库用C代码来写控制程序,BCM编码可以使用gpiozero库和RPI.GPIO库,BOARD编码可以使用RPI.GPIO库。可能有人就会问了为啥不直接使用RPI.GPIO库或者wiringPi库,确实现在基于RPI.GPIO库和wiringPi库的资料有很多,但是我觉得gpiozero这个库代码书写起来友好简洁,表达意思明确,但是现在搜索树莓派GPIO资料大部分都是RPI.GPIO库,所以这也是我用gpiozero库的初衷,探索未知的其乐无穷。
然后这张图对于刚入门树莓派GPIO接口的人来说是很重要了,所以还是先看这张图,方便后面我们接线和写控制程序。

注意:gpiozero库使用的是BCM编码
实验材料准备:
-
四脚微动开关一个
-
杜邦线(公对母)两根
-
面包板一个
接线:

代码:
from gpiozero import Buttonbutton = Button(4)print('wait for press')button.wait_for_press()print('you pushed')
在终端运行以上代码,可以看到开关按下效果。
下面我们再把上一篇文章的led的硬件拿过来,再改造一下接线,我们实现一个用开关控制led的功能
接线:

代码:
from gpiozero import Button, LEDled = LED(20)button = Button(4)print('wait for press')button.wait_for_press() #开关按下led.on()button.wait_for_release() #开关恢复led.off()
树莓派终端运行以上代码,会发现开关按下led点亮,松开开关led灭了。
欢迎留言交流