JP3758154B2 - マルチファンクションプリンタ - Google Patents
マルチファンクションプリンタ Download PDFInfo
- Publication number
- JP3758154B2 JP3758154B2 JP2001381409A JP2001381409A JP3758154B2 JP 3758154 B2 JP3758154 B2 JP 3758154B2 JP 2001381409 A JP2001381409 A JP 2001381409A JP 2001381409 A JP2001381409 A JP 2001381409A JP 3758154 B2 JP3758154 B2 JP 3758154B2
- Authority
- JP
- Japan
- Prior art keywords
- printer
- unit
- data
- task
- reset
- 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
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/00127—Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture
- H04N1/00204—Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a digital computer or a digital computer system, e.g. an internet server
- H04N1/00236—Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a digital computer or a digital computer system, e.g. an internet server using an image reading or reproducing device, e.g. a facsimile reader or printer, as a local input to or local output from a computer
- H04N1/00238—Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a digital computer or a digital computer system, e.g. an internet server using an image reading or reproducing device, e.g. a facsimile reader or printer, as a local input to or local output from a computer using an image reproducing device as a local output from a computer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/00127—Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture
- H04N1/00204—Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a digital computer or a digital computer system, e.g. an internet server
- H04N1/00236—Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a digital computer or a digital computer system, e.g. an internet server using an image reading or reproducing device, e.g. a facsimile reader or printer, as a local input to or local output from a computer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/00127—Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture
- H04N1/00204—Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a digital computer or a digital computer system, e.g. an internet server
- H04N1/00236—Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a digital computer or a digital computer system, e.g. an internet server using an image reading or reproducing device, e.g. a facsimile reader or printer, as a local input to or local output from a computer
- H04N1/00241—Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a digital computer or a digital computer system, e.g. an internet server using an image reading or reproducing device, e.g. a facsimile reader or printer, as a local input to or local output from a computer using an image reading device as a local input to a computer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/00912—Arrangements for controlling a still picture apparatus or components thereof not otherwise provided for
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/00912—Arrangements for controlling a still picture apparatus or components thereof not otherwise provided for
- H04N1/0096—Simultaneous or quasi-simultaneous functioning of a plurality of operations
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N2201/00—Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
- H04N2201/0008—Connection or combination of a still picture apparatus with another apparatus
- H04N2201/0074—Arrangements for the control of a still picture apparatus by the connected apparatus
- H04N2201/0075—Arrangements for the control of a still picture apparatus by the connected apparatus by a user operated remote control device, e.g. receiving instructions from a user via a computer terminal or mobile telephone handset
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N2201/00—Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
- H04N2201/0077—Types of the still picture apparatus
- H04N2201/0081—Image reader
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N2201/00—Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
- H04N2201/0077—Types of the still picture apparatus
- H04N2201/0082—Image hardcopy reproducer
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Accessory Devices And Overall Control Thereof (AREA)
- Facsimiles In General (AREA)
Description
【発明の属する技術分野】
本発明は、スキャナ部とプリンタ部とを有するマルチファンクションプリンタに関し、特に、スキャナ部とプリンタ部とが独立に動作可能なマルチファンクションプリンタに関する。
【0002】
【従来の技術】
スキャナ部とプリンタ部とが一体化されて、1つの筐体に格納されたマルチファンクションプリンタが普及してきている。このようなマルチファンクションプリンタにおいては、1台で、スキャナとしての役割と、プリンタとしての役割と、コピー機としての役割とを、果たすことができる。この場合、カラー印刷やカラーコピーを可能にするため、プリンタ部としては、いわゆるカラーインクジェットプリンタが用いられている場合が多い。
【0003】
このようなマルチファンクションプリンタにおいて、ユーザが何らかの理由により、プリンタ部で印刷中のジョブをキャンセルしたい場合がある。この場合、ユーザは、マルチファンクションプリンタに接続されたコンピュータから、リセットコマンドを送信し、マルチファンクションプリンタでは、このリセットコマンドに基づいて、印刷中のジョブのキャンセルを行う。
【0004】
【発明が解決しようとする課題】
しかしながら、従来のマルチファンクションプリンタにおいては、このキャンセルにあたって、印刷を実行するために動作している各種のタスクを初期状態に戻すために、リブートの処理を実行していた。すなわち、マルチファンクションプリンタ上の各種タスクは、リアルタイムOS(Operating System)上で動作しているため、このリアルタイムOSそのものをリブートすることにより、マルチファンクションプリンタを初期化して、印刷中のジョブをキャンセルしていた。
【0005】
しかし、スキャナ部が、プリンタ部と独立して動作可能なマルチファンクションプリンタもある。このようなマルチファンクションプリンタにおいては、プリンタ部がコンピュータから受信した印刷データの印刷をしつつ、これと並行して、スキャナ部が原稿等のスキャン動作を行うことが可能になる。このように並行動作している最中に、リアルタイムOSそのものをリブートしてしまうと、本来はユーザがリセットするつもりのないスキャナ部までもが、リセットされてしまう。
【0006】
しかも、ユーザが再度スキャンをやり直そうとして、コマンドをコンピュータからマルチファンクションプリンタに送信すると、リアルタイムOSがリブートして立ち上がり直されているので、通信エラーを起こしてしまう場合も生じてしまう。この場合、ユーザは、再度、コンピュータのスキャナ用のドライバを立ち上げ直して、通信エラーを解消しなければならない。
【0007】
そこで本発明は、前記課題に鑑みてなされたものであり、プリンタ部とスキャナ部とを有するマルチファンクションプリンタにおいて、プリンタ部で行われている印刷動作のみを、キャンセルすることができるようにすることを目的とする。
【0008】
【課題を解決するための手段】
上記課題を解決するため、本発明に係るマルチファンクションプリンタは、
スキャナ部とプリンタ部とを有するマルチファンクションプリンタであって、
コンピュータから、前記プリンタ部をリセットするプリンタ部リセットコマンドを受信する、受信手段と、
前記受信手段が前記プリンタ部リセットコマンドを受信した場合に、前記スキャナ部が動作中であっても、前記プリンタ部のみをリセットする、リセット手段と、
を備えるとともに、
前記リセット手段は、少なくとも、
前記プリンタ部リセットコマンドを受信した場合には、コンピュータから送信された印刷データを格納する入力バッファに、印刷データの解釈上は無意味なデータと解釈されるダミーデータを印刷データとして書き込む、第1タスクと、
前記入力バッファに格納されている前記印刷データを読み出して、イメージデータに展開する、第2タスクとを、
中央処理装置で実行することにより実現される、ことを特徴とする。
【0009】
これにより、ユーザは、コンピュータからプリンタ部リセットコマンドを送信することにより、スキャナ部とプリンタ部とが並行して動作している場合にも、プリンタ部のみをリセットすることができるようになる。また、このように、入力バッファにダミーデータを格納しておくことにより、入力バッファから印刷データを読み出してイメージデータに展開する第2タスクは、どのような処理をしていたとしても、いずれ、その展開処理が終わることになる。
【0010】
さらにこの場合、前記中央処理装置は前記マルチファンクションプリンタに1つだけ設けられているようにしてもよい。
【0012】
さらに、前記リセット手段は、前記中央処理装置で実行されるタスクとして、前記プリンタ部リセットコマンドを受信した場合に、前記プリンタ部がリセット処理中であることを示すリセット中識別情報をセットする、第3タスクを備えるようにしてもよい。これにより、このリセット中識別情報をチェックすることにより、各タスクがその時点でプリンタ部がリセット処理中であることを識別できるようになる。
【0013】
また、前記第2タスクは、最も上位のメインループ処理と、このメインループ処理から階層的に派生する下位のループ処理とを有しており、前記下位のループ処理は、前記リセット中識別情報がセットされている場合には、その処理を抜けて上位のループ処理に戻るよう構成してもよい。これにより、プリンタ部がリセット処理中である場合には、第2タスクに含まれている下位のループ処理は、順次、その処理を抜けて上位のループ処理に移行し、やがて、最も上位のメインループ処理に戻ることができる。
【0014】
さらに、前記第2タスクでは、その時点のモードがキャラクタデータを印刷するキャラクタモードである場合には、前記ダミーデータが所定回数以上連続したかどうかを判断する連続回数判断処理を行い、その時点のモードがグラフィックデータを印刷するグラフィックモードである場合には、この連続回数判断処理を行わないようにしてもよい。これにより、ダミーデータと同じ印刷データが出現しやすいキャラクタモードにおけるスループットの低下を抑止することができる。
【0015】
一方、本発明に係るマルチファンクションプリンタは、受信した印刷データを展開するデータ展開処理手段であって、前記リセット手段が前記プリンタ部リセットコマンドを受信した場合には、印刷データの展開処理を途中終了する、データ展開処理手段と、前記データ展開処理手段により起動される、下位の処理手段であって、起動された後に所定時間経過した場合は、その処理が終了していない場合であっても、前記データ展開処理手段に戻る、下位の処理手段と、をさらに備えるようにしてもよい。このようにすれば、上述したようなダミーデータの書き込みを行わずとも、プリンタ部のみをリセットすることができるようになる。
【0016】
さらに、本発明に係るマルチファンクションプリンタは、前記データ展開処理手段の印刷データの展開処理が途中終了した場合に、プリントエンジンを初期状態に戻すプリントエンジン初期化手段を、備えるようにしてもよい。またこの場合、前記プリントエンジン初期化手段がプリントエンジンを初期状態に戻した後に、前記データ展開手段の設定状態を初期状態に戻すようにしてもよい。
【0017】
なお、本発明は上述したようなマルチファンクションプリンタを実現するための制御方法としてとらえることもでき、また、そのためのプログラム及びそのプログラムが記録された記録媒体としてとらえることもできる。
【0018】
【発明の実施の形態】
〔第1実施形態〕
本発明は、プリンタ部だけをリセットするプリンタ部リセットコマンドを受信したことを、必要なタスクに通知するとともに、印刷処理に関する各種タスクがその時点で行っている処理から抜け出せるように、印刷データを格納する入力バッファに、印刷データの解釈上は意味のないダミーデータを連続して書き込むようにしたものである。そして、これにより、印刷処理に関する各種の複雑なタスクが、その時点で行っている処理から自ら抜け出して、プリンタ部のみをリセットすることができるようにしたものである。以下、本発明に係る一実施形態を詳細に説明する。
【0019】
まず、図1に基づいて、本実施形態に係るマルチファンクションプリンタ10の内部構成を説明する。この図1は、スキャナ部とプリンタ部とが一体化されたマルチファンクションプリンタ10の内部構成を示すブロック図である。
【0020】
図1に示すように、マルチファンクションプリンタ10は、RAM(Random Access Memory)12と、ROM(Read Only Memory)14と、CPU(Central Processing Unit:中央処理装置)16と、スキャナスキャナASIC(Application Specific IC)18と、プリンタASIC20とを備えており、これらは内部バスを介して、相互に接続されている。このことから分かるように、本実施形態に係るマルチファンクションプリンタ10においては、CPUは1つだけ設けられている。
【0021】
スキャナASIC18には、実際のスキャン動作を行うスキャナ機構部22が接続されている。また、プリンタASIC20には、実際に印刷動作を行うプリントエンジン24が接続されている。
【0022】
さらに、マルチファンクションプリンタ10は、USBケーブルを介してコンピュータに接続されるUSB(Universal Serial Bus)ポート26を備えている。このUSBポート26はUSBハブ28に接続されており、USBハブ28はスキャナASIC18とプリンタASIC20とに接続されている。したがって、コンピュータから送信されたデータやコマンドは、USBハブ28を介して、スキャナASIC18とプリンタASIC20の双方に入力される。
【0023】
例えば、コンピュータからマルチファンクションプリンタ10に送信された印刷データは、プリンタASIC20で受信され、RAM12に形成された入力バッファに格納される。入力バッファに格納された印刷データは、順次、イメージデータに展開されて、プリンタASIC20を介して、プリントエンジン24で印刷される。本実施形態に係るプリントエンジン24は、カラーのインクジェットヘッドを有しており、このヘッドをキャリッジに搭載して主走査方向に交互に移動することにより、カラー印刷が可能になっている。
【0024】
一方、スキャナ機構部10は、光学的に原稿を読み取るラインイメージセンサを有している。このラインイメージセンサは、キャリッジに搭載されており、キャリッジを原稿の一端側から他端側まで移動させることにより、原稿全体を読み取ることが可能である。この読み取り動作は、スキャナASIC12が制御しており、読み取ったスキャンデータは、RAM12に形成されたスキャナバッファに格納される。
【0025】
本実施形態に係るマルチファンクションプリンタ10においては、スキャナ部を構成するスキャナ機構部22におけるスキャン動作と、プリンタ部を構成するプリントエンジン24における印刷動作とが、並行して行えるようになっている。例えば、スキャナ機構部22で原稿のスキャン動作をしながら、プリントエンジン24でコンピュータから送信されてきている印刷データの印刷を、順次、行うことが可能である。また、本実施形態に係るマルチファンクションプリンタ10においては、スキャナ部とプリンタ部とが並行して動作している状態で、プリンタ部のみをリセット(印刷ジョブのキャンセル)することが可能である。
【0026】
このプリンタ部のみをリセットする際の全体的な処理の流れを、図2に基づいて説明する。この図2は、プリンタ部をリセットし、スキャナ部の動作は継続させるためのプリンタ部リセットコマンドを、コンピュータから受信した場合のマルチファンクションプリンタ10の処理を説明するタイミングチャートである。
【0027】
図2に示すように、本実施形態に係るマルチファンクションプリンタ10は、インターフェース制御タスクT10と、制御コマンド解釈タスクT20と、メインタスクT30と、ジョブコントロールタスクT40とを、備えている。なお、これ以外のタスクも、マルチファンクションプリンタ10は備えているが、ここでは、本実施形態に関係のあるタスクのみを示している。また、これらのタスクは、このマルチファンクションプリンタ10の備えるリアルタイムOS上で管理されており、CPU16で実行される。
【0028】
まず、ユーザが印刷中のジョブをキャンセルするために、コンピュータから、プリンタ部リセットコマンドを、マルチファンクションプリンタ10に送信する。このプリンタ部リセットコマンドは、インターフェース制御タスクT10により受信される。インターフェース制御タスクT10は、受信したコマンドが制御系のコマンドであるか、印刷データ等であるのかを判断し、この例では制御系のコマンドであるので、このプリンタ部リセットコマンドの解釈を要求すべく、これを制御コマンド解釈タスクT20に送信する。
【0029】
これを受信した制御コマンド解釈タスクT20が、これを解釈することにより、受信したコマンドがプリンタ部リセットコマンドであることが判明する。このため、制御コマンド解釈タスクT20は、インターフェース制御タスクT10にリプライを依頼し、インターフェース制御タスクT10はこれに基づいてリプライをコンピュータに返信する。また、制御コマンド解釈タスクT20は、リセットコマンド受信メッセージを、ジョブコントロールタスクT40に送信する。
【0030】
リセットコマンド受信メッセージを受け取ったジョブコントロールタスクT40は、リセット中フラグRSFをセットするとともに、リセット処理移行要求を、インターフェース制御タスクT10へ送信する。そして、ジョブコントロールタスクT40は、それ以降の印刷、紙送り要求などのジョブを、徹底的に読み捨てる。但し、応答が必要なメッセージについては、とりあえず必要な返信のみ行っておく。
【0031】
このリセット処理移行要求を受け取ったインターフェース制御タスクT10は、印刷データを格納しておく入力バッファの全領域に16進数の「00」である0x00をダミーデータとして書き込み、受信データ管理タスクに、データが到着した旨を通知する。
【0032】
プリンタ部が印刷中の場合、メインタスクT30では、様々なループ処理を行っているが、印刷データの先頭にはデータ量を示す所定のコマンドが付加されており、受信データ管理タスクはコマンドに付加されたデータ量を受信するまでは待機しつづける。この待機状態を終了させるためには、コマンドに付加されたデータ量を少なくとも受信する必要がある。そこで、本実施形態においては、コマンドに付加されたデータ量を少なくとも満たすデータ量の0x00、つまり、コマンドとして通常存在しない無意味なNULLデータを書き込むことにより、この待機状態を終了させる。これにより、他のコマンドと混同することなく、リセット処理が可能になる。
【0033】
メインタスクで取得すべき印刷データが、入力バッファになくなった場合は、受信データ管理タスク(図示省略)を経由して、印刷データ獲得要求がインターフェース制御タスクT10に発行される。この場合も、インターフェース制御タスクT10は、0x00のダミーの印刷データを入力バッファに書き込み、受信データ管理タスクに、データが到着した旨を通知する。
【0034】
このように、メインタスクT30は、NULLデータのみを取得することになるので、いずれ下位のループ処理を抜けて、メインタスクT30の最上位のループ処理に戻ってくることができる。最上位のループ処理に戻った場合には、メインタスクT30は、ジョブコントロールタスクT40に対して、リセット処理終了確認通知を送信し、メインタスクT30が最上位のループ処理に戻ったことを通知する。
【0035】
リセット処理終了確認通知を受け取ったジョブコントロールタスクT40は、リセット中フラグRSFをリセットし、印刷や紙送り要求などのジョブの読み捨てを中止する。また、リセット処理解除要求を、インターフェース制御タスクT10へ送信する。これにより、インターフェース制御タスクT10は、リセット処理モードから、通常の印刷データを受信するモードに戻る。一方、ジョブコントロールタスクT40は、メインタスクT30へ、リセット処理終了確認通知に対する返信を行う。この返信がメインタスクT30に戻ってきた場合、メインタスクT30は、必要な設定状態を初期状態に戻す。これにより、プリンタ部のみのリセットが行われたことになる。
【0036】
以上、マルチファンクションプリンタ10がプリンタ部リセットコマンドを受信した場合の処理を概略的に説明したが、次に、上述した各タスク毎にその詳細な処理内容を説明する。
【0037】
図3は、上述したインターフェース制御タスクT10で行われるインターフェース制御処理を説明するフローチャートである。本実施形態においては、このインターフェース制御処理は、ROM14に格納されているインターフェース制御プログラムを、リアルタイムOS上でCPU16が実行することにより実現される。
【0038】
図3に示すように、インターフェース制御タスクT10は、まず、何からのメッセージを受信したかどうかを判断する(ステップS10)。何らメッセージを受信していない場合(ステップS10:No)には、このステップS10の処理を繰り返して待機する。
【0039】
何らかのメッセージを受信した場合(ステップS10:Yes)には、そのメッセージが、ジョブコントロールタスクT40から送信されたリセット処理移行要求であるかどうかを判断する(ステップS11)。受信したメッセージがリセット処理移行要求である場合(ステップS11:Yes)には、インターフェース制御タスクT10は、入力バッファの全領域に0x00を書き込む(ステップS12)。
【0040】
次に、インターフェース制御タスクT10は、メインタスクT30に、入力バッファに受信データを格納した旨を通知する(ステップS13)。上述したように、この通知は、受信データ管理タスクを介して、メインタスクT30に送信される。
【0041】
次に、インターフェース制御タスクT10は、リセット処理中フラグWSFをセットする(ステップS14)。このリセット処理中フラグWSFは、インターフェース制御タスクT10が、現在、プリンタ部がリセット処理モードにあるか、通常の印刷データを受信するモードにあるのかを、区別するためのフラグである。そして、インターフェース制御タスクT10は、上述したステップS10に戻る。
【0042】
一方、上述したステップS11で、受信したメッセージがリセット処理移行要求でないと判断した場合(ステップS11:No)には、受信したメッセージが、メインタスクT30からの印刷データの要求であるかどうかを判断する(ステップS15)。上述したように、このメッセージは、メインタスクT30から、受信データ管理タスクを介して、受信される。
【0043】
受信したメッセージが印刷データの要求である場合(ステップS15:Yes)には、インターフェース制御タスクT10は、リセット処理中フラグWSFをチェックして、現在、リセット処理中であるかどうかを判断する(ステップS16)。リセット処理中でない場合(ステップS16:No)には、メインタスクT30が印刷データの受信待ちである旨をセットして(ステップS17)、上述したステップS10に戻る。
【0044】
一方、ステップS16で、現在、リセット処理中であると判断した場合(ステップS16:Yes)には、入力バッファに0x00を書き込むべく、ステップS12からの処理を実行する。
【0045】
これに対して、上述したステップS15で、受信したメッセージが、メインタスクT30からの印刷データの要求でないと判断した場合(ステップS15:No)には、受信したメッセージが、ジョブコントロールタスクT40からのリセット処理解除要求であるかどうかを判断する(ステップS18)。受信したメッセージが、リセット処理解除要求である場合(ステップS18:Yes)には、インターフェース制御タスクT10は、入力バッファへの0x00書き込みを停止する(ステップS19)。続いて、リセット処理中フラグWSFをリセットして(ステップS20)、上述したステップS10に戻る。
【0046】
一方、上述したステップS18で、受信したメッセージがリセット処理解除要求でないと判断した場合(ステップS18:No)には、該当するメッセージについて必要な処理を実行する(ステップS21)。例えば、上述したように、コンピュータからのプリンタ部リセットコマンドなどの制御系のコマンドを受信した場合には、これを制御コマンド解釈タスクT20へ転送する。また、例えば、制御コマンド解釈タスクT20からプリンタ部リセットコマンドに対するリプライの要求を受信した場合には、そのリプライをコンピュータへ転送する。そして、上述したステップS10に戻る。
【0047】
次に、図4に基づいて、制御コマンド解釈タスクT20について説明する。図4は、上述した制御コマンド解釈タスクT20で行われる制御コマンド解釈処理を説明するフローチャートである。本実施形態においては、この制御コマンド解釈処理は、ROM14に格納されている制御コマンド解釈プログラムを、リアルタイムOS上でCPU16が実行することにより実現される。
【0048】
図4に示すように、制御コマンド解釈タスクT20は、まず、何からのメッセージを受信したかどうかを判断する(ステップS30)。何らメッセージを受信していない場合(ステップS30:No)には、このステップS30の処理を繰り返して待機する。
【0049】
何らかのメッセージを受信した場合(ステップS30:Yes)には、そのメッセージが、インターフェース制御タスクT10を介して、コンピュータから送信されたプリンタ部リセットコマンドであるかどうかを判断する(ステップS31)。受信したメッセージがプリンタ部リセットコマンドである場合(ステップS31:Yes)には、コンピュータに対する応答データ列を作成し(ステップS32)、これをインターフェース制御タスクT10に送信して、リプライを依頼する(ステップS33)。
【0050】
次に、制御コマンド解釈タスクT20は、ジョブコントロールタスクT40へ、リセットコマンド受信をメッセージとして送信する(ステップS34)。そして、上述したステップS30に戻る。
【0051】
一方、上述したステップS31で、受信したメッセージがプリンタ部リセットコマンドでないと判断した場合(ステップS31:No)には、該当するメッセージについて必要な解釈を行い、必要な処理を実行する(ステップS35)。例えば、紙送り要求のメッセージである場合は、その解釈を行い、必要なメッセージをジョブコントロールタスクT40等へ送信する。そして、上述したステップS30の処理に戻る。
【0052】
次に、図5及び図6に基づいて、メインタスクT30について説明する。図5は、上述したメインタスクT30で行われるデータ展開制御処理を説明するフローチャートであり、本実施形態におけるメインループ処理を示している。図6は、このデータ展開制御処理から派生する下位のループ処理であるグラフィックマネージャ処理を説明するフローチャートである。本実施形態におけるメインタスクT30には、グラフィックマネージャ処理以外にも、数多くの下位のループ処理が存在するが、ここでは、グラフィックマネージャ処理を代表例として説明する。また、下位のループ処理から派生するさらに下位のループ処理も存在する。つまり、本実施形態においては、メインタスクT30のループ処理は階層的に構成されている。
【0053】
なお、図5のデータ展開制御処理はキャラクタ系の印刷データを処理するモードであり、図6のグラフィックマネージャ処理はグラフィック系の印刷データを処理するモードである。また、本実施形態においては、これらのデータ展開制御処理及びグラフィックマネージャ処理は、ROM14に格納されているデータ展開制御プログラム及びグラフィックマネージャプログラムを、リアルタイムOS上でCPU16が実行することにより実現される。
【0054】
図5に示すように、メインタスクT30は、まず、入力バッファにデータを受信したかどうかを判断する(ステップS40)。データを受信していない場合(ステップS40:No)には、このステップS40の処理を繰り返して待機する。
【0055】
入力バッファにデータを受信した場合(ステップS40:Yes)には、メインタスクT30は、入力バッファからデータを1バイト読み込む(ステップS41)。次に、この読み込んだデータが、印刷モード移行要求であるかどうかを判断する(ステップS42)。本実施形態に係るマルチファンクションプリンタ10は、モードとして、キャラクタ系の印刷データを印刷するキャラクタモードと、グラフィック系の印刷データを印刷するグラフィックモードとを備えており、両者の間は印刷モード移行要求を受信することにより、切り替わるようになっている。
【0056】
データが印刷モード移行要求でない場合(ステップS42:No)には、取得したデータが0x00であるかどうかを判断する(ステップS43)。取得したデータが0x00でない場合(ステップS43:No)には、通常の印刷であると考えられるので、キャラクターモードの通常の処理を実行する(ステップS44)。そして、上述したステップS40の処理に戻る。
【0057】
一方、取得したデータが0x00である場合(ステップS43:Yes)には、この0x00が所定回数以上(例えば、1024回=1KB)、連続したかどうかを判断する(ステップS45)。ここで、所定回数以上、0x00が連続したかどうかのチェックをするのは、キャラクタモードで1バイト毎にリセット中フラグRSFの確認をすると、通常のキャラクタ印刷の際のスループットが低下してしまうので、これを回避するためである。換言すれば、キャラクタ印刷の場合、印刷データとして0x00を受信することも少なからずあり得るからである。但し、多少のスループットの低下を許容して、このような判断をしないようにしてもよい。
【0058】
したがって、0x00が所定回数以上連続していない場合(ステップS45:No)には、上述した通常のキャラクタモードの処理を行う(ステップS44)。一方、0x00が所定回数以上連続した場合(ステップS45:Yes)には、リセット中フラグRSFがセットされているかどうかを判断する(ステップS46)。このリセット中フラグRSFは、ジョブコントロールタスクT40が管理するフラグであるので、このステップS46の処理は、同一タスク内のフラグを確認する処理と比べて、処理時間が長くかかる。
【0059】
リセット中フラグRSFがセットされていない場合(ステップS46:No)には、上述したステップS40の処理に戻る。一方、リセット中フラグRSFがセットされている場合(ステップS46:Yes)には、ジョブコントロールタスクT40に、リセット処理終了確認通知を送信する(ステップS47)。なぜなら、本実施形態においては、このデータ展開制御処理が、最も上位のループ処理だからである。
【0060】
次に、メインタスクT30は、ジョブコントロールタスクT40からのリセット処理終了確認通知に対する返信を待つ(ステップS48)。返信があった場合には、このメインタスクT30内の各種の設定状態を、初期状態に設定する(ステップS49)。これにより、メインタスクT30のリセットが完了し、上述したステップS40の処理に戻ることになる。
【0061】
次に、図6に示すグラフィックマネージャ処理について説明する。このグラフィックマネージャ処理は、図5に示すステップS50のグラフィックモードに移行した場合のループである。したがって、このグラフィックマネージャ処理が終了すると、図5のステップS51の処理に戻ることになる。
【0062】
図6に示すように、メインタスクT30のグラフィックマネージャ処理では、まず、入力バッファに受信データがあるかどうかを判断する(ステップS60)。受信データがない場合(ステップS60:No)には、このステップS60の処理を繰り返して待機する。
【0063】
受信データがある場合(ステップS60:Yes)には、入力バッファから1バイトのデータを読み込む(ステップS61)。次に、メインタスクT30は、この取得したデータが、0x00であるかどうかを判断する(ステップS62)。取得したデータが、0x00でない場合(ステップS62:No)には、通常のグラフィックモードの処理を行う(ステップS63)。そして、上述したステップS60に戻る。
【0064】
一方、ステップS62で、取得したデータが0x00である場合(ステップS62:Yes)には、ジョブコントロールタスクT40の管理するリセット中フラグRSFが、セットされているかどうかを判断する(ステップS64)。リセット中フラグRSFがセットされていない場合(ステップS64:No)には、上述したステップS60に戻る。
【0065】
一方、リセット中フラグRSFがセットされている場合(ステップS64:Yes)には、グラフィックマネージャ処理から、図5のデータ展開制御処理に戻る(ステップS65)。
【0066】
なお、このグラフィックマネージャ処理では、0x00が所定回数以上連続したかどうかの判断はしていない。これは、グラフィックモードで印刷データとして0x00を受信することは、極めて希であり、0x00を検出するごとにリセット中フラグRSFを確認しに行っても、特にスループットが低下するとは考えられないからである。但し、このような判断をするようにしてもよい。
【0067】
また、本実施形態においては、データ展開制御処理(メインループ処理)の下位のループ処理は、グラフィックマネージャ処理以下にも、数多く存在するが、これらの下位のループ処理にも、ステップS62及びステップS64に相当する処理が、埋め込まれている。また、ループ処理のレベルがさらに深い階層構造になっている場合もある。この場合でも、各ループ処理にステップS62及びステップS64に相当する処理が埋め込まれている。但し、この場合、ステップS65で戻るべきループ処理は、1つだけ上位のループ処理である。したがって、取得したデータが0x00であり、且つ、リセット中フラグRSFがセットされている場合には、各ループ処理は、リセット処理中であると認識して、順次、上位のループ処理に戻ってきて、最終的に、最も上位のループ処理である図5のデータ展開制御処理に辿り着くことになる。
【0068】
次に、図7及び図8に基づいて、ジョブコントロールタスクT40について説明する。図7は、上述したジョブコントロールタスクT40で行われるジョブコントロール処理を説明するフローチャートであり、図8は、ジョブコントロール処理の下位のループ処理であるネゴシエーション処理を説明するフローチャートである。
【0069】
本実施形態においては、これらのジョブコントロール処理及びネゴシエーション処理は、ROM14に格納されているジョブコントロール処理プログラム及びネゴシエーションプログラムを、リアルタイムOS上でCPU16が実行することにより実現される。
【0070】
図7に示すように、ジョブコントロールタスクT40は、まず、何からのメッセージを受信したかどうかを判断する(ステップS70)。何らメッセージを受信していない場合(ステップS70:No)には、このステップS70の処理を繰り返して待機する。
【0071】
何らかのメッセージを受信した場合(ステップS70:Yes)には、リセット中フラグRSFがセットされているかどうかを判断する(ステップS71)。リセット中フラグRSFがセットされていない場合(ステップS71:No)には、受信したメッセージが、制御コマンド解釈タスクT20から送信されたリセットコマンド受信のメッセージであるかどうかを判断する(ステップS72)。
【0072】
受信したメッセージがリセットコマンド受信のメッセージでない場合(ステップS72:No)には、そのメッセージについて必要なジョブを実行し、そのコントロールを行う(ステップS73)。そして、上述したステップS70に戻る。
【0073】
一方、上述したステップS72で、受信したメッセージがリセットコマンド受信のメッセージである場合(ステップS72:Yes)には、ジョブコントロールタスクT40は、リセット中フラグRSFをセットする(ステップS74)。続いて、ジョブコントロールタスクT40は、インターフェース制御タスクT10へ、リセット処理移行要求を送信する(ステップS75)。そして、上述したステップS70に戻る。
【0074】
一方、上述したステップS71の処理で、リセット中フラグRSFがセットされていると判断した場合(ステップS71:Yes)には、受信したメッセージが、何らかの応答を必要としているメッセージであるかどうかを判断する(ステップS76)。応答が必要なメッセージでない場合(ステップS76:No)には、そのメッセージを読み捨てる(ステップS77)。メッセージを読み捨てることにより、ジョブが読み捨てられたことになる。そして、上述したステップS70の処理に戻る。
【0075】
一方、上述したステップS76で、受信したメッセージが応答の必要なメッセージである場合(ステップS76:Yes)には、ジョブコントロールタスクT40は、そのメッセージが、メインタスクT30からのリセット処理終了確認通知であるかどうかを判断する(ステップS78)。受信したメッセージが、リセット処理終了確認通知でない場合(ステップS78:No)には、メインタスクT30がまだ最上位のループ処理に戻ってきていないことになるので、とりあえず、受信したメッセージに対して必要な返事を送信しておく(ステップS79)。これは、メインタスクT30の下位のループ処理で、ジョブコントロールタスクT40からの返信待ちになっているものがある可能性があるので、このループ処理を終了させて上位のループ処理に戻すために、必要な返事のみは返信する必要があるからである。但し、ジョブコントロールタスクT40では、そのメッセージの内容は実行せずに、読み捨てる。そして、上述したステップS70の処理に戻る。
【0076】
一方、上述したステップS78で、受信したメッセージが、メインタスクT30からのリセット処理終了確認通知である場合(ステップS78:Yes)には、メインタスクT30が最上位のループに戻ってきたことになるので、リセット中フラグRSFをリセットする(ステップS80)。続いて、ネゴシエーション処理を行う(ステップS81)。なお、このネゴシエーション処理の詳しい内容は後述する、
次に、ジョブコントロールタスクT40は、インターフェース制御タスクT10に、リセット処理解除要求を送信する(ステップS82)。続いて、ジョブコントロールタスクT40は、メインタスクT30に、リセット処理終了確認通知の返事を送信する(ステップS83)。そして、上述したステップS70に戻る。
【0077】
次に、図8に基づいて、上述した図7のステップS81のネゴシエーション処理について詳しく説明する。
【0078】
図8に示すように、まず、ネゴシエーション処理では、プリントエンジン24が動作中であるかどうかを判断する(ステップS90)。プリントエンジン24が動作中である場合(ステップS90:Yes)には、このステップS90の処理を繰り返して、待機する。
【0079】
プリントエンジン24が動作中でない場合(ステップS90:No)には、ジョブコントロールタスクT40に残っているタスクが存在するかどうかを判断する(ステップS91)。ジョブコントロールタスクT40に残っているタスクがない場合(ステップS91:No)には、このネゴシエーション処理を終了する。
【0080】
一方、ジョブコントロールタスクT40に残っているタスクが存在する場合(ステップS91:Yes)には、そのジョブを捨てて(ステップS92)、メモリも解放する(ステップS93)。そして、このネゴシエーション処理を終了する。
【0081】
以上のように、本実施形態に係るマルチファンクションプリンタ10によれば、スキャナ部とプリンタ部とが並行して動作している場合でも、プリンタ部のみをリセットすることができるようにしたので、ユーザの利便性が向上する。すなわち、スキャナ部とプリンタ部とが並行して動作している場合に、プリンタ部をリセットしようとして、スキャナ部のスキャン動作までもが停止してしまう事態を回避することができる。
【0082】
具体的には、プリンタ部リセットコマンドを受信した場合には、インターフェース制御タスクT10が入力バッファにNULLデータを印刷データとして強制的に書き込むようにし、ジョブコントロールタスクT40がリセット処理中であることを示すリセット中フラグRSFをセットすることとした。このため、入力バッファから印刷データを読み出して展開処理を行っているメインタスクT30は、いずれその処理を終えることができる。すなわち、メインタスクT30が階層的なループ処理で構成されている場合、NULLデータに基づいて順次処理を行い、リセット中フラグRSFがセットされていることを検出すると、下位のループ処理から順次抜け出して上位のループ処理に移行するので、最終的には、最上位のメインループ処理に自律的に戻ってくることができる。
【0083】
このため、複雑なループ処理で構成されている既存のメインタスクT30の処理内容を大きく変更することなく、本実施形態に係るマルチファンクションプリンタ10を実現することができる。
【0084】
〔第2実施形態〕
本発明の第2実施形態は、上述した第1実施形態を変形し、メインタスクT30により起動される下位のループ処理をタイマー設定して起動し、このタイマーに基づいて、下位のループ処理を起動してから一定時間経過した場合には、その下位のループ処理を途中終了して、メインタスクT30のメイン処理に戻るようにしたものである。そしてこれにより、インターフェース処理タスクT10がNULL書き込みを行わなくとも、マルチファンクションプリンタ10のプリンタ部のみをリセットすることができるようにしたものである。より詳しくを、以下に説明する。
【0085】
本実施形態に係るマルチファンクションプリンタ10の内部構成は、上述した図1と同様である。但し、コンピュータからプリンタ部リセットコマンドを受信した場合の処理が異なる。
【0086】
図9は、プリンタ部リセットコマンドを受信した場合のマルチファンクションプリンタ10の処理を説明するタイミングチャートである。図2と比べると、図9にはエンジン制御タスクT50が追加されている。但し、このエンジン制御タスクT50は、上述した第1実施形態のマルチファンクションプリンタ10でも備えているが、図2では省略しただけである。
【0087】
図9に示すように、コンピュータから送信されたプリンタ部リセットコマンドは、インターフェース制御タスクT10により受信される。インターフェース制御タスクT10は、受信したコマンドが制御系のコマンドであるか、印刷データ等であるのかを判断し、この例では制御系のコマンドであるので、このプリンタ部リセットコマンドの解釈を要求すべく、これを制御コマンド解釈タスクT20に送信する。
【0088】
これを受信した制御コマンド解釈タスクT20が、これを解釈することにより、受信したコマンドがプリンタ部リセットコマンドであることが判明する。このため、制御コマンド解釈タスクT20は、インターフェース制御タスクT10にリプライを依頼し、インターフェース制御タスクT10はこれに基づいてリプライをコンピュータに返信する。また、制御コマンド解釈タスクT20は、リセットコマンド受信メッセージを、ジョブコントロールタスクT40に送信する。
【0089】
リセットコマンド受信メッセージを受け取ったジョブコントロールタスクT40は、リセット中フラグRSFをセットするとともに、リセット処理実行要求を、メインタスクT30へ送信する。そして、ジョブコントロールタスクT40は、それ以降の印刷、紙送り要求などのジョブを、徹底的に読み捨てる。但し、応答が必要なメッセージについては、とりあえず必要な返信のみ行っておく。
【0090】
このリセット処理実行要求を受け取ったメインタスクT30は、データ展開処理のためにRAM12に確保していたメモリ領域を解放する。そして、メインタスクT30は、リセット処理終了通知をジョブコントロールタスクT40に送信する。なお、本実施形態においては、メインタスクT30から起動される下位のループ処理が実行されていた場合には、下位の処理はタイマーにより所定時間経過後にメインタスクT30のメイン処理に戻るように設定されている。
【0091】
リセット処理終了通知を受け取ったジョブコントロールタスクT40は、プリントエンジン24の機械的な状態を初期設定に戻すために、エンジン制御タスクT50に機械的状態確認メッセージを送信する。この機械的状態確認メッセージを受信したエンジン制御タスクT50は、プリントエンジン24の機械的な状態を初期化して、初期状態に戻す。そして、エンジン制御タスクT50は、ジョブコントロールタスクT40に、機械的状態初期化終了メッセージを送信する。
【0092】
この機械的状態確認メッセージを受信したジョブコントロールタスクT40は、リセット中フラグRSFをリセットし、リセット処理終了通知の返信を、メインタスクT30に送信する。これを受けて、メインタスクT30では、このメインタスクT30内における必要な設定状態を初期状態に戻す。これにより、プリンタ部のみのリセットが行われたことになる。
【0093】
また、リセット中フラグRSFがセットされている間(つまり、図9の例では、リセット中フラグRSFが「1」の間)は、インターフェース制御タスクT10は、コンピュータから印刷データを受信した場合でも、その印刷データを送信したコンピュータに対して、データ受信不可のメッセージを返信する。つまり、リセット処理中には、印刷データを受け付けないようにする。
【0094】
以上、本実施形態に係るマルチファンクションプリンタ10がプリンタ部リセットコマンドを受信した場合の処理を概略的に説明したが、次に、上述した各タスク毎にその詳細な処理内容を説明する。
【0095】
図10は、上述したインターフェース制御タスクT10で行われるインターフェース制御処理を説明するフローチャートである。本実施形態においても、このインターフェース制御処理は、ROM14に格納されているインターフェース制御プログラムを、リアルタイムOS上でCPU16が実行することにより実現される。
【0096】
図10に示すように、インターフェース制御タスクT10は、まず、何からのメッセージを受信したかどうかを判断する(ステップS110)。何らメッセージを受信していない場合(ステップS110:No)には、このステップS110の処理を繰り返して待機する。
【0097】
何らかのメッセージを受信した場合(ステップS110:Yes)には、現在、リセット処理中であるかどうかを判断する(ステップS111)。具体的には、リセット中フラグRSFがセットされているかどうかに基づいて、現在リセット処理中であるかどうかを判断する。リセット処理中である場合(ステップS111:Yes)には、そのメッセージを処理することはできないので、そのメッセージを送信したコンピュータに、データ受信不可のメッセージを送信する(ステップS112)。そして、上述したステップS110に戻る。
【0098】
一方、ステップS111において、リセット処理中でないと判断した場合(ステップS111:No)には、該当するメッセージについて必要な処理を実行する(ステップS113)。例えば、上述したように、コンピュータからのプリンタ部リセットコマンドなどの制御系のコマンドを受信した場合には、これを制御コマンド解釈タスクT20へ転送する。また、例えば、制御コマンド解釈タスクT20からプリンタ部リセットコマンドに対するリプライの要求を受信した場合には、そのリプライをコンピュータへ転送する。そして、上述したステップS110に戻る。
【0099】
次に、制御コマンド解釈タスクT20についてであるが、本実施形態に係る制御コマンド解釈タスクT20の処理は、上述した第1実施形態における図4と同様の処理であるので、ここでは説明を省略する。
【0100】
次に、図11及び図12に基づいて、メインタスクT30について説明する。図11は、上述したメインタスクT30で行われるメインタスク処理を説明するフローチャートであり、本実施形態におけるメインループ処理を示している。図12は、このメインタスク処理から派生する下位のループ処理であるデータ展開処理を説明するフローチャートである。本実施形態におけるメインタスクT30には、このデータ展開処理以外にも、数多くの下位のループ処理が存在するが、ここでは、データ展開処理を代表例として説明する。また、下位のループ処理から派生するさらに下位のループ処理も存在する。つまり、本実施形態においては、メインタスクT30のループ処理は階層的に構成されている。
【0101】
なお、本実施形態においても、これらのメインタスク処理及びデータ展開処理は、ROM14に格納されているメインタスクプログラム及びデータ展開プログラムを、リアルタイムOS上でCPU16が実行することにより実現される。
【0102】
図11に示すように、メインタスクT30は、まず、何らかのメッセージを受信したかどうかを判断する(ステップS120)。何らメッセージを受信していない場合(ステップS120:No)には、このステップS120の処理を繰り返して待機する。
【0103】
一方、何らかのメッセージを受信した場合(ステップS120:Yes)には、メインタスクT30は、そのメッセージが、ジョブコントロールタスクT40から送信されたリセット処理実行要求であるかどうかを判断する(ステップS121)。受信したメッセージがリセット処理実行要求でない場合(ステップS121:No)には、そのメッセージが印刷データに関するデータ展開処理要求であるかどうかを判断する(ステップS122)。
【0104】
受信したメッセージがデータ展開処理要求である場合(ステップS122:Yes)には、その印刷データに関して、データ展開処理を行う(ステップS123)。なお、このデータ展開処理は、メインの処理から起動される下位のループ処理の一例であるが、その詳細については、後に図12を用いて詳述する。このデータ展開処理からこのメインタスク処理に戻ってきた場合には、上述したステップS120の処理に戻る。
【0105】
一方、ステップS122において、受信したメッセージがデータ展開処理要求でないと判断した場合(ステップS122:No)には、受信したメッセージが、コマンド解析処理要求であるかどうかを判断する(ステップS124)。受信したメッセージがコマンド解析処理要求である場合(ステップS124:Yes)には、そのコマンドに関して、コマンド解析処理を行う(ステップS125)。このコマンド解析処理の内容の説明は省略するが、このコマンド解析処理も、本実施形態におけるメインタスク処理から起動される下位の処理である。このコマンド解析処理からこのメインタスク処理に戻ってきた場合には、上述したステップS120の処理に戻る。
【0106】
これに対して、上述したステップS121において、受信したメッセージが、リセット処理実行要求であると判断した場合(ステップS121:Yes)には、メインタスクT30は、このメインタスクT30がデータ展開処理のためにRAM12に確保したメモリ領域を解放して(ステップS126)、データ展開処理を途中終了する。続いて、リセット処理終了通知を、ジョブコントロールタスクT40に送信する(ステップS127)。そして、上述したステップS120の処理に戻る。
【0107】
一方、上述したステップS124において、受信したメッセージが、コマンド解析処理要求でないと判断した場合(ステップS124:No)には、受信したメッセージが、ジョブコントロールタスクT40から送信されたリセット処理終了通知の返信であるかどうかを判断する(ステップS128)。図9でも説明したように、ステップS127でリセット処理終了通知をジョブコントロールタスクT40に送信すると、リセットするためのプリントエンジン24の機械的準備が整った段階で、ジョブコントロールタスクT40からメインタスクT30にリセット処理終了通知の返信が送信される。
【0108】
受信したメッセージが、リセット処理終了通知の返信である場合(ステップS128:Yes)には、このメインタスクT30内の各種の設定状態を、初期状態に設定する(ステップS129)。一方、受信したメッセージが、リセット処理終了通知の返信でない場合(ステップS128:No)には、そのメッセージに対応するメインの処理を実行する(ステップS130)。これらステップS129及びステップS130の後、上述したステップS120の処理に戻る。
【0109】
次に、図12に基づいて、ステップS123のデータ展開処理について詳しく説明する。このデータ展開処理は、図12に示すステップS123のデータ展開処理に移行した場合の下位の処理である。したがって、このデータ展開処理が終了すると、図11のステップS120の処理に戻ることになる。
【0110】
図12に示すように、データ展開処理においては、まず、タイマーのセットを行う(ステップS140)。すなわち、タイマーの値をゼロにセットする。次に、受信バッファが空であるかどうかを判断する(ステップS141)。受信バッファが空でない場合(ステップS141:No)、すなわち、受信バッファに印刷データが格納されている場合には、その印刷データの展開を行う(ステップS142)。
【0111】
そして、このデータ展開処理を開始してから所定時間経過したかどうかを判断する(ステップS143)。具体的には、ステップS140で起動したタイマーの値に基づいて、このデータ展開処理が開始されてからの時間を取得する。そして、この取得した時間が、所定の時間(例えば、1秒)よりも大きいかどうかを判断する。
【0112】
このデータ展開処理が開始されてから所定時間経過していない場合(ステップS143:No)には、このデータ展開処理が最後まで終了したかどうかを判断する(ステップS144)。最後まで終了していない場合(ステップS144:No)には、上述したステップS141の処理に戻る。一方、最後まで終了した場合(ステップS144:Yes)には、展開し終えた印刷ジョブデータについての印刷要求を、プリントエンジン24で印刷すべく、ジョブコントロールタスクT40に送信する(ステップS145)。そして、このデータ展開処理を終了する。
【0113】
上述したステップS141で受信バッファが空であると判断した場合(ステップS141:Yes)、又は、上述したステップS143でデータ展開処理を開始してから所定時間経過していると判断した場合(ステップS143:Yes)には、メインタスクT30に、データ展開処理要求を送信し(ステップS146)、このデータ展開処理を終了する。すなわち、自分から自分に処理の起動要求を送信することにより、一旦、メインタスクT30のメインの処理に戻った後にも、再度、このデータ展開処理が起動されるようにする。
【0114】
次に、図13に基づいて、ジョブコントロールタスクT40で行われるジョブコントロール処理について説明する。本実施形態においても、このジョブコントロール処理は、ROM14に格納されているジョブコントロール処理プログラムを、リアルタイムOS上でCPU16が実行することにより実現される。
【0115】
図13に示すように、ジョブコントロールタスクT40は、まず、何からのメッセージを受信したかどうかを判断する(ステップS170)。何らメッセージを受信していない場合(ステップS170:No)には、このステップS170の処理を繰り返して待機する。
【0116】
何らかのメッセージを受信した場合(ステップS170:Yes)には、リセット中フラグRSFがセットされているかどうかを判断する(ステップS171)。リセット中フラグRSFがセットされていない場合(ステップS171:No)には、受信したメッセージが、制御コマンド解釈タスクT20から送信されたリセットコマンド受信のメッセージであるかどうかを判断する(ステップS172)。
【0117】
受信したメッセージがリセットコマンド受信のメッセージでない場合(ステップS172:No)には、そのメッセージについて必要なジョブを実行し、そのコントロールを行う(ステップS173)。そして、上述したステップS170に戻る。
【0118】
一方、上述したステップS172で、受信したメッセージがリセットコマンド受信のメッセージである場合(ステップS172:Yes)には、ジョブコントロールタスクT40は、リセット中フラグRSFをセットする(ステップS174)。続いて、ジョブコントロールタスクT40は、メインタスクT30へ、リセット処理実行要求を送信する(ステップS175)。そして、上述したステップS170に戻る。
【0119】
一方、上述したステップS171の処理で、リセット中フラグRSFがセットされていると判断した場合(ステップS171:Yes)には、受信したメッセージが、何らかの応答を必要としているメッセージであるかどうかを判断する(ステップS176)。応答が必要なメッセージでない場合(ステップS176:No)には、そのメッセージを読み捨てる(ステップS177)。メッセージを読み捨てることにより、ジョブが読み捨てられたことになる。そして、上述したステップS170の処理に戻る。
【0120】
一方、上述したステップS176で、受信したメッセージが応答の必要なメッセージである場合(ステップS176:Yes)には、ジョブコントロールタスクT40は、そのメッセージが、メインタスクT30からのリセット処理終了通知であるかどうかを判断する(ステップS178)。受信したメッセージが、リセット処理終了通知でない場合(ステップS178:No)には、メインタスクT30がまだ最上位のループ処理に戻ってきていないことになるので、とりあえず、受信したメッセージに対して必要な返事を送信しておく(ステップS179)。これは、メインタスクT30の下位のループ処理で、ジョブコントロールタスクT40からの返信待ちになっているものがある可能性があるので、このループ処理を進行させるために、必要な返事のみは返信する必要があるからである。但し、ジョブコントロールタスクT40では、そのメッセージの内容は実行せずに、読み捨てる。そして、上述したステップS170の処理に戻る。
【0121】
一方、上述したステップS178で、受信したメッセージが、メインタスクT30からのリセット処理終了通知である場合(ステップS178:Yes)には、メインタスクT30が最上位のループに戻って、確保していたメモリ領域を解放したことになるので、ジョブコントロールタスクT40は、エンジン制御タスクT50に、機械的状態確認メッセージを送信する(ステップS180)。この機械的状態確認メッセージを受信したエンジン制御タスクT50は、プリントエンジン24の機械的な状態を初期状態にリセットした後、機械的状態初期化終了メッセージをジョブコントロールタスクT40に送信する。
【0122】
このため、ジョブコントロールタスクT40では、ステップS180で機械的状態確認メッセージを送信した後は、この機械的状態初期化終了メッセージを受信するまで待機する(ステップS181)。この機械的状態初期化終了メッセージを受信した場合(ステップS181:Yes)には、ジョブコントロールタスクT40は、メインタスクT30に、リセット処理終了通知の返事を送信する(ステップS182)。
【0123】
次に、ジョブコントロールタスクT40は、これでプリンタ部のリセットが終了したので、リセット中フラグRSFをリセットする(ステップS183)。具体的には、リセット中フラグRSFを「0」にする。そして、上述したステップS170の処理に戻る。
【0124】
以上のように、本実施形態に係るマルチファンクションプリンタ10によれば、スキャナ部とプリンタ部とが並行して動作している場合でも、プリンタ部のみをリセットすることができるようにしたので、ユーザの利便性が向上する。すなわち、スキャナ部とプリンタ部とが並行して動作している場合に、プリンタ部をリセットしようとして、スキャナ部のスキャン動作までもが停止してしまう事態を回避することができる。
【0125】
具体的には、プリンタ部リセットコマンドを受信した場合には、メインタスクT30に、リセット処理実行要求を送信する。このリセット処理実行要求を受信したメインタスクT30は、データ展開処理のために確保したメモリ領域を解放して、データ展開処理を途中終了する。また、このメインタスクT30のメインの処理から下位のループ処理が起動されている場合でも、この下位のループ処理は、その処理の途中であっても、所定時間経過後にメインの処理に一旦戻ってくるように設定されている。このため、メインタスクT30の処理が下位のループ処理を実行している場合でも、リセット処理実行要求をメインタスクT30が受信した場合には、そのデータ展開処理を終了させることができる。
【0126】
なお、本発明は上記実施形態に限定されず種々に変形可能である。例えば、上述した第1実施形態における図5のデータ展開制御処理、及び、図6のグラフィックマネージャ処理では、ステップS43及びステップS62で入力バッファから読み込んだデータが0x00であるかどうかの判断をしてから、リセット中フラグRSFがセットされているかどうかを判断したが、これらステップS43及びステップS62の処理を省略して、直接、リセット中フラグRSFがセットされているかどうかを判断するようにしてもよい。
【0127】
また、上述した第1及び第2実施形態における各種のタスクの処理区分は上述したものに限定されるものではなく、複数のタスクの処理をまとめて1つのタスクとして構成してもよく、また、1つのタスクの処理を複数のタスクに分割して構成してもよい。
【0128】
さらに、上述した第1実施形態におけるインターフェース制御タスクT10では、リセット中フラグRSFとは別に、プリンタ部がリセット中であることを示すリセット処理中フラグWSFを設けることとしたが、このリセット処理中フラグWSFを別途設けずにリセット中フラグRSFを共用するようにしてもよい。
【0129】
また、上述した第2実施形態においては、メインタスクT30は、ジョブコントロールタスクT40を介して、プリンタエンジン24を初期化するためのメッセージをエンジン制御タスクT50に送信することとしたが、このメッセージを直接送信するようにしてもよい。すなわち、機械的状態確認メッセージをメインタスクT30からエンジン制御タスクT50に送信し、エンジン制御タスクT50がプリントエンジン24の機械的状態の初期化を行った後に、機械的状態初期化終了メッセージをエンジン制御タスクT50からメインタスクT30に送信するようにしてもよい。
【0130】
さらに、上述した第1実施形態及び第2実施形態においては、コンピュータからマルチファンクションプリンタ10にプリンタ部リセットコマンドを送信することとしたが、マルチファンクションプリンタ10におけるプリンタ部のリセットの仕方は、この態様に限られるものではない。例えば、マルチファンクションプリンタ10の本体にリセットボタンを設け、ユーザがこのリセットボタンを操作したときに、プリンタ部リセットコマンドがマルチファンクションプリンタ10で生成され、インターフェース制御タスクT10に入力されるようにしてもよい。
【0131】
また、上述の実施形態で説明したインターフェース制御タスクT10、制御コマンド解釈タスクT20、メインタスクT30、ジョブコントロールタスクT40、及び、エンジン制御タスクT50等の各タスク処理については、これら各処理を実行するためのプログラムをフロッピーディスク、CD−ROM(Compact Disc-Read Only Memory)、ROM、メモリカード等の記録媒体に記録して、記録媒体の形で頒布することが可能である。この場合、このプログラムが記録された記録媒体をマルチファンクションプリンタ10に読み込ませ、実行させることにより、上述した実施形態を実現することができる。
【0132】
また、マルチファンクションプリンタ10は、オペレーティングシステムや別のアプリケーションプログラム等の他のプログラムを備える場合がある。この場合、マルチファンクションプリンタ10の備える他のプログラムを活用し、記録媒体にはそのマルチファンクションプリンタ10が備えるプログラムの中から、上述した実施形態と同等の処理を実現するプログラムを呼び出すような命令を記録するようにしてもよい。
【0133】
さらに、このようなプログラムは、記録媒体の形ではなく、ネットワークを通じて搬送波として頒布することも可能である。ネットワーク上を搬送波の形で伝送されたプログラムは、マルチファンクションプリンタ10に取り込まれて、このプログラムを実行することにより上述した実施形態を実現することができる。
【0134】
また、記録媒体にプログラムを記録する際や、ネットワーク上を搬送波として伝送される際に、プログラムの暗号化や圧縮化がなされている場合がある。この場合には、これら記録媒体や搬送波からプログラムを読み込んだマルチファンクションプリンタ10は、そのプログラムの復号化や伸張化を行った上で、実行する必要がある。
【0135】
【発明の効果】
以上説明したように、本発明によれば、スキャナ部とプリンタ部とを有するマルチファンクションプリンタにおいて、スキャナ部が動作中であっても、プリンタ部だけをリセットすることができるようにしたので、ユーザの利便性が向上する。
【図面の簡単な説明】
【図1】本発明の一実施形態に係るマルチファンクションプリンタの内部構成を示すブロック図である。
【図2】第1実施形態に係るマルチファンクションプリンタがコンピュータからプリンタ部リセットコマンドを受信した場合の処理を概略的に説明するタイミングチャートを示す図である。
【図3】本実施形態に係るインターフェース制御処理(インターフェース制御タスク)の内容を説明するフローチャートである。
【図4】本実施形態に係る制御コマンド解釈処理(制御コマンド解釈タスク)の内容を説明するフローチャートである。
【図5】本実施形態に係るデータ展開制御処理(メインタスク)の内容を説明するフローチャートである。
【図6】本実施形態に係るグラフィックマネージャ処理(メインタスク)の内容を説明するフローチャートである。
【図7】本実施形態に係るジョブコントロール処理(ジョブコントロールタスク)の内容を説明するフローチャートである。
【図8】本実施形態に係るネゴシエーション処理の内容を説明するフローチャートである。
【図9】第2実施形態に係るマルチファンクションプリンタがコンピュータからプリンタ部リセットコマンドを受信した場合の処理を概略的に説明するタイミングチャートを示す図である。
【図10】第2実施形態に係るインターフェース制御処理(インターフェース制御タスク)の内容を説明するフローチャートである。
【図11】第2実施形態に係るメインタスク処理(メインタスク)の内容を説明するフローチャートである。
【図12】第2実施形態に係るデータ展開処理(メインタスク)の内容を説明するフローチャートである。
【図13】第2実施形態に係るジョブコントロール処理(ジョブコントロールタスク)の内容を説明するフローチャートである。
【符号の説明】
10 マルチファンクションプリンタ
12 RAM
14 ROM
16 CPU
18 スキャナASIC
20 プリンタASIC
22 スキャナ機構部
24 プリントエンジン
26 USBポート
28 USBハブ
T10 インターフェース制御タスク
T20 制御コマンド解釈タスク
T30 メインタスク
T40 ジョブコントロールタスク
Claims (11)
- スキャナ部とプリンタ部とを有するマルチファンクションプリンタであって、
コンピュータから、前記プリンタ部をリセットするプリンタ部リセットコマンドを受信する、受信手段と、
前記受信手段が前記プリンタ部リセットコマンドを受信した場合に、前記スキャナ部が動作中であっても、前記プリンタ部のみをリセットする、リセット手段と、
を備えるとともに、
前記リセット手段は、少なくとも、
前記プリンタ部リセットコマンドを受信した場合には、コンピュータから送信された印刷データを格納する入力バッファに、印刷データの解釈上は無意味なデータと解釈されるダミーデータを印刷データとして書き込む、第1タスクと、
前記入力バッファに格納されている前記印刷データを読み出して、イメージデータに展開する、第2タスクとを、
中央処理装置で実行することにより実現される、ことを特徴とするマルチファンクションプリンタ。 - 前記中央処理装置は前記マルチファンクションプリンタに1つだけ設けられている、ことを特徴とする請求項1に記載のマルチファンクションプリンタ。
- 前記リセット手段は、前記中央処理装置で実行されるタスクとして、
前記プリンタ部リセットコマンドを受信した場合に、前記プリンタ部がリセット処理中であることを示すリセット中識別情報をセットする、第3タスクをさらに備えることを特徴とする請求項1又は請求項2に記載のマルチファンクションプリンタ。 - 前記第2タスクは、最も上位のメインループ処理と、このメインループ処理から階層的に派生する下位のループ処理とを有しており、前記下位のループ処理は、前記リセット中識別情報がセットされている場合には、その処理を抜けて上位のループ処理に戻るよう構成されている、ことを特徴とする請求項3に記載のマルチファンクションプリンタ。
- 前記第2タスクでは、その時点のモードがキャラクタデータを印刷するキャラクターモードである場合には、前記ダミーデータが所定回数以上連続したかどうかを判断する連続回数判断処理を行い、その時点のモードがグラフィックデータを印刷するグラフィックモードである場合には、この連続回数判断処理を行わない、ことを特徴とする請求項3又は請求項4に記載のマルチファンクションプリンタ。
- 受信した印刷データを展開するデータ展開処理手段であって、前記リセット手段が前記プリンタ部リセットコマンドを受信した場合には、印刷データの展開処理を途中終了する、データ展開処理手段と、
前記データ展開処理手段により起動される、下位の処理手段であって、起動された後に所定時間経過した場合は、その処理が終了していない場合であっても、前記データ展開処理手段に戻る、下位の処理手段と、
をさらに備えることを特徴とする請求項1乃至請求項5のいずれかに記載のマルチファンクションプリンタ。 - 前記データ展開処理手段の印刷データの展開処理が途中終了した場合に、プリントエンジンを初期状態に戻すプリントエンジン初期化手段を、さらに備えることを特徴とする請求項6に記載のマルチファンクションプリンタ。
- 前記プリントエンジン初期化手段がプリントエンジンを初期状態に戻した後に、前記データ展開手段の設定状態を初期状態に戻す、ことを特徴とする請求項7に記載のマルチファンクションプリンタ。
- スキャナ部とプリンタ部とを有するマルチファンクションプリンタの制御方法であって、
コンピュータから、前記プリンタ部をリセットするプリンタ部リセットコマンドを受信するステップと、
前記プリンタ部リセットコマンドを受信した場合に、前記スキャナ部が動作中であっても、前記プリンタ部のみをリセットするステップと、
を備えるとともに、
前記プリンタ部のみをリセットするステップは、少なくとも、
前記プリンタ部リセットコマンドを受信した場合には、コンピュータから送信された印刷データを格納する入力バッファに、印刷データの解釈上は無意味なデータと解釈されるダミーデータを印刷データとして書き込むステップと、
前記入力バッファに格納されている前記印刷データを読み出して、イメージデータに展開するステップとを、
備えることを特徴とするマルチファンクションプリンタの制御方法。 - スキャナ部とプリンタ部とを有するマルチファンクションプリンタを制御するためのプログラムであって、
コンピュータから、前記プリンタ部をリセットするプリンタ部リセットコマンドを受信するステップと、
前記プリンタ部リセットコマンドを受信した場合に、前記スキャナ部が動作中であっても、前記プリンタ部のみをリセットするステップと、
を前記マルチファンクションプリンタに実行させるとともに、
前記プリンタ部のみをリセットするステップでは、少なくとも、
前記プリンタ部リセットコマンドを受信した場合には、コンピュータから送信された印刷データを格納する入力バッファに、印刷データの解釈上は無意味なデータと解釈されるダミーデータを印刷データとして書き込むステップと、
前記入力バッファに格納されている前記印刷データを読み出して、イメージデータに展開するステップとを、
前記マルチファンクションプリンタに実行させるためのプログラム。 - スキャナ部とプリンタ部とを有するマルチファンクションプリンタを制御するためのプログラムが記録された記録媒体であって、
コンピュータから、前記プリンタ部をリセットするプリンタ部リセットコマンドを受信するステップと、
前記プリンタ部リセットコマンドを受信した場合に、前記スキャナ部が動作中であっても、前記プリンタ部のみをリセットするステップと、
を前記マルチファンクションプリンタに実行させるとともに、
前記プリンタ部のみをリセットするステップでは、少なくとも、
前記プリンタ部リセットコマンドを受信した場合には、コンピュータから送信された印刷データを格納する入力バッファに、印刷データの解釈上は無意味なデータと解釈されるダミーデータを印刷データとして書き込むステップと、
前記入力バッファに格納されている前記印刷データを読み出して、イメージデータに展開するステップとを、
前記マルチファンクションプリンタに実行させるためのプログラムが記録された記録媒体。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001381409A JP3758154B2 (ja) | 2001-02-20 | 2001-12-14 | マルチファンクションプリンタ |
US10/075,989 US7099021B2 (en) | 2001-02-20 | 2002-02-15 | Multifunction printer |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001043487 | 2001-02-20 | ||
JP2001-43487 | 2001-02-20 | ||
JP2001381409A JP3758154B2 (ja) | 2001-02-20 | 2001-12-14 | マルチファンクションプリンタ |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2002325156A JP2002325156A (ja) | 2002-11-08 |
JP3758154B2 true JP3758154B2 (ja) | 2006-03-22 |
Family
ID=26609705
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001381409A Expired - Fee Related JP3758154B2 (ja) | 2001-02-20 | 2001-12-14 | マルチファンクションプリンタ |
Country Status (2)
Country | Link |
---|---|
US (1) | US7099021B2 (ja) |
JP (1) | JP3758154B2 (ja) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1415425B1 (en) | 2001-07-06 | 2019-06-26 | CA, Inc. | Systems and methods of information backup |
JP4259005B2 (ja) * | 2001-09-12 | 2009-04-30 | ブラザー工業株式会社 | データ送受信システム、データ送信装置及び画像形成装置 |
JP4304574B2 (ja) * | 2002-10-23 | 2009-07-29 | ブラザー工業株式会社 | 画像形成装置 |
JP2005049972A (ja) * | 2003-07-30 | 2005-02-24 | Ricoh Co Ltd | 多機能画像形成装置及び文書情報検索方法 |
JP4581815B2 (ja) * | 2005-04-26 | 2010-11-17 | セイコーエプソン株式会社 | 印刷制御装置及び印刷システム |
US7734668B2 (en) * | 2005-07-26 | 2010-06-08 | Brother Kogyo Kabushiki Kaisha | Information management system, information processing device, and program |
JP4241703B2 (ja) * | 2005-09-30 | 2009-03-18 | ブラザー工業株式会社 | 情報管理システム、情報処理装置及び情報管理プログラム |
JP2007125746A (ja) * | 2005-11-02 | 2007-05-24 | Oki Electric Ind Co Ltd | 印刷装置および印刷方法 |
US8502996B2 (en) * | 2009-09-10 | 2013-08-06 | Xerox Corporation | Method and system for matching distributed users with distributed multi-function devices |
US9049315B2 (en) | 2010-09-14 | 2015-06-02 | Xerox Corporation | Method, system and computer-usable medium for ranking networked rendering devices with visual cues |
JP6136911B2 (ja) * | 2013-12-17 | 2017-05-31 | ブラザー工業株式会社 | 情報処理プログラムおよび端末装置 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3275931B2 (ja) | 1994-06-15 | 2002-04-22 | 富士ゼロックス株式会社 | 画像処理装置 |
JPH0872362A (ja) | 1994-08-31 | 1996-03-19 | Canon Inc | 印刷装置およびその制御方法 |
JPH1063518A (ja) * | 1996-08-26 | 1998-03-06 | Brother Ind Ltd | 情報処理装置、および記憶媒体 |
US6871243B2 (en) * | 2000-12-28 | 2005-03-22 | Kabushiki Kaisha Toshiba | Image processing system that communicates with a portable device having user information |
-
2001
- 2001-12-14 JP JP2001381409A patent/JP3758154B2/ja not_active Expired - Fee Related
-
2002
- 2002-02-15 US US10/075,989 patent/US7099021B2/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JP2002325156A (ja) | 2002-11-08 |
US7099021B2 (en) | 2006-08-29 |
US20020114001A1 (en) | 2002-08-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6894800B2 (en) | Information processing apparatus and information display method for displaying job information relating to an output job | |
JP3758154B2 (ja) | マルチファンクションプリンタ | |
US20060238796A1 (en) | Image forming apparatus, control method, memory medium, and program | |
JP4027112B2 (ja) | 画像処理装置及び画像処理装置における通信方法 | |
US6819444B1 (en) | Image processing system and its control method | |
JP2001067228A (ja) | ファームウェアダウンロード方式 | |
JP2007207194A (ja) | 印刷装置、外部装置、印刷システム及び印刷装置の制御方法 | |
US6804028B1 (en) | Image processing apparatus and method, and storage medium storing computer-readable program | |
JP4280505B2 (ja) | 情報処理装置及び情報処理方法 | |
JPH1170717A (ja) | 印刷制御装置および方法 | |
JP2007125850A (ja) | 画像形成装置及びその制御方法 | |
JP3601287B2 (ja) | 印刷システム、プリンタ、印刷方法及び印刷データ生成装置 | |
JP4400097B2 (ja) | 印刷装置、印刷制御方法、プログラム及び記録媒体 | |
JP4532760B2 (ja) | 画像形成装置および画像形成装置のデータ処理方法および記憶媒体 | |
JP2002262004A (ja) | マルチファンクションプリンタ | |
JP2000263873A (ja) | 印刷方法及び装置並びに記憶媒体 | |
JP2006014369A (ja) | 多機能周辺装置 | |
JP4706495B2 (ja) | 画像処理装置、画像処理方法、及びプログラム | |
JP2006195888A (ja) | プリントシステム | |
JP3624090B2 (ja) | 画像形成装置及びその制御方法 | |
JP2002262001A (ja) | マルチファンクションプリンタ | |
JP2022050786A (ja) | 印刷方法、情報処理装置及びプログラム | |
JP2023173548A (ja) | 画像形成装置および画像形成方法 | |
JPH11115282A (ja) | プリンタシステム及びその制御方法、情報処理装置及びその制御方法、コンピュータ可読メモリ | |
JPH10126559A (ja) | 多機能周辺装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20040210 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20050502 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050513 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050620 |
|
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: 20051209 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20051222 |
|
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: 20100113 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110113 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110113 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120113 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120113 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130113 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130113 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140113 Year of fee payment: 8 |
|
LAPS | Cancellation because of no payment of annual fees |