概要
本ソフトウェアは、拙作 Serial Debug Tool2の後続バージョンです。
いまでは標準では搭載されなくなりつつあるシリアルポートですが、生産現場では簡易に使うことのできる、デバイスであることは変わっていません。
そこで、シリアル通信アプリケーションをデバッグするときに必要とされる最小限の機能を盛り込んだソフトをつくってみました。
基本的には、シリアル通信用モニタソフトですが、通常のシリアル通信ソフトとちがうのは
HEX、テキストの2画面での通信確認
ができることです。
これにより、バイナリデータを含むデータの送受信をおこなうことが可能となっています。
また、昨今では ネットワーク (UDP / TCP)での接続を行う装置も増えているので、
という4方式で利用できるようにしてみました。
基本的な操作性は、拙作 Serial Debug Tool2 を踏襲しています。
今作より、.NET Framework4.8 で動作する仕様になっています。
これにより、Windows7/8/10/11 での動作が可能です。
(これ以前のWindowsに関しては上記 Serial Debug Tool2をご利用ください)
使い方
メニューの
を選択すると、通信設定画面が表示されます。
ここから、シリアルポート、UDP、TCP のいずれで通信するか、を選択できます。
また、一定時間通信が途切れた際に、表示の改行を行う待ち時間をms単位で設定します。
OKボタンを押し下げた際の最終表示されているタブが、選択接続設定となります。
たとえば、UDPのタブ表示状態で、OKボタンを押した場合は、UDPが接続設定として選択されます。
シリアルポート(COM) UDP TCP
シリアルポートの通信設定を行います。
起動時に、利用できるCOMポートが列挙されているので、利用したいポートを選びます。
再検索ボタンを押すと、COMポートを詳細情報つきで列挙します。
UDPでの通信設定を行います。
送信先のアドレスと利用ポートを設定し、受信用ポートも設定します。
TCPでの通信設定を行います。
TCPでは利用モードにより設定が異なります。
クライアントモードの場合、接続先アドレスとポートを指定します。
サーバーモードでは、待ち受け用ポートを設定します。
シリアルポートを選択した場合、DTRとRTS信号に関しては任意に制御できます。
DTR,RTSのランプをダブルクリックすることで、ON/OFFすることができます。
使い方へ戻る
画面上部の入力枠に送信したい内容を入力して、Sendボタンを押すと送信されます。
本ソフトウェアの特徴となる機能です。
バイナリ値と文字列を混在して送信できるようにしています。
文字列を送信する場合には "" でくるみます。
たとえば、ABCD という文字で送信したい場合は
ex)
と入力します。
文字のなかで、”文字を使いたい場合は ¥ でエンコードします。
ex) {"test": 1} と送信したい場合
と入力します。
送信する文字列に漢字が含まれる場合、画面上の[漢字コード]の選択に従います。
Shift-JISと UTF8が選択できます。
10進値(0~255) の場合は、そのまま指定します。
ex)
16進値(0x00~0xff) の場合は、0xをつけて指定します。
ex)
これらを組み合わせて、1文をつくるには、 , (カンマ)で区切って連結します。
ex)
使い方へ戻る
画面上部の入力枠に送信したい内容を入力して、Sendボタンを押すと送信されます。
HEX画面 で送受信された内容を そのまま 利用するために設けた機能です。
HEX画面で、該当行をダブルクリックすると、その行を送信枠に取り込むことができます。
これをそのまま、送信することで、検証作業を簡易に行うことができます。
使い方へ戻る
画面上部の入力枠に送信したい内容を入力して、Sendボタンを押すと送信されます。
入力枠の内容がそのまま送信されます。
改行などに関しては送信時終端の設定から、任意のものを選択してください。
NONEの場合は終端を送信しません。
使い方へ戻る
データを受信した場合、テキスト表示タブとHEX(16進)タブに入力結果が表示されます。
通信設定で指定した改行待ち時間が経過すると強制的に改行が行われます。
また、指定したデリミタを受信した際に改行するようにも設定できます。
画面上の受信時終端 から 利用したいものを選びます。
選択できるのは以下の7項目です
NONE
終端判定を行いません
CR
CR (0x0d) を検出したら改行処理を行います。
LF
LF (0x0a) を検出したら改行処理を行います。
CR+LF
CR,LF (0x0d,0x0a) の組を検出したら改行処理を行います。
ETX
ETX (0x03) を検出したら改行処理を行います。
ETX+1
ETX (0x03) と 続く1バイトを検出したら改行処理を行います。
ETX+2
ETX (0x03) と 続く1バイトを検出したら改行処理を行います。
主に、ETX後のCRCやBCCがバイナリで送られてくる場合に使用します。
主に、ETX後のCRCやBCCがキャラクタで送られてくる場合に使用します。
使い方へ戻る
送信につかう電文を予め用意しておき、一定間隔で送信する機能です。
送信間隔は、予め通信設定画面の 『連続送信間隔』の欄に設定しておきます。
メイン画面で 『送信リスト』ボタンを押し、送信リスト画面を表示します。
この画面では、送信リストの選択行をダブルクリックもしくはEnter押し下げにより指定行を送信できます。
送信ボタンでも指定行を送信できます。
連続送信は、送信を開始したい行を選択状態にしてから、『連続送信』ボタンを押すことで一定間隔で送信することができます。
送信に使うファイルは、通常のテキストファイルです。(UFT8)
混在形式かHEXログ形式のいずれかで生成してください。
初期状態では、送信ログファイル(SendList.txt)が指定されています。
また、R1.00.4 以降のバージョンでは、
ファイルのドロップ受け入れ
クリップボードからのペースト
にも対応しました。
ログ表示ボックスに、テキストファイルをドロップすると、そのファイルを連続送信します。
また、CTRL+Vで、クリップボードにあるテキストを送信します。
使い方へ戻る
送受信の結果は、実行ファイルとおなじフォルダ内に
という二つのファイルに保存されます。
自動で保存されます。
また、1ファイルの最大を制約するため、65536行を超えた場合、
のように連番を付与して、自動でバックアップを生成し、ログクリアを行います。
使い方へ戻る
アンインストール
このソフトのは、レジストリをつかっていません。
インストール時にコピーしたファイルを全部消してください。
情報
このソフトはフリーウエアです。
著作は、作者である私(t.noguchi)が保有しています。
転載する場合にはメールでの連絡をお願いします。
また、配布にあたってはオリジナルのアーカイブのまま行ってください。
本プログラムを使用することによって起きる損害等について、著作者はいっさい責任を負いません。
バグ,質問,要望は下記メールアドレスにて行ってください。
謝辞
このソフトは、自分が業務上、必要に駆られてつくったソフトですが、それまでは
飛龍++氏(Vector ソフトウェア作者ページ)
の作成されたシリアルコマンドエクスプローラ2を利用していました。
非常に高機能で扱いやすいソフトで非常に重宝していました。
このソフトがなければ、こういう発想には至らなかったとおもいます。
この場を借りて感謝の意を表したいと思います。
情報&連絡先
E-Mail : mdr19944@mbox.kyoto-inet.or.jp
URL : http://web.kyoto-inet.or.jp/people/mdr19944/index.html
Vector : 作者ページ (an039518)