(57)【要約】【課題】アップデート時にユーザーの操作ミスがあった場合でも、重大なダメージを被ることを回避できる電子機器を提供すること。【解決手段】電子機器１０は、電源キーが所定時間長押しされたときに電源をシャットダウンする機能を有する。アップデート制御部３２は、電源キーと、特定の操作キーとが同時に操作された場合に、複数のプログラムを順次アップデートする。加えて、アップデート制御部３２は、電源キーの長押しにより電源がシャットダウンされるタイミングを避けたタイミングでブートローダプログラムをアップデートする。【選択図】図２
2015111355.tif 000002
【特許請求の範囲】
【請求項１】
ユーザーの操作に応じてプログラムのアップデートを行う電子機器であって、
電源キーと、
前記電源キーが操作された場合に、プログラムをアップデートするアップデート制御部と、
を有し、
前記電子機器は、前記電源キーが所定時間長押しされたときに電源をシャットダウンする機能を有し、
前記アップデート制御部は、前記電源キーの長押しにより電源がシャットダウンされるタイミングを避けたタイミングでブートローダプログラムをアップデートする、
電子機器。
【請求項２】
前記電子機器は、前記電源キーが操作された場合に、複数のプログラムを順次アップデートするものであり、
前記ブートローダプログラムをアップデートするのにかかる時間は、前記電源がシャットダウンされるのにかかる前記電源キーの長押し時間以上であり、
前記アップデート制御部は、前記複数のプログラムの中で、前記ブートローダプログラムを２番目以降の順番でアップデートする、
請求項１に記載の電子機器。
【請求項３】
前記電子機器は、前記電源キーが操作された場合に、複数のプログラムを順次アップデートするものであり、
前記ブートローダプログラムをアップデートするのにかかる時間は、前記電源がシャットダウンされるのにかかる前記電源キーの長押し時間以上であり、
前記アップデート制御部は、前記複数のプログラムの中で、前記ブートローダプログラムを最後の順番でアップデートする、
請求項１に記載の電子機器。
【請求項４】
前記アップデート制御部は、前記電源キーの操作と同時に、前記電源キー以外の特定の操作キーが操作された場合に、前記プログラムをアップデートする、
請求項１から請求項３のいずれか一項に記載の電子機器。
【請求項５】
電源キーが操作されたか否かを監視するステップと、
前記電源キーが操作された場合に、プログラムをアップデートするステップと、
を含み、
前記プログラムをアップデートする前記ステップでは、前記電源キーの長押しにより電源がシャットダウンされるタイミングを避けたタイミングでブートローダプログラムをアップデートする、
プログラム更新方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、内部メモリに格納されているプログラムに基づき動作する電子機器、及び、そのような電子機器のプログラムを更新するためのプログラム更新方法に関する。
【背景技術】
【０００２】
近年、医療機器及びオフィス機器等の多くの電子機器は、内部にＣＰＵ(Central Processing Unit)等の制御用の回路が設けられており、このＣＰＵが内部メモリに格納されているプログラムコードに基づき動作するようになっている。
【０００３】
また、コンピュータ等のアプリケーションプログラムと同様に、ＣＰＵ内蔵の電子機器でも、装置の完成後や出荷後にプログラムコードをアップデート（バージョンアップ）して、その装置の機能拡張や機能補正が行えるようになってきている。このようなアップデートの例は、例えば特許文献１に記載されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００９−９８９９３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ところで、アップデート操作の一つの方法として、電源キーを用いるものがある。具体的には、ユーザーによって電源キーが押下されたときに、機器の起動と同時にアップデートを開始する方法である。この方法によれば、既に機器が起動している状態においてアップデートを開始させた場合には、既に動作中のプログラムのアップデートが困難であるのに対して、全てのプログラムをアップデートできるといった長所がある。
【０００６】
一方で、この種の電子機器は、ソフトウェアが異常状態になった場合に備え、電源キーを長押し（例えば１０秒）した場合に強制的に電源をシャットダウンにする機能を有するものがある。因みに、このような場合に使用される電源キーは、一般に、モーメンタリ動作型の押しボタンスイッチ（モーメンタリスイッチと呼ばれることもある）であり、押下されているときだけＯＮ信号を出力し、指を離すと押下前の位置に自動的に復帰してＯＦＦ信号を出力する（あるいは信号を出力しない）状態となるものである。
【０００７】
このため、ユーザーが電源キーを押下してアップデートを開始させた後に、引き続き電源キーを長押ししてしまうと、アップデート中に電源がシャットダウンしてしまい、その結果、場合によっては機器を再起動できなくなる等の重大なダメージを被るおそれがあった。
【０００８】
本発明は、以上の点を考慮してなされたものであり、アップデート時にユーザーの操作ミスがあった場合でも、重大なダメージを被ることを回避できる電子機器及びそのプログラム更新方法を提供する。
【課題を解決するための手段】
【０００９】
本発明の電子機器の一つの態様は、
ユーザーの操作に応じてプログラムのアップデートを行う電子機器であって、
電源キーと、
前記電源キーが操作された場合に、プログラムをアップデートするアップデート制御部と、
を有し、
前記電子機器は、前記電源キーが所定時間長押しされたときに電源をシャットダウンする機能を有し、
前記アップデート制御部は、前記電源キーの長押しにより電源がシャットダウンされるタイミングを避けたタイミングでブートローダプログラムをアップデートする。
【００１０】
本発明のプログラム更新方法の一つの態様は、
電源キーが操作されたか否かを監視するステップと、
前記電源キーが操作された場合に、プログラムをアップデートするステップと、
を含み、
前記プログラムをアップデートする前記ステップでは、前記電源キーの長押しにより電源がシャットダウンされるタイミングを避けたタイミングでブートローダプログラムをアップデートする。
【発明の効果】
【００１１】
本発明によれば、アップデート時に電源キーが長押しされ電源がシャットダウンされるといった操作ミスがあった場合でも、重大なダメージを被ることを回避できる。
【図面の簡単な説明】
【００１２】
【図１】実施の形態に係る心電計の外観構成を示す上面図
【図２】本発明の要部構成を示すブロック図
【図３】実施の形態によるアップデート処理手順を示すフローチャート
【図４】比較例によるアップデート処理手順を示すフローチャート
【発明を実施するための形態】
【００１３】
以下、本発明の実施の形態について、図面を参照して詳細に説明する。
【００１４】
図１は、本発明のプログラム更新方法が適用される心電計の外観構成を示す上面図である。心電計１０は、タッチパネル１１、レコーダー１２及び操作部２０を有する。操作部２０は、電源キー２１と、複数の操作キー群２２と、からなる。操作キー群２２は、所謂カスタムキーであり、計測のスタート／ストップを指示するためのスタート／ストップ操作キーなどを含んでいる。
【００１５】
タッチパネル１１には、計測結果である心電波形が表示される。また、タッチパネル１１には各種設定画面や動作メニュー画面が表示され、ユーザーはタッチパネル１１を用いて各種設定や動作指示を行うことができる。また、心電計１０は、心電用電極などを接続するための接続部（図示せず）、差し込まれたＳＤカード４０（図２）等のメモリカードや通信ケーブルと内部回路とで信号の送受を行うためのインターフェース（Ｉ／Ｆ）３３（図２）、及び、計測演算や動作制御を行うＣＰＵ（Central Processing Unit）３０（図２）などを有する。
【００１６】
図２は、心電計１０の構成を示すブロック図である。なお、図２のブロック図は、本発明に関わる構成のみを示してある。
【００１７】
ＣＰＵ３０は、ソフトウェア保持部３１に保持されたプログラムに従って、心電図の計測演算や心電計１０全体の動作制御などを行う。ソフトウェア保持部３１は、書き換え可能な記憶装置であり、本実施の形態の場合にはフラッシュメモリである。
【００１８】
操作部２０からの操作信号は、ＣＰＵ３０、アップデート制御部３２及び電源供給部３４に送出される。ＣＰＵ３０は、操作信号によって指示された処理を、ソフトウェア保持部３１のプログラムに従って行う。
【００１９】
アップデート制御部３２は、電源キー２１と、操作キー群２２の中の予め決められた特定キーとが同時に押下されたことを示す操作信号を操作部２０から受けると、ソフトウェア保持部３１に保持されたプログラムのアップデートを行う。アップデートは、新たなプログラムをインターフェース（Ｉ／Ｆ）３３を介してＳＤカード４０などから取得し、ソフトウェア保持部３１によって保持されているプログラムをこの新たなプログラムに書き換えることによって行われる。
【００２０】
心電計１０は電源供給部３４を有し、電源供給部３４は電源キー２１が所定時間以上長押しされたことを示す操作信号を操作部２０から入力すると、心電計１０全体への電源供給を停止する（つまりシャットダウンする）。本実施の形態では、電源キーが１０秒間長押しされたときに、シャットダウンを行うようになっている。電源キー２１は、モーメンタリ動作型の押しボタンスイッチ（モーメンタリスイッチと呼ばれることもある）であり、押下されているときだけＯＮ信号を出力し、指を離すと押下前の位置に自動的に復帰してＯＦＦ信号を出力する（あるいは信号を出力しない）状態となるものである。
【００２１】
図３は、本実施の形態によるアップデート制御部３２の処理手順を示す。
【００２２】
アップデート制御部３２は、ステップＳ０で処理を開始すると、続くステップＳ１で特定キー及び電源キー２１が同時に押下されたかを監視し、同時に押圧された場合にプログラムのアップデートを開始し、ステップＳ２に移る。本実施の形態の場合、先ず、電源がシャットダウンされている状態でユーザーによりＳＤカード４０がＩ／Ｆ３３に差し込まれ、ステップＳ１で肯定結果を得た場合にアップデートが開始される。実際には、特定キーと電源キー２１を同時に押下されてから電源がオンになるまでに３秒程度の時間がかかり、その直後にアップデートが開始される。
【００２３】
アップデート制御部３２は、ステップＳ２で起動時画像プログラムを書き込む。このプログラムは起動時にタッチパネル１１に表示させるための画像に関するプログラムである。次に、アップデート制御部３２は、ステップＳ３でカーネルプログラムを書き込む。そして、アップデート制御部３２は、他のプログラムを書き込んだ後に、最後にステップＳｎでブートローダプログラムを書き込み、ステップＳｎ＋１でアップデート処理を終了する。このようなアップデートの順番は、ＳＤカード４０の中に記述されている。そしてアップデート制御部３２がその順番を読み取り、その順番に従ってプログラムをアップデートする。また、アップデート制御部３２にアップデートの順番を予め設定しておいてもよい。
【００２４】
因みに、各ステップＳ２、Ｓ３、………、Ｓｎでの各プログラムの書き込み時には、随時、前のプログラムを消去しそこに新たなプログラムを書き込むようになっている。つまり、前のプログラムを一挙に全て消去するのではなく、ステップＳ２、Ｓ３、………、Ｓｎの都度に前のプログラムを消去するようになっている。
【００２５】
図３に示す本実施の形態のアップデート処理の特徴は、電源キー２１の長押しにより電源がシャットダウンされるタイミングを避けたタイミングでブートローダプログラムをアップデートすることである。これを実現するために、図３の処理手順では、ブートローダプログラムをアップデートするステップを最後にしている。
【００２６】
図３と対応する処理に同一符号を付して示す図４は、本実施の形態に対する比較例を示す。図３のアップデート処理と異なる点は、ブートローダプログラムをアップデートするステップを最初に行うことである。
【００２７】
本実施の形態で想定しているのは、ユーザーがアップデートを開始しようとして、特定キーと電源キー２１を押下し、そのまま電源がシャットダウンされてしまうまで電源キー２１を押し続けるといった操作ミスをしてしまうことである。つまり、実際には、特定キーと電源キー２１を同時に押下すれば、その数秒後にアップデートが開始されるので、ユーザーはその時点でキーから指を離せばよいが、ユーザーが誤ってそのまま１０秒間電源キー２１を押し続けると、アップデート中に強制的に電源がシャットダウンされてしまう。
【００２８】
ブートローダプログラムのアップデートは、ブートローダプログラムのサイズにもよるが一般に１０〜１５秒程度かかる。よって、電源キーを１０秒間長押ししたときに電源をシャットダウンする設定の場合には、図４の比較例のように、最初にブートローダプログラムのアップデートを行うとブートローダプログラムのアップデート中に電源がシャットダウンする可能性が高くなる。そのため、本実施の形態では、ブートローダプログラムをアップデートする順番を他のプログラムをアップデートする順番よりも後にすることで、電源キー２１の長押しにより電源がシャットダウンされるタイミングを避けたタイミングでブートローダプログラムをアップデートするようにした。
【００２９】
因みに、ＣＰＵ内蔵の電子機器では、電源をオンした後のシステム起動過程が、比較的小さな実行コード群から構成されているブートローダを実行し、続いて、このブートローダがそのシステムのオペレーションシステムプログラムの初期コードを読み出すといった、段階的な起動動作となっているのが一般的である。ブートローダが壊れると、オペレーションシステムプログラムの初期コードを読み出すことができなくなり、その結果オペレーションシステムを起動できなくなるおそれがある。また、ブートローダには、アップデートを制御するためのプログラムが含まれているので、ブートローダが壊れると、アップデート自体もできなくなるおそれがある。
【００３０】
よって、ブートローダのアップデート中に電源がシャットダウンすることによってブートローダが壊れると、次にオペレーションシステムを起動ができなくなるおそれがある。また、仮にオペレーションシステムが起動できたとしても、アップデートができなくなるおそれがある。本発明の発明者は、このことを考慮して、ユーザーの操作ミスにより電源がシャットダウンしたとしてもブートローダが破壊されることがないように、電源がシャットダウンする可能性がある期間はブートローダのアップデートを行わないようにした。
【００３１】
因みに、図３のような手順でアップデートを行った場合、起動時画像プログラムをアップデートしている最中に電源がシャットダウンすると、起動時画像プログラムが壊れる可能性がある。この場合、起動時画像が乱れたり表示されなくなることになる。しかし、ブートローダが壊れていなければ、電子機器を起動することができるので、起動後に起動時画像プログラムをアップデートして修復する作業を行うことができ、重大なダメージは受けない。
【００３２】
以上説明したように、本実施の形態によれば、電源キー２１の長押しにより電源がシャットダウンされるタイミングを避けたタイミングでブートローダプログラムをアップデートするようにしたことにより、電子機器を起動できなくなるといった重大なダメージを被ることを回避できるようになる。
【００３３】
なお、上述の実施の形態では、電源キーを１０秒間長押ししたときに電源をシャットダウンする設定だったので、アップデート開始から１０秒の時点でブートローダプログラムをアップデートしない順番でアップデートを行うようにしたが、電源キーを５秒間長押ししたときに電源をシャットダウンする設定の場合にはそのタイミングではブートローダプログラムをアップデートせず、電源キーを２０秒間長押ししたときに電源がシャットダウンする設定の場合にはそのタイミングではブートローダプログラムをアップデートしないようにすればよい。
【００３４】
また、上述の実施の形態では、複数のプログラムの中で、ブートローダプログラムを１番最後の順番でアップデートする場合について述べたが、１番最後の順番に限らず、２番目以降の順番でアップデートしてもよい。電源キー２１の長押しにより電源がシャットダウンされるタイミングを避けたタイミングでブートローダプログラムをアップデートするには、ブートローダプログラムをアップデートする前のプログラムのアップデートに要する時間が、シャットダウンのための電源キー２１の長押し時間を超えていればよい。よって、最初のプログラムのアップデート時間がこの長押し時間を超えているのであれば、ブートローダプログラムをアップデートする順番を２番目にしてもよい。但し、プログラムのアップデート時間はプログラムサイズに依存するので、ブートローダプログラムをアップデートする順番はできるだけ後にした方がシャットダウンのタイミングを避けてブートローダプログラムをアップデートできるようになる。
【００３５】
また、上述の実施の形態では、複数のプログラムを１つずつ順番にアップデートする場合について述べたが、要は、ブートローダプログラムを電源キー２１の長押しにより電源がシャットダウンされるタイミングを避けたタイミングでアップデートすればよく、複数のプログラムを同時にアップデートしてもよい。
【００３６】
また、上述の実施の形態では、電源キー２１と電源キー２１以外の特定の操作キーとが同時に押下された場合にプログラムのアップデートを開始する場合について述べたが、これに限らず、電源キー２１が押下された場合にプログラムのアップデートを開始するようにしてもよい。具体的には、アップデート制御部３２が、アップデート用のプログラムが記録されたＳＤカード４０が差し込まれた状態で、電源キー２１が押下されたことを検知したときにアップデートを開始するようにしてもよい。
【００３７】
また、上述の実施の形態では、本発明を心電計に適用した場合について述べたが、本発明はこれに限らず、プログラムのアップデートを行うことができる電子機器に広く適用可能である。
【００３８】
上述の実施の形態は、本発明を実施するにあたっての具体化の一例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその要旨、またはその主要な特徴から逸脱することなく、様々な形で実施することができる。
【産業上の利用可能性】
【００３９】
本発明は、プログラムのアップデートを行うことができる電子機器に適用可能である。
【符号の説明】
【００４０】
１０  心電計
１１  タッチパネル
１２  レコーダー
２０  操作部
２１  電源キー
２２  操作キー群
３０  ＣＰＵ
３１  ソフトウェア保持部
３２  アップデート制御部
３３  インターフェース（Ｉ／F）
３４  電源供給部
【図１】
2015111355.tif 000003
【図２】
2015111355.tif 000004
【図３】
2015111355.tif 000005
【図４】
2015111355.tif 000006