SerialTool:最も充実したシリアルポートソフトウェア

なぜ SerialTool なのか

SerialTool は、Windows・MacOS・Linux 上でシームレスに動作するよう設計された、究極のシリアル通信ソフトウェアです。比類のないマルチプラットフォーム対応により、異なるオペレーティングシステム間でも簡単にデバイスと通信でき、最大限の柔軟性と利便性を実現します。

SerialTool の高度な機能により、これまでにないレベルでシリアル通信をコントロールできます。特定のバッファ条件に基づいてアラームをトリガーし、重要なイベントを即座に検知して素早く対応できます。オートアンサー機能を設定することでワークフローを自動化し、プロセスを効率化して生産性を大幅に向上させることができます。

SerialTool は、ユニークなマルチプラットフォーム対応が大きな特徴です。Windows・MacOS・Linux の間を簡単に行き来できるだけでなく、パフォーマンスや機能性も損なわれません。複数のソフトを立ち上げて管理する必要はもうありません。SerialTool の統一されたインターフェース内で、複数のシリアルポートを一括して監視・制御できます。

SerialTool の内蔵ロギング機能を使えば、シリアルトラフィックを簡単に記録・保存できます。貴重なデータを保持し、通信パターンを分析し、トラブルを効果的に解析できる、包括的なログを残すことができます。

SerialTool の圧倒的なパワー、柔軟性、信頼性を体験し、あなたのシリアル通信環境を一新してください。無限の可能性を切り拓き、生産性を高め、デバイスを完全にコントロールしましょう。SerialTool は、あなたのシリアル通信を新たなレベルへ引き上げる最先端ソフトウェアです。

SerialTool とは

SerialTool は、PC のシリアルポートと素早く簡単に通信するためのプロフェッショナル向けシリアルポートソフトウェアです。
SerialTool は、COM ポート機能の開発と実装に何年もかけて磨き上げられてきました。
多くの機能は、組み込みの COM ポート(UART)開発を支援するために設計されています。
さまざまな機能の中には、バッファの保存、特定のバッファ受信時のアラーム、シリアルトラフィックの記録など、多くの便利な機能が含まれています。

Arduino のホビーユーザーが AutoAnswer 機能を使ってアプリケーションをテストするのにも最適な、とても扱いやすいツールです。
ログ機能や、負荷試験向けのタイミング制御された複数パケット送信機能を備えており、プロフェッショナルユーザーにも理想的です。
SerialTool は Windows、Mac OS、Linux に対応しています。

SerialTool をユニークにしている点

SerialTool は各オペレーティングシステムのネイティブ機能を活用するマルチプラットフォームソフトウェアであり、動作するそれぞれのプラットフォームで最高のパフォーマンスを引き出します。
共通で直感的なグラフィカルユーザーインターフェースにより、どの環境でも使いやすく、他のシリアルポート通信ソフトではなかなか見られない多くの機能を、わかりやすく操作することができます。

シリアルポートとは

組み込み電子回路におけるシリアルポートとは、複数の回路(プロセッサやその他の IC)を接続して、相互に依存するシステムを構成するためのインターフェースです。 それぞれの回路が情報をやりとりするには、共通の通信プロトコルを共有しなければなりません。現在では、PC とArduinoボードを接続する例が非常に一般的です。
開発できるアプリケーションは数多くありますが、多くの場合、外部の世界と何らかの形で通信する必要があります。そこで活躍するのがシリアルポートです。

非同期シリアル通信

非同期シリアル通信は、共通のクロック信号を使って信号同士を同期させない通信インターフェースです。代わりに、スタートビットとストップビットによってデータメッセージの開始と終了を示します。この種の通信はポイントツーポイント方式であり、基本的に 2 台のデバイスだけが接続されます。また、クロック信号が存在しないため、ビットの送受信速度、つまりボーレート(baud rate)について、両者が事前に合意しておく必要があります。
非同期シリアル通信は、送受信線が独立したフルデュプレックス方式、または 1 本の線を共用するハーフデュプレックス方式のどちらでも実装でき、多くの用途で利用できる柔軟な通信プロトコルです。

