1

SPIに関連する記事を読んでいました。複数のスレーブの場合、「デイジーチェーン」という名前の構成がありました。

これまでのところ、SPI(ウィキペディアに基づく)について私が理解していることは、

SPIは、いくつかのデータを同時に転送および受信できます。

私の質問は、

1)複数のスレーブの場合、多くのスレーブデバイスに接続されている中で、多くのスレーブにデータを転送するのですか、それともスレーブの1つにデータを転送するのですか?

2)このリンク図4によると、マスターは3つのスレーブデバイスに送信する必要のあるすべてのデータが送信されてからピンがハイになるまで、SSをローに保ちます。もしそうなら、マスターは最後にどのデータとどのスレーブデバイスから受信しますか?

3)このリンクに示されているように、拡張モードでは、ロードイネーブル(LDEN)とWCOLがチェックされ、次のバイトがバッファに移動します。なぜ両方をチェックする必要があるのですか?WCOLはそのために十分ではありませんか?

4)それMaster configures the clock - frequency less than or equal to the maximum frequency the slave device supports. Such frequencies are commonly in the range of 1–100 MHz.は、マスターがどのようにしてスレーブのクロック周波数を見つけるのかということです。

5)SPSR、SPCR、およびSPDRレジスタはマスターとスレーブの両方に残りますか?

6)送信完了後、SPIFフラグが設定されます。SPIEも有効になっている場合は、割り込みが発生します。フラグはマスターとスレーブの両方で設定されますか?割り込みはマスターとスレーブの両方で生成されますか?

親切に案内してください。前もって感謝します。

4

1 に答える 1

1

1)1つ以上のスレーブの任意の組み合わせ(/ CSの立ち上がりエッジ)。

2)スレーブの組み合わせを1つの大きなシフトレジスタと見なします。3つのスレーブのそれぞれに8ビットのレジスタがあり、合計が24ビットであるとします。マスターは24ビットをクロックアウトし、最初の8は最後のスレーブにクロックアウトされ、2番目の8は2番目にクロックアウトされ、最後の8は最初のスレーブにクロックアウトされます。/ CSがディアサートされたとき(立ち上がりエッジ)に各スレーブのデータが受け入れられるため、データのクロッキング中に/CSがローになったスレーブのみが影響を受けます。

于 2013-02-15T15:03:09.057 に答える