• 検索結果がありません。

ESC ACK SOH

ドキュメント内 Dot Impact Printer STAR コマンド仕様書 (ページ 66-72)

【名 称】 ステータスの問い合わせ

【コード】 ASCII ESC ACK SOH

16進数 1B 06 01

10進数 27 6 1

【定義域】 ---

【初期値】 ---

【機 能】 本コマンドは双方向データ通信が可能なインタフェースにおいてのみ有効である。

本コマンドを受信すると、プリンタはステータスをリアルタイムでホストに送信する(受信バッファから取り出したとき ではなく、ホストから受信した時点で即実行する)。

双方向パラレルインタフェース時は、“データ有り”状態となる。

ステータスの内容については付録 自動ステータスを参照。

シリアルインタフェースのDTRモードの場合、およびパラレルインタフェースの場合は、エラーなどによるオフライン 中もステータスを問い合わせできるように設定しておくこと。

本コマンドを自動ステータス有効時使用しないこと。

なお、プリンタに対して本コマンドを1回送信したら、自動ステータスを最後まで受信するまで、次のESC ACK SOH コマンドを送らないこと。

―――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――

STARコマンド仕様書 3-57

ESC RS a n

【名 称】 自動ステータス送信条件の設定

【コード】 ASCII ESC RS a n

16進数 1B 1E 61 n

10進数 27 30 97 n

【定義域】 仕様①②

0≦n≦3、48≦n≦53 (”0”≦n≦”3”)

仕様③

0≦n≦3、48≦n≦51 (”0”≦n≦”3”)

【初期値】 DIPSW又はメモリスイッチ設定

【機 能】 本コマンドにより、下表の自動ステータス送信条件を設定する。自動ステータスは付録2参照。

本コマンド設定は ESC @(コマンドイニシャリゼーション)にて影響を受けない。

DIPSW/メモリSW設定については、各プリンタの製品仕様書を参照のこと。

尚、無線LAN I/F使用時、本コマンドは無視される。

仕様①

n ステータス送信条件設定

0, 48 ASB無効

1, 49 ASB有効

仕様②

n ステータス送信条件設定

0, 48 ASB無効

1, 49 ASB有効

仕様③

n ステータス送信条件設定

0, 48 ASB無効 ・ NSB無効

1, 49 ASB有効 ・ NSB無効

2, 50 ASB無効 ・ NSB有効

3, 51 ASB有効 ・ NSB有効

―――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――

STARコマンド仕様書 3-58

ETB

【名 称】 ETBステータスの更新 (印字終了の確認)

【コード】 ASCII ETB

16進数 17

10進数 23

【定義域】 ---

【初期値】 仕様① ---

仕様② ETBカウンタ = 0

【機 能】 本コマンドは双方向データ通信が可能なインタフェースにおいてのみ有効である。

仕様 ①

本コマンドにより、全ての印字が終了する(印字モーターが停止する)までウェイトし、印字終了後、自動ステータス プリンタステータス1-1(ETBコマンド)を”1”(ETB実行済み)にする。

本コマンド実行時、ラインバッファ内に印字データが残っていた場合は、残りデータを印字してから本コマンドが実 行される。ホストは、このビットが”1”になったことを確認することで、送信データの印字終了を知ることができる。

このETBステータスビットはホストへ返信したときに”0”にクリアされる。

本コマンドにおけるプリンタ内部の処理詳細を下記に示す。

(1)ETBコマンド、受信バッファから読み出し

(2)ETBコマンド前の印字データの印字終了待ち

(3)印字終了を確認後、自動ステータスのETBステータスをセット

(4)自動ステータス送信(自動ステータス有効時のみ)

自動ステータスについては付録を参照のこと。

仕様 ②

本コマンドにより、全ての印字が終了する(印字モーターが停止する)までウェイトし、印字終了後、自動ステータス

1-1(ETBコマンド)を”1”(ETB実行済み)にするとともに、ETBカウンタを更新(インクリメント)する。

