(57)【特許請求の範囲】
【請求項１】
以下の手段を備えることを特徴とする、印刷装置の拡張スロットに装着可能なインターフェース装置。
（ａ）当該インターフェース装置に接続されるホストコンピュータが送信するデータを受信する受信手段と、
（ｂ）当該インターフェース装置が装着される印刷装置の拡張スロットを介して当該印刷装置にデータを送信する送信手段と、
（ｃ）当該印刷装置がデータを受信できるか否かを検知する検知手段と、
（ｄ）当該印刷装置がデータを受信できない旨を前記検知手段が検知した場合、前記受信手段により受信されたデータを記憶する記憶手段と、
（ｅ）当該印刷装置がデータを受信できる旨を前記検知手段が検知した場合、前記記憶手段に記憶されたデータに続いて受信できる旨を検知した後に前記受信手段により受信されたデータを前記送信手段に送信させる制御手段。
【請求項２】
さらに、以下の手段を備えることを特徴とする請求項１記載のインターフェース装置。
（ｆ）前記記憶手段にさらにデータを記憶することができるか否かを判別する判別手段と、
（ｇ）前記判別手段によりさらにデータを記憶することができない旨を判別した場合、その旨を当該ホストコンピュータに通知する通知手段。
【請求項３】
前記送信手段は、ＲＳ−２３２Ｃ規格に準拠したコネクタを有することを特徴とする請求項１または２記載のインターフェース装置。
【請求項４】
当該印刷装置の拡張スロットに装着した場合、当該印刷装置の匡体に収まる大きさであることを特徴とする請求項１から３のいずれか記載のインターフェース装置。
【請求項５】
さらに、以下の手段を備えることを特徴とする請求項１から４のいずれか記載のインターフェース装置。
（ｈ）当該印刷装置がデータを受信できない旨を前記検知手段が検知した場合、前記受信手段により受信されたデータがリアルタイムコマンドであれば当該データを前記送信手段に送信させるリアルタイムコマンド送信制御手段。
【請求項６】
以下のステップを備えることを特徴とする、印刷装置の拡張スロットに装着可能なインターフェース装置の制御方法。
（ａ）ホストコンピュータが送信するデータを受信する受信ステップと、
（ｂ）印刷装置がデータを受信できるか否かを検知する検知ステップと、
（ｃ）前記検知ステップにおいて当該印刷装置がデータを受信できない旨を検知した場合、前記受信ステップにおいて受信されたデータを記憶する記憶ステップと、
（ｄ）前記検知ステップにおいて当該印刷装置がデータを受信できる旨を検知した場合、前記記憶ステップにおいて記憶されたデータがあればそれを当該印刷装置に送信してから、前記受信ステップにおいて受信されたデータを当該印刷装置に送信する送信ステップ。
【請求項７】
さらに、以下のステップを備えることを特徴とする請求項６記載のインターフェース装置の制御方法。
（ｆ）前記記憶手段にさらにデータを記憶することができるか否かを判別する判別ステップと、
（ｇ）前記判別ステップにおいてさらにデータを記憶することができない旨を判別した場合、その旨を当該ホストコンピュータに通知する通知ステップ。
【請求項８】
さらに、以下のステップを備えることを特徴とする請求項６または７記載のインターフェース装置の制御方法。
（ｈ）前記検知ステップにおいて当該印刷装置がデータを受信できない旨を検知した場合、前記受信ステップにおいて受信されたデータがリアルタイムコマンドであれば当該データを当該印刷装置に送信するリアルタイムコマンド送信ステップ。
【請求項９】
以下のステップを備えることを特徴とする、印刷装置の拡張スロットに装着可能なインターフェース装置を制御するプログラムを記録した情報記録媒体。
（ａ）ホストコンピュータが送信するデータを受信する受信ステップと、
（ｂ）印刷装置がデータを受信できるか否かを検知する検知ステップと、
（ｃ）前記検知ステップにおいて当該印刷装置がデータを受信できない旨を検知した場合、前記受信ステップにおいて受信されたデータを記憶する記憶ステップと、
（ｄ）前記検知ステップにおいて当該印刷装置がデータを受信できる旨を検知した場合、前記記憶ステップにおいて記憶されたデータがあればそれを当該印刷装置に送信してから、前記受信ステップにおいて受信されたデータを当該印刷装置に送信する送信ステップ。
【請求項１０】
さらに、以下のステップを備えることを特徴とする請求項９記載のプログラムを記録した情報記録媒体。
（ｆ）前記記憶手段にさらにデータを記憶することができるか否かを判別する判別ステップと、
（ｇ）前記判別ステップにおいてさらにデータを記憶することができない旨を判別した場合、その旨を当該ホストコンピュータに通知する通知ステップ。
【請求項１１】
さらに、以下のステップを備えることを特徴とする請求項９または１０記載のプログラムを記録した情報記録媒体。
（ｈ）前記検知ステップにおいて当該印刷装置がデータを受信できない旨を検知した場合、前記受信ステップにおいて受信されたデータがリアルタイムコマンドであれば当該データを当該印刷装置に送信するリアルタイムコマンド送信ステップ。
【請求項１２】
前記情報記録媒体は、コンパクトディスク、フロッピーディスク、ハードディスク、光磁気ディスク、ディジタルビデオディスク、または、磁気テープであることを特徴とする請求項９から１１のいずれか記載のプログラムを記録した情報記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、印刷装置（プリンタ）用インターフェース装置、その制御方法、および、情報記録媒体に関する。特に、印刷装置の拡張スロットに装着され、ホストコンピュータと接続され、印刷装置のバッファリング状況を監視しながらホストコンピュータが送信した印刷指令（データ）を受信し、これを適切にバッファリングして印刷装置に送信する印刷装置用インターフェース装置、その制御方法、および、情報記録媒体に関する。
【０００２】
【従来の技術】
印刷装置とホストコンピュータを接続するインターフェースとしては、すでに種々の形態が提案されている。たとえば、ホストコンピュータが備えるパラレルポートやＲＳ−２３２Ｃポートを介するもの、ＩＥＥＥ（Institute of Electrical and Electronic Engineers；米国電気電子学会）１３９４を介するもの、近年普及し始めたＵＳＢ（Universal Serial Bus）やホストコンピュータが接続された通信ネットワークを介するものなどである。
【０００３】
このようなインターフェースを解してホストコンピュータは印刷装置に対して、実際に文字や図形を印刷する処理や、印刷装置自体の制御を行う処理を指令する印刷指令を、データとして送信する。
【０００４】
上記のように、さまざまな規格に基づいて、コネクタの形状がさまざまに異なるが、ホストコンピュータ側の接続状況が変化しても印刷装置自体のハードウェアは共通のものとしておきたい。特に、ホストコンピュータは交換したいが、印刷装置はできるだけそのまま使用したい、という希望がある。
【０００５】
そこで、上記のような様々な接続形態によって送信されるデータやコマンドを、ひとまずインターフェース装置が受信し、電圧変換やインピーダンス合わせ、送信されたデータやコマンドのバッファリング、さらには、これらの解釈およびフィルタ処理を行い、しかる後に、印刷装置固有のポート形式、たとえば、ＲＳ−２３２Ｃ形式に変換して出力する。
【０００６】
このように、インターフェース装置を交換することにより、１台の印刷装置をさまざまな状況に合わせて使用することができる。すなわち、インターフェース装置と印刷装置の組合せにより、さまざまなコネクタ形状に対応する印刷装置を提供することができる。これにより、印刷装置自体を大量製産することができ、印刷装置全体に要するコストを低減させることができる。
【０００７】
従来のインターフェース装置を使用した場合、以下のような形態により、印刷指令（データ）のバッファリングが行われていた。すなわち、ホストコンピュータがインターフェース装置に印刷指令を送信すると、インターフェース装置はこの印刷指令を印刷装置に送信し、印刷装置はこの印刷指令を受信バッファに記憶する。印刷装置の受信バッファがフルの場合には、インターフェース装置に対して、たとえば特開平７−１３７３５８号公報に開示されるようなＡＳＢ（Auto Status Back）機能や、ビジー信号線を介してこれをホストコンピュータにそのまま通知する。ホストコンピュータは、印刷装置の受信バッファフルが通知された場合には、印刷指令の送信を中断する。
【０００８】
【発明が解決しようとする課題】
しかしながら、印刷装置自体を変更せずに、これに組み込むインターフェース装置を用いることで、さらに適切にデータのバッファリングを行い、ホストコンピュータでの処理速度と、印刷装置の印刷速度の向上を図りたいという要望は大きい。
【０００９】
また、特開平１０−３３３８５６号公報に開示されるようなリアルタイムコマンドに印刷装置が対応する場合には、インターフェース装置がリアルタイムコマンドを受信したときに、そのリアルタイムコマンドを単にバッファに蓄積するだけでなく、ホストコンピュータからの緊急な情報要求等に応える機能を備える必要もある。
【００１０】
本発明は、以上のような問題を解決するためになされたもので、印刷装置の拡張スロットに装着され、ホストコンピュータと接続され、印刷装置のバッファリング状況を監視しながらホストコンピュータが送信したデータを受信し、これを適切にバッファリングして印刷装置に送信する印刷装置用インターフェース装置、その制御方法、および、情報記録媒体を提供することを目的とする。
【００１１】
また、本発明は、インターフェース装置が受信したデータに、印刷装置に優先して転送すべき印刷指令があった場合、これを印刷装置に確実に送信し、ホストコンピュータからの印刷指令の特性に応じてバッファ処理ができる印刷装置用インターフェース装置、その制御方法、および、情報記録媒体を提供することを目的とする。
【００１２】
【課題を解決するための手段】
以上の目的を達成するため、本発明の原理にしたがって、下記の発明を開示する。
【００１３】
本発明のインターフェース装置は、印刷装置の拡張スロットに装着可能であり、受信手段、送信手段、検知手段、記憶手段、制御手段を備え、受信手段は、当該インターフェース装置に接続されるホストコンピュータが送信するデータを受信し、送信手段は、当該インターフェース装置が装着される印刷装置の拡張スロットを介して当該印刷装置にデータを送信し、検知手段は、当該印刷装置がデータを受信できるか否かを検知し、記憶手段は、当該印刷装置がデータを受信できない旨を検知手段が検知した場合、受信手段により受信されたデータを記憶し、制御手段は、当該印刷装置がデータを受信できる旨を検知手段が検知した場合、記憶手段に記憶されたデータに続いて受信できる旨を検知した後に受信手段により受信されたデータを送信手段に送信させる。
【００１４】
また、本発明のインターフェース装置は、さらに、判別手段、通知手段を備えることができ、判別手段は、記憶手段にさらにデータを記憶することができるか否かを判別し、通知手段は、判別手段によりさらにデータを記憶することができない旨を判別した場合、その旨を当該ホストコンピュータに通知する。
【００１５】
また、本発明のインターフェース装置の送信手段は、ＲＳ−２３２Ｃ規格に準拠したコネクタを有することができる。
【００１６】
また、本発明のインターフェース装置は、当該印刷装置の拡張スロットに装着した場合、当該印刷装置の匡体に収まる大きさとすることができる。
【００１７】
また、本発明のインターフェース装置は、さらにリアルタイムコマンド送信制御手段を備えることができ、リアルタイムコマンド送信制御手段は、当該印刷装置がデータを受信できない旨を知手段が検知した場合、信手段により受信されたデータがリアルタイムコマンドであれば当該データを送信手段に送信させる。
【００１８】
本発明の印刷装置の拡張スロットに装着可能なインターフェース装置の制御方法は、ホストコンピュータが送信するデータを受信する受信ステップと、印刷装置がデータを受信できるか否かを検知する検知ステップと、検知ステップにおいて当該印刷装置がデータを受信できない旨を検知した場合、受信ステップにおいて受信されたデータを記憶する記憶ステップと、検知ステップにおいて当該印刷装置がデータを受信できる旨を検知した場合、記憶ステップにおいて記憶されたデータがあればそれを当該印刷装置に送信してから、受信ステップにおいて受信されたデータを当該印刷装置に送信する送信ステップとを備える。
【００１９】
また、本発明のインターフェース装置の制御方法は、記憶手段にさらにデータを記憶することができるか否かを判別する判別ステップと、判別ステップにおいてさらにデータを記憶することができない旨を判別した場合、その旨を当該ホストコンピュータに通知する通知ステップとをさらに備えることができる。
【００２０】
また、本発明のインターフェース装置の制御方法は、検知ステップにおいて当該印刷装置がデータを受信できない旨を検知した場合、受信ステップにおいて受信されたデータがリアルタイムコマンドであれば当該データを当該印刷装置に送信するリアルタイムコマンド送信ステップ。をさらに備えることができる。
【００２１】
本発明のインターフェース装置を制御するためのプログラムをコンパクトディスク、フロッピーディスク、ハードディスク、光磁気ディスク、ディジタルビデオディスク、磁気テープなどの情報記録媒体に記憶することができる。
【００２２】
さらに、本発明のインターフェース装置を制御するためのプログラムを、ＷＷＷ（World Wide Web）のサーバコンピュータに配置し、ここからユーザが適宜ダウンロードしてインターフェース装置に記憶させてプログラムを更新し、インターフェース装置にこのプログラムを実行させることができる。
【００２３】
【発明の実施の形態】
以下に本発明の一実施形態を説明する。なお、以下に説明する実施形態は説明のためのものであり、本願発明の範囲を制限するものではない。したがって、当業者であればこれらの各要素もしくは全要素をこれと均等なものに置換した実施形態を採用することが可能であるが、これらの実施形態も本願発明の範囲に含まれる。
【００２４】
（第１実施例）
図１には、本発明のインターフェース装置の実施形態の一例のブロック構成図を示す。
【００２５】
インターフェース装置１０１は、ホスト用インターフェース１０３を介してホストコンピュータ１０２に接続され、ホストコンピュータ１０２から送信されたデータを受信する。
【００２６】
一方、インターフェース装置１０１は、印刷装置用インターフェース１０５を介して印刷装置１０４に接続され、ホストコンピュータ１０２から送信されたデータを印刷装置１０４に送信する。印刷装置１０４では、このデータの中の印刷指令に基づいて、用紙やフィルムなどの印刷対象に文字や図形の印刷を行う。
【００２７】
ホスト用インターフェース１０３と、印刷装置用インターフェース１０５では、ＲＳ−２３２Ｃ規格などのシリアルデータ転送、セントロニクス規格などのパラレルデータ転送、イーサネットの１０Ｂａｓｅ−Ｔ、１００Ｂａｓｅ−Ｔなどのネットワーク接続、さらにＵＳＢなどの新しいデータ転送規格などに対応したものを採用することができる。
【００２８】
ホストコンピュータ１０２や印刷装置１０４の内部のＴＴＬ（Transistor Transistor Logic）回路とインターフェース装置１０１の内部とが異なる駆動電圧レベルで動作している場合には、ホスト用インターフェース１０３や印刷装置用インターフェース１０５にレベル変換を行うドライバ回路を備えることによって信号レベルを容易に変換することができる。
【００２９】
特に、既に普及している印刷装置では、印刷装置用インターフェース１０５と接続される部分でＲＳ−２３２Ｃ規格の形状のコネクタを使用し、ＴＴＬの信号レベルが異なるものを利用しているため、このように、安価なドライバ回路を付加するだけで接続が容易にできるのはコストの低減の面で役立つ。
【００３０】
さらに、既存の規格に基いたコネクタ形状を採用することができるため、コストの低減を図ることができる。
【００３１】
また、印刷装置用インターフェース１０５は、印刷装置１０４の受信バッファがフルか否かをインターフェース装置１０１に通知する。したがって、ＣＰＵ（Central Processing Unit ；中央処理ユニット）１０６は、印刷装置用インターフェース１０５を監視して、印刷装置１０４にデータを送信することができるか否かを検知することができる。この検知には、印刷装置１０４のＡＳＢ機能を用いることができる。また、ビジー信号線が印刷装置用インターフェース１０５に備えられている場合は、これを調べることにより検知ができる。
【００３２】
ＣＰＵ  １０６は、ホスト用インターフェース１０３を監視し、これがデータを受信した場合には、印刷装置１０４に送信できるか否かを検知し、できない場合は、できるようになるまでそのデータをバッファリングする。なお、従来のインターフェース装置においては、このバッファリング機能が提供されていなかった。
【００３３】
データのバッファリングには、ＲＡＭ（Random Access Memory）１１３を用いる。ＲＡＭ  １１３は、このほかの一時的な記憶に使用される。
【００３４】
ＲＯＭ（Read Only Memory）１１２は、ＣＰＵ  １０６が実行するプログラムが記憶される。印刷装置１０４の電源が投入され、インターフェース装置１０１に対する電源供給が開始されると、ＣＰＵ  １０６は、ＲＯＭ  １１２からプログラムを読み出して実行を開始し、インターフェース装置１０１を制御する。
【００３５】
電源投入時に、ＣＰＵ  １０６はディップスイッチ１０８の設定を調べ、ホスト用インターフェース１０３や印刷装置用インターフェース１０５で行われる通信のデータ長、パリティチェックの有無、転送速度などを設定する。
【００３６】
動作表示ランプ１１０は、インターフェース装置が動作していることを表示する。また、ホスト用インターフェース１０３や印刷装置用インターフェース１０５の通信状況やＣＰＵ  １０６の処理状況などを色の変化や点滅などで表示することも可能である。
【００３７】
ここで、ホスト用インターフェース１０３は受信手段、通知手段として機能し、印刷装置用インターフェース１０５は送信手段、検知手段として機能し、ＣＰＵ  １０６は制御手段、判別手段として機能し、ＲＡＭ  １１３は記憶手段として機能する。
【００３８】
また、ＲＯＭ  １１２は、ＣＰＵ  １０６が実行するプログラムを記憶する情報記録媒体としての役割を果たす。ＲＯＭ  １１２に記憶されるＢＩＯＳ（Basic Input Output System ）プログラムは、ホストコンピュータ１０２などから更新することが可能な実施形態をとることができ、この場合、ホストコンピュータ１０２が読取り可能なコンパクトディスク、フロッピーディスク、光磁気ディスク、ハードディスク、ディジタルビデオディスク磁気テープなども、ＣＰＵ  １０６が実行するプログラムを記憶する情報記録媒体としての役割を果たしうる。
【００３９】
なお、本実施形態では、ホスト用インターフェース１０３と、印刷装置用インターフェース１０５と、動作表示ランプ１１０と、ＲＯＭ  １１２と、ＲＡＭ  １１３と、がＣＰＵ  １０６に直接接続される構成をとっているが、これらがバスによって接続される構成を採用することも可能である。
【００４０】
図２は、本発明に係るインターフェース装置の概形を示す説明図である。
【００４１】
インターフェース装置１０１の背面には、ホスト用インターフェース１０３とインターフェース装置１０１の動作表示ランプ１１０が配置されている。インターフェース装置１０１は、印刷装置１０４に備えられた拡張スロットにちょうど収まる大きさに設計されている。このような形状に設計されたインターフェース装置は「印刷装置用拡張モジュール」と呼ばれることがある。
【００４２】
このような大きさに設計されているため、印刷装置１０４にインターフェース装置１０１を装着すると、あたかも印刷装置１０４自体の背面にホスト用インターフェース１０３と動作表示ランプ１１０が配置されているかのように見える。
【００４３】
このように、印刷装置１０４の内部に機器配置スペースの節約と、インターフェース装置１０１に対する不用意な接触や衝突を防止することに役立つ。このほか、オフィスの美観を向上させる点でも役立つ。
【００４４】
（データ送受処理）
以下では、図３を参照しながら、本発明のインターフェース装置のデータ送受処理の実施例について説明する。図３は、本発明のインターフェース装置のデータ送受処理を示すフローチャートである。
【００４５】
まず、ＣＰＵ  １０６は、ホストコンピュータ１０２が送信したデータをホスト用インターフェース１０３が受信するまで待機する（ステップＳ３０１）。
【００４６】
この待機の際に、ほかの処理に制御を移すコルーチン的な処理形態をとることが可能である。この場合、ホスト用インターフェース１０３がＣＰＵ  １０６に対して受信割り込みを発生することにより、ＣＰＵ  １０６はこれ以降の処理に進むようにすることができる。
【００４７】
データを受信したら、ＣＰＵ  １０６は、印刷装置１０４がデータを受信できる状態であるか否かを調べる（ステップＳ３０２）。受信できる状態か否かは、ビジー信号線を直接調べる手法や、ＡＳＢ機能により通知されている印刷装置１０４の状況をＲＡＭ  １１３に記憶することとしてその値を調べる手法などにより、得ることができる。
【００４８】
受信できない場合（ステップＳ３０２；Ｎｏ）、ステップＳ３０１において受信したデータをＲＡＭ  １１３のバッファ領域に記憶する（ステップＳ３０４）。ＲＡＭ  １１３には、あらかじめ所定の領域をバッファ領域として割り当てておき、この領域を用いてデータのバッファリングを行う。
【００４９】
このように、印刷装置１０４がデータを受信できない場合には、順次データがバッファ領域に記憶され、蓄積されていくため、しだいに使用できる領域が減っていく。使用できる領域がなくなった状態が「フル」の状態である。
【００５０】
ついでステップＳ３０４の処理によってバッファ領域がフルになったか否かを判別し（ステップＳ３０５）、フルになった場合（ステップＳ３０５；Ｙｅｓ）、その旨をホストコンピュータ１０２に通知して（ステップＳ３０６）ステップＳ３０１に戻る。この通知は、ＡＳＢと同様の規約に基いて行ってもよいし、ホスト用インターフェースにビジー信号線がある場合には、この信号線を用いて通知してもよい。
【００５１】
フルになっていない場合（ステップＳ３０５；Ｎｏ）、そのままステップＳ３０１に戻る。あるいは、フルになっていない旨をホストコンピュータ１０２に通知してもよい。
【００５２】
このように、受信したデータをバッファ領域に記憶してからバッファフルか否かを調べてホストコンピュータに通知することにより、受信したデータを記憶できる領域がステップＳ３０４において必ず残っていることが保証される。
【００５３】
一方、受信できる場合（ステップＳ３０２；Ｙｅｓ）、ＣＰＵ  １０６は、バッファ領域に記憶されてバッファリングされたデータがあるか否かを調べ（ステップＳ３０７）、ある場合（ステップＳ３０７；Ｙｅｓ）、印刷装置用インターフェース１０５を介して印刷装置１０４に送信し（ステップＳ３０８）、バッファをクリアしてから（ステップＳ３０９）、ステップＳ３０１において受信したデータを印刷装置１０４に送信し（ステップＳ３０９）、ステップＳ３０１に戻る。
【００５４】
一方、バッファ領域に記憶されてバッファリングされたデータがない場合（ステップＳ３０７；Ｎｏ）、ステップＳ３０９に進む。
【００５５】
なお、ステップＳ３０８において、バッファリングされているデータを印刷装置１０４に送信している途中で、印刷装置１０４の受信バッファがフルになった場合には、バッファ領域に残った未送信のデータに加えてステップＳ３０１において受信したデータをバッファ領域に記憶された新たなデータとすればよい。
【００５６】
（第２実施例）
本発明の第２実施例は、第１実施例の機能に加え、データの中の印刷指令に通常コマンドとリアルタイムコマンドの２種類があり、ホストコンピュータから送信されたリアルタイムコマンドは、直ちに印刷装置に送信する機能を備えるものである。したがって、第２実施例の実施形態は、第１実施例の実施形態を基本とするが、さらに、ホスト用インターフェース１０３とＣＰＵ  １０６とが共働して実現するリアルタイムコマンド送信制御手段を備える点と、ホスト側へのデータ送信も実行する点が異なる。
【００５７】
以下では、図４を参照しながら、第２実施例のインターフェース装置のデータ送受処理の実施例について説明する。図４は、本発明の第２実施例のインターフェース装置のデータ送受処理を示すフローチャートである。
【００５８】
なお、以下で「印刷装置１０４にデータを送信できる状態にない」とは、「印刷装置１０４は、リアルタイムコマンドでない印刷指令（通常コマンド）は受信できないが、リアルタイムコマンドは受信できる状態にある」ことを意味する。印刷装置は、リアルタイムコマンドを受信すると直ちにこれに対応する処理を実行するのである。
【００５９】
データ送受処理が起動されると、インターフェース装置１０１は、ホスト用インターフェース１０３の処理がデータを受信をすべき状態かを調べる（ステップＳ４０１）。
【００６０】
ホスト用インターフェース１０３がデータを受信すべき状態にない場合（ステップＳ４０１；Ｎｏ）、さらに、インターフェース装置１０１は、印刷装置用インターフェース１０５を介して、印刷装置１０４からのデータをホスト１０２に送信すべき状態にあるか否かを調べる（ステップＳ４０２）。
【００６１】
ホスト１０２にデータを送信すべき状態にある場合（ステップＳ４０２；Ｙｅｓ）、印刷装置用インターフェース１０５を介して取得したデータをホスト１０２に転送するデータ送信処理を実行し（ステップＳ４０３）、本処理を終了する。
【００６２】
一方、データを送信すべき状態にない場合（ステップＳ４０２；Ｎｏ）、ステップＳ４０１に戻る。
【００６３】
また、ホスト用インターフェース１０３がデータを受信すべき状態にある場合（ステップＳ４０１；Ｙｅｓ）、インターフェース装置１０１は、印刷装置用インターフェース１０５を介して印刷装置１０４にデータを送信できる状態にあるか否かを調べる（ステップＳ４０４）。
【００６４】
送信できる状態にある場合（ステップＳ４０４；Ｙｅｓ）ＲＡＭ  １１３内のバッファ領域に以前に受信したデータが残っているか調べ（ステップＳ４０５）、残っている場合（ステップＳ４０５；Ｙｅｓ）当該データを印刷装置用インターフェース１０５を介して印刷装置１０４に送信して（ステップＳ４０６）から、ホスト用インターフェース１０３から受信したデータを、印刷装置用インターフェース１０５を介して印刷装置１０４に転送し（ステップＳ４０７）、本処理を終了する。
【００６５】
一方、ＲＡＭ  １１３内のバッファ領域に以前に受信したデータが残っていない場合（ステップＳ４０５；Ｎｏ）、そのままステップＳ４０７に進む。
【００６６】
また、印刷装置用インターフェース１０５を介して印刷装置１０４にデータを送信できる状態にない場合（ステップＳ４０４）、インターフェース装置１０１は、ホスト用インターフェース１０３を介してデータを受信する（ステップＳ４０８）。
【００６７】
次に、受信したデータにリアルタイムコマンドが含まれているかを調べ（ステップＳ４０９）、含まれていれば（ステップＳ４０９；Ｙｅｓ）、当該リアルタイムコマンドを、印刷装置用インターフェース１０５を介して印刷装置に送信し（ステップＳ４１０）、受信したデータをＲＡＭ  １１３内のバッファ領域に蓄積する（ステップＳ４１１）。
【００６８】
一方、リアルタイムコマンドが含まれていなければ（ステップＳ４０９；Ｎｏ）、受信したデータをＲＡＭ  １１３内のバッファ領域に蓄積する（ステップＳ４１１）。
【００６９】
さらに、続けてデータを受信できる状態にあるか否かを調べ（ステップＳ４１２）、継続するデータがない場合（ステップＳ４１２；Ｎｏ）、本処理を終了する。
【００７０】
継続するデータがある場合（ステップＳ４１２；Ｙｅｓ）、ステップＳ４０９に戻る。
【００７１】
なお、ステップＳ４１１においては、第１実施例と同様に、インターフェース装置１０１のＲＡＭ  １１３のバッファ領域がフルになったか否かを調べ、フルになった場合には、その旨をホストコンピュータに通知するなどの処理を行うことができる。
【００７２】
また、上記実施形態では、ステップＳ４１１において、リアルタイムコマンドであると否とに関わらずバッファ領域にデータを蓄積するが、すでにリアルタイムコマンドは印刷装置１０４に送信されているので、リアルタイムコマンドについてはバッファ領域に蓄積しない実施形態をとることも可能である。
【００７３】
上記の第１実施例、第２実施例の処理の手順は実施形態の例を示したものであり、これを変形してこれと同等の処理をインターフェース装置で実行することができるが、そのような実施形態も本発明の範囲に含まれる。
【００７４】
【発明の効果】
以上説明したように、本発明によれば、以下の効果を奏する。
【００７５】
印刷装置の拡張スロットに装着され、ホストコンピュータと接続され、印刷装置のバッファリング状況を監視しながらホストコンピュータが送信したデータを受信し、これを適切にバッファリングして印刷装置に送信する印刷装置用インターフェース装置とその制御方法を提供することができる。
【００７６】
また、インターフェース装置でもバッファリングができない場合には、その旨をホストコンピュータに通知する印刷装置用インターフェース装置とその制御方法を提供することができる。
【００７７】
これにより、ホストコンピュータにおけるデータの送信待機時間を短縮することができ、印刷処理の高速化を図ることができる。
【００７８】
また、安価なコネクタを利用して印刷装置と通信ができるため、コストの低減を図ることができる。
【００７９】
また、印刷装置の内部にインターフェース装置を装着することができるため、オフィスのスペースの節約になるとともに美観を向上することができる。
【００８０】
また、印刷装置がリアルタイムコマンドなど、印刷装置に優先して転送すべき印刷指令に対応している場合には、これを印刷装置に確実に送信し、ホストコンピュータからの印刷指令の特性に応じてバッファ処理ができる印刷装置用インターフェース装置とその制御方法を提供することができる。
【００８１】
さらに、プログラムを記録した情報記録媒体をソフトウェア商品として、インターフェース装置と独立して容易に配布したり販売したりすることができるようになる。本発明の情報記録媒体に記録されたプログラムをインターフェース装置で実行すれば、上記の発明に係るインターフェース装置およびインターフェース装置の制御方法が実現できる。
【図面の簡単な説明】
【図１】本発明のインターフェース装置の実施形態の一例の概要を示すブロック構成図。
【図２】本発明のインターフェース装置の概形を示す説明図。
【図３】本発明のインターフェース装置のデータ送受処理の実施例を示すフローチャート。
【図４】本発明の第２実施例のインターフェース装置のデータ送受処理の実施例を示すフローチャート。
【符号の説明】
１０１  インターフェース装置
１０２  ホストコンピュータ
１０３  ホスト用インターフェース
１０４  印刷装置
１０５  印刷装置用インターフェース
１０６  ＣＰＵ
１０８  ディップスイッチ
１１０  動作表示ランプ
１１２  ＲＯＭ
１１３  ＲＡＭ
【図１】
0003846089.tif 000002
【図２】
0003846089.tif 000003
【図３】
0003846089.tif 000004
【図４】
0003846089.tif 000005