質問: シールドを別のシールドに積み重ねることはできますか? 昨日私はArduino Unoに積み重なったサーボモータシールドにモーターシールドを積み重ねようとしました。 しかし、私は両方を使用しようとすると何か問題があることに気付きました。エネルギーが失われたり、サーボモータのシールドに接続されたステッピングモーターが奇妙にゆっくり動いているようです。 私はすでにオンラインでチェックして、多くのシールドを積み重ねることについての説明を見つけました。シールドが同じピンまたはSSを使用しないことを確認することについて。初心者としては、助けが非常に役立つでしょう。ありがとうございました。 ここで私が使用する2つのシールドがあります。 * ダイナミックス用スマートサーボシールド * Dynamixel AX用スマートArduinoデジタルサーボシールド wiki : これらのリンクでは、使用されるピンを持つすべての仕様を見つけることができます。私は両方の人が分かち合っていると思っています...確かに分かりません。 誰にも解決策はありますか?事前に多くの感謝。
回答: まず、2つのシールドのピン配置を比較する必要があります。シールドが完全に異なるピンを使用する場合は、それらを一緒に使用することができます。 しかし、ピンを共有している場合は、そのピンの種類と使用方法をさらに詳しく調べる必要があります。 あなたの例では、シールドとPWM(3/11)とGPIO(8/9/12/13)とアナログ入力(A0/A1)のためにSPIが使用されています(ピン10-13)。 紛争が起きたことが分かりました。例えば、DFRobotシールド用のSPIクロック用のピン13もArduinoシールドのGPIOピンの1つに使用されています。 MISOのピン12はGPIOとして使用されています。 MOSIのピン11もPWM用に使用されています。 それらはピン上の異なる機能なので、決して機能しません。 しかし、SPIピンを両方のシールドの *SPI* として使用していれば、その*できます*。その場合、SPIは複数のシールド間で共有できるマスタ/スレーブバスプロトコルであるため、各シールドに固有の「チップセレクト」ピンのみです。