很多年前玩Arduino的时候就是从blink(交替点亮熄灭LED)开始的,后来玩树莓派、香蕉派等等也没少弄过点灯程序。至于点LED点阵啊、点1602屏幕、点LCD液晶啊也玩得腻歪到呕吐。
这次我弄的一个小项目要用到香蕉派的GPIO基本功能,却发现好多年没操作,自己都忘记怎么弄了。
无奈只好把自己以前在其它网站发的文章找出来看看,好久没去的QQ群也去侃几句,香蕉派的一些论坛和GitHub也去浏览一下。
香蕉派/树莓派上使用GPIO有好多种方式,以前我最常用的是使用Wiring Pi 和C/C++结合的方式。但是,这次我打算用Python语言实现我的程序,用Wiring Pi的话稍微麻烦一点,所以我决定用RPi.GPIO
来完成。
RPI.GPIO全称为raspberry-gpio-python,是用来控制树莓派上GPIO的Python模块,详情可以参考https://sourceforge.net/projects/raspberry-gpio-python/ ,但是由于香蕉派和树莓派采用的是不同的主控芯片,所以用在树莓派上的RPI.GPIO是无法直接用在香蕉派上的。
好在香蕉派的开发人员移植了这个Python库到香蕉派上,地址为:https://github.com/BPI-SINOVOIP/RPi.GPIO 我们直接下载并安装这个,就可以使用RPI.GPIO来控制香蕉派的GPIO啦。
安装RPI.GPIO
指令如下:
git clone https://github.com/BPI-SINOVOIP/RPi.GPIO
cd RPi.GPIO/
python setup.py build
python setup.py install
就可以将RPi.GPIO安装到香蕉派M3上啦。
测试安装
接下来我们去RPi.GPIO目录中看一下示例脚本,其中一个info.py包含如下内容
#!/usr/bin/python
import RPi.GPIO as GPIO
print 'Pi Board Information'
print '---------------------'
for key,val in GPIO.RPI_INFO.items():
print '%s => %s'%(key,val)
因为我使用的是Python3并且使用virtualenv来管理Python版本,所以上述代码并不适用,需要修改为类似如下的内容:
#!/usr/bin/env python
import RPi.GPIO as GPIO
print ('Pi Board Information')
print ('---------------------')
for key,val in GPIO.RPI_INFO.items():
print ('%s => %s'%(key,val))
执行上述脚本,结果如下:
看来安装是无论的啦。
有关RPi.GPIO基本使用,请参考文末链接,这篇先到这里了,敬请期待下一篇。
相关资料
- https://www.banana-pi.org.cn/m3.html
- https://github.com/BPI-SINOVOIP/RPi.GPIO
- http://wiki.banana-pi.org/Getting_Started_with_M3#Using_RPi.GPIO
- http://wiki.banana-pi.org/Banana_Pi_BPI-M3#GPIO_PIN_define
- https://sourceforge.net/projects/raspberry-gpio-python/
- https://sourceforge.net/p/raspberry-gpio-python/wiki/BasicUsage/
- https://github.com/BPI-SINOVOIP/BPI-WiringPi2
https://steemit.com/~witnesses type in
oflyhigh
and click VOTE
Vote @oflyhigh via Steemconnect
Thank you!
This page is synchronized from the post: ‘香蕉派M3 GPIO点亮LED (上): 安装RPI.GPIO’