本文書は, パソコンからSHARPのポケコンPC-G850にIntelHEXを送信する方法の説明である. USB接続でファイルを送信する場合, 1行ごとに送信を遅延することが必要な場合がある. しかし, PC-Gリンクでは設定する方法がない. ここではターミナルソフトのTera Termを使う方法を紹介する.
TeraTerm Home Page - Tera Term公式ページ
筆者はくりこうさんの簡易レベルコンバータと, USB-シリアルケーブルUSB-RS232C-VIで試したところ, 正常に通信できた.
USB-シリアルケーブルをパソコンにつなげる.
その後, デバイスマネージャでUSB-シリアルポートをダブルクリックし, プロパティウィンドウを開く(上の画像の通りとは限らない).
また, COMポートの番号は後で必要なので覚えておく. (この場合はCOM8である.)
ポートの設定の詳細設定(A)ボタンを押す.
FIFOバッファを使用する(U)のチェックを外す.
設定(S)-端末(T)を選択する.
改行コード 送信(M)をCR+LF, ローカルエコー(L)をチェックする.
設定(S)-シリアルポート(E)を選択する.
ポート(P)をUSB-シリアルのポート, ボー・レート(B)を9600, データ(D)を8bit, パリティ(A)をnone, ストップ(S)を1bit, フロー制御(F)をnone, 送信遅延を50ミリ秒/行(L)にする.
必要な送信遅延は環境に依存する.
PC-G850側でDEVICE I/O ERRORとなる場合はもっと長くする必要がある.
設定(S)-設定の保存(S)を選択する
PC-G850側で, [TEXT]→[S]→[F]でSIO設定画面に移行する.
baud rateを9600にする.
[BASIC]→MONでマシン語モニタに移行する.
USERコマンドで必要なメモリを確保し, Rコマンドで受信を待つ.
ファイル(F) - ファイル送信(S)を選択する.
送信するIntelHEXファイルを選択する.
送信が終了するのを待つ.
送信が終わるとウィンドウが閉じる. その後, CTRLを押しながらZを押す.
マシン語モニタが入力可能な状態に戻れば成功である.
ケーブルによってはフロー制御を行える.
シリアルポートの設定でフロー制御(F)をhardwareにすると有効になるので試してみるとよい.
筆者の環境ではフロー制御を有効にして高速な送信が行えた.
nさん ありがとうございました.