(57)【要約】【課題】ホスト装置から送信された情報取得指令に迅速に応答する印刷装置等を提供する。【解決手段】ＣＰＵ１０２は、インターフェース１０９を介してホスト装置から送信される指令データを受信し、指令データが印刷指令である場合、印刷ヘッド１０５は、当該印刷指令にて指定された文字または図形を印刷し、指令データが情報取得指令である場合、ＣＰＵ１０２は、当該情報取得指令に指定されたパラメータを取得し、取得したパラメータにあらかじめ対応付けられた印刷装置１０１の機器情報が存在する場合、ＲＯＭ１０３やフラッシュＥＥＰＲＯＭ１０６等から当該機器情報を取得し、インターフェース１０９を介してホスト装置へ送信し、存在しない場合、あらかじめ定めたエラー情報を、インターフェース１０９を介してホスト装置へ送信する。【選択図】図１
2010228458.tif 000002
【特許請求の範囲】
【請求項１】
ホスト装置と接続される印刷装置であって、
前記ホスト装置と通信する通信部と、
前記通信部を介してホスト装置から送信される指令データを受信する受信部と、
前記受信された指令データが印刷指令である場合、当該印刷指令にて指定された文字または図形を印刷する印刷部と、
前記受信された指令データが情報取得指令である場合、当該情報取得指令に指定されたパラメータを取得する取得部と、
前記取得されたパラメータにあらかじめ対応付けられた前記印刷装置の機器情報が存在する場合、当該機器情報を、前記通信部を介して前記ホスト装置へ送信する機器情報送信部と、
前記パラメータにあらかじめ対応付けられた前記印刷装置の情報が存在しない場合、あらかじめ定めたエラー情報を、前記通信部を介して前記ホスト装置へ送信するエラー情報送信部とを備えることを特徴とする印刷装置。
【請求項２】
前記エラー情報送信部により送信されうるエラー情報は、いずれも、前記機器情報送信部により送信されうる機器情報のいずれとも一致しないことを特徴とする請求項１に記載の印刷装置。
【請求項３】
情報を不揮発に記憶する不揮発記憶部をさらに備え、
前記不揮発に記憶された情報の一部または全部は、前記取得されたパラメータにあらかじめ対応付けられた前記印刷装置の機器情報であることを特徴とする請求項１または２に記載の印刷装置。
【請求項４】
前記受信された指令データが情報記憶指令である場合、当該情報記憶指令に指定された情報を、前記不揮発記憶部に記憶して更新する更新部をさらに備えることを特徴とする請求項３に記載の印刷装置。
【請求項５】
前記取得されたパラメータにあらかじめ対応付けられた前記印刷装置の機器情報が存在し、当該機器情報のサイズが所定のサイズを超える場合、当該機器情報を当該所定のサイズ以下の複数の分割済情報に分割する分割部と、
前記機器情報送信部による当該機器情報の送信にかえて、前記分割部により分割された複数の分割済情報を、前記通信部を介して前記ホスト装置へ順に送信する分割済情報送信部とをさらに備えることを特徴とする請求項１から４のいずれか１項に記載の印刷装置。
【請求項６】
前記分割済情報送信部により順に送信されうる分割済情報のそれぞれは、いずれも、前記機器情報送信部により送信される機器情報のいずれとも一致しないことを特徴とする請求項５に記載の印刷装置。
【請求項７】
印刷装置と、ホスト装置と、に接続されるインターフェース装置であって、
前記ホスト装置と通信するホスト側インターフェース部と、
前記印刷装置と通信する印刷装置側インターフェース部と、
前記ホスト装置から送信される指令データを、ホスト側インターフェース部を介して受信するホスト側受信部と、
前記受信された指令データが、情報取得指令であって、あらかじめ定めたパラメータを指定するものである場合、あらかじめ定めたエラー情報を、前記ホスト側インターフェース部を介して前記ホスト装置へ送信するエラー情報報告部と、
そうでない場合、前記受信された指令データを前記印刷装置側インターフェース部を介して前記印刷装置へ送信する印刷装置側送信部と、
前記印刷装置から送信される情報を前記印刷装置側インターフェース部を介して受信する印刷装置側受信部と、
前記受信された情報を、前記ホスト装置側インターフェース部を介して前記ホスト装置へ送信するホスト装置側送信部と、を備えることを特徴とするインターフェース装置。
【請求項８】
パラメータを記憶するパラメータ記憶部をさらに備え、
前記エラー情報報告部は、前記パラメータ記憶部に記憶されるパラメータである場合、前記あらかじめ定めたパラメータを指定するものであると判断することを特徴とする請求項７に記載のインターフェース装置。
【請求項９】
ホスト装置と接続される印刷装置の制御方法であって、
ホスト装置から送信される指令データを受信する受信工程と、
前記受信された指令データが印刷指令である場合、当該印刷指令にて指定された文字または図形を印刷する印刷工程と、
前記受信された指令データが情報取得指令である場合、当該情報取得指令に指定されたパラメータを取得する取得工程と、
前記取得されたパラメータにあらかじめ対応付けられた前記印刷装置の機器情報が存在する場合、当該機器情報を、前記ホスト装置へ送信する機器情報送信工程と、
前記パラメータにあらかじめ対応付けられた前記印刷装置の情報が存在しない場合、あらかじめ定めたエラー情報を、前記ホスト装置へ送信するエラー情報送信工程とを備えることを特徴とする制御方法。
【請求項１０】
前記エラー情報送信工程にて送信されうるエラー情報は、いずれも、前記機器情報送信工程にて送信されうる機器情報のいずれとも一致しないことを特徴とする請求項９に記載の制御方法。
【請求項１１】
前記印刷装置は、情報を不揮発に記憶する不揮発記憶部をさらに備え、
前記不揮発に記憶された情報の一部または全部は、前記取得されたパラメータにあらかじめ対応付けられた前記印刷装置の機器情報であることを特徴とする請求項９または１０に記載の制御方法。
【請求項１２】
前記受信された指令データが情報記憶指令である場合、当該情報記憶指令に指定された情報を、前記不揮発記憶部に記憶して更新する更新工程をさらに備えることを特徴とする請求項１１に記載の制御方法。
【請求項１３】
前記取得されたパラメータにあらかじめ対応付けられた前記印刷装置の機器情報が存在し、当該機器情報のサイズが所定のサイズを超える場合、当該機器情報を当該所定のサイズ以下の複数の分割済情報に分割する分割工程と、
前記機器情報送信工程による当該機器情報の送信にかえて、前記分割工程にて分割された複数の分割済情報を、前記ホスト装置へ順に送信する分割済情報送信工程とをさらに備えることを特徴とする請求項９から１２のいずれか１項に記載の制御方法。
【請求項１４】
前記分割済情報送信工程にて順に送信されうる分割済情報のそれぞれは、いずれも、前記機器情報送信工程にて送信される機器情報のいずれとも一致しないことを特徴とする請求項１３に記載の制御方法。
【請求項１５】
印刷装置と、ホスト装置と、に接続されるインターフェース装置を制御するインターフェース装置の制御方法であって、
前記ホスト装置から送信される指令データを受信するホスト側受信工程と、
前記ホスト側受信工程にて受信された指令データが、情報取得指令であって、あらかじめ定めたパラメータを指定するものである場合、あらかじめ定めたエラー情報を、前記ホスト装置へ送信するエラー情報報告工程と、
そうでない場合、前記受信された指令データを前記印刷装置へ送信する印刷装置側送信工程と、
前記印刷装置から送信される情報を受信する印刷装置側受信工程と、
前記印刷装置側受信工程にて受信された情報を、前記ホスト装置へ送信するホスト装置側送信工程とを備えることを特徴とする制御方法。
【請求項１６】
前記エラー情報報告工程では、当該情報取得指令に指定されるパラメータが、前記インターフェース装置が備えるパラメータ記憶部であってパラメータを記憶するものに記憶されるパラメータである場合、前記あらかじめ定めたパラメータを指定するものであると判断することを特徴とする請求項１５に記載の制御方法。
【請求項１７】
コンピュータを、請求項１から６に記載の印刷装置として機能させることを特徴とするプログラムを記録したコンピュータ読取可能な情報記録媒体。
【請求項１８】
コンピュータを、請求項７または８に記載のインターフェース装置として機能させることを特徴とするプログラムを記録したコンピュータ読取可能な情報記録媒体。
【請求項１９】
コンピュータに、請求項９から１４に記載の印刷装置の制御方法を実行させることを特徴とするプログラムを記録したコンピュータ読取可能な情報記録媒体。
【請求項２０】
コンピュータに、請求項１５または１６に記載のインターフェース装置の制御方法を実行させることを特徴とするプログラムを記録したコンピュータ読取可能な情報記録媒体。
【請求項２１】
前記情報記録媒体は、コンパクトディスク、フロッピー（登録商標）ディスク、ハードディスク、光磁気ディスク、ディジタルビデオディスク、磁気テープ、または、半導体メモリであることを特徴とする請求項１７から２０のいずれか１項に記載の情報記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、印刷装置、インターフェース装置、これらの制御方法、ならびに、情報記録媒体に関する。
【０００２】
特に、ホスト装置から送信された情報取得指令に指定されたパラメータに対応付けられた機器情報が印刷装置にない場合であっても、適切にエラー情報をホスト装置に返すことができる印刷装置、インターフェース装置、これらの制御方法、ならびに、これらを実現するプログラムを記録したコンピュータ読取可能な情報記録媒体に関する。
【背景技術】
【０００３】
従来から、ホスト装置からの情報取得指令に応じて、機器情報（機種識別番号、バージョン番号、メーカー名、機種名、ファームウェアバージョン番号など）をホスト装置へ送信する印刷装置が提供されている。
【０００４】
また、印刷装置がフラッシュＥＥＰＲＯＭ（Electrically Erasable Programmable Read Only Memory）等の不揮発性メモリを備え、ホスト装置から当該不揮発性メモリに各種の情報を書き込んだり、情報取得指令により不揮発に記憶された機器情報を読み出したりすることのできる印刷装置が提供されている。
【０００５】
一般に、ホスト装置は、印刷装置の機器情報を読み出す場合情報取得指令が備えるパラメータによりどの機器情報が必要であるかを指定し、印刷装置は、当該パラメータで指定された機器情報をホスト装置へ送信している。
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、従来の印刷装置においては、情報取得指令で指定されたパラメータに対応していない場合、ホスト装置に対して何も情報を返送していなかった。
【０００７】
このため、ホスト装置は、印刷装置からの情報受信待ち状態となってしまい、通信タイムアウトが発生するまで、印刷装置が当該パラメータに未対応であることがわからなかった。
【０００８】
これにより、処理を迅速に行うことができない場合が発生するほか、ホスト装置においてタイムアウト処理が必要になってしまうという問題が生じていた。
【０００９】
したがって、このような場合であっても、タイムアウト処理によらず、印刷装置が未対応であることを速やかに知得できるようにしたいという要望は大きい。
【００１０】
本発明は、上記課題を解決するためになされたものであり、ホスト装置が要求する機器情報を有しない場合であっても、迅速にエラー情報をホスト装置に返すことのできる印刷装置、インターフェース装置、これらの制御方法、ならびに、これらを実現するプログラムを記録したコンピュータ読取可能な情報記録媒体を提供することを目的とする。
【課題を解決するための手段】
【００１１】
以上の目的を達成するため、本発明の原理にしたがって、下記の発明を開示する。
【００１２】
本発明の第１の観点に係る印刷装置は、ホスト装置と接続され、通信部と、受信部と、印刷部と、取得部と、機器情報送信部と、エラー情報送信部とを備えるように構成する。
【００１３】
ここで、通信部は、ホスト装置と通信する。
【００１４】
一方、受信部は、通信部を介してホスト装置から送信される指令データを受信する。
【００１５】
さらに、印刷部は、受信された指令データが印刷指令である場合、当該印刷指令にて指定された文字または図形を印刷する。
【００１６】
そして、取得部は、受信された指令データが情報取得指令である場合、当該情報取得指令に指定されたパラメータを取得する。
【００１７】
一方、機器情報送信部は、取得されたパラメータにあらかじめ対応付けられた印刷装置の機器情報が存在する場合、当該機器情報を、通信部を介してホスト装置へ送信する。
【００１８】
さらに、エラー情報送信部は、パラメータにあらかじめ対応付けられた印刷装置の情報が存在しない場合、あらかじめ定めたエラー情報を、通信部を介してホスト装置へ送信する。
【００１９】
また、本発明の印刷装置において、エラー情報送信部により送信されうるエラー情報は、いずれも、機器情報送信部により送信されうる機器情報のいずれとも一致しないように構成することができる。
【００２０】
また、本発明の印刷装置は、不揮発記憶部をさらに備え、以下のように構成することができる。
【００２１】
すなわち、不揮発記憶部は、情報を不揮発に記憶する。
【００２２】
一方、不揮発に記憶された情報の一部または全部は、取得されたパラメータにあらかじめ対応付けられた印刷装置の機器情報である。
【００２３】
また、本発明の印刷装置は、更新部をさらに備えるように構成することができる。
【００２４】
ここで、更新部は、受信された指令データが情報記憶指令である場合、当該情報記憶指令に指定された情報を、不揮発記憶部に記憶して更新する。
【００２５】
また、本発明の印刷装置は、分割部と、分割済情報送信部とをさらに備えるように構成することができる。
【００２６】
ここで、分割部は、取得されたパラメータにあらかじめ対応付けられた印刷装置の機器情報が存在し、当該機器情報のサイズが所定のサイズを超える場合、当該機器情報を当該所定のサイズ以下の複数の分割済情報に分割する。
【００２７】
一方、分割済情報送信は、機器情報送信部による当該機器情報の送信にかえて、分割部により分割された複数の分割済情報を、通信部を介してホスト装置へ順に送信する。
【００２８】
また、本発明の印刷装置において、分割済情報送信部により順に送信されうる分割済情報のそれぞれは、いずれも、機器情報送信部により送信される機器情報のいずれとも一致しないように構成することができる。
【００２９】
本発明の第２の観点に係るインターフェース装置は、印刷装置と、ホスト装置と、に接続され、ホスト側インターフェース部と、印刷装置側インターフェース部と、ホスト側受信部と、エラー情報報告部と、印刷装置側送信部と、印刷装置側受信部と、ホスト装置側送信部とを備えるように構成する。
【００３０】
ここで、ホスト側インターフェース部は、ホスト装置と通信する。
【００３１】
一方、印刷装置側インターフェース部は、印刷装置と通信する。
【００３２】
さらに、ホスト側受信部は、ホスト装置から送信される指令データを、ホスト側インターフェース部を介して受信する。
【００３３】
そして、エラー情報報告部は、受信された指令データが、情報取得指令であって、あらかじめ定めたパラメータを指定するものである場合、あらかじめ定めたエラー情報を、ホスト側インターフェース部を介してホスト装置へ送信する。
【００３４】
一方、印刷装置側送信部は、そうでない場合、受信された指令データを印刷装置側インターフェース部を介して印刷装置へ送信する。
【００３５】
さらに、印刷装置側受信部は、印刷装置から送信される情報を印刷装置側インターフェース部を介して受信する。
【００３６】
そして、ホスト装置側送信部は、受信された情報を、ホスト装置側インターフェース部を介してホスト装置へ送信する。
【００３７】
また、本発明のインターフェース装置は、パラメータ記憶部をさらに備え、以下のように構成することができる。
【００３８】
すなわち、パラメータ記憶部は、パラメータを記憶する。
【００３９】
一方、エラー情報報告部は、パラメータ記憶部に記憶されるパラメータである場合、あらかじめ定めたパラメータを指定するものであると判断する。
【００４０】
本発明の第３の観点に係る印刷装置の制御方法は、ホスト装置と接続される印刷装置を制御し、受信工程と、印刷工程と、取得工程と、機器情報送信工程と、エラー情報送信工程とを備えるように構成する。
【００４１】
ここで、受信工程では、ホスト装置から送信される指令データを受信する。
【００４２】
一方、印刷工程では、受信された指令データが印刷指令である場合、当該印刷指令にて指定された文字または図形を印刷する。
【００４３】
さらに、取得工程では、受信された指令データが情報取得指令である場合、当該情報取得指令に指定されたパラメータを取得する。
【００４４】
そして、機器情報送信工程では、取得されたパラメータにあらかじめ対応付けられた印刷装置の機器情報が存在する場合、当該機器情報を、ホスト装置へ送信する。
【００４５】
一方、エラー情報送信工程では、パラメータにあらかじめ対応付けられた印刷装置の情報が存在しない場合、あらかじめ定めたエラー情報を、ホスト装置へ送信する。
【００４６】
また、本発明の制御方法において、エラー情報送信工程にて送信されうるエラー情報は、いずれも、機器情報送信工程にて送信されうる機器情報のいずれとも一致しないように構成することができる。
【００４７】
また、本発明の制御方法は、情報を不揮発に記憶する不揮発記憶部をさらに備える印刷装置をさらに制御し、不揮発に記憶された情報の一部または全部は、取得されたパラメータにあらかじめ対応付けられた印刷装置の機器情報であるように構成することができる。
【００４８】
また、本発明の制御方法は、更新工程をさらに備えるように構成することができる。
【００４９】
ここで、更新工程では、受信された指令データが情報記憶指令である場合、当該情報記憶指令に指定された情報を、不揮発記憶部に記憶して更新する。
【００５０】
また、本発明の制御方法は、分割工程と、分割済情報送信工程とをさらに備えるように構成することができる。
【００５１】
ここで、分割工程では、取得されたパラメータにあらかじめ対応付けられた印刷装置の機器情報が存在し、当該機器情報のサイズが所定のサイズを超える場合、当該機器情報を当該所定のサイズ以下の複数の分割済情報に分割する。
【００５２】
一方、分割済情報送信工程では、機器情報送信工程による当該機器情報の送信にかえて、分割工程にて分割された複数の分割済情報を、ホスト装置へ順に送信する。
【００５３】
また、本発明の制御方法において、分割済情報送信工程にて順に送信されうる分割済情報のそれぞれは、いずれも、機器情報送信工程にて送信される機器情報のいずれとも一致しないように構成することができる。
【００５４】
本発明の第４の観点に係るインターフェース装置の制御方法は、印刷装置と、ホスト装置と、に接続されるインターフェース装置を制御し、ホスト側受信工程と、エラー情報報告工程と、印刷装置側送信工程と、印刷装置側受信工程と、ホスト装置側送信工程とを備えるように構成する。
【００５５】
ここで、ホスト側受信工程では、ホスト装置から送信される指令データを受信する。
【００５６】
一方、エラー情報報告工程では、ホスト側受信工程にて受信された指令データが、情報取得指令であって、あらかじめ定めたパラメータを指定するものである場合、あらかじめ定めたエラー情報を、ホスト装置へ送信する。
【００５７】
さらに、印刷装置側送信工程では、そうでない場合、受信された指令データを印刷装置へ送信する。
印刷装置側受信工程と、印刷装置から送信される情報を受信する。
【００５８】
そして、ホスト装置側送信工程では、印刷装置側受信工程にて受信された情報を、ホスト装置へ送信する。
【００５９】
また、本発明のインターフェース装置の制御方法において、エラー情報報告工程では、当該情報取得指令に指定されるパラメータが、インターフェース装置が備えるパラメータ記憶部であってパラメータを記憶するものに記憶されるパラメータである場合、あらかじめ定めたパラメータを指定するものであると判断するように構成することができる。
【００６０】
本発明の第５の観点に係るコンピュータ読取可能な情報記録媒体は、コンピュータを上記印刷装置、もしくは、インターフェース装置として機能させ、もしくは、コンピュータに上記印刷装置、もしくは、インターフェース装置の制御方法を実行させるプログラムを記録するように構成する。
【００６１】
また、本発明の情報記録媒体は、コンパクトディスク、フロッピー（登録商標）ディスク、ハードディスク、光磁気ディスク、ディジタルビデオディスク、磁気テープ、または、半導体メモリであるように構成することができる。
【００６２】
また、本発明の情報記録媒体をＷＷＷ（World Wide Web）のサーバコンピュータに装着して、ここから適宜プログラムをダウンロードし、上記コンピュータに記憶させてプログラムを更新し、更新されたプログラムをコンピュータ（典型的には、印刷装置、もしくは、インターフェース装置が有するＣＰＵ（Central Processing Unit））に実行させることにより、本発明の印刷装置を実現することができる。
【図面の簡単な説明】
【００６３】
【図１】本発明の第１の実施形態に係る印刷装置の概要構成を示す模式図。
【図２】本発明の第１の実施形態に係る印刷装置において実行される通常処理の流れを示すフローチャート。
【図３】本発明の第２の実施形態に係るインターフェース装置の概要構成を示す模式図。
【発明を実施するための形態】
【００６４】
以下に本発明の一実施形態を説明する。なお、以下に説明する実施形態は説明のためのものであり、本発明の範囲を制限するものではない。したがって、当業者であればこれらの各要素もしくは全要素をこれと均等なものに置換した実施形態を採用することが可能であるが、これらの実施形態も本発明の範囲に含まれる。
【００６５】
（第１の実施形態：印刷装置）
図１は、本発明の実施形態に係る印刷装置の概要構成を示す模式図である。以下、本図を参照して説明する。
【００６６】
印刷装置１０１は、ＣＰＵ１０２によって制御される。ホスト装置から送信される指令データは、インターフェース１０９にて受信され、ＲＡＭ１０４に用意された受信バッファ１１１に記憶される。これらの処理は、ＣＰＵ１０２に対する受信割り込み処理で行われる。
【００６７】
一方、ＣＰＵ１０２は、受信バッファ１１１に記憶された指令データを順次読み出し解釈して、必要があれば文字フォント１２１が記憶されたＲＯＭ（Read Only Memory）１０３などを参照し、印刷イメージをＲＡＭ１０４に用意されたラインバッファ１１２に展開する。
【００６８】
さらに、ＣＰＵ１０２は、適当なタイミング（たとえば改行指令を受信した場合や、１行分の印刷イメージの展開が終わった場合）で、ラインバッファ１１２に記憶された印刷イメージにしたがって、印刷ヘッド１０５を駆動して、用紙に文字や図形を印刷する。
【００６９】
また、指令データが情報取得指令である場合には、ＲＯＭ１０３に記憶された印刷装置１０１の識別番号、製造番号、ファームウェアのバージョン番号などの情報やフラッシュＥＥＰＲＯＭ１０６に記憶された各種の情報等を、インターフェース１０９を介してホスト装置へ送信する。
【００７０】
ここで、
・インターフェース１０９は、通信部として、
・ＣＰＵ  １０２は、インターフェース１０９およびＲＡＭ  １０４の受信バッファ１１１と共働して、受信部として、
・印刷ヘッド１０５は、印刷部として、
・ＣＰＵ  １０２は、取得部として、
・ＣＰＵ  １０２と、インターフェース１０９およびＲＯＭ  １０３、フラッシュＥＥＰＲＯＭ  １０６、もしくは、ディップスイッチ等の不揮発に機器情報を記憶する機構（図示せず。）とは、共働して、機器情報送信部として、
・ＣＰＵ  １０２は、インターフェース１０９と共働して、エラー情報送信部として、
・ＲＯＭ  １０３、フラッシュＥＥＰＲＯＭ  １０６、もしくは、ディップスイッチ等の不揮発に機器情報を記憶する機構は、記憶部として、
・ＣＰＵ  １０２は、更新部として、
それぞれ機能する。
【００７１】
上記の受信割り込み処理に対し、これらの過程を通常処理と呼ぶ。この通常処理のフローチャートを図２に示す。
【００７２】
ＣＰＵ１０２は、受信バッファ１１１に指令データが記憶されているか否かを調べる（ステップＳ２０１）。
【００７３】
受信バッファ１１１に指令データが記憶されていない場合（ステップＳ２０１；Ｎｏ）、待機して（ステップＳ２０２）、ステップＳ２０１に戻る。ステップＳ２０２の待機中には、ほかの処理を実行することができる。また、待機中に上述の受信割り込み処理が起動されて、受信バッファ１１１に指令データが追加されることがある。
【００７４】
一方、受信バッファ１１１に指令データが記憶されている場合（ステップＳ２０１；Ｙｅｓ）、先頭の指令データを取得し（ステップＳ２０３）、当該指令データの種類を調べる（ステップＳ２０４）。受信バッファ１１１は、いわゆるＦＩＦＯ（First In First Out）のバッファ、あるいはキューとして働き、受信割り込み処理によって指令データが追加され、ステップＳ２０３において指令データが取り出される。
【００７５】
指令データが文字や図形を指定する印刷指令であった場合（ステップＳ２０４；印刷）、指定された文字や図形のフォント定義をＲＯＭ１０３から読み出して（ステップＳ２０５）、当該フォント定義をラインバッファ１１２に展開する（ステップＳ２０６）。
【００７６】
さらに、ラインバッファ１１２がいっぱいになったか否かを調べ（ステップＳ２０７）、いっぱいになっている場合（ステップＳ２０７；Ｙｅｓ）、当該ラインバッファ１１２に展開された印刷イメージにしたがって印刷ヘッド１０５を駆動して、文字や図形を用紙に印刷し（ステップＳ２０８）、ラインバッファをクリアして（ステップＳ２０９）、ステップＳ２０１に戻る。
【００７７】
いっぱいになっていない場合（ステップＳ２０７；Ｎｏ）、ステップＳ２０１に戻る。
【００７８】
一方、指令データが改行指令であった場合（ステップＳ２０４；改行）、ステップＳ２０８に進み、現在までにラインバッファ１１２に展開された印刷イメージを用紙に印刷する。
【００７９】
一方、指令データが情報取得指令であった場合（ステップＳ２０４；情報取得）、当該情報取得指令が備えるパラメータを取得して（ステップＳ２１０）、当該パラメータが指定する機器情報を印刷装置１０１から取得できるか否かを調べる（ステップＳ２１１）。
【００８０】
情報取得指令のパラメータに対応する機器情報が印刷装置１０１から取得できる場合（ステップＳ２１１；Ｙｅｓ）、パラメータに対応付けられた機器情報をＲＯＭ１０３やフラッシュＥＥＰＲＯＭ１０６から取得し（ステップＳ２１２）、インターフェース１０９を介してホスト装置に送信し（ステップＳ２１３）、ステップＳ２０１に戻る。
【００８１】
一方、情報取得指令のパラメータに対応する機器情報が印刷装置１０１から取得できない場合（ステップＳ２１１；Ｎｏ）、エラー情報をホスト装置に送信し（ステップＳ２１４）、ステップＳ２０１に戻る。
【００８２】
一方、指令データがフラッシュＥＥＰＲＯＭ１０６の更新指令であった場合（ステップＳ２０４；更新）、当該指令で指定されたデータ列を、当該指令で指定された、もしくは、予め当該指令に対応付けられたフラッシュＥＥＰＲＯＭ１０６のアドレスに、記憶して更新し（ステップＳ２１５）、ステップＳ２０１に戻る。
【００８３】
一方、指令データがその他の指令であった場合（ステップＳ２０４；その他）、当該指令データに対応する処理を実行して（ステップＳ２１６）、ステップＳ２０１に戻る。
【００８４】
（情報取得指令）
次に、情報取得指令の実施形態について説明する。なお、以下の説明においては、十六進数を表す接頭辞として0xを用いる。また、適宜、十六進数に対応するＡＳＣＩＩ（American Standard Code for Information Interchange）コードを用いて説明する。また、文字のＡＳＣＩＩコードを表現するため文字を単一引用符で囲む。
【００８５】
なお、ＡＳＣＩＩコードの0x20〜0x7eは文字や図形の印刷指令に相当し、ＡＳＣＩＩコードの0x0aもしくは0x0dは改行指令に相当する。
【００８６】
本実施形態では、情報取得指令として、以下に示す３バイトのデータを用いる。
【００８７】
GS  'I'  n
0x1d 0x49 n
上段に示したものはＡＳＣＩＩコードによる表記であり、下段に示したものは十六進数による表記である。なおnは指定されるパラメータを意味し、0x00〜0xffの２５６通りを指定することができる。
【００８８】
nの値を適宜指定することにより、印刷装置１０１の各種の機器情報を得ることができる。以下に、パラメータnの値とこれに対応する機器情報の種類、印刷装置１０１からホスト装置へ機器情報を送信する際のフォーマットを示す。
【００８９】
（１）n=0x01またはn=0x31の場合、印刷装置１０１の機種の識別子を返送する。機種の識別子として、0x01〜0xffのいずれかの１バイト長のデータを用いている。このデータを、機器情報としてホスト装置へ返送する。この情報取得指令に対しては、既存のプリンタのすべてが対応している。
【００９０】
（２）n=0x41〜0x45またはn=0x70〜0x71の場合、それぞれに対応するプリンタ情報を返送する。これに対して、以下のようなフォーマットで機器情報（プリンタ情報）をホスト装置へ返送する。
【００９１】
0x5f プリンタ情報のバイト列 0x00なお、プリンタ情報のバイト列には0x00は含まれない。この情報取得指令に対しては、既存のプリンタに対応していないものがある。
【００９２】
ここでいうプリンタ情報には、以下のような情報があり、そのそれぞれがパラメータnの上記の範囲のいずれかに割り当てられている。
【００９３】
・バージョン番号
・メーカー名
・機種名
一方、上記のnの値以外の値が指定された場合や、指定されたnの値に対応する機器情報がない場合（すなわち、印刷装置１０１がその情報取得指令に対応していない場合）、印刷装置１０１は、エラー情報をホスト装置に送信する。エラー情報のフォーマットは以下の通りである。
【００９４】
（１）n=0x01または0x31が指定された場合、既存のプリンタはすべてこの指令に対応しているためエラー情報を返信することはないが、何らかの障害が発生した場合などには１バイト長の0x00をエラー情報として返信してもよい。
【００９５】
（２）上記以外のnが指定された場合であって、当該情報取得指令に印刷装置が未対応の場合、以下のフォーマットで未対応である旨を通知する。
【００９６】
0x3d n 0x00
このようにすれば、ホスト装置では、機器情報とエラー情報とを区別することができる。
【００９７】
（サイズの大きい機器情報の取扱い）
上記実施形態では、印刷装置１０１からホスト装置へ返信される機器情報やエラー情報は、いずれも８０バイト以下であった。一般的には、このサイズは、ホスト装置の受信バッファ内に完全におさまるため、ホスト装置において受信が失敗するおそれはない。
【００９８】
しかしながら、印刷装置１０１が備えるフラッシュＥＥＰＲＯＭ１０６に記憶された情報を得る際には、８０バイトを超えるデータを印刷装置１０１からホスト装置へ返送しなければならない場合がある。
【００９９】
このように長いデータを返送する際には、長いデータを分割し、これを順に送信すればよい。その際に、分割済のデータは、上記のような８０バイト以下のデータを返送する際のデータと区別がつくようにしなければならない。以下に、長いデータを分割する際の分割フォーマットの実施例を述べる。
【０１００】
印刷装置１０１が備えるフラッシュＥＥＰＲＯＭ１０６が記憶するデータを機器情報としてホスト装置で取得したい場合、以下のような指令データを情報取得指令として送信する。
【０１０１】
GS '(' 'C' a nl nh
これは、フラッシュＥＥＰＲＯＭ１０６のアドレス範囲a〜a+(nl+nh×256)-1に記憶されたnl+nh×256バイトの情報を機器情報として取得することを指定するものである。
【０１０２】
これに対して、印刷装置１０１は、フラッシュＥＥＰＲＯＭ１０６の中から情報取得指令のパラメータに指定された場所のデータのバイト列を読み出す。このバイト列が、以下のようなものであったとする。
【０１０３】
c[1] c[2] … c[nl+nh×256]
nl+nh×256が８０バイト以下の場合は、以下のようなフォーマットを用いて返送を行う。
【０１０４】
0x3d 0x20 nl c[1] c[2] … c[nl+nh×256] 0x00
ここで、0x3d 0x20は、このデータ列が一括送信されたものであることを意味する。
【０１０５】
これの全体の長さは、最大でも８４バイトであるので、ホスト装置の受信バッファにおさまる。また、nh=0が成立するので、確認のため、データのバイト列の長さを送信しておく際には、nlのみを送信すればよい。
【０１０６】
一方、nl+nh×256が８０バイトを超える場合は、印刷装置は、上記バイト列を、８０バイトごとに分割し、そのそれぞれにヘッダ情報とフッタ情報とを付加する。分割済データ列は、本実施形態では、以下のようなフォーマットを有する。
【０１０７】
0x3d 0x70 m p 分割されたデータ列 0x00
ここで、0x3d 0x70は、このデータ列が分割されたものであることを意味する。
【０１０８】
mは、このデータ列が、全体のデータ列の何番目のものであるかを意味する。例えば全データを６つに分割した場合、m=5が最初の分割済データ列であり、m=4がその次の分割済データ列であり、m=0が最後の分割済データ列である。
【０１０９】
pは、このデータ列の長さを表す。本実施形態では、一般にはp = 80であるが、最後に送信するデータ列では、p = 1〜80である。
【０１１０】
印刷装置は、まず先頭の分割済データ列をホスト装置に送信する。
【０１１１】
ホスト装置は、データ列を受信した後にACK/NAK/CANを送信して印刷装置に次の動作を指令する。
【０１１２】
ACK：次の分割済データ列の送信を指令
NAK：今の分割済データ列の再送信を指令
CAN：未送信の分割済データ列の破棄およびデータ送信の中止を指令
印刷装置は、ホスト装置からのACK/NAK/CANの指令に従って分割済データ列を順次ホスト装置に送信する。
【０１１３】
本実施形態では、
・ＣＰＵ  １０２は、分割部として、
・ＣＰＵ  １０２は、ＲＡＭ  １０４およびインターフェース１０９と共働して、分割済情報送信部として、
それぞれ、さらに機能する。
【０１１４】
これらの分割済データ列のそれぞれは、上記の分割を必要としない機器情報を表すデータ列のいずれとも異なるため、ホスト装置では、印刷装置１０１から送信されたデータ列が、単独のデータ列で機器情報を表すのか、それともそれが分割済データ列であって、複数集まって機器情報を表すのかを容易に知ることができる。
【０１１５】
（第２の実施形態：インターフェース装置）
上記実施形態では、未対応のパラメータを指定するGS Iコマンドを受信した場合、印刷装置１０１がエラー情報をホスト装置に送信していた。しかしながら、既存の印刷装置の中には、未対応のパラメータを指定するGS Iコマンドを受信すると、何も情報を返送しないものが多数ある。
【０１１６】
このような場合、印刷装置１０１がGS Iコマンドで指定されたパラメータに未対応である旨をホスト装置が知るためには、受信タイムアウトが発生するまで待つしかなかった。
【０１１７】
本実施形態では、既存の印刷装置とインターフェース装置とを接続し、これらが全体として、第１の実施形態に係る印刷装置１０１と同様の機能を果たすようにインターフェース装置を構成する。
【０１１８】
図３は、本実施形態に係るインターフェース装置の概要構成を示す模式図である。以下、本図を参照して説明する。
【０１１９】
インターフェース装置３０１は、ホスト側ＩＦ（Inter Face）３０２と、印刷装置側ＩＦ３０３と、ホスト側受信部３０４と、エラー情報報告部３０５と、印刷装置側送信部３０６と、印刷装置側受信部３０７と、ホスト側送信部３０８と、パラメータ記憶部３０９とを備える。
【０１２０】
ホスト側ＩＦ３０２は、インターフェース装置３０１とホスト装置とを接続して、インターフェース装置３０１とホスト装置との通信を行う。たとえばＲＳ−２３２規格やＵＳＢ（Universal Serial Bus）規格等のコネクタが用いられる。
【０１２１】
印刷装置側ＩＦ３０３は、インターフェース装置３０１と印刷装置とを接続して、インターフェース装置３０１と印刷装置との通信を行う。
【０１２２】
インターフェース装置３０１の全体は、既存の印刷装置の拡張スロットにおさまる大きさに構成することが望ましい。この場合、既存の印刷装置の拡張スロットのコネクタと接続するためのコネクタが、印刷装置側ＩＦ３０３として機能する。このコネクタには、ＲＳ−２３２規格のものを用いることができる。
【０１２３】
ホスト側受信部３０４は、ホスト側ＩＦ３０２を介してホスト装置から送信される指令データを受信する。
【０１２４】
次に、インターフェース装置３０１は、これが備えるＣＰＵなどを用いて以下の条件を満たすか否かを調べる。
・受信された指令データが情報取得指令であり、かつ、
・当該情報取得指令に指定されたパラメータが、パラメータ記憶部３０９に記憶されているパラメータである。
パラメータ記憶部３０９には、印刷装置が未対応のパラメータを記憶しておく。
パラメータ記憶部３０９として、たとえば、ＲＯＭなどの不揮発性メモリを用いることができる。このほか、フラッシュＥＥＰＲＯＭ、ディップスイッチ、ジャンパを用いることもでき、この場合、未対応パラメータの種類を変更することも可能である。
【０１２５】
上記の条件が満たされる場合、当該情報取得指令を印刷装置に送信したとしても、印刷装置はこれに対して何ら機器情報を返送しないことになる。したがって、インターフェース装置３０１は、エラー情報報告部３０５により、ホスト側ＩＦ３０２を介してエラー情報をホスト装置へ送信する。この際のエラー情報は、第１の実施形態と同様のものを用いることができる。
【０１２６】
一方、上記条件が満たされない場合、印刷装置側送信部３０６は、受信された指令データを印刷装置側ＩＦ３０３を介して印刷装置へ送信する。これにより、印刷装置に、印刷指令、改行指令、印刷指令対応済の情報取得指令などの各種の指令データが送信される。
【０１２７】
また、印刷装置に情報取得指令が送信された場合は、印刷装置からは、機器情報が返送されてくる。印刷装置側受信部３０７は、印刷装置側ＩＦ３０３を介して印刷装置から送信される情報（機器情報を含む。）を受信する。
【０１２８】
そして、ホスト装置側送信部３０８は、印刷装置側受信部３０７により受信された情報を、ホスト側ＩＦ３０２を介してホスト装置へ送信する。
【０１２９】
このように、インターフェース装置３０１は、既存の印刷装置に与える指令データを中継し、既存の印刷装置が対応していない指令データを受信した場合には、直ちにエラー指令をホスト装置に返送するフィルタとして働く。したがって、ホスト装置では、受信タイムアウトを待たずに、印刷装置が当該情報取得指令に未対応であることを知ることができる。
【０１３０】
インターフェース装置３０１は、既存の印刷装置と組み合わせることにより、全体として、第１の実施形態の印刷装置１０１と同様の機能を果たすことができる。また、既存の印刷装置そのものを修理改造する必要はなく、印刷装置が備える拡張スロットを用いるだけでよい。
【０１３１】
（発明の効果）
以上説明したように、本発明によれば、ホスト装置から送信された情報取得指令に指定されたパラメータに対応付けられた機器情報が印刷装置にない場合であっても、適切にエラー情報をホスト装置に返すことができる印刷装置、インターフェース装置、これらの制御方法、ならびに、これらを実現するプログラムを記録したコンピュータ読取可能な情報記録媒体を提供することができる。
【符号の説明】
【０１３２】
１０１  印刷装置、１０２  ＣＰＵ、１０３  ＲＯＭ、１０４  ＲＡＭ、１０５  印刷ヘッド、１０６  フラッシュＥＥＰＲＯＭ、１０９  インターフェース、１１１  受信バッファ、１１２  ラインバッファ、３０１  インターフェース装置、３０２  ホスト側ＩＦ、３０３  印刷装置側ＩＦ、３０４  ホスト側受信部、３０５  エラー情報報告部、３０６  印刷装置側送信部、３０７  印刷装置側受信部、３０８  ホスト側送信部、３０９  パラメータ記憶部。
【図１】
2010228458.tif 000003
【図２】
2010228458.tif 000004
【図３】
2010228458.tif 000005
【手続補正書】
【提出日】平成22年6月23日(2010.6.23)
【手続補正２】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
印刷装置と、ホスト装置と、に接続されるインターフェース装置であって、
前記ホスト装置と通信するホスト側インターフェース部と、
前記印刷装置と通信する印刷装置側インターフェース部と、
前記ホスト装置から送信される指令データを、ホスト側インターフェース部を介して受信するホスト側受信部と、
前記受信された指令データが、情報取得指令であって、あらかじめ定めたパラメータを指定するものである場合、あらかじめ定めたエラー情報を、前記ホスト側インターフェース部を介して前記ホスト装置へ送信するエラー情報報告部と、
そうでない場合、前記受信された指令データを前記印刷装置側インターフェース部を介して前記印刷装置へ送信する印刷装置側送信部と、
前記印刷装置から送信される情報を前記印刷装置側インターフェース部を介して受信する印刷装置側受信部と、
前記受信された情報を、前記ホスト装置側インターフェース部を介して前記ホスト装置へ送信するホスト装置側送信部と、を備えることを特徴とするインターフェース装置。
【請求項２】
パラメータを記憶するパラメータ記憶部をさらに備え、
前記エラー情報報告部は、前記情報取得指令に指定されるパラメータが、前記パラメータ記憶部に記憶されるパラメータである場合、前記あらかじめ定めたパラメータを指定するものであると判断することを特徴とする請求項１に記載のインターフェース装置。
【請求項３】
前記印刷装置側受信部で受信された情報が所定のサイズを超える場合、当該情報を当該所定のサイズ以下の複数の分割済情報に分割する分割部を備え、
前記ホスト装置側送信部は、前記分割部により分割された複数の分割済情報を、前記ホスト装置側インターフェース部を介して前記ホスト装置へ順に送信することを特徴とする請求項１または２に記載のインターフェース装置。
【請求項４】
印刷装置と、ホスト装置と、に接続されるインターフェース装置を制御する制御方法であって、
前記ホスト装置から送信される指令データを受信するホスト側受信工程と、
前記ホスト側受信工程にて受信された指令データが、情報取得指令であって、あらかじめ定めたパラメータを指定するものである場合、あらかじめ定めたエラー情報を、前記ホスト装置へ送信するエラー情報報告工程と、
そうでない場合、前記受信された指令データを前記印刷装置へ送信する印刷装置側送信工程と、
前記印刷装置から送信される情報を受信する印刷装置側受信工程と、
前記印刷装置側受信工程にて受信された情報を、前記ホスト装置へ送信するホスト装置側送信工程とを備えることを特徴とする制御方法。
【請求項５】
前記エラー情報報告工程では、前記情報取得指令に指定されるパラメータが、前記インターフェース装置が備えるパラメータ記憶部に記憶されるパラメータである場合、前記あらかじめ定めたパラメータを指定するものであると判断することを特徴とする請求項４に記載の制御方法。
【請求項６】
前記印刷装置側受信工程で受信された情報が所定のサイズを超える場合、当該情報を当該所定のサイズ以下の複数の分割済情報に分割する分割工程を備え、
前記ホスト装置側送信工程は、前記分割工程により分割された複数の分割済情報を、前記ホスト装置へ順に送信することを特徴とする請求項４または５に記載の制御方法。
【請求項７】
コンピュータを、請求項１から３のいずれか１項に記載のインターフェース装置として機能させることを特徴とするプログラムを記録したコンピュータ読取可能な情報記録媒体。
【請求項８】
コンピュータに、請求項４から６のいずれか１項に記載のインターフェース装置の制御方法を実行させることを特徴とするプログラムを記録したコンピュータ読取可能な情報記録媒体。
【請求項９】
前記情報記録媒体は、コンパクトディスク、フロッピー（登録商標）ディスク、ハードディスク、光磁気ディスク、ディジタルビデオディスク、磁気テープ、または、半導体メモリであることを特徴とする請求項７または８に記載の情報記録媒体。