RaspiRobotBoard GPIOピンの表現の違いによる不具合の修正

モータドライバ RaspiRobotBoard で OC2 スイッチが
うまく制御できなかった件を調べて修正したのでメモ。

  • ピンの指定方法

GPIOピンは ピン番号で指定する方法と
BCM番号で指定する方法があります。

Pythonプログラム内では、以下の構文で切り替えることができます。

#!/usr/bin/python

import RPi.GPIO as GPIO

# BCMで指定する
GPIO.setmode(GPIO.BCM)

# ピン番号で指定する
GPIO.setmode(GPIO.BOARD)
  • BCM番号に違いがある

Raspberry はリビジョンによって
GPIOピンのBCM番号に一部違いがあるようです。

■参考
http://raspberrypi.stackexchange.com/questions/12966/what-is-the-difference-between-board-and-bcm-for-gpio-pin-numbering

リビジョン1

リビジョン2

  • Pythonライブラリの修正

https://github.com/moremagic/raspirobotboard/
raspirobotboard.py 一部抜粋

# OC2_PIN = 21
OC2_PIN = 27

以上の修正でうまく動くようになりました。