携帯端末装置及びプログラム
【課題】装置全体を統括して自在に電源管理を行うことである。
【解決手段】バックライト142等のデバイスと、電源電力を出力するLi−ion電池182等の電源と、前記電源から出力される電源電力を前記複数のデバイスへ電力供給して駆動させるドライバ181と、前記デバイスごとに電源状態を規定する複数の電源モードに応じて、ドライバ181の電力供給状態の上限を設定するとともに、アプリケーションプログラムによるドライバ181の電力供給状態の設定を前記電力供給状態の上限に応じて制限するCPU11と、を備える。
【解決手段】バックライト142等のデバイスと、電源電力を出力するLi−ion電池182等の電源と、前記電源から出力される電源電力を前記複数のデバイスへ電力供給して駆動させるドライバ181と、前記デバイスごとに電源状態を規定する複数の電源モードに応じて、ドライバ181の電力供給状態の上限を設定するとともに、アプリケーションプログラムによるドライバ181の電力供給状態の設定を前記電力供給状態の上限に応じて制限するCPU11と、を備える。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、携帯端末装置及びプログラムに関する。
【背景技術】
【0002】
従来、ハンディターミナル等の携帯端末装置において、省電力のための電源管理機能が知られている。例えば、OS(Operating System)プログラム等によるのシステム管理として、一定時間キー入力がなされないと装置全体の電源をオフするAPO(Auto Power Off)機能があった(例えば、特許文献1参照)。
【0003】
また、無線通信部を備え、無線通信機能を有する携帯端末装置がある。この携帯端末装置において、電源オフした状態から電源オンすると、無線通信の初期化に時間を要し、通信の確立までに時間が掛かってしまう。このため、電源オフ状態から電源オンした場合にすぐに無線通信の確立を行うために、疑似オフモードを有する装置が考えられている。疑似オフモードになると、見かけ上、表示部などがオフされており、装置全体の電源がオフされているように見えるが、無線通信部の電源はオンのままである。そして、疑似オフモードから通常の動作状態に戻ると、すぐに無線通信機能が使用可能となる。
【0004】
また、各種アプリケーションプログラムにより、携帯端末装置の各部の電源制御がなされていた。
【特許文献1】特開2002−182805号公報
【発明の開示】
【発明が解決しようとする課題】
【0005】
しかし、上記従来の携帯端末装置では、APOにより装置全体が完全に電源オフされてしまうため、APOと、装置の一部を起動しておく疑似オフモードとの併用ができなかった。
【0006】
また、従来のアプリケーションプログラムによる電源制御では、各アプリケーションがバラバラに電源制御するため、装置全体を統括して電源管理を行うことができなかった。
【0007】
本発明の課題は、装置全体を統括して自在に電源管理を行うことである。
【課題を解決するための手段】
【0008】
上記課題を解決するために、請求項1に記載の発明の携帯端末装置は、
複数のデバイスと、
電源電力を出力する電源と、
前記電源から出力される電源電力を前記複数のデバイスへ電力供給して駆動させる駆動手段と、
前記デバイスごとに電源状態を規定する複数の電源モードに応じて、前記駆動手段の電力供給状態の上限を設定するとともに、アプリケーションプログラムによる前記駆動手段の電力供給状態の設定を前記電力供給状態の上限に応じて制限する制御手段と、を備える。
【0009】
請求項2に記載の発明は、請求項1に記載の携帯端末装置において、
情報の入力を受け付ける入力手段を備え、
前記制御手段は、前記電源モードに応じて規定された電力供給状態の規定値を設定し、アプリケーションプログラムにより前記入力手段を介して受け付けた電力供給状態の入力値と前記規定値とを用いて電力供給状態の決定値を算出し、前記駆動手段の電力供給状態を前記算出した決定値で設定する。
【0010】
請求項3に記載の発明は、請求項1又は2に記載の携帯端末装置において、
前記複数の電源モードは、電源が乾電池である場合の電源モードを含み、
電源が乾電池であることを検出する検出手段を備え、
前記制御手段は、前記検出手段により電源が乾電池であることが検出された場合に、電源が乾電池である場合の電源モードに応じて前記駆動手段の電力供給状態の上限を設定する。
【0011】
請求項4に記載の発明は、請求項1から3のいずれか一項に記載の携帯端末装置において、
前記複数の電源モードは、見かけ上電源オフ状態の疑似オフ状態である場合の電源モードを含み、
前記制御手段は、疑似オフ状態である場合の電源モードに応じて前記駆動手段の電力供給状態の上限を設定する。
【0012】
請求項5に記載の発明のプログラムは、
コンピュータを、
複数のデバイス、
電源電力を出力する電源、
前記電源から出力される電源電力を前記複数のデバイスへ電力供給して駆動させる駆動手段、
前記デバイスごとに電源状態を規定する複数の電源モードに応じて、前記駆動手段の電力供給状態の上限を設定するとともに、アプリケーションプログラムによる前記駆動手段の電力供給状態の設定を前記電力供給状態の上限に応じて制限する制御手段、
として機能させる。
【発明の効果】
【0013】
本発明によれば、装置全体を統括して自在に電源管理を行うことができる。
【発明を実施するための最良の形態】
【0014】
以下、添付図面を参照して本発明に係る好適な実施の形態を詳細に説明する。なお、本発明は、図示例に限定されるものではない。
【0015】
図1〜図9を参照して本発明に係る実施の形態を説明する。先ず、図1を参照して本実施の形態の装置構成を説明する。図1に、本実施の形態のハンディターミナル1の構成を示す。
【0016】
本実施の形態の携帯端末装置としてのハンディターミナル1は、情報の入力、表示及び無線通信機能を有する装置である。図1に示すように、ハンディターミナル1は、CPU(Central Processing Unit)11、デバイスとしての入力部12、RAM(Random Access Memory)13、表示部14、ROM15、デバイスとしての通信部16、フラッシュメモリ17、電源部18、等を備えて構成され、各部がバス19を介して接続される。
【0017】
表示部14は、デバイスとしてのLCD(Liquid Crystal Display)141、バックライト142を備えて構成される。電源部18は、駆動手段としてのドライバ181と、電源としてのLi−ion電池182、乾電池183と、検出手段としての電源検出部184と、を備えて構成される。
【0018】
CPU11は、ハンディターミナル1の各部を中央制御する。CPU11は、ROM15に記憶されているシステムプログラム及び各種アプリケーションプログラムの中から指定されたプログラムをRAM13に展開し、RAM13に展開されたプログラムとの協働で、各種処理を実行する。CPU11は、プログラムとの協働により制御手段として機能する。
【0019】
CPU11は、後述する電源管理プログラムとの協働により、電源キー押下等の電源イベントの発生に応じて電源モードを切替えるとともに、電源イベントを発行してドライバ181に通知する。また、CPU11は、後述するシステム疑似オフ設定プログラムとの協働により、入力部12を介する設定入力に基づいて、システム疑似オフの有効/無効をフラッシュメモリ17の設定フラグテーブル171に設定する。
【0020】
また、CPU11は、電源イベントプログラムとして後述するバックライトの電源イベントプログラムとの協働により、電源モードに応じて、ドライバ181のバックライトドライバに対し、電力供給状態の上限としてのマスク値MaskValueを設定し、MaskValueにより電力供給状態のユーザ入力値であるUserValueを制限したFixedValueをバックライトドライバに設定する。また、CPU11は、後述するバックライト設定プログラムとの協働により、入力部12を介する設定入力に基づいて、UserValueをフラッシュメモリ17の設定フラグテーブル171に設定する。
【0021】
入力部12は、文字、数字等を入力するためキーを有するキーパッド、電源のオン/オフを入力するための電源キー、システムのリセットを入力するためのリセットキー等を備え、操作者から押下入力された各キーの入力信号をCPU11に出力する。また、入力部12は、表示部14と一体にタッチパネルを構成することとしてもよい。
【0022】
RAM13は、揮発性のメモリであり、実行される各種プログラムやこれら各種プログラムに係るデータ等を格納するワークエリアを有し、情報を一時的に格納する。
【0023】
表示部14は、CPU11からの表示信号に従って画面表示を行う。LCD141は、CPU11からの表示信号に従って表示画面のパターンを形成する。バックライト142は、LCD141への透過光を出射する。表示部14は、LCD141に表示信号に基づく表示画面のパターンを形成させ、バックライト142から出射される透過光によるLCD141の透過により表示画面を表示させる。本実施の形態では、表示部14が、LCD141による表示部であるが、これに限定されるものではなく、ELD(ElectroLuminescent Display)等、他の表示部としてもよい。
【0024】
ROM15は、各種プログラム及び各種データを読み出し可能に記憶する。ROM15は、後述する電源管理プログラム、システム疑似オフ設定プログラム、バックライトの電源イベントプログラム、バックライト設定プログラム、キーの電源イベントプログラム、キーの有効切替設定プログラム、キー入力処理プログラム、通信の電源イベントプログラムを記憶する。
【0025】
通信部16は、無線LAN(Local Area Network)の通信方式で外部機器と各種情報の通信を行う。本実施の形態では、通信部16が、無線LAN方式による通信部とするが、これに限定されるものではなく、他の通信方式の通信部としてもよい。
【0026】
電源部18は、ハンディターミナル1の各部に電源電力を供給する。ドライバ181は、電源から出力された電源電力をハンディターミナル1の各部へ電力供給し駆動させる。ドライバ181は、ハンディターミナル1の各部に用意されている。本実施の形態では、ドライバ181が、入力部12のキーパッドへの電力供給を行うキードライバ、LCD141への電力供給を行うLCDドライバ、バックライト142への電力供給を行うバックライトドライバ、通信部16への電力供給を行う通信部ドライバ、等を備えるものとする。
【0027】
電源部18は、電源としてLi−ion電池182、乾電池183を使用可能である。Li−ion電池182は、電池容量が大きく長時間大きな電力量を供給可能である。乾電池183は、電池容量が小さく供給する電力量も小さい。このため、本実施の形態では、電源としてLi−ion電池182を用いる場合と、乾電池183を用いる場合とに分けて、電源制御を異にする。例えば、乾電池183を用いる場合に、通信部16の無線LAN通信を禁止する。
なお、電源としては、Li−ion電池182、乾電池183のいずれか1つが電源部18に備えられるものであり、通常はLi−ion電池182が備えられる。また、乾電池183が使用される場合は、災害発生や停電等のLi−ion電池182が充電できない場合である。
【0028】
また、電源部18は、図示しない電池蓋及び電池挿入部を備え、ユーザが電池蓋を外して電池挿入部にLi−ion電池182または乾電池183のいずれかをセットでき、またLi−ion電池182または乾電池183を交換可能である。また、電源部18は、図示しない電池蓋の検出部を備え、その検出部により電池蓋が外されたことを検出すると、その旨の信号をCPU11に送信する。CPU11は、電池蓋が外された旨の信号を電源部18から受信すると、ハンディターミナル1を強制的に完全な電源オフの状態にする。完全な電源オフの状態とは、ハンディターミナル1の各部に電源電力供給を完全に停止している状態である。
【0029】
電源検出部184は、電源がLi−ion電池182又は乾電池183であるかを検出して、その検出結果をCPU11に出力する。
【0030】
次に、図2及び図3を参照して、本実施の形態の電源管理の概略を説明する。図2に、ハンディターミナル1の電源管理の概略を示す。図3に、電源モードとモード状態との対応関係を示す。
【0031】
図2に示すように、本実施の形態の電源制御は、CPU11で実行されるシステムプログラムによる電源制御と、同じくアプリケーションプログラムによる電源制御とに分かれる。システムプログラムによる電源管理では、電源(Li-ion電池182、乾電池183)からハンディターミナル1の各部(バックライト142、LCD141、通信部16、入力部12のキーパッド等)への電力供給状態の上限を設定する。この電力供給状態の上限の設定は、元栓の開放状態(度合い)に例えられる。
【0032】
また、電源管理のためのシステムプログラムは、電力供給状態を設定する電源管理層と、電源管理層により設定された電力供給状態に応じて電源に関する制御を行うサポート層とに分けられる。電源管理層は、電源イベントに応じて、電源モードを遷移させ、その電源モードに対応する電源状態をドライバ181に指示する。電源モードは、PM(Power Management)Modeとして、Mode0〜Mode4まで用意されており、各電源モードで電源状態(元栓状態)を異にする。
【0033】
図3に示すように、電源モードMode0は、電源がLi−ion電池182であり、完全な電源オフであるモード状態に対応する電源モードである。電源モードMode1は、電源がLi−ion電池182であり、通常動作時の電源オンであるモード状態に対応する電源モードである。電源モードMode2は、電源がLi−ion電池182であり、疑似オフであるモード状態に対応する電源モードである。
【0034】
疑似オフとは、低消費電力と電源オン状態へのスタンバイとのため、ハンディターミナル1の各部の電力供給状態を低く設定した状態であり、完全な電源オフ状態とは異なる。疑似オフ状態への遷移が可能なモードをシステム疑似オフモードとする。
【0035】
電源モードMode3は、電源が乾電池183であり、通常動作時の電源オンであるモード状態に対応する電源モードである。電源モードMode4は、電源が乾電池183であり、疑似オフであるモード状態に対応する電源モードである。サポート層は、各電源モードに従い、APO(Auto Power Off)、ABO(Auto Back light Off)、コントロールパネルの設定等の各種処理を行う。
【0036】
アプリケーション層は、各種アプリケーションプログラムである。アプリケーションプログラムが処理を行う際、ドライバ181に対して電力供給状態の変更の指示をすることが可能である。しかし、システムプログラムにより設定された元栓状態(電力供給状態の上限)より大きい電源電力供給を行う電力供給状態に設定することはできない。
【0037】
次に、図4を参照して、疑似オフ及び乾電池の電源モードにおけるハンディターミナル1の各部の状態を説明する。図4に、疑似オフ及び乾電池の電源モードにおけるハンディターミナル1の各部の状態を示す。
【0038】
PMModeがMode2である場合に、ハンディターミナル1は疑似オフ状態である。疑似オフ状態では、図4に示すように、CPU11の動作周波数が104[MHz]に設定され、バックライト142の透過光の出力上限が100%に設定され、通信部16の無線LAN通信が低消費電力モードに設定され、入力部12のキーパッドのキー入力が受け付けられなく、LCD141がオフされる。CPU11の動作周波数は、通常時(Mode1)で504[MHz]であり、システム疑似オフ状態では、通常時に比べて動作周波数が小さく、低消費電力となる。
【0039】
また、低消費電力モードとは、無線LAN通信において例えば、少なくともセンターとの通信接続が切れずに、またローミングができ、通信部16の消費電力が低いモードである。低消費電力モードは、例えば、通信部16のビーコン監視間隔を長くすることにより実現する。
【0040】
また、疑似オフ状態では、ハンディターミナル1の表示部14が表示動作しておらず、見かけ上、電源オフ状態になっている。しかし、無線LAN通信が低消費電力モードで動作しているので、コネクションを接続したまま接続されており、電源オン状態に遷移されても、センターへの再接続等、通信の初期化が不要で、速やかに通信が可能となる。
【0041】
PMModeがMode3である場合に、ハンディターミナル1は乾電池モードの電源オン状態である。乾電池モードの電源オン状態では、図4に示すように、CPU11の動作周波数が通常と同じ504[MHz]に設定され、バックライト142の透過光の出力上限が50%に設定され、通信部16の無線LAN通信が不可に設定され、入力部12のキーパッド及びLCDは通常時と同様にオンされる。PMModeがMode4である場合には、PMModeがMode3の状態において、さらに例えば、CPU11、入力部12のキーパッド、LCD141の状態がMode2の状態に設定される。
【0042】
次に、図5を参照して、フラッシュメモリ17に記憶する情報を説明する。図5に、設定フラグテーブル171の構成を示す。
【0043】
フラッシュメモリ17には、図5に示すように、設定フラグテーブル171が記憶される。設定フラグテーブル171は、後述する電源管理処理等の実行時に使用する、システム疑似オフ、PMMode、MaskValue、UserValue、FixedValue、PrevBat、KeyMask、UserKeyMask、TMask、LowPower、疑似オフフラグを項目として有する。
【0044】
システム疑似オフとは、疑似オフ状態への遷移が可能か否かを示す情報であり、有効(疑似オフ状態への遷移可能)又は無効が設定される。MaskValueは、電源モード(PMMode)に応じたバックライト142の明るさ(バックライト142へ供給する電源電力量に対応)のマスク値であり、例えば、0〜100%の値で表される。UserValueは、ユーザに設定入力されるバックライト142の明るさ(バックライト142へ供給する電源電力量に対応)の入力値であり、例えば、0〜9の値で表される。FixedValueは、MaskValue及びUserValuに応じて算出されるバックライト142の明るさ(バックライト142へ供給する電源電力量に対応)の決定値である。PrevBatは、電源イベント発生前の電源の種類を示し、Li−ion電池182又は乾電池183が設定される。
【0045】
KeyMaskは、電源モード(PMMode)に応じた入力部12のキーパッドへ供給する電源電力量のマスク値であり、有効(電力供給しキー入力受け付け可能)か無効(電力供給せずキー入力受け付け不可)かが設定される。UserKeyMaskは、ユーザにより設定入力される入力部12のキーパッドへ供給する電源電力量のマスク値であり、有効(電力供給しキー入力受け付け可能)か無効(電力供給せずキー入力受け付け不可)かが設定される。
【0046】
TMaskは、電源モード(PMMode)に応じた通信部16へ供給する電源電力量のマスク値であり、有効(電力供給し無線LAN通信可能)か無効(電力供給せず無線LAN通信不可)かが設定される。LowPowerは、電源モード(PMMode)に応じた通信部16へ供給する電源電力に関し低消費電力モードが有効か無効かが設定される。
【0047】
疑似オフフラグは、現在疑似オフ状態であるか否かを示すフラグであり、例えば、1が疑似オフ状態であることを示し、0が疑似オフ状態でないことを示す。
【0048】
次に、図6〜図19を参照して、本実施の形態におけるハンディターミナル1の動作を説明する。先ず、図6〜図9を参照して、ハンディターミナル1で実行される電源管理処理を説明する。図6に、電源管理処理の流れを示す。図7に、電源管理処理における電源オン処理の流れを示す。図8に、電源管理処理における疑似オフのオン処理の流れを示す。図9に、電源管理処理における疑似オフのオフ処理の流れを示す。
【0049】
図6に示すように、ハンディターミナル1において、完全な電源オフの状態からユーザによる入力部12の電源キー押下を受け付けたこと(トリガT1)、又は電源オン、電源オフ若しくは疑似オフの状態からユーザによる入力部12のリセットキーの押下入力を受け付けたこと(トリガT2)が発生すると、ROM15から読み出されて適宜RAM13に展開された電源管理処理プログラムと、CPU11との協働により、電源管理処理が実行される。また、フラッシュメモリ17に記憶される設定フラグテーブル171のシステム疑似オフは、デフォルトでは、無効に設定されているものとする。
【0050】
トリガT1の後、電源オン処理が実行される(ステップS1)。電源オン処理は、詳細に後述される。そして、ハンディターミナル1がレジューム状態であることを示すレジュームメッセージが発行され、各アプリケーションプログラムへ通知される(ステップS2)。レジューム状態とは、完全な電源オフの状態から電源オンの状態になった状態をいう。そして、各種アプリケーションプログラムの実行によるアプリケーション処理が実行される(ステップS3)。アプリケーション処理は、例えば、キー割り込み処理である。
【0051】
また、トリガT2の後、ステップS1と同様の電源オン処理が実行される(ステップS4)。そして、フラッシュメモリ17に記憶される設定フラグテーブル171のシステム疑似オフが無効に設定され(ステップS5)、ステップS3に移行される。
【0052】
ステップS3の実行中に、電源部18の電池蓋が開けられたこと又は電源電力供給中のLi−ion電池182若しくは乾電池183の電池電圧が低下したこと(トリガT3)が発生すると、ステップS1に移行される。
【0053】
ステップS3の実行中に、ユーザによる入力部12の電源キーの押下入力を受け付けたこと、一定時間キー入力がなくAPOによる電源オフが開始されたこと、又は実行中のアプリケーションプログラムから電源オフ指示を受信したこと(トリガT4)が発生した場合に、設定フラグテーブル171のシステム疑似オフが有効であるか否かが判別される(ステップS6)。システム疑似オフが無効である場合(ステップS6;NO)、ステップS1に移行される。
【0054】
設定フラグテーブル171のシステム疑似オフが有効である場合(ステップS6;YES)、フラッシュメモリ17に記憶される設定フラグテーブル171の疑似オフフラグが0(現在電源オン状態中)であるか否かが判別される(ステップS7)。疑似オフフラグが1の場合(ステップS7;NO)、疑似オフのオン処理が実行され(ステップS8)、ステップS3に移行される。疑似オフのオン処理は、詳細に後述される。疑似オフフラグが0の場合(ステップS7;YES)、疑似オフのオフ処理が実行され(ステップS9)、ステップS3に移行される。疑似オフのオフ処理は、詳細に後述される。
【0055】
図7を参照して、ステップS1,S4の電源オン処理を説明する。先ず、電源検出部184により電源の種類が検出され、その検出結果に応じて、現在の電源が乾電池183であるか否かが判別される(ステップS11)。現在の電源がLi−ion電池182である場合(ステップS11;NO)、フラッシュメモリ17に記憶される設定フラグテーブル171のPrevBattが乾電池(乾電池183)であるか否かが判別される(ステップS12)。
【0056】
PrevBattがLi−ion電池である場合(ステップS12;NO)、設定フラグテーブル171のPrevBattが現在の電池種別(Li−ion電池(Li−ion電池182)又は乾電池(乾電池183))に更新される(ステップS13)。
【0057】
PrevBattが乾電池である場合(ステップS12;YES)、フラッシュメモリ17に記憶される設定フラグテーブル171のPMModeがMode4であるか否かが判別される(ステップS14)。PMModeがMode4でない場合(ステップS14;NO)、設定フラグテーブル171のPMModeがMode1に更新され(ステップS15)、ステップS13に移行される。PMModeがMode4である場合(ステップS14;YES)、設定フラグテーブル171のPMModeがMode2に更新され(ステップS16)、ステップS13に移行される。
【0058】
現在の電源が乾電池183である場合(ステップS11;YES)、フラッシュメモリ17に記憶される設定フラグテーブル171のPrevBattがLi−ion電池(Li−ion電池182)であるか否かが判別される(ステップS17)。PrevBattが乾電池である場合(ステップS17;NO)、ステップS13に移行される。
【0059】
PrevBattがLi−ion電池である場合(ステップS17;YES)、フラッシュメモリ17に記憶される設定フラグテーブル171のPMModeがMode2であるか否かが判別される(ステップS18)。PMModeがMode2である場合(ステップS18;YES)、設定フラグテーブル171のPMModeがMode4に更新され(ステップS19)、ステップS13に移行される。PMModeがMode2でない場合(ステップS18;NO)、設定フラグテーブル171のPMModeがMode3に更新され(ステップS20)、ステップS13に移行される。
【0060】
ステップS13の実行後、ドライバ181に対するドライバレジューム処理が実行され(ステップS21)、電源オン処理が終了する。ドライバレジューム処理は、詳細に後述される。
【0061】
図8を参照して、ステップS8の疑似オフのオン処理を説明する。先ず、電源検出部184により電源の種類が検出され、その検出結果に応じて、現在の電源が乾電池183であるか否かが判別される(ステップS31)。現在の電源が乾電池183である場合(ステップS31;YES)、フラッシュメモリ17に記憶される設定フラグテーブル171のPMModeがMode4からMode3に更新される(ステップS32)。そして、電源イベントが発生した旨を示す電源イベントが発行され、ドライバ181に通知される(ステップS33)。電源イベントの通知により、ドライバ181のバックライトドライバ等の各ドライバに対して、後述する各電源イベント処理が実行される。
【0062】
現在の電源がLi−ion電池182である場合(ステップS31;NO)、設定フラグテーブル171のPMModeがMode2からMode1に更新され(ステップS34)、ステップS33に移行される。
【0063】
ステップS33の実行後、ハンディターミナル1がレジューム状態であることを示すレジュームメッセージが発行され、各アプリケーションプログラムへ通知される(ステップS35)。そして、フラッシュメモリ17に記憶される設定フラグテーブル171の疑似オフフラグが1から0に更新され(ステップS36)、疑似オフのオン処理が終了する。
【0064】
図9を参照して、ステップS9の疑似オフのオフ処理を説明する。先ず、電源検出部184により電源の種類が検出され、その検出結果に応じて、現在の電源が乾電池183であるか否かが判別される(ステップS41)。現在の電源が乾電池183である場合(ステップS41;YES)、フラッシュメモリ17に記憶される設定フラグテーブル171のPMModeがMode3からMode4に更新される(ステップS42)。そして、電源イベントが発生した旨を示す電源イベントが発行され、ドライバ181に通知される(ステップS43)。
【0065】
現在の電源がLi−ion電池182である場合(ステップS41;NO)、設定フラグテーブル171のPMModeがMode1からMode2に更新され(ステップS44)、ステップS43に移行される。
【0066】
ステップS43の実行後、ハンディターミナル1がサスペンド状態であることを示すサスペンドメッセージが発行され、各アプリケーションプログラムへ通知される(ステップS45)。サスペンド状態とは、ハンディターミナル1が完全に電源オフされた状態をいうが、本実施の形態では、疑似オフ状態とする。そして、フラッシュメモリ17に記憶される設定フラグテーブル171の疑似オフフラグが0から1に更新され(ステップS46)、疑似オフのオフ処理が終了する。
【0067】
次いで、図10を参照して、システム疑似オフ設定処理を説明する。図10に、システム疑似オフ設定処理の流れを示す。
【0068】
ハンディターミナル1において、ユーザによる入力部12を介するシステム疑似オフの設定入力を受け付け、システム疑似オフの設定入力がなされたことをトリガとして、ROM15から読み出されて適宜RAM13に展開されたシステム疑似オフ設定プログラムと、CPU11との協働により、システム疑似オフ設定処理が実行される。このシステム疑似オフ設定プログラムは、API(Application Programming Interface:ライブラリ関数)である。
【0069】
先ず、ユーザからのシステム疑似オフの設定入力が有効であるか否かが判別される(ステップS51)。システム疑似オフの設定入力が有効である場合(ステップS51;YES)、フラッシュメモリ17に記憶される設定フラグテーブル171のシステム疑似オフが「有効」という設定内容に更新され(ステップS52)、システム疑似オフ設定処理が終了する。システム疑似オフの設定入力が無効である場合(ステップS51;NO)、フラッシュメモリ17に記憶される設定フラグテーブル171のシステム疑似オフが「無効」という設定内容に更新され(ステップS53)、システム疑似オフ設定処理が終了する。
【0070】
次いで、図11及び図12を参照して、ステップS21のドライバレジューム処理の一つであるバックライトのドライバレジューム処理を説明する。図11に、バックライトのドライバレジューム処理の流れを示す。図12に、バックライト更新処理の流れを示す。
【0071】
バックライトのドライバレジューム処理は、ドライバ181のバックライトドライバに対して行われるレジューム処理である。図11に示すように、先ず、フラッシュメモリ17に記憶される設定フラグテーブル171のPMModeが何であるかが判別される(ステップS61)。PMModeは、Mode1、 Mode2、Mode3又はMode4である。
【0072】
PMModeがMode3である場合(ステップS61;Mode3)、フラッシュメモリ17に記憶される設定フラグテーブル171のMaskValueが50%に更新される(ステップS62)。そして、バックライト更新処理が実行され(ステップS63)、バックライトのドライバレジューム処理が終了する。バックライト更新処理は、詳細に後述される。
【0073】
PMModeがMode2又はMode4である場合(ステップS61;Mode2又はMode4)、フラッシュメモリ17に記憶される設定フラグテーブル171のMaskValueが0%に更新され(ステップS64)、ステップS63に移行される。PMModeがMode1である場合(ステップS61;Mode1)、フラッシュメモリ17に記憶される設定フラグテーブル171のMaskValueが100%に更新され(ステップS65)、ステップS63に移行される。
【0074】
図12を参照して、ステップS63のバックライト更新処理を説明する。先ず、フラッシュメモリ17に記憶される設定フラグテーブル171のUserValue及びMaskValueが読み出され、そのUserValue及びMaskValueを用いて、FixedValue=UserValue×MaskValue/100が算出される(ステップS71)。そして、設定フラグテーブル171のFixedValueが、ステップS71で算出されたFixedValueの値で更新され、更新したFixedValueがドライバ181のバックライトドライバに設定され(ステップS72)、バックライト更新処理が終了する。ステップS72では、設定されたFixedValueに基づいて、ドライバ181のバックライトドライバにより、Li−ion電池182又は乾電池183から出力される電源電力がバックライト142へ電力供給され駆動される。
【0075】
次いで、図13を参照して、バックライトの電源イベント処理を説明する。図13に、バックライトの電源イベント処理の流れを示す。バックライトの電源イベント処理は、ステップS33,S43の電源イベント発行に応じて、ドライバ181のバックライトドライバに対して実行される処理である。
【0076】
ハンディターミナル1において、ステップS33,S43の電源イベント発行をトリガとして、ROM15から読み出されて適宜RAM13に展開されたバックライトの電源イベント処理プログラムと、CPU11との協働により、バックライトの電源イベント処理が実行される。
【0077】
図13に示すように、先ず、電源イベントに対応して、フラッシュメモリ17に記憶される設定フラグテーブル171のPMModeが何であるかが判別される(ステップS81)。PMModeは、Mode1、 Mode2、Mode3又はMode4である。
【0078】
PMModeがMode3である場合(ステップS81;Mode3)、フラッシュメモリ17に記憶される設定フラグテーブル171のMaskValueが50%に更新される(ステップS82)。そして、図12に示したバックライト更新処理が実行され(ステップS83)、バックライトの電源イベント処理が終了する。
【0079】
PMModeがMode2又はMode4である場合(ステップS81;Mode2又はMode4)、フラッシュメモリ17に記憶される設定フラグテーブル171のMaskValueが0%に更新され(ステップS84)、ステップS83に移行される。PMModeがMode1である場合(ステップS81;Mode1)、フラッシュメモリ17に記憶される設定フラグテーブル171のMaskValueが100%に更新され(ステップS85)、ステップS83に移行される。
【0080】
次いで、図14を参照して、バックライト設定処理を説明する。図14に、バックライト設定処理の流れを示す。
【0081】
ハンディターミナル1において、ユーザによる入力部12を介するUserValueの設定入力を受け付け、UserValueの設定入力がなされたことをトリガとして、ROM15から読み出されて適宜RAM13に展開されたバックライト設定プログラムと、CPU11との協働により、バックライト設定処理が実行される。バックライト設定プログラムは、API(Application Program Interface:ライブラリ関数)である。
【0082】
先ず、ユーザからのUserValueの入力値が、規定値内(許容範囲0〜9)であるか否かが判別される(ステップS91)。UserValueの入力値が規定値内である場合(ステップS91;YES)、フラッシュメモリ17に記憶される設定フラグテーブル171のUserValueが入力値で更新される(ステップS92)。そして、図12に示すバックライト更新処理が実行され(ステップS93)、バックライト更新処理が終了する。
【0083】
UserValueの入力値が規定値内でない場合(ステップS91;NO)、UserValueの入力値が設定されないエラー処理が実行され(ステップS94)、バックライト更新処理が終了する。
【0084】
次いで、図15を参照して、キーの電源イベント処理を説明する。図15に、キーの電源イベント処理の流れを示す。キーの電源イベント処理は、ステップS33,S43の電源イベント発行に応じて、ドライバ181のキードライバに対して実行される処理である。
【0085】
ハンディターミナル1において、ステップS33,S43の電源イベント発行をトリガとして、ROM15から読み出されて適宜RAM13に展開されたキーの電源イベント処理プログラムと、CPU11との協働により、キーの電源イベント処理が実行される。
【0086】
図15に示すように、先ず、電源イベントに対応して、フラッシュメモリ17に記憶される設定フラグテーブル171のPMModeが何であるかが判別される(ステップS101)。PMModeは、Mode1、 Mode2、Mode3又はMode4である。
【0087】
PMModeがMode2又はMode4である場合(ステップS101;Mode2又はMode4)、フラッシュメモリ17に記憶される設定フラグテーブル171のKeyMaskが「有効」という設定内容に更新され(ステップS102)、キーの電源イベント処理が終了する。PMModeがMode1又はMode3である場合(ステップS101;Mode1又はMode3)、フラッシュメモリ17に記憶される設定フラグテーブル171のKeyMaskが「無効」という設定内容に更新され(ステップS103)、キーの電源イベント処理が終了する。
【0088】
次いで、図16を参照して、キーの有効切替設定処理を説明する。図16に、キーの有効切替設定処理の流れを示す。キーの有効切替設定処理は、ユーザの入力に基づいて、疑似オフ時の入力部12のキーパッドの入力受け付けの有効/無効の設定を行う処理である。
【0089】
ハンディターミナル1において、ユーザによる入力部12を介するUserKeyMaskの設定入力を受け付け、UserKeyMaskの設定入力がなされたことをトリガとして、ROM15から読み出されて適宜RAM13に展開されたキーの有効切替設定プログラムと、CPU11との協働により、キーの有効切替設定処理が実行される。キーの有効切替設定プログラムは、API(Application Program Interface:ライブラリ関数)である。
【0090】
先ず、ユーザからのUserKeyMaskの入力内容が有効であるか否かが判別される(ステップS111)。UserKeyMaskの入力内容が有効である場合(ステップS111;YES)、フラッシュメモリ17に記憶される設定フラグテーブル171のUserKeyMaskが「有効」という設定内容に更新され(ステップS112)、キーの有効切替設定処理が終了する。UserKeyMaskの入力内容が無効である場合(ステップS111;NO)、フラッシュメモリ17に記憶される設定フラグテーブル171のUserKeyMaskが「無効」という設定内容に更新され(ステップS113)、キーの有効切替設定処理が終了する。
【0091】
次いで、図17を参照して、キー入力処理を説明する。図17に、キー入力処理の流れを示す。キーの入力処理は、キー入力が有効である場合に、ユーザによる入力部12のキーパッドのキー入力受付を行う処理である。
【0092】
ハンディターミナル1において、ユーザによる入力部12のキーパッドを介するキー押下がなされたことをトリガとして、ROM15から読み出されて適宜RAM13に展開されたキー入力プログラムと、CPU11との協働により、キー入力処理が実行される。
【0093】
図17に示すように、先ず、フラッシュメモリ17に記憶される設定フラグテーブル171のKeyMaskが無効であるか否かが判別される(ステップS121)。KeyMaskが無効である場合(ステップS121;無効)、フラッシュメモリ17に記憶される設定フラグテーブル171のUserKeyMaskが無効であるか否かが判別される(ステップS122)。
【0094】
UserKeyMaskが無効である場合(ステップS122;無効)、ユーザによる入力部12のキーパッドを介するキー入力受付がドライバ181のキードライバに設定され(ステップS123)、キー入力処理が終了する。ステップS123では、ドライバ181のキードライバにより、Li−ion電池182又は乾電池183から出力される電源電力が入力部12のキーパッドへ電力供給され駆動される。KeyMaskが有効である場合(ステップS121;有効)、又はUserKeyMaskが有効である場合(ステップS122;有効)、ドライバ181のキードライバにより、Li−ion電池182又は乾電池183から出力される電源電力が入力部12のキーパッドへ電力供給されることなく、キー入力処理が終了する。
【0095】
なお、キー入力に関しては、ステップS21のドライバレジューム処理が実行されない。なぜなら、乾電池モードであるか否かで動作が変らないからである。
【0096】
次いで、図18を参照して、通信の電源イベント処理を説明する。図18に、通信の電源イベント処理の流れを示す。通信の電源イベント処理は、ステップS33,S43の電源イベント発行に応じて、ドライバ181の通信部ドライバに対して実行される処理である。
【0097】
ハンディターミナル1において、ステップS33,S43の電源イベント発行をトリガとして、ROM15から読み出されて適宜RAM13に展開された通信の電源イベント処理プログラムと、CPU11との協働により、通信の電源イベント処理が実行される。
【0098】
図18に示すように、先ず、電源イベントに対応して、フラッシュメモリ17に記憶される設定フラグテーブル171のPMModeが何であるかが判別される(ステップS131)。PMModeは、Mode1、 Mode2、Mode3又はMode4である。
【0099】
PMModeがMode2又はMode4である場合(ステップS131;Mode2又はMode4)、フラッシュメモリ17に記憶される設定フラグテーブル171のLowPowerが「有効」という設定内容に更新される(ステップS132)。そして、フラッシュメモリ17に記憶される設定フラグテーブル171のTMask 及びLowPowerに応じた無線LAN通信がドライバ181の通信部ドライバに設定され(ステップS133)、通信の電源イベント処理が終了する。ステップS133において、TMask及びLowPowerが無効の場合に、通信部16で通常の無線LAN通信が実行され、TMaskが無効でLowPowerが有効の場合に、通信部16で低消費モードの無線LAN通信が実行され、TMaskが有効の場合に、通信部16で無線LAN通信が停止される。また、ドライバ181の通信部ドライバにより、TMask及びLowPowerに基づいて、Li−ion電池182又は乾電池183から出力される電源電力が通信部16へ電力供給され駆動される。
【0100】
PMModeがMode1又はMode3である場合(ステップS131;Mode1又はMode3)、フラッシュメモリ17に記憶される設定フラグテーブル171のLowPowerが「無効」という設定内容に更新され(ステップS134)、ステップS133に移行される。
【0101】
次いで、図19を参照して、ステップS21のドライバレジューム処理の一つである通信のドライバレジューム処理を説明する。図19に、通信のドライバレジューム処理の流れを示す。
【0102】
通信のドライバレジューム処理は、ドライバ181の通信部ドライバに対して行われるレジューム処理である。図19に示すように、先ず、フラッシュメモリ17に記憶される設定フラグテーブル171のPMModeが何であるかが判別される(ステップS141)。PMModeは、Mode1、 Mode2、Mode3又はMode4である。
【0103】
PMModeがMode3又はMode4である場合(ステップS141;Mode3又はMode4)、フラッシュメモリ17に記憶される設定フラグテーブル171のTMaskが「有効」という設定内容に更新される(ステップS142)。そして、ステップS133と同様の無線LAN処理が実行され(ステップS143)、通信のドライバレジューム処理が終了する。
【0104】
PMModeがMode2である場合(ステップS141;Mode2)、フラッシュメモリ17に記憶される設定フラグテーブル171のTMaskが「無効」という設定内容に更新される(ステップS144)。そして、設定フラグテーブル171のLowPowerが「有効」という設定内容に更新され(ステップS145)、ステップS143に移行される。
【0105】
PMModeがMode1である場合(ステップS141;Mode1)、フラッシュメモリ17に記憶される設定フラグテーブル171のTMaskが「無効」という設定内容に更新される(ステップS146)。そして、設定フラグテーブル171のLowPowerが「無効」という設定内容に更新され(ステップS147)、ステップS143に移行される。
【0106】
以上、本実施の形態によれば、ハンディターミナル1は、表示部14(LCD141、バックライト142)、入力部12(キーパッド)、通信部16ごとに電源状態を規定する複数の電源モードPMModeに応じて、ドライバ181の電力供給状態の上限を設定するとともに、アプリケーションプログラム(API)によるドライバ181の電力供給状態の設定を前記電力供給状態の上限に応じて制限する。このため、電源モードに応じてドライバ181の電力供給状態の上限を設定して各部に電源電力を供給できるとともに、アプリケーションプログラムによるドライバ181の電力供給状態の設定を前記電力供給状態の上限以下となるよう制限でき、装置全体を統括して自在に電源管理を行うことができる。
【0107】
また、バックライトの電源管理では、電源モードPMModeに応じた電力供給状態の上限としてMaskValueを設定し、MaskValueと、APIにより設定された入力部12を介するユーザ入力に応じたUserValueとからFixedValueを算出し、ドライバ181のバックライトドライバの電力供給状態としてFixedValueを設定する。このため、電源モードPMModeに応じてバックライトドライバの電力供給状態の上限としてMaskValueを適切に設定でき、ユーザ入力に応じたUserValueをMaskValueにより適切に制限してFixedValueでバックライト142を適切に電源管理できる。
【0108】
また、電源モードPMModeは、電源が乾電池183である場合に対応するMode3、Mode4を含み、電源が乾電池183である場合に、Mode3、Mode4に応じたドライバ181の電力供給状態の上限を設定できる。例えば、バックライト142のMaskValue=50%の設定や、通信部16の無線LANの不可設定である。このため、電源が乾電池183である場合の特性に応じた適切な電源管理を行うことができる。
【0109】
また、電源モードPMModeは、疑似オフ状態に対応するMode2、Mode4を含み、疑似オフ状態である場合に、Mode2、Mode4に応じたドライバ181の電力供給状態の上限を設定できる。例えば、バックライト142のMaskValue=0%の設定や、入力部12のキーパッドのキー入力を受け付けない設定、通信部16の無線LANの低消費電力モードの設定である。このため、疑似オフ状態の特性に応じた適切な電源管理を行うことができる。
【0110】
なお、上記実施の形態における記述は、本発明に係る携帯端末装置及びプログラムの一例であり、これに限定されるものではない。
【0111】
上記実施の形態では、携帯端末装置としてハンディターミナルを用いる構成としたが、PDA(Personal Digital Assistant),携帯型コンピュータ,携帯電話等、他の携帯端末装置としてもよい。
【0112】
また、上記実施の形態では、表示部14(LCD、バックライト)、入力部12(のキーパッド)、通信部16(の無線LAN通信)について、疑似オフを用いたシステム電源管理を行う構成としたが、これに限定されるものではない。例えば、携帯端末装置におけるブザー等の音出力部、バイブレータ、LED(Light Emitting Diode)等の点灯部等、他の部品における疑似オフを用いたシステム電源管理を行う構成としてもよい。
【0113】
また、上記実施の形態におけるハンディターミナル1の各構成要素の細部構成及び細部動作に関しては、本発明の趣旨を逸脱することのない範囲で適宜変更可能であることは勿論である。
【図面の簡単な説明】
【0114】
【図1】本発明に係る実施の形態のハンディターミナルの構成を示すブロック図である。
【図2】ハンディターミナルの電源管理の概略図である。
【図3】電源モードとモード状態との対応関係を示す図である。
【図4】疑似オフ及び乾電池の電源モードにおけるハンディターミナルの各部の状態を示す図である。
【図5】設定フラグテーブルの構成を示す図である。
【図6】電源管理処理を示すフローチャートである。
【図7】電源管理処理における電源オン処理を示すフローチャートである。
【図8】電源管理処理における疑似オフのオン処理を示すフローチャートである。
【図9】電源管理処理における疑似オフのオフ処理を示すフローチャートを示す。
【図10】システム疑似オフ設定処理を示すフローチャートである。
【図11】バックライトのドライバレジューム処理を示すフローチャートである。
【図12】バックライト更新処理を示すフローチャートである。
【図13】バックライトの電源イベント処理を示すフローチャートである。
【図14】バックライト設定処理を示すフローチャートである。
【図15】キーの電源イベント処理を示すフローチャートである。
【図16】キーの有効切替設定処理を示すフローチャートである。
【図17】キー入力処理を示すフローチャートである。
【図18】通信の電源イベント処理を示すフローチャートである。
【図19】通信のドライバレジューム処理を示すフローチャートである。
【符号の説明】
【0115】
1 ハンディターミナル
11 CPU
12 入力部
13 RAM
14 表示部
141 LCD
142 バックライト
15 記憶部
16 通信部
17 フラッシュメモリ
18 電源部
181 ドライバ
182 Li−ion電池
183 乾電池
184 電源検出部
19 バス
【技術分野】
【0001】
本発明は、携帯端末装置及びプログラムに関する。
【背景技術】
【0002】
従来、ハンディターミナル等の携帯端末装置において、省電力のための電源管理機能が知られている。例えば、OS(Operating System)プログラム等によるのシステム管理として、一定時間キー入力がなされないと装置全体の電源をオフするAPO(Auto Power Off)機能があった(例えば、特許文献1参照)。
【0003】
また、無線通信部を備え、無線通信機能を有する携帯端末装置がある。この携帯端末装置において、電源オフした状態から電源オンすると、無線通信の初期化に時間を要し、通信の確立までに時間が掛かってしまう。このため、電源オフ状態から電源オンした場合にすぐに無線通信の確立を行うために、疑似オフモードを有する装置が考えられている。疑似オフモードになると、見かけ上、表示部などがオフされており、装置全体の電源がオフされているように見えるが、無線通信部の電源はオンのままである。そして、疑似オフモードから通常の動作状態に戻ると、すぐに無線通信機能が使用可能となる。
【0004】
また、各種アプリケーションプログラムにより、携帯端末装置の各部の電源制御がなされていた。
【特許文献1】特開2002−182805号公報
【発明の開示】
【発明が解決しようとする課題】
【0005】
しかし、上記従来の携帯端末装置では、APOにより装置全体が完全に電源オフされてしまうため、APOと、装置の一部を起動しておく疑似オフモードとの併用ができなかった。
【0006】
また、従来のアプリケーションプログラムによる電源制御では、各アプリケーションがバラバラに電源制御するため、装置全体を統括して電源管理を行うことができなかった。
【0007】
本発明の課題は、装置全体を統括して自在に電源管理を行うことである。
【課題を解決するための手段】
【0008】
上記課題を解決するために、請求項1に記載の発明の携帯端末装置は、
複数のデバイスと、
電源電力を出力する電源と、
前記電源から出力される電源電力を前記複数のデバイスへ電力供給して駆動させる駆動手段と、
前記デバイスごとに電源状態を規定する複数の電源モードに応じて、前記駆動手段の電力供給状態の上限を設定するとともに、アプリケーションプログラムによる前記駆動手段の電力供給状態の設定を前記電力供給状態の上限に応じて制限する制御手段と、を備える。
【0009】
請求項2に記載の発明は、請求項1に記載の携帯端末装置において、
情報の入力を受け付ける入力手段を備え、
前記制御手段は、前記電源モードに応じて規定された電力供給状態の規定値を設定し、アプリケーションプログラムにより前記入力手段を介して受け付けた電力供給状態の入力値と前記規定値とを用いて電力供給状態の決定値を算出し、前記駆動手段の電力供給状態を前記算出した決定値で設定する。
【0010】
請求項3に記載の発明は、請求項1又は2に記載の携帯端末装置において、
前記複数の電源モードは、電源が乾電池である場合の電源モードを含み、
電源が乾電池であることを検出する検出手段を備え、
前記制御手段は、前記検出手段により電源が乾電池であることが検出された場合に、電源が乾電池である場合の電源モードに応じて前記駆動手段の電力供給状態の上限を設定する。
【0011】
請求項4に記載の発明は、請求項1から3のいずれか一項に記載の携帯端末装置において、
前記複数の電源モードは、見かけ上電源オフ状態の疑似オフ状態である場合の電源モードを含み、
前記制御手段は、疑似オフ状態である場合の電源モードに応じて前記駆動手段の電力供給状態の上限を設定する。
【0012】
請求項5に記載の発明のプログラムは、
コンピュータを、
複数のデバイス、
電源電力を出力する電源、
前記電源から出力される電源電力を前記複数のデバイスへ電力供給して駆動させる駆動手段、
前記デバイスごとに電源状態を規定する複数の電源モードに応じて、前記駆動手段の電力供給状態の上限を設定するとともに、アプリケーションプログラムによる前記駆動手段の電力供給状態の設定を前記電力供給状態の上限に応じて制限する制御手段、
として機能させる。
【発明の効果】
【0013】
本発明によれば、装置全体を統括して自在に電源管理を行うことができる。
【発明を実施するための最良の形態】
【0014】
以下、添付図面を参照して本発明に係る好適な実施の形態を詳細に説明する。なお、本発明は、図示例に限定されるものではない。
【0015】
図1〜図9を参照して本発明に係る実施の形態を説明する。先ず、図1を参照して本実施の形態の装置構成を説明する。図1に、本実施の形態のハンディターミナル1の構成を示す。
【0016】
本実施の形態の携帯端末装置としてのハンディターミナル1は、情報の入力、表示及び無線通信機能を有する装置である。図1に示すように、ハンディターミナル1は、CPU(Central Processing Unit)11、デバイスとしての入力部12、RAM(Random Access Memory)13、表示部14、ROM15、デバイスとしての通信部16、フラッシュメモリ17、電源部18、等を備えて構成され、各部がバス19を介して接続される。
【0017】
表示部14は、デバイスとしてのLCD(Liquid Crystal Display)141、バックライト142を備えて構成される。電源部18は、駆動手段としてのドライバ181と、電源としてのLi−ion電池182、乾電池183と、検出手段としての電源検出部184と、を備えて構成される。
【0018】
CPU11は、ハンディターミナル1の各部を中央制御する。CPU11は、ROM15に記憶されているシステムプログラム及び各種アプリケーションプログラムの中から指定されたプログラムをRAM13に展開し、RAM13に展開されたプログラムとの協働で、各種処理を実行する。CPU11は、プログラムとの協働により制御手段として機能する。
【0019】
CPU11は、後述する電源管理プログラムとの協働により、電源キー押下等の電源イベントの発生に応じて電源モードを切替えるとともに、電源イベントを発行してドライバ181に通知する。また、CPU11は、後述するシステム疑似オフ設定プログラムとの協働により、入力部12を介する設定入力に基づいて、システム疑似オフの有効/無効をフラッシュメモリ17の設定フラグテーブル171に設定する。
【0020】
また、CPU11は、電源イベントプログラムとして後述するバックライトの電源イベントプログラムとの協働により、電源モードに応じて、ドライバ181のバックライトドライバに対し、電力供給状態の上限としてのマスク値MaskValueを設定し、MaskValueにより電力供給状態のユーザ入力値であるUserValueを制限したFixedValueをバックライトドライバに設定する。また、CPU11は、後述するバックライト設定プログラムとの協働により、入力部12を介する設定入力に基づいて、UserValueをフラッシュメモリ17の設定フラグテーブル171に設定する。
【0021】
入力部12は、文字、数字等を入力するためキーを有するキーパッド、電源のオン/オフを入力するための電源キー、システムのリセットを入力するためのリセットキー等を備え、操作者から押下入力された各キーの入力信号をCPU11に出力する。また、入力部12は、表示部14と一体にタッチパネルを構成することとしてもよい。
【0022】
RAM13は、揮発性のメモリであり、実行される各種プログラムやこれら各種プログラムに係るデータ等を格納するワークエリアを有し、情報を一時的に格納する。
【0023】
表示部14は、CPU11からの表示信号に従って画面表示を行う。LCD141は、CPU11からの表示信号に従って表示画面のパターンを形成する。バックライト142は、LCD141への透過光を出射する。表示部14は、LCD141に表示信号に基づく表示画面のパターンを形成させ、バックライト142から出射される透過光によるLCD141の透過により表示画面を表示させる。本実施の形態では、表示部14が、LCD141による表示部であるが、これに限定されるものではなく、ELD(ElectroLuminescent Display)等、他の表示部としてもよい。
【0024】
ROM15は、各種プログラム及び各種データを読み出し可能に記憶する。ROM15は、後述する電源管理プログラム、システム疑似オフ設定プログラム、バックライトの電源イベントプログラム、バックライト設定プログラム、キーの電源イベントプログラム、キーの有効切替設定プログラム、キー入力処理プログラム、通信の電源イベントプログラムを記憶する。
【0025】
通信部16は、無線LAN(Local Area Network)の通信方式で外部機器と各種情報の通信を行う。本実施の形態では、通信部16が、無線LAN方式による通信部とするが、これに限定されるものではなく、他の通信方式の通信部としてもよい。
【0026】
電源部18は、ハンディターミナル1の各部に電源電力を供給する。ドライバ181は、電源から出力された電源電力をハンディターミナル1の各部へ電力供給し駆動させる。ドライバ181は、ハンディターミナル1の各部に用意されている。本実施の形態では、ドライバ181が、入力部12のキーパッドへの電力供給を行うキードライバ、LCD141への電力供給を行うLCDドライバ、バックライト142への電力供給を行うバックライトドライバ、通信部16への電力供給を行う通信部ドライバ、等を備えるものとする。
【0027】
電源部18は、電源としてLi−ion電池182、乾電池183を使用可能である。Li−ion電池182は、電池容量が大きく長時間大きな電力量を供給可能である。乾電池183は、電池容量が小さく供給する電力量も小さい。このため、本実施の形態では、電源としてLi−ion電池182を用いる場合と、乾電池183を用いる場合とに分けて、電源制御を異にする。例えば、乾電池183を用いる場合に、通信部16の無線LAN通信を禁止する。
なお、電源としては、Li−ion電池182、乾電池183のいずれか1つが電源部18に備えられるものであり、通常はLi−ion電池182が備えられる。また、乾電池183が使用される場合は、災害発生や停電等のLi−ion電池182が充電できない場合である。
【0028】
また、電源部18は、図示しない電池蓋及び電池挿入部を備え、ユーザが電池蓋を外して電池挿入部にLi−ion電池182または乾電池183のいずれかをセットでき、またLi−ion電池182または乾電池183を交換可能である。また、電源部18は、図示しない電池蓋の検出部を備え、その検出部により電池蓋が外されたことを検出すると、その旨の信号をCPU11に送信する。CPU11は、電池蓋が外された旨の信号を電源部18から受信すると、ハンディターミナル1を強制的に完全な電源オフの状態にする。完全な電源オフの状態とは、ハンディターミナル1の各部に電源電力供給を完全に停止している状態である。
【0029】
電源検出部184は、電源がLi−ion電池182又は乾電池183であるかを検出して、その検出結果をCPU11に出力する。
【0030】
次に、図2及び図3を参照して、本実施の形態の電源管理の概略を説明する。図2に、ハンディターミナル1の電源管理の概略を示す。図3に、電源モードとモード状態との対応関係を示す。
【0031】
図2に示すように、本実施の形態の電源制御は、CPU11で実行されるシステムプログラムによる電源制御と、同じくアプリケーションプログラムによる電源制御とに分かれる。システムプログラムによる電源管理では、電源(Li-ion電池182、乾電池183)からハンディターミナル1の各部(バックライト142、LCD141、通信部16、入力部12のキーパッド等)への電力供給状態の上限を設定する。この電力供給状態の上限の設定は、元栓の開放状態(度合い)に例えられる。
【0032】
また、電源管理のためのシステムプログラムは、電力供給状態を設定する電源管理層と、電源管理層により設定された電力供給状態に応じて電源に関する制御を行うサポート層とに分けられる。電源管理層は、電源イベントに応じて、電源モードを遷移させ、その電源モードに対応する電源状態をドライバ181に指示する。電源モードは、PM(Power Management)Modeとして、Mode0〜Mode4まで用意されており、各電源モードで電源状態(元栓状態)を異にする。
【0033】
図3に示すように、電源モードMode0は、電源がLi−ion電池182であり、完全な電源オフであるモード状態に対応する電源モードである。電源モードMode1は、電源がLi−ion電池182であり、通常動作時の電源オンであるモード状態に対応する電源モードである。電源モードMode2は、電源がLi−ion電池182であり、疑似オフであるモード状態に対応する電源モードである。
【0034】
疑似オフとは、低消費電力と電源オン状態へのスタンバイとのため、ハンディターミナル1の各部の電力供給状態を低く設定した状態であり、完全な電源オフ状態とは異なる。疑似オフ状態への遷移が可能なモードをシステム疑似オフモードとする。
【0035】
電源モードMode3は、電源が乾電池183であり、通常動作時の電源オンであるモード状態に対応する電源モードである。電源モードMode4は、電源が乾電池183であり、疑似オフであるモード状態に対応する電源モードである。サポート層は、各電源モードに従い、APO(Auto Power Off)、ABO(Auto Back light Off)、コントロールパネルの設定等の各種処理を行う。
【0036】
アプリケーション層は、各種アプリケーションプログラムである。アプリケーションプログラムが処理を行う際、ドライバ181に対して電力供給状態の変更の指示をすることが可能である。しかし、システムプログラムにより設定された元栓状態(電力供給状態の上限)より大きい電源電力供給を行う電力供給状態に設定することはできない。
【0037】
次に、図4を参照して、疑似オフ及び乾電池の電源モードにおけるハンディターミナル1の各部の状態を説明する。図4に、疑似オフ及び乾電池の電源モードにおけるハンディターミナル1の各部の状態を示す。
【0038】
PMModeがMode2である場合に、ハンディターミナル1は疑似オフ状態である。疑似オフ状態では、図4に示すように、CPU11の動作周波数が104[MHz]に設定され、バックライト142の透過光の出力上限が100%に設定され、通信部16の無線LAN通信が低消費電力モードに設定され、入力部12のキーパッドのキー入力が受け付けられなく、LCD141がオフされる。CPU11の動作周波数は、通常時(Mode1)で504[MHz]であり、システム疑似オフ状態では、通常時に比べて動作周波数が小さく、低消費電力となる。
【0039】
また、低消費電力モードとは、無線LAN通信において例えば、少なくともセンターとの通信接続が切れずに、またローミングができ、通信部16の消費電力が低いモードである。低消費電力モードは、例えば、通信部16のビーコン監視間隔を長くすることにより実現する。
【0040】
また、疑似オフ状態では、ハンディターミナル1の表示部14が表示動作しておらず、見かけ上、電源オフ状態になっている。しかし、無線LAN通信が低消費電力モードで動作しているので、コネクションを接続したまま接続されており、電源オン状態に遷移されても、センターへの再接続等、通信の初期化が不要で、速やかに通信が可能となる。
【0041】
PMModeがMode3である場合に、ハンディターミナル1は乾電池モードの電源オン状態である。乾電池モードの電源オン状態では、図4に示すように、CPU11の動作周波数が通常と同じ504[MHz]に設定され、バックライト142の透過光の出力上限が50%に設定され、通信部16の無線LAN通信が不可に設定され、入力部12のキーパッド及びLCDは通常時と同様にオンされる。PMModeがMode4である場合には、PMModeがMode3の状態において、さらに例えば、CPU11、入力部12のキーパッド、LCD141の状態がMode2の状態に設定される。
【0042】
次に、図5を参照して、フラッシュメモリ17に記憶する情報を説明する。図5に、設定フラグテーブル171の構成を示す。
【0043】
フラッシュメモリ17には、図5に示すように、設定フラグテーブル171が記憶される。設定フラグテーブル171は、後述する電源管理処理等の実行時に使用する、システム疑似オフ、PMMode、MaskValue、UserValue、FixedValue、PrevBat、KeyMask、UserKeyMask、TMask、LowPower、疑似オフフラグを項目として有する。
【0044】
システム疑似オフとは、疑似オフ状態への遷移が可能か否かを示す情報であり、有効(疑似オフ状態への遷移可能)又は無効が設定される。MaskValueは、電源モード(PMMode)に応じたバックライト142の明るさ(バックライト142へ供給する電源電力量に対応)のマスク値であり、例えば、0〜100%の値で表される。UserValueは、ユーザに設定入力されるバックライト142の明るさ(バックライト142へ供給する電源電力量に対応)の入力値であり、例えば、0〜9の値で表される。FixedValueは、MaskValue及びUserValuに応じて算出されるバックライト142の明るさ(バックライト142へ供給する電源電力量に対応)の決定値である。PrevBatは、電源イベント発生前の電源の種類を示し、Li−ion電池182又は乾電池183が設定される。
【0045】
KeyMaskは、電源モード(PMMode)に応じた入力部12のキーパッドへ供給する電源電力量のマスク値であり、有効(電力供給しキー入力受け付け可能)か無効(電力供給せずキー入力受け付け不可)かが設定される。UserKeyMaskは、ユーザにより設定入力される入力部12のキーパッドへ供給する電源電力量のマスク値であり、有効(電力供給しキー入力受け付け可能)か無効(電力供給せずキー入力受け付け不可)かが設定される。
【0046】
TMaskは、電源モード(PMMode)に応じた通信部16へ供給する電源電力量のマスク値であり、有効(電力供給し無線LAN通信可能)か無効(電力供給せず無線LAN通信不可)かが設定される。LowPowerは、電源モード(PMMode)に応じた通信部16へ供給する電源電力に関し低消費電力モードが有効か無効かが設定される。
【0047】
疑似オフフラグは、現在疑似オフ状態であるか否かを示すフラグであり、例えば、1が疑似オフ状態であることを示し、0が疑似オフ状態でないことを示す。
【0048】
次に、図6〜図19を参照して、本実施の形態におけるハンディターミナル1の動作を説明する。先ず、図6〜図9を参照して、ハンディターミナル1で実行される電源管理処理を説明する。図6に、電源管理処理の流れを示す。図7に、電源管理処理における電源オン処理の流れを示す。図8に、電源管理処理における疑似オフのオン処理の流れを示す。図9に、電源管理処理における疑似オフのオフ処理の流れを示す。
【0049】
図6に示すように、ハンディターミナル1において、完全な電源オフの状態からユーザによる入力部12の電源キー押下を受け付けたこと(トリガT1)、又は電源オン、電源オフ若しくは疑似オフの状態からユーザによる入力部12のリセットキーの押下入力を受け付けたこと(トリガT2)が発生すると、ROM15から読み出されて適宜RAM13に展開された電源管理処理プログラムと、CPU11との協働により、電源管理処理が実行される。また、フラッシュメモリ17に記憶される設定フラグテーブル171のシステム疑似オフは、デフォルトでは、無効に設定されているものとする。
【0050】
トリガT1の後、電源オン処理が実行される(ステップS1)。電源オン処理は、詳細に後述される。そして、ハンディターミナル1がレジューム状態であることを示すレジュームメッセージが発行され、各アプリケーションプログラムへ通知される(ステップS2)。レジューム状態とは、完全な電源オフの状態から電源オンの状態になった状態をいう。そして、各種アプリケーションプログラムの実行によるアプリケーション処理が実行される(ステップS3)。アプリケーション処理は、例えば、キー割り込み処理である。
【0051】
また、トリガT2の後、ステップS1と同様の電源オン処理が実行される(ステップS4)。そして、フラッシュメモリ17に記憶される設定フラグテーブル171のシステム疑似オフが無効に設定され(ステップS5)、ステップS3に移行される。
【0052】
ステップS3の実行中に、電源部18の電池蓋が開けられたこと又は電源電力供給中のLi−ion電池182若しくは乾電池183の電池電圧が低下したこと(トリガT3)が発生すると、ステップS1に移行される。
【0053】
ステップS3の実行中に、ユーザによる入力部12の電源キーの押下入力を受け付けたこと、一定時間キー入力がなくAPOによる電源オフが開始されたこと、又は実行中のアプリケーションプログラムから電源オフ指示を受信したこと(トリガT4)が発生した場合に、設定フラグテーブル171のシステム疑似オフが有効であるか否かが判別される(ステップS6)。システム疑似オフが無効である場合(ステップS6;NO)、ステップS1に移行される。
【0054】
設定フラグテーブル171のシステム疑似オフが有効である場合(ステップS6;YES)、フラッシュメモリ17に記憶される設定フラグテーブル171の疑似オフフラグが0(現在電源オン状態中)であるか否かが判別される(ステップS7)。疑似オフフラグが1の場合(ステップS7;NO)、疑似オフのオン処理が実行され(ステップS8)、ステップS3に移行される。疑似オフのオン処理は、詳細に後述される。疑似オフフラグが0の場合(ステップS7;YES)、疑似オフのオフ処理が実行され(ステップS9)、ステップS3に移行される。疑似オフのオフ処理は、詳細に後述される。
【0055】
図7を参照して、ステップS1,S4の電源オン処理を説明する。先ず、電源検出部184により電源の種類が検出され、その検出結果に応じて、現在の電源が乾電池183であるか否かが判別される(ステップS11)。現在の電源がLi−ion電池182である場合(ステップS11;NO)、フラッシュメモリ17に記憶される設定フラグテーブル171のPrevBattが乾電池(乾電池183)であるか否かが判別される(ステップS12)。
【0056】
PrevBattがLi−ion電池である場合(ステップS12;NO)、設定フラグテーブル171のPrevBattが現在の電池種別(Li−ion電池(Li−ion電池182)又は乾電池(乾電池183))に更新される(ステップS13)。
【0057】
PrevBattが乾電池である場合(ステップS12;YES)、フラッシュメモリ17に記憶される設定フラグテーブル171のPMModeがMode4であるか否かが判別される(ステップS14)。PMModeがMode4でない場合(ステップS14;NO)、設定フラグテーブル171のPMModeがMode1に更新され(ステップS15)、ステップS13に移行される。PMModeがMode4である場合(ステップS14;YES)、設定フラグテーブル171のPMModeがMode2に更新され(ステップS16)、ステップS13に移行される。
【0058】
現在の電源が乾電池183である場合(ステップS11;YES)、フラッシュメモリ17に記憶される設定フラグテーブル171のPrevBattがLi−ion電池(Li−ion電池182)であるか否かが判別される(ステップS17)。PrevBattが乾電池である場合(ステップS17;NO)、ステップS13に移行される。
【0059】
PrevBattがLi−ion電池である場合(ステップS17;YES)、フラッシュメモリ17に記憶される設定フラグテーブル171のPMModeがMode2であるか否かが判別される(ステップS18)。PMModeがMode2である場合(ステップS18;YES)、設定フラグテーブル171のPMModeがMode4に更新され(ステップS19)、ステップS13に移行される。PMModeがMode2でない場合(ステップS18;NO)、設定フラグテーブル171のPMModeがMode3に更新され(ステップS20)、ステップS13に移行される。
【0060】
ステップS13の実行後、ドライバ181に対するドライバレジューム処理が実行され(ステップS21)、電源オン処理が終了する。ドライバレジューム処理は、詳細に後述される。
【0061】
図8を参照して、ステップS8の疑似オフのオン処理を説明する。先ず、電源検出部184により電源の種類が検出され、その検出結果に応じて、現在の電源が乾電池183であるか否かが判別される(ステップS31)。現在の電源が乾電池183である場合(ステップS31;YES)、フラッシュメモリ17に記憶される設定フラグテーブル171のPMModeがMode4からMode3に更新される(ステップS32)。そして、電源イベントが発生した旨を示す電源イベントが発行され、ドライバ181に通知される(ステップS33)。電源イベントの通知により、ドライバ181のバックライトドライバ等の各ドライバに対して、後述する各電源イベント処理が実行される。
【0062】
現在の電源がLi−ion電池182である場合(ステップS31;NO)、設定フラグテーブル171のPMModeがMode2からMode1に更新され(ステップS34)、ステップS33に移行される。
【0063】
ステップS33の実行後、ハンディターミナル1がレジューム状態であることを示すレジュームメッセージが発行され、各アプリケーションプログラムへ通知される(ステップS35)。そして、フラッシュメモリ17に記憶される設定フラグテーブル171の疑似オフフラグが1から0に更新され(ステップS36)、疑似オフのオン処理が終了する。
【0064】
図9を参照して、ステップS9の疑似オフのオフ処理を説明する。先ず、電源検出部184により電源の種類が検出され、その検出結果に応じて、現在の電源が乾電池183であるか否かが判別される(ステップS41)。現在の電源が乾電池183である場合(ステップS41;YES)、フラッシュメモリ17に記憶される設定フラグテーブル171のPMModeがMode3からMode4に更新される(ステップS42)。そして、電源イベントが発生した旨を示す電源イベントが発行され、ドライバ181に通知される(ステップS43)。
【0065】
現在の電源がLi−ion電池182である場合(ステップS41;NO)、設定フラグテーブル171のPMModeがMode1からMode2に更新され(ステップS44)、ステップS43に移行される。
【0066】
ステップS43の実行後、ハンディターミナル1がサスペンド状態であることを示すサスペンドメッセージが発行され、各アプリケーションプログラムへ通知される(ステップS45)。サスペンド状態とは、ハンディターミナル1が完全に電源オフされた状態をいうが、本実施の形態では、疑似オフ状態とする。そして、フラッシュメモリ17に記憶される設定フラグテーブル171の疑似オフフラグが0から1に更新され(ステップS46)、疑似オフのオフ処理が終了する。
【0067】
次いで、図10を参照して、システム疑似オフ設定処理を説明する。図10に、システム疑似オフ設定処理の流れを示す。
【0068】
ハンディターミナル1において、ユーザによる入力部12を介するシステム疑似オフの設定入力を受け付け、システム疑似オフの設定入力がなされたことをトリガとして、ROM15から読み出されて適宜RAM13に展開されたシステム疑似オフ設定プログラムと、CPU11との協働により、システム疑似オフ設定処理が実行される。このシステム疑似オフ設定プログラムは、API(Application Programming Interface:ライブラリ関数)である。
【0069】
先ず、ユーザからのシステム疑似オフの設定入力が有効であるか否かが判別される(ステップS51)。システム疑似オフの設定入力が有効である場合(ステップS51;YES)、フラッシュメモリ17に記憶される設定フラグテーブル171のシステム疑似オフが「有効」という設定内容に更新され(ステップS52)、システム疑似オフ設定処理が終了する。システム疑似オフの設定入力が無効である場合(ステップS51;NO)、フラッシュメモリ17に記憶される設定フラグテーブル171のシステム疑似オフが「無効」という設定内容に更新され(ステップS53)、システム疑似オフ設定処理が終了する。
【0070】
次いで、図11及び図12を参照して、ステップS21のドライバレジューム処理の一つであるバックライトのドライバレジューム処理を説明する。図11に、バックライトのドライバレジューム処理の流れを示す。図12に、バックライト更新処理の流れを示す。
【0071】
バックライトのドライバレジューム処理は、ドライバ181のバックライトドライバに対して行われるレジューム処理である。図11に示すように、先ず、フラッシュメモリ17に記憶される設定フラグテーブル171のPMModeが何であるかが判別される(ステップS61)。PMModeは、Mode1、 Mode2、Mode3又はMode4である。
【0072】
PMModeがMode3である場合(ステップS61;Mode3)、フラッシュメモリ17に記憶される設定フラグテーブル171のMaskValueが50%に更新される(ステップS62)。そして、バックライト更新処理が実行され(ステップS63)、バックライトのドライバレジューム処理が終了する。バックライト更新処理は、詳細に後述される。
【0073】
PMModeがMode2又はMode4である場合(ステップS61;Mode2又はMode4)、フラッシュメモリ17に記憶される設定フラグテーブル171のMaskValueが0%に更新され(ステップS64)、ステップS63に移行される。PMModeがMode1である場合(ステップS61;Mode1)、フラッシュメモリ17に記憶される設定フラグテーブル171のMaskValueが100%に更新され(ステップS65)、ステップS63に移行される。
【0074】
図12を参照して、ステップS63のバックライト更新処理を説明する。先ず、フラッシュメモリ17に記憶される設定フラグテーブル171のUserValue及びMaskValueが読み出され、そのUserValue及びMaskValueを用いて、FixedValue=UserValue×MaskValue/100が算出される(ステップS71)。そして、設定フラグテーブル171のFixedValueが、ステップS71で算出されたFixedValueの値で更新され、更新したFixedValueがドライバ181のバックライトドライバに設定され(ステップS72)、バックライト更新処理が終了する。ステップS72では、設定されたFixedValueに基づいて、ドライバ181のバックライトドライバにより、Li−ion電池182又は乾電池183から出力される電源電力がバックライト142へ電力供給され駆動される。
【0075】
次いで、図13を参照して、バックライトの電源イベント処理を説明する。図13に、バックライトの電源イベント処理の流れを示す。バックライトの電源イベント処理は、ステップS33,S43の電源イベント発行に応じて、ドライバ181のバックライトドライバに対して実行される処理である。
【0076】
ハンディターミナル1において、ステップS33,S43の電源イベント発行をトリガとして、ROM15から読み出されて適宜RAM13に展開されたバックライトの電源イベント処理プログラムと、CPU11との協働により、バックライトの電源イベント処理が実行される。
【0077】
図13に示すように、先ず、電源イベントに対応して、フラッシュメモリ17に記憶される設定フラグテーブル171のPMModeが何であるかが判別される(ステップS81)。PMModeは、Mode1、 Mode2、Mode3又はMode4である。
【0078】
PMModeがMode3である場合(ステップS81;Mode3)、フラッシュメモリ17に記憶される設定フラグテーブル171のMaskValueが50%に更新される(ステップS82)。そして、図12に示したバックライト更新処理が実行され(ステップS83)、バックライトの電源イベント処理が終了する。
【0079】
PMModeがMode2又はMode4である場合(ステップS81;Mode2又はMode4)、フラッシュメモリ17に記憶される設定フラグテーブル171のMaskValueが0%に更新され(ステップS84)、ステップS83に移行される。PMModeがMode1である場合(ステップS81;Mode1)、フラッシュメモリ17に記憶される設定フラグテーブル171のMaskValueが100%に更新され(ステップS85)、ステップS83に移行される。
【0080】
次いで、図14を参照して、バックライト設定処理を説明する。図14に、バックライト設定処理の流れを示す。
【0081】
ハンディターミナル1において、ユーザによる入力部12を介するUserValueの設定入力を受け付け、UserValueの設定入力がなされたことをトリガとして、ROM15から読み出されて適宜RAM13に展開されたバックライト設定プログラムと、CPU11との協働により、バックライト設定処理が実行される。バックライト設定プログラムは、API(Application Program Interface:ライブラリ関数)である。
【0082】
先ず、ユーザからのUserValueの入力値が、規定値内(許容範囲0〜9)であるか否かが判別される(ステップS91)。UserValueの入力値が規定値内である場合(ステップS91;YES)、フラッシュメモリ17に記憶される設定フラグテーブル171のUserValueが入力値で更新される(ステップS92)。そして、図12に示すバックライト更新処理が実行され(ステップS93)、バックライト更新処理が終了する。
【0083】
UserValueの入力値が規定値内でない場合(ステップS91;NO)、UserValueの入力値が設定されないエラー処理が実行され(ステップS94)、バックライト更新処理が終了する。
【0084】
次いで、図15を参照して、キーの電源イベント処理を説明する。図15に、キーの電源イベント処理の流れを示す。キーの電源イベント処理は、ステップS33,S43の電源イベント発行に応じて、ドライバ181のキードライバに対して実行される処理である。
【0085】
ハンディターミナル1において、ステップS33,S43の電源イベント発行をトリガとして、ROM15から読み出されて適宜RAM13に展開されたキーの電源イベント処理プログラムと、CPU11との協働により、キーの電源イベント処理が実行される。
【0086】
図15に示すように、先ず、電源イベントに対応して、フラッシュメモリ17に記憶される設定フラグテーブル171のPMModeが何であるかが判別される(ステップS101)。PMModeは、Mode1、 Mode2、Mode3又はMode4である。
【0087】
PMModeがMode2又はMode4である場合(ステップS101;Mode2又はMode4)、フラッシュメモリ17に記憶される設定フラグテーブル171のKeyMaskが「有効」という設定内容に更新され(ステップS102)、キーの電源イベント処理が終了する。PMModeがMode1又はMode3である場合(ステップS101;Mode1又はMode3)、フラッシュメモリ17に記憶される設定フラグテーブル171のKeyMaskが「無効」という設定内容に更新され(ステップS103)、キーの電源イベント処理が終了する。
【0088】
次いで、図16を参照して、キーの有効切替設定処理を説明する。図16に、キーの有効切替設定処理の流れを示す。キーの有効切替設定処理は、ユーザの入力に基づいて、疑似オフ時の入力部12のキーパッドの入力受け付けの有効/無効の設定を行う処理である。
【0089】
ハンディターミナル1において、ユーザによる入力部12を介するUserKeyMaskの設定入力を受け付け、UserKeyMaskの設定入力がなされたことをトリガとして、ROM15から読み出されて適宜RAM13に展開されたキーの有効切替設定プログラムと、CPU11との協働により、キーの有効切替設定処理が実行される。キーの有効切替設定プログラムは、API(Application Program Interface:ライブラリ関数)である。
【0090】
先ず、ユーザからのUserKeyMaskの入力内容が有効であるか否かが判別される(ステップS111)。UserKeyMaskの入力内容が有効である場合(ステップS111;YES)、フラッシュメモリ17に記憶される設定フラグテーブル171のUserKeyMaskが「有効」という設定内容に更新され(ステップS112)、キーの有効切替設定処理が終了する。UserKeyMaskの入力内容が無効である場合(ステップS111;NO)、フラッシュメモリ17に記憶される設定フラグテーブル171のUserKeyMaskが「無効」という設定内容に更新され(ステップS113)、キーの有効切替設定処理が終了する。
【0091】
次いで、図17を参照して、キー入力処理を説明する。図17に、キー入力処理の流れを示す。キーの入力処理は、キー入力が有効である場合に、ユーザによる入力部12のキーパッドのキー入力受付を行う処理である。
【0092】
ハンディターミナル1において、ユーザによる入力部12のキーパッドを介するキー押下がなされたことをトリガとして、ROM15から読み出されて適宜RAM13に展開されたキー入力プログラムと、CPU11との協働により、キー入力処理が実行される。
【0093】
図17に示すように、先ず、フラッシュメモリ17に記憶される設定フラグテーブル171のKeyMaskが無効であるか否かが判別される(ステップS121)。KeyMaskが無効である場合(ステップS121;無効)、フラッシュメモリ17に記憶される設定フラグテーブル171のUserKeyMaskが無効であるか否かが判別される(ステップS122)。
【0094】
UserKeyMaskが無効である場合(ステップS122;無効)、ユーザによる入力部12のキーパッドを介するキー入力受付がドライバ181のキードライバに設定され(ステップS123)、キー入力処理が終了する。ステップS123では、ドライバ181のキードライバにより、Li−ion電池182又は乾電池183から出力される電源電力が入力部12のキーパッドへ電力供給され駆動される。KeyMaskが有効である場合(ステップS121;有効)、又はUserKeyMaskが有効である場合(ステップS122;有効)、ドライバ181のキードライバにより、Li−ion電池182又は乾電池183から出力される電源電力が入力部12のキーパッドへ電力供給されることなく、キー入力処理が終了する。
【0095】
なお、キー入力に関しては、ステップS21のドライバレジューム処理が実行されない。なぜなら、乾電池モードであるか否かで動作が変らないからである。
【0096】
次いで、図18を参照して、通信の電源イベント処理を説明する。図18に、通信の電源イベント処理の流れを示す。通信の電源イベント処理は、ステップS33,S43の電源イベント発行に応じて、ドライバ181の通信部ドライバに対して実行される処理である。
【0097】
ハンディターミナル1において、ステップS33,S43の電源イベント発行をトリガとして、ROM15から読み出されて適宜RAM13に展開された通信の電源イベント処理プログラムと、CPU11との協働により、通信の電源イベント処理が実行される。
【0098】
図18に示すように、先ず、電源イベントに対応して、フラッシュメモリ17に記憶される設定フラグテーブル171のPMModeが何であるかが判別される(ステップS131)。PMModeは、Mode1、 Mode2、Mode3又はMode4である。
【0099】
PMModeがMode2又はMode4である場合(ステップS131;Mode2又はMode4)、フラッシュメモリ17に記憶される設定フラグテーブル171のLowPowerが「有効」という設定内容に更新される(ステップS132)。そして、フラッシュメモリ17に記憶される設定フラグテーブル171のTMask 及びLowPowerに応じた無線LAN通信がドライバ181の通信部ドライバに設定され(ステップS133)、通信の電源イベント処理が終了する。ステップS133において、TMask及びLowPowerが無効の場合に、通信部16で通常の無線LAN通信が実行され、TMaskが無効でLowPowerが有効の場合に、通信部16で低消費モードの無線LAN通信が実行され、TMaskが有効の場合に、通信部16で無線LAN通信が停止される。また、ドライバ181の通信部ドライバにより、TMask及びLowPowerに基づいて、Li−ion電池182又は乾電池183から出力される電源電力が通信部16へ電力供給され駆動される。
【0100】
PMModeがMode1又はMode3である場合(ステップS131;Mode1又はMode3)、フラッシュメモリ17に記憶される設定フラグテーブル171のLowPowerが「無効」という設定内容に更新され(ステップS134)、ステップS133に移行される。
【0101】
次いで、図19を参照して、ステップS21のドライバレジューム処理の一つである通信のドライバレジューム処理を説明する。図19に、通信のドライバレジューム処理の流れを示す。
【0102】
通信のドライバレジューム処理は、ドライバ181の通信部ドライバに対して行われるレジューム処理である。図19に示すように、先ず、フラッシュメモリ17に記憶される設定フラグテーブル171のPMModeが何であるかが判別される(ステップS141)。PMModeは、Mode1、 Mode2、Mode3又はMode4である。
【0103】
PMModeがMode3又はMode4である場合(ステップS141;Mode3又はMode4)、フラッシュメモリ17に記憶される設定フラグテーブル171のTMaskが「有効」という設定内容に更新される(ステップS142)。そして、ステップS133と同様の無線LAN処理が実行され(ステップS143)、通信のドライバレジューム処理が終了する。
【0104】
PMModeがMode2である場合(ステップS141;Mode2)、フラッシュメモリ17に記憶される設定フラグテーブル171のTMaskが「無効」という設定内容に更新される(ステップS144)。そして、設定フラグテーブル171のLowPowerが「有効」という設定内容に更新され(ステップS145)、ステップS143に移行される。
【0105】
PMModeがMode1である場合(ステップS141;Mode1)、フラッシュメモリ17に記憶される設定フラグテーブル171のTMaskが「無効」という設定内容に更新される(ステップS146)。そして、設定フラグテーブル171のLowPowerが「無効」という設定内容に更新され(ステップS147)、ステップS143に移行される。
【0106】
以上、本実施の形態によれば、ハンディターミナル1は、表示部14(LCD141、バックライト142)、入力部12(キーパッド)、通信部16ごとに電源状態を規定する複数の電源モードPMModeに応じて、ドライバ181の電力供給状態の上限を設定するとともに、アプリケーションプログラム(API)によるドライバ181の電力供給状態の設定を前記電力供給状態の上限に応じて制限する。このため、電源モードに応じてドライバ181の電力供給状態の上限を設定して各部に電源電力を供給できるとともに、アプリケーションプログラムによるドライバ181の電力供給状態の設定を前記電力供給状態の上限以下となるよう制限でき、装置全体を統括して自在に電源管理を行うことができる。
【0107】
また、バックライトの電源管理では、電源モードPMModeに応じた電力供給状態の上限としてMaskValueを設定し、MaskValueと、APIにより設定された入力部12を介するユーザ入力に応じたUserValueとからFixedValueを算出し、ドライバ181のバックライトドライバの電力供給状態としてFixedValueを設定する。このため、電源モードPMModeに応じてバックライトドライバの電力供給状態の上限としてMaskValueを適切に設定でき、ユーザ入力に応じたUserValueをMaskValueにより適切に制限してFixedValueでバックライト142を適切に電源管理できる。
【0108】
また、電源モードPMModeは、電源が乾電池183である場合に対応するMode3、Mode4を含み、電源が乾電池183である場合に、Mode3、Mode4に応じたドライバ181の電力供給状態の上限を設定できる。例えば、バックライト142のMaskValue=50%の設定や、通信部16の無線LANの不可設定である。このため、電源が乾電池183である場合の特性に応じた適切な電源管理を行うことができる。
【0109】
また、電源モードPMModeは、疑似オフ状態に対応するMode2、Mode4を含み、疑似オフ状態である場合に、Mode2、Mode4に応じたドライバ181の電力供給状態の上限を設定できる。例えば、バックライト142のMaskValue=0%の設定や、入力部12のキーパッドのキー入力を受け付けない設定、通信部16の無線LANの低消費電力モードの設定である。このため、疑似オフ状態の特性に応じた適切な電源管理を行うことができる。
【0110】
なお、上記実施の形態における記述は、本発明に係る携帯端末装置及びプログラムの一例であり、これに限定されるものではない。
【0111】
上記実施の形態では、携帯端末装置としてハンディターミナルを用いる構成としたが、PDA(Personal Digital Assistant),携帯型コンピュータ,携帯電話等、他の携帯端末装置としてもよい。
【0112】
また、上記実施の形態では、表示部14(LCD、バックライト)、入力部12(のキーパッド)、通信部16(の無線LAN通信)について、疑似オフを用いたシステム電源管理を行う構成としたが、これに限定されるものではない。例えば、携帯端末装置におけるブザー等の音出力部、バイブレータ、LED(Light Emitting Diode)等の点灯部等、他の部品における疑似オフを用いたシステム電源管理を行う構成としてもよい。
【0113】
また、上記実施の形態におけるハンディターミナル1の各構成要素の細部構成及び細部動作に関しては、本発明の趣旨を逸脱することのない範囲で適宜変更可能であることは勿論である。
【図面の簡単な説明】
【0114】
【図1】本発明に係る実施の形態のハンディターミナルの構成を示すブロック図である。
【図2】ハンディターミナルの電源管理の概略図である。
【図3】電源モードとモード状態との対応関係を示す図である。
【図4】疑似オフ及び乾電池の電源モードにおけるハンディターミナルの各部の状態を示す図である。
【図5】設定フラグテーブルの構成を示す図である。
【図6】電源管理処理を示すフローチャートである。
【図7】電源管理処理における電源オン処理を示すフローチャートである。
【図8】電源管理処理における疑似オフのオン処理を示すフローチャートである。
【図9】電源管理処理における疑似オフのオフ処理を示すフローチャートを示す。
【図10】システム疑似オフ設定処理を示すフローチャートである。
【図11】バックライトのドライバレジューム処理を示すフローチャートである。
【図12】バックライト更新処理を示すフローチャートである。
【図13】バックライトの電源イベント処理を示すフローチャートである。
【図14】バックライト設定処理を示すフローチャートである。
【図15】キーの電源イベント処理を示すフローチャートである。
【図16】キーの有効切替設定処理を示すフローチャートである。
【図17】キー入力処理を示すフローチャートである。
【図18】通信の電源イベント処理を示すフローチャートである。
【図19】通信のドライバレジューム処理を示すフローチャートである。
【符号の説明】
【0115】
1 ハンディターミナル
11 CPU
12 入力部
13 RAM
14 表示部
141 LCD
142 バックライト
15 記憶部
16 通信部
17 フラッシュメモリ
18 電源部
181 ドライバ
182 Li−ion電池
183 乾電池
184 電源検出部
19 バス
【特許請求の範囲】
【請求項1】
複数のデバイスと、
電源電力を出力する電源と、
前記電源から出力される電源電力を前記複数のデバイスへ電力供給して駆動させる駆動手段と、
前記デバイスごとに電源状態を規定する複数の電源モードに応じて、前記駆動手段の電力供給状態の上限を設定するとともに、アプリケーションプログラムによる前記駆動手段の電力供給状態の設定を前記電力供給状態の上限に応じて制限する制御手段と、を備える携帯端末装置。
【請求項2】
情報の入力を受け付ける入力手段を備え、
前記制御手段は、前記電源モードに応じて規定された電力供給状態の規定値を設定し、アプリケーションプログラムにより前記入力手段を介して受け付けた電力供給状態の入力値と前記規定値とを用いて電力供給状態の決定値を算出し、前記駆動手段の電力供給状態を前記算出した決定値で設定する請求項1に記載の携帯端末装置。
【請求項3】
前記複数の電源モードは、電源が乾電池である場合の電源モードを含み、
電源が乾電池であることを検出する検出手段を備え、
前記制御手段は、前記検出手段により電源が乾電池であることが検出された場合に、電源が乾電池である場合の電源モードに応じて前記駆動手段の電力供給状態の上限を設定する請求項1又は2に記載の携帯端末装置。
【請求項4】
前記複数の電源モードは、見かけ上電源オフ状態の疑似オフ状態である場合の電源モードを含み、
前記制御手段は、疑似オフ状態である場合の電源モードに応じて前記駆動手段の電力供給状態の上限を設定する請求項1から3のいずれか一項に記載の携帯端末装置。
【請求項5】
コンピュータを、
複数のデバイス、
電源電力を出力する電源、
前記電源から出力される電源電力を前記複数のデバイスへ電力供給して駆動させる駆動手段、
前記デバイスごとに電源状態を規定する複数の電源モードに応じて、前記駆動手段の電力供給状態の上限を設定するとともに、アプリケーションプログラムによる前記駆動手段の電力供給状態の設定を前記電力供給状態の上限に応じて制限する制御手段、
として機能させるためのプログラム。
【請求項1】
複数のデバイスと、
電源電力を出力する電源と、
前記電源から出力される電源電力を前記複数のデバイスへ電力供給して駆動させる駆動手段と、
前記デバイスごとに電源状態を規定する複数の電源モードに応じて、前記駆動手段の電力供給状態の上限を設定するとともに、アプリケーションプログラムによる前記駆動手段の電力供給状態の設定を前記電力供給状態の上限に応じて制限する制御手段と、を備える携帯端末装置。
【請求項2】
情報の入力を受け付ける入力手段を備え、
前記制御手段は、前記電源モードに応じて規定された電力供給状態の規定値を設定し、アプリケーションプログラムにより前記入力手段を介して受け付けた電力供給状態の入力値と前記規定値とを用いて電力供給状態の決定値を算出し、前記駆動手段の電力供給状態を前記算出した決定値で設定する請求項1に記載の携帯端末装置。
【請求項3】
前記複数の電源モードは、電源が乾電池である場合の電源モードを含み、
電源が乾電池であることを検出する検出手段を備え、
前記制御手段は、前記検出手段により電源が乾電池であることが検出された場合に、電源が乾電池である場合の電源モードに応じて前記駆動手段の電力供給状態の上限を設定する請求項1又は2に記載の携帯端末装置。
【請求項4】
前記複数の電源モードは、見かけ上電源オフ状態の疑似オフ状態である場合の電源モードを含み、
前記制御手段は、疑似オフ状態である場合の電源モードに応じて前記駆動手段の電力供給状態の上限を設定する請求項1から3のいずれか一項に記載の携帯端末装置。
【請求項5】
コンピュータを、
複数のデバイス、
電源電力を出力する電源、
前記電源から出力される電源電力を前記複数のデバイスへ電力供給して駆動させる駆動手段、
前記デバイスごとに電源状態を規定する複数の電源モードに応じて、前記駆動手段の電力供給状態の上限を設定するとともに、アプリケーションプログラムによる前記駆動手段の電力供給状態の設定を前記電力供給状態の上限に応じて制限する制御手段、
として機能させるためのプログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【公開番号】特開2009−59062(P2009−59062A)
【公開日】平成21年3月19日(2009.3.19)
【国際特許分類】
【出願番号】特願2007−224182(P2007−224182)
【出願日】平成19年8月30日(2007.8.30)
【出願人】(000001443)カシオ計算機株式会社 (8,748)
【Fターム(参考)】
【公開日】平成21年3月19日(2009.3.19)
【国際特許分類】
【出願日】平成19年8月30日(2007.8.30)
【出願人】(000001443)カシオ計算機株式会社 (8,748)
【Fターム(参考)】
[ Back to top ]