1

ハイパーターミナルと XMODEM プロトコルを使用して、組み込みデバイスで実行されているプログラムに、シリアル ポート経由でファイルを送信する必要があります。コマンドの送信と応答の受信の両方が正常に機能するため、シリアル通信は問題ありません (9600 ボー、1 ストップビット、パリティなし、8 データ ビット、フロー制御なし)。

コマンド「アップロード」を送信すると、デバイスは準備ができたときに応答し、ファイルを待ちます。HyperTerminal で、[Transfer] -> [Send File...] に移動し、ファイルと XMODEM プロトコルを選択して、[Send] をクリックします。[送信] をクリックしても、アップロードが開始されず、タイムアウト メッセージが表示されます。

デバッグ中に、プログラムがシリアル ポートからバイトを受信して​​いないことがわかりますが、キーをクリックしてバイトを送信すると、プログラムはそれを受信します。ハイパーターミナルが何も送信しないことが問題であると推測できますか? 何故ですか?

4

1 に答える 1

0

XMODEM 転送は、送信者ではなく受信者によって開始されます。転送は、受信デバイスが SOH (XMODEM) または 'C' (XMODEM-CRC/1K) を送信すると開始します。受信側が転送を開始しない場合、転送は行われません。

送信側から転送を開始してから、受信側で転送を開始する必要がある場合があります。あるいは、転送を待機しているときに、受信側が応答を取得する (またはタイムアウトする) まで、開始文字を繰り返し送信する場合があります。

于 2014-11-14T15:08:55.720 に答える