本コマンド実行時、ラインバッファ内に印字データが残っていた場合は、残りデータを印字してから本コマンドが実 行される。ホストは、このビットが”1”になったことを確認することで、送信データの印字終了を知ることができる。

このETBステータスビットはホストへ返信したときに”0”にクリアされる。

また、1データブロック終端にETBを付加して複数ブロックを一括送信し、順次ETBカウンタを取得することにより、

複数ブロックの印字終了の確認を行うことができる。

尚、ETBカウンタのゼロクリアは、ESC RS Eコマンドにて行う。

本コマンドにおけるプリンタ内部の処理詳細を下記に示す。

(1)ETBコマンド、受信バッファから読み出し

(2)ETBコマンド前の印字データの印字終了待ち

(3)印字終了を確認後、自動ステータスのETBステータスをセットし、ETBカウンタをインクリメントする。

(4)自動ステータス送信(自動ステータス有効時のみ)

自動ステータスについては付録を参照のこと。

■Ethernet使用時における注意点

マルチセション有効時、<ETB>により送信されるASB(ETBカウンタ)は接続中の全てのホストに対して送信される。

このため、複数セッションからETBを送信するような使い方をしたの場合、ETBカウンタの誤認の原因となる。

このため、印字終了カウンタの確認は、<ESC><GS><ETX>コマンドを推奨する。

→機種別コマンド対応一覧を参照。

―――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――

STARコマンド仕様書 3-59

ESC RS E n

【名 称】 ASBのETBカウンタとETBステータスの初期化

【コード】 ASCII ESC RS E n

16進数 1B 1E 45 n

10進数 27 30 69 n

【定義域】 n = 0 n = 48 ( “0”)

【初期値】 ---

【機 能】 ASBのETBカウンタをゼロクリアし、自動ステータス1-1のETBステータスをクリアする。

―――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――

STARコマンド仕様書 3-60

ESC GS ETX s n1 n2

【名 称】 印字終了カウンタの送信と初期化

【コード】 ASCII ESC GS ETX s n1 n2

16進数 1B 1D 03 s n1 n2

10進数 27 30 3 s n1 n2

【定義域】 仕様① 0≦s≦2 仕様② 0≦s≦4 0≦n1≦255, 0≦n2≦255

【機 能】 本コマンドは受信バッファから読み出したときに実行され、sパラメータに従って、印字終了カウンタに関する処理を 行う。

s 名称 機能

0 印字終了カウンタ参照 現在の印字終了カウンタをホストへ送信する。

(印字終了は待たない。カウントアップもしない。)

1 印字終了カウンタ更新

次の動作を実行する。

①ラインバッファ内のデータがあれば吐き出し印字実行

②印字終了(モータ停止)まで待つ

③印字終了カウンタを更新(+1)

④印字終了カウンタをホストへ送信

2 印字終了カウンタクリア 印字終了カウンタを初期値に戻す(ゼロクリア)。

(印字終了は待たない。印字終了カウンタはホストへ返信しない。)

3 ドキュメント開始 n1, n2 = 0

①データ吸い込みモード設定

②初期化処理

4 ドキュメント終了 n1, n2 = 0

①ラインバッファ内のデータがあれば吐き出し印字実行

②印字終了(モータ停止)まで待つ

③データ吸い込みモード解除

s=0またはs=1指定時にホストへ返信するデータフォーマットは次の通り。

<返信データフォーマット>

【コード】 ASCII ESC GS ETX s n1 n2 [印字終了カウンタ] NUL

16進数 1B 1D 03 s n1 n2 [印字終了カウンタ] 00

10進数 27 30 3 s n1 n2 [印字終了カウンタ] 0

※ESC GS ETX s n1 n2まではホストからの指定内容をそのままエコーバックし、続いて印字終了カウンタ値と NULを送る。

