(57)【要約】【課題】  ＤＭＡ転送を用いた画像印刷時にエラー等が生じて印刷をやり直す場合に、素早く再印刷を行うことができる。【解決手段】  印刷装置２と、ホスト装置１と、が接続された印刷システムＳＹであって、印刷装置２は、ホスト装置からデータを受信するＵＳＢインターフェース２１と、ＤＭＡ転送モードにおいて、受信した前記データを直接プリントバッファ５２にＤＭＡ転送するＤＭＡ転送部７６と、プリントバッファ５２にＤＭＡ転送されたデータを読み出して、画像印刷を行う印刷部２２、７７と、画像印刷時に、ホスト装置１からの中断要求を受けて、ＤＭＡ転送部７７によるＤＭＡ転送を中断する転送中断部８０と、を備え、ホスト装置１は、ＵＳＢリクエストで、印刷装置２に対し、中断要求を行う。【選択図】  図２
2017010122.tif 000002
【特許請求の範囲】
【請求項１】
印刷装置と、ホスト装置と、が接続された印刷システムであって、
前記印刷装置は、
前記ホスト装置からデータを受信するＵＳＢインターフェースと、
ＤＭＡ転送モードにおいて、受信した前記データを直接プリントバッファにＤＭＡ転送するＤＭＡ転送部と、
前記プリントバッファにＤＭＡ転送された前記データを読み出して、画像印刷を行う印刷部と、
前記画像印刷時に、前記ホスト装置からの中断要求を受けて、前記ＤＭＡ転送部による前記ＤＭＡ転送を中断する転送中断部と、を備え、
前記ホスト装置は、
ＵＳＢリクエストで、前記印刷装置に対し、前記中断要求を行うことを特徴とする印刷システム。
【請求項２】
前記印刷装置は、
前記画像印刷時に当該印刷装置が特定の状態になったことを検出する状態検出部と、
前記状態検出部によって、前記画像印刷時に当該印刷装置が特定の状態になったことが検出された場合、前記特定の状態となったことを前記ホスト装置に通知する状態通知部と、を更に備え、
前記ホスト装置は、
前記状態通知部からの通知を受けて、前記印刷装置に対し、前記中断要求を行うことを特徴とする請求項１に記載の印刷システム。
【請求項３】
前記特定の状態は、特定のエラー状態を含むことを特徴とする請求項２に記載の印刷システム。
【請求項４】
前記特定の状態は、特定のキー操作が行われた状態を含むことを特徴とする請求項２または３に記載の印刷システム。
【請求項５】
ホスト装置からデータを受信するＵＳＢインターフェースと、
ＤＭＡ転送モードにおいて、受信した前記データを直接プリントバッファにＤＭＡ転送するＤＭＡ転送部と、
前記プリントバッファにＤＭＡ転送された前記データを読み出して、画像印刷を行う印刷部と、
前記画像印刷時に、前記ホスト装置によってＵＳＢリクエストで当該印刷装置に対し行われた中断要求を受けて、前記ＤＭＡ転送部による前記ＤＭＡ転送を中断する転送中断部と、を備えたことを特徴とする印刷装置。
【請求項６】
ホスト装置からデータを受信する通信インターフェースと、
ＤＭＡ転送モードにおいて、受信した前記データを直接プリントバッファにＤＭＡ転送するＤＭＡ転送部と、
前記プリントバッファにＤＭＡ転送された前記データを読み出して、画像印刷を行う印刷部と、
前記画像印刷時に当該印刷装置が特定の状態になったことを検出する状態検出部と、
前記状態検出部によって、前記画像印刷時に当該印刷装置が前記特定の状態になったことが検出された場合、前記ＤＭＡ転送部による前記ＤＭＡ転送を中断する転送中断部と、を備えたことを特徴とする印刷装置。
【請求項７】
前記特定の状態は、特定のエラー状態を含むことを特徴とする請求項６に記載の印刷装置。
【請求項８】
前記特定の状態は、特定のキー操作が行われた状態を含むことを特徴とする請求項６または７に記載の印刷装置。
【請求項９】
前記特定の状態は、前記ホスト装置と接続する接続ケーブルが切断された状態を含むことを特徴とする請求項６ないし８のいずれか一項に記載の印刷装置。
【請求項１０】
前記特定の状態は、前記通信インターフェースにより前記ホスト装置からの前記データを一定期間受信しない状態を含むことを特徴とする請求項６ないし９のいずれか一項に記載の印刷装置。
【請求項１１】
ホスト装置と、前記ホスト装置からデータを受信する通信インターフェース、ＤＭＡ転送モードにおいて、受信した前記データを直接プリントバッファにＤＭＡ転送するＤＭＡ転送部および前記プリントバッファにＤＭＡ転送された前記データを読み出して、画像印刷を行う印刷部を備えた印刷装置と、が接続された印刷システムの制御方法であって、
前記ホスト装置が、
ＵＳＢリクエストで、前記印刷装置に対し、中断要求を行い、
前記印刷装置が、
前記画像印刷時に、前記ホスト装置からの前記中断要求を受けて、前記ＤＭＡ転送部による前記ＤＭＡ転送を中断することを特徴とする印刷システムの制御方法。
【請求項１２】
ホスト装置からデータを受信する通信インターフェースと、ＤＭＡ転送モードにおいて、受信した前記データを直接プリントバッファにＤＭＡ転送するＤＭＡ転送部と、前記プリントバッファにＤＭＡ転送された前記データを読み出して、画像印刷を行う印刷部と、を備えた印刷装置の制御方法であって、
前記画像印刷時に当該印刷装置が特定の状態になったことを検出する状態検出ステップと、
前記状態検出ステップによって、前記画像印刷時に当該印刷装置が前記特定の状態になったことが検出された場合、前記ＤＭＡ転送部による前記ＤＭＡ転送を中断する転送中断ステップと、を実行することを特徴とする印刷装置の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ホスト装置からデータを受信して画像印刷を行う印刷システム、印刷装置、印刷システムの制御方法および印刷装置の制御方法に関するものである。
【背景技術】
【０００２】
従来、この種の印刷システムとして、ホスト装置（ホストコンピューター）と、ホスト装置に接続された印刷装置（ＰＯＳプリンター）と、を備えたものが知られている（特許文献１参照）。この印刷装置は、ホスト装置から印刷画像データ（印刷データ）を受信する通信用インターフェースと、ＤＭＡ（Direct  Memory  Access）転送モードにおいて、受信した印刷画像データを直接プリントバッファにＤＭＡ転送するＤＭＡ制御部と、印刷機構を制御して、プリントバッファに転送された印刷画像データを印刷する印刷制御部と、を有する。この印刷装置では、ホスト装置から分割して送られてくる印刷画像データを、ＤＭＡ制御部により順次プリントバッファにＤＭＡ転送しつつ、プリントバッファに順次転送されてくる印刷データを、印刷制御部により順次印刷していくことで、画像印刷を行う。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１１−２３５５６８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、この種のＤＭＡ転送は、ＣＰＵ（Central  Processing  Unit）を介さずに実行されるものであり、データ転送を開始したら、所定のデータ量転送し終えるまで、データ転送をし続ける構成である。
そして、上記従来の印刷装置では、ＤＭＡ転送を中断することができなかったため、画像印刷時にエラー等が生じて印刷をやり直す場合に、所定のデータ量転送し終えるまで待って、再印刷を行う必要があった。例えば、エラー等が生じて印刷をやり直す場合、ホスト装置からＮＵＬデータを送信して、所定のデータ量の転送を終わらせた後、再印刷を行っていた。そのため、エラー復帰後の再印刷の開始までに時間がかかっていた。
【０００５】
本発明は、ＤＭＡ転送を用いた画像印刷時にエラー等が生じて印刷をやり直す場合に、素早く再印刷を行うことができる印刷システム、印刷装置、印刷システムの制御方法および印刷装置の制御方法を提供することを課題としている。
【課題を解決するための手段】
【０００６】
本発明の印刷システムは、印刷装置と、ホスト装置と、が接続された印刷システムであって、印刷装置は、ホスト装置からデータを受信するＵＳＢ（Universal  Serial  Bus）インターフェースと、ＤＭＡ転送モードにおいて、受信したデータを直接プリントバッファにＤＭＡ転送するＤＭＡ転送部と、プリントバッファにＤＭＡ転送されたデータを読み出して、画像印刷を行う印刷部と、画像印刷時に、ホスト装置からの中断要求を受けて、ＤＭＡ転送部によるＤＭＡ転送を中断する転送中断部と、を備え、ホスト装置は、ＵＳＢリクエストで、印刷装置に対し、中断要求を行うことを特徴とする。
【０００７】
この場合、印刷装置は、画像印刷時に当該印刷装置が特定の状態になったことを検出する状態検出部と、状態検出部によって、画像印刷時に当該印刷装置が特定の状態になったことが検出された場合、特定の状態となったことをホスト装置に通知する状態通知部と、を更に備え、ホスト装置は、状態通知部からの通知を受けて、印刷装置に対し、中断要求を行うことを特徴とする。
【０００８】
この場合、特定の状態は、特定のエラー状態を含むことが好ましい。
【０００９】
また、特定の状態は、特定のキー操作が行われた状態を含むことが好ましい。
【００１０】
本発明の印刷装置は、ホスト装置からデータを受信するＵＳＢインターフェースと、ＤＭＡ転送モードにおいて、受信したデータを直接プリントバッファにＤＭＡ転送するＤＭＡ転送部と、プリントバッファにＤＭＡ転送されたデータを読み出して、画像印刷を行う印刷部と、画像印刷時に、ホスト装置によってＵＳＢリクエストで当該印刷装置に対し行われた中断要求を受けて、ＤＭＡ転送部によるＤＭＡ転送を中断する転送中断部と、を備えたことを特徴とする。
【００１１】
本発明の印刷システムの制御方法は、ホスト装置と、ホスト装置からデータを受信する通信インターフェース、ＤＭＡ転送モードにおいて、受信したデータを直接プリントバッファにＤＭＡ転送するＤＭＡ転送部およびプリントバッファにＤＭＡ転送されたデータを読み出して、画像印刷を行う印刷部を備えた印刷装置と、が接続された印刷システムの制御方法であって、ホスト装置が、ＵＳＢリクエストで、印刷装置に対し、中断要求を行い、印刷装置が、画像印刷時に、ホスト装置からの中断要求を受けて、ＤＭＡ転送部によるＤＭＡ転送を中断することを特徴とする。
【００１２】
これらの構成によれば、ホスト装置が、ＵＳＢリクエストを用いて、印刷装置に対する中断要求を行うことで、印刷装置における画像印刷時のＤＭＡ転送を中断することができる。すなわち、ＤＭＡ転送モードにおいて、通常のデータ送信で印刷装置に対する中断要求を行うと、当該中断要求が、ＤＭＡ転送部によりプリントバッファにＤＭＡ転送されてしまうが、上記のように、コントロール転送用のＵＳＢリクエストを用いて、中断要求を行うことで、当該中断要求がプリントバッファにＤＭＡ転送されてしまうのを避けることができる。よって、転送中断部により、当該中断要求を受けて、ＤＭＡ転送を中断することができる。より詳しくは、通常のデータ送信では、印刷画像データと同様、ＵＳＢインターフェースのエンドポイント１を利用するため、プリントバッファにＤＭＡ転送されてしまうのに対し、ＵＳＢリクエストでは、エンドポイント０を利用することができるため、プリントバッファにＤＭＡ転送されてしまうのを避けることができる。
このように、画像印刷時のＤＭＡ転送を中断することができるので、画像印刷時に、エラー等が生じて印刷が中断した場合にも、ＤＭＡ転送において所定のデータ量転送し終えるまで待つことなく、ＤＭＡ転送を終わらせることができる。よって、ＤＭＡ転送を素早く再起動することができ、素早く再印刷を行うことができる。
【００１３】
本発明の他の印刷装置は、ホスト装置からデータを受信する通信インターフェースと、ＤＭＡ転送モードにおいて、受信したデータを直接プリントバッファにＤＭＡ転送するＤＭＡ転送部と、プリントバッファにＤＭＡ転送されたデータを読み出して、画像印刷を行う印刷部と、画像印刷時に当該印刷装置が特定の状態になったことを検出する状態検出部と、状態検出部によって、画像印刷時に当該印刷装置が特定の状態になったことが検出された場合、ＤＭＡ転送部によるＤＭＡ転送を中断する転送中断部と、を備えたことを特徴とする。
【００１４】
この場合、特定の状態は、特定のエラー状態を含むことが好ましい。
【００１５】
また、特定の状態は、特定のキー操作が行われた状態を含むことが好ましい。
【００１６】
さらに、特定の状態は、ホスト装置と接続する接続ケーブルが切断された状態を含むことが好ましい。
【００１７】
またさらに、特定の状態は、通信インターフェースによりホスト装置からのデータを一定期間受信しない状態を含むことが好ましい。
【００１８】
本発明の印刷装置の制御方法は、ホスト装置からデータを受信する通信インターフェースと、ＤＭＡ転送モードにおいて、受信したデータを直接プリントバッファにＤＭＡ転送するＤＭＡ転送部と、プリントバッファにＤＭＡ転送されたデータを読み出して、画像印刷を行う印刷部と、を備えた印刷装置の制御方法であって、画像印刷時に当該印刷装置が特定の状態になったことを検出する状態検出ステップと、状態検出ステップによって、画像印刷時に当該印刷装置が特定の状態になったことが検出された場合、ＤＭＡ転送部によるＤＭＡ転送を中断する転送中断ステップと、を実行することを特徴とする。
【００１９】
これらの構成によれば、画像印刷時に特定の状態となったことを検出した場合に、ＤＭＡ転送を中断する構成であるため、画像印刷時にエラー等が生じて画像印刷が中断した場合、ＤＭＡ転送を中断することができる。そのため、画像印刷時にエラー等が生じた場合にも、ＤＭＡ転送において所定のデータ量転送し終えるまで待つことなく、ＤＭＡ転送を終わらせることができる。よって、ＤＭＡ転送を素早く再起動することができ、素早く再印刷を行うことができる。
【図面の簡単な説明】
【００２０】
【図１】本発明の一実施形態に係る印刷システムのシステム構成図である。
【図２】第１実施形態におけるホスト装置および印刷装置の機能構成を示した機能ブロック図である。
【図３】画像印刷動作を示したフローチャートである。
【図４】第１実施形態におけるＤＭＡ転送の中断動作を示したフローチャートである。
【図５】第２実施形態におけるホスト装置および印刷装置の機能構成を示した機能ブロック図である。
【図６】第２実施形態におけるＤＭＡ転送の中断動作を示したフローチャートである。
【発明を実施するための形態】
【００２１】
以下、添付の図面を参照して、本発明の一実施形態に係る印刷システム、印刷装置、印刷システムの制御方法および印刷装置の制御方法について説明する。実施形態では、本発明を適用した印刷システムを例示する。この印刷システムは、印刷媒体に対し印刷処理を行って、印刷物（例えばレシート）を作成するものである。
【００２２】
［第１実施形態］
図１に示すように、印刷システムＳＹは、ホスト装置１と、ホスト装置１に接続された印刷装置２と、を有する。ホスト装置１と印刷装置２とは、ＵＳＢケーブル３（接続ケーブル）を介して接続され、各種データをＵＳＢ転送方式でやり取り可能に構成される。
【００２３】
ホスト装置１は、各種コマンドを生成し、生成した各種コマンドを印刷装置２に送信するものであり、印刷装置２とのデータ通信を行うＵＳＢインターフェース６と、ＵＳＢインターフェース６を制御する制御部７と、を備える。
【００２４】
ＵＳＢインターフェース６は、ＵＳＢケーブル３を介して、印刷装置２とのデータ通信を行うものであり、上記した各種コマンドを印刷装置２に送信する。具体的には、ＵＳＢインターフェース６は、画像印刷コマンドや文字印刷コマンド等のコマンドを１バイト毎に分割して印刷装置２に送信する。画像印刷コマンドおよび文字印刷コマンドは、ヘッダー部と、データ本体（画像印刷コマンドでは印刷画像データ）と、により構成される。当該ヘッダー部には、少なくとも、コマンドの種類の情報と、データ本体のデータサイズの情報とが記載される。詳細は後述するが、印刷装置２は、当該ヘッダー部を参照することで、これらの情報を取得する。
【００２５】
制御部７は、ＣＰＵ１１、ＲＡＭ（Random  Access  Memory）１２、ＲＯＭ（Read  Only  Memory）１３およびハードディスクドライブ１４等を有し、ホスト装置１を統括制御する。ハードディスクドライブ１４は、プリンタードライバー１６を記憶する。
【００２６】
一方、印刷装置２は、ホスト装置１から各種コマンドを受信し、当該各種コマンドに基づいて、各種処理を行う。例えば、画像印刷コマンドに基づいて、印刷媒体に対し画像印刷を行い、文字印刷コマンドに基づいて、印刷媒体に対し文字印刷を行う。印刷装置２は、例えばレシート印刷装置である。
【００２７】
印刷装置２は、ホスト装置１とのデータ通信を行うＵＳＢインターフェース２１（通信インターフェース）と、印刷媒体に対し印刷処理を行うプリンターエンジン２２と、ＵＳＢインターフェース２１およびプリンターエンジン２２を制御するプリンターコントローラー２３と、を備える。印刷装置２では、プリンターコントローラー２３の制御の下、ＵＳＢインターフェース２１により、各種コマンドを受信し、プリンターエンジン２２により、受信した各種コマンドに基づく印刷処理を行う。これによって、印刷物を作成する。
また、印刷装置２は、印刷媒体をセットするために開閉する開閉カバー（図示省略）の開閉を検出するカバーセンサー２４と、印刷媒体の紙送りするためのＦｅｅｄボタン２５と、を備える。
【００２８】
ＵＳＢインターフェース２１は、ＵＳＢケーブル３を介して、ホスト装置１との通信を行うものである。ＵＳＢインターフェース２１は、データの送受信を行うＵＳＢコネクター３１と、ＵＳＢコネクター３１によるデータの送受信を制御するＵＳＢコントローラー３２と、ＵＳＢコネクター３１により受信したデータを一時記憶するＦＩＦＯ（First  In  First  Out）バッファ３３と、を備える。ホスト装置１から上記各種コマンドを含む各種データを受信する場合には、ＵＳＢコントローラー３２の制御の下、１バイト単位で送られてくるデータを順次ＦＩＦＯバッファ３３に一時記憶する。なお、詳細は後述するが、ここで一時記憶したデータは、プリンターコントローラー２３により、ＦＩＦＯバッファ３３から、受信バッファ５１やプリントバッファ５２（いずれも後述）にデータ転送される。
【００２９】
なお、ＦＩＦＯバッファ３３は、エンドポイント０と、エンドポイント１と、を有する。エンドポイント０は、コントロール転送用のＵＳＢリクエストを受信するのに用いるものであり、一方、エンドポイント１は、ＵＳＢリクエストを除くデータ、すなわち、通常のデータを受信するのに用いるものである。ＵＳＢコントローラー３２は、プリンターコントローラー２３からの、データ転送モードのモード切替通知（後述する）を受けて、エンドポイント１の出力先を切り替える。
【００３０】
プリンターコントローラー２３は、印刷装置２を統括制御する統括制御部４１と、ＤＭＡ転送を行うためのＤＭＡコントローラー４２と、を備える。ＤＭＡコントローラー４２は、後述のＤＭＡ転送モードにおいて、ＦＩＦＯバッファ３３に記憶されたデータを、直接プリントバッファ５２にＤＭＡ転送するのに用いられる。
【００３１】
統括制御部４１は、ＣＰＵ４６、ＲＡＭ４７、ＲＯＭ４８等を有し、印刷装置２を統括制御する。ＲＡＭ４７は、ＵＳＢインターフェース２１からのデータを一時記憶する受信バッファ５１と、プリンターエンジン２２により印刷する印刷画像データを記憶するプリントバッファ５２と、を有する。一方、ＲＯＭ４８は、印刷装置２を制御するためのファームウェア５３を記憶する。
【００３２】
本印刷装置２では、プリンターコントローラー２３が、ＵＳＢインターフェース２１により受信したデータ（ＦＩＦＯバッファ３３に記憶されたデータ）をプリントバッファ５２に転送する「転送部」として機能する。具体的には、プリンターコントローラー２３は、データ転送モードとして、通常転送モードとＤＭＡ転送モードとを有し、これらの両転送モードを適宜切り替えて、データ転送を行う。詳細は後述するが、通常転送モードでは、ＦＩＦＯバッファ３３に記憶されたデータを受信バッファ５１に格納する。そして、格納されたデータに対しコマンド解析を行うと共に、受信バッファ５１に格納されたデータをプリントバッファ５２に展開する。一方、ＤＭＡ転送モードでは、ＦＩＦＯバッファ３３に記憶されたデータを、受信バッファ５１に格納することなく、直接プリントバッファ５２にＤＭＡ転送する。
【００３３】
ここで図２を参照して、ホスト装置１および印刷装置２の機能構成について説明する。図２に示すように、ホスト装置１は、画像印刷コマンド送信部６１と、中断要求部６２と、を備える。画像印刷コマンド送信部６１および中断要求部６２は、プリンタードライバー１６を実行するＣＰＵ１１により構成される。
【００３４】
画像印刷コマンド送信部６１は、画像印刷コマンドを、１バイト毎に分割して印刷装置２に送信する。上記したように、画像印刷コマンドは、ヘッダー部とデータ本体（印刷画像データ）とを有するため、画像印刷コマンド送信部６１は、画像印刷コマンドのヘッダー部を送信した後、画像印刷コマンドのデータ本体を送信する。
【００３５】
中断要求部６２は、コントロール転送用のＵＳＢリクエストで、印刷装置２に対し、ＤＭＡ転送の中断要求を行う。具体的には、中断要求部６２は、ＵＳＢリクエストで構成された中断要求コマンドを、印刷装置２に送信して、印刷装置２におけるＤＭＡ転送を中断させる。
【００３６】
印刷装置２は、受信制御部７１と、データ格納部７２と、コマンド解析部７３と、コマンド処理部７４と、モード切替部７５と、ＤＭＡ転送部７６と、印刷制御部７７と、状態検出部７８と、状態通知部７９と、転送中断部８０と、上記のＦＩＦＯバッファ３３、受信バッファ５１およびプリントバッファ５２と、を備える。受信制御部７１は、ＵＳＢコントローラー３２により構成される。また、データ格納部７２、コマンド解析部７３、コマンド処理部７４、モード切替部７５、印刷制御部７７、状態検出部７８、状態通知部７９および転送中断部８０は、ファームウェア５３を実行するＣＰＵ４６により構成される。さらに、ＤＭＡ転送部７６は、ＤＭＡコントローラー４２により構成される。
【００３７】
受信制御部７１は、ホスト装置１から送られてくるデータの受信制御を行う。また、受信制御部７１は、モード切替部７５によるモード切替通知を受けて、ＦＩＦＯバッファ３３のエンドポイント１の出力先を、受信バッファ５１とプリントバッファ５２との間で切り替える処理を行う。
【００３８】
データ格納部７２は、通常転送モードにおいて、ＦＩＦＯバッファ３３に記憶されたデータを、受信バッファ５１に格納する。具体的には、データ格納部７２は、ＦＩＦＯバッファ３３に記憶されたデータを、１バイトずつ受信バッファ５１に転送し、受信バッファ５１に格納していく。
【００３９】
コマンド解析部７３は、受信バッファ５１に格納されたデータに対し、コマンド解析を行って、受信したデータが、どのコマンドであるかを判定する。画像印刷コマンドや文字印刷コマンドの場合には、受信バッファ５１に格納されたデータを順に精査して、コマンドのヘッダー部を抽出し、抽出したヘッダー部を参照して、当該コマンドの種類およびデータ本体のデータサイズを判定する。また、コマンド解析部７３は、コマンドの種類が、画像印刷コマンドであると判定された場合、抽出したヘッダー部が、ＤＭＡ転送可能な画像印刷コマンドのヘッダー部であるか否かを判定する。すなわち、当該ヘッダー部のコマンドが、ＤＭＡ転送条件を満たすか否かを判定する。ＤＭＡ転送条件は、例えば、高速受信可能な通信デバイスが接続された状態にあること、スタンダードモードである（ページモードがデータを重ねることができる）こと、Ｘ方向（紙幅方向）の展開位置が８の倍数であること、残りの展開領域に展開イメージが入ること、ＸＹ方向（紙幅方向および紙長さ方向）の両方について拡大縮小が指定された状態にないこと等である。
【００４０】
コマンド処理部７４は、コマンド解析部７３による解析結果に基づき、コマンドの種類に応じたコマンド処理を行う。例えば、コマンドの種類が、文字印刷コマンドであると判定された場合には、データ本体の文字データに基づいて、文字印刷を行うための印刷画像データを生成し、生成した印刷画像データをプリントバッファ５２に展開する。また、コマンドの種類が、画像印刷コマンドであると判定された場合、ＤＭＡ転送不能な画像印刷コマンドであると判定されたときには、データ本体の印刷画像データをプリントバッファ５２に展開する。また、ＤＭＡ転送可能な画像コマンドであると判定されたときには、ＤＭＡ転送部７６にＤＭＡ転送命令を出力して、印刷画像データのＤＭＡ転送を行わせる。なお、コマンド処理部７４は、コマンド解析部７３によるコマンド解析で得られたデータ本体のデータサイズを付加して、ＤＭＡ転送命令を出力する。
【００４１】
モード切替部７５は、データ転送モードを、通常転送モードとＤＭＡ転送モードとの間で切り替える処理を行う。具体的には、コマンド解析部７３により、受信したデータが、ＤＭＡ転送可能な画像印刷コマンドのヘッダー部であると判定された場合、データ転送モードを、通常転送モードからＤＭＡ転送モードを切り替えて、その旨を受信制御部７１に通知する（モード切替通知）。また、その画像印刷コマンドのデータ転送（ＤＭＡ転送）が終了したら、データ転送モードを、ＤＭＡ転送モードから通常転送モードに戻して（切り替えて）、その旨を受信制御部７１に通知する（モード切替通知）。これに対し、受信制御部７１は、ＤＭＡ転送モードに切り替えた旨の通知を受けると、上記エンドポイント１の出力先をプリントバッファ５２に切り替える。また、受信制御部７１は、通常転送モードに切り替えた旨の通知を受けると、エンドポイント１の出力先を受信バッファ５１に切り替える。なお、エンドポイント０については、データ転送モードが、どのデータ転送モードに切り替わったかにかかわらず、その出力先が受信バッファ５１となっている。
【００４２】
ＤＭＡ転送部７６は、ＤＭＡ転送モードにおいて、コマンド処理部７４からのＤＭＡ転送命令を受けて、ＤＭＡ転送を行う。具体的には、ＤＭＡ転送部７６は、ＦＩＦＯバッファ３３に記憶されたデータを、受信バッファ５１に格納することなく、直接プリントバッファ５２にデータ転送する。なお、本実施形態では、受信したデータが、ＤＭＡ転送可能な画像印刷コマンドのヘッダー部であると判定され後、ＤＭＡ転送命令を出力する構成である。そのため、ＤＭＡ転送部７６は、当該ヘッダー部に続くデータ本体（印刷画像データ）をＤＭＡ転送する役割を担う。また、ＤＭＡ転送部７６は、ＤＭＡ転送命令に付加されたデータ本体のデータサイズに達するまで、ＤＭＡ転送を継続して行う。
【００４３】
印刷制御部７７は、プリンターエンジン２２を制御し、プリントバッファ５２に記憶された印刷画像データに基づいて、印刷媒体に対し印刷処理を行う。すなわち、印刷制御部７７は、プリントバッファ５２に転送された印刷画像データをプリントバッファ５２から読み出し、読み出した印刷画像データに基づいて、印刷処理を行う。なお、「印刷部」は、印刷制御部７７およびプリンターエンジン２２により構成される。
【００４４】
状態検出部７８は、ＤＭＡ転送モードでの画像処理時に、印刷装置２が、エラー等の特定の状態になったことを検出する。本実施形態では、特定の状態は、開閉カバーが開放された状態、およびＦｅｅｄボタン２５が押下された状態である。すなわち、状態検出部７８は、カバーセンサー２４の検出結果に基づいて、ＤＭＡ転送モードでの画像印刷時に、開閉カバーが開放された状態となったことを検出する。また、状態検出部７８は、ＤＭＡ転送モードでの画像印刷時に、Ｆｅｅｄボタン２５が押下された状態となったこと（Ｆｅｅｄボタン２５が押下されたこと）を検出する。なお、画像印刷時においては、Ｆｅｅｄボタン２５は、ＤＭＡ転送を中断するための中断ボタンとして機能する。よって、ユーザーは、ＤＭＡ転送を中断したいときに、Ｆｅｅｄボタン２５を押下し、状態検出部７８は、これを検出する構成となる。
【００４５】
状態通知部７９は、状態検出部７８による検出結果を、ホスト装置１に通知する。すなわち、状態通知部７９は、状態検出部７８により上記特定の状態となったことが検出された場合に、上記特定の状態となった旨をホスト装置１に通知する。
【００４６】
転送中断部８０は、ＤＭＡ転送モードでの画像印刷時に、ホスト装置１からの中断要求を受けて、ＤＭＡ転送部７６によるＤＭＡ転送を中断する。すなわち、転送中断部８０は、ＤＭＡ転送モードでの画像印刷時に、ホスト装置１からの中断要求コマンドを受信したら、ＤＭＡ転送部７６に対し転送中断命令を出力して、ＤＭＡ転送部７６によるＤＭＡ転送を中断する。すなわち、ＤＭＡコントローラー４２によるＤＭＡ転送を、ファームウェア５３を実行するＣＰＵ４６からの命令により中断する構成となる。
【００４７】
ここで図３を参照して、印刷システムＳＹによる画像印刷動作について説明する。本画像印刷動作は、ホスト装置１から印刷装置２に対し、画像印刷コマンドを送信したときに行われるものである。なお、印刷装置２のデータ転送モードが、通常転送モードになった状態を初期状態とする。
【００４８】
図３に示すように、まず、ホスト装置１により、画像印刷コマンドのデータ送信を開始する（Ｓ１）。すなわち、ホスト装置１は、画像印刷コマンド送信部６１により、画像印刷コマンドを分割して、１バイトずつ印刷装置２に送信していく。これに対し、印刷装置２は、受信制御部７１により、画像印刷コマンドを受信しＦＩＦＯバッファ３３に記憶していき、データ格納部７２により、ＦＩＦＯバッファ３３に記憶されたデータを、受信バッファ５１に格納していき、さらに、コマンド解析部７３により、受信バッファ５１に格納されたデータを順次コマンド解析していく。
【００４９】
そして、コマンド解析により、コマンドのヘッダー部を抽出し、コマンドの種類が、画像印刷コマンドであると判定されると（Ｓ２：Ｙｅｓ）、コマンド解析部７３により、抽出したヘッダー部が、ＤＭＡ転送可能な画像印刷コマンドのヘッダー部であるか否かを判定する（Ｓ３）。
【００５０】
抽出したヘッダー部が、ＤＭＡ転送不能な画像印刷コマンドのヘッダー部であると判定された場合（Ｓ３：Ｎｏ）には、通常転送モードで、当該ヘッダー部に続くデータ本体を処理する。具体的には、当該ヘッダー部に続くデータ本体が、ホスト装置１から印刷装置２に送信され、ＦＩＦＯバッファ３３を介して、データ格納部７２により、受信バッファ５１に格納されていく。これに対し、コマンド処理部７４により、データ本体を、受信バッファ５１からプリントバッファ５２に展開しつつ（Ｓ４）、印刷制御部７７により、プリントバッファ５２に展開されたデータ本体を読み出して画像印刷を行う（Ｓ５）。すなわち、データ本体をプリントバッファ５２に展開していきながら、展開されたデータ本体を順次印刷していく。このように、データ本体のプリントバッファ５２への展開と、展開されたデータ本体の印刷とを同時並行で行うことで、画像印刷が行われる。これにより、本画像印刷動作を終了する。
【００５１】
一方、抽出したヘッダー部が、ＤＭＡ転送可能な画像印刷コマンドのヘッダー部であると判定された場合（Ｓ３：Ｙｅｓ）には、ＤＭＡ転送モードで、当該ヘッダー部に続くデータ本体を処理する。具体的には、当該データ本体が、ホスト装置１から印刷装置２に送信され、受信制御部７１により、ＦＩＦＯバッファ３３に記憶されていく。これに対し、まず、データ転送モードを、通常転送モードからＤＭＡ転送モードに切り替える（Ｓ６）。すなわち、モード切替部７５により、データ転送モードを、通常転送モードからＤＭＡ転送モードに切り替え、その旨を受信制御部７１に通知すると共に、これを受けた受信制御部７１により、エンドポイント１の出力先を受信バッファ５１からプリントバッファ５２に切り替える。データ転送モードを、通常転送モードからＤＭＡ転送モードに切り替えたら、コマンド処理部７４により、ＤＭＡ転送部７６に対しＤＭＡ転送命令を出力する（Ｓ７）。
【００５２】
ＤＭＡ転送部７６に対しＤＭＡ転送命令を出力されると、これを受けたＤＭＡ転送部７６により、データ本体を、ＦＩＦＯバッファ３３からプリントバッファ５２にＤＭＡ転送しつつ（Ｓ８）、印刷制御部７７により、プリントバッファ５２にＤＭＡ転送されたデータ本体を順次読み出して画像印刷を行う（Ｓ９）。すなわち、ＤＭＡ転送部７６により、受信したデータを、受信バッファ５１に格納することなく、直接プリントバッファ５２にＤＭＡ転送していきながら、印刷制御部７７により、転送されたデータ本体を順次印刷していく。このように、データ本体のプリントバッファ５２へのＤＭＡ転送と、転送されたデータ本体の印刷とを同時並行で行うことで、画像印刷が行われる。
【００５３】
画像印刷が終了したら、データ転送モードを、ＤＭＡ転送モードから通常転送モードに切り替える（Ｓ１０）。すなわち、モード切替部７５により、データ転送モードを、ＤＭＡ転送モードから通常転送モードに切り替え、その旨を受信制御部７１に通知すると共に、これを受けた受信制御部７１により、エンドポイント１の出力先をプリントバッファ５２から受信バッファ５１に切り替える。これにより、本画像印刷動作を終了する。
【００５４】
次に図４を参照して、印刷システムＳＹによるＤＭＡ転送の中断動作について説明する。本中断動作は、画像印刷動作における、ＤＭＡ転送モードでの画像印刷時（ＤＭＡ転送と印刷とを同時並行で行う時）に、上記特定の状態となったことが検出されたとき、実行されるものである。すなわち、本実施形態では、ＤＭＡ転送モードでの画像印刷時に、開閉カバーが開放された状態となったことが検出されたとき、およびＦｅｅｄボタン２５が押下された状態となったことが検出するときに、本中断動作を実行する。
【００５５】
図４に示すように、印刷装置２は、状態検出部７８により上記画像印刷時に特定の状態となったことが検出すると（Ｓ２１：Ｙｅｓ）、状態通知部７９により、特定の状態となったことが検出された旨を、ホスト装置１に通知する（Ｓ２２）。
【００５６】
これに対し、ホスト装置１は、中断要求部６２により、状態通知部７９からの通知を受けて、ＵＳＢリクエストで印刷装置２に対し中断要求を行う。すなわち、ＵＳＢリクエストで構成された中断要求コマンドを、印刷装置２に送信する（Ｓ２３）。
【００５７】
これに対し、印刷装置２は、転送中断部８０により、中断要求コマンドを受け、ＤＭＡ転送部７６に対し、ＤＭＡ転送の中断命令を出力する（Ｓ２４）。そして、ＤＭＡ転送部７６が、この中断命令を受けて、ＤＭＡ転送を中断する（Ｓ２５）。これにより、本中断動作を終了する。
【００５８】
以上、第１実施形態の構成によれば、ホスト装置１が、ＵＳＢリクエストを用いて、印刷装置２に対する中断要求を行う構成であるため、印刷装置２における画像印刷時のＤＭＡ転送を中断することができる。すなわち、ＤＭＡ転送モードにおいて、通常のデータ送信で印刷装置２に対する中断要求を行うと、当該中断要求が、ＤＭＡ転送部７６によりプリントバッファ５２にＤＭＡ転送されてしまうが、上記のように、コントロール転送用のＵＳＢリクエストを用いて、中断要求を行うことで、当該中断要求がプリントバッファ５２にＤＭＡ転送されてしまうのを避けることができる。よって、転送中断部８０により、当該中断要求を受けて、ＤＭＡ転送を中断することができる。より詳しくは、通常のデータ送信では、印刷画像データと同様、ＵＳＢインターフェース２１のエンドポイント１を利用するため、プリントバッファ５２にＤＭＡ転送されてしまうのに対し、ＵＳＢリクエストでは、エンドポイント０を利用することができるため、プリントバッファ５２にＤＭＡ転送されてしまうのを避けることができる。
このように、画像印刷時のＤＭＡ転送を中断することができるので、画像印刷時にエラー等が生じて印刷が中断した場合にも、ＤＭＡ転送において所定のデータ量転送し終えるまで待つことなく、ＤＭＡ転送を終わらせることができる。よって、ＤＭＡ転送を素早く再起動することができ、素早く再印刷を行うことができる。
【００５９】
なお、上記第１実施形態においては、ホスト装置１が、印刷装置２からの通知を受けて、印刷装置２に対し中断要求コマンドを送信する構成としたが、これに限るものではない。例えば、ホスト装置１がエラー状態となったときに、中断要求コマンドを送信する構成でも良いし、ホスト装置１が、ユーザー操作を受けて、中断要求コマンドを送信する構成でも良い。
【００６０】
［第２実施形態］
次に図５および図６を参照して、第２実施形態の印刷システムＳＹについて、第１実施形態と異なる部分のみ説明する。第２実施形態の印刷システムＳＹは、印刷装置２で特定の状態となったことが検出された場合、ホスト装置１を介さずに、ＤＭＡ転送を中断する構成を有する。
【００６１】
図５に示すように、第２実施形態の印刷システムＳＹは、図２に記載の構成に対し、ホスト装置１において、中断要求部６２を省略し、印刷装置２において、状態通知部７９を省略した構成を有する。
【００６２】
第２実施形態の状態検出部７８は、開閉カバーが開放された状態およびＦｅｅｄボタン２５が押下された状態に加え、ＵＳＢケーブル３が切断された状態（ＵＳＢケーブル３が抜かれた状態）と、ＵＳＢインターフェース２１によりホスト装置１からのデータを一定期間受信しない状態とを、特定の状態として検出する。すなわち、状態検出部７８は、ＤＭＡ転送モードでの画像印刷時に、印刷装置２が、これらの状態となったことを検出する。
【００６３】
そして、第２実施形態の転送中断部８０は、状態検出部７８によって、ＤＭＡ転送モードでの画像印刷時に、上記特定の状態となったことが検出された場合、これをトリガーとして、ＤＭＡ転送部７６に対し、ＤＭＡ転送の中断命令を出力する。すなわち、転送中断部８０は、ＤＭＡ転送モードでの画像印刷時に上記特定の状態となったことが検出されたとき、ＤＭＡ転送部７６によるＤＭＡ転送を中断する。
【００６４】
ここで図６を参照して、第２実施形態におけるＤＭＡ転送の中断動作について説明する。当該中断動作は、第１実施形態と同様、画像印刷動作における、ＤＭＡ転送モードでの画像印刷時に、上記特定の状態となったことが検出されたとき、実行されるものである。すなわち、本実施形態では、開閉カバーが開放された状態となったことが検出されたとき、Ｆｅｅｄボタン２５が押下された状態となったことが検出するとき、ＵＳＢケーブル３が切断された状態となったとき、およびＵＳＢインターフェース２１によりホスト装置１からのデータを一定期間受信しない状態となったことが検出されたときに、本中断動作を実行する。
【００６５】
図６に示すように、印刷装置２は、状態検出部７８により、画像印刷時に特定の状態となったことが検出すると（Ｓ３１：Ｙｅｓ）（状態検出ステップ）、転送中断部８０により、ＤＭＡ転送部７６に対し、ＤＭＡ転送の中断命令を出力する（Ｓ３２）（転送中断ステップ）。そして、ＤＭＡ転送部７６が、この中断命令を受けて、ＤＭＡ転送を中断する（Ｓ３３）。これにより、本中断動作を終了する。
【００６６】
以上、第２実施形態の構成によれば、画像印刷時に特定の状態となったことを検出した場合に、ＤＭＡ転送を中断する構成であるため、画像印刷時にエラー等が生じて画像印刷が中断した場合、ＤＭＡ転送を中断することができる。そのため、画像印刷時にエラー等が生じた場合にも、ＤＭＡ転送において所定のデータ量転送し終えるまで待つことなく、ＤＭＡ転送を終わらせることができる。よって、ＤＭＡ転送を素早く再起動することができ、素早く再印刷を行うことができる。
【００６７】
なお、上記第２実施形態において、印刷装置２にて、ホスト装置１からのデータを一定期間受信しなかった状態となったことが検出されたときに、中断動作を実行する構成を利用し、ホスト装置１から、データを一定期間送信しないことで、ＤＭＡ転送部７６のＤＭＡ転送を中断させる構成でも良い。例えば、ホスト装置１が、ユーザー操作を受けて、印刷装置２のＤＭＡ転送を中断させようとしたとき、データを一定期間送信しないことで、印刷装置２のＤＭＡ転送を中断させる。これにより、ＵＳＢリクエストを用いずとも、ホスト装置１から、ＤＭＡ転送を中断することができる。
【００６８】
また、上記第２実施形態において、ホスト装置１と印刷装置２との接続を、無線通信で行う構成の場合には、状態検出部７８において、ＵＳＢケーブル３が切断された状態となったことを検出するのに代えて、無線通信が切断された状態となったことを検出する構成でも良い。
【００６９】
なお、上記各実施形態において、特定の状態が、開閉カバーの開放以外の特定のエラー状態を含む構成でも良い。すなわち、状態検出部７８が、特定の状態として、開閉カバーの開放以外の特定のエラー状態となったことを検出する構成でも良い。例えば、状態検出部７８が、紙詰まり状態や紙切れ状態、インク切れ状態等となったことを検出する構成でも良い。
【００７０】
また、上記各実施形態において、特定の状態が、Ｆｅｅｄボタン２５の押下以外の特定のキー操作が行われた状態を含む構成でも良い。すなわち、状態検出部７８が、Ｆｅｅｄボタン２５の押下以外の特定のキー操作が行われた状態となったことを検出する構成でも良い。
【符号の説明】
【００７１】
１：ホスト装置、  ２：印刷装置、  ３：ＵＳＢケーブル、  ２１：ＵＳＢインターフェース、  ２２：プリンターエンジン、  ５２：プリントバッファ、  ７６：ＤＭＡ転送部、  ７７：印刷制御部、  ７８：状態検出部、  ７９：状態通知部、  ８０：転送中断部。
【図１】
2017010122.tif 000003
【図２】
2017010122.tif 000004
【図３】
2017010122.tif 000005
【図４】
2017010122.tif 000006
【図５】
2017010122.tif 000007
【図６】
2017010122.tif 000008