Arduino用PololuデュアルG2ハイパワーモータードライバー24v14シールドを2台使用する場合の再マッピング方法

Arduino用PololuデュアルG2ハイパワーモータードライバー24v14シールドを2台
Arduino MEGA 2560に接続する場合、1台目はデフォルトのピン配置で接続して問題なく動作しています。
2台目のピン配置で使用してはいけないピンやライブラリを使用した再マッピング方法を教えてください。
2台目のピン配置は以下のように接続しています。

M1FLT 14
M2FLT 15
M1SLP 3
M2SLP 5
M1DIR 11
M2DIR 0
M1PWM 13
M2PWM 1
M1CS A2
M2CS A3

よろしくお願いいたします。

2台目で使用してはいけないピンは思い着かないです。(実際にはあるかもしれません)

リマップした時のライブラリの使用方法は次のようになります。

#include "DualG2HighPowerMotorShield.h"

DualG2HighPowerMotorShield24v14 md = DualG2HighPowerMotorShield24v14(unsigned char M1nSLEEP,
                                                       unsigned char M1DIR,
                                                       unsigned char M1PWM,
                                                       unsigned char M1nFAULT,
                                                       unsigned char M1CS,
                                                       unsigned char M2nSLEEP,
                                                       unsigned char M2DIR,
                                                       unsigned char M2PWM,
                                                       unsigned char M2nFAULT,
                                                       unsigned char M2CS);

実際には、次のように定義してmd.init()とmd2.init()のように使っていただけます。

#include "DualG2HighPowerMotorShield.h"

DualG2HighPowerMotorShield24v14 md; // 1台目
DualG2HighPowerMotorShield24v14 md2 = DualG2HighPowerMotorShield24v14(3,11,13,14,A2,5,0,13,15,A3); // 2台目

void setup()
{
  md.init();
  md2.init();
  md.calibrateCurrentOffsets();
  md2.calibrateCurrentOffsets();
}

ありがとうございました。
動作しました。
ピン配置については試行錯誤の結果、以下のようになりました。
M1FLT 14
M2FLT 15
M1SLP 16
M2SLP 15
M1DIR 13
M2DIR 3
M1PWM 11
M2PWM 5
M1CS A2
M2CS A3
PWM信号はPWM対応Pinでないと動作が不安定になるようです。
Pin13にPWM信号を割振ると電源ON時に誤動作したので、DIR信号と入れ替えました。

「いいね!」 1