質問: 長距離LEDチェイサーデザイン 私はあなたがモジュールを追加するにつれて拡張するLEDチェイサーを設計する必要があります。 マスターとN個のスレーブを使用することを考えていましたが、私の最初の目的は、一方のモジュールから他方のモジュールにコマンドを送信できるのでUARTを使用することです。しかし、システム内の接続されているモジュールの数をマスターにどのように送信するのですか。マスタは、起動パターンとタイミングを制御するMCUになります。スレーブは、小型の安価なMCU、またはいくつかのLEDドライバ、またはその他のものにすることもできます。 Here is an illustration. ![enter image description here](https://i.stack.imgur.com/esszP.jpg)
回答: あなたの選択のマイクロが単一のマイクロを持っているなら、あなたはこのようにそれらをチェーンすることができます。 !enter image description here その方式では、メッセージは通常、アドレスバイトを含むデータのパケットとして送信される。最初のスレーブがパケットを受信し、それが自分宛てではないと判断した場合は、単純に次のパケットにデータを送信します。 パケットがそのスレーブのためのものである場合、スレーブはそれが順序付けされたことをして応答パケットを送信する、これもまた以下のスレーブによって単純に転送される。 特別な "WhoIsThere"コマンドを各スレーブで送受信して、最初にコマンドを変更してカウントを増やすか、スレーブの機能が異なる場合はコマンドの最後に1バイト追加することもできますその特定のスレーブが何をするかを識別するためのパケット。その過程で、各スレーブは受信したコマンドに既に追加されているデータからその行のアドレスを知ることができます。 最後のスレーブはTXとRXが互いに接続されているため、適切に処理するためにすべてがマスターに戻る必要があります。 ライン長がスレーブ間のホップに制御されるように、スレーブもリターンラインをバッファする必要があります。 ボードにロジックを追加して、アドレスが設定された後にMicroがPass-the-Parcelチェーンをバイパスできるようにすることもできます。これにより、特にロングチェーンではパフォーマンスが大幅に向上します。 !schematic simulate this circuit – Schematic created using CircuitLab