(57)【要約】【課題】内部記憶媒体に記憶されるプログラムのプログラムファイルが破損等している場合でも、外部記憶媒体を用いてプログラムのバージョンアップを実行できる電子機器を提供する。【解決手段】プロッタ装置１０は、記憶装置２２と、ＣＰＵと、モード切替回路と、を備える。記憶装置２２は、本体の内部に配置される。ＣＰＵは、通常の起動時は、記憶装置２２からメインプログラムを読み込み、実行する。モード切替回路は、起動時に、本体の外部から接続されるメモリカード３０を用いてメインプログラムのバージョンアップを行う内容の切替信号が入力された場合は、ＣＰＵが、メモリカード３０に記憶されるバージョンアッププログラムを実行するように、プログラムの読込み先を記憶装置２２からメモリカード３０に切り替える。【選択図】図４
2011210137.tif 000002
【特許請求の範囲】
【請求項１】
本体の内部に配置される内部記憶媒体と、
通常の起動時は、前記内部記憶媒体からプログラムを読み込み、実行するＣＰＵと、
起動時に、前記本体の外部から接続される外部記憶媒体を用いて前記プログラムのバージョンアップを行う内容の切替信号が入力された場合は、前記外部記憶媒体に記憶されるバージョンアッププログラムを前記ＣＰＵが実行するように、プログラムの読込み先を前記内部記憶媒体から前記外部記憶媒体に切り替える切替部と、
を備えることを特徴とする電子機器。
【請求項２】
請求項１に記載の電子機器であって、
前記ＣＰＵは、前記バージョンアップ時に、前記内部記憶媒体に記憶されているデータの内容をバックアップデータとして前記外部記憶媒体に記憶させることを特徴とする電子機器。
【請求項３】
請求項２に記載の電子機器であって、
前記ＣＰＵは、前記バージョンアップの終了後に、前記バックアップデータの内容を前記内部記憶媒体に記憶させることを特徴とする電子機器。
【請求項４】
請求項３に記載の電子機器であって、
前記ＣＰＵは、前記バージョンアップの終了後に、前記バックアップデータの内容と、前記内部記憶媒体のデータの内容と、を比較し、相違がある場合は前記バックアップデータの内容を前記内部記憶媒体に記憶させる更新処理を行うことを特徴とする電子機器。
【請求項５】
請求項１から４までの何れか一項に記載の電子機器であって、
前記内部記憶媒体へのアクセスを禁止するプロテクト部を備え、
前記バージョンアッププログラムが所定の処理をすることによって前記プロテクト部によるプロテクトが解除されることを特徴とする電子機器。
【請求項６】
請求項１から５までの何れか一項に記載の電子機器であって、
前記外部記憶媒体が接続可能な接続部を複数有し、
前記ＣＰＵは、予め設定された優先順位に従って前記外部記憶媒体の接続の有無を検出することを特徴とする電子機器。
【請求項７】
請求項１から６までの何れか一項に記載の電子機器であって、
前記ＣＰＵは、前記バージョンアップの終了後に、再起動を自動的に行うことを特徴とする電子機器。
【請求項８】
請求項１から７までの何れか一項に記載の電子機器であって、
前記切替信号を出力する操作部を備えることを特徴とする電子機器。
【請求項９】
請求項１から８までの何れか一項に記載の電子機器としての航法装置。
【請求項１０】
電子機器の内部記憶媒体に記憶されるプログラムをバージョンアップさせるためのバージョンアッププログラムにおいて、
前記電子機器が備えるＣＰＵによって、当該電子機器の外部から接続された外部記憶媒体から読み込まれて実行されることで、
前記内部記憶媒体に記憶されるプログラムのバージョンアップを行うことを特徴とするバージョンアッププログラム。
【請求項１１】
電子機器の内部記憶媒体に記憶されるプログラムのバージョンアップ方法において、
起動時に切替信号を受信する受信ステップと、
前記切替信号に基づいて、ＣＰＵにより実行されるプログラムの読出し先を前記内部記憶媒体から外部記憶媒体に切り替える切替ステップと、
前記外部記憶媒体に記憶されるバージョンアッププログラムを前記ＣＰＵが実行することで、前記内部記憶媒体に記憶されるプログラムのバージョンアップを行う書換ステップと、
を含むことを特徴とするプログラムのバージョンアップ方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、主に、電子機器のプログラムのバージョンアップに関するものである。
【背景技術】
【０００２】
電子機器本体の内部記憶媒体に記憶されるプログラムをバージョンアップする方法として、バージョンアップを行うための書換データを記憶した外部記憶媒体を前記電子機器に接続してバージョンアップを行う方法が従来から知られている。外部記憶媒体を用いてバージョンアップを行う電子機器を開示するものとして、例えば、特許文献１及び特許文献２がある。
【０００３】
特許文献１は、以下のように構成される携帯端末（電子機器）を開示する。即ち、携帯端末は、制御部と、第１の記憶部と、第２の記憶部と、第３の記憶部と、を備える。前記制御部は、自端末の各部を制御する。前記第１の記憶部は、該制御部の動作処理手順が記述されて該制御部によって読み込まれる第１のメインプログラム、及び該第１のメインプログラムの書換えに用いられる書換用プログラムを記憶する。前記第２の記憶部は、前記第１のメインプログラムの書換え時に前記書換用プログラムの展開領域として確保される。前記第３の記憶部は、ユーザが登録したユーザデータが前記第１のメインプログラムの書換えに依存しない固定領域に割り付けられて記憶される。また、前記制御部は、前記第１のメインプログラムの書換え終了時に、前記ユーザデータをクリアの対象外とするように構成にされている。この特許文献１に開示される構成では、メインプログラムを書き換えるためのデータは、治具を介して接続される外部機器から携帯端末にダウンロードされる。
【０００４】
特許文献２は、消去書込可能なＲＯＭを有するマイクロコンピュータを用いたカメラ（電子機器）において、以下の構成を開示する。即ち、カメラは、１つ又は複数の接点と、判断手段と、モード切替手段と、を備える。前記１つ又は複数の接点は、外部装置の端子と電気的に接触可能に配置される。前記判断手段は、前記外部装置が前記接点に印加した信号から、前記ＲＯＭから検査通信プログラムを読み出して検査通信を実行するモードか前記ＲＯＭへのプログラム書込の動作を実行するモードかを判断する。前記モード切替手段は、前記判断手段が判断した動作モードに切り替える。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００４−１５７７８９号公報
【特許文献２】特開平９−１９７４６４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかし、特許文献１及び特許文献２の何れの構成においても、プログラムのバージョンアップを行うためには、ＣＰＵによって実行されるプログラムを内部記憶媒体から呼び出す必要があった。そのため、内部記憶媒体の記憶内容が破損する等して電子機器を適切に起動できない状態では、外部記憶媒体を用いたとしても、プログラムの修復やバージョンアップ処理ができない場合があった。このような場合、電子機器を分解し、専用の機器を用いて内部記憶媒体にプログラムの正しい内容を直接的に書き込まなければ、電子機器を起動させることができない。
【０００７】
本発明は、以上の事情に鑑みてなされたものであり、その目的は、内部記憶媒体に記憶されるプログラムのプログラムファイルが破損等している場合でも、外部記憶媒体を用いてプログラムのバージョンアップを実行できる電子機器を提供することにある。
【課題を解決するための手段及び効果】
【０００８】
本発明の解決しようとする課題は以上の如くであり、次にこの課題を解決するための手段とその効果を説明する。
【０００９】
本発明の第１の観点によれば、以下のように構成される電子機器が提供される。即ち、電子機器は、内部記憶媒体と、ＣＰＵと、切替部と、を備える。前記内部記憶媒体は、本体の内部に配置される。前記ＣＰＵは、通常の起動時は、前記内部記憶媒体からプログラムを読み込み、実行する。前記切替部は、起動時に、前記本体の外部から接続される外部記憶媒体を用いて前記プログラムのバージョンアップを行う内容の切替信号が入力された場合は、前記外部記憶媒体に記憶されるバージョンアッププログラムを前記ＣＰＵが実行するように、プログラムの読込み先を前記内部記憶媒体から前記外部記憶媒体に切り替える。
【００１０】
これにより、内部記憶媒体にバージョンアッププログラムを記憶させていなくても、外部記憶媒体を利用して電子機器のプログラムのバージョンアップを容易に行うことができる。これによって、内部記憶媒体のプログラムが適切に動作しないために電子機器が起動できない場合でも、バージョンアッププログラムによってプログラムを修復できる。
【００１１】
前記の電子機器においては、前記ＣＰＵは、前記バージョンアップ時に、前記内部記憶媒体に記憶されているデータの内容をバックアップデータとして前記外部記憶媒体に記憶させることが好ましい。
【００１２】
これにより、内部記憶媒体のデータのバックアップが自動的に行われるので、バージョンアップによって内部記憶媒体のデータが例えば上書きにより失われた場合でも、外部記憶媒体のデータに基づいて、内部記憶媒体に記憶されていた元のデータを容易に復元できる。
【００１３】
前記の電子機器においては、前記ＣＰＵは、前記バージョンアップの終了後に、前記バックアップデータの内容を前記内部記憶媒体に記憶させることが好ましい。
【００１４】
これにより、バージョンアップによって内部記憶媒体のデータが例えば上書きにより失われた場合でも、外部記憶媒体に退避させていたバックアップデータの内容が内部記憶媒体に書き込まれることになる。従って、特別な作業を行うことなく、データの内容を適切に維持することができる。
【００１５】
前記の電子機器においては、以下のように構成されることが好ましい。即ち、電子機器が備える前記ＣＰＵは、前記バージョンアップの終了後に、前記バックアップデータの内容と、前記内部記憶媒体のデータの内容と、を比較し、相違がある場合は前記バックアップデータの内容を前記内部記憶媒体に記憶させる更新処理を行う。
【００１６】
これにより、データを復元する必要がないときは、内部記憶媒体にデータが書き込まれなくなるので、更新処理を効率化できる。
【００１７】
前記の電子機器においては、以下のように構成されることが好ましい。即ち、電子機器は、前記内部記憶媒体へのアクセスを禁止するプロテクト部を備える。前記バージョンアッププログラムが所定の処理をすることによって前記プロテクト部によるプロテクトが解除される。
【００１８】
これにより、悪意あるプログラムによって、内部記憶媒体のプログラムが改ざんされたり、内部記憶媒体のデータが読み出されたりする事態を効果的に防止できる。
【００１９】
前記の電子機器においては、以下のように構成されることが好ましい。即ち、電子機器は、前記外部記憶媒体が接続可能な接続部を複数有する。前記ＣＰＵは、予め設定された優先順位に従って前記外部記憶媒体の接続の有無を検出する。
【００２０】
これにより、複数の外部記憶媒体が接続されている場合でも、バージョンアップで使用する頻度が高い接続部の優先順位を高く設定しておくことで、ユーザが意図しているバージョンアップ用の外部記憶媒体が早期に選択されて、バージョンアップ処理に速やかに移行できる。
【００２１】
前記の電子機器においては、前記ＣＰＵは、前記バージョンアップの終了後に、再起動を自動的に行うことが好ましい。
【００２２】
これにより、バージョンアップが終了した電子機器を使用可能な状態に自動的に移行させることができ、ユーザが電子機器を再起動する手間を省くことができる。
【００２３】
前記の電子機器においては、前記切替信号を出力する操作部を備えることが好ましい。
【００２４】
これにより、電子機器の操作部を操作するだけで、当該電子機器をバージョンアップモードで起動させることができる。
【００２５】
本発明の第２の観点によれば、前記電子機器としての航法装置が提供される。
【００２６】
これにより、船舶等に用いられる航法装置のバージョンアップを容易に行うことができる。
【００２７】
本発明の第３の観点によれば、電子機器の内部記憶媒体に記憶されるプログラムをバージョンアップさせるためのバージョンアッププログラムにおいて、以下の構成が提供される。即ち、バージョンアッププログラムは、前記電子機器が備えるＣＰＵによって、当該電子機器の外部から接続された外部記憶媒体から読み込まれて実行される。このバージョンアッププログラムが実行されることで、前記内部記憶媒体に記憶されるプログラムのバージョンアップが行われる。
【００２８】
これにより、内部記憶媒体にバージョンアッププログラムを記憶させていなくても、外部記憶媒体のバージョンアッププログラムによって電子機器のプログラムのバージョンアップを容易に行うことができる。これによって、内部記憶媒体のプログラムが適切に動作しないために電子機器が起動できない場合でも、バージョンアッププログラムによってプログラムを修復できる。
【００２９】
本発明の第４の観点によれば、電子機器の内部記憶媒体に記憶されるプログラムのバージョンアップ方法において、以下のステップを含む方法が提供される。即ち、バージョンアップ方法は、受信ステップと、切替ステップと、書換ステップと、を含む。前記受信ステップでは、起動時に切替信号を受信する。前記切替ステップでは、前記切替信号に基づいて、ＣＰＵにより実行されるプログラムの読出し先を前記内部記憶媒体から外部記憶媒体に切り替える。前記書換ステップでは、前記外部記憶媒体に記憶されるバージョンアッププログラムを前記ＣＰＵが実行することで、前記内部記憶媒体に記憶されるプログラムのバージョンアップを行う。
【００３０】
これにより、内部記憶媒体にバージョンアッププログラムを記憶させていなくても、外部記憶媒体を利用して電子機器のプログラムのバージョンアップを容易に行うことができる。これによって、内部記憶媒体のプログラムが適切に動作しないために電子機器が起動できない場合でも、バージョンアッププログラムによってプログラムを修復できる。
【図面の簡単な説明】
【００３１】
【図１】本発明の一実施形態に係るプロッタ装置の正面図。
【図２】プロッタ装置の電気的な構成の要部を示したブロック図。
【図３】記憶装置及びメモリカードに予め記憶されている記憶内容を示した模式図。
【図４】メインプログラムのバージョンアップ処理開始時の処理を示した模式図。
【図５】メインプログラムのバージョンアップ処理終了時の処理を示した模式図。
【図６】変形例のプロッタ装置の電気的な構成の要部を示したブロック図。
【図７】変形例におけるプロッタ装置の起動時の処理を示したフローチャート。
【発明を実施するための形態】
【００３２】
次に発明の実施の形態について説明する。図１は、本発明の一実施形態に係るプロッタ装置１０の正面図である。図２は、プロッタ装置１０の電気的な構成の要部を示したブロック図である。本実施形態のプロッタ装置１０は、舶用機器として用いられるものであり、自船位置を海図とともに表示する航法装置である。なお、このプロッタ装置１０には、図示しないＧＰＳ受信機が接続されており、当該プロッタ装置１０は、ＧＰＳ受信機から入力された情報に基づいて自船位置を取得する。
【００３３】
図１に示すように、プロッタ装置１０は、ディスプレイ１１と、操作キー１２と、メモリカードスロット１３と、モード切替スイッチ１４と、電源スイッチ１５と、を備えている。
【００３４】
ディスプレイ１１は、自船位置、航跡、マーク及び地図等の各種の情報を表示するためのものであり、液晶等により構成されている。操作キー１２は、プロッタ装置１０の各種の機能をユーザが実行させるための操作手段である。
【００３５】
メモリカードスロット１３には、各種の情報が記憶されたメモリカード（外部記憶媒体）３０が差し込まれる。プロッタ装置１０は、メモリカード３０に予め記憶されているデータに基づいて各種の処理を行うことができるようになっている。例えば、プロッタ装置１０は、メモリカード３０に予め記憶されている海岸線等のチャートデータ（海図データ）を読み込んで、自船の位置とともにディスプレイ１１に表示させることができるようになっている。
【００３６】
また、本実施形態のプロッタ装置１０は、メモリカード３０に記憶されているバージョンアッププログラムを利用してプロッタ装置１０のファームウェア（メインプログラム）等のアプリケーションをバージョンアップできるように構成されている。なお、メモリカード３０を用いたバージョンアップ処理の詳細については後述する。
【００３７】
モード切替スイッチ（操作部）１４は、プロッタ装置１０をバージョンアップモードで起動するためのスイッチである。本実施形態のプロッタ装置１０は、モード切替スイッチ１４をＯＮした状態で電源スイッチ１５を入れると、バージョンアップモードで起動するように構成されている。バージョンアップモードとは、メモリカード３０に予め記憶されているバージョンアッププログラムによって、プロッタ装置１０のメインプログラムを新しいバージョンのものに更新するためのモードのことである。
【００３８】
また、図２に示すように、プロッタ装置１０は、ＣＰＵ２１と、記憶装置２２と、メモリ２３と、プロテクト回路２４と、モード切替回路２５と、を備えている。
【００３９】
ＣＰＵ２１は、記憶装置２２に記憶されているプログラムをメモリ２３に読み込んで、当該プログラムを実行することで、プロッタ装置１０の各部の制御を行う。
【００４０】
記憶装置（内部記憶媒体）２２は、記憶の消去及び書込みが可能なＥＰＲＯＭ（Ｅｒａｓａｂｌｅ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）又はＨＤＤ等の不揮発性メモリによって構成されている。この記憶装置２２は、プロッタ装置１０の本体に内蔵されており、バスを介してＣＰＵ２１に接続されている。
【００４１】
メモリ２３は、ＲＡＭ等によって構成されており、ＣＰＵ２１によって直接アクセスされるメインメモリである。
【００４２】
プロテクト回路（プロテクト部）２４は、記憶装置２２に対する外部からの読込み及び書込み（アクセス）を禁止するためのものであり、ＣＰＵ２１に接続されるとともに、記憶装置２２に接続されている。
【００４３】
モード切替回路（切替部）２５は、モード切替スイッチ１４から出力される切替信号に基づいて、ＣＰＵ２１によって起動時に実行されるプログラムの読込み先を切り替えるためのものである。本実施形態のモード切替回路２５は、モード切替スイッチ１４がＯＦＦされているときは、通常モードでの起動と判定し、モード切替スイッチ１４がＯＮされているときは、バージョンアップモードでの起動と判定する。通常モードでは、モード切替スイッチ１４は、記憶装置２２からメインプログラムが読み込まれるようにＣＰＵ２１と記憶装置２２とを接続する。一方、バージョンアップモードでの起動では、モード切替スイッチ１４は、メモリカードスロット１３に接続されるメモリカード３０とＣＰＵ２１とを接続する。
【００４４】
なお、モード切替回路２５が受信する切替信号は、モード切替スイッチ１４で選択されたモードを認識できるものであればよく、実際に電流が流れていない状態を切替信号とすることもできる。即ち、モード切替回路２５は、起動時に、モード切替スイッチ１４から信号が入力されていない状態が一定時間続いた場合にＯＦＦ信号（切替信号）が入力されたと判定し、バージョンアップモードでプロッタ装置１０を起動するように構成することもできる。この場合、モード切替スイッチ１４からＯＮ信号が入力された場合は、通常モードが選択されたと認識され、プロッタ装置１０は通常モードで起動する。
【００４５】
次に、バージョンアップモードで起動した場合のプロッタ装置１０の動作について説明する。図３は、記憶装置２２及びメモリカード３０に予め記憶されている記憶内容を示した模式図である。図４は、メインプログラムのバージョンアップ処理開始時の処理を示した模式図である。図５は、メインプログラムのバージョンアップ処理終了時の処理を示した模式図である。
【００４６】
図３に示すように、内部記憶媒体としての記憶装置２２には、プロッタ装置１０の制御を行うためのメインプログラムと、船舶及び船舶の航行に関する各種のデータ（機器データ、ユーザデータ及びチャートデータ等）と、が記憶されている。
【００４７】
メインプログラムは、プロッタ装置１０のオペレーティングシステムであり、通常モードでの電源投入時において、メモリ２３に最初に読み込まれるプログラムである。ＣＰＵ２１によりメインプログラムが実行されることで、自船位置の表示等、プロッタ装置１０の各種の機能が実現される。
【００４８】
機器データは、プロッタ装置１０が取り付けられている船舶の船体データ及びプロッタ装置の表示方法等の各種設定データである。ユーザデータは、航跡情報、ルート情報、特定のポイントを通過したときの日時情報等の各種の航海情報である。例えば、ユーザデータの航跡情報は、緯度経度情報によって特定される複数のポイントから構成されている。１つのポイントを示す緯度経度情報は、（３８０００，１５８００）のように数値情報として記憶装置２２に記憶される。チャートデータは、海図に関する情報である。これらの船舶及び航行に関するデータ（以下、船舶データ）は、バイナリ形式で記憶装置２２に記憶されている。なお、本実施形態では、バイナリ形式で船舶データが記憶装置２２に記憶される構成であるが、記憶形式はバイナリ形式に限定される訳ではない。例えば、テキスト形式で船舶データの一部又は全部を記憶装置２２に記憶させる構成としてもよい。
【００４９】
一方、外部記憶媒体としてのメモリカード３０には、バージョンアッププログラムと、書込データ（メインプログラム）と、が予め記憶されている。バージョンアッププログラムは、前述したように、記憶装置２２に記憶されているメインプログラムのバージョンアップを行うためのものである。書込データは、記憶装置２２のメインプログラムをバージョンアップさせるときに用いられるデータである。図３に示す例では、プロッタ装置１０の記憶装置２２には、バージョン１．００のメインプログラムが記憶されている。一方、メモリカード３０には、バージョン１．０５のメインプログラムが前記書込データとして記憶されている。
【００５０】
次に、バージョンアップ処理の詳細を説明する。モード切替スイッチ１４をＯＮした状態で、電源スイッチ１５を入れると、プロッタ装置１０はバージョンアップモードで起動する。より具体的には、モード切替スイッチ１４から切替信号を受信したモード切替回路２５が、ＣＰＵ２１に実行されるプログラムが読み込まれるデバイスを、記憶装置２２から、メモリカードスロット１３に接続されるメモリカード３０に切り替える。
【００５１】
次に、ＣＰＵ２１は、メモリカードスロット１３にメモリカード３０が接続されているか否かを調べる。メモリカード３０が接続されていると判定した場合は、ＣＰＵ２１はメモリカード３０にバージョンアッププログラムが記憶されているか否かを調べる。バージョンアッププログラムがメモリカード３０から検出されると、ＣＰＵ２１はメモリカード３０から当該バージョンアッププログラムをメモリ２３に読み込んで実行する（図４を参照）。
【００５２】
メモリ２３で実行されたバージョンアッププログラムは、プロテクト回路２４のプロテクトを解除する。本実施形態においては、バージョンアッププログラムが記憶装置２２の所定アドレスを読み込む動作を行うことで、プロテクトが解除される方法が採用されている。前記所定アドレスは、バージョンアッププログラムの所定の動作で読み込まれるアドレスであり、予めプロテクト回路２４に設定されているものである。従って、バージョンアッププログラムの内容を見ただけでは、バージョンアッププログラムのどの部分が所定アドレスを読み込む動作を行う部分か判別できないようになっている。なお、プロテクトの解除方法は、この方法に限らずバージョンアッププログラムの所定の動作によって解除される方法であればよい。例えば、メモリカード３０にプロテクトキー（暗号鍵）を記憶させ、バージョンアッププログラムが、このプロテクトキーを用いてプロテクトを解除する構成とすることもできる。
【００５３】
プロテクト回路２４のプロテクトが解除されると、バージョンアッププログラムは、記憶装置２２に記憶されている船舶データ（ユーザデータ、機器データ及びチャートデータ）の内容をメモリカード３０に記憶させるバックアップ処理を行う。このバックアップ処理では、記憶装置２２の船舶データがバイナリデータからテキストデータに変換されてメモリカード３０にバックアップデータとして記憶される。例えば、上述した緯度経度情報の内容は、バイナリコードからアスキーコードに変換されてメモリカード３０に記憶される。
【００５４】
バックアップ処理が終了すると、バージョンアッププログラムは、書込データに基づいて記憶装置２２のメインプログラムの書換えを行う。図５に示すように、バージョンアッププログラムによって、記憶装置２２のバージョン１．００のメインプログラムは、バージョン１．０５のメインプログラムに書き換えられる。
【００５５】
メインプログラムの書換えが終了すると、バージョンアッププログラムは、記憶装置２２の船舶データの実質的な内容が適切に維持されているか否かを調べる比較処理を行う。比較処理は、メインプログラムの書換えによって、記憶装置２２の船舶データの破損が生じたり、船舶データの内容が変化したりしていないか否かを検出するための処理である。
【００５６】
メインプログラムの書換えにより船舶データの内容が変化した場合について、具体例をあげて説明する。例えば、バージョンアップの変更によって、緯度経度情報の数値の記憶形式が以下のように変更されたとする。即ち、緯度経度情報のデータが、書換え前は（３８０００，１５８００）として記憶されていたものが、書換え後は（３８００００，１５８０００）として記憶されるように、数値の桁数が変更されるバージョンアップが行われたとする。上述したように、緯度経度情報は、バイナリ形式で記憶された数値情報であり、緯度を示す緯度情報と、経度を示す経度情報とが区別されることなく順番に配列された状態で記憶装置２２に記憶されている。従って、バージョンアップによって記憶形式の桁数が変更された場合、緯度情報に経度情報の一部（数値の先頭部分）が入ってしまい、緯度経度情報の値が適切なものでなくなってしまうおそれがある。上述した例で単純に考えれば、緯度情報が（３８００００１）となり、経度情報が（５８０００ＸＸ）となるおそれがあるのである（ＸＸは、例えば、異なるポイントの緯度情報又はポイントが記憶された日時情報等の一部である）。
【００５７】
以上の事情を考慮し、本実施形態の比較処理は、メモリカード３０にテキスト形式で記憶されるバックアップデータの内容と、記憶装置２２にバイナリ形式で記憶される船舶データの内容と、の比較を行って、船舶データの異常を検出するように構成されている。バックアップデータの内容と、記憶装置２２の船舶データの内容と、の間に不整合が検出された場合は、バージョンアッププログラムがバックアップデータに基づいて記憶装置２２の船舶データの更新（復元）処理を行う。上述したようなメインプログラムの書換えが行われている場合は、船舶データの内容を実質的に維持しながら、書換え後の記憶形式（桁数が増加した記憶形式）に合致するように更新処理を行う。より具体的には、バックアップデータに基づいて、緯度経度情報の桁数を増やしたデータ（末尾に０を追加したデータ）をバイナリ形式に変換して、記憶装置２２に記憶させる。このように、本実施形態の更新処理では、記憶形式の変更がされた場合は、記憶形式の変更に合致するように船舶データが処理されるように構成されている。
【００５８】
なお、上記の船舶データの復元処理は、上記のように新規のバージョンで従前とは異なるデータ記録フォーマットが採用される場合に限られない。例えば、記憶装置２２において船舶データを保存するアドレスがバージョンアップによって変更される場合（従前の船舶データ保存アドレスに他のデータが上書きされる場合を含む）においても、船舶データの内容が失われることになる。この場合も、バックアップデータに基づいて船舶データを新しいデータ保存アドレスに書き戻す処理が有効である。
【００５９】
更新処理の終了後、バージョンアッププログラムによって、プロッタ装置１０の再起動が行われる。なお、比較処理において、バックアップデータの内容と、元データの内容と、の間に相違がないと判定された場合は、前記更新処理が行われることなくバージョンアップ処理が終了し、プロッタ装置１０の再起動が行われる。この再起動では、通常モードでプロッタ装置１０が起動され、ＣＰＵ２１はメインプログラム（バージョン１．０５）をメモリ２３に読み込んで実行する。
【００６０】
以上に説明してきたように、本実施形態のプロッタ装置１０は、バージョンアップモードで起動しない限り、バージョンアッププログラムの検出処理を行わないように構成されている。従って、通常の起動時は、メモリカード３０の検出処理及びバージョンアッププログラムの検出処理を行う必要がなく、プロッタ装置１０を迅速に起動させることができる。例えば、一般的なパーソナルコンピュータは、バージョンアップを行わない場合でも、外部記憶媒体（例えば、ＣＤ等）の検出処理と、当該外部記憶媒体のバージョンアッププログラムを検出する検出処理と、を行った後、通常モードで起動する必要がある。この点、本実施形態のプロッタ装置１０は、モード切替スイッチ１４によってバージョンアップを行うか否かが予め決定された状態で起動するので、バージョンアップを行わない場合はバージョンアッププログラムの検出処理が省略される。従って、バージョンアップを行わない場合における起動時間の短縮という観点から、本実施形態の構成は従来の電子機器の構成より有利であるといえる。
【００６１】
なお、本実施形態のプロッタ装置１０は、バージョンアップモードで起動しても、以下に示す場合はバージョンアップモードを終了するように構成されている。即ち、メモリカード３０がメモリカードスロット１３に接続されていなかった場合、バージョンアッププログラムがメモリカード３０に記憶されていなかった場合、又はプロテクト回路２４のプロテクトが解除されなかった場合である。なお、バージョンアップモード終了後は、記憶装置２２のメインプログラムを読み込む通常モードに移行してもよいし、プロッタ装置１０の電源を切るようにしてもよい。
【００６２】
以上に示したように、本実施形態のプロッタ装置１０は、記憶装置２２と、ＣＰＵ２１と、モード切替回路２５と、を備える。記憶装置２２は、プロッタ装置１０本体の内部に配置される。ＣＰＵ２１は、通常の起動時は、記憶装置２２からメインプログラムを読み込み、実行する。モード切替回路２５は、起動時に、本体の外部から接続されるメモリカード３０を用いてプログラムのバージョンアップを行う内容の切替信号が入力された場合は、メモリカード３０に記憶されるバージョンアッププログラムをＣＰＵ２１が実行するように、プログラムの読込み先を記憶装置２２からメモリカード３０に切り替える。
【００６３】
これにより、記憶装置２２にバージョンアッププログラムを記憶させていなくても、メモリカード３０を利用してプロッタ装置１０のメインプログラムのバージョンアップを容易に行うことができる。これによって、記憶装置２２のメインプログラムが適切に動作しないためにプロッタ装置１０が起動できない場合でも、バージョンアッププログラムによってメインプログラムを修復できる。
【００６４】
また、本実施形態のプロッタ装置１０は、ＣＰＵ２１が、バージョンアップ時に、記憶装置２２に記憶されているデータの内容をバックアップデータとしてメモリカード３０に記憶させる。
【００６５】
これにより、記憶装置２２のデータのバックアップが自動的に行われるので、バージョンアップによって記憶装置２２のデータが例えばプログラム内容の上書きにより失われた場合でも、メモリカード３０のデータに基づいて、記憶装置２２に記憶されていた元のデータを容易に復元できる。
【００６６】
また、本実施形態のプロッタ装置１０は、ＣＰＵ２１が、バージョンアップ終了後に、バックアップデータの内容を記憶装置２２に記憶させる。
【００６７】
これにより、バージョンアップによって記憶装置２２のデータが例えばプログラム内容の上書きにより失われた場合でも、メモリカード３０に退避させていたバックアップデータの内容が記憶装置２２に書き込まれることになる。従って、特別な作業を行うことなく、データの内容を適切に維持することができる。
【００６８】
また、本実施形態のプロッタ装置１０は、ＣＰＵ２１は、バージョンアップ終了後に、バックアップデータの内容と、記憶装置２２のデータの内容と、を比較し、相違がある場合はバックアップデータの内容を記憶装置２２に記憶させる更新処理を行う。
【００６９】
これにより、データを復元する必要がないときは、記憶装置２２にデータが書き込まれなくなるので、更新処理を効率化できる。
【００７０】
また、本実施形態のプロッタ装置１０は、以下のように構成される。即ち、プロッタ装置１０は、記憶装置２２へのアクセスを禁止するプロテクト回路２４を備える。バージョンアッププログラムが所定の処理をすることによってプロテクト回路２４によるプロテクトが解除される。
【００７１】
これにより、悪意あるプログラムによって、記憶装置２２のメインプログラムが改ざんされたり、記憶装置２２の船舶データが読み出されたりする事態を効果的に防止できる。
【００７２】
また、本実施形態のプロッタ装置１０は、ＣＰＵ２１は、バージョンアップ終了後に、再起動を自動的に行う。
【００７３】
これにより、バージョンアップが終了したプロッタ装置１０を使用可能な状態に自動的に移行させることができ、ユーザがプロッタ装置１０を再起動する手間を省くことができる。
【００７４】
また、本実施形態のプロッタ装置１０は、切替信号を出力するモード切替スイッチ１４を備える。
【００７５】
これにより、モード切替スイッチ１４を切り替えるという簡単な操作で、メモリカード３０を用いたプログラムのバージョンアップを行うことができる。
【００７６】
次に、図６及び図７を参照して、上記実施形態のプロッタ装置１０の変形例について説明する。図６は、変形例のプロッタ装置１１０の電気的な構成の要部を示したブロック図である。図７は、変形例におけるプロッタ装置１１０の起動時の処理を示したフローチャートである。なお、変形例において、上記実施形態と同一及び類似する構成には、図面に同一の符号を付してその説明を省略する場合がある。
【００７７】
図６に示すように、変形例のプロッタ装置１１０は、上記実施形態の構成（図２に示す構成）に加えて、ＵＳＢ接続部３２と、ネットワーク接続部３５と、を備えている。
【００７８】
ＵＳＢ接続部３２は、外部記憶媒体としてのＵＳＢメモリ３１を接続するためのものである。変形例のプロッタ装置１１０は、このＵＳＢ接続部３２に接続されるＵＳＢメモリ３１を用いて記憶装置２２に記憶されるメインプログラムをバージョンアップできるように構成されている。バージョンアップを行うときに用いられるＵＳＢメモリ３１には、バージョンアッププログラム及び書換データが予め記憶されたものを用いる。なお、バージョンアップ処理の詳細については、上記実施形態で説明した内容と同様なので、その説明を省略する。
【００７９】
変形例のプロッタ装置１１０は、複数の外部記憶媒体（メモリカード３０及びＵＳＢメモリ３１）を同時に接続できるように構成されている。そして、プロッタ装置１１０には、バージョンアップを行うときに用いる外部記憶媒体の優先順位が予め設定されている。変形例においては、メモリカード３０とＵＳＢメモリ３１の両方が接続されている場合には、メモリカード３０を用いてバージョンアップ処理を行うようにメモリカード３０の優先順位が高く設定されている。なお、優先順位の設定は、ユーザが設定してもよいし、プロッタ装置１１０がバージョンアップで使用された回数等に基づいて経験的に自動設定するようにしてもよい。
【００８０】
次に、図７を参照して、優先順位に従って外部記憶媒体に記憶されるバージョンアッププログラムを検出する処理について説明する。図７に示すように、電源スイッチ１５が入れられたプロッタ装置１１０は、最初に、モード切替スイッチ１４がＯＮになっているか否かを調べる（Ｓ１０１）。Ｓ１０１の処理で、モード切替スイッチ１４がＯＮされていると判定された場合は、プロッタ装置１１０は、バージョンアップモードで起動する（Ｓ１０２）。
【００８１】
Ｓ１０１の処理でモード切替スイッチ１４がＯＦＦされていると判定された場合は、通常起動処理（Ｓ１０７）に移行する。通常起動処理では、プロッタ装置１１０を通常モードで起動した場合と同様の処理が行われる。即ち、ＣＰＵ２１によって、メモリ２３に記憶装置２２からメインプログラムが呼び出され、実行される。なお、Ｓ１０７の処理は、通常起動処理に移行することなく、プロッタ装置１１０の電源を切るように処理させることもできる。
【００８２】
バージョンアップモードで起動したプロッタ装置１１０は、優先順位に従って、メモリカード検出処理を行う。このメモリカード検出処理では、メモリカードスロット１３に接続されているメモリカード３０にバージョンアッププログラムが記憶されているか否かが調べられる（Ｓ１０３）。メモリカード３０にバージョンアッププログラムが記憶されている場合には、メモリカード３０に記憶されているバージョンアッププログラムをメモリ２３に読み込んで実行する（Ｓ１０５）。バージョンアップ処理が終了すると、バージョンアッププログラムによってプロッタ装置１１０の再起動処理が行われる（Ｓ１０６）。
【００８３】
Ｓ１０３の処理で、メモリカード３０にバージョンアッププログラムが記憶されていないと判定された場合、又は、メモリカードスロット１３にメモリカード３０が接続されていないと判定された場合は、ＵＳＢメモリ３１検出処理に移行する。このＵＳＢメモリ３１検出処理では、ＵＳＢ接続部３２に接続されているＵＳＢメモリ３１にバージョンアッププログラムが記憶されているか否かが調べられる（Ｓ１０４）。メモリカード検出処理と同様に、ＵＳＢメモリ３１にバージョンアッププログラムが記憶されている場合には、当該ＵＳＢメモリ３１に記憶されるバージョンアッププログラムをメモリ２３に読み込んで実行する（Ｓ１０５）。バージョンアップ処理の終了後、プロッタ装置１１０の再起動処理が行われる（Ｓ１０６）。
【００８４】
ＵＳＢメモリ３１検出処理で、バージョンアッププログラムが検出されなかった場合、又は、ＵＳＢ接続部３２にＵＳＢメモリ３１が接続されていない場合は、前記通常起動処理に移行する（Ｓ１０７）。
【００８５】
次に、ネットワーク接続部３５について説明する。ネットワーク接続部３５は、プロッタ装置１１０をネットワーク３６に接続するためのものである。このネットワーク接続部３５によって、プロッタ装置１１０は、ネットワークに接続されるレーダアンテナ（レーダ装置）及び魚群探知機等の外部装置等の各種の航法装置と通信し、他船の位置情報や魚の存在情報を取得して表示できるように構成されている。
【００８６】
また、変形例のプロッタ装置１１０は、ネットワーク３６を介してネットワーク接続部３５に接続される外部のパーソナルコンピュータ３７からバージョンアップを行うことができるように構成されている。即ち、パーソナルコンピュータ３７が、プロッタ装置１１０に外部から接続される外部記憶媒体として機能するのである。このパーソナルコンピュータ３７は、ＣＰＵと、メモリと、ＨＤＤと、を主要な構成として備えている。ＨＤＤには、バージョンアッププログラム及び書換データが予め記憶されている。また、ＨＤＤには、プロッタ装置１１０のバージョンアップを行うための適宜のアプリケーションも記憶されている。
【００８７】
パーソナルコンピュータ３７を用いるバージョンアップは、例えば、以下のようにして行われる。即ち、パーソナルコンピュータ３７で、プロッタ装置１１０のバージョンアップを行うための前記アプリケーションを起動させ、ネットワーク３６に接続されるプロッタ装置１１０の状態を当該アプリケーションによって監視する。前記アプリケーションによってプロッタ装置１１０が起動したことが検出されると、前記切替信号をプロッタ装置１１０に適宜のタイミングで送信する。プロッタ装置１１０は、ネットワーク接続部３５を介して前記切替信号を起動時に受信すると、バージョンアップモードで起動する。バージョンアップモードで起動したプロッタ装置１１０は、パーソナルコンピュータ３７からバージョンアッププログラムをダウンロードし、当該バージョンアッププログラムをメモリ２３で実行させる。次に、書込データをダウンロードし、この書込データに基づいて記憶装置２２のメインプログラムが書き換えられる。なお、バージョンアップ処理の詳細については、上記実施形態で説明した内容と同様なので、その説明を省略する。また、上述したパーソナルコンピュータ３７を用いたバージョンアップ方法は一例であり、プロッタ装置１１０が切替信号を受信するための構成は適宜変更することができる。
【００８８】
以上に示すように、変形例のプロッタ装置１１０は、外部記憶媒体を接続するための複数の接続部（メモリカードスロット１３及びＵＳＢ接続部３２）を備える。メモリカードスロット１３は、メモリカード３０を接続するためのものである。ＵＳＢ接続部３２は、ＵＳＢメモリ３１を接続するためのものである。ＣＰＵ２１は、予め設定された優先順位に従ってメモリカード３０、ＵＳＢメモリ３１の順番で外部記憶媒体の接続の有無を検出する。
【００８９】
これにより、メモリカード３０とＵＳＢメモリ３１が接続されている場合でも、バージョンアップで使用する頻度が高い外部記憶媒体の接続部（変形例ではメモリカードスロット１３）の優先順位を高く設定しておくことで、ユーザが意図しているバージョンアップ用の外部記憶媒体（メモリカード３０）が早期に検出される。これによって、プロッタ装置１１０をバージョンアップ処理に速やかに移行させることができる。
【００９０】
以上に本発明の実施形態を説明したが、上記の構成は更に以下のように変更することができる。
【００９１】
上記実施形態では、モード切替スイッチ１４がメモリカード３０の近傍に配置されている構成であるが、操作キー１２がモード切替スイッチを兼ねるように構成することもできる。
【００９２】
また、上記変形例の構成に、ＵＳＢ用モード切替スイッチと、ネットワーク接続用切替スイッチと、を加えることもできる。即ち、電子機器に接続可能な複数の外部記憶媒体のそれぞれに対応する操作部を備えるようにプロッタ装置を構成することもできる。これにより、外部記憶媒体と切替スイッチが１対１の関係になるので、ユーザがバージョンアップで使用したい外部記憶媒体を起動時に最初に検出させることができ、バージョンアップ処理への移行をより高速化できる。
【００９３】
また、プロッタ装置が備える操作部は、スイッチ式に限定されない。例えば、バージョンアップを行うための専用の接続コネクタを備えるようにプロッタ装置を構成することができる。この場合、前記接続コネクタにメモリカード又はＵＳＢメモリ等の外部記憶媒体を接続した状態で電源が入れられると、当該プロッタ装置がバージョンアップモードで起動するように構成することが好ましい。また、外部記憶媒体を接続する接続部にジャンパーピンを配置し、このジャンパーピンによって、バージョンアップモードで起動するか否かを選択できるように構成することもできる。
【００９４】
また、上記実施形態では、比較処理を行った後、メモリカード３０のバックアップデータの内容を記憶装置２２に記憶させるように構成されているが、比較処理を省略し、常に更新処理を行うように構成することもできる。バックアップデータの信頼性が高い場合には比較処理を省略しても問題は少ないということができ、また、バックアップデータの容量が多い場合は、比較処理を省略することでバージョンアップ処理を大幅に高速化することができる。
【００９５】
また、セキュリティの観点からプロテクト回路２４を備えることが好ましいものの、上記実施形態及び変形例からプロテクト回路２４を省略することもできる。
【００９６】
また、本発明は、プロッタ装置１０等の航法装置に限定されず、各種の電子機器に適用することができる。
【符号の説明】
【００９７】
１０  プロッタ装置（電子機器）
１３  メモリカードスロット（接続部）
１４  モード切替スイッチ（操作部）
２１  ＣＰＵ
２２  記憶装置（内部記憶媒体）
２５  モード切替回路（切替部）
３０  メモリカード（外部記憶媒体）
３１  ＵＳＢメモリ（外部記憶媒体）
３２  ＵＳＢ接続部（接続部）
３７  パーソナルコンピュータ（外部記憶媒体）
３５  ネットワーク接続部（接続部）
【図１】
2011210137.tif 000003
【図２】
2011210137.tif 000004
【図３】
2011210137.tif 000005
【図４】
2011210137.tif 000006
【図５】
2011210137.tif 000007
【図６】
2011210137.tif 000008
【図７】
2011210137.tif 000009