W32_term
W32_term
- これは、Windowsで動作する簡易シリアルターミナルソフトです。
特徴
- Cソースコードが付属します。mingw-gcc(www.mingw.org)でコンパイルします。
- USBで接続されたAVR_termのファームウェアと交信することによって、あたかも仮想COMポートの先にAVR側のUSARTが繋がっているように見せることが出来ます。*1
- 単純なエコーバックサーバーとして動作させることも出来ます。
使い方
- 無手順端末として起動させます。
C:> w32term [Option] Option -b<baudRate> -c<COMM Port> -l<Log File>
- エコーバックサーバーとして起動します。
C:> w32term -e [Option]
- AVRと接続する仮想COMサーバーとして起動します。
C:> w32term -a -c9
- この場合は、ComEmulDrvが必要です。
- 上の例では、このサーバーが使用するCOMポートは COM9を指定しています。(デフォルトはCOM9)
- AVRのUSARTに受信された文字はCOM9に送り、COM9から受信した文字はUSARTから送信します。(下図)
COM9 RxD ----> TxD AVR USART COM9 TxD <---- RxD AVR USART ↑ w32termが介在
- 一例として、ComEmulDrvがCOM5とCOM9のペアを仮想クロスケーブルで接続しているものとします。
COM5 TxD ----> RxD COM9 COM5 RxD <---- TxD COM9 ↑ 仮想クロスケーブル
- PuTTYなどでCOM5を見ると、それはあたかもAVRチップのUSARTが繋がっているように見えます。
COM5 TxD ----> TxD AVR USART COM5 RxD <---- RxD AVR USART ↑ COM5がUSBシリアルポートに化ける。
- ちなみにCOM5、COM9ともにComEmulDrvが作り出した仮想COMポート。
- AVRのボーレート設定はCOM5側からCOM9に渡すなどの芸当は出来ない。
- w32term -a を立ち上げるときに -b<baudRate>オプションを与えることでAVRの初期設定を行う。
ダウンロード
かなり制作途上です。
何に使うの?
- 相手先がCOM:でないと困るようなシリアル接続。(典型例がh8write.c)
- 現状TxD RxD以外の信号線の制御は出来ない。
- 出来たとしてもその反応速度は伝送ボーレートの1/4〜1/7くらい(というかLowSpeedコントロール転送の1サイクル分=4mSに1回程度)なので、あまり利用価値はない。
- というかそれをやるならAVR側のIOポートも割り当てなきゃ。
*1 別途ComEmulDrvも必要です http://mixw.net/related.htm#tncemu