[印字終了カウンタ] は1バイト長で、初期値は0x00。

s=1の場合には、本コマンドを処理するごとに+1する。0xFFの次は0x00に戻る。

[印字終了カウンタ] は、n1,n2値とは無関係にプリンタ内に1つ存在している。

(n1n2値に対応したカウンタがあるわけではない。)

(参考情報)ETBコマンドと本コマンドの相違点

項目 ESC GS ETX s n1 n2 ETB

ASB (ETBステータス)への影響 なし あり

ASB発生 なし あり

ASB有効/無効設定の影響 なし あり

ESC RS E nコマンドの影響 なし あり

Ethernetにおけるステータス送信先

(マルチセッション有効時)

接続中の当該印刷セッション(ホ スト)にのみ送信する

ASB を接続中の全セッション(ホ スト)へ配信する

※本印字終了カウンタとETBコマンドにより送信されるETBカウンタは別であり、お互いに影響を及ぼさない。

―――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――

STARコマンド仕様書 3-61

下記に、本コマンドの通信例を示す。

通信例1

ホスト送信データ プリンタ返信データ

ESC GS ETX 0x00 0x00 0x00 →

← ESC GS ETX 0x00 0x00 0x00 0x00 0x00 (カウンタ参照)

印刷データ+ESC GS ETX 0x01 0x00 0x00 →

← ESC GS ETX 0x01 0x00 0x00 0x01 0x00 (カウンタ更新)

印刷データ+ESC GS ETX 0x01 0x00 0x00 →

← ESC GS ETX 0x01 0x00 0x00 0x02 0x00 (カウンタ更新)

通信例2

ホスト送信データ プリンタ返信データ

ESC GS ETX 0x02 0x02 0x00

ESC GS ETX 0x00 0x02 0x00 →

← ESC GS ETX 0x00 0x02 0x00 0x00 0x00

(カウンタクリア)

(カウンタ参照)

印刷データ+ESC GS ETX 0x01 0x02 0x11 →

← ESC GS ETX 0x01 0x02 0x11 0x01 0x00 (カウンタ更新)

印刷データ+ESC GS ETX 0x01 0x02 0x12 →

← ESC GS ETX 0x01 0x02 0x12 0x02 0x00 (カウンタ更新)

印刷データ+ESC GS ETX 0x01 0x02 0x13 →

← ESC GS ETX 0x01 0x02 0x13 0x03 0x00 (カウンタ更新)

印刷データ+ESC GS ETX 0x01 0x02 0x14 →

← ESC GS ETX 0x01 0x02 0x14 0x04 0x00 (カウンタ更新)

<n1, n2の活用例>

・Ethernetの場合: n1=ホストID、n2=ドキュメント番号として指定し、返信される印字終了カウンタ取得とともに、

ホストID、ドキュメントIDについて送信元の情報と返信された情報との整合性の確認をする。

・Etheenet以外の場合: n1+ n2*256をドキュメントIDとして指定し、同様にドキュメントIDの整合性の確認をする。

・送信元と返信元の整合性の確認をしない場合:常にn1=0, n2=0固定とする。

―――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――

STARコマンド仕様書 3-62

ドキュメント開始コマンド受信後エラーになった場合、エラーからの復帰時にドキュメント終了コマンドまで受信データを受け捨て する。ドキュメント終了コマンドを認識できない場合は、受信データを全て破棄する。タイムアウトを10秒とし、データ吸い込み モードを自動解除する。

【制限事項】

1) スループット低下

s=3指定時の初期化処理は、ESC @ (コマンドイニシャリゼーション)と同じ各種コマンド初期化を行う。

PE PE

T

T

T

文書1

文書2

文書3

文書1

文書2

文書3

E

E

E

E

受け捨て 受け捨て

T

< T : TOPコマンド / E : ENDコマンド >

ドキュメント内 Dot Impact Printer STAR コマンド仕様書 (ページ 66-72)

関連したドキュメント