转:http://jingyan.eeboard.com/article/73599#/prettyPhoto%5Bpp_gal%5D/1/
http://wenku.baidu.com/link?url=GkHynUkLCWP6o5p4qeTkUOyXpt8TgUsk__mv0mPTBNJFyaeS4rflWT-ULi5Q4mQiCZMeeQrwCFs2LpHwPdr2borJEVasicJNMBalUhM5zUq&qq-pf-to=pcqq.c2c
http://www.leiphone.com/news/201409/HO2CW0YKz6GtXdEp.html
sudo apt-get update
sudo apt-get install python-dev python-rpi.gpio
如果你是一个树莓派或者香蕉派的初学者,想快速熟悉GPIO操作,和它的操作原理,这篇经验会给你一些小小的提示。
作为树莓派入门使用者,我们首先要熟悉的就是官方推荐的入门系统Raspbain啦,所以本文就仅仅以此系统为例进行介绍。
小贴士1:
由于香蕉派CON3上的26PIN IO和树莓派的26PIN IO是硬件兼容的(对于B+来说就是40PIN IO的前26PIN),另外适用于香蕉派的Raspbain系统,在系统上也做了兼容处理。所以同样运行Raspbain系统时,对于操作GPIO来说,我们完全把它们当做同样的板子看待。
小贴士2:
在Raspbain系统,我们通过Linux命令行来操作GPIO时,GPIO名称是以其博通的主芯片的序号命名的,而不是树莓派的GPIO编号。
如下图:我们需要关注的是红框内的GPIO名称——BCM GPIO Name。
注:在早期的时候B版V1.1版本的树莓派第13PIN是GPIO 21,不过后来都已经改成了GPIO 27。相信在看这篇文章的朋友手上的板子都是新版的。因为你如果在旧版本时代就已经是树莓派的用户了,那你现在一定已经是一个顶级高手了,当然也不会看到这篇入门经验。
我们这里来操作一下GPIO22,在操此之前我们需要先进入到管理员权限模式下:
bananapi@lemaker ~ $ sudo su
首先我们要把需要的GPIO从内核空间暴露到用户空间,使用echo命令,目标位置是/sys/class/gpio:
root@lemaker:/home/bananapi# echo 22 > /sys/class/gpio/export
这样之后,在/sys/class/gpio目录下会自动建一个/sys/class/gpio/gpio22的目录,然后我们要跳转到这个目录里,使用cd命令:
root@lemaker:/home/bananapi# cd /sys/class/gpio/gpio22
然后我们就可以用ls命令看看它下面的子目录文件,我们接下来对GPIO的各种控制命令文件都在里面:
root@lemaker:/sys/class/gpio/gpio22# ls
命令行会显示出控制命令文件列表:active_low direction edge power subsystem uevent value
然后我们用echo命令操作direction文件,把这个GPIO设置为输出:
root@lemaker:/sys/class/gpio/gpio22# echo out > direction
然后我们用echo命令操作value文件,把这个GPIO设置为低电平:
root@lemaker:/sys/class/gpio/gpio22# echo 0 > value
然后我们用echo命令操作value文件,把这个GPIO设置为高电平:
root@lemaker:/sys/class/gpio/gpio22# echo 1 > value