4-4 シリアル通信機能
学習目標
本章では、NVIDIA Jetson Pandora プラットフォーム上での シリアル通信(Serial Communication) の理解と使用方法について学習します。簡単なコマンドを使用して Pandora の UART インターフェースを設定する方法、シリアル通信の基本パラメータ(転送速度、データビットなど)を理解し、テキストメッセージの送受信方法を習得します。
シリアル通信とは?
シリアル通信は、デバイス間でデータを「1対1」で送信する方法です。データは列に並ぶように、1ビットずつ(bit by bit) 順番に送信されます。トランシーバーで友達と話すときのように、一度に一文話し、相手の返事を待つイメージです。.
シリアル通信の重要パラメータ
シリアルポートを設定する前に、いくつかの重要なパラメータを知っておく必要があります。
- Baud Rate(転送速度):データ転送の速度。例:115200(1秒間に115200ビット送信)。
- Data Bits(データビット):1回に送信するデータのビット数。通常は 8ビット(
cs8)。 - Stop Bits(ストップビット):各データ送信後の「区切り(停頓)」。通常は 1ビット(
cstopb)。 - Parity(パリティ):データが正しいかチェックする機能。通常は使用しません(
parenb)。
これらのパラメータは stty コマンドを使って設定できます。
Pandora でのシリアル通信設定
シリアルポート: /dev/ttyTHS3, /dev/ttyTHS1
1. シリアルパラメータの設定
ここでは ttyTHS3 のシリアルポートを使用します。以下のコマンドで設定できます。
Bash
sudo stty -F /dev/ttyTHS3 speed 115200 cs8 -parenb -cstopb
- sudo:管理者権限が必要です。
- /dev/ttyTHS3:シリアルポート名。
- speed 115200:転送速度を 115200 に設定します。
- cs8:データビットを 8 ビットに設定します。
- parenb:パリティチェックを無効化します。
- cstopb:ストップビットを 1 ビットに設定します。
2. シリアル通信の使用
データの送信
-
管理者モードに切り替えます:Bash
sudo su -
シリアルポートを設定します:Bash
stty -F /dev/ttyTHS3 speed 115200 cs8 -parenb -cstopb -
テキスト「Hello Pandora」を送信します:Bash
echo "Hello Pandora" > /dev/ttyTHS3
データの受信
以下のコマンドで、シリアルポートが受信したデータを読み取ります:
Bash
cat /dev/ttyTHS3
シリアルポートから受信したテキストメッセージが表示されます。Ctrl+C を押して終了します。
注意:シリアル通信をテストするには、Pandora のシリアルポート(UART-USB 変換ケーブル経由)を別のデバイス(PCなど)に接続し、シリアルツール(Minicom や PuTTY など)を使用してデータを確認する必要があります。
まとめ
- シリアル通信は、Pandoraが他のデバイスと「おしゃべり」するための方法で、データは1ビットずつ送信されます。
sttyを使用してシリアルパラメータ(115200 ボーレート、8 ビットデータなど)を設定する必要があります。