5.GPIO用のライブラリのインストール
RaspberryPIのGPIOを操作する場合、直接GPIOのドライバを操作する方法もありますが、いろいろ面倒くさいのでGPIOのドライバインターフェースとして公開されている、WiringPi を利用します。
クロス開発で利用する場合、WiringPi のライブラリ/ヘッダをクロス開発の環境に組み込む必要があります。
・WiringPiのサイトから git でソースclone します。
$ cd ~/develop
$ git clone git://git.drogon.net/wiringPi
・wiringPiディレクトリーにWiringPiのソースがコピーされます。
・WiringPiのライブラリをクロス開発用にビルドします。
$ cd wiringPi
$ cd wiringPi
$ make ARCH=$ARCH CC=$CC
・ビルドされたライブラリを以下の場所にコピーし、別名のリンクを張ります。
$ cp libwiringPi.so.2.32 ~/develop/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian-x64/arm-linux-gnueabihf/lib/.
$ cd ~/develop/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian-x64/arm-linux-gnueabihf/lib/
$ ln libwiringPi.so.2.32 libwiringPi.so
・WiringPiのヘッダファイルを以下の場所にコピーします。
$ cd ~/develop/wiringPi/wiringPi
$ cp *.h ~/develop/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian-x64/arm-linux-gnueabihf/libc/usr/include/.
*コピー先はいずれも開発PCが64bitOSの場合です。
6.サンプルプログラムを動かす
・取得したWiringPiにLEDを点滅させるサンプルプソースがあるのでビルドして動かしてみます。
$ cd ~/develop/wiringPi/examples
$ cc -o blink blink.c -lwiringPi
・実行ファイル blink が作成されますので Raspberry Pi に実行ファイルを転送し、実行します。
・サンプルで使用されているGPIOはGPIO17が使用されていますので LEDの回路をGPIO17(PIN11)とGNDに接続します。
・LEDの回路についてはいろいろなサイトで紹介されているのそちらを参考にしてください。
・WiringPi を使用したプログラムを動かす場合、デフォルトでは root の権限が必要となります。
・一般ユーザで動かすためには以下の環境変数をセットします。
$ export WIRINGPI_GPIOMEM=True
・上記の"="の後に設定する文字列に意味はありません。何らかの文字が設定されていればOKです。
WIRINGPI_GPIOMEM=1 や WIRINGPI_GPIOMEM=yes でもOKです。
クロス開発を行うための環境構築は以上となります。
0 件のコメント:
コメントを投稿