ホストコマンド
H8/3048Fは、パーソナルコンピュータからコマンドをもらい
c328(scam)を動かします。
パーソナルコンピュータからは、端末ソフトを利用して
コマンドを与えます。
どのようなコマンドがあればよいかリストします。
- c328(scam)と同期をとる
- c328(scam)の動作モード用パラメータ設定
- 画像取得指示
- 取得画像データ転送
- 現在の状態表示
AZ分類法を適用して、コマンド用英大文字の1文字を決めます。
- 'C' : communicate => c328(scam)と同期をとる
- 'P' : parameters => c328(scam)の動作モード用パラメータ設定
- 'G' : get image => 画像取得指示
- 'L' : load image => 取得画像データ転送
- 'S' : status => 現在の状態表示
各コマンドの詳細を規定します。
同期
'C'コマンドで、c328(scam)にSYNCを最大60回転送します。
コマンドだけでよいので、フォーマットは以下とします。
'C'{enter}
、実際の処理は、別途定義の関数に一任します。
パラメータ設定
'P'コマンドで、c328(scam)が必要とするパラメータを設定します。
次の4パラメータを設定できるようにします。
- 圧縮、非圧縮指定
- GrayScaleのビット数(8ビットか2ビット)
- 画像分解能(160 x 120か80 x 60)
- 画像種別(SnapShotかPreview)
'P'に続けて、0か1のいずれかの4文字を指定します。
次のように入力します。
'P1100'{enter}
圧縮、非圧縮指定
第1パラメータで、指定します。
1:非圧縮 0:圧縮
とします。
GrayScaleのビット数
第2パラメータで、指定します。
1:8ビット 0:2ビット
とします。
画像分解能
第3パラメータで、指定します。
1:160 x 120 0:80 x 60
とします。
画像種別
第4パラメータで、指定します。
1:Preview 0:SnapShot
とします。
'P'で指定した内容は、変数sysparamにビットデータとして
保存しておきます。ステータス表示のときに、これらビット
データを参照します。
画像取得指示
'G'コマンドで、c328(scam)に画像取得を指示します。
コマンドだけでよいので、フォーマットは以下とします。
'G'{enter}
実際の処理は、別途定義の関数に一任します。
取得画像データ転送
'L'コマンドで、取得画像データをホストに転送します。
c328(scam)が取得した画像データは、H8が管理するSRAMに
転送済みとします。
SRAMに格納しているデータを、16進2文字にして転送します。
画像分解能は、160 x 120か80 x 60なので、19200バイトか4800バイト
になります。
状態表示
'S'コマンドで、現在の状態表示をホストに転送します。
次の5個の情報を文字列で転送します。
- 圧縮、非圧縮指定 => uncompressedかcompressedを転送
- GrayScaleのビット数=> 8 bitsか2 bitsを転送
- 画像分解能 => 160 x 120か80 x 60を転送
- 画像種別 => previewかsnapshotを転送
- 同期状況 => SYNC OKかSYNC NGを転送
コマンドだけでよいので、フォーマットは以下とします。
'S'{enter}
その他のコマンド
あれば便利なホストコマンドを考えてみます。
ヘルプ
端末ソフトを操作しながら、すべてのコマンドをソース
コードを見ての入力は面倒です。忘れることもあります。
そこで、ヘルプコマンドを用意します。
'?'{enter}
で、各コマンドの短い解説を転送します。
ハードウエアテスト
H8には、SRAMやランダムロジックICが接続されます。
これらのハードウエアをテストするためのコマンドを
用意しておきます。
'T'に、必要なパラメータを2文字を続けます。
詳細は、別途定義します。
デバッグ
H8からc328(scam)に設定しているパラメータや動作シーケンスの
内容を表示します。これで、ファームウエアの正否判断と不具合
原因を見つけやすくします。
'D1'{enter}で、デバッグモードとなり、パラメータや動作シーケンス
を文字列で表示します。
'D0'{enter}で、デバッグモードを抜けます。
目次
前
次