通常、Tera Termはテキストデータ通信
マイコンとWindows PCとの通信ではTera Termを使わせてもらっている. 通常Tera Termが入出力するデータはテキストデータとなっている.
具体的には、Tera Termを立ち上げて、キーボードのa
を押すと、Windows PCからマイコンへは0x61が送信される.
参考:http://e-words.jp/p/r-ascii.html
Tera Termでバイナリ通信したい
時々、Tera Termでマイコンへバイナリデータを送りたい時や、マイコンから送信されたバイナリデータをTera Termで受信してPCモニターに表示させたい時がある.
例えば、モータを制御するマイコンがあって、"マイコンに0xAF, 0x03, 0x02と送るとモータが動き出し、正常にモータが動くとマイコンから0xAF, 0x22と応答がある"ような仕様の場合、Tera Termでテキストデータ通信していると困ってしまう.
バイナリデータ送信
マクロを使って任意のバイナリデータを送る.
まず、Tera Termの<設定>--><端末> --> <漢字-送信>をSJISに設定する.
"マイコンに0xAF, 0x03, 0x02と送る"場合、マクロは以下のように書く.
send $AF$03$02
受信したバイナリデータの表示
受信バイナリデータをそのまま表示するのにも設定が必要.
まず、Tera Termの<設定>--><端末> --> <漢字-受信>をSJISに設定する.
Tera Termのバイナリデータ表示はdebug modeで行うので、設定ファイル(TERATERM.INI)の編集してdebug modeを有効にしておく. TERATERM.INIの中でdebug modeの部分を以下のように書き換える.(自分の場合、462行目にあった.)
; Display all characters (debug mode) Debug=on
書き換えたら、Tera Termを再起動するか、Tera Termの<設定>--><設定の読み込み>でTERATERM.INIを読み込む. 表示はSHIFT+ESCで切替できる. マイコンからバイナリデータを受信しているときに、何回かSHIFT+ESCを押していき、バイナリデータ表示されれば完了.