コマンドラインで制御
$ git clone https://github.com/xpertsavenue/WiringOP-Zero.git $ cd WiringOP-Zero/ $ chmod +x ./build $ sudo ./build
これでコマンドラインからGPIOが制御できるようになります
“Banana Pro”の表記が気になりますが…
$ gpio -v gpio version: 2.20 Copyright (c) 2012-2014 Gordon Henderson This is free software with ABSOLUTELY NO WARRANTY. For details type: gpio -warranty Banana Pro Details: Type: Banana Pro, Revision: 1.2, Memory: 1024MB, Maker: LeMaker
GPIOの状態を読み出してみると、
$ gpio readall +-----+-----+----------+------+--Orange Pi Zero--+---+------+---------+-----+--+ | H2+ | wPi | Name | Mode | V | Physical | V | Mode | Name | wPi | H2+ | +-----+-----+----------+------+---+----++----+---+------+----------+-----+-----+ | | | 3.3v | | | 1 || 2 | | | 5v | | | | 12 | 8 | SDA.0 | ALT5 | 0 | 3 || 4 | | | 5V | | | | 11 | 9 | SCL.0 | ALT5 | 0 | 5 || 6 | | | 0v | | | | 6 | 7 | GPIO.7 | ALT3 | 1 | 7 || 8 | 0 | ALT5 | TxD3 | 15 | 198 | | | | 0v | | | 9 || 10 | 0 | ALT5 | RxD3 | 16 | 199 | | 1 | 0 | RxD2 | OUT | 1 | 11 || 12 | 0 | ALT3 | GPIO.1 | 1 | 7 | | 0 | 2 | TxD2 | OUT | 1 | 13 || 14 | | | 0v | | | | 3 | 3 | CTS2 | OUT | 1 | 15 || 16 | 0 | ALT4 | GPIO.4 | 4 | 19 | | | | 3.3v | | | 17 || 18 | 0 | ALT4 | GPIO.5 | 5 | 18 | | 15 | 12 | MOSI | ALT5 | 0 | 19 || 20 | | | 0v | | | | 16 | 13 | MISO | ALT5 | 0 | 21 || 22 | 0 | ALT3 | RTS2 | 6 | 2 | | 14 | 14 | SCLK | ALT5 | 0 | 23 || 24 | 0 | ALT5 | CE0 | 10 | 13 | | | | 0v | | | 25 || 26 | 1 | OUT | GPIO.11 | 11 | 10 | +-----+-----+----------+------+---+---LEDs---+---+------+----------+-----+-----+ | 17 | 30 | STAT-LED | OUT | 0 | 27 || 28 | | | PWR-LED | | | +-----+-----+----------+------+---+-----+----+---+------+----------+-----+-----+ | H2+ | wPi | Name | Mode | V | Physical | V | Mode | Name | wPi | H2+ | +-----+-----+----------+------+--Orange Pi Zero--+---+------+---------+-----+--+
30がボード上のステータスLEDに該当しているので、以下のコマンドでON/OFFできます
$ gpio write 30 on $ gpio write 30 off
Pythonで制御
WiringPi-Python-OPのインストール
さすがにコマンドラインから触るわけには行かないので、pythonで制御できるようにします
Orenge Piに対応したWiringPi-Python-OPがリリースされているので、これをインストールします
インストールはここに記載のとおりです
$ sudo apt-get install python-dev python-setuptools swig2.0 $ git clone --recursive https://github.com/lanefu/WiringPi-Python-OP.git $ cd WiringPi-Python-OP $ swig2.0 -python wiringpi.i $ sudo python setup.py install
で、動作テスト用のコードはこちら↓
11番pin(gpio readallのwpiが0のポート)を0.5秒間隔でON/OFFします
import wiringpi from time import sleep LED = 0 OUTPUT = 1 HIGH = 1 LOW = 0 if __name__ == '__main__': wiringpi.wiringPiSetup() wiringpi.pinMode(LED, OUTPUT) while True: wiringpi.digitalWrite(LED, HIGH) sleep(0.5) wiringpi.digitalWrite(LED, LOW) sleep(0.5)