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 に変更することもできますが、更新のたびに追加の作業が必要になります。代わりに、コマンドを自動的に GPIO18 にリダイレクトするダミーの GPIO32 を作成する方法はありますか?