非同期シリアル通信インターフェースでは、受信信号(RX)と送信信号(TX)を使用します。2 台のデバイスがフルデュプレックスで通信する場合、一方の RX ピンはもう一方の TX ピンに接続する必要があります(図 4.1 参照)。非同期シリアル通信は、一般に UART(Universal Asynchronous Receiver-Transmitter)によって実装されます。UART はマイクロコントローラ内蔵の場合が多いですが、単体の IC として提供されることもあります。

UART インターフェースによる非同期シリアル通信は、必要な配線が少なく、メッセージ送信のプロトコルが非常にシンプルであるため、広く利用されています。アプリケーションの要件に応じてデータパケットの構造を柔軟に変更でき、データ送信のための専用クロック信号も不要です。ただし、UART は本質的に 2 台間の通信に限定され、両デバイスでボーレートやビットパケットの設定を一致させる必要があります。一致していない場合、データは誤って解釈されます。

Diagram showing asynchronous serial communication between Arduino and PC using SerialTool

非同期シリアル通信 ― 接続例

非同期シリアル通信 ― 設定

非同期シリアル通信や UART を使って送信されるデータは、ビットパケットとして送られます。これらのパケットには、スタートビット、可変長(5〜9 ビット)のデータビット、任意のパリティビット、そして 1〜2 ビットのストップビットが含まれます。最も一般的な UART のビットパケット構成は 8-N-1 と呼ばれ、8 ビットデータ、パリティなし(None)、ストップビット 1 を意味します。これに 1 ビットのスタートビットが加わることで、1 文字あたり合計 10 ビットのパケットになります。

シリアルバス上で通信する両デバイスは、同じビット構成と同じ送信速度(ボーレート)に設定されていなければなりません。シリアルポートの設定は、しばしばボーレートを先頭に付けて表記されます(例:115200-8-N-1)。

非同期シリアル通信 ― スタートビットとストップビット

スタートビットとストップビットは、受信側にパケットの開始と終了を知らせる同期用ビットです。非同期シリアル通信のデータラインは、データを送信していないときは論理 “1” のアイドル状態で保持されます。スタートビットは、このラインを論理 “1” から “0” に遷移させます。受信側がこの遷移をスタートビットとして認識すると、設定されたボーレートに従って 5〜9 ビットのデータビットが順次読み取られます。ストップビットは、データラインを再び論理 “1” のアイドル状態に戻すことでパケットの終わりを示します。

非同期シリアル通信 ― パリティビット

パリティビットはオプションのビットであり、電磁ノイズや長い配線などによりデータビットが反転してしまう場合に備えて、非常に低レベルのエラーチェックを提供します。使用する場合は、偶数パリティ(even)または奇数パリティ(odd)のいずれかを選択します。
奇数パリティでは、データビット中の “1” の数が奇数になるようにパリティビットが設定されます。すでに 1 の数が奇数であればパリティビットは 0、そうでなければ 1 になります。同様に、偶数パリティでは “1” の数が偶数になるようにパリティビットが設定されます。
これにより、データビットとパリティビットを合わせた “1” の数が期待値と異なる場合、少なくとも 1 ビットが伝送中に反転していることが検出できます。ただし、複数ビットが同時に反転した場合には検出できないことが多いため、実際にはパリティビットを使用しない構成もよく用いられます。

非同期シリアル通信 ― ボーレート

非同期シリアル通信や UART を使用する際の重要なパラメータの 1 つが、シリアルライン上でどれくらいの速さでデータを転送できるかという点です。UART で 1 秒間に送信されるビット数をボーレート(baud rate)と呼びます。理論上はさまざまな値を設定できますが、両デバイスが同じボーレートをサポートしている必要があるため、いくつかの値が事実上の標準となっています。ボーレートが高くなるほど、一定量のデータを送受信するのに必要な時間は短くなります。
表 4.1 には、標準的なボーレートと、標準の 8-N-1 構成(1 文字あたり 10 ビット)で 100 バイトのデータを送信するのにかかる時間の例が示されています。