(57)【要約】【課題】メインコントローラと、ファームウエアを記憶する書き換え可能なメモリを有するエンジンコントローラとが互いに通信可能に接続され、メインコントローラから与えられる信号に応じてエンジンコントローラが該信号に対応する画像を形成する画像形成装置において、ファームウエアの書換を効率よく行う。【解決手段】画像形成装置が印刷モードから書換モードに切り替わると、予めメインコントローラ１１に用意されているコマンドのうち書換モードに対応する７つのコマンドのみが使用可能となるとともに、エンジンコントローラ１２からメインコントローラ１１に返信されるステータスもＤＬステータスのみ限定される。そして、これら７つのコマンドからなるコマンドセットと１つのステータスとを用いて２つのコントローラ１１，１２間で通信が行われてファームウエアの書換処理が実行される。【選択図】　　　　図３
2004029876.tif 000002
【特許請求の範囲】
【請求項１】
メインコントローラと、ファームウエアを記憶する書き換え可能なメモリを有するエンジンコントローラとが互いに通信可能に接続され、前記メインコントローラから前記エンジンコントローラに複数種類のコマンドを送信して装置全体を制御する画像形成装置において、
ファームウエアの書換を行う書換モードが選択されたときには、使用可能なコマンドの種類を減少させることを特徴とする画像形成装置。
【請求項２】
メインコントローラと、ファームウエアを記憶する書き換え可能なメモリを有するエンジンコントローラとが互いに通信可能に接続され、前記メインコントローラから前記エンジンコントローラに複数種類のコマンドを送信して装置全体を制御する画像形成装置においてファームウエアを書き換える方法であって、
ファームウエアの書換を行う書換モードが選択されたときには、前記複数種類のコマンドの一部のみを使用可能とし、その使用可能なコマンドを前記メインコントローラから前記エンジンコントローラに送信して前記書換モードを実行することを特徴とするファームウエアの書換方法。
【請求項３】
メインコントローラと、ファームウエアを記憶する書き換え可能なメモリを有するエンジンコントローラとが互いに通信可能に接続され、前記メインコントローラから前記エンジンコントローラに複数種類のコマンドを送信して装置全体を制御する画像形成装置に、
ファームウエアの書換を行う書換モードが選択されたか否かを判定する手順と、
前記書換モードが選択されたときには前記複数種類のコマンドの一部のみを使用可能とし、その使用可能なコマンドを前記メインコントローラから前記エンジンコントローラに送信してファームウエアを書き換える手順と
を実行させるための書換プログラム。
【請求項４】
メインコントローラと、ファームウエアを記憶する書き換え可能なメモリを有するエンジンコントローラとが互いに通信可能に接続され、前記メインコントローラから前記エンジンコントローラに複数種類のコマンドを送信して装置全体を制御する画像形成装置に、
ファームウエアの書換を行う書換モードが選択されたか否かを判定する手順と、
前記書換モードが選択されたときには前記複数種類のコマンドの一部のみを使用可能とし、その使用可能なコマンドを前記メインコントローラから前記エンジンコントローラに送信してファームウエアを書き換える手順と
を実行させるための書換プログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項５】
ホスト装置と、ファームウエアを記憶する書き換え可能なメモリを有する画像形成装置とが互いに通信可能に接続され、前記ホスト装置から前記画像形成装置に複数種類のコマンドを送信して前記画像形成装置を制御する情報処理システムにおいて、
ファームウエアの書換を行う書換モードが選択されたときには、使用可能なコマンドの種類を減少させることを特徴とする情報処理システム。
【請求項６】
ホスト装置と、ファームウエアを記憶する書き換え可能なメモリを有する画像形成装置とが互いに通信可能に接続され、前記ホスト装置から前記画像形成装置に複数種類のコマンドを送信して前記画像形成装置を制御する情報処理システムにおいてファームウエアを書き換える方法であって、
ファームウエアの書換を行う書換モードが選択されたときには、前記複数種類のコマンドの一部のみを使用可能とし、その使用可能なコマンドを前記ホスト装置から前記画像形成装置に送信して前記書換モードを実行することを特徴とするファームウエアの書換方法。
【請求項７】
ホスト装置と、ファームウエアを記憶する書き換え可能なメモリを有する画像形成装置とが互いに通信可能に接続され、前記ホスト装置から前記画像形成装置に複数種類のコマンドを送信して前記画像形成装置を制御する情報処理システムに、
ファームウエアの書換を行う書換モードが選択されたか否かを判定する手順と、
前記書換モードが選択されたときには前記複数種類のコマンドの一部のみを使用可能とし、その使用可能なコマンドを前記ホスト装置から前記画像形成装置に送信してファームウエアを書き換える手順と
を実行させるための書換プログラム。
【請求項８】
ホスト装置と、ファームウエアを記憶する書き換え可能なメモリを有する画像形成装置とが互いに通信可能に接続され、前記ホスト装置から前記画像形成装置に複数種類のコマンドを送信して前記画像形成装置を制御する情報処理システムに、
ファームウエアの書換を行う書換モードが選択されたか否かを判定する手順と、
前記書換モードが選択されたときには前記複数種類のコマンドの一部のみを使用可能とし、その使用可能なコマンドを前記ホスト装置から前記画像形成装置に送信してファームウエアを書き換える手順と
を実行させるための書換プログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、プリンタ、複写機、ファクシミリ装置などの画像形成装置、ならびに画像形成装置とホスト装置とを通信可能に接続した情報処理システムにおけるファームウエアの書換処理に関するものである。
【０００２】
【従来の技術】
プリンタ、複写機、ファクシミリ装置などの画像形成装置として、例えば特開平８−１６１２３１号公報に記載されたように、２つのコントローラを通信インターフェースを介して相互に通信可能に接続したものが従来より知られている。この画像形成装置では、ホストコンピュータなどの外部装置や内蔵スキャナー等から画像信号がメインコントローラに与えられると、このメインコントローラで該画像信号を解析し、種々の画像処理を施した後、その画像処理済の信号（例えばビデオ信号）をエンジンコントローラに与える。このエンジンコントローラは、中央演算処理装置としてのＣＰＵと、ファームウエアを記憶する書き換え可能な不揮発性メモリとを有しており、上記信号を受けると、フラッシュＲＯＭやＥＥＰＲＯＭなどの不揮発性メモリに記憶されているファームウエアに基づきエンジン部を制御して複写紙、転写紙、用紙およびＯＨＰ用透明シートなどのシートに画像信号に対応する画像を形成する。
【０００３】
ここで、ファームウエアを書き換え可能な不揮発性メモリに記憶させているが、この理由は将来の機能追加やバージョンアップに柔軟に対応するためである。すなわち、機能追加やバージョンアップが必要となった場合には、機能追加などを盛り込んだファームウエアを新たに作成し、旧ファームウエアを新たなファームウエアに書き換えて更新する。
【０００４】
【発明が解決しようとする課題】
ところで、上記従来装置では、２つのコントローラ間で通信を行うために、メインコントローラをマスターとして機能させる一方、エンジンコントローラをスレーブとして機能させており、エンジンコントローラはメインコントローラにより指示または制御されている。すなわち、メインコントローラは予め複数種類のコマンドを用意しており、装置の動作状況に応じたコマンドやデータなどをエンジンコントローラに送信することで、エンジンコントローラがその受信したコマンド等に対応する処理、例えばファームウエアに基づき画像信号に対応する画像を形成する印刷処理（印刷モード）を実行したり、ファームウエアを書き換える書換処理（書換モード）を実行する。
【０００５】
このように、従来装置では、エンジンコントローラはコマンド内容を判断し、その判断結果に応じて装置各部を制御するとともに、メインコントローラに対して装置各部の状態を示すステータスなどを返信する必要がある。特に、近年、装置の高機能化および複雑化が進行するのに伴ってメインコントローラから送信されるコマンドの種類が多くなるとともに、メインコントローラに返信しなければならないステータス内容も複雑なものとなっている。そのため、ファームウエアを書き換えるという限定的な処理を行う書換モードを実行する場合においても、メインコントローラから送信される全コマンドに対応するように構成する必要がある。つまり、メインコントローラから如何なるコマンドが送信されてきたとしても、そのコマンド内容を判断し、書換モードに無関係なコマンドであったとしても、該コマンドに対応したステータスを返信する必要があった。したがって、従来の画像形成装置ではファームウエアの書換処理が必ずしも効率的なものであるとは言えなかった。
【０００６】
また、このような問題は、２つのコントローラを通信インターフェースを介して相互に通信可能に接続した画像形成装置に限定された問題ではなく、例えば特開平１２−１７２４５３号公報に記載されたように、ホストコンピュータなどのホスト装置と、画像形成装置たるプリンタとを相互に通信可能に接続した情報処理システムにおいても生じる問題である。
【０００７】
この発明は上記課題に鑑みなされたものであり、メインコントローラと、ファームウエアを記憶する書き換え可能なメモリを有するエンジンコントローラとが互いに通信可能に接続され、メインコントローラから与えられる信号に応じてエンジンコントローラが該信号に対応する画像を形成する画像形成装置において、ファームウエアの書換を効率よく行うことを第１の目的とする。
【０００８】
また、この発明は、ホスト装置と、ファームウエアを記憶する書き換え可能なメモリを有する画像形成装置とが互いに通信可能に接続され、ホスト装置から与えられる信号に応じて画像形成装置が該信号に対応する画像を形成する情報処理システムにおいて、ファームウエアの書換を効率よく行うことを第２の目的とする。
【０００９】
【課題を解決するための手段】
この発明は、メインコントローラと、ファームウエアを記憶する書き換え可能なメモリを有するエンジンコントローラとが互いに通信可能に接続され、メインコントローラからエンジンコントローラに複数種類のコマンドを送信して装置全体を制御する画像形成装置、ならびに該装置におけるファームウエアの書換方法、書換プログラムならびに記録媒体に関するものであって、上記第１の目的を達成するため、以下のように構成している。
【００１０】
この発明にかかる画像形成装置は、ファームウエアの書換を行う書換モードが選択されたときには、使用可能なコマンドの種類を減少させるように構成している。
【００１１】
また、この発明にかかるファームウエアを書き換える方法は、ファームウエアの書換を行う書換モードが選択されたときには、複数種類のコマンドの一部のみを使用可能とし、その使用可能なコマンドをメインコントローラからエンジンコントローラに送信して書換モードを実行している。
【００１２】
また、この発明にかかる書換プログラムは、上記画像形成装置に、ファームウエアの書換を行う書換モードが選択されたか否かを判定する手順と、書換モードが選択されたときには複数種類のコマンドの一部のみを使用可能とし、その使用可能なコマンドをメインコントローラからエンジンコントローラに送信してファームウエアを書き換える手順とを実行させている。
【００１３】
さらに、この発明にかかる記録媒体は、上記書換プログラムを記録している。
【００１４】
このように構成された発明では、書換モードにおいては複数種類のコマンドの一部のみが使用可能となっており、ファームウエアの書換と関係のないコマンドがメインコントローラからエンジンコントローラに送信されることはない。したがって、エンジンコントローラは書換モードで使用されるコマンドに対応したステータスのみを返信すればよく、メインコントローラとエンジンコントローラとの間での通信効率が向上し、ファームウエアの書換効率も向上する。
【００１５】
この発明は、ホスト装置と、ファームウエアを記憶する書き換え可能なメモリを有する画像形成装置とが互いに通信可能に接続され、ホスト装置から画像形成装置に複数種類のコマンドを送信して画像形成装置を制御する情報処理システム、ならびに該システムにおけるファームウエアの書換方法、書換プログラムならびに記録媒体に関するものであって、上記第２の目的を達成するため、以下のように構成している。
【００１６】
この発明にかかる情報処理システムは、ファームウエアの書換を行う書換モードが選択されたときには、使用可能なコマンドの種類を減少させるように構成している。
【００１７】
また、この発明にかかるファームウエアを書き換える方法は、ファームウエアの書換を行う書換モードが選択されたときには、複数種類のコマンドの一部のみを使用可能とし、その使用可能なコマンドをホスト装置から画像形成装置に送信して書換モードを実行している。
【００１８】
また、この発明にかかる書換プログラムは、情報処理システムに、ファームウエアの書換を行う書換モードが選択されたか否かを判定する手順と、書換モードが選択されたときには複数種類のコマンドの一部のみを使用可能とし、その使用可能なコマンドをホスト装置から画像形成装置に送信してファームウエアを書き換える手順とを実行させている。
【００１９】
さらに、この発明にかかる記録媒体は、上記書換プログラムを記録している。
【００２０】
このように構成された発明では、書換モードにおいては複数種類のコマンドの一部のみが使用可能となっており、ファームウエアの書換と関係のないコマンドがホスト装置から画像形成装置に送信されることはない。したがって、画像形成装置は書換モードで使用されるコマンドに対応したステータスのみを返信すればよく、ホスト装置と画像形成装置との間での通信効率が向上し、ファームウエアの書換効率も向上する。
【００２１】
【発明の実施の形態】
図１はこの発明にかかる画像形成装置の一実施形態を示す図である。また、図２は図１の画像形成装置の電気的構成を示すブロック図である。この画像形成装置は、イエロー（Ｙ）、シアン（Ｃ）、マゼンタ（Ｍ）、ブラック（Ｋ）の４色のトナーを重ね合わせてフルカラー画像を形成したり、ブラック（Ｋ）のトナーのみを用いてモノクロ画像を形成する装置である。この画像形成装置では、ホストコンピュータ１００などの外部装置から画像信号が制御ユニット１のメインコントローラ１１に与えられると、このメインコントローラ１１で該画像信号を解析し、種々の画像処理を施した後、その画像処理済の信号をエンジンコントローラ１２に与える。このエンジンコントローラ１２は、フラッシュメモリ１２３に記憶されているファームウエアに基づきエンジン部ＥＧの各部を制御して複写紙、転写紙、用紙およびＯＨＰ用透明シートなどのシートＳに画像信号に対応する画像を形成する。
【００２２】
このエンジン部ＥＧでは、７つのユニット：（ａ）感光体ユニット２；（ｂ）イエロー現像ユニット（以下「Ｙ現像ユニット」という）３Ｙ；（ｃ）マゼンタ現像ユニット（「Ｍ現像ユニット」）３Ｍ；（ｄ）シアン現像ユニット（「Ｃ現像ユニット」）３Ｃ；（ｅ）ブラック現像ユニット（「Ｋ現像ユニット」）３Ｋ；（ｆ）中間転写ユニット４および（ｇ）定着ユニット５が装置本体６に対して着脱自在となっている。そして、すべてのユニット２、３Ｙ、３Ｍ、３Ｃ、３Ｋ、４、５が装置本体６に装着された状態で、図１に示すように、感光体ユニット２の感光体２１が図１の矢印方向Ｄ１に回転するとともに、その感光体２１の周りにその回転方向Ｄ１に沿って、帯電部２２、現像ユニット３Ｙ、３Ｍ、３Ｃ、３Ｋからなるロータリー現像部３およびクリーニング部２３がそれぞれ配置される。
【００２３】
７つのユニット２、３Ｙ、３Ｍ、３Ｃ、３Ｋ、４、５のうち感光体ユニット２には感光体２１、帯電部２２およびクリーニング部２３が収容されており、これらを一体的に装置本体６に対して着脱自在となっている。帯電部２２には図示を省略する帯電バイアス発生部から帯電バイアスが印加されており、感光体２１の外周面を均一に帯電させる。また、この感光体ユニット２には、感光体２１の回転方向Ｄ１における帯電部２２の上流側にクリーニング部２３が設けられており、一次転写後に感光体２１の外周面に残留付着しているトナーを掻き落とす。こうして、感光体２１の表面クリーニングを行っている。
【００２４】
帯電部２２によって帯電された感光体２１の外周面に向けて露光ユニット８から光ビームＬが照射される。この露光ユニット８は、エンジンコントローラ１２に設けられたレーザドライバ（図示省略）と電気的に接続されており、このレーザドライバから与えられる駆動信号に応じて露光ユニット８を制御し、光ビームＬを感光体２１上に露光して画像信号に対応する静電潜像を感光体２１上に形成する。
【００２５】
こうして形成された静電潜像はロータリー現像部３によってトナー現像される。このロータリー現像部３では、ブラック用の現像ユニット３Ｋ、シアン用の現像ユニット３Ｃ、マゼンタ用の現像ユニット３Ｍ、およびイエロー用の現像ユニット３Ｙが軸中心に回転自在に設けられている。そして、これらの現像ユニット３Ｙ、３Ｍ、３Ｃ、３Ｋは予め決められた複数の位置に移動位置決めされるとともに、感光体２１に対して選択的に現像位置で位置決めされる。図１ではブラック用の現像ユニット３Ｋが現像位置に位置決めされており、この位置決め状態で現像ユニット３Ｋに設けられた現像ローラ３１が感光体２１と対向配置されるが、その他の現像ユニット３Ｙ、３Ｍ、３Ｃについても現像ユニット３Ｋと全く同様に現像ユニットの現像位置への位置決めにより各現像ユニットに設けられた現像ローラ３１が感光体２１と対向配置される。
【００２６】
また、現像位置に位置決めされた現像ユニットでは、ユニットハウジング内に貯留されたトナーは現像ローラ３１に担持されながら、現像位置に搬送される。そして、現像ローラ３１に対して、所定の現像バイアスを印加することで現像位置に選択位置決めされたユニットハウジング内のトナーが現像ローラ３１から感光体２１に付着して静電潜像を顕像化する。こうして、選択された色のトナー像が感光体２１の表面に形成される。
【００２７】
上記のようにして現像部３で現像されたトナー像は、一次転写領域ＴＲ１で中間転写ユニット４の中間転写ベルト４１上に一次転写される。すなわち、中間転写ユニット４は複数のローラに掛け渡された中間転写ベルト４１と、中間転写ベルト４１を回転駆動する駆動部（図示省略）とを備えており、カラー画像をシートＳに転写する場合には、感光体２１上に形成される各色のトナー像を中間転写ベルト４１上に重ね合わせてカラー画像を形成する一方、単色画像をシートＳに転写する場合には、感光体２１上に形成されるブラック色のトナー像のみを中間転写ベルト４１上に転写して単色画像を形成する。
【００２８】
また、本実施形態にかかる画像形成装置では、パッチ画像の濃度を検出するために、中間転写ベルト４１が掛け渡された一のローラに対向してパッチセンサＰＳが配置されている。
【００２９】
こうして中間転写ベルト４１上に形成された画像については、所定の二次転写領域ＴＲ２において、カセット９から取り出されたシートＳ上に二次転写する。そして、トナー画像が転写されたシートＳを、ヒータ（図示省略）が内蔵された定着ユニット５に導入し、ここで加熱しながら圧力を加えることによってトナーをシートＳに定着させる。こうして画像が形成されたシートＳは装置本体６の上面部に設けられた排出トレイ部に搬送される。
【００３０】
次に、図２を参照しつつ図１の画像形成装置の電気的構成について説明する。メインコントローラ１１はホストインターフェース１１１、ＣＰＵ１１２、ＲＯＭ１１３、ＲＡＭ１１４およびエンジンインターフェース１１５を備えている。このメインコントローラ１１では、ホストインターフェース１１１によってホストコンピュータ１００との間の通信処理を行うように構成されており、ホストコンピュータ１００から送信された画像信号、後述するダウンロードプログラムやファームウェアファイルを受信する。そして、受信された画像信号などはＲＡＭ１１４に一次的に格納される。
【００３１】
ＣＰＵ１１２には、図示を省略する入出力ポートを介して装置本体６に取り付けられた操作パネル１３と電気的に接続されている。この操作パネル１３には、ＣＰＵ１１２に対してユーザが種々の指令を与えるために複数のスイッチ１３１が設けられるとともに、ユーザに対してメッセージや印刷状況などを表示するために表示部１３２が設けられており、操作パネル１３がマンマシンインターフェースとして機能している。
【００３２】
また、ＲＯＭ１１３には、予めメインコントローラ１１用のプログラムが記憶されており、このプログラムにしたがってＣＰＵ１１２およびロジック回路（図示省略）が作動することで、受信した画像信号に対して種々の画像処理を施す。すなわち、ホストコンピュータ１００から画像信号が与えられたメインコントローラ１１では、その画像信号に対応する画像内の各画素のＲＧＢ成分の階調レベルを示したＲＧＢデータを、対応するＣＭＹＫ成分の階調レベルを示したＣＭＹＫデータに変換する。また、各画素のＣＭＹＫデータに対し階調補正を行った後、さらに誤差拡散法、ディザ法、スクリーン法などのハーフトーニング処理を行い、１画素１色当たり例えば８ビットのハーフトーンＣＭＹＫデータを作成する。そして、そのハーフトーンＣＭＹＫデータを用いて、エンジン部ＥＧのＣＭＹＫ各色画像の露光レーザパルスをパルス幅変調するためのビデオ信号を作成し、エンジンインターフェース１１５を介してエンジンコントローラ１２に出力する。さらに、上記プログラムに基づきエンジンコントローラ１２に対して種々のコマンドやデータなどを送信し、後述する印刷モードと書換モードとのモード切替、ならびに書換モードでは限定されたコマンドやデータをエンジンコントローラ１２に送信してファームウエアの書換処理を実行する。なお、具体的なコマンドの種類については後で詳述する。
【００３３】
一方、エンジンコントローラ１２は、図２に示すように、メインインターフェース１２１、ＣＰＵ１２２、フラッシュメモリ１２３およびＲＡＭ１２４を備えている。メインインターフェース１２１はメインコントローラ１１との間で通信を行うためのものであり、メインコントローラ１１から送信されるコマンドやデータなどを受信し、また受信したコマンド等に対応してメインコントローラ１１に後述する「基本ステータス」、「紙ジャムステータス」および「ＤＬステータス」などのステータスを返信可能となっている。
【００３４】
また、この実施形態では、「ファームウエアを記憶する書き換え可能なメモリ」としてフラッシュメモリ１２３を用いており、そのメモリ領域の一部をライトプロテクトするとともに、そのライトプロテクト領域にイニシャル・プログラム・ローダ（ＩＰＬ）を格納する一方、残りのメモリ領域にファームウエアを格納するように構成している。もちろん、イニシャル・プログラム・ローダを格納するためのＲＯＭを別途設け、フラッシュメモリ１２３にファームウエアのみを格納するようにしてもよい。
【００３５】
そして、ＣＰＵ１２２はファームウエアを実行することによりエンジン部ＥＧの各部を制御して複写紙、転写紙、用紙およびＯＨＰ用透明シートなどのシートＳに画像信号に対応する画像を形成する（印刷モード）。また、このエンジンコントローラ１２では、上記印刷モード以外にファームウエアの書き換えを行う書換モードを実行可能となっている。すなわち、イニシャル・プログラム・ローダに基づきダウンロードプログラムがＲＡＭ１２４にロードされ、ＣＰＵ１２２がそのダウンロードプログラムを実行することでファームウエアの書換処理を実行する。
【００３６】
次に、図３および図４を参照しつつファームウエアの書換処理について詳述する。図３はメインコントローラとエンジンコントローラとの間で行われる通信手順を示す図であり、図４はエンジンコントローラでのデータの転送状態を示す模式図である。
【００３７】
上記のように構成された画像形成装置では、メインコントローラ１１がエンジンコントローラ１２に対してコマンドやデータ等を送信し、これを受けたスレーブとして動作しているエンジンコントローラ１２がフラッシュメモリ１２３に格納されているファームウエアに基づきエンジン部ＥＧの各部を制御して印刷処理を行っている（印刷モード）。このとき、エンジンコントローラ１２でのメモリ状態は図４（ａ）である。
【００３８】
また、印刷モードでは、メインコントローラ１１からエンジンコントローラ１２に与えるコマンドの種類については特に制限は加えられておらず、印字を開始する旨を指示する「印字開始」コマンド、テスト印字を開始する旨を指示する「テスト印字開始」コマンド、印刷モードから書換モードに切替える「書換モード」コマンドなどを適宜エンジンコントローラ１２に送信可能となっている。一方、エンジンコントローラ１２では、メインコントローラ１１から送信されてくる全コマンドに対応すべく、「印刷開始不可」、「印刷中」などのエンジン部ＥＧの状態を示す基本ステータスや紙ジャムなどのエラー情報を示す紙ジャムステータスなどをメインコントローラ１１に対して返信可能となっている。
【００３９】
そして、ファームウエアの書換が必要となると、画像形成装置に対して印刷モードから書換モードに切替える旨の指示を与えるとともに、ダウンロードプログラムおよび新しいファームウエアをメインコントローラ１１に与える。具体的な手順としては、例えばユーザやサービスエンジニアなどが操作パネル１３に設けられたスイッチ１３１群を操作してメインコントローラ１１のＣＰＵ１１２に対し書換モードへのモード切替を指示する。また、ユーザやサービスエンジニアなどは、ダウンロードプログラムおよび新しいファームウエアが記録されたＣＤ−ＲＯＭやフロッピー（登録商標）ディスクなどの外部記録媒体１０１をホストコンピュータ１００にセットする。なお、ＬＡＮなどによって画像形成装置に対して複数のホストコンピュータ１００が接続されている場合には、任意のホストコンピュータ１００を用いることができる。また、外部記録媒体１０１を用いる代わりに、ＬＡＮを経由して所定のサーバに格納されているダウンロードプログラムおよび新しいファームウエアをホストコンピュータ１００のハードディスク（図示省略）に予めダウンロードしておいてもよい。
【００４０】
次に、ホストコンピュータ１００からメインコントローラ１１のＲＡＭ１１４にダウンロードプログラムおよび新しいファームウエアをコピーする。ここで、ホストコンピュータ１００にインストールされているプリンタドライバを用いて上記コピー動作を実行させるように構成してもよい。すなわち、プリンタドライバを起動すると、ファームウエアの書換処理を選択するためのボタンがディスプレイ上に表示されるように構成することができる。そして、そのボタンをユーザやサービスエンジニアなどが選択すると、ディスプレイ上にファームウエアの書換処理に必要な処理手順が表示され、それにしたがって操作することで、自動的に記録媒体（ＣＤ−ＲＯＭ、フロッピー（登録商標）ディスク、ハードディスクなど）に格納されているダウンロードプログラムおよび新しいファームウエアがメインコントローラ１１のＲＡＭ１１４にコピーされる。こうすることで、ユーザフレンドリーな装置となる。
【００４１】
こうしてＲＡＭ１１４へのコピーが完了すると、図３に示すように、メインコントローラ１１はエンジンコントローラ１２に対して「書換モード」コマンドを送信する。一方、このコマンドを受信したエンジンコントローラ１２は「了解」ステータスを送信する。これによって、印刷モードから書換モードに切り替わる。
【００４２】
この書換モードでは、予めメインコントローラ１１に用意されているコマンドの一部のみが使用可能となる。すなわち、この実施形態では「印字開始」コマンド、「テスト印字開始」コマンドなどの複数種類のコマンドが予め用意されているが、この書換モードでは、以下の７つのコマンドのみ
（Ａ）「ＤＬステータス取得」コマンド…エンジンコントローラの状態を示すＤＬステータスを取得する、
（Ｂ）「準備開始」コマンド…エンジンコントローラに対しダウンロードを実行するための準備を指示する、
（Ｃ）「メモリ消去」コマンド…エンジンコントローラに対しフラッシュメモリを消去する旨を指示する、
（Ｄ）「メモリ書込」コマンド…エンジンコントローラに対し所定サイズのコードをフラッシュメモリに書込む旨を指示する、
（Ｅ）「バイトサイズ送信」コマンド…ＤＬプログラムのバイトサイズとチェックサムを送信する、
（Ｆ）「ＤＬプログラム送信」コマンド…ＤＬプログラムのオブジェクトコードを所定バイト分とチェックサムを送信する、
（Ｇ）「ファーム送信」…ファームウエアのオブジェクトコードとチェックサムを送信する、
が使用可能となっており、これら以外のコマンドは使用禁止されている。
【００４３】
また、このように使用可能なコマンドが制限されていることから、エンジンコントローラ１２からメインコントローラ１１に返信されるステータスは、「ＤＬステータス」の１種類に限定されている。この「ＤＬステータス」は、以下の６つのビット情報、
（ａ）「ＤＬ準備中」…書換実施前の準備中（エンジン部の停止、割込禁止など）を示すビット情報、
（ｂ）「チェックサムエラ」…チェックサムが一致しなかった旨を示すビット情報、
（ｃ）「メモリ消去中」…フラッシュメモリ１２３の消去中を示すビット情報、
（ｄ）「消去エラ」…フラッシュメモリ１２３の消去に失敗したことを示すビット情報、
（ｅ）「メモリ書込中」…フラッシュメモリ１２３へのデータの書込み中を示すビット情報、
（ｆ）「書込エラ」…フラッシュメモリ１２３の書込に失敗したことを示すビット情報、
を有している。そして、書換モードでは、７つのコマンドからなるコマンドセットと１つのステータスとを用いて以下のような通信が行われてファームウエアの書換処理が実行される。
【００４４】
（１）書換処理のための準備
まず、メインコントローラ１１はエンジンコントローラ１２に対して「準備開始」コマンドを送信する。すると、このコマンドを受けたエンジンコントローラ１２はイニシャル・プログラム・ローダ（ＩＰＬ）を起動し、ファームウエアの書換のための準備処理（エンジン部ＥＧの各部の停止、割込禁止処理など）を開始するとともに、書換準備中を示す「ＤＬステータス」をエンジンコントローラ１２からメインコントローラ１１に返信する。それに続いて、メインコントローラ１１はエンジンコントローラ１２に対して所定時間間隔で「ＤＬステータス取得」コマンドを送信する一方、エンジンコントローラ１２は該コマンドを受信するたびに「ＤＬステータス」をメインコントローラ１１に返信する。そして、書換準備が完了すると同時あるいはその後にメインコントローラ１１からの「ＤＬステータス取得」コマンドを受信すると、エンジンコントローラ１２は書換準備を完了している旨のビット情報を含む「ＤＬステータス」をメインコントローラ１１に返信する。これによって、メインコントローラ１１は書換処理のための準備が完了したことを認識する。
【００４５】
（２）ダウンロードプログラム１０２の書き込み（プログラム読込工程）
次に、ＩＰＬに基づきＣＰＵ１２２が作動してメインコントローラ１１のＲＡＭ１１４に格納されているダウンロードプログラム１０２をエンジンコントローラ１２のＲＡＭ１２４に書き込む。具体的には、メインコントローラ１１はエンジンコントローラ１２に対して「バイトサイズ送信」コマンドを送信する。そして、これを受けたエンジンコントローラ１２は「ＤＬステータス」をメインコントローラ１１に返信する。すると、メインコントローラ１１はダウンロードプログラム１０２のプログラム長ステータスを示すバイトサイズおよびチェックサムをエンジンコントローラ１２に順次送信する。そして、メインコントローラ１１はエンジンコントローラ１２に対して「ＤＬステータス取得」コマンドを送信する。すると、これに応じてエンジンコントローラ１２から「ＤＬステータス」がメインコントローラ１１に返信され、次のようにしてダウンロードプログラム１０２の送信が開始される。
【００４６】
メインコントローラ１１はエンジンコントローラ１２に対して「ＤＬプログラム送信」コマンドを送信する。そして、これを受けたエンジンコントローラ１２が「ＤＬステータス」をメインコントローラ１１に返信されると、メインコントローラ１１はダウンロードプログラム１０２のコードを送信する。こうして送信されてきたダウンロードプログラム１０２については、エンジンコントローラ１２がＲＡＭ１２４に格納する（図４（ｂ））。また、メインコントローラ１１はコードの送信に続いて、チェックサムをエンジンコントローラ１２に送信する。さらに、メインコントローラ１１はエンジンコントローラ１２に対して「ＤＬステータス取得」コマンドを送信する。ここで、チェックサムが一致した際には、チェックサムが一致した旨を示す情報を有する「ＤＬステータス」がメインコントローラ１１に返信される。これによって、メインコントローラ１１はダウンロードプログラム１０２のＲＡＭ１２４へのコピーが完了したことを認識する。
【００４７】
もし、ここでチェックサムが一致しなかった場合には、その旨を示すビット情報を含む「ＤＬステータス」がメインコントローラ１１に返信されるのに対応し、所定のエラー処理を実行する。なお、チェックサムが一致しなかった場合のエラー処理については、後で説明するファームウエアの書込処理においても全く同様である。
【００４８】
（３）旧ファームウエアの消去（消去工程）
次に、メインコントローラ１１はエンジンコントローラ１２に対して「メモリ消去」コマンドを送信する。そして、このコマンドを受けたエンジンコントローラ１２はダウンロードプログラムを起動し、旧ファームウエアの消去を開始するとともに、メモリ消去中を示す「ＤＬステータス」をエンジンコントローラ１２からメインコントローラ１１に返信する。それに続いて、メインコントローラ１１はエンジンコントローラ１２に対して所定時間間隔で「ＤＬステータス取得」コマンドを送信する一方、エンジンコントローラ１２は該コマンドを受信するたびに「ＤＬステータス」をメインコントローラ１１に返信する。そして、メモリ消去が完了すると同時あるいはその後にメインコントローラ１１からの「ＤＬステータス取得」コマンドを受信すると、エンジンコントローラ１２はメモリ消去を完了している旨のビット情報を含む「ＤＬステータス」をメインコントローラ１１に返信する。これによって、メインコントローラ１１は旧ファームウエアの消去が完了したことを認識する。
【００４９】
（４）ファームウエアの書込み（書込み工程）
旧ファームウエアの消去に続いて、メインコントローラ１１はエンジンコントローラ１２に対して「ファーム送信」コマンドを送信する一方、これを受けたエンジンコントローラ１２は「ＤＬステータス」をメインコントローラ１１に返信する。それに続いて、メインコントローラ１１は新ファームウエア１０３のコードを単位長さ、例えば１２８バイト単位でエンジンコントローラ１２に送信する。こうしてエンジンコントローラ１２に読み込まれたファームウエアは、一旦ＲＡＭ１２４に格納された後、フラッシュメモリ１２３に書き込まれる（書込工程；書込手順）。また、メインコントローラ１１は単位長さのコード送信に続いてチェックサムをエンジンコントローラ１２に送信する。そして、チェックサムが一致した際には、エンジンコントローラ１２はメインコントローラ１１からの「ＤＬステータス取得」コマンドに応じてチェックサムが一致した旨を示す情報を有する「ＤＬステータス」をメインコントローラ１１に返信する。これによって、メインコントローラ１１は単位長さ分についてファームウエア１０３のフラッシュメモリ１２３への書き込みが完了したことを認識する。こうした単位長さごとの書込処理を複数回繰り返してファームウエア１０３全体をフラッシュメモリ１２３に書込む。具体的には、図４（ｄ）〜同図（ｆ）に示すような手順で書込処理を繰り返す。ここで、ファームウエア１０３のコードの書込動作を中心に同図（ｄ）〜（ｆ）を参照しつつ説明する。
【００５０】
メインコントローラ１１は新しいファームウエア１０３のヘッダ（Ｈｅａｄｅｒ）をメインコントローラ１１に送信する一方、これを受けたメインコントローラ１１は、図４（ｄ）に示すように、該ヘッダを一旦ＲＡＭ１２４に格納した後、フラッシュメモリ１２３に書き込む。それに続いて、メインコントローラ１１は新ファームウエア１０３のコードを単位長さ、例えば１２８バイト単位でエンジンコントローラ１２に送信する一方、エンジンコントローラ１２は、図４（ｅ）に示すように、単位長さのコードを一旦ＲＡＭ１２４に格納した後、フラッシュメモリ１２３に書き込む。この動作を複数回繰り返す。そして、メインコントローラ１１はファームウエア１０３のフッタ（Ｆｏｏｔｅｒ）をエンジンコントローラ１２に送信する一方、これを受けたメインコントローラ１１は、図４（ｆ）に示すように、該ヘッダを一旦ＲＡＭ１２４に格納した後、フラッシュメモリ１２３に書き込む。
【００５１】
こうして、ファームウエアの書き換えが完了すると、メインコントローラ１１は再起動処理を実行し、装置全体が再起動され、上記のようにして書き換えられたファームウエアを有効なものとする。
【００５２】
以上のように、この実施形態によれば、印刷モードから書換モードに切り替わると、メインコントローラ１１からエンジンコントローラ１２に送信可能な複数のコマンドのうち書換処理に必要なコマンドのみが使用可能となっており、ファームウエアの書換と関係のないコマンドがメインコントローラ１１からエンジンコントローラ１２に送信されるのを規制している。したがって、エンジンコントローラ１２は書換モードで使用される７つのコマンドに対応したＤＬステータスのみを返信すればよく、書換モードにおいてメインコントローラ１１とエンジンコントローラ１２との間での通信効率を向上させることができる。その結果、ファームウエアの書換効率を向上させることができる。
【００５３】
なお、本発明は上記した実施形態に限定されるものではなく、その趣旨を逸脱しない限りにおいて上述したもの以外に種々の変更を行うことが可能である。例えば、上記実施形態では、書換モードにおいて有効なコマンドセットとして７つのコマンドを用意しているが、コマンドの種類や個数などについては上記実施形態に限定されず、エンジンコントローラ１２からメインコントローラ１１に返信するステータスについてもＤＬステータスに限定されないことは言うまでもない。
【００５４】
また、上記実施形態では、操作パネル１３のスイッチ１３１群を操作することで書換モードへのモード切替を指示するように構成しているが、ホストコンピュータ１００からのモード切替を指示する、例えばホストコンピュータ１００で起動されたプリントドライバから上記モード切替を指示するように構成してもよい。
【００５５】
また、上記実施形態では、ホストコンピュータ１００からの画像信号に基づき画像を形成する画像形成装置、つまりプリンタに本発明を適用しているが、本発明の適用対象はこれに限定されるものではなく、互いに通信可能に接続された２つのコントローラにより画像形成を行う複写機やファクシミリ装置などの画像形成装置全般に適用することができる。
【００５６】
さらに、上記実施形態では、２つのコントローラ１１，１２を通信インターフェースを介して相互に通信可能に接続した画像形成装置に対して本発明を適用しているが、例えば特開平１２−１７２４５３号公報に記載されたように、ホストコンピュータなどのホスト装置と、プリンタなどの画像形成装置とを相互に通信可能に接続した情報処理システムに対しても本発明を適用することができ、同様の作用効果を得ることができる。
【００５７】
【発明の効果】
以上のように、請求項１ないし４の発明によれば、書換モードにおいては複数種類のコマンドの一部のみを使用可能とし、ファームウエアの書換と関係のないコマンドがメインコントローラからエンジンコントローラに送信されるのを規制しているので、メインコントローラとエンジンコントローラとの間での通信効率を向上させることができ、その結果、高い効率でファームウエアの書換を行うことができる。
【００５８】
また、請求項５ないし８の発明によれば、書換モードにおいては複数種類のコマンドの一部のみを使用可能とし、ファームウエアの書換と関係のないコマンドがホスト装置から画像形成装置に送信されるのを規制しているので、ホスト装置と画像形成装置との間での通信効率を向上させることができ、その結果、高い効率でファームウエアの書換を行うことができる。
【図面の簡単な説明】
【図１】この発明にかかる画像形成装置の一実施形態を示す図である。
【図２】図１の画像形成装置の電気的構成を示すブロック図である。
【図３】メインコントローラとエンジンコントローラとの間で行われる通信手順を示す図である。
【図４】エンジンコントローラでのデータの転送状態を示す模式図である。
【符号の説明】
１１…メインコントローラ
１２…エンジンコントローラ
１０１…外部記録媒体
１０２…ダウンロードプログラム
１０３…ファームウエア
１２３…フラッシュメモリ
【図１】
2004029876.tif 000003
【図２】
2004029876.tif 000004
【図３】
2004029876.tif 000005
【図４】
2004029876.tif 000006