(57)【特許請求の範囲】
【請求項１】
電子機器であって、
当該電子機器の動作を制御する制御手段と、
電源ＯＮからの時間を計測する計測手段と、
当該電子機器の検査及び／又は設定を行うためのプログラムを格納したプログラムメモリと、
予め決められ、優先順位の付された２つの第１の設定時間の情報と、当該第１の設定時間の各々に対応し、当該対応する第１の設定時間よりも長い第２の設定時間の情報とを記録しておくテーブルメモリと、
書換可能で且つ電源ＯＮでもＯＦＦでも内容の消えない不揮発性メモリと、
前記テーブルメモリの内容を変更する手段とを備え、
前記制御手段は、
前記不揮発性メモリに前記第１の設定時間のいずれに対応するフラグも記録されていなければ、前記テーブルメモリに記録されている２つの第１の設定時間のうち優先順位が１番目のものを選択し、前記計測手段によって計測した時間が当該選択した第１の設定時間以上になった時点で、そのことを示すフラグを前記不揮発性メモリに書き込み、前記計測手段によって計測した時間が、前記テーブルメモリに記録されている、前記選択した第１の設定時間に対応する第２の設定時間以上になった時点で、前記不揮発性メモリに書き込んだ、全ての第１の設定時間に対応するフラグを初期化する処理を実行し、
前記不揮発性メモリに前記優先順位が１番目の第１の設定時間に対応するフラグが記録されていれば、前記２つの第１の設定時間のうち、優先順位が２番目のものを選択し、前記計測手段によって計測した時間が、当該選択した第１の設定時間以上になった時点で、そのことを示すフラグを前記不揮発性メモリに書き込み、前記計測手段によって計測した時間が、前記テーブルメモリに記録されている、前記選択した第１の設定時間に対応する第２の設定時間以上になった時点で、前記不揮発性メモリに書き込んだ、全ての第１の設定時間に対応するフラグを初期化する処理を実行し、
電源ＯＮ時に前記不揮発性メモリに全ての前記第１の設定時間に対応するフラグが書き込まれている場合に、前記プログラムメモリから前記プログラムを読み出してその処理を実行する手段を有することを特徴とする電子機器。
【請求項２】
電子機器であって、
当該電子機器の動作を制御する制御手段と、
電源ＯＮからの時間を計測する計測手段と、
当該電子機器の検査及び／又は設定を行うためのプログラムを格納したプログラムメモリと、
予め決められ、優先順位の付された２つの設定時間範囲の情報を記録しておくテーブルメモリと、
書換可能で且つ電源ＯＮでもＯＦＦでも内容の消えない不揮発性メモリと、
前記テーブルメモリの内容を変更する手段とを備え、
前記制御手段は、
前記不揮発性メモリに前記設定時間範囲のいずれに対応するフラグも記録されていなければ、前記テーブルメモリに記録されている２つの設定時間範囲のうち、優先順位が１番目のものを選択し、電源がＯＮの状態からＯＦＦされた時に、前記計測手段によって計測した時間が当該選択した設定時間範囲内であれば、そのことを示すフラグを前記不揮発性メモリに書き込む処理を行い、
前記不揮発性メモリに前記優先順位が１番目の設定時間範囲に対応するフラグが記録されていれば、前記テーブルメモリに記録されている２つの設定時間範囲のうち、優先順位が２番目のものを選択し、電源がＯＮの状態からＯＦＦされた時に、前記計測手段によって計測した時間が当該選択した設定時間範囲内であれば、そのことを示すフラグを前記不揮発性メモリに書き込む処理を行い、
電源ＯＮ時に前記不揮発性メモリに全ての前記設定時間範囲に対応するフラグが書き込まれている場合に、前記プログラムメモリから前記プログラムを読み出して、その処理を実行する手段を有することを特徴とする電子機器。
【請求項３】
電子機器であって、
当該電子機器の動作を制御する制御手段と、
電源ＯＮからの時間を計測する計測手段と、
当該電子機器の検査及び／又は設定を行うための複数のプログラムを格納したプログラムメモリと、
前記各プログラムごとに、予め決められた第１の設定時間と第２の設定時間の複数の組であって、当該複数の組における優先順位の付された第１の設定時間と、当該第１の設定時間の各々に対応し、当該対応する第１の設定時間よりも長い第２の設定時間との組を記録しておくテーブルメモリと、
書換可能で且つ電源ＯＮでもＯＦＦでも内容の消えない不揮発性メモリと、
前記テーブルメモリの内容を変更する手段とを備え、
前記テーブルメモリに記録されている各組の第１の設定時間と第２の設定時間により規定される時間範囲は、少なくとも前記プログラム毎に最も優先順位の高いものについては、互いに重ならない範囲であり、
前記制御手段は、
前記不揮発性メモリの内容又はその内容をバックアップしたデータに、前記第１の設定時間のいずれに対応するフラグも記録されていなければ、前記各プログラムごとの複数の第１及び第２の設定時間の組のうち、最も優先順位の高い第１及び第２の設定時間の組を、前記第１の設定時間が短いものから順に選択して、当該選択した各組について、前記計測手段によって計測した時間が、前記選択した第１の設定時間以上になった時点で、そのことを示すフラグを前記不揮発性メモリに書き込み、前記計測手段によって計測した時間が、前記選択した第２の設定時間以上になった時点で、前記不揮発性メモリに書き込んだフラグを初期化する処理を実行し、
前記不揮発性メモリの内容又はその内容をバックアップしたデータに、いずれかの前記フラグが記録されていれば、当該フラグに対応する第１及び第２の設定時間の組と同じ前記プログラムに対応する組であって、当該フラグに対応する第１及び第２の設定時間の組の次の優先順位の組のみを選択して、前記計測した時間がその選択した第１の設定時間以上になった時点で、そのことを示すフラグを前記不揮発性メモリに書き込み、前記計測した時間が前記選択した第２の設定時間以上になった時点で、前記不揮発性メモリに書き込んだフラグを初期化し、
電源ＯＮ時に前記不揮発性メモリに前記プログラムの１つについて全ての前記第１の設定時間に対応するフラグが書き込まれている場合に、前記プログラムメモリから当該プログラムを読み出してその処理を実行する手段を有することを特徴とする電子機器。
【請求項４】
電子機器であって、
当該電子機器の動作を制御する制御手段と、
電源ＯＮからの時間を計測する計測手段と、
当該電子機器の検査及び／又は設定を行うための複数のプログラムを格納したプログラムメモリと、
前記各プログラムごとに、予め決められた複数の設定時間範囲の情報であって、当該複数の設定時間範囲の情報における優先順位の付された設定時間範囲の情報を記録しておくテーブルメモリと、
書換可能で且つ電源ＯＮでもＯＦＦでも内容の消えない不揮発性メモリと、
前記テーブルメモリの内容を変更する手段とを備え、
前記テーブルメモリに記録されている各設定時間範囲は、少なくとも前記プログラム毎に最も優先順位の高いものについては、互いに重ならない範囲であり、
前記制御手段が、
前記不揮発性メモリの内容又は当該不揮発性メモリの内容をバックアップしたデータに、前記設定時間範囲のいずれに対応するフラグも記録されていなければ、前記複数の設定時間範囲のうち、各プログラムごとに最も優先順位の高い設定時間範囲の中から、まず、最も下限時間の短いものを選択し、さらに、前記計測手段によって計測した時間が、前記選択した設定時間範囲を超える度に、次に下限時間の短いものを選択し、
前記不揮発性メモリの内容又は当該不揮発性メモリの内容をバックアップしたデータに、前記設定時間範囲のいずれかに対応するフラグが記録されていれば、当該フラグに対応する設定時間範囲と同じ前記プログラムに対応する設定時間範囲であって、当該フラグに対応する設定時間範囲の次の優先順位の設定時間範囲のみを選択し、
電源がＯＮの状態からＯＦＦされた時に、前記計測手段によって計測した時間が前記選択している設定時間範囲内であれば、そのことを示すフラグを前記不揮発性メモリに書き込み、
電源ＯＮ時に前記不揮発性メモリに前記プログラムの１つについて全ての前記設定時間範囲に対応するフラグが書き込まれている場合に、前記プログラムメモリから当該プログラムを読み出して、その処理を実行する処理手段を有することを特徴とする電子機器。
【請求項５】
請求項１乃至４のいずれか一項に記載の電子機器において、前記不揮発性メモリに特定なコードが書き込まれている場合には、前記制御手段による電源ＯＮ時の特別なプログラムの読み出しを行わないようにしたことを特徴とする電子機器。
【請求項６】
電子機器であって、
当該電子機器の検査及び／又は設定を行うためのプログラムを格納したプログラムメモリと、
電源がＯＮされてからＯＦＦされるまでの時間に関する条件を２つ、優先順位を付して記録しておくテーブルメモリと、
書換可能で且つ電源ＯＮでもＯＦＦでも内容の消えない不揮発性メモリと、
前記テーブルメモリの内容を変更する手段と、を備える電子機器の制御を行うコンピュータが、
当該電子機器に、
前記不揮発性メモリに前記条件のいずれに対応するフラグも記録されていなければ、前記条件のうち優先順位が１番目のものを選択させ、実際に電源がＯＮされてからの時間を計測させ、その計測した時間が前記選択した条件と一致したら、そのことを示すフラグを前記不揮発性メモリに書き込ませ、
前記不揮発性メモリに、前記優先順位が１番目の条件に対応するフラグが記録されていれば、前記条件のうち優先順位が２番目のものを選択させ、実際に電源がＯＮされてからの時間を計測させ、その計測した時間が前記選択した条件と一致したら、そのことを示すフラグを前記不揮発性メモリに書き込ませ、
電源ＯＮ時に前記不揮発性メモリに全ての前記条件に対応するフラグが書き込まれていたら、前記プログラムメモリから前記プログラムを読み出させることを特徴とする、電子機器におけるプログラムの読み出し方法。
【請求項７】
電子機器であって、
当該電子機器の検査及び／又は設定を行うための複数のプログラムを格納したプログラムメモリと、
前記各プログラムごとに、電源がＯＮされてからＯＦＦされるまでの時間に関する複数の条件であって、当該複数の条件における優先順位の付された条件を記録しておくテーブルメモリと、
書換可能で且つ電源ＯＮでもＯＦＦでも内容の消えない不揮発性メモリと、
前記テーブルメモリの内容を変更する手段と、を備え、
前記各条件が、少なくとも前記プログラム毎に最も優先順位の高いものについては、互いに重ならない時間範囲を示す条件である電子機器の制御を行うコンピュータが、
当該電子機器に、
前記不揮発性メモリに前記条件のいずれに対応するフラグも記録されていなければ、前記複数の条件のうち、各プログラムごとに最も優先順位の高い条件の中から、まず、最も下限時間の短いものを選択させ、実際に電源がＯＮされてからの時間を計測させ、さらに、その計測した時間が、前記選択した設定時間範囲を超える度に、次に下限時間の短いものを選択させ、
前記不揮発性メモリに前記条件のいずれかに対応するフラグが記録されていれば、当該フラグに対応する条件と同じ前記プログラムに対応する条件であって、当該フラグに対応する条件の次の優先順位の条件のみを選択させ、
実際に電源がＯＮされてからの時間を計測させ、その計測した時間が前記選択させた条件と一致したらそのことを示すフラグを前記不揮発性メモリに書き込ませ、
電源ＯＮ時に前記不揮発性メモリに前記プログラムの１つについて全ての前記条件に対応するフラグが書き込まれていたら、前記プログラムメモリからそのプログラムを読み出させることを特徴とする、電子機器におけるプログラムの読み出し方法。
【請求項８】
電子機器であって、
電源ＯＮからの時間を計測する計測手段と、
当該電子機器の検査及び／又は設定を行うためのプログラムを格納するプログラムメモリと、
電源がＯＮされてからＯＦＦされるまでの時間に関する、予め定められ、優先順位を付された２つの条件を格納するテーブルメモリと、
不揮発性メモリと、を備えた電子機器の制御を行うコンピュータを、
前記テーブルメモリの内容を変更する手段と、
前記不揮発性メモリに前記条件のいずれに対応するフラグも記録されていなければ、前記条件のうち優先順位が１番目のものを選択し、前記不揮発性メモリに前記優先順位が１番目の条件に対応するフラグが記録されていれば、前記条件のうち優先順位が２番目のものを選択する選択手段と、
前記計測手段によって計測した時間が前記選択手段が選択した条件と一致したらそのことを示すフラグを前記不揮発性メモリに書き込む手段と、
電源ＯＮ時に前記不揮発性メモリに全ての前記条件に対応するフラグが書き込まれていたら、前記プログラムメモリから前記プログラムを読み出して実行する手段として機能させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項９】
電子機器であって、
電源ＯＮからの時間を計測する計測手段と、
当該電子機器の検査及び／又は設定を行うための複数のプログラムを格納するプログラムメモリと、
前記各プログラムごとに、電源がＯＮされてからＯＦＦされるまでの時間に関する、予め定められた複数の条件であって、当該複数の条件における優先順位の付された条件を格納するテーブルメモリと、
不揮発性メモリと、を備え、
前記各条件は、少なくとも前記プログラム毎に最も優先順位の高いものについては、互いに重ならない時間範囲を示す条件である電子機器の制御を行うコンピュータを、
前記テーブルメモリの内容を変更する手段と、
前記複数の条件から、１つの条件を選択する選択手段と、
前記計測手段によって計測した時間が前記選択手段が選択している条件と一致したらそのことを示すフラグを不揮発性メモリに書き込む手段と、
電源ＯＮ時に前記不揮発性メモリに前記プログラムの１つについて全ての前記条件に対応するフラグが書き込まれていたら、前記プログラムメモリからそのプログラムを読み出して実行する手段として機能させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体であって、
前記選択手段は、
前記不揮発性メモリに前記条件のいずれに対応するフラグも記録されていなければ、前記複数の条件のうち、各プログラムごとに最も優先順位の高い条件の中から、まず、最も下限時間の短いものを選択し、さらに、前記計測手段によって計測した時間が、前記選択した条件の上限時間を超える度に、次に下限時間の短いものを選択し、
前記不揮発性メモリに前記条件のいずれかに対応するフラグが記録されていれば、当該フラグに対応する条件と同じ前記プログラムに対応する条件であって、当該フラグに対応する条件の次の優先順位の設定時間範囲のみを選択する手段であることを特徴とする記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、プログラムメモリに検査や特殊な設定等を行うためのプログラムを格納しており、そのプログラムを読み出してその処理を実行することができるプリンタ、複写機、ファクシミリ装置、その他の電子機器、およびそのプログラムの読み出し方法と、そのためのプログラムを記録した記録媒体に関する。
【０００２】
【従来の技術】
組立工場の作業員が電子機器を検査したり、電子機器の設置先でサービスマンがユーザには設定できない特別な設定を行うような場合には、電子機器の内部メモリに格納してある検査や設定のための特別なプログラムを起動して行うことが多い。その際には一般に、その電子機器の入力装置から所定の入力を行うと、電子機器の制御部がそれをプログラムでチェックして、その特別なプログラムを起動する方法がとられている。
【０００３】
例えば、特開平７−３１９８５８号公報には、電源ＯＮ時にキー入力を検出し、所定のキーが押下されている場合に試験・診断プログラムを実行するコンピュータシステムが、実公平６−５００３５号公報には、複数個のスイッチが特定の順番で入力されたときに検査用プログラムを実行する高周波加熱装置が開示されている。
【０００４】
【発明が解決しようとする課題】
しかしながら、これらの方法では、入力装置に故障があった場合、例えば、検査や設定のための特別なプログラムの起動に必要なキーの１つが接触不良であった場合には、そのプログラムを起動することができない。
この発明は、このような問題を解決するためになされたものであり、電子機器の入力装置が故障していても、上述のような検査及び／又は設定のためのプログラムを起動できるようにすることを目的とする。
【０００５】
【課題を解決するための手段】
この発明による電子機器は、上記の目的を達成するため、電子機器において、その電子機器の動作を制御する制御手段と、電源ＯＮからの時間を計測する計測手段と、その電子機器の検査及び／又は設定を行うためのプログラムを格納したプログラムメモリと、予め決められた時間に関する条件を記録しておくテーブルメモリと、そのテーブルメモリの内容を変更する手段と、書換可能で且つ電源ＯＮでもＯＦＦでも内容の消えない不揮発性メモリとを備えている。
【０００７】
そして、上記テーブルメモリが、予め決められ、優先順位の付された２つの第１の設定時間の情報と、その第１の設定時間の各々に対応し、その対応する第１の設定時間よりも長い第２の設定時間の情報とを記録しており、上記制御手段が、上記不揮発性メモリに上記第１の設定時間のいずれに対応するフラグも記録されていなければ、上記テーブルメモリに記録されている２つの第１の設定時間のうち優先順位が１番目のものを選択し、上記計測手段によって計測した時間がその選択した第１の設定時間以上になった時点で、そのことを示すフラグを上記不揮発性メモリに書き込み、上記計測手段によって計測した時間が、上記テーブルメモリに記録されている、上記選択した第１の設定時間に対応する第２の設定時間以上になった時点で、上記不揮発性メモリに書き込んだ、全ての第１の設定時間と対応するフラグを初期化する処理を実行し、上記不揮発性メモリに上記優先順位が１番目の第１の設定時間に対応するフラグが記録されていれば、上記２つの第１の設定時間のうち、優先順位が２番目のものを選択し、上記計測手段によって計測した時間が、その選択した第１の設定時間以上になった時点で、そのことを示すフラグを上記不揮発性メモリに書き込み、上記計測手段によって計測した時間が、上記テーブルメモリに記録されている、上記選択した第１の設定時間に対応する第２の設定時間以上になった時点で、上記不揮発性メモリに書き込んだ、全ての第１の設定時間に対応するフラグを初期化する処理を実行し、電源ＯＮ時に上記不揮発性メモリに全ての上記第１の設定時間に対応するフラグが書き込まれている場合に、上記プログラムメモリから上記プログラムを読み出してその処理を実行する手段を有するようにするとよい。
【０００９】
あるいは、上記テーブルメモリが、予め決められ、優先順位の付された２つの設定時間範囲の情報を記録しており、上記制御手段が、上記不揮発性メモリに上記設定時間範囲のいずれに対応するフラグも記録されていなければ、上記テーブルメモリに記録されている２つの設定時間範囲のうち、優先順位が１番目のものを選択し、電源がＯＮの状態からＯＦＦされた時に、上記計測手段によって計測した時間がその選択した設定時間範囲内であれば、そのことを示すフラグを上記不揮発性メモリに書き込む処理を行い、上記不揮発性メモリに前記優先順位が１番目の設定時間範囲に対応するフラグが記録されていれば、上記テーブルメモリに記録されている２つの設定時間範囲のうち、優先順位が２番目のものを選択し、電源がＯＮの状態からＯＦＦされた時に、上記計測手段によって計測した時間がその選択した設定時間範囲内であれば、そのことを示すフラグを上記不揮発性メモリに書き込む処理を行い、電源ＯＮ時に上記不揮発性メモリに全ての上記設定時間範囲に対応するフラグが書き込まれている場合に、上記プログラムメモリから上記プログラムを読み出してその処理を実行するようにしてもよい。
【００１１】
また、上記プログラムメモリが複数の上記プログラムを格納し、上記テーブルメモリが、上記各プログラムごとに、予め決められた第１の設定時間と第２の設定時間の複数の組であって、その複数の組における優先順位の付された第１の設定時間と、その第１の設定時間の各々に対応し、その対応する第１の設定時間よりも長い第２の設定時間との組を記録しており、上記テーブルメモリに記録されている各組の第１の設定時間と第２の設定時間により規定される時間範囲は、少なくとも上記プログラム毎に最も優先順位の高いものについては、互いに重ならない範囲であり、上記制御手段に、上記不揮発性メモリの内容又はその不揮発性メモリの内容をバックアップしたデータに、上記第１設定時間のいずれと対応するフラグも記録されていなければ、上記各プログラムごとの複数の第１及び第２の設定時間の組のうち、最も優先順位の高い第１及び第２の設定時間の組を、上記第１の設定時間が短いものから順に選択して、その選択した各組について、上記計測手段によって計測した時間が、上記選択した第１の設定時間以上になった時点で、そのことを示すフラグを上記不揮発性メモリに書き込み、上記計測手段によって計測した時間が上記選択した第２の設定時間以上になった時点で、上記不揮発性メモリに書き込んだフラグを初期化する処理を実行し、上記不揮発性メモリの内容又はその内容をバックアップしたデータに、いずれかの上記フラグが記録されていれば、そのフラグに対応する第１及び第２の設定時間の組と同じ前記プログラムに対応する組であって、そのフラグに対応する第１及び第２の設定時間の組の次の優先順位の組のみを選択して、上記計測した時間がその選択した第１の設定時間以上になった時点で、そのことを示すフラグを上記不揮発性メモリに書き込み、上記計測した時間が上記選択した第２の設定時間以上になった時点で、上記不揮発性メモリに書き込んだフラグを初期化し、また、電源ＯＮ時にその不揮発性メモリに上記プログラムの１つについて全ての上記第１の設定時間に対応するフラグが書き込まれている場合に、上記プログラムメモリからそのプログラムを読み出してその処理を実行する処理手段を設けてもよい。
【００１３】
上記プログラムメモリが、複数の上記プログラムを格納し、上記テーブルメモリが、上記各プログラムごとに、予め決められた複数の設定時間範囲の情報であって、その複数の設定時間範囲の情報における優先順位の付された設定時間範囲の情報を記録しており、上記テーブルメモリに記録されている各設定時間範囲は、少なくとも上記プログラム毎に最も優先順位の高いものについては、互いに重ならない範囲であり、上記制御手段は、上記不揮発性メモリの内容又はその不揮発性メモリの内容をバックアップしたデータに、上記設定時間範囲のいずれと対応するフラグも記録されていなければ、上記複数の設定時間範囲のうち、各プログラムごとに最も優先順位の高い設定時間範囲の中から、まず、最も下限時間の短いものを選択し、さらに、上記計測手段によって計測した時間が、上記選択した設定時間範囲を超える度に、次に下限時間の短いものを選択し、上記不揮発性メモリの内容又はその不揮発性メモリの内容をバックアップしたデータに、上記設定時間範囲のいずれかに対応するフラグが記録されていれば、そのフラグに対応する設定時間範囲と同じ上記プログラムに対応する設定時間範囲であって、そのフラグに対応する設定時間範囲の次の優先順位の設定時間範囲のみを選択し、電源がＯＮの状態からＯＦＦされた時に、上記計測手段によって計測した時間が上記選択している設定時間範囲内であれば、そのことを示すフラグを上記不揮発性メモリに書き込み、また、電源ＯＮ時に上記不揮発性メモリに上記プログラムの１つについて全ての上記設定時間範囲に対応するフラグが書き込まれている場合に、上記プログラムメモリからそのプログラムを読み出して、その処理を実行する処理手段を設けてもよい。
【００１４】
ここで、上記不揮発性メモリに特定なコードが書き込まれている場合には、上記制御部による電源ＯＮ時の特別なプログラムの読み出しを行わないようにしてもよい。
【００１５】
さらに、この発明による電子機器におけるプログラムの読み出し方法は、電子機器であって、その電子機器の検査及び／又は設定を行うためのプログラムを格納したプログラムメモリと、電源がＯＮされてからＯＦＦされるまでの時間に関する条件を２つ、優先順位を付して記録しておくテーブルメモリと、書換可能で且つ電源ＯＮでもＯＦＦでも内容の消えない不揮発性メモリと、上記テーブルメモリの内容を変更する手段と、を備える電子機器の制御を行うコンピュータが、その電子機器に、上記不揮発性メモリに上記条件のいずれに対応するフラグも記録されていなければ、上記条件のうち優先順位が１番目のものを選択させ、実際に電源がＯＮされてからの時間を計測させ、その計測した時間が上記選択した条件と一致したら、それを示すフラグを上記不揮発性メモリに書き込ませ、上記不揮発性メモリに、上記優先順位が１番目の条件に対応するフラグが記録されていれば、上記条件のうち優先順位が２番目のものを選択させ、実際に電源がＯＮされてからの時間を計測させ、その計測した時間が上記選択した条件と一致したら、そのことを示すフラグを上記不揮発性メモリに書き込ませ、電源ＯＮ時に上記不揮発性メモリに全ての上記条件に対応するフラグが書き込まれていたら、上記プログラムメモリから上記プログラムを読み出させることを特徴とする。
【００１６】
あるいは、電子機器であって、その電子機器の検査及び／又は設定を行うための複数のプログラムを格納したプログラムメモリと、上記各プログラムごとに、電源がＯＮされてからＯＦＦされるまでの時間に関する複数の条件であって、その複数の条件における優先順位の付された条件を記録しておくテーブルメモリと、書換可能で且つ電源ＯＮでもＯＦＦでも内容の消えない不揮発性メモリと、上記テーブルメモリの内容を変更する手段と、を備え、上記各条件が、少なくとも上記プログラム毎に最も優先順位の高いものについては、互いに重ならない時間範囲を示す条件である電子機器の制御を行うコンピュータが、その電子機器に、上記不揮発性メモリに上記条件のいずれに対応するフラグも記録されていなければ、上記複数の条件のうち、各プログラムごとに最も優先順位の高い条件の中から、まず、最も下限時間の短いものを選択させ、実際に電源がＯＮされてからの時間を計測させ、さらに、その計測した時間が選択している条件の上限時間を超える度に、次に下限時間の短いものを選択させ、上記不揮発性メモリに前記条件のいずれかに対応するフラグが記録されていれば、そのフラグに対応する条件と同じ前記プログラムに対応する条件であって、そのフラグに対応する条件の次の優先順位の条件のみを選択させ、実際に電源がＯＮされてからの時間を計測させ、その計測した時間が上記選択させた条件と一致したらそのことを示すフラグを上記不揮発性メモリに書き込ませ、電源ＯＮ時に上記不揮発性メモリに上記プログラムの１つについて全ての上記条件に対応するフラグが書き込まれていたら、上記プログラムメモリからそのプログラムを読み出させることを特徴とする。
【００１７】
また、この発明による記録媒体は、電子機器であって、電源ＯＮからの時間を計測する計測手段と、その電子機器の検査及び／又は設定を行うためのプログラムを格納するプログラムメモリと、電源がＯＮされてからＯＦＦされるまでの時間に関する、予め定められ、優先順位を付された２つの条件を格納するテーブルメモリと、不揮発性メモリと、を備えた電子機器の制御を行うコンピュータを、上記テーブルメモリの内容を変更する手段と、上記不揮発性メモリに上記条件のいずれに対応するフラグも記録されていなければ、上記条件のうち優先順位が１番目のものを選択し、上記不揮発性メモリに上記優先順位が１番目の条件に対応するフラグが記録されていれば、上記条件のうち優先順位が２番目のものを選択する選択手段と、上記計測手段によって計測した時間が上記選択手段が選択した条件と一致したらそのことを示すフラグを上記不揮発性メモリに書き込む手段と、電源ＯＮ時に上記不揮発性メモリに全ての上記条件に対応するフラグが書き込まれていたら、上記プログラムメモリから上記プログラムを読み出して実行する手段として機能させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体である。
【００１８】
さらに、電子機器であって、電源ＯＮからの時間を計測する計測手段と、その電子機器の検査及び／又は設定を行うための複数のプログラムを格納するプログラムメモリと、上記各プログラムごとに、電源がＯＮされてからＯＦＦされるまでの時間に関する、予め定められた複数の条件であって、その複数の条件における優先順位の付された条件を格納するテーブルメモリと、不揮発性メモリと、を備え、上記各条件は、少なくとも上記プログラム毎に最も優先順位の高いものについては、互いに重ならない時間範囲を示す条件である電子機器の制御を行うコンピュータを、上記テーブルメモリの内容を変更する手段と、上記複数の条件から、１つの条件を選択する選択手段と、上記計測手段によって計測した時間が上記選択手段が選択している条件と一致したらそのことを示すフラグを不揮発性メモリに書き込む手段と、電源ＯＮ時に前記不揮発性メモリに上記プログラムの１つについて全ての上記条件に対応するフラグが書き込まれていたら、上記プログラムメモリからそのプログラムを読み出して実行する手段として機能させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体であって、上記選択手段が、上記不揮発性メモリに上記条件のいずれに対応するフラグも記録されていなければ、上記複数の条件のうち、各プログラムごとに最も優先順位の高い条件の中から、まず、最も下限時間の短いものを選択し、さらに、上記計測手段によって計測した時間が、上記選択した条件の上限時間を超える度に、次に下限時間の短いものを選択し、上記不揮発性メモリに上記条件のいずれかに対応するフラグが記録されていれば、そのフラグに対応する条件と同じ上記プログラムに対応する条件であって、そのフラグに対応する条件の次の優先順位の設定時間範囲のみを選択する手段である記録媒体も提供する。
【００１９】
【発明の実施の形態】
以下、この発明の好ましい実施の形態を図面を参照して説明する。
〔第１の実施形態：図１乃至図３〕
まず、図１を参照して、この発明による電子機器の第１の実施形態であるプリンタのハード構成について説明する。図１はそのプリンタの概略構成を示すブロック図である。
このプリンタは、制御部１、電源部２、表示・操作部３、不揮発性メモリ４、時間測定部５、テーブルメモリ６、画像データ入力部７、および出力部８からなる。これらの各部は、システムバス９によって接続され、データの授受が可能になっている。
【００２０】
制御部１は、このプリンタの各部の動作を制御する制御手段であり、ＣＰＵ、ＲＯＭ、ＲＡＭ等からなる。そのＲＯＭは、プログラムメモリであり、少なくとも各部の制御用のプログラム及び、プリンタの検査及び／又は設定用の特別なプログラム（以下、「検査／設定プログラム」という）が格納されている。制御部１は、必要に応じてこれらのプログラムを起動して各部の制御を行う。
また、そのＲＯＭを電気的に消去・書き込み可能なＥＥＰＲＯＭやフラッシュメモリで構成することにより、市場で制御プログラム及び検査／設定プログラムをアップデートすることが可能になる。
【００２１】
また、この制御部１は、システムバス９を通じて不揮発性メモリ４のデータを読み書きすることができる。さらに、後述するように、時間測定部５によって計測した時間と、テーブルメモリ６に記録されている設定時間との比較を行う機能も備えている。
電源部２は、図示しない商用電源又はバッテリユニットに接続され、プリンタの各部への電力の供給を行う。また、この電源部２には、全体への電力供給のＯＮ／ＯＦＦを制御できるようなメインスイッチを備えている。この実施形態においては、このメインスイッチは、スイッチ操作によって制御部１に信号を送出し、制御部１によって電力供給のＯＮ／ＯＦＦを行うソフトウェアスイッチであるが、機械的に電力供給をＯＮ／ＯＦＦするハードウェアスイッチでも構わない。
【００２２】
表示・操作部３は、プリンタの状態や設定項目等を表示する表示部と、各種操作を行うための操作キーからなる。
不揮発性メモリ４は、電源ＯＮでもＯＦＦでも内容の消えないメモリであり、少なくとも、後述する検査／設定プログラム起動フラグを記憶する。また、電源ＯＮ時の検査／設定プログラムの起動を行わないようにする特定なコードを設定する場合には、そのコードもこの不揮発性メモリ４に記憶させる。
【００２３】
時間測定部５は、電源ＯＮからの時間を計測するタイマによる計測手段である。この時間測定部５は、制御部１内で発生するＣＰＵを駆動するためのクロックパルスをカウントすることによって時間の計測を行うが、別にパルス発振器を設け、その出力パルスをカウントするようにしてもよい。
テーブルメモリ６は、検査／設定用プログラムを起動するための条件である第１の設定時間および第２の設定時間を記録しておくメモリであり、書き換え不可能なＲＯＭ、書き換え可能なＲＯＭ、不揮発性のＲＡＭ、あるいはこれらの組み合わせによって構成することができる。また、このように専用のＲＯＭやＲＡＭを用いてもよいが、制御部１内のＲＯＭを利用してもよい。あるいは、このテーブルメモリ６として不揮発性メモリ４を兼用すれば、第１及び第２の設定時間の変更ができるようになる。
【００２４】
画像データ入力部７は、パーソナルコンピュータやワークステーション等の図示しない外部機器から転送される画像データを入力して、それを一時記憶する部分であり、ＩＥＥＥ１２８４，Ｅｔｈｅｒｎｅｔ，ＩＥＥＥ１３９４等の端子を備えている。
出力部８は、画像データ入力部７で取り込んだ画像データを、記録シートに画像形成して出力する印字部やプロッタ部である。この出力部８は、給紙装置、感光体、レーザ書込ユニット、定着装置、フィニッシャ等で構成されている。しかし、この構成は必須ではなく、インクジェット方式やその他の方法で画像形成を行うものでもよい。
【００２５】
次に、図２及び図３のフローチャートを用いてこのプリンタの動作について説明する。図２及び図３は、この発明の第１の実施形態のプリンタによる動作を示すフローチャートであり、図１に示したプリンタの主として制御部１によって実行される。
このプリンタは電源がＯＮされると、図２及び図３のフローチャートに示す処理を開始し、検査／設定プログラム起動チェック処理（以下、「起動チェック処理」という）を行う。
まず、図２のステップＳ１で不揮発性メモリ４に特定なコードが書き込まれているかどうか判断する。そして、書き込まれていれば、この発明による起動チェック処理は行わず、図３のステップＳ１０に進む。
【００２６】
特定なコードが書き込まれていなければ、この発明による起動チェック処理を実行するため、ステップＳ２に進み、不揮発性メモリ４に検査／設定プログラム起動フラグが立って（書き込まれて）いるかどうかをチェックする。この例では、このフラグが、時間計測部５が計測した電源ＯＮからの時間が第１の設定時間以上になったことを示すデータである。
【００２７】
既にそのフラグが立っていれば、図３のステップＳ１１に進んで、制御部１が内部のＲＯＭに格納されている検査／設定プログラムを読み出してその処理を実行する。
そのフラグが立っていなければ、ステップＳ３に進んで、時間測定部５に時間の計測を開始させる。なお、このステップＳ３になって初めて時間の計測を開始することになるが、実際には、ステップＳ１とＳ２のチェックは極めて短時間で済むので、それらがいずれもＮＯの場合には、殆ど電源ＯＮと同時に時間の計測を開始することになる。
【００２８】
次に、ステップＳ４で、テーブルメモリ６から第１の設定時間（例えば２秒）を読み出し、ステップＳ５に進んで、時間測定部５が計測している時間が第１の設定時間以上になるのを待ち、設定時間以上になるとステップＳ６に進んで、不揮発性メモリ４に検査／設定プログラム起動フラグを書き込む（立てる）。
なお、ステップＳ５で第１の設定時間以上になる前に電源がＯＦＦになると、そのまま処理を終了するが、簡略化して図示を省略している。
【００２９】
次に、通常は計測時間が第１の設定時間以上になるので、ステップＳ６で検査／設定プログラム起動フラグを書き込んだ後、ステップＳ７に進んでテーブルメモリ６から第１の設定時間よりも長い第２の設定時間（例えば３秒）を読み出す。
そして図３のステップＳ８に進んで、時間測定部５で計測した時間が第２の設定時間を超えるのを待ち、超えるとステップＳ９に進んで、不揮発性メモリ４を初期化して、検査／設定プログラム起動フラグを消去する。
【００３０】
計測時間が第２の設定時間（３秒）を越えないうちに電源がＯＦＦになると、図示を省略しているが、そのまま処理を終了する。その場合、不揮発性メモリ４に、検査／設定プログラム起動フラグが書き込まれたままになる。
このステップＳ９までが、この発明による起動チェック処理にあたり、ステップＳ１０以降は通常の動作によるものである。
【００３１】
ステップＳ１０では、操作部から検査／設定プログラムを起動するための所定のキー入力があったかどうか判断し、あれば、ステップＳ１１に進んで制御部１が内部のＲＯＭから検査／設定プログラムを読み出してその処理を実行する。
その後、ステップＳ１２へ進む。
【００３２】
所定のキー入力がなければ、そのままステップＳ１２へ進む。
ステップＳ１２では、画像データ入力部７に画像データの入力があったかどうか判断し、あればステップＳ１３に進んで出力部８によってそのデータの印刷を行う。そして、ステップＳ１４で電源ＯＦＦの指示があるまで、ステップＳ１０からの処理を繰り返す。ステップＳ１４で電源ＯＦＦの指示があると、ステップＳ１５で電源をＯＦＦにして処理を終了する。
【００３３】
この図２及び図３を用いて説明した起動チェック処理では、最後まで実行してしまうと、不揮発性メモリ４に書き込まれた検査／設定用プログラム起動フラグが消去されてしまう。
従って、次の電源ＯＮ時に検査／設定プログラム起動フラグによって検査／設定プログラムを起動させるためには、この起動チェック処理の途中の、検査／設定プログラム起動フラグが不揮発性メモリ４に書き込まれたところで電源をＯＦＦにして、起動チェック処理を中断する必要がある。
【００３４】
この操作について、図２と図３を参照しながらさらに説明する。ここで、テーブルメモリ６には、第１の設定時間として２秒が、第２の設定時間として３秒がそれぞれ記録されているものとする。また、不揮発性メモリ４には特別なコードが書き込まれておらず、検査／設定プログラム起動フラグも立っていないものとする。
【００３５】
プリンタの電源がＯＮされると、図２のステップＳ１から起動チェック処理が開始され、ステップＳ５まで進んで、時間測定部５で計測した時間と第１の設定時間（この場合は２秒）との比較を行う。
電源をＯＮしてから２秒経過すると、ステップＳ５の条件が満たされ、ステップＳ６へ進んで、不揮発性メモリ４に検査／設定プログラム起動フラグを書き込む。そして、図３のステップＳ８まで進んで、時間測定部５で計測した時間と第２の設定時間（この場合は３秒）との比較を行う。
ここで、さらに１秒経過して電源ＯＮから３秒経過してしまうと、ステップＳ９に進んで検査／設定プログラム起動フラグを消去してしまうので、その前に電源をＯＦＦして処理を強制的に中断する。
【００３６】
その後、電源を再度ＯＮにすると、また図２のステップＳ１から起動チェック処理が開始される。しかし、今度は不揮発性メモリ４に検査／設定プログラム起動フラグが書き込まれているので、ステップＳ２から図３のステップＳ１１へ進んで、検査／設定プログラムを読み出してその処理を実行する。
【００３７】
このように、この実施形態では、プリンタの電源をＯＮにして２秒後から３秒後までの間に電源を一旦ＯＦＦにし、その後再び電源をＯＮにすることにより、検査／設定プログラムを起動することができる。
従って、このプリンタでは、表示・操作部３の所定のキー操作によって検査／設定プログラムを起動することができない状態でも、またその所定のキー入力を行わなくても、検査／設定プログラムを起動することができる。
なお、言うまでもなく、上述の説明に用いた設定時間は一例であり、これに限られるものではない。また、第２の設定時間は、例えば第１の設定時間から１秒後というように、第１の設定時間を基準に設定してもよい。
【００３８】
〔第２の実施形態：図３，図４〕
次に、図３及び図４を用いてこの発明の第２の実施形態について説明する。
図４は、この発明の第２の実施形態のプリンタの動作を示すフローチャートであり、その続きは第１の実施形態の説明で用いた図３と全く同じフローである。
この第２の実施形態のプリンタのハード構成は、図１によって説明した第１の実施形態のものと同じなので、その説明は省略する。
但し、この第２の実施形態では、図１におけるテーブルメモリ６に、少なくとも第１の設定時間として複数の設定時間を、第２の設定時間として共通の設定時間あるいは第１の設定時間に応じて異なる設定時間を、予め記録させておく。
【００３９】
このプリンタも、第１の実施形態の場合と同じく、電源がＯＮされると図１における制御部１が図４及び図３に示すフローチャートの動作を開始し、まず検査／設定プログラム起動チェック処理（起動チェック処理）を行う。
そのステップＳ２１からステップＳ２３までは、図２のステップＳ１からステップＳ３までと同じである。
【００４０】
ステップＳ２１で不揮発性メモリ４に特別なコードが書き込まれておらず、ステップＳ２２で検査／設定プログラム起動フラグが書き込まれていなければ、ステップＳ２３に進んで、時間測定部５に時間の計測を開始させる。
そして、ステップＳ２４で、不揮発性メモリ４の予備フラグをチェックする。予備フラグは、複数の第１の設定時間に対応して用意され、電源ＯＮから選択された第１の設定時間が経過した時に書き込まれるデータである。
次にステップＳ２５に進み、チェックした予備フラグの状態に応じて、テーブルメモリ６から複数の第１の設定時間の１つを選択して読み出す。例えば、複数の第１の設定時間に優先順位を付しておき、予備フラグが１つも立っていないときには１番目の第１の設定時間を選択して読み出す。
【００４１】
その後、ステップＳ２６に進んで、時間測定部５の計測時間が選択した第１の設定時間以上になるのを待つ。そして、設定時間以上になるとステップＳ２７へ進み、不揮発性メモリ４に、電源ＯＮからの時間が一番目の第１の設定時間以上になったことを示す予備フラグ（第１フラグ）を書き込む。
もし、計測時間が第１の設定時間以上になる前に電源がＯＦＦになると、不揮発性メモリ４に第１フラグが書き込まれずに処理を終了することになる。
【００４２】
次に、ステップＳ２８に進んで制御部１が不揮発性メモリ４の予備フラグの情報をチェックする。ここで、全ての第１の設定時間に対応する予備フラグが書き込まれていれば（全フラグあり）、ステップＳ２９に進んで、検査／設定プログラム起動フラグを不揮発性メモリ４に書き込んでステップＳ３０へ進む。全ての予備フラグが書き込まれていなければ、そのままステップＳ３０に進む。
【００４３】
ステップＳ３０では、不揮発性メモリ４から第２の設定時間を読み出す。そして図３のステップＳ８に進んで、時間測定部５による計測時間が第２の設定時間を超えるのを待ち、超えるとステップＳ９に進んで、不揮発性メモリ４を初期化して、予備フラグ又は検査／設定プログラム起動フラグが書き込まれていれば、それを消去する。
【００４４】
このステップＳ９までが起動チェック処理に相当し、ステップＳ１０以降は、通常動作に相当する処理てあり、前述した第１の実施形態の場合と同じであるから、説明を省略する。
なお、電源ＯＦＦの指示はステップＳ１４で判断しているが、起動チェックを実行中に電源ＯＦＦの指示があった場合には、その時点で処理を中断して電源をＯＦＦにする。
【００４５】
ところで、この図３及び図４のフローチャートによる起動チェック処理も、最後まで実行してしまうと不揮発性メモリ４に書き込まれた予備フラグあるいは検査／設定用プログラム起動フラグが初期化されてしまう。
従って、電源ＯＮ時に検査／設定プログラム起動フラグによって検査／設定プログラムを起動できるようにするためには、電源をＯＮにした後、起動チェック処理の途中で複数の第１の設定時間のそれぞれと第２の設定時間との間で電源をＯＦＦにすることを繰り返し、全ての予備フラグを立てて検査／設定プログラム起動フラグが不揮発性メモリ４に書き込まれたところで、電源をＯＦＦにして起動チェック処理を中断しなければならない。
【００４６】
この操作について、図３と図４を参照しながらさらに説明する。ここで、テーブルメモリ６には、第１の設定時間として２秒と３秒がこの優先順で、第２の設定時間として第１の設定時間の１秒後が、それぞれ記録されているものとする。プリンタの電源がＯＮされると、図４のステップＳ２１から起動チェック処理を開始する。初めは、予備フラグも検査／設定プログラム起動フラグも不揮発性メモリ４に書き込まれていないので、ステップＳ２３で時間計測を開始した後、ステップＳ２５で２つの第１の設定時間のうち一番目の２秒を選択して読み出し、ステップＳ２６で計測時間が２秒以上になるのを待つ。
【００４７】
電源をＯＮしてから２秒経過すると、ステップＳ２７で一番目の第１の設定時間に対応する予備フラグを不揮発性メモリ４に書き込むが、全ての第１の設定時間に対応する予備フラグが書き込まれてはいないので、ステップＳ３０に進む。そして、第２の設定時間として１秒後の３秒を読み出し、図３のステップＳ８で計測時間が３秒を超えるのを待つ。
ここで、電源ＯＮから３秒経過してしまうと、ステップＳ９で不揮発性メモリ４を初期化して書き込まれた予備フラグを消去してしまうので、その前に電源をＯＦＦして処理を強制的に中断する。
【００４８】
次に電源をＯＮした時も、再び図４のステップＳ２１から起動チェック処理が開始される。このときも、不揮発性メモリ４に検査／設定プログラム起動フラグは書き込まれていないので、ステップＳ２３以降に進むが、今度は一番目の第１の設定時間に対応する予備フラグが書き込まれているので、ステップＳ２５では二番目の第１の設定時間である３秒を選択して読み出す。
そして、電源をＯＮしてから３秒経過すると、ステップＳ２６の条件を満たすので、ステップＳ２７で二番目の第１の設定時間に対応する予備フラグを不揮発性メモリ４に書き込む。それによって次のステップＳ２８では、全て（２つ）の第１の設定時間に対応する予備フラグが書き込まれているため、ステップＳ２９で検査／設定プログラム起動フラグを不揮発性メモリ４に書き込む。そして、ステップＳ３０で第２の設定時間としてその１秒後の４秒を読み出す。
【００４９】
したがって、計測時間が４秒を超えると図３のステップＳ８の条件を満たすため、ステップＳ９で不揮発性メモリ４を初期化し、書き込まれている予備フラグ及び検査／設定プログラム起動フラグを消去してしまうので、その前に電源をＯＦＦして処理を強制的に中断する。
その後に電源を再度ＯＮにすると、また図４のステップＳ２１から起動チェック処理を開始するが、今度は不揮発性メモリ４に検査／設定プログラム起動フラグが書き込まれているので、ステップＳ２２から図３のステップＳ１１へ進み、制御部１のプログラムメモリから検査／設定プログラムを読み出して、その処理を実行する。
【００５０】
このように、この実施形態のプリンタでは、電源をＯＮして２秒後から３秒後の間に電源を一旦ＯＦＦし、次に電源をＯＮして３秒後から４秒後の間に電源を再びＯＦＦし、その後にさらに電源をＯＮすることによって、検査／設定プログラムを起動することができる。
【００５１】
このようにすれば、複数回の電源ＯＮ／ＯＦＦ操作を異なる特定の時間内に行わなければ検査／設定プログラムを起動できないので、ユーザの誤操作による予期しない検査／設定プログラムの起動を防ぐことができる。
なお、言うまでもなく、上述の説明に用いた第１および第２の設定時間はこれに限られるものではない。また、第２の設定時間は、第１の設定時間からの経過時間とはせずに、例えば電源ＯＮから４秒というように、電源ＯＮの時点を基準に設定してもよい。その場合、複数の第１の設定時間に対して第２の設定時間を共通の時間に設定してもよい。また、テーブルメモリ６に設定時間を３つ以上記録し、複数回の電源ＯＮ／ＯＦＦ操作をそれらの時間内に順次行うことを要求するようにしてもよいことはもちろんである。
【００５２】
〔第３の実施形態：図５〕
次に、図５を用いてこの発明の第３の実施形態について説明する。
図５は、この発明の第３の実施形態のプリンタの制御部による動作を示すフローチャートである。
この第３の実施形態のプリンタも、そのハード構成は図１によって説明した第１の実施形態のものと同じであり、テーブルメモリ６に第１の設定時間と第２の設定時間の代わりに設定時間範囲の情報を記録しておく点と、電源部２に備えた電源スイッチがソフトウェアスイッチでなければならない点が異なるだけであるから、その説明を省略する。
【００５３】
このプリンタは、電源がＯＮされると図５のフローチャートに示す動作を開始し、まず検査／設定プログラム起動チェック処理（起動チェック処理）を行う。ステップＳ３１からステップＳ３３までは、図２のステップＳ１からステップＳ３までとほぼ同じであるから説明を省略する。但し、ステップＳ３２で検査／設定プログラム起動フラグが設定されている場合に、検査／設定プログラムを起動する前にステップＳ４０で不揮発性メモリを初期化して検査／設定プログラム起動フラグを消去する処理が追加されている。
そして、ステップＳ３３で時間計測を開始した後、ステップＳ３４でテーブルメモリ６から設定時間範囲を読み出す。そして、ステップＳ３５とステップＳ３９で、計測時間が設定時間範囲の上限を超えない間だけ電源ＯＦＦの指示があったかどうか判断し、あればステップＳ３６へ進む。
【００５４】
ステップＳ３６では、電源ＯＦＦの指示があった時点での計測時間が設定時間範囲内かどうか判断し、範囲内であればステップＳ３７に進んで、不揮発性メモリ４に検査／設定プログラム起動フラグを書き込んでステップＳ３８へ進む。ステップＳ３６で設定時間範囲内でなければ、そのままステップＳ３８へ進む。
ステップＳ３８では、電源ＯＦＦのための処理を行い、電源を切断して処理を終了する。
【００５５】
ステップＳ３５で電源ＯＦＦの指示がなく、ステップＳ３９で計測時間が設定時間範囲の上限を超えると、ステップＳ４１に進む。ステップＳ４１からステップＳ４４は、図３のステップＳ１０からステップＳ１３と同じ通常の動作であるから説明を省略する。
ステップＳ４５は、電源ＯＦＦの指示の判断で、その指示がなければステップＳ４１に戻り、その指示があるとステップＳ３８へ進んで、電源をＯＦＦにして処理を終了する。
【００５６】
この実施形態のプリンタによれば、電源をＯＮしたあと、設定時間範囲（例えば２秒から３秒）だけ経過する間にＯＦＦにし、その後再び電源をＯＮにすることによってのみ、検査／設定プログラムを起動することができる。
ここでは、設定時間範囲を一つだけ記録しておく例について説明したが、第２の実施形態と同様に、設定時間範囲を複数設定しておき、その各条件を満たすように複数回電源のＯＮ／ＯＦＦを繰り返した後に、再び電源をＯＮにして初めて検査／設定プログラムが起動するようにしてもよい。この場合には、ステップＳ３９で計測時間が設定時間範囲の上限を超えた場合には、ステップＳ４１に進む前に不揮発性メモリを初期化して全てのフラグを消去するようにするとよい。
【００５７】
〔第３の実施形態の変更例〕
次に、上述した第３の実施形態の変更例について図６のフローチャートによって説明する。
この変更例は、起動チェック処理の主要部を通常動作のルーチンに組み込んだ点が前述した第３の実施形態と異なるのみであるので、この点以外の説明は簡単にするか省略する。
【００５８】
この場合も、プリンタの電源をＯＮすると、その制御が図６に示すフローチャートの処理を開始する。
そして、ステップＳ５１で、前述の各実施形態の場合と同様に、不揮発性メモリ４に検査／設定プログラム起動フラグが書き込まれているかどうかをチェックする。このフラグ書き込まれていれば、ステップＳ５５に進んで不揮発性メモリを初期化して検査／設定プログラム起動フラグを消去してから、ステップＳ５６に進んで検査／設定プログラムを読み出してその処理を実行する。
【００５９】
書き込まれていなければステップＳ５２に進んで、時間測定部５に時間の計測を開始させる。
次に、ステップＳ５３に進むが、ここからは通常動作のルーチンである。ステップＳ５３では電源ＯＦＦの指示があったかどうか判断し、なければステップＳ５４に進む。
ステップＳ５４では操作部から検査／設定プログラムを起動するための所定のキー入力があったかどうか判断し、あれば、ステップＳ５６に進んで検査／設定プログラムを読み出してその処理を実行する。その後、ステップＳ５７へ進む。所定のキー入力がなければそのままステップＳ５７へ進む。
【００６０】
ステップＳ５７では、画像データの入力があったかどうか判断し、あればステップＳ５８に進んでそのデータの印刷を行う。そして、印刷が終了したらステップＳ５３へ戻る。画像データの入力がなければ、そのままステップＳ５３へ戻る。そして、何もない場合には、ステップＳ５３，Ｓ５４，Ｓ５７を繰り返していることになる。
ステップＳ５３で電源ＯＦＦの指示があった場合には、ステップＳ５９に進んで、不揮発性メモリ４に特定なコードが書き込まれているかどうかをチェックし、書き込まれていれば、この発明による処理を行わないので、ステップＳ６３へ進んで、電源をＯＦＦにして処理を終了する。
【００６１】
特定なコードが書き込まれていなければ、この発明による処理を行うため、ステップＳ６０に進んで、テーブルメモリ６から設定時間範囲の情報を読み出し、ステップＳ６１で計測時間がその設定時間範囲内であるかどうか判断する。
設定時間範囲内であればステップＳ６２へ進んで、不揮発性メモリ４に検査／設定プログラム起動フラグを書き込み、ステップＳ６３へ進む。設定時間範囲内でなければ、そのままステップＳ６３へ進む。
ステップＳ６３では、電源ＯＦＦのための処理を行って電源を切断し、処理を終了する。
【００６２】
この変形例のプリンタによっても、第３の実施形態のプリンタと同様、電源をＯＮしたあと、設定時間範囲（例えば２秒から３秒）だけ経つ間にＯＦＦにし、その後再び電源をＯＮにすることによって、検査／設定プログラムを起動することができる。
ここでは、設定時間範囲を一つだけ記録しておく例について説明したが、設定時間範囲を複数設定し、その各条件を満たすように複数回電源のＯＮ／ＯＦＦを繰り返した後、再度電源をＯＮにして初めて検査／設定プログラムが起動するようにしてもよいことは、第３の実施形態の場合と同様である。
【００６３】
以上説明した第１乃至第３の実施形態及び変形例の処理を行うプログラムは、はじめから図１に示した制御部１のＲＯＭに格納しておけばよいが、記録媒体である別のＲＯＭ等のメモリに記録して提供することもできる。ＣＰＵはそのメモリからこのプログラムを読み出して実行することにより、計測手段によって計測した時間が設定した条件と一致したらそのことを示すデータを不揮発性メモリに書き込む手段と、電源ＯＮ時にその不揮発性メモリに上記データが書き込まれていたら、プログラムメモリから特別なプログラムを読み出して実行する手段として機能する。また、記録媒体に記録されたプログラムにより制御部１のＲＯＭに記録されたプログラムをアップデートすることにより、プリンタに後からこのような機能を持たせることもできる。
【００６４】
〔第４の実施形態：図７乃至図１０〕
次に、図７乃至図１０を用いてこの発明による電子機器の第４の実施形態であるプリンタについて説明する。図７は、そのプリンタの概略構成を示すブロック図、図８はそのテーブルメモリに記録したデータの例を示す図、図９及び図１０はそのプリンタによる動作を示すフローチャートである。
このプリンタは、図１に示した第１の実施形態のプリンタの構成に加え、揮発性メモリ１０を設けたものである。この揮発性メモリ１０は、電源をＯＦＦにした時には消えても構わない情報を記憶しておくためのもので、通常のＲＡＭによって構成し、少なくとも後述する条件達成バックアップ情報を記憶する領域を設ける。なお、この揮発性メモリ１０は制御部１のＲＡＭを兼用して設けてもよい。
【００６５】
また、このプリンタは、制御部１に設けたプログラムメモリであるＲＯＭに、検査／設定プログラムを複数格納しており（この実施形態では２つであり、例えば通常の診断プログラムと工場用の診断プログラム）、テーブルメモリ６にはその各々の検査／設定プログラムについて、図８に示すように、開始アドレス，起動のためのキー押下条件，起動のための電源ＯＮ／ＯＦＦ条件を記録している。ここで、開始アドレスは、その検査／設定プログラムを格納しているプログラムメモリの先頭番地であり、起動のためのキー押下条件は、その検査／設定プログラムを起動したい場合にユーザに押下してもらうキーの情報である。また、起動のための電源ＯＮ／ＯＦＦ条件は、その検査／設定プログラムを起動したい場合にユーザに電源ＯＮ／ＯＦＦの操作をしてもらう時間の情報であり、第１の設定時間とそれよりも長い第２の設定時間を記録している。なお、第１の設定時間の第２の設定時間の間の時間帯は、どの検査／設定プログラムについても重ならないように設定するものとする。
【００６６】
また、不揮発性メモリ４には、検査／設定プログラム起動フラグの代わりに後述する条件達成フラグを記憶するものとする。
このプリンタの構成は、これらの点以外については図１を用いて説明した第１の実施形態のプリンタと同じであるので、その説明は省略する。
【００６７】
このプリンタは、電源がＯＮにされると、図９及び図１０のフローチャートに示した処理を、主として制御部１によって実行する。
まず、ステップＳ７１でキーの押下情報を取得し、ステップＳ７２に進んで１番目の検査／設定プログラム（プログラム１）を起動するためのキーが押下されているかどうか判断する。押下されていればステップＳ７９に進んで制御部１のＲＡＭに起動プログラム情報としてプログラム１の開始アドレスを設定する。
ステップＳ７２で押下されていなければ、ステップＳ７３に進んで２番目の検査／設定プログラム（プログラム２）を起動するためのキーが押下されているかどうか判断する。押下されていればステップＳ８０に進んで制御部１のＲＡＭに起動プログラム情報としてプログラム２の開始アドレスを設定する。
【００６８】
ステップＳ７３で押下されていなければ、ステップＳ７４に進み、不揮発性メモリ４に特定なコードが書き込まれているかどうか判断する。このステップＳ７４から図１０のステップＳ８９までが、この発明による起動チェック処理である。特定なコードが書き込まれていれば、この発明による起動チェック処理は行わず、図１０のステップＳ９０に進む。
特定なコードが書き込まれていなければ、この発明による起動チェック処理を実行するため、ステップＳ７５に進んで不揮発性メモリ４に記憶されているフラグを揮発性メモリ１０に条件達成バックアップ情報として書き込み、ステップＳ７６に進んで不揮発性メモリ４を初期化して記憶されているフラグをクリアする。すなわち、これらの処理の後では、電源ＯＮ時に不揮発性メモリ４に書き込まれていたデータは揮発性メモリ１０に書き込まれていることになる。
【００６９】
そして、ステップＳ７７に進んでプログラム１を起動するための電源ＯＮ／ＯＦＦ条件を達成したことを示すフラグ（条件１達成フラグ）が揮発性メモリ１０に書き込まれているかどうか判断し、既に書き込まれていればステップＳ７９に進んで制御部１のＲＡＭに起動プログラム情報としてプログラム１の開始アドレスを設定する。
ステップＳ７７で書き込まれていなければ、ステップＳ７８に進んでプログラム２を起動するための電源ＯＮ／ＯＦＦ条件を達成したことを示すフラグ（条件２達成フラグ）が揮発性メモリ１０に書き込まれているかどうか判断し、既に書き込まれていればステップＳ８０に進んで制御部１のＲＡＭに起動プログラム情報としてプログラム２の開始アドレスを設定する。
【００７０】
ステップＳ７８で書き込まれていなければ、図１０のステップＳ８１に進んで時間測定部５に時間の計測を開始させる。なお、このステップＳ８１になって初めて時間の計測を開始することになるが、実際には、ステップＳ７１からステップＳ７８までの処理は極めて短時間で済むので、ここまでの判断がいずれもＮＯの場合には、ほとんど電源ＯＮと同時に時間の計測を開始することになる。
次に、ステップＳ８２で第１及び第２の設定時間を選択する。テーブルメモリ６には、前述のように各々の検査／設定プログラムについて第１及び第２の設定時間が記録されているが、初めはその中で第１の設定時間が一番短いプログラムについての設定時間を選択する。
【００７１】
そして、ステップＳ８３に進んで計測時間が選択した第１の設定時間（例えば１秒）以上になるまで待機し、第１の設定時間以上になったらステップＳ８４に進んで、そのことを示す条件達成フラグを不揮発性メモリ４に書き込む。
なお、ステップＳ８３で第１の設定時間以上になる前に電源がＯＦＦになると、そのまま処理を終了するが、簡略化して図示を省略している。
【００７２】
次に、通常は計測時間が第１の設定時間以上になるので、ステップＳ８４で条件達成フラグを書き込んだ後、ステップＳ８５に進んで測定時間が第２の設定時間（例えば１．５秒）を超えるのを待ち、第２の設定時間を超えたらステップＳ８６に進んで不揮発性メモリ４を初期化し、書き込んだ条件達成フラグを消去する。
計測時間が第２の設定時間を越えないうちに電源がＯＦＦになると、図示を省略しているが、そのまま処理を終了する。その場合、不揮発性メモリ４に、条件達成フラグが書き込まれたままになる。
【００７３】
ステップＳ８６の後はステップＳ８７に進み、テーブルメモリ６に記録されている全ての設定時間（条件）が選択されたかどうか判断し、まだ選択されていない設定時間があれば、ステップＳ８２に戻って残りの中で最も第１の設定時間が短いプログラムについての設定時間を選択し、処理を繰り返す。全ての設定時間が選択されていれば、ステップＳ８８に進んで起動プログラム情報として制御部１のＲＡＭに「なし」を設定する。
その後、ステップＳ８９に進んで起動プログラム情報に従って検査／設定プログラムを読み出して実行するが、ステップＳ８８から進んできた場合には起動プログラム情報は「なし」なので、そのままステップＳ９０に進む。
【００７４】
一方、図９のステップＳ７９又はステップＳ８０で起動プログラム情報を設定した場合にも、その後ステップＳ８９に進む。そして、この場合には起動プログラム情報として起動すべき検査／設定プログラムの開始アドレスが設定されているので、プログラムメモリのその開始アドレスからプログラムを読み出して実行する。
ステップＳ８９の処理が終了すると、ステップＳ９０に進む。このステップＳ９０から先は、通常動作の処理である。
【００７５】
ステップＳ９０では操作部からユーザ設定プログラムを起動するための所定のキー入力があったかどうか判断し、あれば、ステップＳ９１に進んで制御部１が内部のＲＯＭからユーザ設定プログラムを読み出してその処理を実行する。その後、ステップＳ９２に進む。ここで、ユーザ設定プログラムとは、ユーザがこのプリンタの動作モード等の設定を行うためのプログラムであり、制御プログラムの一種である。
所定のキー入力がなければ、そのままステップＳ９２へ進む。
【００７６】
ステップＳ９２では、画像データ入力部７に画像データの入力があったかどうか判断し、あればステップＳ９３に進んで出力部８によってそのデータの印刷を行う。そして、ステップＳ９４で電源ＯＦＦの指示があるまで、ステップＳ９０からの処理を繰り返す。ステップＳ９４で電源ＯＦＦの指示があると、ステップＳ９５で電源をＯＦＦして処理を終了する。
この図９及び図１０を用いて説明した起動チェック処理では、最後まで実行してしまうと、不揮発性メモリ４に書き込まれた条件達成フラグが消去されてしまう。
【００７７】
従って、次の電源ＯＮ時に条件達成フラグによって起動プログラム情報を設定し、検査／設定プログラムを起動させるためには、この起動チェック処理の途中の、条件達成フラグが不揮発性メモリ４に書き込まれたところで電源をＯＦＦにして、起動チェック処理を中断する必要がある。
この操作について、図９と図１０を参照しながらさらに説明する。ここで、テーブルメモリ６には、プログラム１について第１の設定時間に２秒，第２の設定時間に２．５秒が、プログラム２について第１の設定時間に１秒，第２の設定時間に１．５秒が記録されているものとする。また、不揮発性メモリ４には特定なコードが書き込まれておらず、条件達成フラグも書き込まれていないものとする。また、ここではプログラム１を起動する場合の操作について説明する。
【００７８】
プリンタの電源がＯＮされると、図９のステップＳ７１から処理が開始されるが、ここでキーの押下はないものとし、また特定なコードは書き込まれていないので、ステップＳ７５まで進んで起動チェック処理が開始される。条件達成フラグが不揮発性メモリ４に書き込まれていない状態では、ステップＳ７５とステップＳ７６の処理で特に変化はなく、図１０のステップＳ８２まで進んで第１及び第２の設定時間を選択する。ここでは、第１の設定時間が最も短いのはプログラム２であるので、プログラム２についての設定時間（条件２）を選択する。
そして、ステップＳ８３に進んで時間測定部５で計測した時間と第１の設定時間（ここでは１秒）との比較を行う。
【００７９】
電源をＯＮしてから１秒経過すると、ステップＳ８３の条件が満たされ、ステップＳ８４へ進んで、不揮発性メモリ４に条件２達成フラグを書きこむ。そして、ステップＳ８５に進んで時間測定部５で計測した時間と第２の設定時間（ここでは１．５秒）との比較を行う。
ここで、さらに０．５秒経過して電源ＯＮから１．５秒経過すると、ステップＳ８６に進んで条件２達成フラグを消去する。プログラム２を起動したい場合には、１．５秒経過する前に電源をＯＦＦすればよいが、ここではプログラム１を起動するので、そのまま放置する。
【００８０】
すると、ステップＳ８７に進んで、まだ条件１が選択されていないのでステップＳ８２に戻り、その条件１の設定時間を選択する。
そして、再びステップＳ８３に進んで時間測定部５で計測した時間と新たに選択した第１の設定時間（ここでは２秒）との比較を行う。
電源をＯＮしてから２秒経過すると、ステップＳ８３の条件が満たされ、ステップＳ８４へ進んで、不揮発性メモリ４に条件１達成フラグを書きこむ。そして、ステップＳ８５に進んで時間測定部５で計測した時間と新たに選択した第２の設定時間（ここでは２．５秒）との比較を行う。
ここで、さらに０．５秒経過して電源ＯＮから２．５秒経過してしまうと、ステップＳ８６に進んで、条件１達成フラグを消去してしまうので、その前に電源をＯＦＦして処理を強制的に中断する。
【００８１】
その後に電源を再度ＯＮにすると、また図９のステップＳ７１から処理が開始される。ここでもキー入力はないものとすると、今度は不揮発性メモリ４に条件１達成フラグが書き込まれているので、ステップＳ７５でこのフラグが条件達成バックアップ情報として揮発性メモリ１０に書き込まれ、ステップＳ７７からステップＳ７９に進んで起動プログラム情報としてプログラム１の開始アドレスが設定され、図１０のステップＳ８９に進んでその情報に基づいてプログラム１を読み出してその処理を実行する。
【００８２】
このように、この実施形態では、プリンタの電源をＯＮにして２秒後から２．５秒後までの間に電源を一旦ＯＦＦにし、その後再び電源をＯＮにすることにより、第１の検査／設定プログラムを起動することができる。第２の検査／設定プログラムを起動したい場合にはプリンタの電源をＯＮにして１秒後から１．５秒後までの間に電源を一旦ＯＦＦにし、その後再び電源をＯＮにすればよい。
従って、このプリンタでは、表示・操作部３の所定のキー操作によって検査／設定プログラムを起動することができない状態でも、またその所定のキー入力を行わなくても、複数の検査／設定プログラムから任意の１つを選択して起動することができる。
なお、言うまでもなく、上述の説明に用いた設定時間は一例であり、これに限られるものではない。また、第２の設定時間は、例えば第１の設定時間から１秒後というように、第１の設定時間を基準に設定してもよい。
【００８３】
〔第５の実施形態：図１０乃至図１２〕
次に、図１０乃至図１２を用いてこの発明の第５の実施形態について説明する。
図１１は、この実施形態のプリンタのテーブルメモリに記録したデータの例を示す図、図１２はそのプリンタによる動作をしめすフローチャートであり、その続きは第４の実施形態の説明で用いた図１０のフローチャートである。
この第５の実施形態のプリンタのハード構成は、図７によって説明した第４の実施形態のものと同じなので、その説明は省略する。
【００８４】
但し、この第５の実施形態では、図７におけるテーブルメモリ６に、図１１に示すように、各検査／設定プログラムについて各々複数（この実施形態では２つ）の起動のための電源ＯＮ／ＯＦＦ条件を記録しており、それぞれの条件は、第１の設定時間とそれよりも長い第２の設定時間として記録している。なお、第１の設定時間の第２の設定時間の間の時間帯は、少なくとも第１の電源ＯＮ／ＯＦＦ条件については、どの検査／設定プログラムについても重ならないように設定するものとする。
このプリンタも、第４の実施形態の場合と同じく、電源がＯＮされると図７における制御部１が図１２及び図１０に示すフローチャートの動作を開始する。
【００８５】
図１２のステップＳ１０１からステップＳ１１０までの処理は、図９のステップＳ７１からステップＳ８０までの処理と対応しており、ステップＳ１０７とステップＳ１０８において、判断の条件がステップＳ７７及びステップＳ７８と異なるのみである。
すなわち、ステップＳ１０７では条件１−２達成フラグが不揮発性メモリ４に書き込まれている場合にステップＳ１０９に進んで制御部１のＲＡＭに起動プログラム情報としてプログラム１の開始アドレスを設定し、ステップＳ１０８では条件２−２達成フラグが不揮発性メモリ４に書き込まれている場合にステップＳ１１０に進んで制御部１のＲＡＭに起動プログラム情報としてプログラム２の開始アドレスを設定する。
【００８６】
ステップＳ１０８で条件２−２達成フラグが書き込まれていない場合には、図１０のステップＳ８１に進む。ここから後の処理は第４の実施形態で説明したものと概ね同じであるが、ステップＳ８２における選択の基準とステップＳ８７における判断の基準が第４の実施形態と異なるので、この点について説明する。
まず、ステップＳ８２では、揮発性メモリ１０に書き込まれている条件達成バックアップ情報に応じて第１及び第２の設定時間を選択する。すなわち、条件達成バックアップ情報が何も無ければ（どの条件も達成されていなければ）、テーブルメモリ６に記録している各プログラムの第１の電源ＯＮ／ＯＦＦ条件の中から、第１の設定時間が最も短い条件についての設定時間を選択する。ステップＳ８７から戻って再度選択する場合には、まだ選択していないものの中で第１の設定時間が最も短い条件についての設定時間を選択する。条件達成バックアップ情報として何らかのフラグが書き込まれていれば（既にいずれかの条件が達成されていれば）、その条件の次の条件についての設定時間を選択する。例えば、プログラム１についての第１の電源ＯＮ／ＯＦＦ条件が達成されたことを示す条件１−１達成フラグが書き込まれていれば、プログラム１についての第２の電源ＯＮ／ＯＦＦ条件についての設定時間を選択する。
【００８７】
ステップＳ８７では、選択可能な設定時間（条件）が全て選択されたかどうか判断する。揮発性メモリ１０に書き込まれている条件達成バックアップ情報が何も無ければ、全てのプログラムについての第１の電源ＯＮ／ＯＦＦ条件についての設定時間が選択可能だが、条件達成バックアップ情報として何らかのフラグが書き込まれていれば、選択され得る設定時間は１つのみであるので、これらが全て選択されたかどうかで判断する必要があるためである。
その他の処理については、第４の実施形態の場合と同じであるので説明を省略する。
【００８８】
ところで、この図１２及び図１０のフローチャートによる起動チェック処理も、最後まで実行してしまうと不揮発性メモリ４に書き込まれた条件達成フラグが初期化されてしまう。
従って、電源ＯＮ時に条件達成フラグによって起動プログラム情報を設定し、検査／設定プログラムを起動させるためには、電源をＯＮにした後、起動チェック処理の途中で複数の第１の設定時間のそれぞれと第２の設定時間との間で電源をＯＦＦにすることを繰り返し、検査／設定プログラム起動のための最後の電源ＯＮ／ＯＦＦ条件の達成を示す条件達成フラグが不揮発性メモリ４に書き込まれたところで、電源をＯＦＦにして起動チェック処理を中断しなければならない。この操作について、図１０と図１２を参照しながらさらに説明する。ここで、テーブルメモリ６には、各電源ＯＮ／ＯＦＦ条件として表１に示す設定時間が記録されているものとする。また、不揮発性メモリ４には特定なコードが書き込まれておらず、条件達成フラグも書き込まれていないものとする。また、ここではプログラム１を起動する場合の操作について説明する。
【００８９】
【表１】
0003970549.tif 000002
【００９０】
プリンタの電源がＯＮされると、図１２のステップＳ１０１から処理が開始されるが、ここでキーの押下はないものとし、また特定なコードは書き込まれていないので、ステップＳ１０５まで進んで起動チェック処理が開始される。条件達成フラグが不揮発性メモリ４に書き込まれていない状態では、ステップＳ１０５とステップＳ１０６の処理で特に変化はなく、図１０のステップＳ８２まで進んで第１及び第２の設定時間を選択する。
ここでは、条件達成バックアップ情報は何もないので、第１の電源ＯＮ／ＯＦＦ条件から選択するが、その中で第１の設定時間が最も短いのはプログラム２のものであるので、プログラム２についての第１の条件の設定時間（条件２−１）を選択する。
【００９１】
そして、ステップＳ８３に進んで時間測定部５で計測した時間と第１の設定時間（ここでは１秒）との比較を行う。
電源をＯＮしてから１秒経過すると、ステップＳ８３の条件が満たされ、ステップＳ８４へ進んで、不揮発性メモリ４に条件２−１達成フラグを書きこむ。そして、ステップＳ８５に進んで時間測定部５で計測した時間と第２の設定時間（ここでは１．５秒）との比較を行う。
ここで、さらに０．５秒経過して電源ＯＮから１．５秒経過すると、ステップＳ８６に進んで条件２−１達成フラグを消去する。プログラム２を起動したい場合には、１．５秒経過する前に電源をＯＦＦすればよいが、ここではプログラム１を起動するので、そのまま放置する。
【００９２】
すると、ステップＳ８７に進んで、まだ条件１−１が選択されていないのでステップＳ８２に戻り、その条件１−１の設定時間を選択する。
そして、再びステップＳ８３に進んで時間測定部５で計測した時間と新たに選択した第１の設定時間（ここでは２秒）との比較を行う。
電源をＯＮしてから２秒経過すると、ステップＳ８３の条件が満たされ、ステップＳ８４へ進んで、不揮発性メモリ４に条件１−１達成フラグを書き込む。そして、ステップＳ８５に進んで時間測定部５で計測した時間と新たに選択した第２の設定時間（ここでは２．５秒）との比較を行う。
ここで、さらに０．５秒経過して電源ＯＮから２．５秒経過してしまうと、ステップＳ８６に進んで、条件１−１達成フラグを消去してしまうので、その前に電源をＯＦＦして処理を強制的に中断する。
【００９３】
次に電源をＯＮした時も、再び図１２のステップＳ１０１から処理が開始される。ここでもキーの押下はないものとし、また特定なコードは書き込まれていないので、ステップＳ１０５まで進んで起動チェック処理が開始される。ここでは条件１−１達成フラグが不揮発性メモリ４に書き込まれているので、ステップＳ１０５でこれが条件達成バックアップ情報として揮発性メモリ１０に書き込まれ、ステップＳ１０６で不揮発性メモリ４は初期化されてフラグは消去される。
しかし、揮発性メモリ１０に書き込まれたフラグは条件１−２達成フラグでも条件２−２達成フラグでもないので、そのままステップ図１０のＳ８２まで進んで第１及び第２の設定時間を選択する。ここでは、条件達成バックアップ情報として条件１−１達成フラグが書き込まれているので、その次の条件である、プログラム１の第２の条件（条件１−２）についての第１及び第２の設定時間を選択する。
【００９４】
そして、ステップＳ８３に進んで時間測定部５で計測した時間と第１の設定時間（ここでは３秒）との比較を行う。
電源をＯＮしてから３秒経過すると、ステップＳ８３の条件が満たされ、ステップＳ８４へ進んで、不揮発性メモリ４に条件１−２達成フラグを書きこむ。そして、ステップＳ８５に進んで時間測定部５で計測した時間と第２の設定時間（ここでは３．５秒）との比較を行う。
ここで、条件１−２達成フラグは、条件１−１を達成した後に条件１−２を達成した場合に書き込まれるフラグであるので、条件１−２を達成した旨を示すデータであるとともに、条件１−１を達成した旨を示すデータでもあるものとする。
そして、さらに０．５秒経過して電源ＯＮから３．５秒経過すると、ステップＳ８６に進んで条件１−２達成フラグを消去してしまうので、その前に電源をＯＦＦして処理を強制的に中断する。
【００９５】
その後に電源を再度ＯＮにすると、また図１２のステップＳ１０１から処理が開始される。ここでもキー入力はないものとすると、今度は不揮発性メモリ４に条件１−２達成フラグが書き込まれているので、ステップＳ１０５でこのフラグが条件達成バックアップ情報として揮発性メモリ１０に書き込まれ、ステップＳ１０７からステップＳ１０９に進んで起動プログラム情報としてプログラム１の開始アドレスが設定され、図１０のステップＳ８９に進んでその情報に基づいてプログラム１を読み出してその処理を実行する。
【００９６】
このように、この実施形態のプリンタでは、電源をＯＮして２秒後から２．５秒後の間に電源を一旦ＯＦＦし、次に電源をＯＮして３秒後から３．５秒後の間に電源を再びＯＦＦし、その後にさらに電源をＯＮすることにより、第１の検査／設定プログラムを起動することができる。また、第２の検査／設定プログラムを起動したい場合には、電源をＯＮして１秒後から１．５秒後の間に電源を一旦ＯＦＦし、次に電源をＯＮして４秒後から４．５秒後の間に電源を再びＯＦＦし、その後にさらに電源をＯＮすればよい。
【００９７】
このようにすれば、複数の検査／設定プログラムから任意の１つを選択して起動する場合に、複数回の電源ＯＮ／ＯＦＦ操作を異なる特定の時間内に行わなければ検査／設定プログラムを起動できないので、ユーザの誤操作による予期しない検査／設定プログラムの起動を防ぐことができる。
また、第２の実施形態の場合と同様に、各々の検査／設定プログラムについて３つ以上の電源ＯＮ／ＯＦＦ条件を設定してもよいし、検査／設定プログラムによって異なる数の条件を設定してもよい。このようにする場合には、ステップＳ１０７やステップＳ１０８では、それぞれのプログラムについて最後の条件を達成したことを示す条件達成フラグが書き込まれているかどうかを判断するようにすればよい。電源ＯＮ／ＯＦＦ条件の個数を一定にしない場合には、その個数について、そのデータをテーブルメモリ６に格納したり、各プログラム毎のデータの最後に終了フラグを設けて示すことができる。
なお、言うまでもなく、上述の説明に用いた設定時間は一例であり、これに限られるものではない。また、第２の設定時間は、例えば第１の設定時間から１秒後というように、第１の設定時間を基準に設定してもよい。
【００９８】
〔第６の実施形態：図９，図１３〕
次に、図９及び図１３を用いてこの発明の第６の実施形態について説明する。図１３は、この発明の第６の実施形態のプリンタの制御部による動作を示すフローチャートである。この実施形態の動作は、第４の実施形態の動作の図１０のフローチャートに当たる部分を図１３のフローチャートに示す処理に置き換えたものである。
【００９９】
この第６の実施形態のプリンタも、そのハード構成は図７によって説明した第４の実施形態のものと同じであり、テーブルメモリ６に記録しておく電源ＯＮ／ＯＦＦ条件を、第１の設定時間と第２の設定時間の代わりに設定時間範囲の情報として記録しておく点と、電源部２に備えた電源スイッチがソフトウェアスイッチでなければならない点が異なるだけであるから、その説明を省略する。ここで、各々の設定時間範囲は重ならないように設定するものとする。
このプリンタは、電源がＯＮされると図９及び図１３のフローチャートに示す動作を開始する。図９のフローチャートに示す部分の処理は、第４の実施形態で説明したものと同様であるから、その説明は省略する。
【０１００】
図９のステップＳ７８の判断がＮＯの場合には、図１３のステップＳ１１１に進み、時間測定部５に時間の計測を開始させる。そして、ステップＳ１１２に進み、設定時間範囲を選択する。テーブルメモリ６には、前述のように各々の検査／設定プログラムについて設定時間範囲が記録されているが、初めはその中で設定時間範囲の下限が一番短いプログラムについての設定時間範囲を選択する。
そして、ステップＳ１１３とステップＳ１１４で、計測時間が選択している設定時間範囲の上限を超えない間だけ電源ＯＦＦの指示があったかどうか判断し、あればステップＳ１１５へ進む。
【０１０１】
ステップＳ１１５では、電源ＯＦＦの指示があった時点での計測時間が選択している設定時間範囲内かどうか判断し、範囲内であればステップＳ１１６に進んで、不揮発性メモリ４に選択した設定時間範囲に関する条件を達成した旨を示す条件達成フラグ（条件１達成フラグ，条件２達成フラグ等）を書き込んでステップＳ１１７へ進む。ステップＳ１１５で設定時間範囲内でなければ、そのままステップＳ１１７へ進む。ステップＳ１１７では、電源をＯＦＦして処理を終了する。
【０１０２】
ステップＳ１１３で電源ＯＦＦの指示がなく、ステップＳ１１４で計測時間が設定時間範囲の上限を超えると、ステップＳ１１８に進む。ステップＳ１１８では、テーブルメモリ６に記録されている全ての設定時間範囲（条件）が選択されたかどうか判断し、まだ選択されていない設定時間範囲があれば、ステップＳ１１２に戻って残りの中で最も設定時間範囲の下限が短いプログラムについての設定時間範囲を選択し、処理を繰り返す。全ての設定時間範囲が選択されていれば、ステップＳ１１９に進んで起動プログラム情報として制御部１のＲＡＭに「なし」を設定する。
その後、ステップＳ１２０に進んで起動プログラム情報に従って検査／設定プログラムを読み出して実行するが、ステップＳ１１９から進んできた場合には起動プログラム情報は「なし」なので、そのままステップＳ１２１に進む。
【０１０３】
一方、図９のステップＳ７９又はステップＳ８０で起動プログラム情報を設定した場合にも、その後ステップＳ１２０に進む。そして、この場合には起動プログラム情報として起動すべき検査／設定プログラムの開始アドレスが設定されているので、プログラムメモリのその開始アドレスからプログラムを読み出して実行する。
ステップＳ１２０の処理が終了すると、ステップＳ１２１に進む。このステップＳ１２１から先は、図１０のステップＳ９０からステップＳ９４と同じ通常の動作であるから説明を省略する。
ステップＳ１２５は、電源ＯＦＦの指示の判断で、その指示がなければステップＳ１２１に戻り、その指示があるとステップＳ１１７へ進んで、電源をＯＦＦにして処理を終了する。
【０１０４】
この実施形態のプリンタによれば、電源をＯＮしたあと、第１の検査／設定プログラムについての設定時間範囲（例えば２秒から２．５秒）だけ経過する間にＯＦＦにし、その後再び電源をＯＮにすることによってのみ、第１の検査／設定プログラムを起動することができる。また、電源をＯＮしたあと、第２の検査／設定プログラムについての設定時間範囲（例えば１秒から１．５秒）だけ経過する間にＯＦＦにし、その後再び電源をＯＮにすることによってのみ、第２の検査／設定プログラムを起動することができる。
【０１０５】
すなわち、このプリンタでは、表示・操作部３の所定のキー操作によって検査／設定プログラムを起動することができない状態でも、またその所定のキー入力を行わなくても、複数の検査／設定プログラムから任意の１つを選択して起動することができる。
ここでは、設定時間範囲を一つだけ記録しておく例について説明したが、第５の実施形態と同様に、設定時間範囲を複数設定しておき、その各条件を満たすように複数回電源のＯＮ／ＯＦＦを繰り返した後に、再び電源をＯＮにして初めて検査／設定プログラムが起動するようにしてもよい。その場合には、ステップＳ１１２で設定時間範囲の選択や、ステップＳ１１８での判断は、第５の実施形態で説明した図１０のステップＳ８２やステップＳ８７の場合のように、条件成立バックアップ情報に応じて行う。
【０１０６】
〔第６の実施形態の変更例〕
次に、上述した第６の実施形態の変更例について図９及び図１４のフローチャートによって説明する。
図１４は、この変更例のプリンタの制御部による動作を示すフローチャートである。この変更例の動作は、第６の実施形態の動作の図１３のフローチャートに当たる部分を図１４のフローチャートに示す処理に置き換えたものである。
この変更例は、起動チェック処理の主要部を通常動作のルーチンに組み込んだ点が前述した第６の実施形態と異なるのみであるので、この点以外の説明は簡単にするか省略する。
【０１０７】
このプリンタは、電源がＯＮされると図９及び図１４のフローチャートに示す動作を開始する。そして、図９のステップＳ７８の判断がＮＯである場合には、図１４のステップＳ１３１に進んで時間測定部５に時間の計測を開始させる。図９のステップＳ７９又はステップＳ８０で起動プログラム情報が設定された場合には、その後図１４のステップＳ１３２に進んでその起動プログラム情報に従って検査／設定プログラムを読み出して実行する。
次に、ステップＳ１３３に進むが、ここからは通常動作のルーチンである。ステップＳ１３３では電源ＯＦＦの指示があったかどうか判断し、なければステップＳ１３４に進む。
【０１０８】
ステップＳ１３４では操作部からユーザ設定プログラムを起動するための所定のキー入力があったかどうか判断し、あれば、ステップＳ１３５に進んでユーザ設定プログラムを読み出してその処理を実行する。その後、ステップＳ１３６へ進む。所定のキー入力がなければそのままステップＳ１３６へ進む。
ステップＳ１３６では、画像データの入力があったかどうか判断し、あればステップＳ１３７に進んでそのデータの印刷を行う。そして、印刷が終了したらステップＳ１３３へ戻る。画像データの入力がなければ、そのままステップＳ１３３へ戻る。そして、何もない場合には、ステップＳ１３３，Ｓ１３４，Ｓ１３６を繰り返していることになる。
【０１０９】
ステップＳ１３３で電源ＯＦＦの指示があった場合には、ステップＳ１３８に進んで、不揮発性メモリ４に特定なコードが書き込まれているかどうかをチェックし、書き込まれていれば、この発明による処理を行わないので、ステップＳ１４２へ進んで、電源をＯＦＦにして処理を終了する。
特定なコードが書き込まれていなければ、この発明による処理を行うため、ステップＳ１３９に進んで、テーブルメモリ６から設定時間範囲の情報（条件）を選択し、ステップＳ１４０で計測時間がその設定時間範囲内であるかどうか判断する。この場合の選択は、計測時間に応じて、できる限り計測時間が設定時間範囲に含まれるように行うものとする。
【０１１０】
設定時間範囲内であればステップＳ１４１へ進んで、不揮発性メモリ４に選択した設定時間範囲に関する条件達成フラグを書き込み、ステップＳ１４２へ進む。設定時間範囲内でなければ、そのままステップＳ１４２へ進む。
ステップＳ１４２では、電源ＯＦＦのための処理を行って電源を切断し、処理を終了する。
【０１１１】
この変形例のプリンタによっても、第６の実施形態のプリンタと同様、電源をＯＮしたあと、設定時間範囲（例えば２秒から３秒）だけ経つ間にＯＦＦにし、その後再び電源をＯＮにすることによって、表示・操作部３の所定のキー操作によって検査／設定プログラムを起動することができない状態でも、またその所定のキー入力を行わなくても、複数の検査／設定プログラムから任意の１つを選択して起動することができる。
【０１１２】
以上説明した第４乃至第６の実施形態及び変形例の処理を行うプログラムは、はじめから図７に示した制御部１のＲＯＭに格納しておけばよいが、記録媒体である別のＲＯＭ等のメモリに記録して提供することもできる。ＣＰＵはそのメモリからこのプログラムを読み出して実行することにより、計測手段によって計測した時間が複数の特別なプログラムのいずれかについて設定した条件と一致したらそのことを示すデータを不揮発性メモリに書き込む手段と、電源ＯＮ時に不揮発性メモリに上記データが書き込まれていたら、プログラムメモリからそのデータの示す特別なプログラムを読み出して実行する手段として機能する。また、記録媒体に記録されたプログラムにより制御部１のＲＯＭに記録されたプログラムをアップデートすることにより、プリンタに後からこのような機能を持たせることもできる。
【０１１３】
なお、第４乃至第６の実施形態及びその変形例においては、検査／設定プログラムを２つの中から選択して起動する例について説明したが、もちろん３つ以上の中から選択して起動するようにしても構わない。その場合には、電源投入時の所定のキー入力及び条件達成フラグに関するチェックをプログラムの数だけ行う。このような場合には、選択可能なプログラムの数について、テーブルメモリ６にデータ格納したり、最後のプログラムについてのデータの終わりに終了フラグを設けたりして示すことができる。
【０１１４】
また、電源をＯＮした後で不揮発性メモリ４に書き込まれているフラグを揮発性メモリ１０に退避させ、不揮発性メモリ４は初期化する処理を行う例について説明した。このように、処理の初めに一旦不揮発性メモリ４を初期化することにより、必要ないフラグの消去をより確実に行うことができるが、第１から第３の実施例で説明したように、揮発性メモリは設けず、不揮発性メモリに書き込んだフラグを適宜消去するようにしてもよい。逆に、第１から第３の実施例及びその変形例について、揮発性メモリを設け、不揮発性メモリに書き込まれているフラグを退避させるようにしてもよい。
【０１１５】
また、所定のキー入力による検査／設定プログラムの起動を電源投入時にしか行わない例について説明したが、第１から第３の実施例の場合と同様、通常動作中にもこのような起動を行えるようにしてもよい。逆に、第１から第３の実施例及びその変形例について、所定のキー入力による検査／設定プログラムの起動を電源投入時にしか行わないようにしてもよい。
さらに、第４及び第５の実施例の場合に、設定時間を選択し直す場合でも時間の計測はそのまま続行させる例について説明したが、設定時間を選択した場合には計測時間をリセットして再度時間の計測を開始させ、経過時間の判断基準として、新たに選択した第１，第２の設定時間からそれぞれ前に選択した第２の設定時間を引いた時間を用いるようにしてもよい。
【０１１６】
また、以上説明してきた各実施形態のプリンタでは、特別なプログラムは、電子機器の検査あるいは特殊な設定を行うためのものとしたが、特別なプログラムはこれに限るものではなく、通常の使用時に起動しないプログラムであればどのようなプログラムでもよい。
さらに、不揮発性メモリ４に特定なコードを書き込むことにより、この発明による電源ＯＮ時の特別なプログラムの起動に係る処理を実行しないようにすることができる例について説明してきたが、これはこの発明に必須の構成ではない。また、ここではこの発明を実施したプリンタについて説明したが、この発明を適用する電子機器はプリンタに限るものではなく、通常は使用しない特別なプログラムを格納したプログラムメモリを備えた各種の電子機器について同様に実施することができる。
【０１１７】
【発明の効果】
以上説明してきたように、この発明によれば、検査／設定プログラムを格納した電子機器において、そのプログラムを起動するための所定のキー入力を行う入力手段が故障して、所定の入力が行えないような場合でも、あるいは所定の入力を行なうことなく、電源スイッチの操作によってそのプログラムを起動することができ、それによって電子機器の検査や保守あるいは特殊な設定等を支障なく行うことができる。複数の検査／設定プログラムから任意の１つを選択して起動することもできる。
【０１１８】
また、検査／設定プログラムを起動するための電源ＯＮ／ＯＦＦの条件を複数要求することにより、ユーザが誤って検査／設定プログラムを起動することを防ぐことができる。
さらに、不揮発性メモリに特定なコードを書き込むことにより、検査／設定プログラムの起動を行わないこともができるため、電源環境が劣悪で瞬断が発生しやすいような場合に、意図せずに検査／設定プログラムが起動するのを防止することができる。
【図面の簡単な説明】
【図１】この発明による電子機器の第１の実施例であるプリンタの概略構成を示すブロック図である。
【図２】この発明の第１の実施形態のプリンタの動作を示すフローチャートである。
【図３】その動作の続きを示すフローチャートである。
【図４】この発明の第２の実施形態のプリンタの動作を示すフローチャートである。
【図５】この発明の第３の実施形態のプリンタの動作を示すフローチャートである。
【図６】この発明の第３の実施形態の変形例のプリンタの動作を示すフローチャートである。
【図７】この発明による電子機器の第４の実施例であるプリンタの概略構成を示すブロック図である。
【図８】そのテーブルメモリに記録したデータの例を示す図である。
【図９】この発明の第４の実施形態のプリンタの動作を示すフローチャートである。
【図１０】その動作の続きを示すフローチャートである。
【図１１】そのテーブルメモリに記録したデータの別の例を示す図である。
【図１２】この発明の第５の実施形態のプリンタの動作を示すフローチャートである。
【図１３】この発明の第６の実施形態のプリンタの動作を示すフローチャートである。
【図１４】この発明の第６の実施形態の変形例のプリンタの動作を示すフローチャートである。
【符号の説明】
１：制御部                ２：電源部
３：表示・操作部          ４：不揮発性メモリ
５：時間測定部            ６：テーブルメモリ
７：画像データ入力部      ８：出力部
９：システムバス          １０：揮発性メモリ
【図１】
0003970549.tif 000003
【図２】
0003970549.tif 000004
【図３】
0003970549.tif 000005
【図４】
0003970549.tif 000006
【図５】
0003970549.tif 000007
【図６】
0003970549.tif 000008
【図７】
0003970549.tif 000009
【図８】
0003970549.tif 000010
【図９】
0003970549.tif 000011
【図１０】
0003970549.tif 000012
【図１１】
0003970549.tif 000013
【図１２】
0003970549.tif 000014
【図１３】
0003970549.tif 000015
【図１４】
0003970549.tif 000016