(57)【要約】【課題】プリンタ装置の不揮発性記憶媒体に記憶されているプリンタ制御プログラム等のデータが第三者によって作成されたデータに容易に書き換えられることを防止し、プリンタ装置に記憶されているプリンタ制御プログラム等のデータの信頼性を向上させるようなプリンタ装置およびその制御方法を提供する。【解決手段】プリンタ装置の電源起動時の状態を検出し、検出した状態の結果に基づき電源起動時に外部インタフェースから受信したデータを不揮発性記憶手段に記憶されたデータの書き換えに用いるか印刷するかを判別し、受信したデータを不揮発性記憶手段に記憶されたデータの書き換えに用いるとデータと判別した場合は、当該データが正当なデータであるか否かを検証して、受信したデータが正当なデータであると判断した場合に、当該データで不揮発性記憶手段に記憶されたデータを書き換える。【選択図】  図１
2005001218.tif 000002
【特許請求の範囲】
【請求項１】
不揮発性記憶手段を有し、該不揮発性記憶手段に記憶されたデータに基づき外部インタフェースから受信したデータを印刷するプリンタ装置において、
電源起動時の状態を検出し、該状態の検出に基づき該電源起動時に前記外部インタフェースから受信したデータを前記不揮発性記憶手段に記憶されたデータの書き換えに用いるか印刷するかを判別する判別手段と、
前記判別手段により前記外部インタフェースから受信したデータを前記不揮発性記憶手段に記憶されたデータの書き換えに用いると判別した場合は、該データが正当なデータであるか否かを検証する検証手段と、
前記検証手段により前記外部インタフェースから受信したデータが正当なデータであると判断した場合に、該データで不揮発性記憶手段に記憶されたデータを書き換えるデータ書換手段と
を具備することを特徴とするプリンタ装置。
【請求項２】
前記データ書換手段により前記不揮発性記憶手段に記憶されたデータの書き換えを行っている間、その旨を報知する報知手段
を更に具備することを特徴とする請求項１記載のプリンタ装置。
【請求項３】
前記判別手段は、
電源起動時の所定のスイッチの操作状態若しくは所定の動作または状態を検出するセンサの検出状態若しくは所定の部品の装着状態に応じて前記外部インタフェースから受信したデータを前記不揮発性記憶手段に記憶されたデータの書き換えに用いるか印刷するかを判別することを特徴とする請求項１または２記載のプリンタ装置。
【請求項４】
前記検証手段は、
前記外部インタフェースから受信したデータに付加された特定情報に基づき前記外部インタフェースから受信したデータが正当なデータであるか否かを検証することを特徴とする請求項１または２記載のプリンタ装置。
【請求項５】
前記特定情報は、
前記外部インタフェースから受信したデータのヘッダに付加された該データの作成元を特定する情報であることを特徴とする請求項４記載のプリンタ装置。
【請求項６】
前記外部インタフェースから受信したデータは、
暗号化されていることを特徴とする請求項１または２記載のプリンタ装置。
【請求項７】
不揮発性記憶手段を有し、該不揮発性記憶手段に記憶されたデータに基づき外部インタフェースから受信したデータを印刷するプリンタ装置の制御方法において、
電源起動時の状態を検出し、該状態の検出に基づき該電源起動時に前記外部インタフェースから受信したデータを前記不揮発性記憶手段に記憶されたデータの書き換えに用いるか印刷するかを判別し、
該判別により前記外部インタフェースから受信したデータを前記不揮発性記憶手段に記憶されたデータの書き換えに用いると判断した場合は、該データが正当なデータであるか否かの検証を行い、
該検証により前記外部インタフェースから受信したデータが正当なデータであると判断した場合に、該データで不揮発性記憶手段に記憶されたデータを前記外部インタフェースから受信したデータで書き換える
ことを特徴とするプリンタ装置の制御方法。
【請求項８】
前記外部インタフェースから受信したデータにより前記不揮発性記憶手段に記憶されたデータの書き換えを行っている間はその旨を報知する
ことを特徴とする請求項７記載のプリンタ装置の制御方法。
【請求項９】
電源起動時の所定のスイッチの操作状態若しくは所定の動作または状態を検出するセンサの検出状態若しくは所定の部品の装着状態に応じて前記外部インタフェースから受信したデータを前記不揮発性記憶手段に記憶されたデータの書き換えに用いるか印刷するかを判別する
ことを特徴とする請求項７または８記載のプリンタ装置の制御方法。
【請求項１０】
前記外部インタフェースから受信したデータに付加された特定情報に基づき前記外部インタフェースから受信したデータが正当なデータであるか否かの検証を行う
ことを特徴とする請求項７または８記載のプリンタ装置の制御方法。
【請求項１１】
前記特定情報は、
前記外部インタフェースから受信したデータのヘッダに付加された該データの作成元を特定する情報であることを特徴とする請求項１０記載のプリンタ装置の制御方法。
【請求項１２】
前記外部インタフェースから受信したデータは、暗号化されていることを特徴とする請求項７または８記載のプリンタ装置の制御方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、プリンタ装置およびその制御方法に関し、特に、入力されたデータを印刷するかもしくは不揮発性記憶媒体に記憶するかを判断し、記憶すると判断した場合は、入力されたデータの作成元の正当性を判断して正当なデータであると判断した場合に入力されたデータを不揮発性記憶媒体に記憶するようにしたプリンタ装置およびその制御方法に関する。
【０００２】
【従来の技術】
従来、プリンタ装置を稼動させる場合は、プリンタ装置の電源をオンにし、プリンタ装置に内蔵されたＣＰＵ（＝Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）がプリンタ装置を制御する制御プログラムを実行することにより、制御プログラムの動作に基づいてプリンタ装置が正常に動作して印刷処理が可能となる。
【０００３】
プリンタ装置の動作を制御する制御プログラムは、書き換え可能な不揮発性メモリに格納されており、プリンタ装置の電源オンと同時に、プリンタ装置のＣＰＵが不揮発性メモリに格納されている制御プログラムをＲＡＭ（＝Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）等の一時記憶装置に読み出し、読み出した制御プログラムの命令手順に従って制御する。
【０００４】
このような制御プログラムが書き換え可能な不揮発性メモリに格納されたプリンタ装置にあっては、制御プログラムが何らかの原因で破壊されてプログラムエラーを発生してしまうと、プリンタ装置の電源をオンにしても制御プログラムが正常に動作せず、プリンタ装置が正常に動作しなくなる。
【０００５】
プリンタ装置の制御プログラムに異常が発生してしまうと、電源を再投入して正常復帰を試みてもプリンタ装置が正常動作することは困難であり、このような障害を解除するためには不揮発性メモリに記憶格納されている制御プログラムのデータを正しいデータに書き換える必要がある。
【０００６】
しかし、不揮発性メモリに記憶格納されている制御プログラムのデータを正しいデータに書き換えるためには、制御プログラムが格納されている不揮発性メモリを交換するか又は専用治具によって正しい制御プログラムのデータに書き換える作業が必要であり、これらの作業は非常に面倒な作業である。
【０００７】
そこで、例えば特許文献１に示されるように、プリンタ装置の初期動作状態を維持する初期制御プログラムを印刷実行する印刷制御プログラムとは別に設け、印刷制御プログラムが正常に動作しなくなった場合でも初期制御プログラムの動作によってプリンタ装置が応答不能状態になることを防止し、プリンタ装置の最小限の初期動作の状態を保持することができるようなプリンタ装置が提案されている。
【０００８】
【特許文献１】
特開平１０−２８９０７７号公報
【発明が解決しようとする課題】
ところが、上記提案のプリンタ装置は、プリンタ装置の初期動作状態後、所定の操作を行うことにより容易に不揮発性メモリに格納されたプログラムの書き換えができるので、第三者によって作成された印刷制御プログラム等のデータがプリンタ装置の不揮発性メモリへ容易に書き換え可能となってしまう。
【０００９】
そこで、この発明は、プリンタ装置の不揮発性記憶媒体に記憶格納されているプリンタ制御プログラム等のデータが第三者によって作成されたデータに容易に書き換えられることを防止し、プリンタ装置に記憶格納されているプリンタ制御プログラム等のデータの信頼性を向上させるようなプリンタ装置およびその制御方法を提供することを目的とする。
【００１０】
【課題を解決するための手段】
上記目的を達成するため請求項１の発明は、不揮発性記憶手段を有し、該不揮発性記憶手段に記憶されたデータに基づき外部インタフェースから受信したデータを印刷するプリンタ装置において、電源起動時の状態を検出し、該状態の検出に基づき該電源起動時に前記外部インタフェースから受信したデータを前記不揮発性記憶手段に記憶されたデータの書き換えに用いるか印刷するかを判別する判別手段と、前記判別手段により前記外部インタフェースから受信したデータを前記不揮発性記憶手段に記憶されたデータの書き換えに用いると判別した場合は、該データが正当なデータであるか否かを検証する検証手段と、前記検証手段により前記外部インタフェースから受信したデータが正当なデータであると判断した場合に、該データで不揮発性記憶手段に記憶されたデータを書き換えるデータ書換手段とを具備することを特徴とする。
【００１１】
また、請求項２の発明は、請求項１の発明において、前記データ書換手段により前記不揮発性記憶手段に記憶されたデータの書き換えを行っている間、その旨を報知する報知手段を更に具備することを特徴とする。
【００１２】
また、請求項３の発明は、請求項１または２の発明において、前記判別手段は、電源起動時の所定のスイッチの操作状態若しくは所定の動作または状態を検出するセンサの検出状態若しくは所定の部品の装着状態に応じて前記外部インタフェースから受信したデータを前記不揮発性記憶手段に記憶されたデータの書き換えに用いるか印刷するかを判別することを特徴とする。
【００１３】
また、請求項４の発明は、請求項１または２の発明において、前記検証手段は、前記外部インタフェースから受信したデータに付加された特定情報に基づき前記外部インタフェースから受信したデータが正当なデータであるか否かを検証することを特徴とする。
【００１４】
また、請求項５の発明は、請求項４の発明において、前記特定情報は、前記外部インタフェースから受信したデータのヘッダに付加された該データの作成元を特定する情報であることを特徴とする。
【００１５】
また、請求項６の発明は、請求項１または２の発明において、前記外部インタフェースから受信したデータは、暗号化されていることを特徴とする。
【００１６】
また、請求項７の発明は、不揮発性記憶手段を有し、該不揮発性記憶手段に記憶されたデータに基づき外部インタフェースから受信したデータを印刷するプリンタ装置の制御方法において、電源起動時の状態を検出し、該状態の検出に基づき該電源起動時に前記外部インタフェースから受信したデータを前記不揮発性記憶手段に記憶されたデータの書き換えに用いるか印刷するかを判別し、該判別により前記外部インタフェースから受信したデータを前記不揮発性記憶手段に記憶されたデータの書き換えに用いると判断した場合は、該データが正当なデータであるか否かの検証を行い、該検証により前記外部インタフェースから受信したデータが正当なデータであると判断した場合に、該データで不揮発性記憶手段に記憶されたデータを前記外部インタフェースから受信したデータで書き換えることを特徴とする。
【００１７】
また、請求項８の発明は、請求項７の発明において、前記外部インタフェースから受信したデータにより前記不揮発性記憶手段に記憶されたデータの書き換えを行っている間はその旨を報知することを特徴とする。
【００１８】
また、請求項９の発明は、請求項７または８の発明において、電源起動時の所定のスイッチの操作状態若しくは所定の動作または状態を検出するセンサの検出状態若しくは所定の部品の装着状態に応じて前記外部インタフェースから受信したデータを前記不揮発性記憶手段に記憶されたデータの書き換えに用いるか印刷するかを判別することを特徴とする。
【００１９】
また、請求項１０の発明は、請求項７または８の発明において、前記外部インタフェースから受信したデータに付加された特定情報に基づき前記外部インタフェースから受信したデータが正当なデータであるか否かの検証を行うことを特徴とする。
【００２０】
また、請求項１１の発明は、請求項１０の発明において、前記特定情報は、前記外部インタフェースから受信したデータのヘッダに付加された該データの作成元を特定する情報であることを特徴とする。
【００２１】
また、請求項１２の発明は、請求項７または８の発明において、前記外部インタフェースから受信したデータは、暗号化されていることを特徴とする。
【００２２】
【発明の実施の形態】
以下、この発明の実施の形態について図面を参照して説明する。
【００２３】
図１は、この発明に係わるプリンタ装置およびその制御方法の一実施の形態の要部の構成を示す図である。
【００２４】
図１において、プリンタ装置１０は、記憶部１５の不揮発性記憶媒体１５０に記憶されたプリンタ制御プログラムに基づいて外部からインタフェース部１３を介して入力されたデータを印刷するとともに、何らかの原因によってプリンタ制御プログラムが正常動作しない場合は、プリンタ制御プログラム等のデータを正しいデータに書き換え可能なように構成されている。
【００２５】
また、プリンタ制御プログラム等のデータは、データ作成装置３０によって作成し、コンピュータ２０を介してプリンタ装置１０へ入力されるように構成されている。
【００２６】
この実施の形態においては、データ作成装置３０で作成したプリンタ制御プログラム等のデータをＦＤ（＝フロッピー（登録商標）ディスク）４０を介してコンピュータ２０へ入力し、コンピュータ２０へ入力されたプリンタ制御プログラム等のデータはコンピュータ２０のインタフェース部２３とシリアルインタフェース５０等のケーブルを介してプリンタ装置１０のインタフェース部１３へ入力されるように構成されている。
【００２７】
図１に示すように、プリンタ装置１０は、外部からのデータを受信するインタフェース部１３とプリンタ制御部１４を備え、プリンタ制御部１４は、プリンタ装置の状態に応じて外部から受信したデータを用紙に印字する印刷処理部１１を制御したり、受信したデータを不揮発性記憶媒体１５０へ記憶するような制御を行うとともに、プリンタ装置１０全体を統括制御する。
【００２８】
プリンタ制御部１４がプリンタ装置１０の印刷処理等を含む所定の動作制御を行う場合には、所定の制御手順等の命令を記述した制御プログラムを起動し、この制御プログラムに記述された命令に従い制御する。
【００２９】
この制御プログラムは、記憶部１５の書き換え可能な不揮発性記憶媒体１５０に記憶されており、プリンタ装置１０の電源が投入されると、プリンタ制御部１４が不揮発性記憶媒体１５０に記憶された制御プログラムを読み出し、制御プログラムに記述された命令に従って制御する。
【００３０】
また、記憶部１５には、プリンタ制御部１４が制御プログラムに記述された命令に従って実行動作するために一時的にデータを記憶したり、種々のデータやプログラム等を補助的に記憶する記憶媒体１５１を備えている。
【００３１】
不揮発性記憶媒体１５０としては、例えば書き換え可能なフラッシュＲＯＭ（＝Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）や強誘電体メモリ等が用いられており、記憶媒体１５１には、例えばＲＡＭ（＝Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、ＰＲＯＭ（＝Ｐｒｏｇｒａｍａｂｌｅ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＥＥＰＲＯＭ（＝Ｅｌｅｃｔｒｉｃａｌｌｙ  Ｅｒａｓａｂｌｅ  Ｐｒｏｇｒａｍａｂｌｅ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）等の種々の記憶媒体が用いられている。
【００３２】
プリンタ装置１０の制御プログラムは、不揮発性記憶媒体１５０に書き換え可能な状態で記憶されており、必要に応じて所定の操作により書き換えることが可能である。
【００３３】
プリンタ制御部１４によって不揮発性記憶媒体１５０から読み出された制御プログラムは、記憶媒体１５１に一時的に記憶され、プリンタ制御部１４が記憶媒体１５１に一時的に記憶した制御プログラムを参照し実行する。
【００３４】
プリンタ装置１０にはコントロールパネル１６と書込スイッチ部１２が配設されており、コントロールパネル１６は、プリンタ装置１０の入力操作や各種情報を表示し、書込スイッチ部１２は、プリンタ装置１０の状態・カバー開閉状態やトナーカートリッジ有無状態およびオプション部品の装着状態等をプリンタ装置１０に配設された図示せぬセンサー・スイッチ等によって検知し、不揮発性記憶媒体１５０に記憶された制御プログラム等のデータを書き換える場合に用いる。
【００３５】
データ作成装置３０は、プリンタ装置１０の不揮発性記憶媒体１５０に記憶されたプリンタ制御プログラム等のデータ作成が可能な装置であり、データ作成装置３０の動作を制御する制御部３４と、プリンタ制御プログラム等のデータを作成する際の入力操作や各種情報を表示する表示入力部３７と、プリンタ制御プログラム等のデータを生成するプリンタ制御プログラム生成部３１と、生成したプリンタ制御プログラム等のデータを記憶させる生成データ記憶装置３８を備えている。
【００３６】
プリンタ制御プログラムのデータを作成するために、作成者が表示入力部３７を介して入力したデータは、制御部３４を介してプリンタ制御プログラム生成部３１へ入力され、プリンタ制御プログラム生成部３１が入力されたデータに基づいてプリンタ制御プログラムのデータへ変換して生成し、生成したプリンタ制御プログラムのデータを圧縮処理するとともに、圧縮処理したプリンタ制御プログラムのデータにヘッダー情報を付加する。
【００３７】
ヘッダー情報は、例えば、データ作成装置３０の名称や装置番号、データ作成者の情報等のデータやデータ長（データレングス）およびデータのチェックサム等の情報である。
【００３８】
このヘッダー情報を生成したプリンタ制御プログラム等のデータに付加することによりデータの作成元を特定することが可能となる。
【００３９】
ヘッダー情報が付加されたプリンタ制御プログラムのデータは、制御部３４と生成データ記憶装置３８を介してＦＤ（＝フロッピー（登録商標）ディスク）４０へ記憶される。
【００４０】
なお、生成データ記憶装置３８は、ＭＤ（＝Ｍｉｎｉ  Ｄｉｓｋ）や磁気テープ等の磁気記録媒体へ記録可能な磁気記録装置でもよく、半導体メモリ等の不揮発性記録媒体への書込み装置およびＬＡＮ（＝Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）や電話等の通信回線を介して記憶媒体へ記憶させるような構成にしてもよい。
【００４１】
コンピュータ２０は、プリンタ装置１０とＵＳＢ（＝Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）を介して接続されており、データ作成装置３０によって作成されたプリンタ制御プログラム等のデータは、ＦＤ４０を介してコンピュータ２０へ入力され、コンピュータ２０の生成データ読取装置２８とＣＰ制御部２４とインタフェース部２３およびＵＳＢ５０を介してプリンタ装置１０へ入力される。
【００４２】
なお、ＵＳＢ５０の代わりにシリアルインタフェースや外部記憶媒体（フリッピーディスクやＭＤ、固体メモリ等）等を介してプリンタ装置１０とコンピュータ２０との間のデータ授受を行うようにしてもよく、無線ＬＡＮや電話等の通信回線を介してデータ授受を行うようにしてもよい。
【００４３】
コンピュータ２０は、コンピュータ２０全体の動作を統括制御するＣＰ制御部２４と、データ作成装置３０とのデータの授受が可能な生成データ読取装置２８と、印刷データ等を作成する際の入力操作や各種情報を表示する表示入力部２７と、種々のプログラムやデータ等を記憶する記憶部２５と、印刷データを生成する印刷データ生成部２９と、コンピュータ２０とプリンタ装置１０との間のデータ授受が可能なインタフェース部２３とを備えている。
【００４４】
例えば、コンピュータ２０で作成した文書等の印刷データをプリンタ装置１０を用いて印刷処理する場合のコンピュータ２０とプリンタ装置１０の動作は、次のように動作する。
【００４５】
コンピュータ２０の印刷データ生成部２０で作成された文書やイメージデータ等の印刷データおよび印刷指示命令がＣＰ制御部２４とインタフェース部２３およびＵＳＢ５０を介してへプリンタ装置１０へ入力される。
【００４６】
プリンタ装置１０へ入力された印刷データは、プリンタ装置１０のインタフェース部１３を介してプリンタ制御部１４へ入力され、入力された印刷指示命令や印刷データが解析され、解析結果に基づいて印刷処理部１１が印刷データを用紙に印字する。
【００４７】
上述の如く、プリンタ装置１０へ入力された印刷データが用紙に印字されるまでの印刷処理は、不揮発性記憶媒体１５０に記憶された制御プログラムのうちのプリンタ制御プログラムの実行動作によって制御される。
【００４８】
なお、プリンタ装置１０は、コンピュータ２０に限定することなく、入力された印刷データがコンピュータ２０以外のコンピュータや装置から入力された場合であっても入力された印刷データ等を解析し、解析結果に基づいて印刷処理を行う。
【００４９】
このようにプリンタ装置１０が入力された種々の印刷指示命令や印刷データを解析し、印刷処理を行うためにはプリンタ装置１０の不揮発性記憶媒体１５０に記憶されたプリンタ制御プログラムが正常に動作することが必要不可欠である。
【００５０】
ところが、上述において説明したように、プリンタ装置１０のプリンタ制御プログラムは、不揮発性記憶媒体１５０に書き換え可能に記憶され、プリンタ装置１０の電源投入と同時にプリンタ制御部１４が不揮発性記憶媒体１５０から制御プログラムを順次読み出して、記憶媒体１５１に展開（制御プログラムや処理に必要なデータ等を一時記憶し、参照しながら実行処理する）し、実行動作するので、何らかの原因によってプリンタ制御プログラムの内容が一部破壊されていたり、正常に動作しなかったりするとプリンタ装置１０の印刷処理が正常動作しなくなる。
【００５１】
このようにプリンタ装置１０のプリンタ制御プログラムに異常が発生すると、プリンタ装置１０の電源を再投入して正常復帰を試みてもプリンタ制御プログラムが正常に動作せず、プリンタ装置１０の印刷処理が困難となる。
【００５２】
そこで、この発明に係わるプリンタ装置１０は、何らかの原因によりプリンタ装置１０のプリンタ制御プログラム等にエラーが発生し、正常に動作しない場合には、プリンタ制御プログラム等のデータを書き換えできるように構成されている。
【００５３】
そして、プリンタ制御プログラム等のデータを書き換える際には、プリンタ装置１０へ入力されたデータが正当なデータ作成装置３０によって作成された正当なデータであるか否かを判断し、正当なデータであると判断した場合に当該入力されたデータによって不揮発性媒体１５０のデータ部２０５に記憶されたプリンタ制御プログラム等のデータを書き換えるように構成されている。
【００５４】
例えば、プリンタ装置１０のプリンタ制御プログラムのデータは、データ作成装置３０のプリンタ制御プログラム生成部３１によって生成され、生成されたプリンタ制御プログラムのデータのヘッダー部にはデータ作成装置３０を特定可能とする特定情報を付加するように構成されている。
【００５５】
なお、特定情報としては、データ作成装置３０の名称や製造番号、データ作成者の情報等の種々の情報を付加することが可能であり、暗号化した情報を用いてもよい。
【００５６】
一方、プリンタ装置１０は、入力されたデータを印刷するかもしくは不揮発性媒体１５０へ記憶するかを判断し、記憶すると判断した場合には入力されたデータの特定情報の正当性を検証し、入力されたデータが不揮発性媒体１５０へ記憶するデータとして正当なデータであると判断した場合に当該入力されたデータを不揮発性媒体１５０へ記憶するような機能を有している。
【００５７】
図１に示したように、この実施の形態においては、データ作成装置３０で作成したプリンタ制御プログラム等のデータをコンピュータ２０を介してプリンタ装置３０へ入力するような例を想定して示してあるが、コンピュータ２０を介することなくデータ作成装置３０からＬＡＮや電話回線等のネットワークを介してプリンタ装置１０へプリンタ制御プログラム等のデータを入力できるようにしてもよく、また、ＦＤやＭＤ等の外部記憶媒体を介して入力できるようにしてもよい。
【００５８】
また、データ作成装置３０とコンピュータ２０との両方の機能を有するようなコンピュータ２０とは他のコンピュータを用いてプリンタ制御プログラム等のデータを作成し、プリンタ装置１０へ入力するようにしてもよい。
【００５９】
図２は、図１に示したプリンタ装置１０の不揮発性記憶媒体１５０に記憶された制御プログラムのうちの各処理を実行動作するプログラム等のデータが格納された領域を示す図である。
【００６０】
図２に示すように、不揮発性記憶媒体１５０には、入力された印刷指示命令や印刷データを解析し、解析結果に基づいて印刷データを用紙へ印刷処理するような動作を制御するプリンタ制御プログラム等のデータが記憶格納されたデータ部２０５と、データ部２０５に記憶格納されたプリンタ制御プログラム等のデータを記憶媒体１５１へ展開し処理するような展開処理プログラム等のデータが記憶格納された展開部２０４と、データ部２０５に記憶格納されているプリンタ制御プログラム等のデータを書き換え処理するようなデータ書換処理プログラム等のデータが記憶格納されたデータ書換え処理部２０３と、プリンタ装置１０の電源を投入しブート処理後、プリンタ装置１０の状態をチェックし判断するプリンタ装置状態判断処理プログラム等のデータが記憶格納されたプリンタ装置状態判断処理部２０２と、プリンタ装置１０の電源投入後、ＩＰＬ（＝Ｉｎｉｔｉａｌ  Ｐｒｏｇｒａｍ  Ｌｏａｄｅｒ）等を読み込みブート処理するブート処理プログラム等のデータが記憶格納されたブート処理部２０１のそれぞれの領域が割り当てられて構成されている。
【００６１】
このように各処理を実行するプログラム等のデータが不揮発性記憶媒体１５０のブート処理部２０１、プリンタ装置状態判断処理部２０２、データ書換え処理部２０３、展開部２０４、データ部２０５の各領域に記憶格納されており、プリンタ装置１０の電源投入後、プリンタ制御部１４が各領域に記憶格納された各処理プログラムを所定の手順に従って読み出し実行することによりプリンタ装置１０の正常動作が実現される。
【００６２】
図３は、この発明に係わるプリンタ装置１０の電源投入後、図２に示した不揮発性記憶媒体１５０の各領域に記憶格納されたプログラム等のデータが実行されてプリンタ制御プログラムが正常動作するまでの制御の流れを示す図である。
【００６３】
図３を参照しながらプリンタ装置１０の電源投入からプリンタ制御プログラムの正常動作までの制御の流れについて説明する。
【００６４】
図３に示すように、プリンタ装置１０の電源を投入（＝ＯＮ）すると（ステップ３００）、プリンタ制御部１４が記憶部１５の不揮発性記憶媒体１５０に記憶されているブート処理部２０１のブート処理プログラムを読み出し、起動してプリンタ装置１０の初期化を行う（ステップ３０１）。
【００６５】
プリンタ装置１０の初期化が正常に実行され動作すると、プリンタ制御部１４が不揮発性記憶媒体１５０のプリンタ装置状態判断処理部２０２のプリンタ装置状態判断処理プログラムを読み出し起動してプリンタ装置１０の状態チェックを行う。
【００６６】
プリンタ装置１０の状態チェックは、例えばプリンタ装置１０のカバー開閉状態やトナーカートリッジ有無状態およびオプション部品の装着状態等をプリンタ装置１０に配設された図示せぬセンサー等によって検知し、検知結果に応じた処理を行う。
【００６７】
例えば、プリンタ装置１０のカバーが開状態であれば、「カバーが開いています」等のメッセージをコントロールパネル１６の図示せぬ表示部等に表示して利用者へプリンタ装置１０のカバーを閉じるように促す。
【００６８】
そして、プリンタ装置１０の状態がすべて正常な状態であることが確認されると、次に書込スイッチ部１２の状態を確認する（ステップ３０２）か、又はプリンタ装置１０のカバー開閉状態やトナーカートリッジ有無状態およびオプション部品の装着状態等をプリンタ装置１０に配設された図示せぬセンサー等によって検知し、検知結果情報の組み合わせにより書込スイッチ部１２の状態を決定してもよい（ステップ３０２）。
【００６９】
なお、この実施の形態におけるプリンタ装置１０は、不揮発性記憶媒体１５０のデータ部２０５に記憶格納されているプリンタ制御プログラム等のデータを書き換える場合には、書込スイッチ部１２を「書込み」側もしくは「印刷」側の何れかに切り替え操作することによって書き換えることができるように構成されている。
【００７０】
例えば、書込スイッチ部１２を「書込み」側へ切り替え操作するとデータ部２０５のデータを書き換えるデータ書換処理を実行し、「印刷」側へ切り替え操作すると印刷データを印字するような印刷処理を実行する。
【００７１】
上述の書込スイッチ部１２の状態確認（ステップ３０２）において、書込スイッチ部１２が「印刷」側へ切り替え操作されている場合には（ステップ３０３で「印刷」）、プリンタ制御部１４が不揮発性記憶媒体１５０のデータ部２０５に格納されているプリンタ制御プログラムを読み出して起動する（ステップ３０５、ステップ３０６）。
【００７２】
プリンタ制御プログラムが起動されると、プリンタ制御プログラムに記述された命令手順に従って入力された印刷データや印刷指示命令等のデータが解析され、解析結果に基づいて印刷データが用紙へ印字される。
【００７３】
一方、何らかの理由により、不揮発性記憶媒体１５０のデータ部２０５に記憶格納されているプリンタ制御プログラム等のデータを書き換えるデータ書換処理を行う場合には、書込スイッチ部１２を「書込み」側へ切り替え操作した後にプリンタ装置１０の電源を投入する。
【００７４】
そうすると、上述の書込スイッチ部１２の状態確認（ステップ３０２）において、プリンタ装置１０のプリンタ制御部１４が書込スイッチ部１２の切り替え操作の位置が「書込み」側であることを確認し、データ部２０５に記憶格納されたプリンタ制御プログラム等のデータを書き換えるデータ書換処理を実行する（ステップ３０３で「書込み」、ステップ３０４）。
【００７５】
さて、この発明に係わるプリンタ装置１０においては、プリンタ装置１０の不揮発性記憶媒体１５０のデータ部２０５に記憶されているプリンタ制御プログラム等のデータの書き換えが可能であり、データを書き換える際には、入力されたデータの正当性を検証して正当なデータであると判断した場合にデータを書き換えるように構成されている。
【００７６】
図４および図５は、図２に示したプリンタ装置１０の不揮発性記憶媒体１５０のデータ部２０５に記憶格納されたプリンタ制御プログラム等のデータを書き換えるデータ書換処理の制御の流れを示す図である。
【００７７】
図４および図５を参照しながら、データ書換処理の制御の流れについて説明する。
【００７８】
上述の図３で示したように、何らかの理由により、データ部２０５に記憶格納されているプリンタ制御プログラム等のデータを書き換えるデータ書換処理を行う場合は、プリンタ装置１０の書込スイッチ部１２を「書込み」側へ切り替え操作し、プリンタ装置１０の電源を投入する。
【００７９】
プリンタ装置１０の電源が投入されると、上述の図３に示した書込スイッチ部１２の状態確認（ステップ３０２）において、プリンタ制御プログラム等のデータのデータ書換処理が実行される（ステップ３０３で「書込み」、ステップ３０４）。
【００８０】
データ書換処理の実行は、例えば、プリンタ制御部１４が不揮発性記憶媒体１５０のデータ書換え処理部２０３に記憶格納されたデータ書換処理プログラム等のデータを読み出し、起動して実行される。
【００８１】
図４に示すように、データ書換処理が実行されると（ステップ４００）、プリンタ制御部１４がデータ書換処理プログラムに基づいて記憶部１５の記憶媒体１５１を初期化し（ステップ４０１）、不揮発性記憶媒体１５０の展開部２０４とデータ部２０５に記憶格納された各プログラム等のデータを記憶媒体１５１へ展開実行する（ステップ４０２）。
【００８２】
これらの各プログラムが実行されると、プリンタ装置１０のインタフェース部１３が初期化されて（ステップ４０３）、インタフェース部１３からのデータの受信待ち状態となる。
【００８３】
プリンタ装置１０のデータ受信待ち状態は、プリンタ装置１０に配設されたコントロールパネル１６の図示せぬ表示部に例えば「データ受信待ち」等のメッセージ表示をして利用者へ通知する（ステップ４０４）。
【００８４】
なお、表示部には、ＴＦＴ（＝Ｔｈｉｎ  Ｆｉｌｍ  Ｔｒａｎｓｉｓｔｏｒ）パネル、ＬＥＤ（＝Ｌｉｇｈｔ  Ｅｍｉｔｔｉｎｇ  Ｄｉｏｄｅ）、ＬＣＤ（＝Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙ）等が用いられる。
【００８５】
インタフェース部１３を介してデータが入力されると（ステップ４０５）、プリンタ装置１０がデータ受信中である旨をコントロールパネル１６の図示せぬ表示部に例えば「データ受信中」等のメッセージ表示をして利用者へ通知する（ステップ４０６）。
【００８６】
インタフェース部１３を介して順次入力されるデータは、図示せぬヘッダー部とデータ部から構成されており、ヘッダー部にはデータ長（データレングス）等の情報が記録され、データ部には各種のデータが記録されている。
【００８７】
データ作成装置３０で作成されたデータのヘッダー部には、データレングスの値（ＬＤ）やチェックサム等の情報の他にデータ作成装置３０の名称や製造番号、データ作成者の情報等のデータ作成元が特定できるような特定情報が記録されている。
【００８８】
プリンタ装置３０へ入力されたデータは、プリンタ制御部１４が入力されたデータのヘッダー部に記録されたレングスデータの値（ＬＤ）を記憶媒体１５１のワークＡ、チェックサムの値を記憶媒体１５１のワークＢ、特定情報を記憶媒体１５１のメモリへそれぞれ退避し記憶する（ステップ４０７、ステップ４０８、ステップ４０９）。
【００８９】
これらのレングスデータやチェックサムのそれぞれの値と特定情報は、後述で説明するようにプリンタ装置１０が受信すべきデータ量を全て受信したか否か、データが正しく受信さたか否か、受信データの作成元が正当であるか否か等を判別するための参照データとなる。
【００９０】
プリンタ制御部１４は、インタフェース部１３を介して順次入力されるデータ（以下、「受信データ」という。）を記憶媒体１５１へ順次記憶させるとともに、受信データを記憶媒体１５１へ順次記憶させる毎にワークＡに記憶したレングスデータの値（ＬＤ）から１を減算し（ステップ４１０でＮＯ、ステップ４１１、ステップ４１２）、レングスデータの値（ＬＤ）が０になるとデータの受信が終了したと判断して（ステップ４１０でＹＥＳ）、データ受信が終了した旨をコントロールパネル１６の図示せぬ表示部に例えば「データ受信終了」等のメッセージ表示をして利用者へ通知する（ステップ４１３）。
【００９１】
データ受信が終了すると、受信データが正しく受信されたか否かを確認する。
【００９２】
受信データが正しく受信されたか否かの確認は、例えばプリンタ制御部１４が受信データに基づいて受信データのチェックサムを計算し、計算したチェックサムの値とワークＢに記憶したチェックサムの値とが一致するか否かによって判断する。
【００９３】
計算したチェックサムの値とワークＢに記憶していたチェックサムの値とが一致しない場合は（ステップ４１５でＮＯ）、データ受信が失敗した旨をコントロールパネル１６の図示せぬ表示部に例えば「データ受信失敗」等のメッセージ表示をして利用者へ通知し（ステップ４１７）、利用者によって何らかの処置が行われるまでエラー状態とする（ステップ４２８）。
【００９４】
計算したチェックサムの値とワークＢに記憶していたチェックサムの値とが一致した場合は（ステップ４１５でＹＥＳ）、プリンタ制御部１４は、受信データが正しく受信されたと判断するとともに、図４および図５に示すように、受信データの正当性を判断する（ステップ４１６、ステップ４１７）。
【００９５】
受信データの正当性の判断は、例えば、記憶媒体１５１に記憶された受信データの特定情報に基づいて判断する。
【００９６】
特定情報には、データを作成したデータ作成装置３０が特定できるような例えばデータ作成装置３０の名称や製造番号等が記録されており、プリンタ制御部１４が、これらの名称や製造番号等を記憶部１５に記憶された図示せぬテーブルＡを参照して、正当なデータ作成装置によって作成されたデータであるか否かを確認する。
【００９７】
なお、テーブルＡには、プリンタ装置１０のプリンタ制御プログラム等のデータの作成が許可されたデータ作成装置３０の名称や製造番号等が予め作成されて記憶管理されており、プリンタ制御部１４は、このテーブルＡに基づいて受信データのヘッダー部に記録された特定情報がテーブルＡに存在する場合には、正当なデータ作成装置と判断し、そうでない場合には不正なデータ作成装置として判断するように構成されている。
【００９８】
そして正当なデータ作成装置の特定情報が付加されたデータを正当なデータと判断し、不正なデータ作成装置の特定情報が付加されたデータを不正なデータとして判断する。
【００９９】
図５に示すように、受信データのデータ作成装置を確認して受信データの正当性を判断するステップ４１７において、受信データが不正なデータであると判断した場合には（ステップ４１７でＮＯ）、受信したデータが不正である旨をコントロールパネル１６の図示せぬ表示部に例えば「不正なデータ」等のメッセージ表示して利用者へ通知し（ステップ４１８）、利用者によって何らかの処置が行われるまでエラー状態とする（ステップ４２８）。
【０１００】
上述の受信データの正当性を判断するステップ４１７において、受信データが正当なデータであると判断した場合には（ステップ４１７でＹＥＳ）、不揮発性記憶媒体１５０のデータ部２０５に記憶されているプリンタ制御プログラム等のデータを記憶媒体１５１に一時記憶されている受信データで書き換える処理を行う。
【０１０１】
データ部２０５のプリンタ制御プログラム等のデータを書き換える際には、まず不揮発性記憶媒体１５０のデータ部２０５のデータを消去する旨をコントロールパネル１６の図示せぬ表示部に例えば「データ部のデータ消去中」等のメッセージ表示して利用者へ通知し（ステップ４１９）、プリンタ制御部１４が不揮発性記憶媒体１５０のデータ部２０５のデータを消去する（ステップ４２０）。
【０１０２】
データ部２０５のデータを消去する際に、何らかの原因によりデータ部２０５のデータ消去が正常に終了しなかった場合は（ステップ４２１でＮＯ）、データ部２０５のデータ消去が失敗した旨をコントロールパネル１６の図示せぬ表示部に例えば「データ部のデータ消去失敗」等のメッセージ表示して利用者へ通知し（ステップ４２２）、利用者によって何らかの処置が行われるまでエラー状態とする（ステップ４２８）。
【０１０３】
データ部２０５のデータが全て消去されると（ステップ４２１でＹＥＳ）、不揮発性記憶媒体１５０のデータ部２０５へデータの書き込み処理中である旨をコントロールパネル１６の図示せぬ表示部に例えば「データ書込み中」等のメッセージ表示する（ステップ４２３）するとともに記憶媒体１５１に一時的に記憶されている受信データを不揮発性記憶媒体１５０のデータ部２０５へ書き込む（ステップ４２４）。
【０１０４】
不揮発性記憶媒体１５０のデータ部２０５への書き込みが終了すると、プリンタ制御部１４は、記憶媒体１５１に一時的に記憶されている受信データと不揮発性記憶媒体１５０のデータ部２０５へ書き込んだデータとを比較し（ステップ４２５）、記憶媒体１５１に一時的に記憶されていた受信データが正しく不揮発性記憶媒体１５０のデータ部２０５へ書き込まれたことを確認後（ステップ４２５でＹＥＳ）、「データ書込み終了」等のメッセージをコントロールパネル１６の図示せぬ表示部に表示して（ステップ４２７）データ書換処理は終了するか、又は図３に示したステップ３００に戻り、プリンタ装置１０を再スタートしてもよい。
【０１０５】
受信データが正しく不揮発性記憶媒体１５０へ書き込まれなかった場合には（ステップ４２５でＮＯ）、データ部２０５へのデータ書き込みが失敗した旨をコントロールパネル１６の図示せぬ表示部に例えば「データ書き込み失敗」等のメッセージ表示して利用者へ通知し（ステップ４２６）、利用者によって何らかの処置が行われるまでエラー状態とする（ステップ４２８）。
【０１０６】
なお、この実施の形態の例では、プリンタ装置１０へ入力されたデータを不揮発性記憶媒体１５０に記憶されたプリンタ制御プログラム等のデータの書き換えに用いるか印刷するかの判別を切替スイッチ１２の切り替へ操作によって判別するように示してあるが、プリンタ装置１０の電源起動時の状態を例えば入力データが記憶された記録媒体が装着されているか否かを検知し、記録媒体が装着されていると検知した場合に入力されたデータを不揮発性記憶媒体１５０に記憶されたプリンタ制御プログラム等のデータの書き換えに用いると判断するようにしてもよい。
【０１０７】
【発明の効果】
以上説明したように、この発明によれば、プリンタ装置の電源起動時の状態を検出し、検出した状態の結果に基づき電源起動時に外部インタフェースから受信したデータを不揮発性記憶手段に記憶されたデータの書き換えに用いるか印刷するかを判別し、受信したデータを不揮発性記憶手段に記憶されたデータの書き換えに用いると判別した場合は、当該データが正当なデータであるか否かを検証して、当該データが正当なデータであると判断した場合に、当該データで不揮発性記憶手段に記憶されたデータを書き換えるように構成したので、必要に応じてプリンタ装置の不揮発性記憶媒体に記憶されたプリンタ制御プログラム等のデータの書き換えを行うことができ、プリンタ装置の不揮発性記憶媒体に記憶されているプリンタ制御プログラム等のデータが第三者によって作成されたデータに容易に書き換えられることを防止し、プリンタ装置の不揮発性記憶媒体に記憶されているプリンタ制御プログラム等のデータの信頼性を向上させることができるという効果を奏する。
【図面の簡単な説明】
【図１】この発明に係わるプリンタ装置およびその制御方法の一実施の形態の要部の構成を示す図である。
【図２】図１に示したプリンタ装置１０の不揮発性記憶媒体１５０のデータが格納された領域を示す図である。
【図３】図１に示したプリンタ装置１０の電源投入からプリンタ制御プログラムの正常動作までの制御の流れを示す図である。
【図４】図２に示した不揮発性記憶媒体１５０のデータ部２０５に記憶格納されたデータの書き換えを行う書換処理の制御の流れを示す図である。
【図５】図２に示した不揮発性記憶媒体１５０のデータ部２０５に記憶格納されたデータの書き換えを行う書換処理の制御の流れを示す図である。
【符号の説明】
１０    プリンタ装置
１１    印刷処理部
１２    書込スイッチ部
１３    インタフェース部（プリンタ装置）
１４    プリンタ制御部
１５    記憶部
１５０  不揮発性記憶媒体
１５１  記憶媒体
１６    コントロールパネル
２０    コンピュータ
２３    インタフェース部（コンピュータ）
２４    ＣＰ制御部
２５    記憶部
２７    表示入力部
２８    生成データ読取装置
２９    印刷データ生成部
３０    データ作成装置
３１    プリンタ制御プログラム生成部
３４    制御部
３７    表示入力部（データ作成装置）
３８    生成データ記憶装置
４０    ＦＤ（＝フロッピー（登録商標）ディスク）
５０    ＵＳＢ（＝Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）
【図１】
2005001218.tif 000003
【図２】
2005001218.tif 000004
【図３】
2005001218.tif 000005
【図４】
2005001218.tif 000006
【図５】
2005001218.tif 000007