硬件:
树莓派2B
系统: Raspbian Debian Wheezy 2014-02-16
环境: wiringPi、BCM2835 C Library、Python2.7、C
注意:以下操作均在root权限下操作
这里总结下操作GPIO的几种方法,希望给新手做个参考,首先准备系统环境,安装系统什么的这里就略过了,Python,C系统自带,wiringPi、BCM2835 C Library安装这里不在赘述,我之前帖子也提到过: http://www.shumeipai.net/thread-22413-1-1.html ,大家自己去查看,这里列下安装代码,省得你懒得看之前的帖子:
1. 安装wiringPi: 2.安装BCM2835 C Library:
安装完成后可以看下GPIO的引脚定义:
运行结果如图:
Physical那一列对应的就是树莓派物理引脚的编号,BCM就是BCM2835的定义,wPi那列就是wiringPi的定义,所以用那个程序去读取要注意他们对引脚的定义,否则会造成错误。新手可能要问你,那么树莓派上那个是1哪个是2啊, 给大家一张图,红色方框标注的就是1 ,和上图方向是对应的,其它的自己对应 Physical列来看:
3.一下以物理引脚11为例子,来演示下几种不同的操作方法,简单设置引脚的IN或者OUT
3.1.使用Python来操作:
注意GPIO.setmode,我用的是BCM,看上图对应,11脚对应为17,如果GPIO.setmode(GPIO.BOARD),那么这里数字就应该写11,即为物理引脚数字。下面是截图,我们看到11脚从上图OUT变为IN:
3.2.使用C来操作:
首先我们用wiringPi来控制把11脚变回OUT:
编译后执行,怎么编译,看下图里有,自己输入,不能全程靠复制粘贴,这里wPi定义11脚为0:
我们再用BCM来控制把11脚变回IN:
注意,这里bcm定义是17,编译执行结果如下:
到这里,几种控制GPIO的方法就演示完毕,相信这时你再去弄什么控制LED,传感器之类的不会再一头雾水了,上述例子有不足错误之处,欢迎指点讨论!
系统: Raspbian Debian Wheezy 2014-02-16
环境: wiringPi、BCM2835 C Library、Python2.7、C
注意:以下操作均在root权限下操作
这里总结下操作GPIO的几种方法,希望给新手做个参考,首先准备系统环境,安装系统什么的这里就略过了,Python,C系统自带,wiringPi、BCM2835 C Library安装这里不在赘述,我之前帖子也提到过: http://www.shumeipai.net/thread-22413-1-1.html ,大家自己去查看,这里列下安装代码,省得你懒得看之前的帖子:
1. 安装wiringPi: 2.安装BCM2835 C Library:
安装完成后可以看下GPIO的引脚定义:
运行结果如图:

Physical那一列对应的就是树莓派物理引脚的编号,BCM就是BCM2835的定义,wPi那列就是wiringPi的定义,所以用那个程序去读取要注意他们对引脚的定义,否则会造成错误。新手可能要问你,那么树莓派上那个是1哪个是2啊, 给大家一张图,红色方框标注的就是1 ,和上图方向是对应的,其它的自己对应 Physical列来看:

3.一下以物理引脚11为例子,来演示下几种不同的操作方法,简单设置引脚的IN或者OUT
3.1.使用Python来操作:
注意GPIO.setmode,我用的是BCM,看上图对应,11脚对应为17,如果GPIO.setmode(GPIO.BOARD),那么这里数字就应该写11,即为物理引脚数字。下面是截图,我们看到11脚从上图OUT变为IN:

3.2.使用C来操作:
首先我们用wiringPi来控制把11脚变回OUT:
编译后执行,怎么编译,看下图里有,自己输入,不能全程靠复制粘贴,这里wPi定义11脚为0:

我们再用BCM来控制把11脚变回IN:
注意,这里bcm定义是17,编译执行结果如下:

到这里,几种控制GPIO的方法就演示完毕,相信这时你再去弄什么控制LED,传感器之类的不会再一头雾水了,上述例子有不足错误之处,欢迎指点讨论!