1

我正在为 Raspberry Pi 移植开源项目 OpenROV。(该项目是为 BeagleBone 开发的。)该端口的唯一重大挑战是将软件对 GPIO1_0(又名 GPIO32)的引用更改为在 Raspberry Pi 的标头上打开的引脚(我在想 GPIO18)。原代码如下:

#!/bin/sh
# GPIO1_0 equals equals /sys/class/gpio32 (32 + 0)

#see http://ninjablocks.com/blog/2012/1/20/setting-up-gpio-on-the-beaglebone.htm l


back_to_normal() {
  sleep 1
  #set GPIO1_0 to HIGH
  echo "high" > /sys/class/gpio/gpio32/direction
}

reset() {
  sleep 1
  #prepare gpio
  echo "32" > /sys/class/gpio/export
  echo "out" >/sys/class/gpio/gpio32/direction 
  echo 7 > /sys/kernel/debug/omap_mux/gpmc_ad0
  #set GPIO1_0 to low
  echo "low" > /sys/class/gpio/gpio32/direction
  back_to_normal 
}
echo Initiating arduino reset 1>&2
reset &

当然,我可以将非常参考 32 更改为 18,但这需要在每次更新时进行额外的工作。相反,是否有某种方法可以创建一个虚拟 GPIO32,自动将命令重定向到 GPIO18?

4

1 回答 1

0

我刚刚开始使用 Python 和 RPi.GPIO linux 包来玩 Raspberry Pi 及其 GPIO。我在博客上写了我的第一个简单步骤:使用 Raspberry Pi GPIO 接口

有一个调用将RPi.GPIO的模式设置为 BOARD 或 BCM,通过调用 GPIO.setmode(GPIO.BOARD) 或 GPIO.setmode(GPIO.BCM) 在两个引脚配置之间更改。如果您查看它的作用,它可能会帮助您解决问题。

于 2013-04-11T08:58:50.603 回答