JP4441967B2 - インターフェース装置およびその制御方法 - Google Patents
インターフェース装置およびその制御方法 Download PDFInfo
- Publication number
- JP4441967B2 JP4441967B2 JP2000009345A JP2000009345A JP4441967B2 JP 4441967 B2 JP4441967 B2 JP 4441967B2 JP 2000009345 A JP2000009345 A JP 2000009345A JP 2000009345 A JP2000009345 A JP 2000009345A JP 4441967 B2 JP4441967 B2 JP 4441967B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- real
- transmission
- command
- time command
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Accessory Devices And Overall Control Thereof (AREA)
Description
【発明の属する技術分野】
本発明は、印刷装置(プリンタ)用インターフェース装置、その制御方法、および、情報記録媒体に関する。特に、印刷装置の拡張スロットに装着され、ホストコンピュータと接続され、印刷装置のバッファリング状況を監視しながらホストコンピュータが送信した指令データを受信し、これを適切にバッファリングして印刷装置に送信する印刷装置用インターフェース装置、その制御方法、および、情報記録媒体に関する。
【0002】
【従来の技術】
印刷装置とホストコンピュータを接続するインターフェースとしては、すでに種々の形態が提案されている。たとえば、ホストコンピュータが備えるパラレルポートやRS−232ポートを介するもの、IEEE(Institute of Electrical and Electronic Engineers;米国電気電子学会)1284を介するもの、近年普及し始めたUSB(Universal Serial Bus)やホストコンピュータが接続された通信ネットワークを介するものなどである。
【0003】
このようなインターフェースを解してホストコンピュータは印刷装置に対して、実際に文字や図形を印刷する処理を指令する印刷指令や、印刷装置自体の制御を行う処理を指令するコマンドなどを表すバイト列を、指令データとして送信する。
【0004】
上記のように、さまざまな規格に基づいて、コネクタの形状がさまざまに異なるが、ホストコンピュータ側の接続状況が変化しても印刷装置自体のハードウェアは共通のものとしておきたい。特に、ホストコンピュータは交換したいが、印刷装置はできるだけそのまま使用したい、という希望がある。
【0005】
そこで、上記のような様々な接続形態によって送信されるデータやコマンドを、ひとまずインターフェース装置が受信し、電圧変換やインピーダンス合わせ、送信されたデータやコマンドのバッファリング、さらには、これらの解釈およびフィルタ処理を行い、しかる後に、印刷装置固有のポート形式、たとえば、RS−232形式に変換して出力する。
【0006】
このように、インターフェース装置を交換することにより、1台の印刷装置をさまざまな状況に合わせて使用することができる。すなわち、インターフェース装置と印刷装置の組合せにより、さまざまなインターフェース規格に対応する印刷装置を提供することができる。これにより、印刷装置自体を大量生産することができ、印刷装置全体に要するコストを低減させることができる。
【0007】
従来のインターフェース装置を使用した場合、以下のような形態により、指令データのバッファリングが行われていた。すなわち、ホストコンピュータがインターフェース装置に指令データを送信すると、インターフェース装置はこの指令データを印刷装置に受信した順番通りに送信し、印刷装置はこの指令データを受信バッファに記憶する。印刷装置の受信バッファがフルの場合には、インターフェース装置に対して、たとえば特開平7−137358号公報に開示されるようなASB(Auto Status Back)機能や、ビジー信号線を介してこれをホストコンピュータにそのまま通知する。ホストコンピュータは、印刷装置の受信バッファフルが通知された場合には、指令データの送信を中断する。
【0008】
【発明が解決しようとする課題】
しかしながら、印刷装置自体を変更せずに、これに組み込むインターフェース装置を用いることで、さらに適切にデータのバッファリングを行い、ホストコンピュータでの処理速度と、印刷装置の印刷速度の向上を図りたいという要望は大きい。
【0009】
また、特開平10−333856号公報に開示されるような所定の処理を直ちに行わせるリアルタイムコマンドに印刷装置が対応する場合には、インターフェース装置がリアルタイムコマンドを受信したときに、そのリアルタイムコマンドを単にバッファに蓄積するだけでなく、ホストコンピュータからの緊急な情報要求等に応える機能を備える必要もある。
【0010】
本発明は、以上のような問題を解決するためになされたもので、印刷装置の拡張スロットに装着され、ホストコンピュータと接続され、印刷装置のバッファリング状況を監視しながらホストコンピュータが送信したデータを受信し、これを適切にバッファリングして印刷装置に送信する印刷装置用インターフェース装置、その制御方法、および、情報記録媒体を提供することを目的とする。
【0011】
また、本発明は、インターフェース装置が受信したデータに、印刷装置に優先して転送すべき指令データがあった場合、これを印刷装置に確実に送信し、ホストコンピュータからの指令データの特性に応じてバッファ処理ができる印刷装置用インターフェース装置、その制御方法、および、情報記録媒体を提供することを目的とする。
【0012】
【課題を解決するための手段】
以上の目的を達成するため、本発明の原理にしたがって、下記の発明を開示する。
【0013】
つまり、本発明のインターフェース装置は、以下を備えることを特徴とする、印刷装置の拡張スロットに装着可能なものである。
【0014】
(a)前記インターフェース装置に接続されるホストコンピュータが送信するデータを受信する受信部と、
(b)前記インターフェース装置が装着される印刷装置に前記データを送信する送信部と、
(c)前記印刷装置が前記データを受信できるか否かを検知する検知部と、
(d)前記印刷装置が前記データを受信できない旨を前記検知部が検知した場合でも、
前記受信部により受信された前記データが所定の処理を直ちに行わせるリアルタイムコマンドであれば、前記データを前記送信部に送信させるリアルタイムコマンド送信制御部と、を備え、
前記リアルタイムコマンド送信制御部は、前記送信部がリアルタイムコマンド以外のデータを送信中にリアルタイムコマンドのデータを送信させるときは、前記リアルタイムコマンド以外のデータの送信が完了してから、前記送信部にリアルタイムコマンドのデータを送信させるように構成されている。
【0015】
当該構成によれば、印刷装置がデータを受信できないとき、例えば、印刷装置の受信バッファフル、カバーオープンによるオフラインのときでも、インタフェース装置は、リアルタイムコマンドを解釈して印刷装置に送信することができる。また、リアルタイムコマンド以外の通常コマンドのときは、印刷装置がデータを受信できないときにはインターフェース装置の記憶部に記憶しておくことができる。
【0016】
本発明のインターフェース装置は、印刷装置の拡張スロットに装着可能であり、受信部、送信部、検知部、記憶部、制御部を備えるように構成する。
【0017】
ここで、受信部は、当該インターフェース装置に接続されるホストコンピュータが送信するデータを受信する。
【0018】
一方、送信部は、当該インターフェース装置が装着される印刷装置の拡張スロットを介して当該印刷装置にデータを送信する。
【0019】
さらに、検知部は、当該印刷装置がデータを受信できるか否かを検知する。
【0020】
そして、記憶部は、当該印刷装置がデータを受信できない旨を検知部が検知した場合、受信部により受信されたデータを記憶する。
【0021】
一方、制御部は、当該印刷装置がデータを受信できる旨を検知部が検知した場合、記憶部に記憶されたデータに続いて受信できる旨を検知した後に受信部により受信されたデータを送信部に送信させる。
【0022】
また、本発明のインターフェース装置は、さらに、判別部、通知部を備えるように構成することができる。
【0023】
ここで、判別部は、記憶部にさらにデータを記憶することができるか否かを判別する。
【0024】
一方、通知部は、判別部によりさらにデータを記憶することができない旨を判別した場合、その旨を当該ホストコンピュータに通知する。
【0025】
また、本発明のインターフェース装置の送信部は、RS−232規格に準拠したコネクタを有するように構成することができる。
【0026】
また、本発明のインターフェース装置は、当該印刷装置の拡張スロットに装着した場合、当該印刷装置の匡体に収まる大きさとするように構成することができる。
【0027】
また、本発明のインターフェース装置は、さらにリアルタイムコマンド送信制御部を備えることができる。
【0028】
ここで、リアルタイムコマンド送信制御部は、当該印刷装置がデータを受信できない旨を検知部が検知した場合、受信部により受信されたデータがリアルタイムコマンドであれば当該データを送信部に送信させる。
【0029】
また、本発明のインターフェース装置において、リアルタイムコマンド送信制御部が、当該リアルタイムコマンドのデータを前記送信部に送信させた場合、記憶部は、当該データを記憶しないように構成することもできる。
【0030】
また、本発明のインターフェース装置において、送信部が送信したデータが途切れた場合で、そのデータが他のコマンドを表すデータ列の途中である場合、リアルタイムコマンド送信制御部は、送信部による当該他のコマンドを表すデータ列の送信が完了してから、送信部に当該リアルタイムコマンドのデータを送信させるように構成することができる。
【0031】
本構成により、他のコマンドを表すデータ列の送信の途中にリアルタイムコマンドのデータが割り込んでしまうことが防止できる。本構成では、現在あるコマンドを送信している途中か否かを判別して、送信の途中でなくなるまで、つまり、コマンドのコマンドの区切りになるまで、リアルタイムコマンドのデータの送信を待機するからである。
【0032】
本発明の印刷装置の拡張スロットに装着可能なインターフェース装置の制御方法は、受信ステップと、検知ステップと、記憶ステップと、送信ステップとを備えるように構成する。
【0033】
ここで、受信ステップでは、ホストコンピュータが送信するデータを受信する。
【0034】
一方、検知ステップでは、印刷装置がデータを受信できるか否かを検知する。
【0035】
さらに、記憶ステップでは、検知ステップにおいて当該印刷装置がデータを受信できない旨を検知した場合、受信ステップにおいて受信されたデータを記憶する。
【0036】
そして、送信ステップでは、検知ステップにおいて当該印刷装置がデータを受信できる旨を検知した場合、記憶ステップにおいて記憶されたデータがあればそれを当該印刷装置に送信してから、受信ステップにおいて受信されたデータを当該印刷装置に送信する。
【0037】
また、本発明のインターフェース装置の制御方法は、判別ステップと、通知ステップとをさらに備えるように構成することができる。
【0038】
ここで、判別ステップでは、記憶部にさらにデータを記憶することができるか否かを判別する。
【0039】
一方、通知ステップでは、判別ステップにおいてさらにデータを記憶することができない旨を判別した場合、その旨を当該ホストコンピュータに通知する。
【0040】
また、本発明のインターフェース装置の制御方法は、リアルタイムコマンド送信ステップをさらに備えるように構成することができる。
【0041】
ここで、リアルタイムコマンド送信ステップでは、検知ステップにおいて当該印刷装置がデータを受信できない旨を検知した場合、受信ステップにおいて受信されたデータがリアルタイムコマンドであれば当該データを当該印刷装置に送信する。
【0042】
また、本発明のインターフェース装置の制御方法において、リアルタイムコマンド送信ステップにおいて当該リアルタイムコマンドのデータが当該印刷装置に送信された場合、記憶ステップによる当該データの記憶は実行しないように構成することができる。
【0043】
また、本発明のインターフェース装置の制御方法において、当該印刷装置に送信されたデータが途切れた場合で、そのデータが他のコマンドを表すデータ列の途中である場合、リアルタイムコマンド送信ステップは、当該他のコマンドを表すデータ列の送信が完了してから、当該リアルタイムコマンドのデータを送信するように構成することができる。
【0044】
本発明のインターフェース装置を制御するためのプログラムをコンパクトディスク、フロッピーディスク、ハードディスク、光磁気ディスク、ディジタルビデオディスク、磁気テープなどの情報記録媒体に記憶することができる。
【0045】
さらに、本発明のインターフェース装置を制御するためのプログラムを、WWW(World Wide Web)のサーバコンピュータに配置し、ここからユーザが適宜ダウンロードしてインターフェース装置に記憶させてプログラムを更新し、インターフェース装置にこのプログラムを実行させることができる。
【0046】
【発明の実施の形態】
以下に本発明の一実施形態を説明する。なお、以下に説明する実施形態は説明のためのものであり、本願発明の範囲を制限するものではない。したがって、当業者であればこれらの各要素もしくは全要素をこれと均等なものに置換した実施形態を採用することが可能であるが、これらの実施形態も本願発明の範囲に含まれる。
【0047】
(第1実施例)
図1には、本発明のインターフェース装置の実施形態の一例のブロック構成図を示す。
【0048】
インターフェース装置101は、ホスト用インターフェース103を介してホストコンピュータ102に接続され、ホストコンピュータ102から送信されたデータを受信する。
【0049】
一方、インターフェース装置101は、印刷装置用インターフェース105を介して印刷装置104に接続され、ホストコンピュータ102から送信された指令データを印刷装置104に送信する。印刷装置104では、この指令データの中の印刷指令に基づいて、用紙やフィルムなどの印刷対象に文字や図形の印刷を行う。また、指令データの中の各種制御設定指令に基づいて、印刷装置104そのものの制御や設定を行う。
【0050】
ホスト用インターフェース103と、印刷装置用インターフェース105では、RS−232規格などのシリアルデータ転送、セントロニクス規格などのパラレルデータ転送、イーサネットの10Base−T、100Base−Tなどのネットワーク接続、さらにUSBなどの新しいデータ転送規格などに対応したものを採用することができる。
【0051】
ホストコンピュータ102や印刷装置104の内部のTTL(Transistor Transistor Logic)回路とインターフェース装置101の内部とが異なる駆動電圧レベルで動作している場合には、ホスト用インターフェース103や印刷装置用インターフェース105にレベル変換を行うドライバ回路を備えることによって信号レベルを容易に変換することができる。
【0052】
さらに、既存の規格に基づいたコネクタ形状を採用することができるため、コストの低減を図ることができる。
【0053】
また、印刷装置用インターフェース105は、印刷装置104の受信バッファがフルか否かをインターフェース装置101に通知する。したがって、CPU(Central Processing Unit;中央処理ユニット)106は、印刷装置用インターフェース105を監視して、印刷装置104にデータを送信することができるか否かを検知することができる。この検知には、印刷装置104のASB機能を用いることができる。また、ビジー信号線が印刷装置用インターフェース105に備えられている場合は、これを調べることにより検知ができる。
【0054】
CPU 106は、ホスト用インターフェース103を監視し、これがデータを受信した場合には、印刷装置104に送信できるか否かを検知し、できない場合は、できるようになるまでそのデータをバッファリングする。なお、従来のインターフェース装置においては、このバッファリング機能が提供されていなかった。
【0055】
指令データのバッファリングには、RAM(Random Access Memory)113内に確保されたバッファ領域120を用いる。RAM 113は、このほかの一時的な記憶に使用される。
【0056】
ROM(Read Only Memory)112は、CPU 106が実行するプログラムが記憶される。印刷装置104の電源が投入され、インターフェース装置101に対する電源供給が開始されると、CPU 106は、ROM 112からプログラムを読み出して実行を開始し、インターフェース装置101を制御する。
【0057】
電源投入時に、CPU 106はディップスイッチ108の設定を調べ、ホスト用インターフェース103や印刷装置用インターフェース105で行われる通信のデータ長、パリティチェックの有無、転送速度などを設定する。
【0058】
動作表示ランプ110は、インターフェース装置が動作していることを表示する。また、ホスト用インターフェース103や印刷装置用インターフェース105の通信状況やCPU 106の処理状況などを色の変化や点滅などで表示することも可能である。
【0059】
ここで、ホスト用インターフェース103は受信部、通知部として機能し、印刷装置用インターフェース105は送信部、検知部として機能し、CPU 106は制御部、判別部として機能し、RAM 113は記憶部として機能する。
【0060】
また、ROM 112は、CPU 106が実行するプログラムを記憶する情報記録媒体としての役割を果たす。ROM 112に記憶されるBIOS(Basic Input Output System)プログラムは、ホストコンピュータ102などから更新することが可能な実施形態をとることができ、この場合、ホストコンピュータ102が読取り可能なコンパクトディスク、フロッピーディスク、光磁気ディスク、ハードディスク、ディジタルビデオディスク磁気テープなども、CPU 106が実行するプログラムを記憶する情報記録媒体としての役割を果たしうる。
【0061】
なお、本実施形態では、ホスト用インターフェース103と、印刷装置用インターフェース105と、動作表示ランプ110と、ROM 112と、RAM 113と、がCPU 106に直接接続される構成をとっているが、これらがバスによって接続される構成を採用することも可能である。
【0062】
図2は、本発明に係るインターフェース装置の概形を示す説明図である。
【0063】
インターフェース装置101の背面には、ホスト用インターフェース103とインターフェース装置101の動作表示ランプ110が配置されている。インターフェース装置101は、印刷装置104に備えられた拡張スロットにちょうど収まる大きさに設計されている。このような形状に設計されたインターフェース装置は「印刷装置用拡張モジュール」と呼ばれることがある。
【0064】
このような大きさに設計されているため、印刷装置104にインターフェース装置101を装着すると、あたかも印刷装置104自体の背面にホスト用インターフェース103と動作表示ランプ110が配置されているかのように見える。
【0065】
このように、印刷装置104の内部に機器配置スペースの節約と、インターフェース装置101に対する不用意な接触や衝突を防止することに役立つ。このほか、オフィスの美観を向上させる点でも役立つ。
【0066】
(データ送受処理)
以下では、図3を参照しながら、本発明のインターフェース装置のデータ送受処理の実施例について説明する。図3は、本発明のインターフェース装置のデータ送受処理を示すフローチャートである。
【0067】
まず、CPU 106は、ホストコンピュータ102から送信される指令データがホスト用インターフェース103に到来するまで待機する(ステップS301)。
【0068】
この待機の際に、ほかの処理に制御を移すコルーチン的な処理形態をとることが可能である。この場合、ホスト用インターフェース103がCPU 106に対して受信割り込みを発生することにより、CPU 106はこれ以降の処理に進むようにすることができる。
【0069】
ステップS301において指令データが到来して、当該指令データを受信したら、CPU 106は、印刷装置104が指令データを受信できる状態であるか否かを調べる(ステップS302)。受信できる状態か否かは、ビジー信号線を直接調べる手法や、ASB機能により通知されている印刷装置104の状況をRAM 113に記憶することとしてその値を調べる手法などにより、得ることができる。
【0070】
印刷装置が受信可能でない場合(ステップS302;No)、ステップS301において受信したデータをRAM 113内のバッファ領域120に記憶する(ステップS304)。前述のように、RAM 113には、あらかじめバッファ領域120が割り当てられている。バッファ領域120は、FIFO(First In First Out)形式のキューのようなバッファとして構成される。したがって、たとえば、リングバッファなどの技法により実現することができる。
【0071】
このように、印刷装置104がデータを受信できない場合には、順次データがバッファ領域120に記憶され、蓄積されていくため、しだいに使用できる領域が減っていく。使用できる領域がなくなった状態が「フル」の状態である。
【0072】
ついでステップS304の処理によってバッファ領域120がフルになったか否かを判別し(ステップS305)、フルになった場合(ステップS305;Yes)、バッファフルになった旨をホストコンピュータ102に通知して(ステップS306)、ステップS301に戻る。この通知は、ASBと同様の規約に基づいて行ってもよいし、ホスト用インターフェースにビジー信号線がある場合には、この信号線を用いて通知してもよい。
【0073】
フルになっていない場合(ステップS305;No)、そのままステップS301に戻る。あるいは、フルになっていない旨をホストコンピュータ102に通知してもよい。
【0074】
このように、受信したデータをバッファ領域120に記憶してからバッファフルか否かを調べてホストコンピュータに通知することにより、受信したデータを記憶できる空き領域がステップS304において必ず残っていることが保証される。
【0075】
一方、受信できる場合(ステップS302;Yes)、CPU 106は、バッファ領域120に記憶されてバッファリングされた指令データがあるか否かを調べ(ステップS307)、ある場合(ステップS307;Yes)、印刷装置用インターフェース105を介して印刷装置104に送信し(ステップS308)、バッファ領域120をクリアしてから(ステップS309)、ステップS301において受信したデータを印刷装置104に送信し(ステップS309)、ステップS301に戻る。
【0076】
一方、バッファ領域120に記憶されてバッファリングされたデータがない場合(ステップS307;No)、ステップS309に進む。
【0077】
なお、ステップS308において、バッファリングされているデータを印刷装置104に送信している途中で、印刷装置104の受信バッファがフルになった場合には、バッファ領域に残った未送信のデータに加えてステップS301において受信したデータをバッファ領域に記憶された新たなデータとすればよい。
【0078】
(実験結果)
上記のようにインターフェース装置101を構成した場合の各諸元の例と実験結果について説明する。
【0079】
ホスト用インターフェース103は、RS−232規格に適合したものとする。
【0080】
印刷装置用インターフェース105は、クロック同期シリアルインターフェースで、半二重型通信のものを用いる。印刷装置用インターフェース105では、通信方式の変換を行い、通信速度は1.25Mbpsである。
【0081】
さらに、データのバッファリング用に、RAM 113内に40バイトのバッファ領域を用意する。
【0082】
従来、RS−232C規格による通信でホスト装置から印刷装置にデータを送信する場合は、通信速度としては、38400bps程度までしか実現できなかった。
【0083】
一方、上記諸元を用いて本発明を適用すると、現在最も普及している汎用パーソナルコンピュータで使われる最高速度である115kbps〜230kbpsに、通信速度を向上させることができた。また、さらに高速な通信も可能であることが実験により判明している。
【0084】
(第2実施例)
本発明の第2実施例は、第1実施例の機能に加え、データの中の指令データに通常コマンドとリアルタイムコマンドの2種類があり、ホストコンピュータから送信されたリアルタイムコマンドは、直ちに印刷装置に送信する機能を備えるものである。したがって、第2実施例の実施形態は、第1実施例の実施形態を基本とするが、さらに、ホスト用インターフェース103とCPU 106とが共働して実現するリアルタイムコマンド送信制御部を備える点と、ホスト側へのデータ送信も実行する点が異なる。
【0085】
以下では、図4を参照しながら、第2実施例のインターフェース装置のデータ送受処理の実施例について説明する。図4は、本発明の第2実施例のインターフェース装置のデータ送受処理を示すフローチャートである。
【0086】
なお、以下で「印刷装置104にデータを送信できる状態にない」とは、「印刷装置104は、リアルタイムコマンドでない指令データ(通常コマンド)は受信できないが、リアルタイムコマンドは受信できる状態にある」ことを意味する。
【0087】
印刷装置は、リアルタイムコマンドを受信すると直ちにこれに対応する処理を実行するのである。
【0088】
データ送受処理が起動されると、インターフェース装置101は、ホスト用インターフェース103の処理がデータを受信をすべき状態かを調べる(ステップS401)。
【0089】
ホスト用インターフェース103がデータを受信すべき状態にない場合(ステップS401;No)、さらに、インターフェース装置101は、印刷装置用インターフェース105を介して、印刷装置104からのデータを印刷装置に送信すべき状態にあるか否かを調べる(ステップS402)。
【0090】
ホスト102にデータを送信すべき状態にある場合(ステップS402;Yes)、印刷装置用インターフェース105を介して取得したデータを印刷装置に転送するデータ送信処理を実行し(ステップS403)、本処理を終了する。
【0091】
一方、データを送信すべき状態にない場合(ステップS402;No)、ステップS401に戻る。
【0092】
また、ホスト用インターフェース103がデータを受信すべき状態にある場合(ステップS401;Yes)、インターフェース装置101は、印刷装置用インターフェース105を介して印刷装置104にデータを送信できる状態にあるか否かを調べる(ステップS404)。
【0093】
送信できる状態にある場合(ステップS404;Yes)、RAM 113内のバッファ領域に以前に受信したデータが残っているか調べ(ステップS405)、残っている場合(ステップS405;Yes)、当該データを印刷装置用インターフェース105を介して印刷装置104に送信して(ステップS406)から、ホスト用インターフェース103から受信したデータを、印刷装置用インターフェース105を介して印刷装置104に転送し(ステップS407)、本処理を終了する。
【0094】
一方、RAM 113内のバッファ領域に以前に受信したデータが残っていない場合(ステップS405;No)、そのままステップS407に進む。
【0095】
また、印刷装置用インターフェース105を介して印刷装置104にデータを送信できる状態にない場合(ステップS404)、インターフェース装置101は、ホスト用インターフェース103を介してデータを受信する(ステップS408)。
【0096】
次に、受信したデータにリアルタイムコマンドが含まれているかを調べ(ステップS409)、含まれていれば(ステップS409;Yes)、当該リアルタイムコマンドを、印刷装置用インターフェース105を介して印刷装置に送信し(ステップS410)、受信したデータをRAM 113内のバッファ領域に蓄積する(ステップS411)。
【0097】
一方、リアルタイムコマンドが含まれていなければ(ステップS409;No)、受信したデータをRAM 113内のバッファ領域に蓄積する(ステップS411)。
【0098】
さらに、続けてデータを受信できる状態にあるか否かを調べ(ステップS412)、継続するデータがない場合(ステップS412;No)、本処理を終了する。
【0099】
継続するデータがある場合(ステップS412;Yes)、ステップS409に戻る。
【0100】
なお、ステップS411においては、第1実施例と同様に、インターフェース装置101のRAM 113のバッファ領域がフルになったか否かを調べ、フルになった場合には、その旨をホストコンピュータに通知するなどの処理を行うことができる。
【0101】
また、上記実施形態では、ステップS411において、リアルタイムコマンドであると否とに関わらずバッファ領域にデータを蓄積するが、すでにリアルタイムコマンドは印刷装置104に送信されているので、リアルタイムコマンドについてはバッファ領域に蓄積しない実施形態をとることも可能である。
【0102】
(第3実施例)
第2実施例では、インターフェース装置101が受信したデータにリアルタイムコマンドが含まれている場合には、それを直ちに印刷装置104に送信していた。この場合、リアルタイムコマンド以外のコマンド(以下「通常コマンド」という。)が複数バイトのデータ列からなる場合、送信の途中で、リアルタイムコマンドのデータが割り込むことがありうる。
【0103】
リアルタイムコマンドと通常コマンドとが区別できるようなコマンド体系を印刷装置104が採用している場合には、第2実施例を採用すれば十分である。たとえば、データはバイト単位(8ビット単位)で送信され、リアルタイムコマンドを表すデータは常に最上位ビットが立っており(1になっており)、通常コマンドを表すデータは常に最上位ビットがクリアされている(0になっている)ようなコマンド体系の場合である。
【0104】
しかしながら、既存のコマンド体系との互換性を考慮する場合、第2実施例では不十分な場合がある。既存のコマンド体系では、通常コマンドのデータ列の途中にリアルタイムコマンドが割り込むと、予期しない動作をするものがあるからである。
【0105】
たとえば、以下のようなデータ列を順に、ホストコンピュータ102からインターフェース装置101を介して印刷装置104へ送信する場合を考える。ここで、0xは十六進数の値を意味する接頭辞である。また、ある文字のASCIIコードを送信することを、二重引用符で囲むことで表記する。
【0106】
「0x1b "t" 0」文字コードテーブルの0番を選択する。最後の0がパラメータである。
【0107】
「0x1b "R" 1」国際文字セットの1番を選択する。最後の1がパラメータである。
【0108】
「"0123456789"」文字0〜9を順に印刷する。
【0109】
「0x0a」改行する。
【0110】
「0x10 0x04 1」リアルタイムコマンド。現在の印刷装置104のステータスを要求する。
【0111】
これを順に、以下のように、ホストコンピュータ102からインターフェース装置101へ送信したとする。
【0112】
0x1b "t" 0 0x1b "R" 1 "0123456789" 0x0a 0x10 0x04 1
インターフェース装置101から印刷装置104へ順にこのデータを送信するが、印刷装置104が0x1b "t" 0 0x1b "R"を受信した段階で、印刷装置104の受信バッファが一杯になり、これ以上送信されても受信できない状態になったとすると、第2実施例では、ステップS410により、リアルタイムコマンド「0x10 0x04 1」が先に送信される。したがって、印刷装置104が受信するコマンド列は、以下のようになる。
【0113】
0x1b "t" 0 0x1b "R" 0x10 0x04 1 1 "0123456789" 0x0a
この場合、印刷装置104は、0x10 0x04 1を受信した時点で直ちにステータスをインターフェース装置101に送信する一方で、文字コードテーブル0番を選択した後、国際文字セットの16(=0x10)番を選択し、その後解釈できないデータ0x04 1 1をスキップしてから、文字0〜9を印刷し…のように動作する。これは、期待する動作と異なる。
【0114】
本実施例では、このような場合であっても正しくコマンドが解釈されるようなインターフェース装置を示す。本実施例では、上記のようなデータがホストコンピュータ102から送信された場合、印刷装置104は、以下のようなデータを受信するように、インターフェース装置101が機能する。
【0115】
0x1b "t" 0 0x1b "R" 1 0x10 0x04 1 "0123456789" 0x0a
図5は、本実施例のインターフェース装置で実行されるデータ送受処理の流れを示すフローチャートである。以下、本図を参照して説明する。
【0116】
本処理が起動されると、まず、ホストコンピュータから送信されたデータをホスト用インターフェース103が受信すべき状態にあるか否かを調べる(ステップS501)。ない場合(ステップS501;No)、待機してから(ステップS502)ステップS501に戻る。なお、ステップS502の待機中に、後述する1バイト送信処理が割り込みにより起動されることがある。この1バイト送信処理は、印刷装置104がデータを受信できる状態になる(受信バッファに空きができる)ことにより、起動される。待機中に、1バイト送信処理を繰り返し起動してもよい。
【0117】
一方、受信すべき状態である場合(ステップS501;Yes)、インターフェース装置101内のRAM 113に確保されたバッファ領域に空きがあるか調べる(ステップS504)。空きがない場合(ステップS504;No)、印刷装置104がデータを受信できる状態であるか否かを調べ(ステップS505)、受信できる状態でない場合(ステップS505;No)、その旨をホスト装置102に通知して(ステップS506)、待機し(ステップS507)、ステップS504に戻る。なお、ステップS507における待機中に後述する1バイト送信処理が割り込みにより起動されることがある。待機中に、1バイト送信処理を繰り返し起動してもよい。
【0118】
一方、受信できる状態である場合(ステップS505;Yes)、後述する1バイト送信処理を実行して(ステップS508)、ステップS504に戻る。
【0119】
一方、バッファ領域に空きがある場合(ステップS504;Yes)、ホスト用インターフェース103を介して当該データを受信する(ステップS509)。ついで、当該データの種類が、以下のいずれであるかを調べる(ステップS510)。
【0120】
・通常コマンドの最後のバイト。
・通常コマンドの最後以外のバイト。
・リアルタイムコマンドの先頭バイト。
【0121】
通常コマンドの最後以外のバイトである場合(ステップS510;通常最後以外)、バッファ領域に当該バイトを追加する(ステップS511)。さらに、RAM 113に、当該バッファ領域のそれぞれのバイトに対応付けられたビット列からなるフラグ領域をあらかじめ確保しておき、当該フラグ領域の対応するビットを0にクリアして(ステップS512)、ステップS501に戻る。
【0122】
一方、通常コマンドの最後のバイトである場合(ステップS510;通常最後)、バッファ領域に当該バイトを追加する(ステップS513)。さらに、RAM 113に、当該バッファ領域のそれぞれのバイトに対応付けられたビット列からなるフラグ領域をあらかじめ確保しておき、当該フラグ領域の対応するビットを1にセットして(ステップS514)、ステップS501に戻る。
【0123】
このような処理を行う場合、以下の第1行のようなデータ列がバッファ領域に蓄積されると、フラグ領域のビット列は、第2行のようになる。
【0124】
0x1b "t" 0 0x1b "R" 1 "0123456789" 0x0a
0 0 1 0 0 1 1111111111 1
このビットが1にセットされている場合は、当該ビットに対応するバイトが印刷装置104に送信された直後に、リアルタイムコマンドを移動・挿入して送信してもよいことを意味する。
【0125】
一方、リアルタイムコマンドの先頭バイトである場合(ステップS510;RTC先頭)、後述するリアルタイムコマンド送受処理を実行して(ステップS515)、ステップS501に戻る。
【0126】
図6は、本実施例における1バイト送信処理の制御の流れを示すフローチャートである。本処理は、上述の通り、インターフェース装置101のバッファ領域に空きがない場合や、印刷装置104の受信バッファに空きができた場合に起動される。
【0127】
まず、印刷装置104がデータを受信できるか否かを調べる(ステップS601)。受信できない場合(ステップS601;No)、リターンする。受信できる場合(ステップS601;Yes)、RAM 113のバッファ領域から1バイト取得して(ステップS602)、当該バイトを印刷装置用インターフェース105を介して印刷装置104に送信する(ステップS603)。これにより、バッファ領域の空きが1バイト増えることになる。
【0128】
ついで、当該バイトに対応するフラグ領域のビットの値を、RAM 113にあらかじめ用意された挿入可能フラグ領域に記憶する(ステップS604)。したがって、挿入可能フラグ領域には、ステップS603によって最後に送信したバイトが、コマンド列の最後のバイトであるか否かが記憶されることになる。
【0129】
記憶したら、本処理を終了して、リターンする。
【0130】
図7は、本実施例におけるリアルタイムコマンド送受処理の制御の流れを示すフローチャートである。
【0131】
まず、挿入可能フラグ領域の値を調べる(ステップS701)。値が1である場合、すなわち、リアルタイムコマンドを挿入してもよい場合(ステップS701;1)、リアルタイムコマンドのバイトを印刷装置104に送信する(ステップS702)。なお、リアルタイムコマンドは、印刷装置104の受信バッファが一杯の状態であっても、印刷装置104は対応する処理が実行できる。
【0132】
さらに、ステップS702にてリアルタイムコマンドの最後のバイトを送信したか否かを調べ(ステップS703)、送信ずみの場合(ステップS703;Yes)、本処理を終了してリターンする。
【0133】
一方、まだリアルタイムコマンドのデータ列の送信が完了していない場合(ステップS703;No)、ホストコンピュータから送信されたデータをホスト用インターフェース103が受信すべき状態にあるか否かを調べ(ステップS704)、ない場合(ステップS704;No)、待機してから(ステップS705)ステップS704に戻る。
【0134】
一方、受信すべき状態である場合(ステップS704;Yes)、当該バイトを受信し(ステップS706)、ステップS702に進む。
【0135】
ステップS702においては、繰り返しの最初ではステップS509において受信されたバイトが、以降の繰り返しではステップS702において受信されたバイトが、それぞれ送信される。
【0136】
一方、挿入可能フラグ領域の値が0である場合、すなわち、リアルタイムコマンドを挿入してはならない場合(ステップS701;0)、前述の1バイト送信処理を実行し(ステップS707)、ステップS701に戻る。
【0137】
(第4の実施形態)
本実施形態は、上記実施形態と同様に、指令データに通常コマンドとリアルタイムコマンドがある場合の、インターフェース装置の実施例である。本実施例では、上記実施形態と同様に、通常コマンドの途中にリアルタイムコマンドが挿入されてしまうことを防止することができる。
【0138】
(概要構成)
図8は、本実施形態におけるインターフェース装置と印刷装置との関係および機能構成を示す模式図である。
【0139】
インターフェース装置801は、上記実施形態と同様に印刷装置802の拡張スロットに挿入され、相互に接続される。
【0140】
インターフェース装置801は、一時的な記憶領域としてRAMを備えており、そのRAM内に、受信バッファ803、送信バッファ804、フラグ領域805を確保してある。フラグ領域805がセット(非0が記憶)されている場合、最後に受信された指令データがリアルタイムコマンドであったことを意味する。また、受信途中で、リアルタイムコマンドか否かがまだ判明していないときに、その受信途中の指令データ列を一時的に記憶する一時バッファ831も確保されている。
【0141】
一時バッファ831は、コマンドを受信途中の場合に、それまでに受信した指令データのバイト列を一時的に記憶するためのものである。
【0142】
ホスト装置806から指令データが送信(811)されると、その指令データは、受信バッファ803に記憶される。また、これに合わせて、フラグ領域805の値もセット/クリアされる。受信バッファ803に記憶された指令データは、送信バッファ804や一時バッファ831に適宜コピー(821)され、印刷装置802に送信(813)される。
【0143】
一方、印刷装置802からは、ビジー/レディ信号がインターフェース装置801に送信(813)され、インターフェース装置801は、この信号を見ながら各種処理を行う。また、インターフェース装置801は、ホスト装置806へビジー/レディ信号を送信(812)する。
【0144】
(1バイト受信処理)
図9は、ホスト装置806からインターフェース装置801への指令データが送信(811)の際に起動される1バイト受信処理の流れを示すフローチャートである。本処理は、指令データがインターフェース装置801へ到着した際に発生する受信割り込みによって起動される。
【0145】
まず、インターフェース装置801は、ホスト側インターフェース(図示せず)から指令データを1バイト読み出す(ステップS901)。
【0146】
次に、読み出した指令データを受信バッファに格納する(ステップS902)。受信バッファへの格納は、FIFO(First In First Out)方式で追加することにより行う。したがって、受信バッファ803は、所定の最大長(バッファ長さ)のキューにより実現でき、たとえば、リングバッファによりこれを構成する。
【0147】
次に、インターフェース装置801は、受信バッファ803がフルになったか否かを調べる(ステップS903)。受信バッファ803がフルである場合(ステップS903;Yes)、ビジー信号をホスト装置806へ出力して(ステップS904)、本処理を終了する。
【0148】
一方、フルでない場合(ステップS903;No)、本処理を直ちに終了する。この場合は、したがって、ビジー/レディ信号の送信(812)状態は、従前の状態をそのまま維持することになる。
【0149】
(データ処理)
図10は、受信バッファ803から送信バッファ804へ指令データをコピー(821)する際に、起動される1バイト読出処理の流れを示すフローチャートであり、図11は、当該1バイト読出処理を用いて指令データのコピー等の処理を行うデータ処理の流れを示すフローチャートである。
【0150】
本実施形態では、本データ処理によって、本1バイト読出処理が呼び出される。
【0151】
以下、図10を参照して、1バイト読出処理について説明する。1バイト読出処理が起動されると、まず、インターフェース装置801は、受信バッファ803の先頭から1バイトを読み出して、インターフェース装置801が備えるCPU(図示せず)のレジスタ等の記憶する(ステップS1001)。前述の通り、受信バッファ803はFIFO形式のキューとして構成されているため、先頭の1バイトは、受信バッファ803に記憶されている指令データのうち、もっとも以前に受信されたものである。
【0152】
次に、インターフェース装置801は、ステップS1001の後に、受信バッファ803がフルか否かを調べる(ステップS1002)。受信バッファ803がフルでない場合(ステップS1002;No)、レディ信号をホスト装置806へ出力して(ステップS1003)、本処理を終了する。
【0153】
一方、フルである場合(ステップS1002;Yes)、本処理を直ちに終了する。この場合は、したがって、ビジー/レディ信号の送信(812)状態は、従前の状態をそのまま維持することになる。
【0154】
以下、図11を参照して、データ処理について説明する。なお、本データ処理は、受信バッファ803にデータが格納されている場合に起動される。そのタイミングとしては、所定の時間間隔ごとにタイマ割り込み等で起動する形態、他に行うべき処理がない場合に起動する形態、受信バッファ803がフルになった場合に起動する形態、および、これらの組み合わせを採用することができ、目的と用途に応じて適当なタイミングを選択することができる。
【0155】
データ処理が起動されると、まず、前述の1バイト読出処理を起動する(ステップS1101)。次に、1バイト読出処理(ステップS1101)によってレジスタ等に読み出された指令データが、リアルタイムコマンドの先頭バイトであるか否かを調べる(ステップS1102)。
【0156】
上記実施形態と同様のコマンド体系を採用した場合、リアルタイムコマンドの先頭バイトは0x10であるが、この他のリアルタイムコマンドを採用することもできる。また、0x10が、通常コマンドにおいて送信されるデータの一部であることもある。
【0157】
リアルタイムコマンドの先頭でない場合(ステップS1102;No)、当該1バイトを送信バッファ804に追加して(ステップS1103)、本処理を終了する。送信バッファ804も受信バッファ803と同様に、FIFO形式のキューとして構成される。
【0158】
一方、リアルタイムコマンドの先頭である場合(ステップS1102;Yes)、当該1バイトを一時バッファ831に追加する(ステップS1104)。
【0159】
さらに1バイト読出処理を呼び出して(ステップS1105)、その読み出された指令データ1バイトにより、コマンドが終わったか否かを調べる(ステップS1106)。終わっていない場合(ステップS1106;No)、ステップS1103に戻る。
【0160】
一方、コマンドが終わっている場合(ステップS1106;Yes)これまでに一時バッファ831に記憶された指令データ(列)と、ステップS1104において読み出された指令データとで構成される指令データ列が、リアルタイムコマンドを構成するものであるか否かを調べる(ステップS1107)。
【0161】
リアルタイムコマンドを構成しない場合(ステップS1107;No)、一時バッファ831に記憶された指令データ(列)と、最後に読み出した1バイトの指令データとを、順に送信バッファにコピーし(ステップS1108)、一時バッファ831をクリアして(ステップS1109)、本処理を終了する。
【0162】
一方、リアルタイムコマンドを構成する場合(ステップS1107;Yes)、読み出した1バイトを一時バッファ831に追加して(ステップS1110)、フラグ領域805をセットし(ステップS1111)、本処理を終了する。
【0163】
(送信処理)
図12は、インターフェース装置801が送信バッファ804に記憶された指令データ等を印刷装置802に送信(812)する送信処理の制御の流れを示すフローチャートである。なお、本送信処理は、送信バッファ804もしくは一時バッファ831にデータが格納されている場合に起動される。そのタイミングとしては、所定の時間間隔ごとにタイマ割り込み等で起動する形態、他に行うべき処理がない場合に起動する形態、送信バッファ804がフルになった場合に起動する形態、フラグ領域805がセットされていることを検知した場合に起動する形態、および、これらの組み合わせを採用することができ、目的と用途に応じて適当なタイミングを選択することができる。
【0164】
以下、本図を参照して説明する。
【0165】
送信処理が起動されると、インターフェース装置801は、フラグ領域805がセットされているか否かを調べる(ステップS1201)。セットされている場合(ステップS1201;Yes)、一時バッファ831に記憶されたリアルタイムコマンドの指令データ列を印刷装置802に送信し(ステップS1202)、フラグ領域805と一時バッファ831をクリアして(ステップS1203)、本処理を終了する。
【0166】
なお、この送信の際には、印刷装置802のビジー/レディ状態の確認は行わない。リアルタイムコマンドは、印刷装置802がビジー状態であっても送信すべきコマンドだからである。
【0167】
一方、セットされていない場合(ステップS1201;No)、送信バッファ804から1バイトを読み出し(ステップS1204)、その1バイトが複数バイトからなる通常コマンドの先頭であるか否かを調べる(ステップS1205)。
【0168】
先頭でない場合や1バイトの通常コマンドである場合(ステップS1205;No)、読み出した1バイトを送信して(ステップS1206)、本処理を終了する。
【0169】
一方、複数バイトからなる通常コマンドの先頭である場合(ステップS1205;Yes)は、当該1バイトを一時バッファ831に追加して(ステップS1207)、送信バッファ804から1バイトを読み出し(ステップS1208)、当該1バイトを一時バッファ831に追加して(ステップS1209)、当該1バイトにより、コマンドが終了したか否かを調べる(ステップS1210)。終了していない場合(ステップS1209;No)、ステップS1208に戻る。一方、終了している場合(ステップS1210;Yes)、一時バッファ831に記憶された通常コマンドの指令データ列を印刷装置802に送信して(ステップS1211)、一時バッファ831をクリアして(ステップS1212)、本処理を終了する。
【0170】
なお、ステップS1206およびステップS1211における送信では、印刷装置802からのビジー/レディ信号を調べ、ビジーである場合には、印刷装置802がレディ状態になるまで待機する。
【0171】
このような処理を行うことにより、リアルタイムコマンドがインターフェース装置801にて解析され、送信すべき場合にはフラグ領域805がセットされるため、他に送信バッファ804に指令データが記憶されていても、それに優先してリアルタイムコマンドが送信される。
【0172】
また、通常コマンドのコマンド列を送信している途中では、フラグ領域805のチェックは行わないため、リアルタイムコマンドが他のコマンドの途中に混ざってしまうことはなくなる。
【0173】
なお、上記の実施例の処理の手順は実施形態の典型例を示したものであり、これを変形してこれと同等の処理をインターフェース装置で実行することができるが、そのような実施形態も本発明の範囲に含まれる。
【0174】
【発明の効果】
以上説明したように、本発明によれば、以下の効果を奏する。
【0175】
印刷装置の拡張スロットに装着され、ホストコンピュータと接続され、印刷装置のバッファリング状況を監視しながらホストコンピュータが送信したデータを受信し、これを適切にバッファリングして印刷装置に送信するのに好適な印刷装置用インターフェース装置とその制御方法を提供することができる。
【0176】
また、インターフェース装置でもバッファリングができない場合には、その旨をホストコンピュータに通知するのに好適な印刷装置用インターフェース装置とその制御方法を提供することができる。
【0177】
これにより、ホストコンピュータにおけるデータの送信待機時間を短縮することができ、印刷処理の高速化を図るのに好適な印刷装置用インターフェース装置とその制御方法を提供することができる。
【0178】
また、安価なコネクタを利用して印刷装置と通信をすれば、コストの低減を図るのに好適な印刷装置用インターフェース装置とその制御方法を提供することができる。
【0179】
また、印刷装置の内部にインターフェース装置を装着することにより、オフィスのスペースを節約するとともに美観を向上するのに好適な印刷装置用インターフェース装置とその制御方法を提供することができる。
【0180】
また、印刷装置がリアルタイムコマンドなど、印刷装置に優先して転送すべき指令データに対応している場合には、これを印刷装置に確実に送信し、ホストコンピュータからの指令データの特性に応じてバッファ処理をするのに好適な印刷装置用インターフェース装置とその制御方法を提供することができる。
【0181】
さらに、プログラムを記録した情報記録媒体をソフトウェア商品として、インターフェース装置と独立して容易に配布したり販売したりすることができるようになる。本発明の情報記録媒体に記録されたプログラムをインターフェース装置で実行すれば、上記の発明に係るインターフェース装置およびインターフェース装置の制御方法が実現できる。
【図面の簡単な説明】
【図1】 本発明のインターフェース装置の実施形態の一例の概要を示すブロック構成図。
【図2】 本発明のインターフェース装置の概形を示す説明図。
【図3】 本発明のインターフェース装置のデータ送受処理の実施例を示すフローチャート。
【図4】 本発明の第2実施例のインターフェース装置のデータ送受処理の実施例を示すフローチャート。
【図5】 本発明の第3実施例のインターフェース装置のデータ送受処理の実施例を示すフローチャート。
【図6】 本発明の第3実施例のインターフェース装置のデータ送受処理の実施例を示すフローチャート。
【図7】 本発明の第3実施例のインターフェース装置のデータ送受処理の実施例を示すフローチャート。
【図8】 本発明の第4実施例のインターフェース装置等の概要構成を示す模式図。
【図9】 本発明の第4実施例の1バイト受信処理の実施例を示すフローチャート。
【図10】 本発明の第4実施例の1バイト読出処理の実施例を示すフローチャート。
【図11】 本発明の第4実施例のデータ処理の実施例を示すフローチャート。
【図12】 本発明の第4実施例の送信処理の実施例を示すフローチャート。
【符号の説明】
101 インターフェース装置
102 ホストコンピュータ
103 ホスト用インターフェース
104 印刷装置
105 印刷装置用インターフェース
106 CPU
108 ディップスイッチ
110 動作表示ランプ
112 ROM
113 RAM
120 バッファ領域
801 インターフェース装置
802 印刷装置
803 受信バッファ
804 送信バッファ
805 フラグ領域
806 ホスト装置
811 ホスト装置からの指令データの送信
812 インターフェース装置からのビジー/レディ信号の送信
813 インターフェース装置からの指令データの送信
814 印刷装置からのビジー/レディ信号の送信
821 バッファ間のコピー
831 一時バッファ
Claims (4)
- 以下を備えることを特徴とする、印刷装置の拡張スロットに装着可能なインターフェース装置。
(a)前記インターフェース装置に接続されるホストコンピュータが送信するデータを受信する受信部と、
(b)前記インターフェース装置が装着される印刷装置に前記データを送信する送信部と、
(c)前記印刷装置が前記データを受信できるか否かを検知する検知部と、
(d)前記印刷装置が前記データを受信できない旨を前記検知部が検知した場合でも、前記受信部により受信された前記データが所定の処理を直ちに行わせるリアルタイムコマンドであれば、前記データを前記送信部に送信させるリアルタイムコマンド送信制御部と、を備え、
前記リアルタイムコマンド送信制御部は、前記送信部がリアルタイムコマンド以外のデータを送信中にリアルタイムコマンドのデータを送信させるときは、前記リアルタイムコマンド以外のデータの送信が完了してから、前記送信部にリアルタイムコマンドのデータを送信させる。 - 前記リアルタイムコマンド送信制御部は、フラグ領域を備え、前記フラグ領域の状態に応じて、前記送信部にリアルタイムコマンドのデータを送信させるように構成されていることを特徴とする請求項1に記載のインターフェース装置。
- 以下のステップを備えることを特徴とする、印刷装置の拡張スロットに装着可能なインターフェース装置の制御方法。
(a)前記インターフェース装置に接続されるホストコンピュータが送信するデータを受信する受信ステップと、
(b)前記インターフェース装置が装着される印刷装置に前記データを送信する送信ステップと、
(c)前記印刷装置が前記データを受信できるか否かを検知する検知ステップと、
(d)前記検知ステップにおいて前記印刷装置が前記データを受信できない旨を検知した場合でも、前記受信ステップにおいて受信された前記データが所定の処理を直ちに行わせるリアルタイムコマンドであれば前記データを前記送信ステップにより送信させるリアルタイムコマンド送信制御ステップと、を備え、
前記リアルタイムコマンド送信制御ステップは、前記送信ステップがリアルタイムコマンド以外のデータを送信中にリアルタイムコマンドのデータを送信させるときは、前記リアルタイムコマンド以外のデータの送信が完了してから、前記送信ステップにリアルタイムコマンドのデータを送信させる。 - 前記リアルタイムコマンド送信制御ステップは、フラグ領域を備え、前記フラグ領域の状態に応じて、前記送信ステップにリアルタイムコマンドのデータを送信させることを特徴とする請求項3に記載のインターフェース装置の制御方法。
Priority Applications (7)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000009345A JP4441967B2 (ja) | 2000-01-18 | 2000-01-18 | インターフェース装置およびその制御方法 |
CA002298192A CA2298192C (en) | 1999-02-08 | 2000-02-07 | Interface device, control method for the same, and data storage medium for recording the control method |
KR1020000005590A KR100549978B1 (ko) | 1999-02-08 | 2000-02-07 | 인터페이스 장치, 그 제어 방법 및 정보 기록 매체 |
US09/500,133 US6768557B1 (en) | 1999-02-08 | 2000-02-08 | Interface device, control method for the same, and data storage medium for recording the control method |
EP00102166A EP1026599B1 (en) | 1999-02-08 | 2000-02-08 | Printer interface device, method of controlling it, and data storage medium |
CNB001023241A CN1134729C (zh) | 1999-02-08 | 2000-02-12 | 接口装置及其控制方法 |
HK01100808A HK1030070A1 (en) | 1999-02-08 | 2001-02-05 | Interface device and control method. |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000009345A JP4441967B2 (ja) | 2000-01-18 | 2000-01-18 | インターフェース装置およびその制御方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2001202322A JP2001202322A (ja) | 2001-07-27 |
JP4441967B2 true JP4441967B2 (ja) | 2010-03-31 |
Family
ID=18537510
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000009345A Expired - Fee Related JP4441967B2 (ja) | 1999-02-08 | 2000-01-18 | インターフェース装置およびその制御方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4441967B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4066383B2 (ja) | 2006-07-06 | 2008-03-26 | シチズンホールディングス株式会社 | 通信装置および通信制御方法、並びに当該通信装置を備えたプリンタ |
-
2000
- 2000-01-18 JP JP2000009345A patent/JP4441967B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2001202322A (ja) | 2001-07-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5627658A (en) | Automatic networked facsimile queuing system | |
KR100837584B1 (ko) | 시스템, 비트맵 데이터의 송신 제어 방법, 리얼 타임커맨드의 송신 제어 방법 | |
KR100549978B1 (ko) | 인터페이스 장치, 그 제어 방법 및 정보 기록 매체 | |
JPH04262419A (ja) | 周辺装置を共用するための切り換えシステム | |
JP2004005541A (ja) | データ転送装置、データ転送方法、プログラム及び記録媒体 | |
JP2003316712A (ja) | 画像処理装置及び通信制御方法 | |
JPS59100663A (ja) | 多目的フアクシミリ装置 | |
US20010043361A1 (en) | Printer detecting data precisely in response to change in data transmission speed | |
CN101231573B (zh) | 主机装置及其打印控制方法 | |
JP2000085211A (ja) | 印刷制御方法および印刷システム | |
JP4441967B2 (ja) | インターフェース装置およびその制御方法 | |
US7212303B2 (en) | Print control method for a multifunctional printer including a facsimile feature | |
JP3787535B2 (ja) | 画像処理装置及びその制御方法 | |
CN100474174C (zh) | 图像形成装置 | |
JP2001243026A (ja) | 画像形成装置、画像データ転送システム、画像データ転送方法および記憶媒体 | |
JP3846089B2 (ja) | インターフェース装置、その制御方法および情報記録媒体 | |
JP2001232870A (ja) | 印刷装置及び印刷方法 | |
JP2005349768A (ja) | 印刷装置及び印刷方法 | |
JP2003319111A (ja) | 通信機能付きプリント装置 | |
JPH08111737A (ja) | セキュア・ファクシミリ・システムおよびセキュア・ディジタル・データの同期送受信方法 | |
JP5004322B2 (ja) | データ転送制御方法,装置および画像形成装置 | |
EP0855641B1 (en) | Printer detecting data precisely in response to change in data transmission speed | |
JP2658931B2 (ja) | プリンタコントローラ | |
JPH09200298A (ja) | データ通信システム | |
JP2000151756A (ja) | ネットワークシステム及びデータ転送方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20061005 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090929 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20091126 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20091222 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20100104 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130122 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130122 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140122 Year of fee payment: 4 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
LAPS | Cancellation because of no payment of annual fees |