ループバック
データの送信はテストしました。次は受信をテストする番です。ただし、こちらにデータを送ってくれる別のデバイスはありません……本当にそうでしょうか?
そこで登場するのが、ループバックです。
自分自身にデータを送れます!本番環境ではあまり役に立ちませんが、デバッグには非常に役立ちます。
古いボードリビジョン / 外付けシリアルモジュール
上の図のように、オス-オスのジャンパーワイヤを使って、シリアルモジュールの TXO ピンと RXI ピンを接続してください。
では、minicom/PuTTY に何かテキストを入力して観察してみてください。何が起こるでしょうか?
3 つのことが確認できるはずです:
- これまでと同様に、キーを押すたびに TX(赤)LED が点滅します。
- しかし今度は、キーを押すたびに RX(緑)LED も点滅します!これは、シリアルモジュールが何らかのデータ、つまりたった今自分で送信したデータを受信していることを示しています。
- 最後に、minicom/PuTTY のコンソールでは、入力した内容がそのままコンソールにエコーバックされるはずです。
新しいボードリビジョン
ボードの新しいリビジョンをお持ちの場合は、SWO ピンで行ったのと同じように、メス-メスのジャンパーワイヤで PC4 ピンと PC5 ピンを短絡してループバックを設定できます。
これで、自分自身にデータを送れるようになるはずです。
では、minicom/PuTTY に何かテキストを入力して観察してみてください。
注: 既存のファームウェアがシリアルピン(PC4 と PC5)に何らかの妙なことをしている可能性を排除するため、minicom/PuTTY にテキストを入力している間はリセットボタンを押したままにすることをおすすめします。
すべて正常に動作していれば、入力した内容が minicom/PuTTY コンソールにエコーバックされるはずです。
minicom/PuTTY を使ったシリアルポート経由でのデータの送受信に慣れてきたところで、次はマイクロコントローラとコンピュータを通信させてみましょう!