JP3055313B2 - プリンタ装置 - Google Patents
プリンタ装置Info
- Publication number
- JP3055313B2 JP3055313B2 JP4183300A JP18330092A JP3055313B2 JP 3055313 B2 JP3055313 B2 JP 3055313B2 JP 4183300 A JP4183300 A JP 4183300A JP 18330092 A JP18330092 A JP 18330092A JP 3055313 B2 JP3055313 B2 JP 3055313B2
- Authority
- JP
- Japan
- Prior art keywords
- port
- data
- reception
- buffer
- current
- 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
Landscapes
- Accessory Devices And Overall Control Thereof (AREA)
Description
装置(コンピュータやワードプロセッサなど)による共
用が可能に構成されたプリンタ装置に関する。
部データ処理装置と接続するために、例えばシリアルポ
ートやパラレルポートなどの種々のインタフェース仕様
の複数のポートが設けられている。
ータ/制御コマンドデータ)を受信すると、プリンタ装
置の内部では、受信したデータをバッファに一時的に格
納する受信処理が実行される。そして、受信処理と並行
して、バッファからデータを逐次読出して制御コマンド
を解析するとともに、必要に応じてデータ変換を行って
作像機構を制御するプリント処理が実行される。
リントデータを受信すると、他のポートによる受信を禁
止するように構成されていた。つまり、従来のプリンタ
装置では、1つの外部データ処理装置との通信を開始す
ると、その通信を終了させるための制御コマンド(ジョ
ブエンドと呼称される)を受信するまで、他の外部デー
タ処理装置との通信が停止される。
装置側の受信処理速度に比べて、外部データ処理装置側
の送信処理速度が遅い場合には、プリンタ装置側でプリ
ントデータの到着を待つという受信待ち状態が発生す
る。
処理を行っていないにもかかわらず、他の外部データ処
理装置によるプリンタ装置の利用が制限されてしまう。
そのため、利用が制限された時間だけ、複数の外部デー
タ処理装置からプリントデータを順次受信してプリント
する一連の処理(各外部データ処理装置のそれぞれに対
応した複数のジョブの実行)の合計所要時間が長くな
り、プリンタ装置及び複数の外部データ処理装置から構
成されるプリントシステムの稼働率の低下を招いてい
た。
態の実質上の無処理時間をできるだけ減少させてプリン
タ装置の使用効率を向上させることを目的としている。
置は、上述の課題を解決するため、プリントデータの受
信のための複数のポートを有し、複数の外部データ処理
装置による共用が可能に構成されたプリンタ装置であっ
て、受信動作中のポートであるカレントポートへのプリ
ントデータの入力を待つ受信待ち状態になったときに、
他のポートを受信可能状態とし、その後に他のポートが
プリントデータを受信したときに、他のポートが受信し
たプリントデータをバッファに格納し、再びカレントポ
ートがプリントデータを受信したときに他のポートによ
る受信を中断した後にカレントポートによる受信を再開
するように構成されてなる。
において最初にプリントデータを受信したポートがカレ
ントポートとされる。カレントポートについては、それ
が受信したプリントデータをバッファに格納する受信処
理が開始される。
理は1つのジョブが終了するまで連続的に行われる。し
かし、受信や解析などの処理をすべきデータの無い受信
待ち状態になったときには、受信処理が中断されること
がある。
ブにおいて、外部データ処理装置が1ページずつ順にプ
リントデータを送出する場合に、プリンタ装置側では各
ページ間で次のページのプリントデータの入力を待つと
いう受信待ち状態が発生する。受信待ち時間は外部デー
タ処理装置の送出処理速度に依存する。
トによる受信が許可される。すなわち他のポートもカレ
ントポートと同様に受信可能状態とされる。これにより
外部からみたプリンタ装置の状態は待機状態と同一にな
る。
プリントデータを受信したときには、カレントポートに
対応した受信処理に割り込む形で、当該他のポートに対
応した受信処理が行われる。そして、カレントポートに
対応した受信処理は、カレントポートが再びプリントデ
ータを受信したときに再開される。
構成を示すブロック図である。プリントシステムPS
は、ページプリンタ1及びこれをプリント出力装置とし
て共用する3台のデータ処理装置A,B,Cから構成さ
れている。
よりハードコピー画像を形成するビットマップ方式のプ
リンタ装置である。ページプリンタ1のプリント機構部
は、プリントヘッド50、作像ユニット60、給紙ユニ
ット70、画像データインタフェース41、プリンタイ
ンタフェース42、及びプリンタインタフェース制御部
45から構成されている。また、ページプリンタ1の制
御部は、CPU(中央処理装置)10、プログラムRO
M21、データROM22、及びRAM23から構成さ
れている。
タ処理装置A,B,Cをそれぞれ接続するための3つの
ポート、すなわちAポート11、Bポート12、及びC
ポート13が設けられている。例えば、Aポート11は
汎用のシリアルポートであり、Bポート12は汎用のパ
ラレルポートであり、Cポート13は特定インタフェー
ス仕様の入出力ポートである。
の記憶エリアを区分することにより、各ポート11〜1
3にそれぞれ対応した3つのバッファ(Aバッファ3
1、Bバッファ32、Cバッファ33)と、これらバッ
ファ31〜33の内のアクセス対象のバッファを示すパ
ラメータを記憶するエリア(以下、「Xバッファ」とい
う)30とが設けられている。
ータ(以下、「データ」という)は、図示しないデータ
バスを介して、それぞれに対応する各バッファ31〜3
3に格納され、その後に逐次読み出されてプリントヘッ
ド50の制御に用いられる。
うに、ポート数と同数(本実施例では3つ)のエリアを
有し、各エリアにパラメータを1つずつ順に格納するよ
うに構成されたいわゆるリング状バッファである。Xバ
ッファ30の各エリアの内、アクセス対象のエリア(以
下、「アクセスエリア」という)はポインタによって示
される。電源投入直後の初期化において、Xバッファ3
0の全てのエリアには、無効データ(図では「Nul
l」)が格納される。
示すメインフローチャートである。図2において、ま
ず、CPU10は、全てのポート11〜13をアクティ
ブ(受信可能状態)にしてデータの受信を待つ(#1
1,#12)。
タを受信すると、データを受信したポート(ここでは、
Aポート11とする)をカレントポートとして記憶す
る。具体的には、図5(b)に示すように、Xバッファ
30のアクセスエリアにAポート11に対応したパラメ
ータ「A」を格納する(#13)。そして、CPU10
はカレントポート以外の各ポートをインアクティブ(受
信拒否状態)にする(#14)。すなわちBポート12
及びCポート13による受信を停止する。
応したバッファであるカレントバッファ内のデータの有
無をチェックする(#15)。なお、カレントバッファ
には後述の受信処理によってデータが格納される。
は、図3に示すように、CPU10は、カレントバッフ
ァから所定量のデータを読み出す(#22)。データの
読出しに続いて、CPU10は、カレントポートの状態
チェックを行う(#23)。つまり、カレントポート
が、カレントバッファの満杯時の処置として、受信処理
によってインアクティブとされたか否かをチェックす
る。
PU10は直ちにメイン処理を実行する(#26)。す
なわち、CPU10は、実質上のプリント処理として、
読み出したデータの解析やデータ変換を行うとともに、
解析した制御コマンドに応じてプリント機構部の動作を
制御する。これにより、データ処理装置Aの要求したプ
リントが開始される。
ある場合には、CPU10は、データの読出しによって
カレントバッファに所定の空きエリアが生じたときは、
カレントポートをアクティブに復帰させた後にメイン処
理を実行し、カレントバッファが依然として満杯又はそ
れに近い状態であるときは、カレントポートをインアク
ティブとしたままメイン処理を実行する(#24,2
5)。
信の有無にかかわらず、カレントバッファにデータが残
っている限りは(#27,#15、又は#27,#2
8)、データの読出し(#22)及びメイン処理(を2
6)を繰り返し実行する。
トバッファ内のデータを全て読み出した後に、CPU1
0は所定のウエイトタイムの経過を待つ(#29)。こ
れは、プリントシステムPSのように複数のデータ処理
装置が1台のプリント装置を共用するシステムにおいて
は、同一のデータ処理装置が連続的にプリント装置を使
用することが多いという経験則に基づいて、カレントポ
ートに接続されたデータ処理装置Aによる再度のページ
プリンタ1の使用を、他のデータ処理装置B,Cによる
使用に対して優先させるための配慮である。
受信がなければ、Xバッファ30のアクセスエリアを初
期化してポインタを1つ進める(#30)。つまり、現
時点のカレントポートの設定を解除するとともに、ポイ
ンタを現時点のアクセスエリアの次のエリアを示すよう
更新する。
新たなアクセスエリアが空き状態(格納データが無効デ
ータである状態)の場合、すなわち後述の割込み受信が
行われていない場合には、CPU10はページプリンタ
1を待機状態とする。これに対して、Xバッファ30の
アクセスエリアが空き状態でない場合には、アクセスエ
リアのパラメータに対応したポートを新たなカレントポ
ートとし、上述の処理と同様の内容の処理を実行する。
前の段階、すなわちジョブエンドを受信する以前の段階
でカレントバッファが完全に空き状態になる場合があ
る。つまり、受信待ち状態が発生する場合がある。
合には、ステップ#15のチェックの結果がノーにな
る。この場合、CPU10は、受信待ち状態の発生した
時点で2つのタイマカウンタによる計時を開始する(図
示は省略した)。
イマ)は、1つのジョブに対する受信待ち時間を制限す
ることによって、通信障害などのトラブルに起因して受
信待ち時間が長期化するのを避けるために設けられ、そ
の設定時間は例えば2〜5sである。また、他方のタイ
マカウンタ(割込みタイマ)は、受信待ち状態の発生か
ら一定時間後に割込み受信を許可することによって、受
信待ち時間の有効利用を図るために設けられ、その設定
時間は例えば数msであってジョブタイマの設定時間に
比べて極めて短い。
イマのそれぞれについて、タイムアウトになるまで計時
を続ける(#16〜#19)。受信待ち状態の発生から
間もなく割込みタイマがタイムアウトになる。割込みタ
イマのタイムアウトに呼応して、直ちにCPU10は全
てのポート11〜13をアクティブにする(#21)。
これにより、データ処理装置B及びデータ処理装置Cに
よるページプリンタ1の使用制限が解除され、外部から
みたページプリンタ1の状態は通信の可否の面で待機状
態と同一の状態になる。
置B又はデータ処理装置Cがデータを送信した場合に
は、CPU10は、割込み受信の処理として、後述のよ
うにBポート12又はCポート13を介して受信したデ
ータをそれぞれに対応するBバッファ32又はCバッフ
ァ33に格納する。なお、この場合にはデータの読出し
及びメイン処理は実行しない。
定時間が経過してジョブタイマがタイムアウトになる
と、CPU10は、受信待ちを打ち切るためにジョブエ
ンドを発して強制的にジョブ自体を終了させる。
受信処理はデータの受信に呼応して適時に実行される。
つまり、受信処理ルーチンは、各ポート11〜13の
内、アクティブのポートがデータを受信したときに実行
される割込みルーチンである。
ート(受信ポート)がカレントポートであるか他のポー
トであるかということをチェックする(#51)。受信
ポートがカレントポートであれば、CPU10は、続い
て割込み受信フラグの状態チェックを行う(#52)。
の場合には、CPU10は、カレントバッファに空きが
あればデータを格納し、空きがなければカレントポート
をインアクティブにする(#60〜#62)。
は、CPU10は、カレントポート以外のポートをイン
アクティブにして割込み受信を停止し、割込み受信フラ
グをオフにし、Xバッファ30のポインタを以前の状態
(カレントポートを記憶するエリアを示す状態)に戻す
という一連の処理(#53〜#54)を実行し、その後
にバッファの状態に応じてデータの格納又はポートの状
態変更を行う(#60〜#62)。
ポートである場合(ステップ#51でノーの場合)も、
CPU10は、割込み受信フラグの状態チェックを行う
(#56)。
合、すなわち既に割込み受信を行っている場合には、C
PU10は直ちにバッファの状態に応じてデータの格納
又はポートの状態変更を行う(#60〜#62)。
場合、すなわち割込み受信が行なわれていない場合に
は、CPU10は、カレントポート及び受信ポート以外
のポートをインアクティブにし、割込み受信フラグをオ
ンにし、Xバッファ30のポインタを更新して受信ポー
トを記憶するという一連の処理(#57〜#59)を実
行し、その後にバッファの状態に応じてデータの格納又
はポートの状態変更を行う(#60〜#62)。
U10が受信ポートとともにカレントポートをアクティ
ブにすることにより、カレントポートによる受信を随時
に再開することができる。
リンタ1では、受信待ちの状態になったときには、カレ
ントポートとともに他のポートが受信可能状態となり、
その状態で他のポートがデータを受信すると、他のポー
トに対する割込み受信が行われる。
取扱いを中心に、CPU10の動作をより具体的に説明
する。本実施例のページプリンタ1においては、Xバッ
ファ30及びポインタの取扱いが次のように規定されて
いる。
記憶に際して、アクセスエリアに無効データ(Nul
l)が格納されているときは、いわゆる上書きの形でパ
ラメータの格納を行う。これに対して、アクセスエリア
に有効データ(パラメータ)が格納されているときは、
アクセスエリアが無効データを格納したエリアとなるよ
うにポインタを1つずつ進めるとともに、その進めた数
を適当なレジスタなどによって記憶しておく。次に、割
込み受信の終了後に、受信の対象のポートをカレントポ
ートにするときには、ポインタを以前に進めた数だけ戻
す。
が終了するまで繰り返すことにより、2つ以上のポート
による割込み受信が可能となる。すなわち、カレントポ
ートの受信待ち時間を利用して、カレントポート以外の
複数ポートを介して順に受信したデータを各ポート11
〜13に対応したバッファ31〜33に格納することが
できる。なお、このときXバッファ30には複数のパラ
メータが格納される。
終了し、且つ所定のウエイトタイムが経過したときに
は、Xバッファ30のアクセスエリアにパラメータに代
えて無効データを格納し、その後にポインタを1つ進め
てカレントポートを変更する。
したデータの読出し及びメイン処理が行われ、そのジョ
ブが終了すればさらに次のカレントポートに対応したデ
ータの読出し及びメイン処理が行われることになる。そ
して、全てのジョブが終了すると、Xバッファ30は全
てのエリアに無効データを格納した初期状態に戻る。
へのデータの入力を待つ状態になって割込み受信が許可
された後に、Bポート12がデータを受信した場合につ
いて考える。
データを受信する以前では、Xバッファ30において
は、図5(b)に示すように、アクセスエリアにカレン
トポートを示すパラメータ「A」が格納されている。
ータの受信に呼応して受信処理(図4参照)が開始され
る。Bポート12はカレントポートではないので、CP
U10の処理はステップ#51からステップ#56へ移
る。また、この時点では割込み受信フラグはオフである
ので、Cポート13をインアクティブとした後に割込み
受信フラグがオンとされる。そして、図5(c)に示す
ようにポインタが1つ進められ、新たなアクセスエリア
にBポート12に対応したパラメータ「B」が格納され
る。
ファ32に順次格納される。このとき、通常は、1つの
ジョブに対応する1群のデータは、所定のデータ長ずつ
送受される。したがって、1群のデータの送受における
最初のデータを受信した段階で割込み受信フラグがオン
とされ、2番目以降のデータの受信に際しては、CPU
10の処理はステップ#56から直ちにステップ#60
へ移る。なお、1群のデータの送受の途中でBバッファ
32が満杯になれば、その時点でBポート12がインア
クティブとされ、Bポート12による割込み受信が停止
される。
データをBバッファ32に格納した後も、Bポート12
による割込み受信の可能な状態が保持される。また、こ
のとき、Aポート11も上述したように再受信の可能な
状態とされている。
1がデータを受信すると、Aポート11はカレントポー
トであり且つ割込み受信フラグがオンであるので、CP
U10の処理はステップ#51、ステップ#52、ステ
ップ#53の順に進む。
ンアクティブとされ、ステップ#54において割込み受
信フラグがオフとされる。これにより、Bポート12に
よるデータの受信が中断され禁止される。ただし、Bバ
ッファ32に読み出すべきデータが有る旨の情報とし
て、Xバッファ30のパラメータ「B」はそのまま残さ
れる。
(d)に示すようにポインタが1つ戻され、受信待ち状
態になった時点でAバッファ31が空き状態であること
から、ステップ#61において、Aポート11の受信し
たデータがAバッファ31に格納される。つまり、割込
み受信によって中断されたカレントポートの受信が再開
される。
応したジョブが終了するまで、受信待ち状態になれば他
のポート12,13による割込み受信を行うという動作
を繰り返す。
ポート12の割込み受信を禁止してAポート11の受信
を再開した後、再びAポート11が受信待ち状態になっ
たときに、Cポート13がデータを受信した場合につい
て考える。
いて、Xバッファ30には、図5(d)のように、アク
セスエリアにパラメータ「A」が格納され且つ次のエリ
アにパラメータ「B」が格納されている。
で、上述のBポート12による割込み受信の場合と同様
に、CPU10の処理はステップ#51からステップ#
56へ移る。また、この時点では割込み受信フラグはオ
フであるので、Bポート12がインアクティブとされ、
割込み受信フラグがオンとされる。
13が記憶される。このとき、Xバッファ30のポイン
タは、図5(d)〜図5(f)に示すように、アクセス
エリアが無効データを格納したエリアとなるまで合計2
つ進められ、図5(g)に示すようにCポート13に対
応したパラメータ「C」が格納される。
ァ33に順次格納されるとともに、Cポート13による
割込み受信の可能な状態が保持される。このような状態
において、再びAポート11がデータを受信すると、C
ポート13がインアクティブとされ、割込み受信フラグ
がオフとされる。そして、図5(h)に示すように、X
バッファ30のポインタが2つ戻される。
終了してウエイトタイムが経過すると、図5(i)に示
すように、アクセスエリアにパラメータ「A」に代えて
無効データが格納され、ポインタが1つ進められる。こ
れにより、Bポート12がカレントポートになる。
了してウエイトタイムが経過すると、図5(j)に示す
ように、アクセスエリアにパラメータ「B」に代えて無
効データが格納され、ポインタが1つ進められる。
終了してウエイトタイムが経過すると、アクセスエリア
にパラメータ「C」に代えて無効データが格納され、こ
れによりXバッファ30が図5(a)に示した初期状態
に戻る。
1〜13を有したページプリンタ1を例示したが、2つ
又は4つ以上のポートを有したプリンタ装置にも本発明
を適用することができる。また、その場合において各ポ
ートは互いに異なるインタフェース仕様であってもよい
し、同一のインタフェース仕様であってもよい。
の変更をデータの受信順に行うものとして説明したが、
例えば、各バッファ31〜33に格納されているデータ
の量に応じてカレントポートを変更してもよい。
の無処理時間を減少させてプリンタ装置の使用効率を向
上させることができる。
ロック図である。
トである。
トである。
ある。
ータの格納方法を示す図である。
Claims (1)
- 【請求項1】プリントデータの受信のための複数のポー
トを有し、複数の外部データ処理装置による共用が可能
に構成されたプリンタ装置であって、 受信動作中のポートであるカレントポートへのプリント
データの入力を待つ受信待ち状態になったときに、他の
ポートを受信可能状態とし、その後に他のポートがプリ
ントデータを受信したときに、他のポートが受信したプ
リントデータをバッファに格納し、再びカレントポート
がプリントデータを受信したときに他のポートによる受
信を中断した後にカレントポートによる受信を再開する
ことを特徴とするプリンタ装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4183300A JP3055313B2 (ja) | 1992-07-10 | 1992-07-10 | プリンタ装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4183300A JP3055313B2 (ja) | 1992-07-10 | 1992-07-10 | プリンタ装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH0628127A JPH0628127A (ja) | 1994-02-04 |
JP3055313B2 true JP3055313B2 (ja) | 2000-06-26 |
Family
ID=16133262
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP4183300A Expired - Fee Related JP3055313B2 (ja) | 1992-07-10 | 1992-07-10 | プリンタ装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3055313B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7798585B2 (en) | 2005-12-08 | 2010-09-21 | Olympus Corporation | Ink detecting device, image recording apparatus, ink detecting method and program recording medium |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2022041216A (ja) * | 2020-08-31 | 2022-03-11 | ブラザー工業株式会社 | 画像形成装置及び画像形成システム |
-
1992
- 1992-07-10 JP JP4183300A patent/JP3055313B2/ja not_active Expired - Fee Related
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7798585B2 (en) | 2005-12-08 | 2010-09-21 | Olympus Corporation | Ink detecting device, image recording apparatus, ink detecting method and program recording medium |
Also Published As
Publication number | Publication date |
---|---|
JPH0628127A (ja) | 1994-02-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4992958A (en) | Method and apparatus for controlling printer | |
US5954436A (en) | Printing apparatus and double-side printing control method | |
JPH10143340A (ja) | プリンタ | |
JPH03178466A (ja) | 印刷制御装置 | |
JP3055313B2 (ja) | プリンタ装置 | |
JP3305042B2 (ja) | 印刷制御装置 | |
EP0994437B1 (en) | Printer controller having a double-sided print function | |
JP3724536B2 (ja) | 画像出力制御装置およびその処理実行制御方法 | |
JP3134539B2 (ja) | プリンタ制御装置 | |
JPH06227100A (ja) | プリンタ装置 | |
JP2020127184A (ja) | Pciデバイスに接続される省電力状態に移行可能なデバイスを備える電子機器およびその制御方法 | |
JPH1078856A (ja) | 優先度別割り込み印刷方法およびシステム | |
JP3700410B2 (ja) | プリンタシステムおよびプリント制御方法 | |
JPH10254721A (ja) | 印刷装置、その割込要求処理方法、及び記憶媒体 | |
JP2007328737A (ja) | ホスト装置、データ処理装置及びデータ処理システム | |
JPH09190317A (ja) | 印刷装置および印刷方法 | |
JPH07114517A (ja) | マルチプロセッサシステムのプログラム実行制御方式 | |
JPH10278364A (ja) | ページプリンタ | |
JPH10105508A (ja) | 情報処理装置及び画像形成装置 | |
JP3027849B2 (ja) | 印字装置 | |
JPH05324220A (ja) | 印刷装置 | |
JP2005107818A (ja) | 調停装置およびそれを用いる画像形成装置 | |
JP2008221831A (ja) | 画像形成装置及びその印刷制御方法 | |
JPH0546547A (ja) | データ処理装置 | |
JPH0432952A (ja) | 割込み制御装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080414 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090414 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090414 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100414 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110414 Year of fee payment: 11 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120414 Year of fee payment: 12 |
|
LAPS | Cancellation because of no payment of annual fees |