コマンドライン(バッチファイル)でシリアル(RS232C)の送受信をするツール(DTRやRTSの制御可)
- ソフト名 :コマンドライン通信(RS232C)
- バージョン :1.0.0.3
- ライセンス :フリーソフト(寄付歓迎)
- OS :Windows
- 開発 :のん
コマンドライン通信(RS232C)詳細
本プログラムは、コマンドライン(バッチファイル)でRS232Cの送受信をするツールです。
簡単な例では以下の4行で電文の送受信が出来ます。
SendRs232c.exe "@OPEN@@@@@,%PORT%,9600,8,0,0,0"
SendRs232c.exe -t2b "<STX>1234567890<ETX>"
RecieveRs232c.exe 10 60
SendRs232c.exe "@CLOSE@@@@"
受信電文のチェック処理や繰り返し処理もコマンドプロンプトのIF文やGOTO文でプログラミング出来ます。
特別な送受信処理が必要な場合は、その特別な部分(EXE等) を自作する事で実現可能です。
データロガー等の単純なRS232C制御ならコマンドライン通信(RS232C)で十分だと思います。
まずは、COMポート2つをクロスケーブルで接続し、SampleMain.batを実行してみてください。
<バイナリデータのテキスト形式での表現方法>
簡略名(<NUL><SOH><STX><ETX><EOT><ENQ><ACK><LF><CR><NAK><SYN><ETB><ESC>)
十六進(<00><01><02><10><11><12><a1><A2><a3><f1><F2><f3><Fe><ff>)
<使用例(バッチファイル:SampleTest.bat)>
REM COM11をオープンします
SendRs232c.exe "@OPEN@@@@@,COM11,9600,8,0,0,0"
REM 電文を送信します
SendRs232c.exe -t2b "<STX>1234567890<ETX>"
SendRs232c.exe -t2b -f "dat\test.dat"
REM DTRをONします(RTSも可)
SendRs232c.exe "@SETDTR@@@"
REM 10バイトの電文を受信するまで待ちます(60でタイムアウトする指定)
RecieveRs232c.exe 10 60
REM DSRの値を環境変数に取得します(CTS、RING、RLSDも可)
FOR /F %%i IN (‘CheckRs232c.exe -dsr’) DO SET RCVDSR=%%i
REM 受信した電文の2バイト目から10バイト(文字列)を環境変数に取得します
FOR /F %%i IN (‘CheckRs232c.exe -dat 2 10’) DO SET RCVDAT=%%i
ECHO %RCVDAT%,%RCVDSR%
REM 受信した電文の2バイト目から5バイト(HEX)を環境変数に取得します
FOR /F %%i IN (‘CheckRs232c.exe -dat 2 5 hex’) DO @SET RCVDAT=%%i
ECHO %RCVDAT%,%RCVDSR%
REM 処理済み受信電文削除
DEL /F /Q rcv\*.dat
REM クローズします
SendRs232c.exe "@CLOSE@@@@"