(57)【要約】【課題】複数の処理モジュールを含むデータ処理装置において、処理モジュール間の通信に関する通信パラメータの不整合により起動不具合が生じた場合でも、データ処理装置の動作を確保する。【解決手段】処理モジュールにより実行される処理プログラムの更新時に、更新前の処理プログラムから通信パラメータが抽出され、更新後の処理プログラムと更新前の処理プログラムの通信パラメータが合成された処理プログラムが作成され、記憶部に格納される。その後の処理プログラムの起動時に、更新後の処理プログラムの通信パラメータを用いた起動が行われ、この起動が異常である場合には、更新前の通信パラメータを用いて再起動が行われる。【選択図】図６
2005032014.tif 000002
【特許請求の範囲】
【請求項１】
演算処理部と、処理プログラムを格納した記憶部と、を有する処理モジュールであって、前記演算処理部が前記処理プログラムを実行することにより、他の処理モジュールと通信を行いつつ、所定の機能を実現する処理モジュールを複数含んで構成されたデータ処理装置において、
前記処理プログラムを更新後の起動時に、更新後の処理プログラムの通信パラメータを用いて起動を行う第一の起動手段と、
前記第一の起動手段による起動が異常であると判定された場合に、前記更新前の処理プログラムの通信パラメータを用いて再起動を行う第二の起動手段と、
を備えたことを特徴とするデータ処理装置。
【請求項２】
請求項１に記載のデータ処理装置であって、
前記第一の起動手段は、前記更新後の処理プログラムの通信パラメータを用いて、更新後の処理プログラムの起動を行い、
前記第二の起動手段は、前記更新前の処理プログラムの通信パラメータを用いて、更新後の処理プログラムの起動を行うことを特徴とするデータ処理装置。
【請求項３】
請求項２に記載のデータ処理装置であって、
前記更新前の処理プログラムの通信パラメータは、前記更新前の処理プログラムから抽出され、前記記憶部に格納されたことを特徴とするデータ処理装置。
【請求項４】
請求項１に記載のデータ処理装置であって、
前記第一の起動手段は、前記更新後の処理プログラムの通信パラメータを用いて、更新後の処理プログラムの起動を行い、
前記第二の起動手段は、前記更新前の処理プログラムの通信パラメータを用いて、更新前の処理プログラムの起動を行うことを特徴とするデータ処理装置。
【請求項５】
請求項１に記載のデータ処理装置であって、
前記更新前の処理プログラムの通信パラメータは、更新直前の処理プログラムの通信パラメータ、又は前記処理モジュールに初期設定された処理プログラムの通信パラメータの少なくとも一方であることを特徴とするデータ処理装置。
【請求項６】
請求項１に記載のデータ処理装置であって、
前記更新前の処理プログラムの通信パラメータは、更新直前の処理プログラムの通信パラメータと、前記処理モジュールに初期設定された処理プログラムの通信パラメータと、を含み、
前記第二の起動手段は、前記更新直前の処理プログラムの通信パラメータを用いて再起動を行い、この再起動が異常であると判定された場合に、前記初期設定された処理プログラムの通信パラメータを用いて再起動を行うことを特徴とするデータ処理装置。
【請求項７】
請求項１に記載のデータ処理装置であって、
前記更新後の処理プログラムの通信パラメータは、起動時用の第一登録パラメータとして前記記憶部に格納され、前記更新前の通信パラメータは、前記異常判定後の再起動時用の第二登録パラメータとして前記記憶部に格納され、
前記第一の起動手段は、前記第一登録パラメータを用いて起動を行い、この起動が正常であると判定された場合に、前記更新後の処理プログラムの通信パラメータを前記第二登録パラメータとして前記記憶部に格納し、
他の処理モジュールにおいて起動が異常であると判定された場合に、前記第二の起動手段は、前記第二登録パラメータを用いた起動を行うことを特徴とするデータ処理装置。
【請求項８】
請求項１に記載のデータ処理装置であって、
前記第二の起動手段による起動が正常に行われた場合に、ユーザに対して警告を行う警告手段を備えたことを特徴とするデータ処理装置。
【請求項９】
データ処理装置を構成する複数の処理モジュールに格納された処理プログラムを起動するための起動プログラムにおいて、
更新後の処理プログラムの通信パラメータを用いて起動を行う第一の起動工程と、
第一の起動工程による起動が異常と判定された場合に、更新前の処理プログラムの通信パラメータを用いて再起動を行う第二の起動工程と、
を含むことを特徴とするデータ処理装置の起動プログラム。
【請求項１０】
処理プログラムを実行して、他の処理モジュールと通信を行いつつ、所定の機能を実現する処理モジュールを複数含んで構成されたデータ処理装置の起動方法であって、
更新後の処理プログラムの通信パラメータを用いて起動を行う第一の起動ステップと、
前記第一の起動ステップにおける起動が異常である場合に、更新前の処理プログラムの通信パラメータを用いて再起動を行う第二の起動ステップと、
を含むことを特徴とするデータ処理装置の起動方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、演算処理部、記憶部などを有する処理モジュールを複数含んで構成されたデータ処理装置、例えばプリンタ装置、コピー装置、ファックス装置、スキャナ装置などに関する。また、本発明は、各処理モジュールにより実行される処理プログラムを起動するための起動プログラム及び起動方法に関する。
【背景技術】
【０００２】
プリンタ装置内には、プリンタ装置に必要な各機能の実現するために、基板上に演算処理装置（Central Processing Unit：以下、ＣＰＵと呼ぶ）、読み出し専用メモリ（Read Only Memory：以下、ＲＯＭと呼ぶ）などを搭載して構成された処理モジュールが複数設けられている。各処理モジュールの機能は、例えば、プリンタ装置の全体的な制御、タッチパネル等のユーザインターフェースの制御、印刷処理の制御などである。各処理モジュールでは、ＣＰＵがＲＯＭに格納された処理プログラムを実行することで、他の処理モジュールと通信を行いつつ、各処理モジュールに特有な処理が行われる。
【０００３】
各処理モジュールの処理プログラムは開発が進められており、新しいバージョンの処理プログラムが完成すると、この処理プログラムはユーザに配布される。ユーザは新しいバージョンの処理プログラムを入手して、各自、処理プログラムを更新してプリンタ装置を使用する。なお、関連技術の従来文献として以下のものがある。
【０００４】
【特許文献１】特開平１１−０６５７８１号公報
【特許文献２】特開２００２−１５７１３９号公報
【特許文献３】特開平１０−９７３９０号公報
【特許文献４】特開２０００−２８４９５号公報
【特許文献５】特開平８−２７８９２７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、処理プログラムを更新すると、プリンタ装置が起動しなくなってしまう場合がある。このトラブルの原因は、処理プログラムを更新することで、処理プログラムごとに設定された通信パラメータが変更されて処理モジュール間で不整合が生じ、更新された処理モジュールと他の処理モジュールとの通信に不具合が生じるためである。
【０００６】
起動不具合が生じる状況を、図１３に一例を挙げて説明する。処理プログラムの更新前には全ての処理モジュールの通信パラメータは同じである。この状態で、処理プログラムの更新により一つの処理モジュールの通信速度が９６００ｂｐｓから１９２００ｂｐｓに変更されると、通信速度が整合しない状態となる。これにより、処理モジュール間の通信が不可能となり、各処理モジュールが他の処理モジュールを認識できず、プリンタ装置が起動しなくなる。
【０００７】
このような事態となった時には、プリンタ装置を起動できないため、処理プログラムのバージョンを元に戻して、全ての処理モジュールの通信パラメータを整合させることもできない。このため、プリンタ装置の保守を行うサービスマンが、起動不具合の発生原因となった処理モジュールを、適切なバージョンの処理プログラムが格納された処理モジュールに交換して対応する必要がある。このような対応は、交換費用や時間損失が大きい。
【０００８】
なお、上記課題の説明においては、プリンタ装置の場合について説明したが、上述した課題は、他のデータ処理装置、例えばデジタルコピー装置、ＦＡＸ装置、スキャナ装置などでも発生し得る。
【０００９】
本発明は、上述の課題に鑑みてなされたものであり、データ処理装置において通信パラメータの不整合による起動不具合が生じた場合でも、データ処理装置の動作を確保することを目的とする。
【課題を解決するための手段】
【００１０】
上記目的を達成するために、本発明は、演算処理部と、処理プログラムを格納した記憶部と、を有する処理モジュールであって、前記演算処理部が前記処理プログラムを実行することにより、他の処理モジュールと通信を行いつつ、所定の機能を実現する処理モジュールを複数含んで構成されたデータ処理装置において、前記処理プログラムを更新後の起動時に、更新後の処理プログラムの通信パラメータを用いて起動を行う第一の起動手段と、前記第一の起動手段による起動が異常であると判定された場合に、前記更新前の処理プログラムの通信パラメータを用いて再起動を行う第二の起動手段と、を備えたものである。このように、更新後の処理プログラムの通信パラメータを用いた起動に不具合があるとき、更新前の処理プログラムの通信パラメータを用いて起動することにより、データ処理装置をより確実に起動することができる。なお、通信パラメータとは、データ処理装置の起動不具合の原因となるあらゆる種類のパラメータであり、例えばシリアル通信であれば、通信速度、データ長、パリティ種類、フロー制御、ストップビット種類などであり、Ｅｔｈｅｒｎｅｔ（登録商標）などに代表されるＬＡＮでは宛先アドレスや送信元アドレスなどである。
【００１１】
上述した本発明の一態様においては、前記第一の起動手段は、前記更新後の処理プログラムの通信パラメータを用いて、更新後の処理プログラムの起動を行い、前記第二の起動手段は、前記更新前の処理プログラムの通信パラメータを用いて、更新後の処理プログラムの起動を行う。この態様では、更新後の処理プログラムには本来適合しない更新前の処理プログラムの通信パラメータを用いて起動を行うものの、処理プログラムの更新処理を再度行うなどの簡易な処理であれば問題なく行うことができるため、有効である。また、この態様では、前記更新前の処理プログラムの通信パラメータのみを、前記更新前の処理プログラムから抽出し、前記記憶部に格納すればよいため、記憶部の記憶領域を節約する観点から特に好ましい。
【００１２】
また、本発明の別の態様においては、前記第一の起動手段は、前記更新後の処理プログラムの通信パラメータを用いて、更新後の処理プログラムの起動を行い、前記第二の起動手段は、前記更新前の処理プログラムの通信パラメータを用いて、更新前の処理プログラムの起動を行う。この態様では、更新前の処理プログラム全体を保存しておく必要があるため、記憶部の記憶容量が十分大きい場合に好適である。
【００１３】
また、前記更新前の処理プログラムの通信パラメータとしては、更新直前の処理プログラムの通信パラメータ、又は前記処理モジュールに初期設定された処理プログラムの通信パラメータの少なくとも一方を用いればよい。また、より確実にデータ処理装置の起動を行うためには、前記更新前の処理プログラムの通信パラメータが、更新直前の処理プログラムの通信パラメータと、前記処理モジュールに初期設定された処理プログラムの通信パラメータと、を含み、前記第二の起動手段は、前記更新直前の処理プログラムの通信パラメータを用いて再起動を行い、この再起動が異常であると判定された場合に、前記初期設定された処理プログラムの通信パラメータを用いて再起動を行うことが好ましい。
【００１４】
また、前記更新後の処理プログラムの通信パラメータは、起動時用の第一登録パラメータとして前記記憶部に格納され、前記更新前の通信パラメータは、前記異常判定後の再起動時用の第二登録パラメータとして前記記憶部に格納され、前記第一の起動手段は、前記第一登録パラメータを用いて起動を行い、この起動が正常であると判定された場合に、前記更新後の処理プログラムの通信パラメータを前記第二登録パラメータとして前記記憶部に格納し、他の処理モジュールにおいて起動が異常であると判定された場合に、前記第二の起動手段は、前記第二登録パラメータを用いた起動を行うことが好ましい。これにより、他の処理モジュールの起動不具合により再起動する場合に、起動不具合を生じなかった処理モジュールでは、常に更新後の通信パラメータを用いて起動を行うことができる。
【００１５】
また、本発明のデータ処理装置は、前記第二の起動手段による起動が正常に行われた場合に、ユーザに対して警告を行う警告手段を備えることが好ましい。これにより、起動の異常をユーザに認識させることができる。また、更新前の処理プログラムの通信パラメータが格納される記憶部は、処理プログラムの更新対象である処理モジュールの記憶部でもよいし、他の処理モジュールの記憶部でもよい。
【００１６】
また、本発明は、データ処理装置を構成する複数の処理モジュールに格納された処理プログラムを起動するための起動プログラムにおいて、更新後の処理プログラムの通信パラメータを用いて起動を行う第一の起動工程と、第一の起動工程による起動が異常と判定された場合に、更新前の処理プログラムの通信パラメータを用いて再起動を行う第二の起動工程と、を含むものである。
【００１７】
また、本発明は、処理プログラムを実行して、他の処理モジュールと通信を行いつつ、所定の機能を実現する処理モジュールを複数含んで構成されたデータ処理装置の起動方法であって、更新後の処理プログラムの通信パラメータを用いて起動を行う第一の起動ステップと、前記第一の起動ステップにおける起動が異常である場合に、更新前の処理プログラムの通信パラメータを用いて再起動を行う第二の起動ステップと、を含む方法である。
【００１８】
なお、本発明は、データ処理を行う様々な装置、例えばプリンタ装置、コピー装置、ファックス装置、スキャナ装置などに適用することができる。
【発明の効果】
【００１９】
本発明は、処理プログラムを更新後の起動時に、更新後の処理プログラムの通信パラメータを用いて起動を行い、この起動が異常であると判定された場合に、更新前の処理プログラムの通信パラメータを用いて再起動を行う。これにより、データ処理装置をより安定して起動することができる。
【発明を実施するための最良の形態】
【００２０】
以下に、図面を参照して、本発明の実施形態を説明する。なお、以下の説明では、データ処理装置がプリンタ装置である場合を一例として説明する。
【００２１】
図１には、本発明の第一の実施形態に係るプリンタシステム１０の構成の概略が示されている。このプリンタシステム１０は、大別して、プリンタ装置１８と、このプリンタ装置１８に通信線１４を介して接続されたパーソナルコンピュータ１２と、で構成されている。また、プリンタ装置１８はネットワークに接続されている。
【００２２】
プリンタ装置１８には、基板上にＣＰＵ、ＲＯＭなどを搭載して構成された処理モジュール２０，５０，６０が複数設けられている。各処理モジュール２０，５０，６０のＲＯＭにはその処理モジュールに特有の処理プログラムが格納されており、各ＣＰＵが同一基板上のＲＯＭに格納された処理プログラムを実行することにより、プリンタ装置１８に必要な処理を行う。具体的には、コントローラモジュール２０は、プリンタ装置１８の全体的な制御やイメージ画像データの生成処理を行う。ユーザインターフェース（User Interface：以下、ＵＩと呼ぶ）制御モジュール５０は、タッチパネルや押しボタンなどを含むユーザインターフェースの制御を行う。イメージ出力端末（Image Output Terminal：以下、ＩＯＴと呼ぶ）制御モジュール６０は、イメージ画像データを記録用紙に印刷するための制御を行う。
【００２３】
コントローラモジュール２０は、プリンタ装置１８内に延設された通信線４０，４２を介してＵＩ制御モジュール５０、ＩＯＴ制御モジュール６０に接続されている。各処理モジュール２０，５０，６０が処理プログラムを実行する際には、処理モジュール間で必要なデータのやり取りが行われる。
【００２４】
次に、図２を参照して、コントローラモジュール２０の構成を説明する。コントローラモジュール２０は、基板上に、ＣＰＵ２２と、電源オフ時にもデータが消去されない不揮発性メモリ（Non Volatile RAM：以下、ＮＶＲＡＭと呼ぶ）２４と、データを書き換え可能なフラッシュＲＯＭ２６と、ＣＰＵ２２の作業領域であるＤＲＡＭ（Dynamic Random Access Memory）３２と、このＤＲＡＭを制御するＤＲＡＭコントローラ３０と、ネットワークに接続されたイーサネットコントローラ２８と、ネットワーク経由で送られてくるプリントデータからイメージ画像データを生成する画像処理回路３４と、が搭載され構成されている。
【００２５】
上述したコントローラモジュール２０の各構成は、基板上に配設されたＰＣＩバスを介して互いに接続されている。また、ＣＰＵ２２は、通信線１４，４０を介してパーソナルコンピュータ１２、ＵＩ制御モジュール５０に接続されている。また、画像処理回路３４は、通信線４２を介してＩＯＴ制御モジュール６０に接続されている。
【００２６】
上記のＮＶＲＡＭ２４、フラッシュＲＯＭ２６及びＤＲＡＭ３２は、プログラムやデータなどを一時的又は恒久的に記憶する記憶手段である。これらの記憶手段２４，２６，３２の記憶領域には図３に示すようにアドレス（000000h〜FFFFFFh）が割り付けられており、ＣＰＵ２２に管理されている。フラッシュＲＯＭ２６には、プリンタ装置１８全体を制御するための処理プログラムが格納されている。
【００２７】
図４に示すように、ＮＶＲＡＭ２４の記憶領域には、処理プログラムの起動時に利用されるダウンロードフラグ、複数のパラメータ配列ポインタ［０］〜［２］、その他ユーザ、サービスマンにより設定された動作情報などが格納される。各パラメータ配列ポインタ［０］〜［２］はそれぞれ、フラッシュＲＯＭ２６内に格納された複数の通信パラメータからなる通信パラメータ群の先頭アドレスを指示するデータである。その指示する通信パラメータ群は状況により変更されるが、処理プログラムが更新された直後には、各パラメータ配列ポインタ［０］〜［２］はそれぞれ（０）更新された最新の処理プログラムに含まれる通信パラメータ群の先頭アドレスを指示するデータ、（１）更新前の処理プログラムに含まれる通信パラメータ群の先頭アドレスを指示するデータ、（２）コントローラモジュール２０の製造時に初期的に設定された処理プログラムに含まれる通信パラメータ群の先頭アドレスを指示するデータが格納される。また、パラメータ配列ポインタに通信パラメータ群が対応しない場合には、パラメータ配列ポインタには無効を意味する“ｘｘ００００００ｈ”が格納される。なお、パラメータ配列ポインタ［０］により指示される通信パラメータ群は、処理プログラムの起動時用に登録された登録パラメータであり、パラメータ配列ポインタ［１］及び［２］により指示される通信パラメータ群は、処理プログラムの再起動時用に登録された登録パラメータである。
【００２８】
また、ダウンロードフラグには、プリンタ装置１８の起動時又は再起動時に使用されるパラメータ配列を特定するために、いずれか一つのパラメータ配列ポインタを指定するデータが設定される。具体的には、ダウンロードフラグには“０”、“１”、“２”、“３”のいずれかが設定される。ダウンロードフラグが“０”又は“１”に設定された場合には、パラメータ配列ポインタ［０］に指示された通信パラメータ群が指定される。ダウンロードフラグが“２”に設定された場合には、パラメータ配列ポインタ［１］に指示された通信パラメータ群が指定される。ダウンロードフラグが“３”に設定された場合には、パラメータ配列ポインタ［２］に指示された通信パラメータ群が指定される。
【００２９】
以上の説明では、コントローラモジュール２０についてその構成を説明した。本実施形態のプリンタ装置１８には、その他にＵＩ制御モジュール５０及びＩＯＴ制御モジュール６０が設けられているが、これらの処理モジュール５０，６０はＣＰＵ、ＮＶＲＡＭ、フラッシュＲＯＭ、ＤＲＡＭなどを有し、コントローラモジュール２０と同様な構成であるため、説明を省略する。
【００３０】
次に、図５のフローチャートを参照して、プリンタ装置１８がバージョンアップされた新規の処理プログラムをパーソナルコンピュータ１２からダウンロードして、処理プログラムの更新を行う処理について説明する。
【００３１】
ユーザがパーソナルコンピュータ１２を利用してダウンロード指令をプリンタ装置１８に送信すると、プリンタ装置１８のコントローラモジュール２０はダウンロード指令を取り込み（Ｓ５０１）、処理プログラムを更新するための更新プログラムをフラッシュＲＯＭ２６から読み出し、ＤＲＡＭ３２に展開する（Ｓ５０２）。その後、この更新プログラムによる処理が開始されると、コントローラモジュール２０はダウンロードフラグを“１”に設定する（Ｓ５０３）。そして、ダウンロード指令に含まれる更新対象の処理モジュールを特定するモジュール特定データを参照し、このデータが指定する処理モジュールがコントローラモジュール２０自体であるか否かを判定する（Ｓ５０４）。
【００３２】
コントローラモジュール２０自体が特定されている場合には、コントローラモジュール２０は現状の更新前の処理プログラムに含まれる通信パラメータ群を、ＮＶＲＡＭ２４からＤＲＡＭ３２に退避する（Ｓ５０５）。ここで、退避された更新前の通信パラメータ群には、製造時に初期設定された処理プログラム用の通信パラメータ群と、現状の更新直前の処理プログラム用の通信パラメータ群が含まれる。次に、パーソナルコンピュータ１２から新規の処理プログラムをダウンロードして取得し、ＤＲＡＭ３２に展開する（Ｓ５０６）。
【００３３】
次に、フラッシュＲＯＭ２６に十分な空き容量があるか否かを調べ（Ｓ５０７）、空き容量が十分な場合には、ダウンロードにより取得された新規の処理プログラムと、初期設定された通信パラメータ群及び更新直前の通信パラメータ群を合成した処理プログラムを生成し（Ｓ５０８）、フラッシュＲＯＭ２６に書き込む（Ｓ５０９）。ここで、合成された処理プログラムが書き込まれたフラッシュＲＯＭ２６の記憶領域を図６に示す。フラッシュＲＯＭ２６には、多数の処理指令を含む処理プログラム本体、処理プログラムのバージョン情報、更新後の処理プログラムの通信パラメータ群、更新前の処理プログラムの通信パラメータ群、初期の処理プログラムの通信パラメータ群が格納されている。なお、この合成は、通信パラメータ群をプリンタ装置１８からパーソナルコンピュータ１２に送信して、パーソナルコンピュータ１２が行ってもよい。一方、ステップＳ５０７において、空き容量が不十分であると判定された場合には、処理プログラムの合成は行わず、処理プログラムをそのままフラッシュＲＯＭ２６に書き込む（Ｓ５０９）。次に、上記３つの通信パラメータ群の先頭アドレスを、ＮＶＲＡＭ２４にパラメータ配列ポインタ［０］〜［２］として設定する（Ｓ５１０）。
【００３４】
また、ステップＳ５０４において、モジュール特定データにより、コントローラモジュール２０以外の処理モジュール５０，６０が特定されている場合には、ダウンロード指令を、ＵＩ制御モジュール５０及びＩＯＴ制御モジュール６０に転送する（Ｓ５１１）。以上の処理を終了すると、さらにダウンロード指令があるか否かを判定し（Ｓ５１２）、ダウンロード指令が追加して送られてくる場合には、ステップＳ５０４の処理に戻る。ダウンロード指令が送られてこない場合には、処理プログラムが更新された旨を表示し、プリンタ装置１８の主電源を一度オフしてから起動処理を行う（Ｓ５１３）。
【００３５】
以上の更新処理の説明では、コントローラモジュール２０を一例として説明したが、ＵＩ制御モジュール５０、ＩＯＴ制御モジュールにおいても同じ更新プログラムが格納されており、同様な処理が行われる。
【００３６】
次に、図７のフローチャートを参照して、プリンタ装置１８が起動時及び再起動時に行う起動処理について説明する。
【００３７】
ユーザによりプリンタ装置１８の主電源がオンされると、各処理モジュール２０，５０，６０はフラッシュＲＯＭ２６に格納された処理プログラムの一部である起動プログラムをＤＲＡＭ３２に展開し、起動処理を開始する（Ｓ７０１）。各処理モジュール２０，５０，６０のＣＰＵ２２は、ＮＶＲＡＭ２４に格納されたダウンロードフラグを読み出し、このダウンロードフラグに対応したパラメータ配列ポインタを読み出す。そして、このパラメータ配列ポインタにより指示される通信パラメータ群をフラッシュＲＯＭ２６から読み出した後、更新後の処理プログラム全体を起動する（Ｓ７０２）。
【００３８】
ＣＰＵ２２は処理プログラムが、他の処理モジュール２０，５０，６０とのバージョンの不整合を発生することなく、正常に起動したか否かを判定し（Ｓ７０３）、正常な起動が判定された場合には、ダウンロードフラグが１以下であるか又は２以上であるかを判定することにより、その起動に使用された通信パラメータ群がＮＶＲＡＭ２４に格納された処理プログラムの正規の通信パラメータ群か、又は処理プログラムに適合していない通信パラメータ群であるかを判定する（Ｓ７０４）。
【００３９】
ステップＳ７０４において、更新後の通信パラメータ群により起動されたことが判定された場合には、処理プログラムの更新処理において“１”に設定されたダウンロードフラグを解除して“０”に設定する（Ｓ７０５）。そして、パラメータ配列ポインタ［０］の設定値をパラメータ配列ポインタ［１］にコピーする（Ｓ７０６）。すなわち、起動時用に登録された登録パラメータ（パラメータ配列ポインタ［０］により指定される通信パラメータ群）を、再起動時用に登録された登録パラメータ（パラメータ配列ポインタ［１］により指定される通信パラメータ群）として格納する。このステップＳ７０５の処理は、他の処理モジュール２０，５０，６０の処理プログラムの更新が行われて、その処理プログラムの更新により起動が異常と判定された場合に、その後の再起動において更新前の通信パラメータ群が用いられることを防止する処理である。これにより、起動に異常に発生しなかった処理モジュールでは、その後も更新後の通信パラメータ群を用いて再起動が行われる。
【００４０】
一方、ステップＳ７０４において、処理プログラムに適合しない更新前の通信パラメータ群を用いて起動されたことが判定された場合には、図８に示す警告を表示する。この警告では、処理モジュール２０，５０，６０間で処理プログラムのバージョン不整合が発生している旨、及びその対応策を示すメッセージが表示される（Ｓ７０７）。その後、プリンタ装置１８は通常の処理を行う（Ｓ７０８）。
【００４１】
また、ステップＳ７０３において、他の処理モジュール２０，５０，６０とバージョン不整合が発生して、正常に起動していないと判定された場合には、ステップＳ７０９に進み、ダウンロードフラグの設定値が“０”であるか否かを判定する。ここで、ダウンロードフラグの設定値が“０”である場合には、少なくとも一回は更新後の通信パラメータ群を用いて正常に起動しており、各処理モジュール２０，５０，６０の通信パラメータ群に起動不具合の原因はない。よって、それ以外に起動不具合の原因があるため、図９に示すサービスエンジニアによる対応を促すメッセージを表示する（Ｓ７１３）。
【００４２】
一方、ステップＳ７０９においてダウンロードフラグの設定値が“１”以上であると判定された場合には、処理プログラムを更新する前の通信パラメータ群を用いることにより、再起動に成功する可能性がある。そこで、パラメータ配列ポインタ［１］，［２］の設定値が“ｘｘ００００００ｈ”であるか否かを調べ、他の使用可能な通信パラメータ群の有無を判定する（Ｓ７１０）。ここで、他に使用可能な通信パラメータ群が有ると判定された場合には、ダウンロードフラグをインクリメント（＋１）し、ＮＶＲＡＭ２４に再格納する（Ｓ７１１）。そして、図１０に示すバージョン不整合の発生、再起動処理の実行を知らせるメッセージを表示し（Ｓ７１２）、ユーザにより“ＯＫ”が選択されるとステップＳ７０２に進み、更新前の通信パラメータを用いて更新後の処理プログラムの再起動を行う。ステップＳ７０２以降の処理では、ダウンロードフラグの設定値が“２”である場合には、更新直前の通信パラメータ群を用いて再起動処理を試みる。更新直前の通信パラメータ群を用いても起動不具合が生じるため、ダウンロードフラグの設定値を“３”にインクリメントされた場合には、初期設定された通信パラメータ群を用いて再起動処理を試みる。
【００４３】
ステップＳ７１０において、他に使用可能な通信パラメータ群が無いと判定された場合には、ステップＳ７１３に進み、図９に示すサービスエンジニアによる対応を促すメッセージを表示する（Ｓ７１３）。
【００４４】
次に、上記の実施形態の変形例について説明する。上記の実施形態では、いずれかの処理モジュール２０，５０，６０において処理プログラムの更新処理が行われると、更新前の通信パラメータ群はその処理モジュール２０，５０，６０のフラッシュＲＯＭ２６に格納された。しかし、更新前の通信パラメータ群の格納先は、その処理モジュール２０，５０，６０自体に限られず、他の処理モジュール２０，５０，６０のフラッシュＲＯＭ２６であってもよい。例えば、図１１に示すように、コントローラモジュール２０の処理プログラム更新前の通信パラメータ群をＵＩ制御モジュール５０のフラッシュＲＯＭ２６に格納し、ＵＩ制御モジュール５０の処理プログラム更新前の通信パラメータ群をＩＯＴ制御モジュール６０のフラッシュＲＯＭ２６に格納し、ＩＯＴ制御モジュール６０の更新前の通信パラメータ群をコントローラモジュール２０のフラッシュＲＯＭ２６に格納してもよい。この場合の各処理モジュール２０，５０，６０のフラッシュＲＯＭ２６の記憶領域の状況を図１２に示す。処理プログラムの一部として他の処理モジュール２０，５０，６０の通信パラメータ群が格納される。各処理モジュール２０，５０，６０は起動時には必要に応じて、自己の通信パラメータ群の格納先である他の処理モジュール２０，５０，６０のフラッシュＲＯＭ２６から、更新前の通信パラメータ群の読み出し処理を行う。
【００４５】
また、上記の実施形態の別の変形例について説明する。上記の実施形態では、いずれかの処理モジュール２０，５０，６０において処理プログラムの更新処理が行われると、更新前の処理プログラムから通信パラメータ群のみを抽出した。しかし、通信パラメータ群のみを抽出したのは、フラッシュＲＯＭ２６の記憶容量の考慮したものであり、フラッシュＲＯＭ２６の記憶容量が十分に大きい場合には、通信パラメータ群だけでなく、更新前の処理プログラム全体をフラッシュＲＯＭ２６に格納してもよい。すなわち、更新前の処理プログラムを、起動不具合時に用いる予備的な処理プログラムとして設定しておき、更新後の処理プログラムの起動時に、更新後の処理プログラムの通信パラメータ群を用いた更新後の処理プログラムの起動が異常であると判定された場合に、更新前の処理プログラムの通信パラメータを用いて更新前の処理プログラムを起動してもよい。
【００４６】
以上、本発明の好適な実施形態について説明したが、本発明は上記実施形態に限定されるものではなく、等価な範囲で様々な変形が可能である。
【図面の簡単な説明】
【００４７】
【図１】本発明の実施形態に係るプリンタシステムの構成の概略を示す構成図である。
【図２】コントローラモジュールの構成を示す構成図である。
【図３】コントローラモジュールの記憶領域を示す説明図である。
【図４】ＮＶＲＡＭの記憶領域を示す説明図である。
【図５】更新プログラムの処理を示すフローチャートである。
【図６】フラッシュＲＯＭの記憶領域を示す説明図である。
【図７】起動プログラムの処理を示すフローチャートである。
【図８】画面表示される警告メッセージを示す説明図である。
【図９】画面表示される警告メッセージを示す説明図である。
【図１０】画面表示される警告メッセージを示す説明図である。
【図１１】変形例における通信パラメータ群の格納先を示す説明図である。
【図１２】変形例におけるフラッシュＲＯＭの記憶領域を示す説明図である。
【図１３】処理プログラムの更新前後の通信パラメータ群を示す説明図である。
【符号の説明】
【００４８】
１０  プリンタシステム、１２  パーソナルコンピュータ、１４  通信線、１８  プリンタ装置、２０  コントローラモジュール、２２  ＣＰＵ、２４  ＮＶＲＡＭ、２６  フラッシュＲＯＭ、２８  イーサネットコントローラ、３０  ＤＲＡＭコントローラ、３２  ＤＲＡＭ、３４  画像処理回路、４０，４２  通信線、５０  ＵＩ制御モジュール、６０  ＩＯＴ制御モジュール。
【図１】
2005032014.tif 000003
【図２】
2005032014.tif 000004
【図３】
2005032014.tif 000005
【図４】
2005032014.tif 000006
【図５】
2005032014.tif 000007
【図６】
2005032014.tif 000008
【図７】
2005032014.tif 000009
【図８】
2005032014.tif 000010
【図９】
2005032014.tif 000011
【図１０】
2005032014.tif 000012
【図１１】
2005032014.tif 000013
【図１２】
2005032014.tif 000014
【図１３】
2005032014.tif 000015