シリアル通信

これが、これから使うものです!あなたのラップトップにも1つ付いていると良いのですが!

冗談です、心配しないで下さい。このDE-9というコネクターは、かなり昔にPCでは時代遅れになり、USB(Universal Serial Bus)に置き換わりました。 DE-9コネクタ自体を扱うことはしませんが、このケーブルで使われている/使われていた通信プロトコルを使います。

シリアル通信とは何なのでしょうか?それは、2本のデータ線(と共通のグランド)を使って、 2つのデバイスが1回に1ビットずつ逐次にデータ交換する非同期通信プロトコルです。 このプロトコルは、どちらの共有線もクロック信号を伝送しない、という意味で非同期です。 代わりに、双方の当事者は、通信が行われる前に、ワイヤに流れるデータの送信速度について合意する必要があります。 このプロトコルは、双方向の通信が可能です。データは、AからBへ、BからAへ、同時に送信することができます。

このプロトコルを、マイクロコントローラとノートPCとの間のデータ交換に使用します。 これまでに使ったITMプロトコルと違って、シリアル通信プロトコルでは、ノートPCからマイクロコントローラにデータを送ることができます。

次に尋ねたいと思うであろう実用上の質問は、このプロトコルではどのくらいの速度でデータを送信できるのか?ということでしょう。

このプロトコルは、フレームで動作します。各フレームは、1つの開始ビット、5から9ビットのペイロード(データ)と、1か2ビットの終了ビットを持ちます。 プロトコルの速度は、ボーレートと呼ばれており、ビット毎秒(bps)として示されます。 一般的なボーレートは、9600、19200、38400、57600、115200です。

実際に質問に答えると、一般的な設定の開始ビット1ビット、データビット8ビット、終了ビット1ビットでボーレートが115200 bpsであれば、 理論上は、毎秒11,520フレーム送信することが可能です。 各1フレームは、1バイトのデータを伝送するため、11.52KB/秒というデータレートになります。実際には、データレートは、より低くなります。 なぜなら、通信しているより遅い側(マイクロコントローラ)の処理時間があるためです。

現在のノートPC/PCは、シリアル通信のプロトコルをサポートしていません。そのため、ノートPCを直接マイクロコントローラに接続することはできません。 しかし、そこでシリアルモジュールの出番です。このモジュールは、2つの機器の間に入り、マイクロコントローラにシリアルインタフェースを、 ノートPCにUSBインタフェースを用意します。 マイクロコントローラは、ノートPCを別のシリアルデバイスとして見るでしょう。そして、ノートPCは、マイクロコントローラを仮想シリアルデバイスとして見ます。

それでは、シリアルモジュールと使用しているOSが提供するシリアル通信ツールについて、詳しく学びましょう。ルートを選んで下さい。