JP3706657B2 - Printing apparatus and method for writing to buffer in printing apparatus - Google Patents
Printing apparatus and method for writing to buffer in printing apparatus Download PDFInfo
- Publication number
- JP3706657B2 JP3706657B2 JP17737395A JP17737395A JP3706657B2 JP 3706657 B2 JP3706657 B2 JP 3706657B2 JP 17737395 A JP17737395 A JP 17737395A JP 17737395 A JP17737395 A JP 17737395A JP 3706657 B2 JP3706657 B2 JP 3706657B2
- Authority
- JP
- Japan
- Prior art keywords
- writing
- data
- transmission buffer
- determined
- transmission
- 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)
- Record Information Processing For Printing (AREA)
- Facsimiles In General (AREA)
- Storing Facsimile Image Data (AREA)
Description
【0001】
【発明の属する技術分野】
本発明は、ホストコンピュータあるいは他のデバイスに対して、データ送信可能な印刷装置に関するもので、ホストコンピュータ等と双方向通信を行なう場合において好適に実施される印刷装置に関するものである。
【0002】
【従来の技術】
従来の印刷装置においては、印刷装置とホストコンピュータを始めとする他のデバイスとの通信は、片方向のデータ送信が圧倒的に多く、反対方向のデータ送信は非常に少なかった。特に印刷装置からホストコンピュータへのデータ送信はほとんど行なわれず、ホストコンピュータから印刷装置への印刷データ、制御データの送信がほとんどであった。
【0003】
しかし、印刷装置のステータス情報を頻繁にホストコンピュータへ送信して、ホストコンピュータを操作しているユーザに印刷装置の状態を知らせたり、ホストコンピュータから印刷装置のリモート操作などを行なえるようになり、印刷装置を取り巻くさまざまなデバイス機器とのデータ通信のデータ量の割合が変化してきている。
【0004】
これまでの印刷装置では、このような双方向通信を想定していないために、ホストコンピュータ側と同じように印刷装置からの送信データはとりこぼしがないように全て送信を実行し、たとえホストコンピュータがデータ受信を行なえない場合でも、印刷装置からのデータ送信はあきらめずに行なっていた。
【0005】
【発明が解決しようとする課題】
しかしながら、上記のような双方向通信を想定していない印刷装置においては、例えば、ネットワーク環境などで1つの印刷装置に複数のホストコンピュータを接続して使用する環境において、あるホストコンピュータは双方向通信をサポートするアプリケーションを搭載しているが、あるホストコンピュータでは双方向通信をサポートするアプリケーションを搭載していない場合に、双方向通信をサポートするホストコンピュータで使用していたステータス要求するデータをコピーして、双方向通信をサポートしていないホストコンピュータから送信する場合など大いに考えられる。このような使用をユーザが頻繁に行なうと、ホストコンピュータは印刷装置から送信されるデータを受けとらないので、印刷装置の送信バッファがフル状態となり送信バッファに書き込み不可能な状態となる。しかし、印刷装置は送信可能になるまでデータ送信をあきらめないために、さらなるデータ受信やコマンド解析処理など、その他の処理が中断してしまうといった問題があった。
【0006】
また、双方向通信をサポートしているアプリケーションが搭載されているホストコンピュータにおいても、ホストコンピュータが、ファイルアクセスなどで重い処理を長時間行なっていて、入出力ポートに制御がいかず印刷装置からのデータ受信を実行できない場合に、印刷装置はデータ送信が可能になるまでデータ送信を実行しようと試みて、他の処理が止まってしまうなどの問題があった。
【0007】
上記例であげた様に、印刷装置とホストコンピュータを始めとするデバイス機器との双方向通信がうまくいかない場合は、物理的に不可能な場合と、一時的に送受信不可能な場合の2つに大きく分けることができる。これらの環境は図4の(A),(B)に示してある状態が考えられる。
【0008】
本発明の目的は、上述の点に顧みて、双方向通信が不可能なホストコンピュータを始めとするデバイス機器と接続されている場合、あるいはホストコンピュータが一時的にデータ受信できない様な場合においても、それぞれの状況に対する適切な動作はどうであるかを判断し、実行可能な印刷装置の処理は中断せず、双方向不可能な場合には印刷装置からのデータ送信のみを中断して、印刷装置本来の印刷処理をスムーズに実行できる印刷装置を提供することを目的とする。
【0009】
【課題を解決するための手段】
上述した課題を解決するために本発明の印刷装置は、
外部機器に送信する送信データが書き込まれる送信バッファと、
前記送信バッファに書き込みができたか判別する判別手段と、
前記判別手段により書き込みができないと判別された場合、タイムアウトになったか判別し、タイムアウトになったと判別された場合、送信データを捨てて処理を終了し、タイムアウトになったと判別されない場合、一定時間待ち、送信バッファに書き込み要求を行い、前記判別手段に判別させ、前記判別手段により書き込みができたと判別された場合、タイムアウト時間をリセットし、全て書き込みができたか判定し、全て書き込みができたと判定された場合、処理を終了し、全て書き込みができないと判定された場合、一定時間待ち、送信バッファに書き込み要求を行い、前記判別手段に判別させる手段とを有することを特徴とする。
また、本発明の印刷装置は、
外部機器に送信する送信データが書き込まれる送信バッファと、
前記送信バッファに書き込みができたか判別する判別手段と、
前記判別手段により書き込みができないと判別された場合、タイムアウトになったか判別し、タイムアウトになったと判別された場合、送信データを捨てて処理を終了し、タイムアウトになったと判別されない場合、一定時間待ち、送信バッファに書き込み要求を行い、前記判別手段に判別させ、前記判別手段により書き込みができたと判別された場合、タイムアウト時間をリセットし、全て書き込みができたか判定し、全て書き込みができたと判定された場合、処理を終了し、全て書き込みができないと判定された場合、残りの書き込み要求データ数を算出し、送信バッファへの書き込みデータの読み出し位置をずらして次回の書き込み準備を行い、一定時間待ち、送信バッファに書き込み要求を行い、前記判別手段に判別させる手段とを有することを特徴とする。
また、本発明の印刷装置におけるバッファへの書き込み方法は、
外部機器に送信する送信データが書き込まれる送信バッファを有する印刷装置におけるバッファへの書き込み方法であって、
前記送信バッファに書き込みができたか判別する判別ステップと、
前記判別ステップにより書き込みができないと判別された場合、タイムアウトになったか判別し、タイムアウトになったと判別された場合、送信データを捨てて処理を終了し、タイムアウトになったと判別されない場合、一定時間待ち、送信バッファに書き込み要求を行い、前記判別ステップに判別させ、前記判別ステップにより書き込みができたと判別された場合、タイムアウト時間をリセットし、全て書き込みができたか判定し、全て書き込みができたと判定された場合、処理を終了し、全て書き込みができないと判定された場合、一定時間待ち、送信バッファに書き込み要求を行い、前記判別ステップに判別させるステップとを有することを特徴とする。
また、本発明の印刷装置におけるバッファへの書き込み方法は、
外部機器に送信する送信データが書き込まれる送信バッファを有する印刷装置におけるバッファへの書き込み方法であって、
前記送信バッファに書き込みができたか判別する判別ステップと、
前記判別ステップにより書き込みができないと判別された場合、タイムアウトになったか判別し、タイムアウトになったと判別された場合、送信データを捨てて処理を終了し、タイムアウトになったと判別されない場合、一定時間待ち、送信バッファに書き込み要求を行い、前記判別ステップに判別させ、前記判別ステップにより書き込みができたと判別された場合、タイムアウト時間をリセットし、全て書き込みができたか判定し、全て書き込みができたと判定された場合、処理を終了し、全て書き込みができないと判定された場合、残りの書き込み要求データ数を算出し、送信バッファへの書き込みデータの読み出し位置をずらして次回の書き込み準備を行い、一定時間待ち、送信バッファに書き込み要求を行い、前記判別ステップに判別させるステップとを有することを特徴とする。
【0010】
【発明の実施の形態】
(実施例1)
本発明における実施例1を説明する。
【0011】
図1に本実施例のプリンタを含んだシステム構成を示す。図1において、101は、ホストコンピュータ等の外部機器、102は本実施例を適用したレーザビームプリンタである。105は、イメージデータ(2値または多値データ)に基づいて、周知の電子写真プロセスによって感光ドラム上に潜像を形成し、用紙に転写して定着し印字を行なうプリンタエンジン部、103は、プリンタエンジン部105に接続され、ホストコンピュータ等の外部機器101から送られるコードデータ(ESCコード、各種PDL等)を受け、このコードデータに基づいてドットデータからなるページ情報を生成しプリンタエンジン部105に対しての所定のインターフェイス手段によってイメージデータを送信するプリンタコントローラ部、104は、ユーザ(操作者)とのインターフェイスを行なうパネル部104であり、ユーザは、パネル部104を操作することによって、プリンタ102に所定の動作を指示することができる。
【0012】
図2は、本実施例のプリンタの機構模式図である。同図において、201はプリンタ匡体、202は操作パネルである。操作パネル202は、操作のためのスイッチ及びLED表示器、LCD表示器が配されている。これは図1において示したパネル部104の物理的側面である。203は、プリンタの印字プロセス制御を行なうプリンタエンジン部105の制御部及び、プリンタ全体の制御とホストコンピュータからのデータを解析しイメージデータに変換するプリンタコントローラ部103が収納される制御ボード収納部である。210は用紙を保持する用紙カセットであり、不図示の仕切り板によって電気的に用紙サイズを検知する機構を有する。211は、カセット給紙クラッチであり、用紙カセット210上に載置された用紙の最上位の用紙一枚のみを分離し、不図示の駆動手段によって分離した用紙を給紙ローラ212まで搬送されるカムで、給紙の度に間欠的に回転し、1回転に対応して1枚の用紙を給紙する。214は、レジストシャッタであり、用紙を押圧して給紙を停止させる。給紙ローラ212は、用紙の先端部をレジストシャッタ214まで搬送する。219は手差し用トレイであり、215は手差し給紙クラッチである。給紙クラッチ215は用紙の先端をレジストシャッタ214まで搬送する。以上のような構成によって用紙カセット210及び手差し給紙用トレイ219から選択的に用紙を給紙することが可能となる。
【0013】
プリンタエンジン部105は、プリンタコントローラ部103と所定の通信プロトコルによって通信を行ない、プリンタコントローラ部103からの指示によって、カセット210、または手差し用トレイ219のなかから給紙手段を決定し、印字開始指示によって上記のとおり給紙を開始し用紙をレジストシャッタ214まで搬送する。204はカートリッジであり、感光ドラム205及び、不図示のトナー保持部を有する。206はレーザドライバ、207は回転多面鏡、208は反射ミラー、209はビームディテクタである。レジストシャッタ214まで用紙が搬送されると、プリンタコントローラ部103から送られたイメージデータに応じてレーザドライバによってオンオフ駆動される不図示の半導体レーザから発射されるレーザビームは、回転多面鏡207により主走査方向に走査され反射ミラーを介して感光ドラム205上に導かれ結像し、主走査方向に走査して主走査ライン上に潜像を形成する。このレーザビームの発射に同期してレジストシャッタ214を上方に駆動し、用紙の搬送をレーザビームの副走査に同期させる。レーザビームの走査開始時に配置されたビームディテクタ209は、レーザビームを検出することによって主走査の画像書きだしタイミングを決定するための同期信号を形成し、プリンタコントローラ部103に送る。その後用紙は、搬送ローラ213によって搬送され、感光ドラムは不図示のモータによって回転駆動され、現像器220によってトナー像として顕像化された後、用紙上に転写される。トナー像が転写された用紙はその後、定着ローラ216によりトナー像が加熱定着され、搬送ローラ217を経て、排紙ローラ218によりプリンタ匡体の排紙トレイに排紙される。
【0014】
図3は、プリンタコントローラ部103の構成を示すブロック図である。
【0015】
同図において、302は外部機器101から送られるコードデータを受信するとともに外部機器101にステータス等のデータを送信するホストI/F部であり、後述する送信バッファに書き込まれたデータを外部機器101に送信する。
【0016】
307はRAMであり、受信したコードデータの入力バッファ、ページメモリCPU309のワークメモリとして用いられる。受信したコードデータは入力バッファに一時格納され、CPU309により中間コードに変換され、ページメモリに格納される。
【0017】
310は、EEPROMであり、ユーザが作成する外字データ及びフォームデータがダウンロードされる。304はROMであり、CPU309の動作プログラムや標準フォント等が格納されている。
【0018】
303は画像データ発生部であり、RAM307内のページメモリに格納された中間コードをビットマップデータに展開し、画像メモリ305に書き込む。DMA制御部308は画像メモリ305内のビットマップデータをエンジンI/F部306を介してプリンタエンジン部105に送出する。
【0019】
またCPU309は、エンジンI/F部306を介してステータス要求コマンドや給紙手段を指定するコマンド等をプリンタエンジン部に送り、プリンタエンジン部105は、これらのコマンドに応答して、コマンドに対応したステータスを返送する。かかるステータスには、エラーの種類、指定給紙手段等が含まれる。
【0020】
プリンタコントローラ部103は、上述したようにして得られたプリンタエンジン部105のステータスやROM304内の内蔵フォントやEEPROM310にダウンロードされているフォントに関する情報を送信ステータスとして外部機器101に送る機能を備えている。
【0021】
以下、かかる送信ステータスを送信するときのCPU309の動作を説明する。
【0022】
図6は簡略化のためホストコンピュータとのインターフェイスが1つと想定した本実施例の内容を示すフローチャートである。ホストコンピュータ101からのステータス要求があったり、ホストコンピュータ101に対してデータ送信を行なうイベントが印刷装置に発生した場合に、ホストI/F部302にある送信バッファに送信ステータスを必要バイト数分書き込み要求する(ステップS101)。ステップS101の送信バッファ書き込みにおいて、ホストコンピュータ101との通信状態、あるいはステータス送信の頻度などによって、送信バッファの状態は図5に示す(A)、(B)、(C)、(D)の4つのパターンがある。ステップS101において書き込み要求を行なった結果から、ステップS102において図5の(A)、(B)の様に送信データを全て書き込みできた場合(状態1)、図7のステップS201(これは別タスクにより処理を行なっている)でカウントを行なっているタイムアウト時間のリセットを行なう(ステップS103)。ここで、図5の(A)、(B)の状態を詳しく説明すると、この状態は発生したステータスが全て送信バッファに書き込み可能な場合で、(A)と(B)の違いは送信が正常に行なわれていて送信バッファに書き込み可能な場合か、データ送信不可能状態になってしまったが、送信バッファに書き込み可能な領域は十分空いていて書き込み可能な場合かの違いである。
【0023】
ステップS103においてリセット処理を行なった後、さらにステップS104において、書き込み要求したバイト数分のデータを全て書き込みできたかどうかを判断する。書き込み要求したバイト数分のデータを全て書き込みできた場合は、送信データを全て送信バッファに書き込みできているので、そのまま処理を終了する。逆にステップS104において一部分のみ書き込みできた場合は、送信は完了していないので、ステップS105において残りの書き込み要求バイト数を算出し、送信バッファへの書き込みデータの読み出し位置をずらして次回の書き込み準備を行なう。それから一旦別のタスクを起動して一定時間待って(ステップS106)から再び送信バッファに残りの送信データの書き込み要求を行なう(ステップS101)。通常では、1回で書き込みは可能となることが多いが、大量データを送信しようとした場合などはこのルーチンにより、複数回送信バッファへの書き込みを行ない、全ての送信データの書き込みが終了するまで処理を繰り返す。
【0024】
ステップS102において、送信バッファに書き込みできなかった場合、ステップS201においてカウントしているタイムアウト時間をRAM307により参照して(ステップS107)、そのタイムアウト時間がまだ送信タイムアウトとなるある閾値まで時間経過していない場合(ステップS108)、送信バッファへの書き込みはあきらめず(状態2)、一旦別のタスクを起動して一定時間待って(ステップS106)から再び送信バッファに残りの送信データの書き込み要求を行なう(ステップS101)。状態2に対応する状態は図5の(C)に示す状態で、送信バッファがフル状態になったが、あらかじめ設定しているタイムアウト時間まで経過していないので、一時的に送信不可能状態だと判断して送信バッファへの書き込みをある一定時間リトライする。送信状態が変化せず、送信バッファに書き込みできない状態が続いた場合、タイムアウト時間が来るまで上記動作を繰り返す。
【0025】
ステップS108において、タイムアウト時間になってしまった場合(状態3)、送信データを捨てて処理を終了するタイムアウト処理を実行する(ステップS109)。ここで示す状態3は図5(D)に示すように、送信バッファへの書き込みできない状態があらかじめ設定した時間に達して、現在の環境では印刷装置からの送信は不可能な状態であると判断した場合である。
【0026】
このように、タイムアウトが発生した状態においてデータの送信に係るイベントが発生した場合、一度だけ送信バッファへの書き込み要求を行ない、それでも書き込みができない場合に、すぐあきらめてデータを捨てるよう動作する(ステップS108からステップS106に行くことなくステップS109に進む)。このため、他の処理を中断させることなく、あたかも送信が行なわれているかのように動作をすることができる。そして送信可能になったら、状態2、状態3のどちらかの状態からでも、直ちに送信を再開することができるので、ホストコンピュータを始めとするさまざまなデバイス機器と印刷装置との通信状態に合わせた最適な動作は何かを判断して、データ送信を行なうことが可能となる。
【0027】
(実施例2)
実施例1においてはインターフェイスを1つに限定したが、複数のインターフェイスについてそれぞれ上記タイムアウト判断を行なっても良い。同じ送信データを複数のポートに送信するような状況の場合、それぞれのポートごとに、タイムアウト発生状態などを判断するようにする。たとえば、シリアルポートが双方向通信不可能な状態で、パラレルポートは双方向通信可能な状態であるような場合、双方向通信不可能なシリアルポートのみタイムアウト状態に移行して、双方向の通信を行なわず、双方向可能なパラレルポートのみ双方向通信を行ない、その他の処理は円滑に行なえるようにしてもよい。
【0028】
(実施例3)
実施例1においてはタイムアウト処理を送信データを捨てて終了するとしたが、送信バッファにクリアにすることにより、送信バッファへの書き込みを可能にするとしても良い。また、送信バッファの内容を全て消してしまうのではなく、古い情報から消していき、必要な容量のみ空きを作るようにしても良い。
【0029】
(実施例4)
実施例1においてはタイムアウト発生後に書き込み要求があった場合、送信バッファに書き込みを1回のみトライしてそれでも書き込みできない場合は、タイムアウト処理を実行しているが、タイムアウト発生時に、より短かいタイムアウト時間を設定することにより、通常のタイムアウト時間よりも短いある一定時間リトライするようにしても良い。
【0030】
(実施例5)
実施例1においては時間を計測してある一定時間内処理を実行するようにしたいが、時間ではなくリトライ回数を設定して閾値を全て回数で行なうようにしても良い。
【0031】
【発明の効果】
上述したように、本発明に関わる印刷装置は、印刷装置が双方向通信が不可能なホストコンピュータを始めとするデバイス機器と接続されている場合、あるいはホストコンピュータが一時的にデータ受信できない様な場合においても、それぞれの状況に対する適切な動作はどうであるかを判断し、実行可能な印刷装置の処理は中断せず、双方向不可能な場合には印刷装置からのデータ送信のみを中断して、印刷装置本来の印刷処理をスムーズに実行できる印刷装置を提供することが可能となる。
【図面の簡単な説明】
【図1】本発明が適用されるプリンタを含むシステムの全体構成を示すブロック図である。
【図2】本発明が適用されるプリンタの機構模式図である。
【図3】本発明が適用されるプリンタコントローラの電気的構成を示すブロック図である。
【図4】実施例1において印刷装置の送信バッファが書き込み不可能状態になる原因を示した図である。
【図5】実施例1において、印刷装置とホストコンピュータとの通信状態の変化に対応した送信バッファへの書き込み方法の変化を示す図である。
【図6】実施例1において、印刷装置とホストコンピュータとの通信状態の変化に対応した送信バッファへの書き込み方法の一例を示したフローチャートである。
【図7】実施例1において、タイムアウト時間のカウントを実行する一例を示したフローチャートである。
【符号の説明】
101 外部機器(ホストコンピュータ)
102 レーザビームプリンタ
103 プリンタコントローラ部
104 パネル部
105 プリンタエンジン部
302 ホストI/F部
309 CPU[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a printing apparatus that can transmit data to a host computer or another device, and more particularly to a printing apparatus that is preferably implemented when performing bidirectional communication with a host computer or the like.
[0002]
[Prior art]
In the conventional printing apparatus, the communication between the printing apparatus and other devices such as the host computer has overwhelmingly more data transmission in one direction and very little data transmission in the opposite direction. In particular, data transmission from the printing apparatus to the host computer is hardly performed, and transmission of print data and control data from the host computer to the printing apparatus is mostly performed.
[0003]
However, the status information of the printing device is frequently sent to the host computer, so that the user operating the host computer can be notified of the status of the printing device, or remote operation of the printing device can be performed from the host computer. The ratio of the data amount of data communication with various device devices surrounding the printing apparatus is changing.
[0004]
Since conventional printers do not assume such bi-directional communication, all transmission data from the printer is transmitted in the same way as the host computer so that it is not missed. Even if data cannot be received, the data transmission from the printing apparatus is performed without giving up.
[0005]
[Problems to be solved by the invention]
However, in a printing apparatus that does not assume bidirectional communication as described above, for example, in an environment in which a plurality of host computers are connected to one printing apparatus in a network environment or the like, a certain host computer performs bidirectional communication. If a host computer does not have an application that supports bi-directional communication, copy the status request data used on the host computer that supports bi-directional communication. For example, transmission from a host computer that does not support bidirectional communication is highly conceivable. If the user frequently performs such use, the host computer does not receive the data transmitted from the printing apparatus, so that the transmission buffer of the printing apparatus becomes full and cannot be written to the transmission buffer. However, since the printing apparatus does not give up data transmission until transmission is possible, there is a problem that other processing such as further data reception and command analysis processing is interrupted.
[0006]
Even in a host computer equipped with an application that supports bi-directional communication, the host computer performs heavy processing such as file access for a long time, the input / output port is not controlled, and data from the printing device When reception cannot be performed, the printing apparatus tries to execute data transmission until data transmission is possible, and other processing is stopped.
[0007]
As mentioned in the above example, when bi-directional communication between the printing device and the device such as the host computer is not successful, there are two cases: physically impossible and temporarily unable to transmit / receive. It can be roughly divided. These environments can be in the states shown in FIGS. 4 (A) and 4 (B).
[0008]
In view of the above points, the object of the present invention is to connect to a device such as a host computer that cannot perform two-way communication, or even when the host computer cannot receive data temporarily. , Determine what is the appropriate operation for each situation, and do not interrupt the processing of the executable printing device, if it is not possible to bidirectionally, only the data transmission from the printing device is interrupted, printing It is an object of the present invention to provide a printing apparatus capable of smoothly executing the original printing process of the apparatus.
[0009]
[Means for Solving the Problems]
In order to solve the above-described problem, the printing apparatus of the present invention provides:
A transmission buffer in which transmission data to be transmitted to an external device is written;
A discriminating means for discriminating whether or not writing to the transmission buffer has been completed;
If it is determined by the determining means that writing is not possible, it is determined whether a timeout has occurred, if it is determined that a timeout has occurred, the transmission data is discarded and the process is terminated. When a write request is made to the transmission buffer and the determination means determines that writing has been completed, the timeout time is reset, it is determined whether all writing has been completed, and it is determined that all writing has been completed. In this case, the processing unit is terminated, and when it is determined that all writing is impossible, there is a means for waiting for a predetermined time, making a write request to the transmission buffer, and causing the determination unit to determine.
Moreover, the printing apparatus of the present invention includes:
A transmission buffer in which transmission data to be transmitted to an external device is written;
A discriminating means for discriminating whether or not writing to the transmission buffer has been completed;
If it is determined by the determining means that writing is not possible, it is determined whether a timeout has occurred, if it is determined that a timeout has occurred, the transmission data is discarded and the process is terminated. When a write request is made to the transmission buffer and the determination means determines that writing has been completed, the timeout time is reset, it is determined whether all writing has been completed, and it is determined that all writing has been completed. If it is determined that all data cannot be written, the remaining number of write request data is calculated, the read position of the write data to the transmission buffer is shifted, and the next write preparation is performed, and a certain time is waited. A means for making a write request to the transmission buffer and causing the determination means to determine Characterized in that it.
Further, the writing method to the buffer in the printing apparatus of the present invention,
A method of writing to a buffer in a printing apparatus having a transmission buffer in which transmission data to be transmitted to an external device is written,
A determination step of determining whether or not writing to the transmission buffer was possible;
If it is determined in the determination step that writing cannot be performed, it is determined whether a time-out has occurred.If it is determined that a time-out has occurred, the transmission data is discarded and the process is terminated. , Make a write request to the transmission buffer, let the discrimination step discriminate, and if it is discriminated by the discrimination step that the write has been completed, reset the timeout time, determine whether all have been written, and determine that all have been written In this case, the process is terminated, and when it is determined that all the data cannot be written, there is a step of waiting for a certain time, making a write request to the transmission buffer, and causing the determination step to determine.
Further, the writing method to the buffer in the printing apparatus of the present invention,
A method of writing to a buffer in a printing apparatus having a transmission buffer in which transmission data to be transmitted to an external device is written,
A determination step of determining whether or not writing to the transmission buffer was possible;
If it is determined in the determination step that writing cannot be performed, it is determined whether a time-out has occurred.If it is determined that a time-out has occurred, the transmission data is discarded and the process is terminated. , Make a write request to the transmission buffer, let the discrimination step discriminate, and if it is discriminated by the discrimination step that the write has been completed, reset the timeout time, determine whether all have been written, and determine that all have been written If it is determined that all data cannot be written, the remaining number of write request data is calculated, the read position of the write data to the transmission buffer is shifted, and the next write preparation is performed, and a certain time is waited. Then, a write request is made to the transmission buffer, and the determination step is performed. And having a step of.
[0010]
DETAILED DESCRIPTION OF THE INVENTION
(Example 1)
A first embodiment of the present invention will be described.
[0011]
FIG. 1 shows a system configuration including the printer of this embodiment. In FIG. 1, 101 is an external device such as a host computer, and 102 is a laser beam printer to which this embodiment is applied. A
[0012]
FIG. 2 is a schematic diagram of the mechanism of the printer of this embodiment. In the figure, 201 is a printer housing and 202 is an operation panel. The
[0013]
The
[0014]
FIG. 3 is a block diagram illustrating a configuration of the
[0015]
In FIG. 3,
[0016]
A
[0017]
310 is an EEPROM, and external character data and form data created by the user are downloaded. A
[0018]
An image
[0019]
Further, the
[0020]
The
[0021]
Hereinafter, the operation of the
[0022]
FIG. 6 is a flowchart showing the contents of this embodiment assuming that there is one interface with the host computer for the sake of simplicity. When there is a status request from the
[0023]
After performing the reset process in step S103, it is further determined in step S104 whether all the data for the number of bytes requested to be written have been written. If all the data for the number of bytes requested to be written can be written, all of the transmission data has been written to the transmission buffer, so the processing ends. On the other hand, if only a part can be written in step S104, transmission has not been completed. In step S105, the remaining number of write request bytes is calculated, and the read position of the write data to the transmission buffer is shifted to prepare for the next write. To do. Then, another task is activated once and waits for a predetermined time (step S106), and then a request for writing the remaining transmission data in the transmission buffer is made again (step S101). Normally, writing can often be performed once, but when a large amount of data is to be transmitted, this routine is used to write to the transmission buffer multiple times until all transmission data has been written. Repeat the process.
[0024]
In step S102, when writing to the transmission buffer is not possible, the time-out time counted in step S201 is referred to by the RAM 307 (step S107), and the time-out time has not yet elapsed to a certain threshold value that becomes the transmission time-out. In this case (step S108), the writing to the transmission buffer is not given up (state 2), and another task is started once and waits for a predetermined time (step S106), and then a request for writing the remaining transmission data to the transmission buffer is made again (step S106). Step S101). The state corresponding to state 2 is the state shown in FIG. 5C, and the transmission buffer has become full, but since the preset timeout period has not elapsed, it is temporarily incapable of transmission. And write to the transmission buffer is retried for a certain time. When the transmission state does not change and the state where writing to the transmission buffer cannot be continued continues, the above operation is repeated until the timeout time comes.
[0025]
In step S108, when the time-out time is reached (state 3), a time-out process is executed to discard the transmission data and end the process (step S109). In state 3 shown here, as shown in FIG. 5D, it is determined that transmission from the printing apparatus is impossible in the current environment because the state in which writing to the transmission buffer cannot be performed has reached a preset time. This is the case.
[0026]
In this way, when an event relating to data transmission occurs in the state where timeout has occurred, a write request to the transmission buffer is made only once, and if it still cannot be written, it gives up immediately and discards data (step) The process proceeds from step S108 to step S109 without going to step S106). Therefore, it is possible to operate as if transmission is being performed without interrupting other processing. When transmission becomes possible, transmission can be resumed immediately from either state 2 or state 3, so that it matches the communication state between the various device devices including the host computer and the printing apparatus. It is possible to determine the optimum operation and perform data transmission.
[0027]
(Example 2)
In the first embodiment, the number of interfaces is limited to one, but the above timeout determination may be performed for each of a plurality of interfaces. In a situation where the same transmission data is transmitted to a plurality of ports, a timeout occurrence state or the like is determined for each port. For example, when the serial port is not capable of bidirectional communication and the parallel port is capable of bidirectional communication, only the serial port that is not capable of bidirectional communication is shifted to the timeout state to enable bidirectional communication. Instead, the bidirectional communication may be performed only for the parallel port capable of bidirectional communication, and other processing may be performed smoothly.
[0028]
(Example 3)
In the first embodiment, the timeout process is terminated by discarding the transmission data, but writing to the transmission buffer may be enabled by clearing the transmission buffer. Further, instead of erasing all the contents of the transmission buffer, the old information may be erased so that only a necessary capacity is created.
[0029]
(Example 4)
In the first embodiment, when there is a write request after the occurrence of timeout, if the write is tried once in the transmission buffer and writing is still impossible, timeout processing is executed. May be set to retry for a certain time shorter than the normal timeout time.
[0030]
(Example 5)
In the first embodiment, it is desired to measure the time and execute the processing within a certain period of time. However, instead of the time, the number of retries may be set and the threshold value may be set to the number of times.
[0031]
【The invention's effect】
As described above, the printing apparatus according to the present invention is such that the printing apparatus is connected to a device device such as a host computer that cannot perform bidirectional communication, or the host computer cannot receive data temporarily. Even in such cases, it is determined what is the appropriate operation for each situation, and the processing of the executable printing device is not interrupted. If the bidirectional operation is impossible, only data transmission from the printing device is interrupted. Thus, it is possible to provide a printing apparatus that can smoothly execute the printing process inherent to the printing apparatus.
[Brief description of the drawings]
FIG. 1 is a block diagram showing an overall configuration of a system including a printer to which the present invention is applied.
FIG. 2 is a schematic diagram of a printer mechanism to which the present invention is applied.
FIG. 3 is a block diagram showing an electrical configuration of a printer controller to which the present invention is applied.
FIG. 4 is a diagram illustrating the cause of the transmission buffer of the printing apparatus being in a writable state in the first embodiment.
FIG. 5 is a diagram illustrating a change in a writing method to a transmission buffer corresponding to a change in a communication state between a printing apparatus and a host computer in the first embodiment.
6 is a flowchart illustrating an example of a writing method to a transmission buffer corresponding to a change in a communication state between a printing apparatus and a host computer in Embodiment 1. FIG.
FIG. 7 is a flowchart illustrating an example of executing timeout time counting in the first embodiment.
[Explanation of symbols]
101 External device (host computer)
102
Claims (5)
前記送信バッファに書き込みができたか判別する判別手段と、
前記判別手段により書き込みができないと判別された場合、タイムアウトになったか判別し、タイムアウトになったと判別された場合、送信データを捨てて処理を終了し、タイムアウトになったと判別されない場合、一定時間待ち、送信バッファに書き込み要求を行い、前記判別手段に判別させ、前記判別手段により書き込みができたと判別された場合、タイムアウト時間をリセットし、全て書き込みができたか判定し、全て書き込みができたと判定された場合、処理を終了し、全て書き込みができないと判定された場合、一定時間待ち、送信バッファに書き込み要求を行い、前記判別手段に判別させる手段とを有することを特徴とする印刷装置。A transmission buffer in which transmission data to be transmitted to an external device is written;
A discriminating means for discriminating whether or not writing to the transmission buffer has been completed;
If it is determined by the determining means that writing cannot be performed, it is determined whether a time-out has occurred. When a write request is made to the transmission buffer and the determination means determines that writing has been completed, the timeout time is reset, it is determined whether all writing has been completed, and it is determined that all writing has been completed. In this case, the printing apparatus includes: a unit that waits for a certain period of time when the process ends and it is determined that all writing is not possible, makes a write request to the transmission buffer, and causes the determination unit to determine.
前記送信バッファに書き込みができたか判別する判別手段と、
前記判別手段により書き込みができないと判別された場合、タイムアウトになったか判別し、タイムアウトになったと判別された場合、送信データを捨てて処理を終了し、タイムアウトになったと判別されない場合、一定時間待ち、送信バッファに書き込み要求を行い、前記判別手段に判別させ、前記判別手段により書き込みができたと判別された場合、タイムアウト時間をリセットし、全て書き込みができたか判定し、全て書き込みができたと判定された場合、処理を終了し、全て書き込みができないと判定された場合、残りの書き込み要求データ数を算出し、送信バッファへの書き込みデータの読み出し位置をずらして次回の書き込み準備を行い、一定時間待ち、送信バッファに書き込み要求を行い、前記判別手段に判別させる手段とを有することを特徴とする印刷装置。A transmission buffer in which transmission data to be transmitted to an external device is written;
A discriminating means for discriminating whether or not writing to the transmission buffer has been completed;
If it is determined by the determining means that writing is not possible, it is determined whether a timeout has occurred, if it is determined that a timeout has occurred, the transmission data is discarded and the process is terminated. When a write request is made to the transmission buffer and the determination means determines that writing has been completed, the timeout time is reset, it is determined whether all writing has been completed, and it is determined that all writing has been completed. If it is determined that all data cannot be written, the remaining number of write request data is calculated, the read position of the write data to the transmission buffer is shifted, and the next write preparation is performed, and a certain time is waited. A means for making a write request to the transmission buffer and causing the determination means to determine Printing apparatus characterized by.
前記送信バッファに書き込みができたか判別する判別ステップと、
前記判別ステップにより書き込みができないと判別された場合、タイムアウトになったか判別し、タイムアウトになったと判別された場合、送信データを捨てて処理を終了し、タイムアウトになったと判別されない場合、一定時間待ち、送信バッファに書き込み要求を行い、前記判別ステップに判別させ、前記判別ステップにより書き込みができたと判別された場合、タイムアウト時間をリセットし、全て書き込みができたか判定し、全て書き込みができたと判定された場合、処理を終了し、全て書き込みができないと判定された場合、一定時間待ち、送信バッファに書き込み要求を行い、前記判別ステップに判別させるステップとを有することを特徴とする印刷装置におけるバッファへの書き込み方法。A method of writing to a buffer in a printing apparatus having a transmission buffer in which transmission data to be transmitted to an external device is written,
A determination step of determining whether or not writing to the transmission buffer was possible;
If it is determined in the determination step that writing cannot be performed, it is determined whether a time-out has occurred.If it is determined that a time-out has occurred, the transmission data is discarded and the process is terminated. , Make a write request to the transmission buffer, let the discrimination step discriminate, and if it is discriminated by the discrimination step that the write has been completed, reset the timeout time, determine whether all have been written, and determine that all have been written If it is determined that all the data cannot be written, the process waits for a certain period of time, makes a write request to the transmission buffer, and causes the determination step to make a determination. Writing method.
前記送信バッファに書き込みができたか判別する判別ステップと、
前記判別ステップにより書き込みができないと判別された場合、タイムアウトになったか判別し、タイムアウトになったと判別された場合、送信データを捨てて処理を終了し、タイムアウトになったと判別されない場合、一定時間待ち、送信バッファに書き込み要求を行い、前記判別ステップに判別させ、前記判別ステップにより書き込みができたと判別された場合、タイムアウト時間をリセットし、全て書き込みができたか判定し、全て書き込みができたと判定された場合、処理を終了し、全て書き込みができないと判定された場合、残りの書き込み要求データ数を算出し、送信バッファへの書き込みデータの読み出し位置をずらして次回の書き込み準備を行い、一定時間待ち、送信バッファに書き込み要求を行い、前記判別ステップに判別させるステップとを有することを特徴とする印刷装置におけるバッファへの書き込み方法。A method of writing to a buffer in a printing apparatus having a transmission buffer in which transmission data to be transmitted to an external device is written,
A determination step of determining whether or not writing to the transmission buffer was possible;
If it is determined in the determination step that writing cannot be performed, it is determined whether a time-out has occurred.If it is determined that a time-out has occurred, the transmission data is discarded and the process is terminated. , Make a write request to the transmission buffer, let the discrimination step discriminate, and if it is discriminated by the discrimination step that the write has been completed, reset the timeout time, determine whether all have been written, and determine that all have been written If it is determined that all data cannot be written, the remaining number of write request data is calculated, the read position of the write data to the transmission buffer is shifted, and the next write preparation is performed, and a certain time is waited. Then, a write request is made to the transmission buffer, and the determination step is performed. How writing to the buffer in the printing apparatus characterized by comprising a step of.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP17737395A JP3706657B2 (en) | 1995-07-13 | 1995-07-13 | Printing apparatus and method for writing to buffer in printing apparatus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP17737395A JP3706657B2 (en) | 1995-07-13 | 1995-07-13 | Printing apparatus and method for writing to buffer in printing apparatus |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH0924660A JPH0924660A (en) | 1997-01-28 |
JP3706657B2 true JP3706657B2 (en) | 2005-10-12 |
Family
ID=16029824
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP17737395A Expired - Fee Related JP3706657B2 (en) | 1995-07-13 | 1995-07-13 | Printing apparatus and method for writing to buffer in printing apparatus |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3706657B2 (en) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5338595B2 (en) * | 2009-09-28 | 2013-11-13 | 株式会社Jvcケンウッド | Data processing method and data processing apparatus |
JP5338594B2 (en) * | 2009-09-28 | 2013-11-13 | 株式会社Jvcケンウッド | Data receiving method, data transmitting / receiving system, and data receiver |
JP6478646B2 (en) * | 2015-01-09 | 2019-03-06 | シチズン時計株式会社 | Printer, relay device, transmission mode switching method, and transmission mode switching program |
JP2018122531A (en) | 2017-02-01 | 2018-08-09 | コニカミノルタ株式会社 | Image processing device, image formation apparatus, image processing system, control method of image processing device and control program of image processing device |
-
1995
- 1995-07-13 JP JP17737395A patent/JP3706657B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH0924660A (en) | 1997-01-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4988980B2 (en) | Printing apparatus, control method, and storage medium | |
JP3814342B2 (en) | Image processing apparatus and control method thereof | |
JP2007098590A (en) | Image forming device | |
US6353484B2 (en) | Output control apparatus and method and storage medium storing computer readable program | |
JP3286111B2 (en) | Printing apparatus and method | |
US6903832B2 (en) | Output control apparatus, output control method and memory medium storing program readable by computer | |
JPH11296046A (en) | Printing controller, printing processing method thereof, and computer readable storage medium storing program | |
US5418904A (en) | Image forming system | |
JP3706657B2 (en) | Printing apparatus and method for writing to buffer in printing apparatus | |
KR20050059990A (en) | Printing system, control method therefor, and printing method, host apparatus, and printer used therewith | |
JP2007055024A (en) | Printing apparatus | |
JPH11115280A (en) | Printer | |
JP4677229B2 (en) | Printing apparatus and printing method | |
JP3634511B2 (en) | Image forming apparatus, control apparatus therefor, and control method therefor | |
JP2005131809A (en) | Printer | |
US5303335A (en) | Image forming apparatus | |
JPH09319532A (en) | Device and method for controlling printing | |
JP3080310B2 (en) | Document processing device | |
JP2004195872A (en) | Image recording apparatus | |
JP2006157565A (en) | Image processing apparatus | |
JP2008003912A (en) | Host base printing system | |
JPH08314645A (en) | Device, system, and method for printing, and information processor | |
JPH10340011A (en) | Image forming device and method | |
JPH10105508A (en) | Information processor and image forming device | |
JP2004066787A (en) | Image recorder, method of controlling the same, medium providing control program, and control program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20040930 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20041026 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20041224 |
|
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: 20050719 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20050801 |
|
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: 20080805 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090805 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090805 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100805 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110805 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120805 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120805 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130805 Year of fee payment: 8 |
|
LAPS | Cancellation because of no payment of annual fees |