5

Arduinoの使い方を学ぶために、 Seeed EthernetSD、およびTFT Shields をいじっています。ただし、3 つのシールドすべてが SS ピンにピン 10 を使用しているため、これらのシールドを一緒に使用できないことがわかりました。

ArduinoシールドのSSピンをプログラムで変更する方法はありますか?

SD ライブラリに SD.begin() があることは知っていますが、ピンを未使用のピンに設定しても、シールドが連動しません。Arduinoソフトウェアに付属しているSPIライブラリがあることは知っていますが、SPI.begin(slaveSelectPin)Arduino Dueのみにあり、Arduino Unoがあります。

Go-Between Shieldを見つけましたが、ユーザー ガイドを見ると、Arduino の他のピンを使用するようにコードを変更する必要があるので (間違って読んでいない限り)、完全にスキップして、私がすでに持っている盾。

これは電気工学のほうがいいでしょうか?

4

5 に答える 5

2

TFT シールドのインターフェイスは SPI ではないようです。ドライバ チップは SPI をサポートしているので少し混乱しますが、これはシールドが使用するように構成されたモードではありません。

ST7781R ドライバ チップ データシートのセクション 6.2 を参照してください。

TFT シールドをハックして SPI を使用できるようにすることもできますが、それ自体がプロジェクトです。

イーサネットと SD シールドを使用してみてください。それらを一緒に動作させることはできますか? (SS の問題を解決したら、上部シールドのピンを切り取り、ブレッドボードのワイヤをarduino の目的のピンに接続し、もう一方の端を上部シールド ピンに差し込みます 10)。

TFT シールドの SPI バージョンがあるかどうかはわかりませんが、正しいものと引き換えにストアに戻ることができるかもしれません.

于 2013-05-19T23:26:08.457 に答える
1

Arduino は周辺機器の駆動には問題ありませんが、ピンの再マッピングを工夫する必要があります。各シールドのピン要件を一覧表示するシールド データベースがあり、ピンを抜いてジャンパーを追加する (およびコードまたはライブラリで再マッピングする) と、干渉の問題が解決されます。私はいくつかの非常に複雑なプロジェクトを行ってきましたが、RPi は必要ありません。

http://www.shieldlist.org

于 2013-05-23T11:33:40.140 に答える
1

いいえ、ソフトウェアでピンを変更する方法はありません。ピンは、各シールド ハードウェアによって決定されます。ハードウェアを変更しない限り、これに対処する方法はありません。

ただし、非常に多くのシールドを積み重ねる場合は、Arduino がまだ適切なプラットフォームであるかどうかを検討する必要があります。他にも多くの小型システム (Raspi など) があり、これらははるかに多くの馬力を持ち、デバイスを接続するための USB バスを提供します。

私見Arduinoは低レベルのピン制御には適していますが、周辺機器の駆動には適していません。特にディスプレイと SD カードを駆動し、Arduino が低レベルの PIN IO を処理するように、Raspi または同様のものがほとんどの作業を行う設計をお勧めします。

于 2013-05-20T07:37:06.220 に答える