查看: 1837|回复: 0

​最简单的树莓派(香蕉派)GPIO操作入门

[复制链接]
  • TA的每日心情
    开心
    2017-10-9 10:25
  • 签到天数: 886 天

    连续签到: 1 天

    [LV.10]以坛为家III

    发表于 2014-10-31 21:26:47 | 显示全部楼层 |阅读模式
    分享到:
    如果你是一个树莓派或者香蕉派的初学者,想快速熟悉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

    回复

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /4 下一条

    手机版|小黑屋|与非网

    GMT+8, 2024-12-19 00:18 , Processed in 0.110352 second(s), 17 queries , MemCache On.

    ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

    苏公网安备 32059002001037号

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.