树莓派GPIO的简单控制
General Purpose Input Output (通用输入/输出)简称为GPIO,或总线扩展器。也就是树莓派上那一堆引脚。
GPIO库
- wiringPi C,有Perl,PHP,Ruby,Node.js和Golang的扩展,支持wiringPi Pin 和BCM GPIO两种编号
- RPi.GPIO Python, 支持Board Pin和BCM GPIO两种编号
- Webiopi,Python,使用BCM GPIO编号
- BCM2835, 使用BCM GPIO编号
- WiringPi-GO,GO语言,支持以上三种编号
具体情况如下图:
Board Pin 编号为板上的自然编号,左边引脚为1、3、5……39;右边引脚为2、4、6……40。RPi.GPIO.setmode(GPIO.BOARD)
采用这列编号
BCM GPIO为树莓派主芯片提供商Broadcom的编号方法,相当于调用了WiringPiSetupGpio()
或RPi.GPIO.setmode(GPIO.BCM)
采用这列编号
Python
安装:
新的系统(2015/11月的)好像自带了
1 | sudo apt-get install python-dev |
安装python pip
1 | sudo apt-get install python-pip |
安装python的GPIO库
1 | sudo apt-get install rpi.gpio |
代码示例
1 | #python |
C
wiringPi库
安装:
1 | git clone git://git.drogon.net/wiringPi |
测试有没有安装好
1 | $gpio -v |
1 | //c |
编译需要用
gcc -Wall -o test test.c -lwiringPi
然后sudo ./test
BCM2835库
安装
- 下载:
$ wget http://www.airspayce.com/mikem/bcm2835/bcm2835-1.35.tar.gz
- 解压缩:
$tar xvzf bcm2835-1.35.tar.gz
- 进入压缩之后的目录:
$cd bcm2835-1.35
- 配置:
$./configure
- 从源代码生成安装包:
$make
- 执行检查:
$sudo make check
- 安装 bcm2835库:
$sudo make install
1 | //c |