以下、図面を参照しつつ、本発明の実施の形態について説明する。以下の説明では、同一の部分には同一の符号を付してある。それらの名称および機能も同じである。したがってそれらについての詳細な説明は繰り返さない。
<電子機器の外観>
図1は、本実施の形態に係る電子機器100の外観を示した図である。図1を参照して、電子機器100は、第1の筐体100Aと第2の筐体100Bとを含む。
第1の筐体100Aと第2の筐体100Bとは、ヒンジ100Cにより折畳み可能に接続されている。第1の筐体100Aは、光センサ内蔵液晶パネル140を備える。第2の筐体100Bは、光センサ内蔵液晶パネル240を備える。このように、電子機器100は、光センサ内蔵液晶パネルを2つ備える。第2の筐体100Bは、さらに、左クリックキー241、センターキー242および右クリックキー243を備える。
本実施の形態では、電子機器100は、ノート型のパーソナルコンピュータとして構成される。なお、電子機器100は、PDA(Personal Digital Assistant)、携帯型電話機、電子辞書などの表示機能を有するデバイスとして構成されてもよい。
<ハードウェア構成について>
次に、図2を参照して、電子機器100の具体的構成の一態様について説明する。図2は、電子機器100のハードウェア構成を表わすブロック図である。
電子機器100は、第1ユニット1001と、第2ユニット1002とを含む。第2ユニット1002は、電子機器100から着脱可能に第1ユニット1001に接続されている。第1ユニット1001は、本体装置101と、表示装置102とを含む。第2ユニット1002は、表示装置103と、本体装置104とを含む。
第1の筐体100Aは、表示装置102を含む。第2の筐体100Bは、本体装置101を含む。また、第2の筐体100Bは、第2ユニット1002を含む。
(第1ユニットについて)
本体装置101は、CPU(Central Processing Unit)110と、HDD(Hard Disc Drive)170と、RAM(Random Access Memory)171と、ROM(Read-Only Memory)172と、メモリカードリーダライタ173と、外部通信部174と、マイク175と、スピーカ176と、操作キー177と、電源スイッチ191と、電源回路192と、電源検出部193と、USB(Universal Serial Bus)コネクタ194と、アンテナ195と、LAN(Local Area Network)コネクタ196とを含む。各構成要素(110,171〜177,193)は、相互にデータバスDB1によって接続されている。メモリカードリーダライタ173には、メモリカード1731が装着される。
CPU110は、プログラムを実行する。操作キー177は、電子機器100の使用者による指示の入力を受ける。HDD170は、データの書込みおよび読出しが可能な記憶装置である。ただし、HDD170は、そのような記憶装置の一例である。電子機器100は、HDD170のかわりに、フラッシュメモリなどの記憶装置を用いてもよい。RAM171は、CPU110によるプログラムの実行により生成されたデータ、または操作キー177を介して入力されたデータを揮発的に格納する。ROM172は、データを不揮発的に格納する。また、ROM172は、EPROM(Erasable Programmable Read-Only Memory)やフラッシュメモリなどのデータの書込みおよび消去が可能なROMである。
外部通信部174は、他の電子機器と通信を行なう。具体的には、外部通信部174は、USBコネクタ194を介して、たとえば第2ユニット1002と通信を行なう。また、外部通信部174は、アンテナ195を介して、たとえば第2ユニット1002と無線通信を行なう。さらに、外部通信部174は、LANコネクタ196を介して、他の電子機器との間で有線通信を行なう。
なお、本体装置101は、Bluetooth(登録商標)以外の無線通信により、他の電子機器と通信を行なってもよい。たとえば、外部通信部174は、図示しない無線LANアンテナを介して、LANに接続された他の電子機器との間で無線通信を行なってもよい。あるいは、図示しない赤外線ポートを介して、他の電子機器との間で無線通信を行なってもよい。
電源スイッチ191は、電子機器100を起動させるためのスイッチである。
電源スイッチ191がオンすると、電源回路192は、電源検出部193を介して、データバスDB1に接続されている各構成要素と表示装置102とに電力を供給する。また、電源スイッチ191がオンすると、電源回路192は、電源検出部193を介することなく、外部通信部174に電力を供給する。
電源検出部193は、電源回路192からの出力を検出する。また、電源検出部193は、当該検出した出力に関する情報(たとえば、電圧値や電流値)を、CPU110に送る。
USBコネクタ194は、第1ユニット1001を第2ユニット1002に接続するために用いられる。なお、本体装置101は、USBコネクタ194に加えて他のUSBコネクタを備えていてもよい。
第1ユニット1001は、USBコネクタ194を介して、第2ユニット1002にデータを送信する。また、第1ユニット1001は、USBコネクタ194を介して、第2ユニット1002からデータを受信する。さらに、第1ユニット1001は、USBコネクタ194を介して、第2ユニット1002に電力を供給する。なお、第1ユニット1001は、電源回路192からの電力を、USBコネクタ194を介さず、直接に、第2ユニット1002に供給してもよい。
アンテナ195は、第1ユニット1001と、他の通信装置(たとえば第2ユニット1002)との間における、Bluetooth(登録商標)の規格に沿った通信に用いられる。LANコネクタ196は、電子機器100をLANに接続するために用いられる。
表示装置102は、ドライバ130と、光センサ内蔵液晶パネル140(以下、液晶パネル140と称する)と、内部IF178と、バックライト179と、画像処理エンジン180とを含む。
ドライバ130は、液晶パネル140およびバックライト179を駆動するための駆動回路である。ドライバ130に含まれる各種の駆動回路については、後述する。
液晶パネル140は、液晶ディスプレイの機能と光センサの機能とを備えたデバイスである。つまり、液晶パネル140は、液晶を用いた画像の表示と、光センサを用いたセンシングとを行うことができる。液晶パネル140の詳細については、後述する。
内部IF(Interface)178は、本体装置101と表示装置102との間で、データの遣り取りを仲介する。
バックライト179は、液晶パネル140の裏面に配置された光源である。バックライト179は、当該裏面に対して均一な光を照射する。
画像処理エンジン180は、ドライバ130を介して液晶パネル140の動作を制御する。ここで、当該制御は、内部IF178を介して本体装置101から送られてくる各種データに基づいて行われる。なお、当該各種データは、後述するコマンドを含む。また、画像処理エンジン180は、液晶パネル140から出力されるデータを処理し、処理したデータを内部IF178を介して本体装置101に送る。さらに、画像処理エンジン180は、ドライバ制御部181と、タイマ182と、信号処理部183とを含む。
ドライバ制御部181は、ドライバ130に対して制御信号を送ることによりドライバ130の動作を制御する。また、ドライバ制御部181は、本体装置101から送られてくるコマンドを解析する。そして、ドライバ制御部181は、当該解析の結果に基づいた制御信号をドライバ130に送る。ドライバ130の動作の詳細については、後述する。
タイマ182は、時刻情報を生成し、信号処理部183に対して時刻情報を送る。
信号処理部183は、上記光センサから出力されるデータを受け取る。ここで、上記光センサから出力されるデータはアナログデータであるため、信号処理部183は、まず当該アナログデータをデジタルデータに変換する。さらに、信号処理部183は、当該デジタルデータに対して、本体装置101から送られてくるコマンドの内容に応じたデータ処理を行う。そして、信号処理部183は、上記データ処理を行った後のデータと、タイマ182から取得した時刻情報とを含んだデータ(以下、応答データと称する)を本体装置101に送る。また、信号処理部183は、後述するスキャンデータを連続して複数格納できるRAM(図示せず)を備えている。
上記コマンドは、上記光センサによりセンシングを指示するセンシングコマンドを含む。当該センシングコマンドの詳細および上記応答データの詳細については、後述する(図7,図8,および図14)。
なお、タイマ182は、必ずしも画像処理エンジン180に備えられている必要はない。たとえば、タイマ182は、表示装置102内における、画像処理エンジン180の外部に備えられていてもよい。あるいは、タイマ182は、本体装置101に備えられていてもよい。また、マイク175およびスピーカ176は、電子機器100が常に備える構成ではなく、電子機器100の実施例によっては、マイク175およびスピーカ176のいずれかあるいは両方を有さない構成であってもよい。
ここで、表示装置102は、システム液晶を含んでいる。なお、システム液晶とは、液晶パネル140の周辺機器を当該液晶パネル140のガラス基板上に一体形成することにより得られるデバイスである。本実施の形態では、ドライバ130(バックライト179を駆動する回路を除く)と、内部IF178と、画像処理エンジン180とが、液晶パネル140のガラス基板上に一体形成されている。なお、表示装置102が、必ずしもシステム液晶を用いて構成されている必要はなく、ドライバ130(バックライト179を駆動する回路を除く)と、内部IF178と、画像処理エンジン180とが、上記ガラス基板以外の基板に構成されていてもよい。
(第2ユニットについて)
第2ユニット1002は、第1ユニット1001から電力の供給を受ける。具体的には、後述するUSBコネクタ294と第1ユニット1001のUSBコネクタ194とを接続することにより、第2ユニット1002は、第1ユニット1001の電源回路192から電力の供給を受ける。ただし、第2ユニット1002への電力の供給方法はこれに限られない。例えば、第2ユニット1001は、電源回路192から直接に電力の供給を受けてもよい。
本体装置104は、CPU210と、RAM271と、ROM272と、タイマ273と、左クリックキー241と、センターキー242と、右クリックキー243と、外部通信部274と、電源検出部293と、USBコネクタ294と、アンテナ295と、信号強度検出部297とを含む。各構成要素(210,241〜243,271,272,273,274,293)は、相互にデータバスDB2によって接続されている。
CPU210は、プログラムを実行する。RAM271は、CPU210によるプログラムの実行により生成されたデータを揮発的に格納する。ROM272は、データを不揮発的に格納する。また、ROM272は、EPROM(Erasable Programmable Read-Only Memory)やフラッシュメモリなどのデータの書込みおよび消去が可能なROMである。
外部通信部274は、他の電子機器との間で通信を行なう。具体的には、外部通信部274は、USBコネクタ294を介して、たとえば第1ユニット1001と通信を行なう。また、外部通信部274は、アンテナ295を介して、たとえば第1ユニット1001と通信を行なう。
なお、本体装置104は、Bluetooth(登録商標)以外の無線通信により、他の電子機器(たとえば、第1ユニット1001)と通信を行なってもよい。たとえば、外部通信部274は、図示しない赤外線ポートを介して、他の電子機器との間で無線通信を行なってもよい。
信号強度検出部297は、アンテナ295を介して受信した信号についての強度を検出する。そして、信号強度検出部297は、検出した強度を外部通信部274に送る。
USBコネクタ294は、第2ユニット1002を第1ユニット1001に接続するために用いられる。
第2ユニット1002は、USBコネクタ294を介して、第1ユニット1001にデータを送信する。また、第2ユニット1002は、USBコネクタ294を介して、第1ユニット1001からデータを受信する。さらに、第2ユニット1002は、上述したように、USBコネクタ294を介して、第1ユニット1001から電力の供給を受ける。なお、第2ユニット1002は、第1ユニット1001から供給された電力を、図示しないバッテリに蓄電する。
アンテナ295は、第2ユニット1002と、たとえば第1ユニット1001との間における、Bluetooth(登録商標)の規格に沿った通信に用いられる。
電源検出部293は、USBコネクタ294を介して給電された電力を検出する。また、電源検出部293は、当該検出した電力についての情報を、CPU210に送る。
また、本体装置104は、赤外線通信を行なう機能を備えていてもよい。
表示装置103は、ドライバ230と、光センサ内蔵液晶パネル240(以下、「液晶パネル240」と称する)と、内部IF278と、バックライト279と、画像処理エンジン280とを含む。画像処理エンジン280は、ドライバ制御部281と、タイマ282と、信号処理部283とを含む。
表示装置103は、表示装置102と同様な構成を有する。つまり、ドライバ230、液晶パネル240、内部IF278、バックライト279、および画像処理エンジン280は、表示装置102における、ドライバ130、液晶パネル140、内部IF178、バックライト179、画像処理エンジン180と同じ構成をそれぞれ有する。ドライバ制御部281、タイマ282、および信号処理部283は、表示装置102における、ドライバ制御部181、タイマ182、信号処理部183と同じ構成をそれぞれ有する。したがって、表示装置103に含まれる各機能ブロックについての説明は、繰り返さない。
ところで、電子機器100における処理は、各ハードウェアおよびCPU110により実行されるソフトウェアによって実現される。このようなソフトウェアは、ROM172またはHDD170に予め記憶されている場合がある。また、ソフトウェアは、メモリカード1731その他の記憶媒体に格納されて、プログラム製品として流通している場合もある。あるいは、ソフトウェアは、いわゆるインターネットに接続されている情報提供事業者によってダウンロード可能なプログラム製品として提供される場合もある。このようなソフトウェアは、メモリカードリーダライタ173その他の読取装置によりその記憶媒体から読み取られて、あるいは、通信部174または通信IF(図示せず)を介してダウンロードされた後、ROM172またはHDD170に一旦格納される。そのソフトウェアは、CPU110によってROM172またはHDD170から読み出され、RAM171に実行可能なプログラムの形式で格納される。CPU110は、そのプログラムを実行する。
図2に示される電子機器100の本体装置101を構成する各構成要素は、一般的なものである。したがって、本発明の本質的な部分は、RAM171、ROM172またはHDD170、メモリカード1731その他の記憶媒体に格納されたソフトウェア、あるいはネットワークを介してダウンロード可能なソフトウェアであるともいえる。なお、電子機器100の本体装置101のハードウェアの動作は周知であるので、詳細な説明は繰り返さない。
なお、記憶媒体としては、メモリカードに限られず、CD−ROM、FD(Flexible Disk)、ハードディスク、磁気テープ、カセットテープ、光ディスク(MO(Magnetic Optical Disc)/MD(Mini Disc)/DVD(Digital Versatile Disc))、IC(Integrated Circuit)カード(メモリカードを除く)、光カード、マスクROM、EPROM、EEPROM(Electronically Erasable Programmable Read-Only Memory)、フラッシュROMなどの半導体メモリ等の固定的にプログラムを格納する媒体でもよい。
ここでいうプログラムとは、CPUにより直接実行可能なプログラムだけでなく、ソースプログラム形式のプログラム、圧縮処理されたプログラム、暗号化されたプログラム等を含む。
<光センサ内蔵液晶パネルの構成および駆動について>
次に、液晶パネル140の構成と、当該液晶パネル140の周辺回路の構成とについて説明する。図3は、液晶パネル140の構成と、当該液晶パネル140の周辺回路とを示した図である。
図3を参照して、液晶パネル140は、画素回路141と、光センサ回路144と、走査信号線Giと、データ信号線SRjと、データ信号線SGjと、データ信号線SBjと、センサ信号線SSjと、センサ信号線SDjと、読出信号線RWiと、リセット信号線RSiとを含む。なお、iは、1≦i≦mを満たす自然数であり、jは1≦j≦nを満たす自然数である。
また、図2に示した表示装置102のドライバ130は、液晶パネル140の周辺回路として、走査信号線駆動回路131と、データ信号線駆動回路132と、光センサ駆動回路133と、スイッチ134と、アンプ135とを含む。
走査信号線駆動回路131は、図2に示すドライバ制御部181から制御信号TC1を受ける。そして、走査信号線駆動回路131は、制御信号TC1に基づき、各走査信号線(G1〜Gm)に対して、走査信号線G1から順に予め定められた電圧を印加する。より詳しくは、走査信号線駆動回路131は、単位時間毎に走査信号線(G1〜Gm)の中から1つの走査信号線を順次選択し、当該選択した走査信号線に対して後述するTFT(Thin Film Transistor)142のゲートをターンオンできるだけの電圧(以下、ハイレベル電圧)を印加する。なお、選択されていない走査信号線に対しては、ハイレベル電圧を印加することなく、ローレベル電圧を印加したままとする。
データ信号線駆動回路132は、図2に示すドライバ制御部181から画像データ(DR,DG,DB)を受ける。そして、データ信号線駆動回路132は、3n個のデータ信号線(SR1〜SRn,SG1〜SGn,SB1〜SBn)に対して、上記単位時間毎に、1行分の画像データに対応する電圧を順次印加する。
なお、ここでは、いわゆる線順次方式と呼ばれる駆動方式を用いて説明したが、駆動方式はこれに限定されるものではない。
画素回路141は、1つの画素の輝度(透過率)を設定するための回路である。また、画素回路141は、マトリクス状にm×n個配されている。より詳しくは、画素回路141は、図3の縦方向にm個、横方向にn個配されている。
画素回路141は、Rサブピクセル回路141rと、Gサブピクセル回路141gと、Bサブピクセル回路141bとからなる。これら3つの回路(141r,141g,141b)は、それぞれ、TFT142と、画素電極と対向電極とからなる1組の電極対143と、図示しないコンデンサとを含む。
なお、n型のトランジスタとp型のトランジスタとを作れるCMOS(Complementary Metal Oxide Semiconductor)を実現できること、キャリア(電子または正孔)の移動速度がアモルファスシリコン薄膜トランジスタ(a-Si TFT)に比べて数百倍早いことなどから、表示装置102では、TFT142として多結晶シリコン薄膜トランジスタ(p-Si TFT)が用いられる。なお、TFT142は、n型チャネルの電界効果トランジスタであるとして説明する。ただし、TFT142がp型チャネルの電界効果トランジスタであってもよい。
Rサブピクセル回路141r内のTFT142のソースはデータ信号線SRjに接続されている。また、当該TFT142のゲートは走査信号線Giに接続されている。さらに、当該TFT142のドレインは、電極対143の画素電極に接続される。そして、画素電極と対向電極との間には、液晶が配される。なお、Gサブピクセル回路141gおよびBサブピクセル回路141bについても、各TFT142のソースが接続されるデータ信号線が異なる以外は、Rサブピクセル回路141rと同じ構成である。このため、これら2つの回路(141g,141b)についての説明は、繰り返さない。
ここで、画素回路141における輝度の設定について説明する。まず、走査信号線Giに上記ハイレベル電圧を印加する。当該ハイレベル電圧の印加により、TFT142のゲートがターンオンする。このようにTFT142のゲートがターンオンした状態で、各データ信号線(SRj,SGj,SBj)に対して、それぞれ指定された電圧(1画素分の画像データに対応する電圧)を印加する。これにより、当該指定された電圧に基づいた電圧が画素電極に印加される。その結果、画素電極と対向電極との間に電位差が生じる。この電位差に基づいて、液晶が応答し、画素の輝度は予め定められた輝度に設定される。なお、当該電位差は、上記図示しないコンデンサ(補助容量)によって、次のフレーム期間において走査信号線Giが選択されるまで保持される。
光センサ駆動回路133は、図2に示すドライバ制御部181から制御信号TC2を受ける。
そして、光センサ駆動回路133は、制御信号TC2に基づき、単位時間毎にリセット信号線(RS1〜RSm)の中から1つの信号線を順次選択し、当該選択した信号線に対して、予め定められたタイミングで通常よりもハイレベルな電圧VDDRを印加する。なお、選択されていないリセット信号線に対しては、選択されたリセット信号線に印加した電圧よりも低い電圧VSSRを印加したままとする。たとえば、電圧VDDRを0Vに、電圧VSSRを−5Vに設定すればよい。
また、光センサ駆動回路133は、制御信号TC2に基づき、単位時間毎に読出信号線(RW1〜RWm)の中から1つの信号線を順次選択し、当該選択した信号線に対して、予め定められたタイミングで通常よりもハイレベルな電圧VDDを印加する。なお、選択されていない読出信号線に対しては、上記電圧VSSRを印加したままとする。たとえば、VDDの値を8Vに設定すればよい。
なお、電圧VDDRを印加するタイミング、および電圧VDDを印加するタイミングについては、後述する。
光センサ回路144は、フォトダイオード145と、コンデンサ146と、TFT147とを含む。なお、以下では、TFT147がn型チャネルの電界効果トランジスタであるとして説明する。ただし、TFT147がp型チャネルの電界効果トランジスタであってもよい。
フォトダイオード145のアノードは、リセット信号線RSiに接続されている。一方、フォトダイオード145のカソードは、コンデンサ146の一方の電極に接続されている。また、コンデンサ146の他方の電極は、読出信号線RWiに接続されている。なお、以下では、フォトダイオード145とコンデンサ146との接続点をノードNと称する。
TFT147のゲートは、ノードNに接続されている。また、TFT147のドレインは、センサ信号線SDjに接続されている。さらに、TFT147のソースは、センサ信号線SSjに接続されている。光センサ回路144を用いたセンシングの詳細については、後述する。
スイッチ134は、センサ信号線(SD1〜SDn)に対して、予め定められた電圧を印加するか否かを切り換えるために設けられたスイッチである。スイッチ134の切り換え動作は、光センサ駆動回路133により行われる。なお、スイッチ134が導通状態となった場合にセンサ信号線(SD1〜SDn)に印加される電圧については、後述する。
アンプ135は、各センサ信号線(SS1〜SSn)から出力された電圧を増幅する。なお、増幅された電圧は、図2に示した信号処理部183に送られる。
なお、画素回路141を用いて画像を液晶パネル140に表示させるタイミングと、光センサ回路144を用いてセンシングするタイミングとについては、画像処理エンジン180が制御する。
図4は、液晶パネル140とバックライト179との断面図である。図4を参照して、液晶パネル140は、アクティブマトリクス基板151Aと、対向基板151Bと、液晶層152とを含む。対向基板151Bは、アクティブマトリクス基板151Aに対向して配されている。液晶層152は、アクティブマトリクス基板151Aと対向基板151Bとに挟まれている。バックライト179は、アクティブマトリクス基板151Aに関し液晶層152と反対側に配されている。
アクティブマトリクス基板151Aは、偏光フィルタ161と、ガラス基板162と、電極対143を構成する画素電極143aと、フォトダイオード145と、データ信号線157と、配向膜164とを含む。さらに、図4には示していないが、アクティブマトリクス基板151Aは、図3に示した、コンデンサ146と、TFT147と、TFT142と、走査信号線Giとを含む。
また、アクティブマトリクス基板151Aにおいては、バックライト179側から、偏光フィルタ161、ガラス基板162、画素電極143a、および配向膜164が、この順に配されている。フォトダイオード145とデータ信号線157とは、ガラス基板162の液晶層152側に形成されている。
対向基板151Bは、偏光フィルタ161と、ガラス基板162と、遮光膜163と、カラーフィルタ(153r,153g,153b)と、電極対143を構成する対向電極143bと、配向膜164とを含む。
また、対向基板151Bにおいては、液晶層152側から、配向膜164、対向電極143b、カラーフィルタ(153r,153g,153b)、ガラス基板162、および偏光フィルタ161が、この順に配されている。遮光膜163は、カラーフィルタ(153r,153g,153b)と同一の層に形成されている。
カラーフィルタ153rは、赤色の波長の光を透過させるフィルタである。カラーフィルタ153gは、緑色の波長の光を透過させるフィルタである。カラーフィルタ153bは、青色の波長の光を透過させるフィルタである。ここで、フォトダイオード145は、カラーフィルタ153bに対向する位置に配されている。
液晶パネル140は、外光やバックライト179などの光源により発せられた光を遮ったり又は当該光を透過させたりすることによって、画像の表示をする。具体的には、液晶パネル140は、画素電極143aと対向電極143bとの間に電圧を印加することにより液晶層152の液晶分子の向きを変化させ、上記光を遮ったり、あるいは透過させる。ただし、液晶だけでは光を完全に遮ることができないため、特定の偏光方向の光のみを透過させる偏光フィルタ161を配置している。
なお、フォトダイオード145の位置は、上記の位置に限定されるものではなく、カラーフィルタ153rに対向する位置やカラーフィルタ153gに対向する位置に設けることも可能である。
ここで、光センサ回路144の動作について説明する。図5は、光センサ回路144を動作させる際のタイミングチャートを示した図である。図5において、電圧VINTは、光センサ回路144内のノードNにおける電位を示している。また、電圧VPIXは、図3に示したセンサ信号線SSjからの出力電圧であって、アンプ135によって増幅される前の電圧を示している。
以下では、光センサ回路144をリセットするためのリセット期間と、光センサ回路144を用いて光をセンシングするためのセンシング期間と、センシングした結果を読み出す読出期間とに分けて説明する。
まず、リセット期間について説明する。リセット期間においては、リセット信号線RSiに印加する電圧を、ローレベル(電圧VSSR)からハイレベル(電圧VDDR)へと瞬間的に切り換える。一方、読出信号線RWiに印加する電圧は、ローレベル(電圧VSSR)のままとする。このように、リセット信号線RSiに上記ハイレベルの電圧を印加することにより、フォトダイオード145の順方向(アノード側からカソード側)に電流が流れ始める。その結果、ノードNの電位である電圧VINTは、以下の式(1)で示す値となる。なお、式(1)では、フォトダイオード145における順方向の電圧降下量をVfとしている。
VINT=VSSR+|VDDR−VSSR|−Vf … (1)
それゆえ、ノードNの電位は、図5に示すとおり、電圧VDDRよりもVfだけ小さな値となる。
ここで、電圧VINTは、TFT147のゲートをターンオンさせる閾値以下であるため、センサ信号線SSjからの出力はない。このため、電圧VPIXは変化しない。また、コンデンサ146の電極間には、上記電圧VINT分の差が生じる。このため、コンデンサ146には、当該差に応じた電荷が蓄積される。
次に、センシング期間について説明する。リセット期間に続くセンシング期間においては、リセット信号線RSiに印加する電圧は、ハイレベル(電圧VDDR)からローレベル(電圧VSSR)へと瞬間的に切り換わる。一方、読出信号線RWiに印加する電圧は、ローレベル(電圧VSSR)のままとする。
このように、リセット信号線RSiに印加する電圧をローレベルに変化させることにより、ノードNの電位は、リセット信号線RSiの電圧および読出信号線RWiの電圧よりも高くなる。このため、フォトダイオード145においては、カソード側の電圧がアノード側の電圧よりも高くなる。つまり、フォトダイオード145は、逆バイアスの状態となる。このような逆バイアスの状態において、光源からの光をフォトダイオード145が受光すると、フォトダイオード145のカソード側からアノード側へと電流が流れ始める。その結果、図5に示すとおり、ノードNの電位(つまり、電圧VINT)は時間の経過とともに低くなる。
なお、このように電圧VINTが低下し続けるため、TFT147のゲートはターンオンした状態にはならない。それゆえ、センサ信号線SSjからの出力はない。このため、電圧VPIXは変化しない。
次に、読出期間について説明する。センシング期間に続く読出期間においては、リセット信号線RSiに印加する電圧をローレベル(電圧VSSR)のままとする。一方、読出信号線RWiに印加する電圧は、ローレベル(電圧VSSR)からハイレベル(電圧VDD)へと瞬間的に切り換わる。ここで、電圧VDDは、電圧VDDRよりも高い値である。
このように、読出信号線RWiにハイレベルの電圧を瞬間的に印加することにより、図5に示すとおり、コンデンサ146を介してノードNの電位が引き上げられる。なお、ノードNの電位の上昇幅は、読出信号線RWiに印加する電圧に応じた値となる。ここで、ノードNの電位(つまり、電圧VINT)が、TFT147のゲートをターンオンさせる閾値以上まで引き上げられるため、TFT147のゲートがターンオンする。
この際、TFT147のドレイン側に接続されたセンサ信号線SDj(図3参照)に予め一定電圧を印加しておけば、TFT147のソース側に接続されたセンサ信号線SSjからは、図5のVPIXのグラフに示すとおり、ノードNの電位に応じた電圧が出力される。
ここで、フォトダイオード145が受光する光の量(以下、受光量と称する)が少ないと、図5のVINTのグラフに示す直線の傾きが緩やかになる。その結果、電圧VPIXは、受光量が多い場合に比べて高くなる。このように、光センサ回路144は、フォトダイオード145の受光量に応じて、センサ信号線SSjに出力する電圧の値を変化させる。
ところで、上記においては、m×n個存在する光センサ回路のうち、1つの光センサ回路144に着目して、その動作を説明した。以下では、液晶パネル140における各光センサ回路の動作について説明する。
まず、光センサ駆動回路133は、n個のセンサ信号線(SD1〜SDn)の全てに対して、予め定められた電圧を印加する。次に、光センサ駆動回路133は、リセット信号線RS1に対して、通常よりもハイレベルな電圧VDDRを印加する。なお、他のリセット信号線(RS2〜RSm)および読出信号線(RW1〜RWm)については、ローレベルの電圧を印加したままの状態とする。これにより、図3における1行目のn個の光センサ回路が、上述したリセット期間に入る。その後、1行目のn個の光センサ回路は、センシング期間に入る。さらに、その後、1行目のn個の光センサ回路は、読出期間に入る。
なお、n個のセンサ信号線(SD1〜SDn)の全てに対して予め定められた電圧を印加するタイミングは、上記のタイミングに限定されず、少なくとも読出期間前に印加されるタイミングであればよい。
1行目のn個の光センサ回路の読出期間が終了すると、光センサ駆動回路133は、リセット信号線RS2に対して、通常よりもハイレベルな電圧VDDRを印加する。つまり、2行目のn個の光センサ回路のリセット期間に入る。リセット期間が終了すると、2行目のn個の光センサ回路は、センシング期間に入り、その後は、読出期間に入る。
以降は、上述した処理が、順に、3行目のn個の光センサ回路、4行目のn個の光センサ回路、…m行目のn個の光センサ回路に対して行われる。その結果、センサ信号線(SS1〜SSn)からは、1行目のセンシング結果、2行目のセンシング結果、…、m行目のセンシング結果が、この順に出力される。
なお、表示装置102においては、上記のように行毎にセンシングが行われるとともに、行毎にセンシング結果が液晶パネル140から出力される。このため、以下では、液晶パネル140から出力される1行目からm行目までのm行分の電圧に関するデータに対して、信号処理部183が上述したデータ処理を行った後のデータを、「スキャンデータ」と称する。つまり、スキャンデータとは、スキャン対象物(たとえば、ユーザの指)をスキャンすることにより得られる画像データを指す。また、当該スキャンデータに基づいて表示された画像を、「スキャン画像」と称する。さらに、以下では、センシングを「スキャン」と称する。
また、上記においては、m×n個の光センサ回路全てを用いてスキャンを行う構成を例に挙げたが、これに限定されるものではない。予め選択された光センサ回路を用いて、液晶パネル140の表面の一部の領域に関してスキャンを行うことも構成としてもよい。
以下では、電子機器100が、両構成のいずれの構成をも採れるものとする。さらに、当該構成間の切り換えは、操作キー177を介した入力などに基づく本体装置101から送られてくるコマンドにより行われるものとする。なお、液晶パネル140の表面の一部の領域に関してスキャンを行う場合、画像処理エンジン180が、スキャン対象領域の設定を行う。なお、当該領域の設定を、操作キー177を介してユーザが指定できる構成としてもよい。
このように、液晶パネル140の表面の一部の領域に関してスキャンを行う場合には、画像の表示に関し、以下のような利用の態様がある。1つ目は、上記一部の領域(以下、スキャン領域と称する)以外の表面の領域において、画像を表示させる態様である。2つ目は、上記スキャン領域以外の表面の領域において、画像を表示させない態様である。いずれの態様とするかは、本体装置101から画像処理エンジン180に送られてくるコマンドに基づく。
図6は、液晶パネル140とバックライト179との断面図であって、スキャンの際にフォトダイオード145がバックライト179からの光を受光する構成を示した図である。
図6を参照して、ユーザの指900が液晶パネル140の表面に接触している場合、バックライト179から発せられた光の一部は、当該接触している領域ではユーザの指900(略平面)にて反射される。そして、フォトダイオード145は、当該反射された光を受光する。
また、指900が接触していない領域においても、バックライト179から発せられた光の一部は、ユーザの指900にて反射される。この場合においても、フォトダイオード145は、当該反射された光を受光する。ただし、当該領域においては液晶パネル140の表面に指900が接触していないため、指900が接触している領域よりも、フォトダイオード145の受光量は少なくなる。なお、バックライト179から発せられた光のうち、ユーザの指900に到達しない光のほとんどについては、フォトダイオード145は受光できない。
ここで、バックライト179を、少なくともセンシング期間においては点灯させておくことにより、光センサ回路144は、ユーザの指900により反射した光の光量に応じた電圧をセンサ信号線SSjから出力することができる。このように、バックライト179の点灯と消灯とを制御することにより、液晶パネル140では、指900の接触位置、指900の接触している範囲(指900の押圧力によって定まる)、液晶パネル140の表面に対する指900の方向などに応じて、センサ信号線(SS1からSSn)から出力される電圧が変化することになる。
以上により、表示装置102は、指900によって光が反射されることにより得られる像(以下、反射像とも称する)をスキャンすることができる。
なお、指900以外のスキャン対象物としては、スタイラスなどが挙げられる。
ところで、本実施の形態においては、電子機器100の表示装置として液晶パネルを例に挙げて説明しているが、液晶パネルの代わりに有機EL(Electro-Luminescence)パネルなどの他のパネルを用いてもよい。
<データについて>
次に、第1ユニット1001と第2ユニット1002との間でやり取りされるコマンド、および第1ユニット1001内の本体装置101と表示装置102との間でやり取りされるコマンドについて説明する。
図7は、コマンドの概略構成を示した図である。図7を参照して、コマンドは、ヘッダDA01と、第1フィールドDA02と、第2フィールドDA03と、第3フィールドDA04と、第4フィールドDA05と、第5フィールドDA06と、予備のデータ領域DA07とを含む。
図8は、種別「000」のコマンド(つまり、センシングコマンド)を説明するための図である。CPU110は、種別「000」のコマンド(以下、「第1コマンド」と称する)を、第1ユニット1001の本体装置101から第2ユニット1002に送る。あるいは、CPU110は、第1コマンドを、本体装置101から表示装置102に送る。なお、以下においては、CPU110が第1コマンドを第1ユニット1001の本体装置101から第2ユニット1002に送る場合を例に挙げて説明する。
CPU110は、ヘッダDA01に、コマンドの種別(「000」)、コマンドの送信先等を書き込む。CPU110は、第1フィールドDA02に、番号が「1」のタイミングの値を書き込む。CPU110は、第2フィールドDA03に、番号が「2」のデータ種別の値を書き込む。CPU110は、第3フィールドDA04に、番号が「3」の読取方式の値を書き込む。CPU110は、第4フィールドDA05に、番号が「4」の画像階調の値を書き込む。CPU110は、第5フィールドDA06に、番号が「5」の解像度の値を書き込む。
第1フィールドDA02に「00」が設定された第1コマンドは、画像処理エンジン280に対して、そのときのスキャンデータの送信を要求する。つまり、センシング第1コマンドは、当該第1コマンドを画像処理エンジン280が受信した後に、液晶パネル240の光センサ回路を用いてスキャンすることにより得られるスキャンデータの送信を要求する。また、第1フィールドDA02に「01」が設定された第1コマンドは、スキャン結果に変化があったときのスキャンデータの送信を要求する。さらに、第1フィールドDA02に「10」が設定された第1コマンドは、一定周期毎にスキャンデータの送信を要求する。
第2フィールドDA03に「001」が設定された第1コマンドは、部分画像における中心座標の座標値の送信を要求する。また、第2フィールドDA03に「010」が設定された第1コマンドは、スキャン結果が変化した部分画像のみの送信を要求する。なお、スキャン結果が変化したとは、前回のスキャン結果と今回のスキャン結果が異なっていることを指す。さらに、第2フィールドDA03に「100」が設定された第1コマンドは、全体画像の送信を要求する。
ここで、「全体画像」とは、m×n個の光センサ回路を用いてスキャンした際に、各光センサ回路から出力される電圧に基づいて、画像処理エンジン280により生成された画像である。また、「部分画像」とは、全体画像の一部である。部分画像に関して、スキャン結果が変化した部分画像のみの送信を要求する構成とした理由については後述する。
なお、上記座標値と上記部分画像または上記全体画像とを同時に要求する構成としてもよい。また、液晶パネル240の表面の一部の領域に関してスキャンを行う構成の場合には、上記全体画像はスキャンが行われる領域に対応した画像となる。
第3フィールドDA04に「00」が設定されたセンシング第1コマンドは、バックライト279を点灯してスキャンすることを要求する。また、第3フィールドDA04に「01」が設定された第1コマンドは、バックライト279を消灯してスキャンすることを要求する。なお、バックライト279を消灯してスキャンする構成については後述する(図17)。さらに、第3フィールドDA04に「10」が設定された第1コマンドは、反射と透過とを併用してスキャンすることを要求する。なお、反射と透過とを併用するとは、バックライト279を点灯してスキャンする方式と、バックライトを消灯してスキャンする方式とを切り換えて、スキャン対象物のスキャンを行うことを指す。
第4フィールドDA05に「00」が設定された第1コマンドは、白黒の2値の画像データを要求する。また、第4フィールドDA05に「01」が設定された第1コマンドは、多階調の画像データを要求する。さらに、第4フィールドDA05に「10」が設定された第1コマンドは、RGBのカラーの画像データを要求する。
第5フィールドDA06に「0」が設定された第1コマンドは、解像度の高い画像データを要求する。また、第5フィールドDA06に「1」が設定された第1コマンドは、解像度の低い画像データを要求する。
また、上記第1コマンドには、図8に示したデータ以外に、スキャンを行う領域(光センサ回路144を駆動する画素の領域)の指定、スキャンを行うタイミング、バックライト179の点灯のタイミングなどが記述されている。
なお、画像処理エンジン280は、第1コマンドの内容を解析し、当該解析の結果に従ったデータ(つまり、応答データ)を本体装置101に送り返す。
図9は、種別「001」のコマンド(以下、「第2コマンド」と称する)を説明するための図である。CPU110は、第2コマンドを、第1ユニット1001の本体装置101から第2ユニット1002に送る。
CPU110は、ヘッダDA01に、コマンドの種別(「001」)、コマンドの送信先等を書き込む。CPU110は、第1フィールドDA02に、番号が「1」の表示要求の値を書き込む。CPU110は、第2フィールドDA03に、番号が「2」の個数/種類に関する情報を書き込む。CPU110は、第3フィールドDA04に、番号が「3」の表示範囲の値を書き込む。CPU110は、第4フィールドDA05に、番号が「4」の画像データに関する情報を書き込む。
第1フィールドDA02に「001」が設定された第2コマンドは、液晶パネル240(サブ画面)に画像を表示させることを画像処理エンジン280に対して要求する。また、第1フィールドDA02に「010」が設定された第2コマンドは、液晶パネル240にアイコンを表示させることを画像処理エンジン280に対して要求する。さらに、第1フィールドDA02に「011」が設定された第2コマンドは、液晶パネル240に手書領域を表示させることを画像処理エンジン280に対して要求する。
第2フィールドDA03には、液晶パネル240に表示させる画像の個数、および手書言語の種類を指定する番号が格納される。画像処理エンジン280は、当該画像の個数、または言語の種類に応じた処理を行う。
第3フィールドDA04に「01」が設定された第2コマンドは、液晶パネル240における表示範囲を座標にて指定することを、画像処理エンジン280に対して要求する。また、第3フィールドDA04に「10」が設定された第2コマンドは、液晶パネル240における表示範囲を表示領域の全体にすることを、画像処理エンジン280に対して要求する。
第4フィールドDA05には、液晶パネル240に表示させる画像データと、当該画像データを表示する位置情報とが格納される。画像処理エンジン280は、当該位置情報で特定される位置に当該画像データを表示する処理を行う。
図10は、種別「010」のコマンド(以下、「第3コマンド」と称する)を説明するための図である。CPU110は、第3コマンドを、第1ユニット1001の本体装置101から第2ユニット1002に送る。あるいは、CPU210は、第3コマンドを、第2ユニット1002の本体装置104から第1ユニット1001に送る。
CPU110,210は、ヘッダDA01に、コマンドの種別(「010」)、コマンドの送信先等を書き込む。CPU110,210は、第1フィールドDA02に、番号が「1」のOS(Operating System)処理要求の値を書き込む。CPU110,210は、第2フィールドDA03に、番号が「2」のOS情報の値を書き込む。
第1フィールドDA02に「01」または「10」が設定された第3コマンドは、第2ユニット1002から第1ユニット1001に送信される。
第1フィールドDA02に「01」が設定された第3コマンドは、第1ユニット1001に対して、当該第1ユニット1001(メイン装置)のOSの種類を示した情報の送信を要求する。また、第1フィールドDA02に「10」が設定された第3コマンドは、第1ユニット1001に対して、OS情報にて指定されたOSの起動を要求する。
第2フィールドDA03に「000」、「001」、または「010」が設定された第3コマンドは、第2ユニット1002から第1ユニット1001に送信される。
第2フィールドDA03に「000」が設定された第3コマンドは、第1ユニット1001におけるOSの起動を要求しない。また、第2フィールドDA03に「001」が設定された第3コマンドは、第2ユニット1002が第1OSの起動を選択したことを示す。さらに、第2フィールドDA03に「010」が設定された第3コマンドは、第2ユニット1002が第2OSの起動を選択したことを示す。
図11は、種別「011」のコマンド(以下、「第4コマンド」と称する)を説明するための図である。CPU210は、第4コマンドを、第2ユニット1002の本体装置104から第1ユニット1001に送る。
CPU210は、ヘッダDA01に、コマンドの種別(「011」)、コマンドの送信先等を書き込む。CPU210は、第1フィールドDA02に、番号が「1」の起動アプリに関する情報を書き込む。CPU210は、第2フィールドDA03に、番号が「2」の起動時情報を書き込む。
第1フィールドDA02には、第1ユニット1001において起動させるアプリを指定する情報が格納される。第2フィールドDA03には、起動設定時に用いる情報、および起動後に用いる情報が格納される。
図12は、種別「100」のコマンド(以下、「第5コマンド」と称する)を説明するための図である。CPU210は、第5コマンドを、第2ユニット1002の本体装置104から第1ユニット1001に送る。
CPU210は、ヘッダDA01に、コマンドの種別(「100」)、コマンドの送信先等を書き込む。CPU210は、第1フィールドDA02に、番号が「1」の受信要求に関する情報を書き込む。CPU210は、第2フィールドDA03に、番号が「2」の個数に関する情報を書き込む。CPU210は、第3フィールドDA04に、番号が「3」のファイルに関する情報を書き込む。
第1フィールドDA02に「01」が設定された第5コマンドは、第1ユニット1001に対してファイルの受信を要求する。また、第2フィールドDA03には、第2ユニット1002が第1ユニット1001に送信するファイルの個数が格納される。さらに、第3フィールドDA04には、第2ユニット1002が第1ユニット1001に送信するファイルが格納される。
図13は、種別「101」のコマンド(以下、「第6コマンド」と称する)を説明するための図である。CPU110は、第6コマンドを、第1ユニット1001の本体装置101から第2ユニット1002に送る。あるいは、CPU210は、第6コマンドを、第2ユニット1002の本体装置104から第1ユニット1001に送る。
CPU110,210は、ヘッダDA01に、コマンドの種別(「101」)、コマンドの送信先等を書き込む。CPU110,210は、第1フィールドDA02に、番号が「1」の通信種別の値を書き込む。CPU110,210は、第2フィールドDA03に、番号が「2」の接続先の値を書き込む。CPU110,210は、第3フィールドDA04に、番号が「3」の転送先の値を書き込む。CPU110,210は、第4フィールドDA05に、番号が「4」の信号強度の取得タイミングの値を書き込む。
第1フィールドDA02に「001」が設定された第6コマンドは、相手側の装置に対して赤外線通信を行なうことを要求する。また、第1フィールドDA02に「010」が設定された第6コマンドは、相手側の装置に対してBluetooth(登録商標)による無線通信を行なうことを要求する。さらに、第1フィールドDA02に「011」が設定された第6コマンドは、相手側の装置に対してLAN通信を行なうことを要求する。
第2フィールドDA03に「000」が設定された第6コマンドは、通信の接続先を指定する情報を有していないことを示す。
また、第2フィールドDA03に「001」が設定された第6コマンドは、第1ユニット1001によって、当該第1ユニット1001の接続先の装置に送信される。そのような第6コマンドは、第1ユニット1001が接続する装置に関する情報の送信を要求する。
さらに、第2フィールドDA03に「010」が設定された第6コマンドは、第2ユニット1002によって、当該第2ユニット1002の接続先の第1ユニット1001に送信される。そのような第6コマンドは、第2ユニット1002が接続する第1ユニット1001に関する情報の送信を要求する。
また、第2フィールドDA03に「011」が設定された第6コマンドは、第2ユニット1002によって、当該第2ユニット1002の接続先の第1ユニット1001に送信される。そのような第6コマンドは、第2ユニット1002に関する情報を接続先の機器情報として設定することを要求する。
さらに、第2フィールドDA03に「100」が設定された第6コマンドは、第1ユニット1001によって、当該第1ユニット1001の接続先の装置(たとえば、第2ユニット1002)に送信される。そのような第6コマンドは、第1ユニット1001に関する情報を接続先の機器情報として設定することを要求する。
第3フィールドDA04に「000」が設定された第6コマンドは、データ(たとえば、ファイル)の転送先を指定する情報を有していないことを示す。
また、第3フィールドDA04に「001」が設定された第6コマンドは、第1ユニット1001によって、データ転送先の装置に送信される。そのような第6コマンドは、データ転送先の装置に関する情報の送信を要求する。
さらに、第3フィールドDA04に「010」が設定された第6コマンドは、第2ユニット1002によって、データ転送先の第1ユニット1001に送信される。そのような第6コマンドは、データ転送先の第1ユニット1001に関する情報の送信を要求する。
また、第3フィールドDA04に「011」が設定された第6コマンドは、第2ユニット1002によって、データ転送先の第1ユニット1001に送信される。そのような第6コマンドは、第2ユニット1002に関する情報をデータ転送元の機器情報として設定することを要求する。
さらに、第3フィールドDA04に「100」が設定された第6コマンドは、第1ユニット1001によって、データ転送先の装置(たとえば、第2ユニット1002)に送信される。そのような第6コマンドは、第1ユニット1001に関する情報をデータ転送元の機器情報として設定することを要求する。
第4フィールドDA05に「00」、「01」、「10」、または「11」が設定された第6コマンドは、第1ユニット1001によって、第2ユニット1002に送信される。
第4フィールドDA05に「00」が設定された第6コマンドは、第2ユニット1002に対して、信号強度を示したデータの送信を要求しない。また、第4フィールドDA05に「01」が設定された第6コマンドは、信号強度検出部297に対して、そのときの信号強度を示したデータの送信を要求する。さらに、第4フィールドDA05に「10」が設定された第6コマンドは、信号強度に変化があったときの信号強度を示したデータの送信を要求する。また、第4フィールドDA05に「11」が設定された第6コマンドは、一定周期毎に信号強度を示したデータの送信を要求する。
図14は、応答データの概略構成を示した図である。応答データは、第1コマンド(センシングコマンド)の内容に応じたデータである。
第1コマンドが本体装置101から第2ユニット1002に送信された場合、CPU210は、応答データを、表示装置103から第1ユニット1001に送信する。また、第1コマンドが本体装置101から第1ユニット1001の表示装置102に送信された場合、画像処理エンジン180は、応答データを、画像処理エンジン180から本体装置101に送信する。なお、以下では、第1コマンドが本体装置101から第2ユニット1002に送信された場合を例に挙げて説明する。
図14を参照して、応答データは、ヘッダのデータ領域DA11と、座標を示すデータ領域DA12と、時刻を示すデータ領域DA13と、画像を示すデータ領域DA14とを含む。ここで、座標を示すデータ領域DA12には、部分画像の中心座標の値が書き込まれる。また、時刻を示すデータ領域には、画像処理エンジン280のタイマ282から取得した時刻情報が書き込まれる。さらに、画像を示すデータ領域には、画像処理エンジン280により処理がされた後の画像データ(つまり、スキャンデータ)が書き込まれる。
図15は、指900をスキャンすることにより得られた画像(つまり、スキャン画像)を示した図である。図15を参照して、太実線で囲まれた領域W1の画像が全体画像であり、破線で囲まれた領域P1の画像が部分画像である。また、太線で示した十字の中心点C1が、中心座標となる。
本実施の形態では、矩形の領域であって、かつセンサ信号線SSjからの出力電圧が予め定められた値以上となった光センサ回路が備えられた画素(つまり、予め定められた階調または予め定められた輝度以上の画素)全てを含む領域を、部分画像の領域としている。
また、中心座標は、部分画像の領域における各画素の階調を考慮して決定される座標である。具体的には、中心座標は、部分画像内の各画素に関し、画素の階調と、当該画素と上記矩形の中心点(つまり図心)との距離とに基づき、重み付け処理を行うことにより決定される。つまり、中心座標は、部分画像の図心とは必ずしも一致しない。
ただし、必ずしも中心座標の位置は上記に限定されるものではなく、中心座標を上記図心の座標あるいは図心の近傍の座標としてもよい。
第1コマンドのデータ種別を示すデータ領域に「001」が設定されている場合には、画像処理エンジン280は、座標を示すデータ領域DA12に上記中心座標の値を書き込む。この場合、画像処理エンジン280は、画像を示すデータ領域DA14には画像データを書き込まない。画像処理エンジン280は、上記中心座標の値の書き込みを行なった後、当該中心座標の値を含む応答データを本体装置104に送る。本体装置104は、当該中心座標の値を含む応答データを第1ユニット1001の本体装置101に送る。このように、データ種別を示すデータ領域に「001」が設定されている場合には、第1コマンドは、画像データの出力を要求せずに、中心座標の値の出力を要求する。
また、第1コマンドのデータ種別を示すデータ領域に「010」が設定されている場合には、画像処理エンジン280は、画像を示すデータ領域DA14に、スキャン結果が変化した部分画像の画像データを書き込む。この場合、画像処理エンジン280は、中心座標の値を座標を示すデータ領域DA12に書き込まない。画像処理エンジン280は、上記スキャン結果が変化した部分画像の画像データの書き込みを行なった後、当該部分画像の画像データを含む応答データを本体装置104に送る。本体装置104は、当該部分画像の画像データを含む応答データを第1ユニット1001の本体装置101に送る。このように、データ種別を示すデータ領域に「010」が設定されている場合には、第1コマンドは、中心座標の値の出力を要求せずに、スキャン結果が変化した部分画像の画像データの出力を要求する。
なお、上記のように、スキャン結果が変化した部分画像のみの送信を要求する構成とした理由は、スキャンデータのうち部分画像の領域のスキャンデータが、当該領域以外のスキャンデータよりも重要度の高いデータであること、および、指900などのスキャン対象物との接触状態により、スキャンデータのうち部分画像の領域に相当する領域のスキャンデータが変化しやすいことによる。
また、第1コマンドのデータ種別を示すデータ領域に「011」が設定されている場合には、画像処理エンジン280は、座標を示すデータ領域DA12に中心座標の値を書き込むとともに、画像を示すデータ領域DA14にスキャン結果が変化した部分画像の画像データを書き込む。その後、画像処理エンジン280は、当該中心座標の値と当該部分画像の画像データとを含む応答データを本体装置104に送る。本体装置104は、当該中心座標の値と当該部分画像の画像データとを含む応答データを第1ユニット1001の本体装置101に送る。このように、データ種別を示すデータ領域に「011」が設定されている場合には、第1コマンドは、中心座標の値の出力と、スキャン結果が変化した部分画像の画像データの出力とを要求する。
また、第1コマンドのデータ種別を示すデータ領域に「100」が設定されている場合には、画像処理エンジン280は、図14に示した応答データの画像を示すデータ領域DA14に、全体画像の画像データを書き込む。この場合、画像処理エンジン280は、中心座標の値を座標を示すデータ領域DA12に書き込まない。画像処理エンジン280は、上記全体画像の画像データの書き込みを行なった後、当該全体画像の画像データを含む応答データを本体装置104に送る。本体装置104は、当該全体画像の画像データを含む応答データを第1ユニット1001の本体装置101に送る。このように、データ種別を示すデータ領域に「100」が設定されている場合には、第1コマンドは、中心座標の値の出力を要求せずに、全体画像の画像データの出力を要求する。
また、第1コマンドのデータ種別を示すデータ領域に「101」が設定されている場合には、画像処理エンジン280は、座標を示すデータ領域DA12に中心座標の値を書き込むとともに、画像を示すデータ領域DA14に全体画像の画像データを書き込む。その後、画像処理エンジン280は、当該中心座標の値と当該全体画像の画像データとを含む応答データを本体装置104に送る。本体装置104は、当該中心座標の値と当該全体画像の画像データとを含む応答データを第1ユニット1001の本体装置101に送る。このように、データ種別を示すデータ領域に「101」が設定されている場合には、第1コマンドは、中心座標の値の出力と、全体画像の画像データの出力とを要求する。
<構成の第1の変形例について>
ところで、液晶パネル140の構成は、図3に示した構成に限定されるものではない。以下では、図3とは異なる態様の液晶パネルについて説明する。
図16は、上記異なる態様である光センサ内蔵液晶パネル140Aの回路図である。図16を参照して、光センサ内蔵液晶パネル140A(以下、液晶パネル140Aと称する)は、1画素内に3つの光センサ回路(144r,144g,144b)を含んでいる。このように液晶パネル140Aが1画素内に3つの光センサ回路(144r,144g,144b)を備える点において、液晶パネル140Aは、1画素内に1つの光センサ回路を備える液晶パネル140と異なる。なお、光センサ回路144の構成と、3つの各光センサ回路(144r,144g,144b)との構成は同じである。
また、1画素内における3つのフォトダイオード(145r,145g,145b)は、それぞれ、カラーフィルタ153r、カラーフィルタ153g、カラーフィルタ153bに対向する位置に配されている。それゆえ、フォトダイオード145rは赤色の光を受光し、フォトダイオード145gは緑色の光を受光し、フォトダイオード145bは青色の光を受光する。
また、液晶パネル140は1画素内において1つの光センサ回路144しか含まないため、1画素内に配設されるTFT147用のデータ信号線は、センサ信号線SSjとセンサ信号線SDjとの2本であった。しかしながら、液晶パネル140Aは1画素内において3つの光センサ回路(144r,144g,144b)を含むため、1画素内に配設されるTFT(147r,147g,147b)用のデータ信号線は6本となる。
具体的には、カラーフィルタ153rに対向する位置に配されたフォトダイオード145rのカソードに接続されたTFT147rに対応して、センサ信号線SSRjとセンサ信号線SDRjとが配設される。また、カラーフィルタ153gに対向する位置に配されたフォトダイオード145gのカソードに接続されたTFT147gに対応して、センサ信号線SSGjとセンサ信号線SDGjとが配設される。さらに、カラーフィルタ153bに対向する位置に配されたフォトダイオード145bのカソードに接続されたTFT147bに対応して、センサ信号線SSBjとセンサ信号線SDBjとが配設される。
このような液晶パネル140Aにおいては、バックライト179から照射された白色光は、3つのカラーフィルタ(153r,153g,153b)を透過し、液晶パネル140Aの表面では、赤、緑、および青とが混ざり白色光となる。ここで、スキャン対象物により白色光が反射されると、スキャン対象物の表面の色素に白色光の一部が吸収され、また一部が反射される。そして、反射された光は、再度、3つのカラーフィルタ(153r,153g,153b)を透過する。
この際、カラーフィルタ153rは赤色の波長の光を透過し、フォトダイオード145rは、当該赤色の波長の光を受光する。また、カラーフィルタ153gは緑色の波長の光を透過し、フォトダイオード145gは、当該緑色の波長の光を受光する。また、カラーフィルタ153bは青色の波長の光を透過し、フォトダイオード145bは、当該青色の波長の光を受光する。つまり、スキャン対象物によって反射された光は3つのカラーフィルタ(153r,153g,153b)によって3原色(R,G,B)に色分解され、各フォトダイオード(145r,145g,145b)は、それぞれに対応した色の光を受光する。
スキャン対象物の表面の色素に白色光の一部が吸収されると、各フォトダイオード(145r,145g,145b)の受光量が各フォトダイオード(145r,145g,145b)で異なることになる。このため、センサ信号線SSRjとセンサ信号線SSGjとセンサ信号線SSBjとの出力電圧は互いに異なる。
それゆえ、各出力電圧に応じて、Rの階調とGの階調とBの階調とを画像処理エンジン180が決定することにより、画像処理エンジン180はRGBのカラー画像を本体装置101へ送ることができる。
以上述べたように、電子機器100が液晶パネル140Aを備えた構成とすることにより、スキャン対象物をカラーでスキャンできることになる。
次に、図17を参照して、前述のスキャンの方法(つまり、図6における反射像をスキャンする方法)とは異なるスキャンの方法について説明する。
図17は、スキャンの際にフォトダイオードが外光を受光する構成を示した断面図である。同図に示すとおり、外光の一部は、指900によって遮られる。それゆえ、指900と接触している液晶パネル140の表面領域の下部に配されたフォトダイオードは、ほとんど外光を受光できない。また、指900の影が形成された表面領域の下部に配されたフォトダイオードは、ある程度の外光を受光できるものの、影が形成されていない表面領域に比べると外光の受光量が少ない。
ここで、バックライト179を、少なくともセンシング期間においては消灯させておくことにより、光センサ回路144は、液晶パネル140の表面に対する指900の位置に応じた電圧をセンサ信号線SSjから出力することができる。このように、バックライト179を点灯と消灯とを制御することにより、液晶パネル140では、指900の接触位置、指900の接触している範囲(指900の押圧力によって定まる)、液晶パネル140の表面に対する指900の方向などに応じて、センサ信号線(SS1からSSn)から出力される電圧が変化することになる。
以上により、表示装置102は、指900によって外光が遮られることにより得られる像(以下、影像とも称する)をスキャンすることができる。
さらに、表示装置102を、バックライト179を点灯させてスキャンを行った後に、バックライト179を消灯させて再度スキャンを行う構成としてもよい。あるいは、表示装置102を、バックライト179を消灯させてスキャンを行った後に、バックライト179を点灯させて再度スキャンを行う構成としてもよい。
この場合には、2つのスキャン方式を併用することになるため、2つのスキャンデータを得ることができる。それゆえ、一方のスキャン方式のみを用いてスキャンする場合に比べて、精度の高い結果を得ることができる。
<表示装置について>
表示装置103の動作は、表示装置102の動作と同様、本体装置101からのコマンド(たとえば、第1コマンド)に応じて制御される。表示装置103は表示装置102と同様な構成を有する。それゆえ、表示装置103が表示装置102と同じコマンドを本体装置101から受け付けた場合、表示装置103は表示装置102と同様の動作を行う。このため、表示装置103の構成や動作についての説明は繰り返さない。
なお、本体装置101は、表示装置102と表示装置103とに対して、命令が異なるコマンドを送ることができる。この場合、表示装置102と表示装置103とは別々の動作を行う。また、本体装置101は、表示装置102および表示装置103のいずれかに対して、コマンドを送ってもよい。この場合、一方の表示装置のみがコマンドに応じた動作を行う。また、本体装置101が、表示装置102と表示装置103とに命令が同じコマンドを送ってもよい。この場合、表示装置102と表示装置103とは、同じ動作を行う。
なお、表示装置102の液晶パネル140のサイズと表示装置103の液晶パネル240のサイズとは、同じであってもよいし又は異なっていてもよい。また、液晶パネル140の解像度と液晶パネル240の解像度とは、同じであってもよいし又は異なっていてもよい。
<構成の第2の変形例について>
本実施の形態では、電子機器100が、液晶パネル140と液晶パネル240といったそれぞれに光センサを内蔵した液晶パネルを備える構成について説明するが、一方の液晶パネルのみが光センサを内蔵している構成であってもよい。
図18は、電子機器1300のハードウェア構成を表すブロック図である。電子機器1300は、電子機器100と同様、第1の筐体100Aと、第2の筐体100Bとを含む。また、図18を参照して、電子機器1300は、第1ユニット1001Aと、第2ユニット1002とを含む。第1ユニット1001Aは、本体装置101と、表示装置102Aとを含む。第2ユニット1002は、本体装置104と、表示装置103とを含む。
表示装置102Aは、光センサを内蔵しない液晶パネル(つまり、表示機能のみを有する液晶パネル)を含む。電子機器1300は、第1ユニット1001Aが光センサを内蔵しない液晶パネルを含む点で、第1ユニット1001が光センサを内蔵した液晶パネル240を含む電子機器100と異なる。このような電子機器1300は、第2ユニット1002の表示装置103を用いて上述したセンシングを行なう。
また、第1ユニット1001は、光センサを内蔵した液晶パネル140の代わりに、たとえば抵抗膜方式や静電容量方式のタッチパネルを備えてもよい。
また、本実施の形態では、表示装置102がタイマ182を備え、表示装置103がタイマ282を備える構成として説明するが、表示装置102と表示装置103とが1つのタイマを共有する構成としてもよい。
また、本実施の形態では、電子機器100を折畳型の機器として説明するが、電子機器100は必ずしも折畳型に限定されるものではない。たとえば、電子機器100は、第1の筐体100Aが第2の筐体100Bに対してスライドする構成のスライド式の機器であってもよい。
本実施の形態に係る電子機器100は、上記のように構成されているため、第2ユニット1002が、USBコネクタ194,294を介して第1ユニット1001に着脱自在になっている。
そして、本実施の形態に係る電子機器100は、たとえば電源投入時において、以下のような機能を発揮することができる。まず、ユーザが第1ユニット1001の電源スイッチ191を押下すると、第1ユニット1001は電源回路192からの電力を利用することによってBIOS(Basic Input/Output System)を起動させる。
第2ユニット1002は、USBコネクタ194,294を介して第1ユニット1001から電力を取得する。第2ユニット1002は、当該電力を利用することによって、第1ユニット1001との間でデータを送受信することができる。このとき、第2ユニット1002のCPU210は、USBコネクタ194,294からの電力を使用することによって、液晶パネル240にOS(Operation System)の種類を選択可能に表示させることができる。
ユーザは、液晶パネル240を介して、起動したいOSを選択する。CPU210は、ユーザの選択に応じ、USBコネクタ194,294を介して第1ユニット1001へと、起動すべきOSを指定するコマンド(たとえば、図10に示す「第1のOS」コマンド)を送信する。第1ユニット1001は、当該コマンドに応じて、OSを起動する。
また、たとえば、第2ユニット1002は、アンテナ295を介して外部の携帯電話などとの間でデータの送受信を行う。第2ユニット1002のCPU210は、アンテナ295を介して、外部の携帯電話から写真画像データや対応するサムネイルデータを取得して、当該写真画像データや対応するサムネイルデータをRAM271などに格納する。CPU210は、RAM271からサムネイルデータを読み出して、液晶パネル240に写真のサムネイル画像を選択可能に表示させる。
そして、外部からの選択命令に応じて、CPU210は、液晶パネル240に写真画像を表示させる。あるいは、CPU210は、USBコネクタ294を介して、写真画像を液晶パネル140あるいは表示装置102Aに表示させる。
<機能的構成>
図19は、本実施の形態に係る電子機器100の機能的構成をブロック図形式で示す図である。電子機器100は、すでに説明したとおり、第1ユニット1001と、第2ユニット1002とを含む。以下、図19を参照して、電子機器100の機能的構成について説明する。
第1ユニット1001は、表示部310と、入力部320と、記憶部330と、インターフェース部340と、制御部350とを含む。第1ユニット1001は、電子機器100の主要な動作を行なう。
表示部310は、第1ユニット1001内部の情報を外部に表示する。入力部320は、外部からの指示を受け付ける。本実施の形態では、液晶パネル140が、表示部310および入力部320の機能を兼ね備える。ただし、表示部310としては、他の表示装置、例えば、LCD(Liquid Crystal Display)などのディスプレイを用いてもよい。また、操作キー177も入力部320の機能を果たす。
記憶部330は、第1ユニット1001の表示部310(液晶パネル140)に表示される画面の基となる表示データ333、プログラム334、動作パラメータ335などの情報を格納する。記憶部330は、一般に、複数のプログラム334を格納する。ここでのプログラム334としては、汎用的なアプリケーションソフト、例えば、ワープロやWebブラウザなどがある。
動作パラメータ335は、プログラム334の動作条件を与えるための情報である。動作パラメータ335としては、例えば、マルチウィンドウのプログラム334において、操作キー177の押下などに応じて動作するアクティブなウィンドウを示すデータがある。
インターフェース部340は、第2ユニット1002側のインターフェース部440との間で情報の授受を行なう。本実施の形態では、第1ユニット1001と第2ユニット1002が直接接続されている場合、USBコネクタ194がインターフェース部340として機能する。第1ユニット1001と第2ユニット1002が直接接続されていない場合、アンテナ195がインターフェース部340として機能する。ただし、インターフェース部340による情報の授受方法は、これに限られるわけではない。
制御部350は、入力部320からの指示等に基づいて、表示部310、記憶部330、および、インターフェース部340の動作を制御する。制御部350は、入力処理部352と、表示制御部356と、プログラム実行部358とを含む。本実施の形態では、CPU110および画像処理エンジン180が制御部350に相当する。ただし、CPU110の各機能は、専用回路などのハードウェアによって実現されてもよい。また、画像処理エンジン180の各機能は、ソフトウェアを実行するCPU110によって実現されてもよい。すなわち、制御部350の各機能は、ハードウェアによって実現されてもよいし、ソフトウェアによって実現されてもよい。
入力処理部352は、入力部320から受け取った信号を、プログラム実行部358に送信する。表示制御部356は、記憶部330に格納される表示データ333に基づいて、表示部310の動作を制御する。プログラム実行部358は、入力部320から受け付けた指示などに基づいて、プログラム334を実行する。具体的には、RAM171をワーキングメモリとして用いて、プログラム334を実行するCPU110がプログラム実行部358に相当する。
第2ユニット1002は、表示部410と、入力部420と、記憶部430と、インターフェース部440と、制御部450と、タイマ273とを含む。
表示部410は、第2ユニット1002内部の情報を外部に表示する。入力部420は、外部からの指示を受け付ける。本実施の形態では、光センサ内蔵液晶パネル240、左クリックキー241、センターキー242、および、右クリックキー243が入力部420に相当する。また、本実施の形態では、光センサ内蔵液晶パネル240が、表示部410および入力部420(パネル入力部422)の機能を兼ね備える。ただし、表示部410としては、他の表示装置、例えば、LCD(Liquid Crystal Display)などのディスプレイを用いてもよい。また、入力部420としては、光センサ内蔵液晶パネル240に限られず、入力位置を認識する機能を有するデバイス(タブレット)を用いることができる。例えば、入力部420として、静電容量型のタッチパネルを用いてもよい。このように表示部410と入力部420との機能を実現する構成物を、「表示一体型タッチパッド」とよぶ。
記憶部430は、入力データ431、表示データ433、プログラム434、動作パラメータ435、時刻データ436、およびモードデータ437などの情報を格納する。
入力データ431は、入力部420が受け付けた入力に基づき作成されたデータである。特に、本実施の形態においては、入力データ431は、入力の履歴に対応する入力履歴432を含む。入力履歴432は、手書き文字データ432aおよびイラストデータ432bを含む。手書き文字データ432aおよびイラストデータ432bの詳細は後述する。
表示データ433は、第2ユニット1002の表示部410(液晶パネル240)に表示される画面の基となる。表示データ433には、記憶部430に格納されている画像データ(壁紙など)や、プログラム434の実行にともない作成された画像データが含まれる。
本実施の形態においては、記憶部430は、複数のプログラム434を格納する。プログラム434は、液晶パネル240に動作画面を表示するアプリケーションソフト(例えば、手書き文字入力ソフトや、手描きイラスト入力ソフトや、電卓ソフト)を含む。プログラム434の詳細については、後述する。
動作パラメータ435は、第1ユニット1001における動作パラメータ335と同様、プログラム334の動作条件を与えるための情報である。特に、本実施の形態では、動作パラメータ435は、プログラム434によって作成された所定のイベントからの経過時間のカウント値を含む。
時刻データ436は、タイマ273で測定された時刻を表わす。時刻データ436は、時間経過に応じて所定の動作を行なうプログラム434の実行の際などに、利用される。
モードデータ437は、入力処理部452の動作モードを表わす情報である。入力処理部452の動作モードは複数あり、モードデータ437は、現在の動作モードを表わす。具体的には、例えば、所定の記憶領域に格納されたフラグを、モードデータ437とみなせる。なお、入力処理部452の動作モードの詳細については、後述する。
インターフェース部440は、第1ユニット1001側のインターフェース部340との間で情報の授受を行なう。本実施の形態では、第1ユニット1001と第2ユニット1002が直接接続されている場合、USBコネクタ294がインターフェース部440として機能する。第1ユニット1001と第2ユニット1002が直接接続されていない場合、アンテナ295がインターフェース部440として機能する。ただし、インターフェース部440による情報の授受方法は、これに限られるわけではない。
制御部450は、入力部420が受け付けた指示等に基づいて、表示部410、記憶部430、および、インターフェース部440の動作を制御する。制御部450は、入力処理部452と、表示制御部456と、プログラム実行部458とを含む。
入力処理部452は、入力部420からの信号を、プログラム実行部458またはインターフェース部440に送信する。入力処理部452は、パネル入力処理部453と、モード設定部454とを含む。
パネル入力処理部453は、パネル入力部422からの信号を処理する。例えば、パネル入力処理部453は、信号の履歴に基づいて、入力履歴432(手書き文字データ432aやイラストデータ432bなど)を作成する。パネル入力処理部453の動作の詳細については後述する。
モード設定部454は、入力部420からの所定の信号(センターキー242の押下による信号など)に基づいて、パネル入力処理部453の動作モードを設定する。モード設定部454の動作の詳細については後述する。
表示制御部456は、表示データ433に基づいて、表示部410の動作を制御する。表示制御部456は、例えば、表示部410に、プログラム434の実行の結果、作成された画面(動作画面)などを表示する。
プログラム実行部458は、入力部420から受け付けた指示などに基づいて、プログラム434を実行する。具体的には、RAM271をワーキングメモリとして用いて、プログラム434を実行するCPU210がプログラム実行部458に相当する。
<動作の概略>
(マウスモードとタブレットモード)
電子機器100は、液晶パネル240への指示、すなわち、液晶パネル240への物体(指900やスタイラス950など)の接触に応じて、アプリケーションの動作のための指示を出す。電子機器100(より特定的には、パネル入力処理部453)には、「マウスモード」と「タブレットモード」との2つの動作モードがある。電子機器100は、動作モードに応じて動作する。
電子機器100は、マウスモードにおいては、液晶パネル240への入力に応じてプログラム334を実行し、実行されたプログラム334が作成した画像(以下、「プログラムの動作画面」とよぶ)を液晶パネル140に表示する。
具体的には、電子機器100は、マウスモードにおいて、液晶パネル240への入力位置の変化に応じて、リアルタイムに、液晶パネル140の動作画面中のカーソルを移動する。なお、ここで、「カーソル」とは、文字や、図、表示オブジェクトなどの入力位置を指し示す表示のことを指す。
また、電子機器100は、マウスモードにおいて、液晶パネル240への所定の入力に応じて、第1ユニット1001のプログラム334に所定の動作を指示するコマンドを作成する。例えば、電子機器100は、液晶パネル240がクリックやダブルクリック、ドラッグなどに相当する入力を受け付けたと判断すると、入力に応じて、プログラム334を実行する。この際に電子機器100が行なう動作は、プログラム334によって決まる。
すなわち、電子機器100がマウスモードにあるとき、ユーザは、液晶パネル240をタッチパッドとして使うことができる。以下では、簡単のため、カーソル位置の移動および液晶パネル240への所定の入力に応じたプログラム334の動作を総称して、「マウス動作」と呼ぶことにする。
タブレットモードにおいては、電子機器100は、液晶パネル240への入力に応じてプログラム434(またはプログラム334)を実行し、実行されたプログラムの動作画面を液晶パネル240に表示する。また、電子機器100は、液晶パネル240に動作画面が表示されるプログラムに対するコマンドを作成する。例えば、液晶パネル240に操作ボタンが表示されている場合、電子機器100は、プログラムを実行し、タッチされた操作ボタンに応じた動作を行なう。すなわち、電子機器100がタブレットモードにあるとき、ユーザは、液晶パネル240をタッチスクリーンとして使うことができる。
電子機器100は、動作モードを、所定の指示に基づいて、切り替える。本実施の形態では、電子機器100は、センターキー242の押下に応じて、動作モードを切り替える。
ただし、動作モードの切替指示は、センターキー242の押下に限られない。電子機器100は、センターキー242以外の操作キー177の押下に応じて動作モードを切り替えてもよい。また、電子機器100は、液晶パネル140または液晶パネル240に表示される操作ボタンの選択に応じて、動作モードを切り替えてもよい。また、電子機器100は、電子機器の動作状態(起動処理中、スリープや休止状態からの復帰中など)によっても動作モードを切り替える。この点については、後で詳しく説明する。
マウスモードおよびタブレットモードでの液晶パネル140および液晶パネル240の表示について、図20を参照して説明する。図20は、マウスモードおよびタブレットモードのそれぞれにおいて電子機器が表示する画面を説明するための図である。
マウスモードにおいて、電子機器100は、液晶パネル140にワープロソフトやWebブラウザなどのソフトの動作画面500を表示する。画面500は、現在広く普及している(すなわち1つのディスプレイを持つ)パーソナルコンピュータによる表示画面と同様なものである。ただし、図20においては、簡単のため、画面500の中身は描いていない。また、画面500は、この具体例に限られるわけではない。
画面500は、カーソル510を含む。ここでは、カーソル510は、画面500上を自由に移動可能なポインタ(マウスポインタ)であるとする。ただし、カーソル510は、ポインタに限られない。カーソル510は、文字や表示オブジェクトの入力位置を指し示す表示であればよい。また、カーソル510の表示形態は、図20に示すもの(矢印)に限られるわけではない。また、電子機器100は、カーソル510の表示形態を、その指し示す位置によって変えてもよい。
また、マウスモードにおいて、電子機器100は、液晶パネル240に画面600を表示する。以下、マウスモード時に液晶パネル240に表示される画面を「マウス画面」とも呼ぶ。図20を参照して、画面600は、ガイダンス表示610を含む。
ガイダンス表示610は、左クリックキー241、センターキー242、および右クリックキー243が押下されたときの電子機器100の動作の説明を表わすための表示である。ガイダンス表示610は、左ガイダンス表示612と、センターガイダンス表示614と、右ガイダンス表示616とを含む。
左ガイダンス表示612と、センターガイダンス表示614と、右ガイダンス表示616とは、それぞれ、左クリックキー241、センターキー242、および右クリックキー243が押下されたときの電子機器100の動作を説明する文字および/または記号を含む(ただし、そのような文字および記号は、図20には示していない)。
なお、マウス画面は、左ガイダンス表示612、センターガイダンス表示614および右ガイダンス表示616を、常には表示していなくてもよい。本実施の形態では、電子機器100は、対応するキーが無効のときは、左ガイダンス表示612、センターガイダンス表示614および右ガイダンス表示616を液晶パネル240に表示しない。
マウス画面の1つの具体例を図21に示す。図21を参照して、画面600は、左ガイダンス表示612と、センターガイダンス表示614と、右ガイダンス表示616とを含む。
図21では、左ガイダンス表示612は、文字「左クリック」を含む。この表示がなされているときは、電子機器100は、左クリックキー241の押下に応じて、左クリック動作(決定処理など)を行なう。左クリック動作は、起動中のプログラムによって決まる。
図21では、センターガイダンス表示614は、文字「タッチスクリーン操作」を含む。この表示がなされるのは、電子機器100がマウスモードにあるときである。この表示がなされているときは、電子機器100は、センターキー242の押下に応じて、タブレットモードに移行する。
なお、電子機器100は、タブレットモードにあるときは、センターガイダンス表示614に文字「マウス操作」を表示する。この表示がなされているときは、電子機器100は、センターキー242の押下に応じて、マウスモードに移行する。
右ガイダンス表示616は、文字「右クリック」を含む。これは、右クリックキー243の押下に応じて、電子機器100が右クリック動作(メニューの表示など)を行なうことを示している。右クリック動作は、起動中のプログラムによって決まる。
なお、本実施の形態では、マウス画面は、ユーザが設定できるものとする。ユーザは、電子機器100に格納した写真などの画像をマウス画面の壁紙に設定できてもよい。また、壁紙は、時計やカレンダーなどユーザ操作を必要としないアクセサリの動作画面であってもよい。また、壁紙は起動中や省電力状態からの復帰中など電子機器100の状態によっても自動的に変わり得る。また、ユーザがマウス画面を設定できない場合も、マウス画面は、図21に示すものに限られるものではない。
図20に戻って、タブレットモード時の画面について説明する。タブレットモードにおいて、液晶パネル140は、ワープロソフトやWebブラウザなどのソフトの動作画面700を表示する。動作画面700の内容は、動作画面500と同様である。
また、タブレットモードにおいて、電子機器100は、液晶パネル240に画面800を表示する。以下、タブレットモード時に液晶パネル240に表示される画面を「タブレット画面」とも呼ぶ。図20を参照して、画面800は、ガイダンス表示810および操作ボタン表示820を含む。
ガイダンス表示810は、マウスモードにおけるガイダンス表示610と同様に、左ガイダンス表示812と、センターガイダンス表示814と、右ガイダンス表示816とを含む。これらの役割および動作は、それぞれ、左ガイダンス表示612と、センターガイダンス表示614と、右ガイダンス表示616と同様であり、これらの詳細な説明は繰り返さない。
操作ボタン表示820は、アプリケーションの選択に用いられる。電子機器100は、操作ボタン表示820に対応する領域内に、外部物体(指900あるいはスタイラス950など)の接触を検知すると、領域に対応した所定の動作を開始する。
(プログラムについて)
ここで、電子機器100において、実行されるプログラムについて説明しておく。
本実施の形態に係る電子機器100が実行するプログラムには、液晶パネル140に動作画面が表示されるプログラム(以下、「メインアプリケーション」とよぶ)と、液晶パネル240に動作画面が表示されるプログラム(以下、「サブアプリケーション」とよぶ)とがある。
メインアプリケーションとしては、ブラウザ、辞書、ブックビューア、フォトビューアなど、現在の電子機器上で動作するアプリケーションを想定することができる。サブアプリケーションとしては、例えば、液晶パネル240への入力を利用する入力パッド(手書き文字入力パッド、手描きイラスト入力パッド、電卓/数字入力パッドなど)や、メインアプリケーションの操作補助用のアプリケーションがある。
本実施の形態の説明においては、サブアプリケーションは、メインアプリケーションと独立であるとしている。メインアプリケーションは、第1ユニット1001の記憶部330に格納されている。一方、サブアプリケーションは、第2ユニット1002の記憶部430に格納されている。
このように、メインアプリケーションは、サブアプリケーションと分離している。そのため、メインアプリケーションとしては、他の電子機器でも動作する汎用的なアプリケーションを利用することができる。この場合、サブアプリケーションのメインアプリケーションとのデータのやり取りの仕様を、メインアプリケーションの仕様に合わせる。例えば、サブアプリケーションによるマウス動作の指示は、従来のタッチパッドやマウスからの動作指示に合わせる。
さらに、本実施の形態では、メインアプリケーションを実行するプログラム実行部358と、サブアプリケーションを実行するプログラム実行部458とは、独立である。このようにすることで、メインアプリケーションを実行するプロセッサ(本実施の形態では、CPU110)の負荷を減らすことができる。特に、電子機器100のCPUの性能が低い場合には、このようにプログラム実行部を分割することが有効である。
本実施の形態のように第1ユニット1001および第2ユニット1002のそれぞれに制御部および記憶部を備えることで、第1ユニット1001と第2ユニット1002との間のデータのやりとりを少なくでき、処理を高速化しうる。
ただし、サブアプリケーションは、必ずしもメインアプリケーションと独立でなくてもよい。すなわち、同一のプログラムが、メインアプリケーションおよびサブアプリケーションの両方として機能してもよい。具体的には、プログラムの一部が、液晶パネル140に表示する画面を作成し、プログラムの他の一部が、液晶パネル240に表示する画面を作成してもよい。
また、メインアプリケーションおよびサブアプリケーションは、同一のプロセッサによって実行されてもよい。この場合は、アプリケーションを実行するプロセッサが、液晶パネル140および液晶パネル240の両方の動作を制御することになる。
(サブアプリケーション)
本実施の形態においては、電子機器100は、タブレットモードにおいて、複数のサブアプリケーションのいずれかを実行する。また、サブアプリケーションの1つに、実行するアプリケーションを決定するための「ホームアプリケーション」がある。
ホームアプリケーションは、アプリケーション選択のためのランチャーである。ホームアプリケーションは、複数のサブアプリケーションの中からの1つのサブアプリケーションの選択のための画面(以下、「ホームメニュー画面」)を液晶パネル240に表示する。
図22に、ホームメニュー画面の具体例を示す。図22を参照して、ホームメニュー画面は、ガイダンス表示810と、操作ボタン表示820a〜820iと、マウス不可表示830とを含む。操作ボタン表示820a〜820iがタッチされると、ホームアプリケーションは、操作ボタン表示820a〜820iに対応するサブアプリケーションを呼び出す。マウス不可表示830は、電子機器100が、液晶パネル240への入力によって、マウス動作を行なわないことを示すための表示である。この表示は、ユーザが、タブレットモードにおける電子機器100の動作を正確に理解するのに役立つ。また、ユーザが、マウスモードとタブレットモードとを区別するのにも役立つ。
本実施の形態においては、電子機器100は、ユーザの指示に基づいて、ホームメニュー画面をカスタマイズ可能であるとする。なお、ホームメニュー画面のカスタマイズが不可能な場合であっても、ホームメニュー画面の構成は、図22に示すものに限られるわけではない。例えば、操作ボタン表示820の個数や配置は、図22に示すものに限られない。また、マウス不可表示830も、図22に示すものに限られない。あるいは、マウス不可表示830は、ホームメニュー画面に含まれていなくてもよい。
なお、タブレットモードにおけるデフォルトのサブアプリケーションは、ホームアプリケーションであるとする。すなわち、電子機器100が、起動後(電源を入れた後)、最初にタブレットモードで動作するときは、ホームアプリケーションを実行する。
タブレットモードにおいて液晶パネル240に表示される画面800の遷移について、図23を参照して説明する。図23は、タブレットモードにおいて液晶パネル240に表示される画面800の遷移図である。
図23を参照して、ユーザがホームメニュー画面800aの操作ボタン表示820(手描きイラスト)を選択すると、電子機器100は、手描きイラストアプリケーションを実行し、画面800bを液晶パネル240に表示する。画面800bは、手描きイラストアプリケーションの動作画面である。図23に示す画面800bでは、その手描き入力枠内に犬の絵が描かれている。
画面800bにおいて、ユーザが、操作ボタン表示820(ホーム)を選択すると、電子機器100は、ウィンドウ800dを液晶パネル240に表示する。ここで、電子機器100は、ウィンドウ800dを画面800bのかわりに表示してもよいし、ウィンドウ800dを画面800bに重畳して表示してもよい。ウィンドウ800dは、作成した手描きイラストを保存するかを問い合わせる文章と、“はい”“いいえ”“キャンセル”の操作ボタン表示820とを含む。
ウィンドウ800dの“はい”が選択されると、電子機器100は、ウィンドウ800dの表示前に入力枠になされている手描きイラストを、電子機器100内部あるいは外付けの記憶装置(ハードディスクやフラッシュメモリなど)に格納する。また、電子機器100は、ホームメニュー画面800aを、液晶パネル240に表示する。
ウィンドウ800dの“いいえ”が選択されると、電子機器100は、ホームメニュー画面800aを、液晶パネル240に表示する。この場合、電子機器100は、ウィンドウ800dの表示前に入力枠になされている手描きイラストを、記憶装置に格納しない。
ウィンドウ800dの“キャンセル”が選択されると、電子機器100は、ウィンドウ800dの表示前の画面800bを、液晶パネル240に表示する。すなわち、ユーザは、キャンセルを選択すれば、引き続き、手描きイラストの作成を行なうことができる。
ユーザがホームメニュー画面800aの操作ボタン表示820(インターネット)を選択すると、電子機器100は、Webブラウザを実行し、Webブラウザの動作画面800cを液晶パネル140に表示する。
画面800cにおいて、ユーザが、操作ボタン表示820(ホーム)を選択すると、電子機器100は、ホームメニュー画面800aを、液晶パネル240に表示する。この場合は、電子機器100は、入力されたデータの保存処理は行なわない。したがって、電子機器100は、ウィンドウ800dのような問合せ画面を表示することはしない。
<モードの切り替え>
ここからは、マウスモードとタブレットモードとの切り替えに際しての電子機器100の動作について、図24を参照しつつ、詳しく説明する。図24は、マウスモードとタブレットモードとの切り替え時の電子機器100の動作について説明するための図である。
本実施の形態においては、電子機器100は、すでに説明したように、基本的には、センターキー242の押下に応じて、動作モードを切り替える。電子機器100は、タブレットモードからマウスモードに移行することも、マウスモードからタブレットモードに移行することも可能である。
本実施の形態では、電子機器100は、タブレットモードからマウスモードに移行する際に、液晶パネル240への入力の処理方法の変更を行なう。すなわち、電子機器100は、液晶パネル240への入力を、サブアプリケーションへの動作指示ではなく、マウス動作指示であるとして扱うようにする。また、電子機器100は、マウスモードへの移行時に、液晶パネル240にマウス画面を表示する。
ただし、電子機器100は、マウスモードに移行した後も、タブレットモードにおいて実行していたアプリケーションを動作させ続けておく。このことにより、電子機器100は、マウスモードからタブレットモードに移行する際に、スムーズに液晶パネル240に画面を表示することができる。これは、サブアプリケーションの立ち上げ時間が不要であるためである。
また、タブレットモードにおいて実行していたアプリケーションを動作させ続けてることにより、ユーザがタブレットモードの途中に一時的に液晶パネル140によりマウス動作を行なう場合の操作性が向上する。例えば、電子機器100が、タブレットモードからマウスモードに移行したのち、タブレットモードに再び移行することを考える。電子機器100は、上のように動作するため電子機器100は、マウスモードへの移行前と移行後において、同一のサブアプリケーションの動作画面を液晶パネル240に表示する。したがって、ユーザは、マウス動作を行なった後、マウス動作前のサブアプリケーションを引き続き利用することができる。
また、電子機器100は、マウスモードのみならずタブレットモードにおいても、メインアプリケーションの動作画面を液晶パネル140に表示する。したがって、電子機器100は、メインアプリケーションの動作画面の見易さを損なうことなく、ユーザに、サブアプリケーションの操作を行なわせることができる。
(動作開始時のモード)
特に、電子機器100の動作開始時に関係する動作モードの切り替えについて説明しておく。本実施の形態においては、電子機器100の動作開始には、大きく分けて、(i)電源オフ状態からの起動(以下、通常起動とよぶ)と、(ii)省電力状態からの起動(以下、再開とよぶ)との2つがあるものとする。
ここで、「電源オフ状態」とは、電子機器100の各部(電子機器100の起動に必要な部分を除く)の動作が停止した状態である。「省電力状態」は、電子機器100の動作の一部が停止した状態である。
省電力状態には、「スタンバイ状態」と、「休止状態」と、スタンバイ状態と休止状態との組み合わせである「スリープ状態」とがある。
スタンバイ状態への移行指示を受け付けると、電子機器100は、作業中のデータをRAM171に保存する。また、電子機器100は、動作の再開に必要な部分(電源回路192、電源検出部193、RAM171など)を除く部分への電源の供給を止める。
休止状態への移行指示を受け付けると、電子機器100は、作業中のデータをハードディスク170に保存する。また、電子機器100は、動作の再開に必要な部分(電源回路192、電源検出部193など)以外への電源の供給を停止する。
スリープ処理の指示時には、電子機器100は、作業中のデータを、まずメモリに格納する。そして、電子機器100は、スリープ状態で、指示から所定の時間が経過すると、メモリに格納されたデータをメモリからハードディスクに移す。
ただし、省電力状態の種類は、上述のものに限られるわけではない。また、電子機器100は、必ずしもこれらすべての省電力化処理を準備できなくてもよい。
さて、まず、(i)通常起動における動作モードについて図25を参照しつつ説明する。図25は、通常起動時の動作モードを模式的に示した図である。
通常起動時には、電子機器100は、まず、OS(Operating System)を起動するためのブート処理を行なう。ブート処理の間、電子機器100は、液晶パネル140に、ブート画面2501を表示する。また、ブート処理の間、電子機器100の動作モードは、マウスモードである。電子機器100は、液晶パネル240に所定のマウス画面(以下、固定画面とよぶ)2502を表示する。固定画面2502は、ガイダンス表示を含まない。ブート処理の間、モード切替は実行不可能であるためである。
ブート処理が完了すると、電子機器100は、ログイン画面2503を液晶パネル140に表示する。この時も、電子機器100は、固定画面2504を表示する。
電子機器100は、ログインが完了すると、液晶パネル140にデスクトップ画面2505を表示する。また、電子機器100は、液晶パネル240にマウス画面2506を表示する。この段階において、電子機器100は、マウスモードからタブレットモードへの切り替えを行なうことができるようになっている。これにともない、マウス画面2506は、図21に示したマウス画面600と同様に、ガイダンス表示を含む。
なお、タブレットモードにおけるデフォルトのサブアプリケーションは、ホームアプリケーションであるとする。すなわち、電子機器100が、起動後(電源を入れた後)、最初にタブレットモードで動作するときは、ホームアプリケーションを実行する。
次に、(ii)復帰における動作モードについて図26を参照しつつ説明する。図26は、復帰時の動作モードを模式的に示した図である。
再開時には、電子機器100は、まず、メモリやハードディスクなどの記憶装置に格納された、作業状態に関するデータを読み出す。この間、電子機器100は、液晶パネル140に、再開中画面2601を表示する。また、この間、電子機器100の動作モードは、マウスモードである。電子機器100は、液晶パネル240に固定画面2602を表示する。
作業状態の読出しが完了すると、電子機器100は、ログイン画面2603を液晶パネル140に表示する。この時も、電子機器100は、固定画面2604を表示する。
電子機器100は、ログインが完了すると、読み出した作業状態に基づいて、液晶パネル140に、省電力状態への移行直前に液晶パネル140に表示されていた表示画面2605を再び表示する。また、電子機器100は、液晶パネル240に、省電力状態への移行直前に動作していたサブアプリケーションに基づく表示画面2606を表示する。
なお、電子機器100は、ログインの完了後、液晶パネル140に、必ず、マウス画面を表示してもよい。再開後にユーザが最初に行なう動作がマウス動作であることが見込まれる場合などには、この処理によって操作性を向上することができる。
<タブレットモード時の動作>
ここからは、タブレットモード時の電子機器100の動作について、図27を参照しつつ、より詳しく説明する。図27は、タブレットモード時の電子機器100の動作について説明するための図である。
タブレットモードにおいて、電子機器100は、大きく分けて、ホームアプリケーションの実行、入力パッドアプリケーションの実行、または、サブ画面活用ソフトの実行のいずれかを行なう。
電子機器100は、ホームアプリケーションの実行中、ホームメニュー画面800aを液晶パネル240に表示する。電子機器100は、ホームアプリケーションの実行中、液晶パネル240への所定位置(操作ボタン表示によって示される)へのタッチを受け付けると、入力パッドを呼び出す。また、電子機器100は、ホームアプリケーションの実行中、液晶パネル240への所定位置へのタッチを受け付けると、サブ画面活用ソフトの実行を開始する。
電子機器100は、入力パッドを呼び出すと、入力用の画面を液晶パネル240に表示する。図27を参照して、本実施の形態においては、3種の入力パッド、すなわち、手書き文字入力パッドと、手描きイラスト入力パッドと、電卓/数字入力パッドとがある。液晶パネル240に表示される画面2702〜2704は、それぞれ、手書き文字入力パッドと、手描きイラスト入力パッドと、電卓/数字入力パッドの動作画面である。各入力パッドの詳細については後述する。
また、電子機器100は、入力パッドの実行時に所定の指示を受け付けると、ホームアプリケーションを起動する。本実施の形態では、入力パッドの動作画面は、ホームボタンを含んでおり、電子機器100は、ホームボタンへのタッチに応じて、入力パッドを終了し、ホームアプリケーションを起動する。
図27を参照して、本実施の形態におけるサブ画面活用ソフトとしては、2画面活用ガイド、インターネット、辞書、本、写真、ゲームがある。
「2画面活用ガイド」は、オンラインマニュアルである。電子機器100は、2画面活用ガイドを実行すると、外部サーバからマニュアルを取得し、液晶パネル240(または液晶パネル140、あるいは、液晶パネル140および液晶パネル240の両方)にマニュアルを表示する。
「インターネット」は、Webブラウザを起動し、ホームページを呼び出すためのソフトであり、以下、Webページ呼び出しソフトとよぶ。このソフトの動作の詳細については、後述する。
「辞書」は、電子辞書を呼び出すためのソフトであり、以下、辞書呼び出しソフトと呼ぶ。本実施の形態では、このソフトは、複数の電子辞書の中から1つの電子辞書を呼び出す。このソフトの動作の詳細については、後述する。
「本」は、ブックビューアで閲覧する電子書籍(例えば、XMDF形式の書籍)を選択するためのソフトである。「写真」は、写真スライドショーの表示のためのソフトである。
「ゲーム」は、液晶パネル240にゲーム画面を表示するゲームソフトである。本実施の形態では、「ゲーム」は、液晶パネル240のタッチ操作を活かしたゲームであるとする。
電子機器100は、サブ画面活用ソフトの実行時に所定の指示を受け付けると、サブ画面活用ソフトを終了し、ホームアプリケーションを起動する。本実施の形態では、サブ画面活用ソフトの動作画面は、ホームボタンを含んでおり、電子機器100は、ホームボタンへのタッチに応じて、ホームアプリケーションを起動する。
(手書き文字入力パッド)
手書き文字入力パッドを実行する電子機器100(具体的にはアプリケーションを実行するCPU210)の動作について、図28を参照しつつ説明する。図28は、手書き文字入力パッドの起動中に電子機器100が液晶パネル240に表示する画面(文字入力画面)の一例を示す図である。
図28を参照して、文字入力画面は、センターガイダンス表示814と、マウス不可表示830と、ホームボタン840と、テキストボックス2801と、貼付ボタン2802と、候補エリア2803と、後退ボタン2804と、手書きエリア2805と、認識モード切替ボタン2806と、認識ボタン2807と、消去ボタン2808とを含む。
テキストボックス2801は、手書き文字認識の結果、確定した文字を表示する。テキストボックス2801は、確定した文字を最大10文字まで表示可能である。ただし、テキストボックス2801に表示される文字の最大数は、これに限られるわけではない。
貼付ボタン2802が、テキストボックス2801に文字列(1文字または複数の文字)が存在する場合に、押下されると、電子機器100は、液晶パネル140に表示されているアクティブなアプリケーションに文字列を送信する。
また、貼付ボタン2802は、テキストボックス2801に文字列が存在しない場合は、Enterキーとして機能する。例えば、ユーザは、貼付ボタン2802を押下して、検索ボックスに文字列を送信した後、再び、貼付ボタン2802を押すことで、アプリケーションに検索を実行させることができる。なお、テキストボックス2801に文字列が存在しない(あるいは、貼付ボタン2802がEnterキーとして機能する)場合、電子機器100は、貼付ボタン2802に表示する文字を「Enter」に変更する。
候補エリア2803は、入力の認識候補を表示する。本実施の形態では、候補エリア2803は、認識候補を、第1候補から順に上から最大で5つ表示する。ただし、候補エリア2803に表示される候補の最大数は、これに限られるわけではない。
本実施の形態では、電子機器100は、第1候補(候補エリア2803の1番上の文字)は、自動的にテキストボックス2801に追加する。また、電子機器100は、候補エリア2803内の候補の選択に応じて、追加された文字を変更することができる。第1候補は、ユーザ入力しようとしていた文字である可能性が高いため、第1候補を自動的にテキストボックス2801に追加することで、ユーザによる操作回数を削減できる。
後退ボタン2804が押下されると、電子機器100は、テキストボックス2801内の文字列のうち最後の文字を消去する。なお、テキストボックス2801に文字列がない場合は、電子機器100は、後退ボタン2804の押下にともなう動作は行なわない。
手書きエリア2805は、外部からの入力を受け付ける。電子機器100は、手書きエリア2805への入力の履歴に対応する手書き文字データ432aを作成し、記憶部430に格納する。電子機器100は、例えば、所定の時間内に入力があった座標すべて、あるいは、所定の時間内で時間的に連続する入力の開始および終了時の座標を、手書き文字データ432aとして作成する。また、電子機器100は、入力を受け付けた座標(あるいは手書き文字データ432a)に対応する図形を手書きエリア2805に表示する。
本実施の形態では、手書きエリア2805は、2つの領域(エリア2805aおよびエリア2805b)を含む。電子機器100は、エリア2805aおよびエリア2805bのそれぞれの手書き文字データ432aを作成する。なお、手書きエリア2805は2つの領域とは限らない。
認識モード切替ボタン2806は、手書き入力の認識モードを切り替える。本実施の形態では、「自動モード」および「手動モード」の2つの認識モードがある。なお、手書き入力パッドを最初に起動したときの認識モードは、自動モードであるとする。
「自動モード」では、電子機器100は、ペンアップ(手書きエリア2805への入力の終了)から所定の時間経過後に、自動的に、手書きエリア2805への入力の文字認識を開始する。自動モードには、ユーザの操作回数を削減できるという利点がある。なお、電子機器100は、自動モードにおいて、ペンアップではなく、他のイベント、例えば、手書きエリア2805への入力開始から所定の時間経過後に、文字認識を自動開始してもよい。また、手書き入力を行なっていた手書きエリア2805a(または2805b)とは別の手書きエリア2805b(または2805a)への入力の開始も文字認識の自動開始イベントとなる。
「手動モード」では、電子機器100は、認識ボタン2807の押下まで、文字認識を開始しない。手動モードには、ユーザが落ち着いて文字入力を行なうことができるという利点がある。
認識ボタン2807が押下されると、電子機器100は、入力エリア2805への入力に基づく手書き文字データ432aの文字認識を開始する。なお、自動モード中にも、認識開始時間よりも先に認識ボタン2807が押下されれば、電子機器100は、手書き文字データ432aの文字認識を開始する。
消去ボタン2808が押下されると、電子機器100は、入力エリア2805に表示されている図形および手書き文字データ432aを消去する。消去ボタン2805は、ユーザが文字認識前に手書きした文字を書きなおす際に使用される。
手書き文字入力パッドの利用方法について、図29および図30を参照して説明する。図29および図30は、それぞれ、手書き文字入力パッド利用時の電子機器100の動作を説明するための図である。ここでは、ユーザが、検索ボックスを含む画面を表示するアプリケーション(Webブラウザなど)の利用中に、液晶パネル240を利用して「河豚(ふぐ)」に関する検索を行なう場合の動作例を説明する。
図29(a)は、マウスモードにおいて液晶パネル140および液晶パネル240が表示する画面を示す。この時、液晶パネル240は、マウス画面2920を表示している。液晶パネル140は、メインアプリケーションの動作画面2910を表示する。動作画面2910は、検索ボックス2912および検索開始ボタン2914を含む。液晶パネル240上の指900の移動にともなうマウス動作により、検索ボックス2912がアクティブになっているものとする。
図29(b)は、図29(a)に示す状態で、モードの切替指示(具体的には、センターキー242の押下)があったあとの液晶パネル240の表示画面2930を示す。
ここでは、表示画面2930は、ホームメニュー画面である。
図29(c)は、図29(b)に示す状態で、手書き文字入力パッドの呼び出し用のボタン(図29(b)中黒丸で囲んでいる)が押下されたあとの液晶パネル240の表示画面2940を示す。表示画面2940は、文字入力画面である。
図29(d)は、スタイラス950により表示画面2940に対し手書き入力がなされたときの液晶パネル240の表示画面2950を示す。表示画面2950の入力エリアには、手書き入力に対応する図形2952が表示される。
図29(e)は、図29(d)に示すスタイラス950が液晶パネル240から離れたときの液晶パネル240の表示画面2960を示す。表示画面2950の候補エリアには、手書き入力に対応する候補文字が表示されている。また、テキストボックスには、第1候補の文字2962(ここでは、文字「河」)が表示される。
図29(f)は、第1候補の文字2962が確定されたときの液晶パネル240の表示画面2970を示す。文字2972は、確定された文字である。
図30(g)は、図29(f)に示す時点のあと、ユーザがスタイラス950による手書き入力を行なった状態の液晶パネル240の表示画面3010を示す図である。表示画面3010は、手書き入力に対応する図形3012を含む。
図30(h)は、図30(g)に示すスタイラス950が液晶パネル240から離れたときの液晶パネル240の表示画面3020を示す。表示画面2950の候補エリアには、手書き入力に対応する候補文字が表示されている。また、テキストボックスには、第1候補の文字3022(ここでは、文字「膝」)が、すでに確定された文字「河」の右側に追加される。
図30(i)は、図30(h)に示す状態で、スタイラス950により候補エリア内の文字3032(「豚」)が押下されたときの液晶パネル240の表示画面3030を示す。文字3032の押下にともない、テキストボックス内に表示されていた文字「膝」が「豚」(文字3034)に変化する。
図30(j)は、文字3034(「豚」)が確定されたあとの、液晶パネル140の表示画面3040および液晶パネル240の表示画面3050を示す。表示画面3040は、検索ボックス3042および検索開始ボタン3044を含む。文字3034の確定後、表示画面3050内の貼付ボタンがスタイラス950により押下されると、テキストボックス内の文字列「河豚」が、アクティブな検索ボックス3042に入力される。これにともない、検索ボックス3042には、文字列「河豚」が表示される。
図30(k)は、図30(j)に示す状態の後、Enterボタン(貼付ボタン)が押下されたあとの、液晶パネル140の表示画面3060および液晶パネル240の表示画面3070を示す。表示画面3070内のEnterボタンの押下は、検索開始キー3044の押下と同じ効果を発揮する。すなわち、メインアプリケーションは、Enterボタンの押下に応じて、検索ボックス3042内の文字列「河豚」に関する検索を実行し、検索結果を示す表示画面3060を液晶パネル140に表示する。
なお、本実施の形態では、テキストボックスが一杯(テキストボックスに、入力可能な最大数の文字が入力されている)ときは、電子機器100は、それ以上、手書きを受け付けない。テキストボックスが一杯のときの電子機器100の動作を図31を参照して説明する。図31は、テキストボックスが一杯のときの電子機器100の動作を説明するための図である。
図31(a)は、すでにテキストボックスが一杯の(テキストボックスに10文字入っている)状態で、ユーザがスタイラス950により入力エリアに入力をしようとしている状態を示している。この時の液晶画面240の表示画面3110のテキストボックスには、文字列3112(10文字の文字列「あいうえおかきくけこ」)が表示されている。
スタイラス950が液晶パネル240に接触すると、電子機器100は、警告表示3122を含む画面3120を液晶パネル240に表示する(図31(b)参照)。警告表示3122は、文字の確定、すなわち、貼付ボタンの押下を促す文字列を含む。ここでは、警告表示3122が含む文字列は「貼付ボタンにタッチしてください」としているが、文字列はこれに限られるわけではない。
警告表示3122の表示後、液晶パネル240は、表示画面3110と同様の表示画面3130を表示する(図31(c)参照)。ユーザは、この表示画面3130の表示中に、貼付ボタンを押して文字列を確定したり、後退ボタンを押してすでに入力された文字を消去したりすることで、文字入力を続けることができる。なお、電子機器100は、例えば、警告表示3122の表示から所定の時刻の経過後に自動的に、あるいは、液晶パネル240への何らかの指示に応じて、図31(b)の状態から図31(c)の状態に移行するものとする。
なお、本実施の形態では、手書き文字データ432aは、RAM271などに一時的に記憶されており、電子機器100は、手書き文字入力パッドの終了の際、手書き文字データ432aを破棄するものとする。したがって、手書き文字入力パッドを再度呼び出した際には、ユーザは、新しく文字を入力することができる。
ただし、電子機器100は、手書き文字データ432aを保持しておき、再度の手書き入力パッドの利用時に、ユーザが前回の続きから手書き入力を行なえるようにしてもよい。この場合、電子機器100は、手書き文字入力パッドの再開時に、手書き文字データ432aに基づいて、手書き文字データ432aに対応する図形を液晶パネル240に表示する。
なお、ユーザが、手書き文字入力パッドに上の2つの動作のいずれを行なわせるかを選択できてもよい。この場合、ユーザは、手書き文字入力パッドが上の2つの動作のいずれを行なわせるかを、手書き文字入力の使用態様に応じて、適宜定めることができる。
(手描きイラスト入力パッド)
手描きイラスト入力パッドを実行する電子機器100(具体的にはアプリケーションを実行するCPU210)の動作について、図32を参照しつつ説明する。図32は、手描きイラスト入力パッドの起動中に電子機器100が液晶パネル240に表示する画面(イラスト入力画面)の一例を示す図である。
図32を参照して、イラスト入力画面は、センターガイダンス表示814と、マウス不可表示830と、ホームボタン840と、描画エリア3201と、元に戻すボタン3202と、ペン/定規/消しゴムボタン3203と、ペン太さボタン3204と、ペン色ボタン3205と、スタンプボタン3206と、フレームボタン3207と、全消去ボタン3208と、画面キャプチャーボタン3209と、メール添付ボタン3210と、ファイル保存ボタン3211と、貼付ボタン3212とを含む。
描画エリア3201は、外部からの入力を受け付ける。電子機器100は、描画エリア3201への入力および描画設定(入力ツール、ペン太さ、ペン色など)に基づいて、イラストデータ432bを作成し、記憶部430に格納する。イラストデータ432bは、手書き文字データ432aと同様に、所定の時間内に入力があった座標すべて、あるいは、所定の時間内で時間的に連続する入力の開始および終了時の座標を含む。イラストデータ432bは、さらに、描画設定(入力ツール、ペン太さ、ペン色など)に関するデータを含む。
本実施の形態では、描画エリア3201の横長さと縦長さとの比は、4:3である。これは、手書きイラスト入力パッドを用いて、写真の加工も行なうためである。ただし、描画エリア3201の縦横比は、これに限られるものではない。
元に戻すボタン3202は、描画エリア3201への直前の入力動作を取り消すためのボタンである。電子機器100は、入力履歴432に記録されている入力を時間順に管理しており、元に戻すボタン3202が押下されると、直前の入力を入力履歴432から削除する。それと同時に、電子機器100は、直前の入力に対応する描画データに基づく図形の表示も描画エリア3201から消去する。
ペン/定規/消しゴムボタン3203は、描画エリア3201への描画ツールを選択するためのボタンである。ペン/定規/消しゴムボタン3203の押下に応じて、電子機器100は、描画ツールをペン、定規、消しゴム、ペン…の順に切り替える。
ペン太さボタン3204は、ペン太さの設定のためのボタンである。電子機器100は、ペン太さボタン3204の押下に応じて、ペンツールの選択時に描画エリア3201への入力に応じて描かれる線の太さの設定を変更する。あるいは、電子機器100は、ペン太さボタン3204が押下されると、線の太さをユーザに設定させるための画面を液晶パネル240に表示してもよい。
ペン色ボタン3205は、ペン色の設定のためのボタンである。ペン色ボタン3205の押下に応じて、ペンツールの選択時に描画エリア3201への入力に応じて描かれる線の色の設定を変更する。あるいは、電子機器100は、ペン色ボタン3205が押下されると、線の色をユーザに設定させるための画面を液晶パネル240に表示してもよい。
スタンプボタン3206は、描画エリア3201への入力に応じて、描画エリア3201にスタンプが描かれるようにするためのボタンである。
フレームボタン3207は、描画エリア3201に描かれるイラストに、飾り枠などのフレームを追加するためのボタンである。
全消去ボタン3208は、イラストデータ432bを全て削除するためのボタンである。ユーザは、このボタンを押すことで、描画エリア3201を、手描きイラスト入力パッド起動時の状態(無地)にすることができる。
画面キャプチャーボタン3209は、液晶パネル240に表示されている画面全体を保存するためのボタンである。メール添付ボタン3210は、イラストデータ432bを、電子メールに添付するためのボタンである。ファイル保存ボタン3211は、イラストデータ432bを、指定された記憶領域に保存するためのボタンである。イラストデータ432bを記憶する領域は、固定のものであってもよいし、ユーザにより指定可能であってもよい。
貼付ボタン3212は、イラストデータ432bを、アクティブなメインアプリケーションに送るためのボタンである。貼付ボタン3212が押下されると、電子機器100は、手描きイラスト入力パッドが作成したイラストデータ432bを、アクティブなメインアプリケーションに与える。ユーザは、手描きイラスト入力パッドを用いて、例えば、メインアプリケーションで作成中の書類の中に、イラストを挿入することができる。
なお、本実施の形態では、図23を参照して説明したように、手描きイラスト入力パッドは、手描きイラスト入力パッドの終了指示を受け付けた際に、作成した手描きイラストデータ432bの保存の要否を問い合わせる。ただし、この問い合わせは、必須ではない。手描きイラスト入力パッドは、終了時に、それまでに作成された手描きイラストデータ432bを自動的に破棄してもよい。
(電卓/数字入力パッド)
電卓/数字入力パッドを実行する電子機器100(具体的にはアプリケーションを実行するCPU210)の動作について、図33を参照しつつ説明する。図33は、電卓/数字入力パッドの起動中に電子機器100が液晶パネル240に表示する画面(電卓画面)の一例を示す図である。
図33を参照して、電卓画面は、センターガイダンス表示814と、マウス不可表示830と、ホームボタン840と、数字ボックス3301と、貼付ボタン3302と、数字ボタン3303と、機能ボタン3304とを含む。
数字ボックス3301は、入力された数字、または、計算結果の数字を表示する。数字ボックス3301が表示できる数字の最大数は、8つであるとする。ただし、最大数は、8つに限られない。
貼付ボタン3302が押下されると、電子機器100は、液晶パネル140に表示されているアクティブなアプリケーションに数字ボックス3301に表示されている数字を送信する。
数字ボタン3303は、数字ボックス3301に数字を入力するためのボタンである。機能ボタン3304は、四則演算などの所定の演算を指示するボタンである。数字ボタン3303および機能ボタン3304が押下されたときの電子機器100の動作は、通常の電卓あるいは電卓アプリケーションの動作と同様であるので、ここでは、その詳細な説明を繰り返さない。
(インターネット)
サブ画面活用ソフトの1つであるWebページ呼び出しソフトを実行する電子機器100(具体的にはアプリケーションを実行するCPU210)の動作について、図34を参照しつつ説明する。図34は、Webページ呼び出しソフトの起動中に電子機器100が液晶パネル240に表示する画面(インターネット画面)の一例を示す図である。
図34を参照して、インターネット画面は、ガイダンス表示810(左ガイダンス表示812、センターガイダンス表示814および右ガイダンス表示816)と、複数の操作ボタン表示820と、マウス不可表示830と、ホームボタン840とを含む。
操作ボタン表示820は、それぞれ、呼び出すWebページに対応している。各操作ボタン表示820は、対応するWebページの名称(図中、「インターネット2」など)を表わす文字を含む。電子機器100は、操作ボタン表示820に対応する領域へのタッチを検出すると、Webブラウザを起動して、選択されたWebページを液晶パネル140(あるいは液晶パネル240)に表示する。
なお、Webページ呼び出しソフトは、液晶パネル240にスクロールバーを表示してもよい。スクロールバーを含むインターネット画面の一例を図35に示す。図35を参照して、インターネット画面は、スクロールバー3500を含む。ユーザが、スクロールバー3500中のスライダ3502をドラッグすると、Webページ呼び出しソフトは、インターネット画面をスクロールする。
(辞書)
サブ画面活用ソフトの1つである辞書呼び出しソフトを実行する電子機器100(具体的にはアプリケーションを実行するCPU210)の動作について、図36を参照しつつ説明する。図36は、辞書呼び出しソフトの起動中に電子機器100が液晶パネル240に表示する画面(辞書選択画面)の一例を示す図である。
図36を参照して、辞書選択画面は、ガイダンス表示810(左ガイダンス表示812、センターガイダンス表示814および右ガイダンス表示816)と、複数の操作ボタン表示820と、マウス不可表示830と、ホームボタン840とを含む。
操作ボタン表示820は、それぞれ、呼び出す電子辞書に対応している。各操作ボタン表示820は、対応する電子辞書の名称(図中、「英和辞典」など)を表わす文字を含む。電子機器100は、操作ボタン表示820に対応する領域へのタッチを検出すると、電子辞書を起動して、起動した電子辞書の画面を液晶パネル140(あるいは液晶パネル240)に表示する。
なお、辞書呼び出しソフトは、液晶パネル240にスクロールバーを表示してもよい。スクロールバーを含む辞書選択画面の一例を図37に示す。図37を参照して、辞書選択ト画面は、スクロールバー3700を含む。ユーザが、スクロールバー3700中のスライダ3702をドラッグすると、辞書呼び出しソフトは、辞書選択画面をスクロールする。
<タイムカウント制御>
すでに述べたように、本実施の形態では、タブレットモードからマウスモードへの移行後も、タブレットモードで動作していたサブアプリケーションは動作し続けている。このようにサブアプリケーションを動作させると、サブアプリケーションがユーザの予期しない動作を行なう不都合が発生する可能性がある。
具体例として、手書き文字入力アプリケーションの動作に際して起こるおそれのある不都合について、図38を参照して、説明する。図38は、手書き文字入力アプリケーションの動作に際して起こるおそれのある不都合について説明するための図である。
図38(a)は、タブレットモードにおける、手書き文字入力アプリケーションの動作画面3810を示す。動作画面3810は、ユーザがスタイラス950により入力エリアに手書き入力を行ない、文字認識がまだなされていない時点でのものである。
図38(a)に示す状態においてセンターキー242の押下などによるモード切替指示があったとき、液晶パネル240は、液晶パネル240にマウス画面3820を表示する。
ただし、マウス画面3820の表示中も、手書き文字入力アプリケーションは動作し続ける。この間の動作について、図38(c)および図38(d)を参照して説明する。図38(c)および図38(d)は、それぞれ、マウスモードへの切り替えがないとした場合に、手書き文字入力アプリケーションにより液晶パネル240に表示される仮想的な画面を示す図である。
ここでの例では、手書き文字入力アプリケーションの認識モードは、「自動モード」であるとする。したがって、ペンアップから第1の所定の時間(t1とする)の経過後に、手書き文字入力アプリケーションは、文字認識を開始する。図38(c)の画面3830は、文字認識後の仮想的な画面である。このときの認識の第1候補は、文字「洶」であったとする。
さらに、文字認識から第2の所定の時間(t2とする)の経過後に、手書き文字入力アプリケーションは、文字を確定する。図38(d)の画面3840は、文字確定後の仮想的な画面である。
マウスモードへの切り替えから、t1+t2を超える時間が経過した後、再び、タブレットモードへの切替指示があると、液晶パネル240は、手書き文字入力アプリケーションの動作画面3850を表示する。
図38に示した電子機器100のカウント動作について、図39を参照して、まとめておく。図39は、図38に示した電子機器100のカウント動作について説明するための図である。
手書き文字入力アプリケーションが実行されている間、手書き文字入力アプリケーションを実行するCPU210は、タイマ273から取得した時刻データ436に基づいて、所定のイベントからの経過時間をカウントする。具体的には、CPU210は、液晶パネル240の手書きエリアへのタッチの終了、あるいは、文字認識の終了からの経過時間をカウントする。
より具体的には、CPU210は、手書きエリアへのタッチを示す信号を受け取っていない間、経過時間のカウンタ値を時間の経過にあわせて増加させる。CPU210は、手書きエリアへのタッチを示す信号を受け付けると、または、文字認識が終了すると、カウンタ値をリセットする(0にする)。
タブレットモードにおけるタッチが終了し、動作モードがタブレットモードからマウスモードになったあとも、CPU210は、経過時間のカウントを続ける。そのため、マウスモードの間に、カウンタ値が、文字認識のための待ち時間t1に到達する。CPU210は、この時点で、文字認識を実行する。
さらに、文字認識後、CPU210は、カウンタを一度リセットした後、経過時間のカウントを続ける。マウスモードの間に、カウンタ値が、文字確定のための待ち時間t2に到達する。CPU210は、この時点で、文字を確定する。なお、文字を確定するためのカウンタ値をt1+t2に設定するのであれば、CPU210は、文字認識器の終了時に、カウンタをリセットする必要はない。
図38および図39を用いて説明してきたように、マウスモードの間にサブアプリケーションを単純に動作させると、ユーザが行なっていた手書き入力が、認識および確定されてしまうことがある。このようなマウスモード中のサブアプリケーションの動作は、ユーザの意図に反している可能性がある。
例えば、ユーザは、マウスモードへの移行前に行なっていた手書き入力に続けて、さらに手書き入力を行なうことができなくなることがある。また、確定されたユーザの文字が意図していた文字と異なる可能性もある。実際、図38に示す場合では、ユーザは、「河」と手書き入力していたが、確定された文字は「洶」である。このような場合、ユーザは、確定された文字の取り消し、および、再度の手書き入力といった余分な操作を行なわなければならなくなる。
そこで、本実施の形態に係る電子機器100は、入力を中断してマウスモードに移行する際には、タイマのカウントを停止する。そのため、ユーザは、タブレットモードの再開後に、マウスモードへの移行前に行なっていた手書き入力に続けて、手書き入力を行なうことができる。本実施の形態に係る手書き入力動作について図40を参照して説明する。図40は、本実施の形態に係る手書き入力動作について説明するための図である。
図40(a)〜図40(e)に示す画面4010〜画面4050は、それぞれ、図38(a)〜図38(e)に示す画面3810〜画面3850に対応する。ユーザは、液晶パネル240に対し、図38に示したものと同様の動作を行なうものとする。
図38との違いは、マウスモード時に、タイマのカウントが行なわれないことにある。したがって、図40(c)および図40(d)に示す仮想的な画面4030および4040は、マウスモードへの切り替え前の画面4010に同じである。また、タブレットモード再開時の画面4050も、画面4010に同じである。つまりユーザはタブレットモード再開時に、画面4010と同じ内容の画面4050を表示している液晶パネル240にタッチすることで、マウスモードへの移行前に行なっていた入力の続きから再び入力を行なうことができる。
以下、電子機器100が行なうタイムカウントについて具体的に説明する。電子機器100は、以下の4種類のタイムカウントを行なうことができる。電子機器100は、例えば、ユーザによる設定にしたがって、1つのタイムカウントを行なう。あるいは、電子機器100は、サブアプリケーションの種類によって、自動的に実行するタイムカウントを決定してもよい。ただし、電子機器100は、以下の4種類のタイムカウントすべてを行なえる必要はない。電子機器100は、少なくとも1種類のタイムカウントを行なえればよい。
(第1のタイムカウント:カウント停止)
第1のタイムカウントを行なう場合、CPU210は、マウスモードの間、タイムカウントを停止する。すなわち、CPU210は、マウスモードの間、時間が経過しても、カウンタ値を増加させず、カウンタ値をマウスモードへの移行直前の値に保つ。また、CPU210は、マウスモードからタブレットモードへの切替指示に応じて、タイムカウントを再開する。
図41を参照して、第1のタイムカウントを行なった場合のCPU210の動作について説明する。図41は、第1のタイムカウントについて説明するための図である。図41では、図38や図39の場合と同様に、ユーザが、手書き入力の途中に、マウスモードとタブレットモードとの切り替えを行なう場合のCPU210の動作例を示している。図41より、タブレットモードからマウスモードに切替えた時点でカウンタ動作が停止し、マウスモード中はカウンタ値が一定であることが分る。また、マウスモードからタブレットモードに復帰したタイミングでカウント動作が再開され、手書き入力動作(タッチ)が開始されるまでカウンタが増えている。タッチが再開されるとカウンタがリセットされ、次にタッチが終了するまでカウント動作が抑制され(すなわちタッチ中はカウント動作を行なわない)、タッチ終了後にカウンタが既定値(t1)を迎えた時点で認識動作を開始する。なお、タブレットモード再開後のタッチ開始以降の動作は通常の手書認識動作と同一である。
第1のタイムカウントによれば、電子機器100は、マウスモードの間に、文字の認識や確定を行なうことがない。すなわち、電子機器100は、マウスモードの間に、ユーザの意図によらない動作を行なうことがない。したがって、ユーザの操作性が向上する。具体的には、ユーザは、タブレットモードでの操作の連続性を妨げられることなしに、タブレットモードでの操作中に一時的にマウスモードによる操作を行なうことができる。
(第2のタイムカウント:カウント停止+リセット)
第2のタイムカウントを行なう場合、CPU210は、第1のタイムカウントを行なう場合と同様、マウスモードの間、タイムカウントを停止し、マウスモードからタブレットモードへの切替指示に応じて、タイムカウントを再開する。
さらに、CPU210は、第2のタイムカウントを行なう場合、CPU210は、タブレットモードからマウスモードへの切替指示に応じて、カウンタ値をリセットする。
図42を参照して、第2のタイムカウントを行なった場合のCPU210の動作について説明する。図42は、第2のタイムカウントについて説明するための図である。図42では、図38から図41の場合と同様に、ユーザが、手書き入力の途中に、マウスモードとタブレットモードとの切り替えを行なう場合のCPU210の動作例を示している。図42では、第2のタイムカウントを行なう場合のカウンタ値の変化を実線で示す。また、図42には、参照のため、第1のタイムカウントを行なう場合のカウンタ値の変化を点線で示している。
第2のタイムカウントによれば、第1のタイムカウントと同様、電子機器100は、マウスモードの間に、文字の認識や確定を行なうことがない。すなわち、電子機器100は、マウスモードの間に、ユーザの意図によらない動作を行なうことがない。したがって、ユーザの操作性が向上する。
さらに、第2のタイムカウントによれば、タブレットモードの再開時には、CPU210は、初期値(“0”)からタイムカウントを行なう。そのため、第1のタイムカウントに比べ、タブレットモードの再開から文字認識や確定などの動作が実行されるまでの時間が長い。第1のタイムカウントの場合、タブレットモードの再開後、ユーザが何もしないと、図42の丸で囲んだ時点で、文字認識が確定する。しかし、第2のタイムカウントを行なう場合、この時点では、まだ文字認識は確定しない。
したがって、ユーザは、タブレットモードの再開後、余裕を持って、サブアプリケーションを操作することができる。特に、タブレットモードからマウスモードへの復帰時のカウンタ値が閾値(t1やt2)をわずかに下回る値であった場合に、この方法は有効である。
なお、以上では、CPU210が、タブレットモードからマウスモードへの切替指示に応じて、カウンタ値をリセットするとしている。しかしながら、カウンタ値をリセットするタイミングはこれに限られない。CPU210は、タブレットモードの再開時点で、初期値からカウントを行なえるように、カウンタ値をリセットすればよい。例えば、CPU210は、タブレットモードの再開時に、カウンタ値をリセットしてもよい。
(第3のタイムカウント:カウント停止+入力開始または終了で再開)
第3のタイムカウントを行なう場合、CPU210は、第1のタイムカウントを行なう場合と同様、マウスモードの間、タイムカウントを停止する。
さらに、CPU210は、第3のタイムカウントを行なう場合、CPU210は、タブレットモードの再開後、液晶パネル240へのタッチの開始時点または終了時点までは、タイムカウント動作を停止する。すなわちCPU210は、液晶パネル240への最初のタッチの開始または終了イベントに応じて、タイムカウント動作を再開する。ただし、タッチの開始イベントに応じてタイムカウント動作を再開する場合は、実際にはタッチの終了時まではタッチ操作そのものがカウントを抑制する機能を有しているためカウンタが増加することはなく、見掛け上はタッチの終了時からカウント動作を再開した場合と区別が付かない。
図43を参照して、第3のタイムカウントを行なった場合のCPU210の動作について説明する。図43は、第3のタイムカウントについて説明するための図である。図43では、図38から図42の場合と同様に、ユーザが、手書き入力の途中に、マウスモードとタブレットモードとの切り替えを行なう場合のCPU210の動作例を示している。図43では、第3のタイムカウントを行なう場合(タッチ開始でカウントを再開する場合)のカウンタ値の変化を実線で示す。このとき、CPU210がタッチ開始でカウンタ値をリセットしており、タッチ終了まではカウント動作は抑制され、タッチ終了と共にカウント値が上昇する。
また、タッチ終了でカウントを再開する場合のカウンタ値の変化を点線Iで示す。この場合タッチ終了までは、カウンタ値はリセットされずマウスモード時と同じ値であり、タッチ終了時に、初期値にリセットされると共にカウント動作が始まる。
なお、以上では、手書き文字入力アプリケーションは、タッチ開始または終了時に、初期値からのカウント動作を開始するものとして説明してきた。しかしながら、本実施の形態では、アプリケーションは、タッチの開始または終了後に、カウンタ値をリセットしなくてもよい。図43には点線IIで、タッチの開始または終了時に、カウンタ値をリセットしない場合を示している。
また、図43には、参照のため、第1のタイムカウントを行なう場合のカウンタ値の変化を点線(タブレットモードの再開時点から右上に伸びる点線)で示している。
第3のタイムカウントによれば、第1のタイムカウントと同様、電子機器100は、マウスモードの間に、文字の認識や確定を行なうことがない。すなわち、電子機器100は、マウスモードの間に、ユーザの意図によらない動作を行なうことがない。したがって、ユーザの操作性が向上する。
さらに、第3のタイムカウントによれば、タブレットモードの再開時には、CPU210は、液晶パネル240の手書き入力エリアへのタッチの開始または終了イベントがあるまで、タイムカウント動作を再開しない。そのため、第1のタイムカウントに比べ、タブレットモードの再開から文字認識や確定などの動作が実行されるまでの時間が長い。第1のタイムカウントの場合、タブレットモードの再開後、ユーザが何もしないと、図43の丸で囲んだ時点で、文字認識が確定する。しかし、第3のタイムカウントを行なう場合、この時点では、まだ文字認識は確定しない。
したがって、ユーザは、タブレットモードの再開後、余裕を持って、サブアプリケーションを操作することができる。カウント動作の再開のきっかけはユーザ操作であるので、タブレットモードの再開後に、CPU210が、ユーザの指示なしに、ユーザの意図しない動作を行なうことはない。
(第4のタイムカウント:カウント停止+リセット+入力で再開)
以上の第3のタイムカウントの説明では、CPU210は、タブレットモードの再開後の、最初のタッチ開始または終了時に、CPU210が、カウント動作を再開していた。しかしながら、これらの動作に加え、タブレットモードの再開後の最初のタッチ開始または終了時に、CPU210が、カウンタ値をリセットすることは必須ではない。
そこで、第4のタイムカウントを行なう場合、CPU210は、第1から第3のタイムカウントを行なう場合と同様、マウスモードの間、タイムカウントを停止する。さらに、CPU210は、第2のタイムカウントの場合と同様、タブレットモードからマウスモードへの移行時に、カウンタ値をリセットする。さらに、CPU210は、第3のタイムカウントの場合と同様、タブレットモードの再開後、液晶パネル240へのタッチ開始または終了時点まで、カウント動作を停止する。
図44を参照して、第4のタイムカウントを行なった場合のCPU210の動作について説明する。図44は、第4のタイムカウントについて説明するための図である。図44では、図38から図43の場合と同様に、ユーザが、手書き入力の途中に、マウスモードとタブレットモードとの切り替えを行なう場合のCPU210の動作例を示している。図44では、第4のタイムカウントを行なう場合のカウンタ値の変化を実線で示す。また、図44には、参照のため、第1のタイムカウントあるいは第3のタイムカウントを行なう場合のカウンタ値の変化を点線で示している。CPU210がカウンタのリセットを行なうタイミングは、図44のようにタブレットモードからマウスモードへの移行時のほかに、マウスモードからタブレットモードに復帰時[I]や、タブレットモードの再開後の液晶パネル240へのタッチ開始時[II]、およびタッチ終了時[III]などが考えられる。
カウンタのリセットをもたらさない場合の、タッチ動作の開始または終了イベントがカウンタ再開のきっかけとなる第3のタイムカウントに比べて、第4のタイムカウントは、ユーザに更なる操作の余裕を提供することができる。
<処理の流れ>
(基本的な流れ)
図45を参照して、本実施の形態に係る電子機器100が行なう処理の流れについて説明する。図45は、電子機器100が行なう処理の流れをフローチャート形式で示す図である。なお、図45では、第1ユニット1001内の制御部350が行なう処理および第2ユニット1002内の制御部450が行なう処理をまとめて示している。
ステップS101において、制御部350および制御部450は、電子機器100の通常起動の指示あるいは再開の指示を受け付けると、通常起動処理あるいは再開処理を行なう。
通常起動とは、すでに説明しているとおり、電源オフ状態からの起動である。制御部350が行なう通常起動処理としては、例えば、ブート処理や、液晶パネル140へのブート画面の表示がある。制御部450が行なう通常起動処理としては、液晶パネル240へのブート画面の表示がある。
制御部350および制御部450は、電源オフ状態での所定のボタン(電源スイッチ191など)の押下などを通常起動の指示として扱う。なお、一方の制御部(制御部450または350)が、通常起動の指示を受け付けて、自らの通常起動処理を行なうとともに、他方の制御部(制御部350または450)へ通常起動処理の指示を与える構成であってもよい。
再開とは、すでに説明しているとおり、省電力状態からの起動である。制御部350が行なう再開処理としては、RAM171やHDD170などに格納された作業状態の読み出しや、液晶パネル140への再開中画面の表示がある。制御部450が行なう再開処理としては、RAM271やHDD170などに格納された作業状態の読み出しや、液晶パネル240への再開中画面の表示がある。
制御部350および制御部450は、省電力状態での所定のボタン(電源スイッチ191など)の押下や液晶パネル240へのタッチなどを再開処理の指示として扱う。なお、一方の制御部(450または350)は、再開指示を受け付けた他方の制御部(350または450)からの指示に応じて、再開処理を行ってもよい。
ステップS103において、制御部450に含まれるモード設定部454は、動作モードをマウスモードまたはタブレットモードのいずれかに決定する。
本実施の形態では、通常起動の場合の動作モードは、マウスモードに決められている。モード設定部454は、通常起動の場合、記憶部430内のモードデータ437をマウスモードを表わすデータに設定する。
また、モード設定部454は、再開時には、モードデータ437を、省電力状態前のモードデータ437の動作モードに基づいて決定する。この場合、制御部450は、省電力状態への移行時または再開時に、省電力状態前のモードデータ437をRAM271などに格納しておくものとする。あるいは、モード設定部454は、再開時には、モードデータ437を、常にマウスモードを表わすデータに設定してもよい。この場合、制御部450は、省電力状態前のモードデータ437の記憶処理を行なわなくてよい。
ステップS105において、入力処理部452は、動作モードがマウスモードであるか判定する。すなわち、入力処理部452は、モードデータ437に基づいて、動作モードがマウスモードかどうか判断する。
動作モードがマウスモードである場合(ステップS105においてYES)、制御部350および制御部450は、ステップS107のマウスモード動作に進む。動作モードがマウスモードでない場合(ステップS105においてNO)、制御部350および制御部450は、ステップS113のタブレットモード動作に進む。
ステップS107において、制御部350および制御部450は、マウスモード動作を行なう。すなわち、制御部350および制御部450は、液晶パネル240への入力がメインアプリケーションのマウス動作を起こすように、電子機器100の各部を制御する。マウスモード動作の詳細については後述する。
ステップS109において、モード設定部454は、モード切替指示を受け付けたかどうか判断する。具体的には、モード設定部454は、センターキー242の押下に応じた信号を受け付けたかどうか判断する。ただし、モード切替指示は、センターキー242の押下に限られるわけではない。
マウスモード中にモード切替指示があった場合(ステップS109においてYES)、制御部450は、ステップS111のマウスモードからタブレットモードへの切替処理を実行する。モード切替指示がない場合(ステップS109においてNO)、制御部350および制御部450は、ステップS107(マウスモード動作)からの処理を繰り返す。
ステップS111において、制御部450は、マウスモードからタブレットモードへの切替処理を実行する。例えば、制御部450は、ステップS111において、サブアプリケーションの動作画面の液晶パネル240への表示、パネル入力処理部453の動作切り替えを行なう。マウスモードからタブレットモードへの切替処理の詳細については後述する。ステップS111の終了後、制御部350および制御部450は、ステップS113のタブレットモード動作に進む。
ステップS113において、制御部350および制御部450は、タブレットモード動作を行なう。すなわち、制御部350および制御部450は、サブアプリケーションが液晶パネル240への入力に応じて動作するように、電子機器100の各部を制御する。タブレットモード動作の詳細については後述する。
ステップS115において、モード設定部454は、モード切替指示を受け付けたかどうか判断する。具体的には、モード設定部454は、センターキー242の押下に応じた信号を受け付けたかどうか判断する。ただし、モード切替指示は、センターキー242の押下に限られるわけではない。
タブレットモード中にモード切替指示があった場合(ステップS115においてYES)、制御部450は、ステップS117のタブレットモードからマウスモードへの切替処理を実行する。モード切替指示がない場合(ステップS115においてNO)、制御部350および制御部450は、ステップS113(タブレットモード動作)からの処理を繰り返す。
ステップS117において、制御部450は、タブレットモードからマウスモードへの切替処理を実行する。例えば、制御部450は、ステップS117において、マウス画面の液晶パネル240への表示、パネル入力処理部453の動作切り替えを行なう。タブレットモードからマウスモードへの切替処理の詳細については後述する。ステップS117の終了後、制御部350および制御部450は、ステップS107のマウスモード動作に進む。
なお、制御部350および制御部450は、電源オフの指示あるいは省電力状態への移行指示を受け付けた時点で、電源切断処理あるいは省電力状態への移行処理を行なう。これらの処理は割り込み処理であり、図45のいずれかのステップの後に行われる。ただし、これらの処理は、図45には示していない。
(マウスモード動作)
図45のステップS107におけるマウスモード動作について、図46を参照しつつ、詳細に説明する。図46は、マウスモード動作の処理の流れをフローチャート形式で示す図である。
まず、第1ユニット1001側の制御部350の動作について説明する。制御部350の動作の流れは、図46中、左側に示されている。
ステップS201において、制御部350は、インターフェース部340から座標データを取得する。この座標データは、第2ユニット1002側の制御部450が、インターフェース部440を介してインターフェース部340に送信したものである。
ステップS203において、制御部350は、座標データに基づいて、カーソル位置を決定する。ステップS203の処理を行なうのは、より具体的には、制御部350に含まれるプログラム実行部358である。プログラム実行部358は、プログラム334を実行して、カーソル位置を決定する。
ステップS205において、制御部350は、インターフェース部340からコマンドを取得する。このコマンドは、第2ユニット1002側の制御部450が、インターフェース部440を介してインターフェース部340に送信したものである。
ステップS207において、制御部350は、コマンドに応じたアプリケーション動作を行なう。具体的には、プログラム実行部358が、プログラム334を実行してアプリケーション動作を行なう。プログラム実行部358は、アプリケーションの種類、カーソル位置およびコマンドの種類に基づいて、アプリケーション動作を決定する。
アプリケーション動作は、現在普及しているアプリケーションのマウスのクリックにともなう動作と同様のものである。アプリケーション動作は、例えば、カーソル位置にあるファイルやフォルダの選択や起動、あるいは、カーソル位置にあるボタン(最小(最大)化ボタン、閉じるボタンなど)に応じた処理の実行などを含む。
続いて、第2ユニット1002側の制御部450の動作について説明する。制御部450の動作の流れは、図46中、右側に示されている。
ステップS301において、制御部450の入力処理部452に含まれるパネル入力処理部453は、液晶パネル240(パネル入力部422)からスキャン画像を取得する。
ステップS303において、パネル入力処理部453は、ステップS301にて取得したスキャン画像に基づいて、液晶パネル240への入力位置を特定する座標データを計算する。
ステップS305において、パネル入力処理部453は、インターフェース部440を制御し、座標データを、第1ユニット1001側のインターフェース部340へ送信する。
ステップS307において、パネル入力処理部453は、ステップS301の実行から、所定のスキャンサイクル時間が経過したかどうか判断する。スキャンサイクル時間が経過している場合(ステップS307においてYES)、パネル入力処理部453は、ステップS301(スキャン画像の取得)からの処理を繰り返す。スキャンサイクル時間が経過していない場合(ステップS307においてNO)、制御部450は、ステップS309の処理に進む。
ステップS309において、入力処理部452は、クリック動作があったかどうか判断する。具体的には、入力処理部452は、左クリックキー241または右クリックキー243の押下があったかどうかを判断する。なお、入力処理部452は、液晶パネル240へのタップ動作をクリック動作と判定してもよい。入力処理部452は、具体的には、所定の短時間内に液晶パネル240中の特定領域で、外部物体の検出開始および検出終了があった場合に、タップ動作があったと判断する。
クリック動作がない場合(ステップS309においてNO)、制御部450は、ステップS307からの処理を繰り返す。クリック動作があった場合(ステップS309においてYES)、制御部450は、ステップS311の処理に進む。
ステップS311において、入力処理部452は、インターフェース部440を制御し、ステップS309におけるクリック動作に応じて、コマンドを第1ユニット1001側のインターフェース部340に送信する。
ここで、入力処理部452は、クリック動作の種類に応じてコマンドの種類を決定するものとする。例えば、入力処理部452は、左クリックキー241が押下されたときと、右クリックキー243が押下されたときとで、異なるコマンドを送信する。
なお、以上では、クリック動作によるコマンド送信を説明してきた。しかしながら、コマンド送信を引き起こす動作は、クリック動作に限られない。例えば、入力処理部452は、ダブルクリックやドラッグなどに応じたコマンドを送信してもよい。
(タブレットモード動作)
図45のステップS113におけるタブレットモード動作について、図47を参照しつつ、詳細に説明する。図47は、タブレットモード動作の処理の流れをフローチャート形式で示す図である。
まず、第1ユニット1001側の制御部350の動作について説明する。制御部350の動作の流れは、図47中、左側に示されている。
ステップS401において、制御部350は、インターフェース部340からデータを取得する。ここでの「データ」とは、第2ユニット1002側の制御部450が、サブアプリケーションを実行することにより作成したものである。
「データ」は、具体的には、例えば、文字(あるいは数字)データやイラストデータである。また、データは、コマンドであることもある。例えば、手書き文字入力パッドの動作画面中の「Enter」がタッチされた場合には、制御部350は、コマンドを作成する。
ステップS403において、制御部350は、データに応じたアプリケーション動作を行なう。具体的には、プログラム実行部358が、プログラム334を実行してアプリケーション動作を行なう。プログラム実行部358は、ステップS401にて取得したデータを、実行しているメインアプリケーションにより処理する。ステップS403が終了すると、制御部350は、ステップS401の処理に戻る。
続いて、第2ユニット1002側の制御部450の動作について説明する。制御部450の動作の流れは、図47中、右側に示されている。
ステップS501において、制御部450の入力処理部452に含まれるパネル入力処理部453は、液晶パネル240(パネル入力部422)からスキャン画像を取得する。
ステップS503において、パネル入力処理部453は、ステップS501にて取得したスキャン画像に基づいて、液晶パネル240への入力位置を特定する座標データを計算する。
ステップS505において、パネル入力処理部453は、ステップS501の実行から、所定のスキャンサイクル時間が経過したかどうか判断する。スキャンサイクル時間が経過している場合(ステップS505においてYES)、パネル入力処理部453は、ステップS501(スキャン画像の取得)からの処理を繰り返す。スキャンサイクル時間が経過していない場合(ステップS505においてNO)、制御部450は、ステップS507の処理に進む。
ステップS507において、制御部450は、サブアプリケーション動作を行なう。サブアプリケーション動作は、タイムカウントによる動作実行を含む。制御部450は、ステップS507において、インターフェース部440を制御し、データを第1ユニット1001側に送信することもある。ステップS507におけるサブアプリケーション動作(タブレットモードでのサブアプリケーション動作)の詳細については、後述する。
ステップS509において、制御部450は、実行されているアプリケーションの動作を決定するデータ(「動作要素」とよぶ)を記憶部430に格納する。本実施の形態では、イベントからの経過時間などを含む動作パラメータ435や、入力履歴432が、動作要素に該当する。なお、制御部450は、ステップS509の処理を、所定の時間間隔、動作要素の変更時、動作要素の保存時(例えば、イラストの保存時)などに行なうものとする。制御部450は、ステップS509の実行後、ステップS505からの処理を繰り返す。
(モード切替:マウスモードからタブレットモード)
図45のステップS111におけるモード切替(マウスモードからタブレットモード)について、図48を参照しつつ、詳細に説明する。図48は、モード切替(マウスモードからタブレットモード)動作の処理の流れをフローチャート形式で示す図である。
ステップS601において、制御部450に含まれるモード設定部454は、記憶部430に格納されている、直前アプリケーションの動作定義をロードする。
ここで、「直前アプリケーション」とは、モード設定部454が、タブレットモードへのモード切替指示を受け付ける前で、最後にタブレットモードで動作していたサブアプリケーションである。本実施の形態では、マウスモード時にもサブアプリケーションは動作し続けるので、直前アプリケーションは、モード切替指示時に動作しているサブアプリケーションと同一である。
ステップS603において、制御部450に含まれるプログラム実行部458は、ステップS601でロードした動作定義に基づいて、直前アプリケーションを実行する。そして、プログラム実行部458は、表示制御部456を制御して、表示部410に、サブアプリケーションの動作画面を表示する。
ただし、プログラム実行部458は、ステップS601の処理を、ステップS603の処理中に、随時、行なってもよい。すなわち、直前アプリケーションの実行中、必要に応じて、記憶部430に格納された動作定義を読み出し、読み出したデータに基づいて、サブアプリケーションを実行してもよい。
ステップS605において、制御部450に含まれるパネル入力処理部453は、パネル入力部422からの信号の処理方法を切り替える。すなわち、パネル入力処理部453は、パネル入力部422からの信号を、サブアプリケーションの動作指示に変換するようにする。
(モード切替:タブレットモードからマウスモード)
ここからは、図45のステップS117におけるモード切替(タブレットモードからマウスモード)について、詳細に説明する。
まず、時刻カウンタのリセットをともなわないタイムカウント制御(上述の第1のタイムカウント、第3のタイムカウント)を行なう場合の、制御部450のモード切替(タブレットモードからマウスモード)時の動作について図49を参照して説明する。図49は、モード切替(タブレットモードからマウスモード)動作の第1の処理の流れをフローチャート形式で示す図である。
ステップS701において、制御部450に含まれるプログラム実行部458は、時刻カウンタ459の動作を停止する。なお、プログラム実行部458が、時刻をカウントしない場合には、制御部450は、ステップS701の処理を行なわない。「時刻をカウントしない場合」には、はじめからタイムカウントに絡んだ動作がないアプリケーションを実行する場合と、アプリケーションにはタイムカウントに絡んだ動作があるものの、タイムカウントを行なわないことが動作定義に設定されている場合(手書き入力パッドのモードが「手動モード」になっている場合など)とがある。
ステップS703において、制御部450に含まれる表示制御部456は、モード設定部454からモードの切替指示があった旨を表わす信号を受け取ると、表示データ433に基づいて、液晶パネル240にマウスモード画面を表示する。
ステップS705において、制御部450に含まれるパネル入力処理部453は、パネル入力部422からの信号の処理方法を切り替える。すなわち、パネル入力処理部453は、パネル入力部422からの信号を、液晶パネル140上のマウス動作用の信号に変換するようにする。
次に、時刻カウンタのリセットをともなうタイムカウント制御(上述の第2のタイムカウント、第4のタイムカウント)を行なう場合の、制御部450のモード切替(タブレットモードからマウスモード)時の動作について図50を参照して説明する。図50は、モード切替(タブレットモードからマウスモード)動作の第2の処理の流れをフローチャート形式で示す図である。
ステップS801において、制御部450に含まれるプログラム実行部458は、時刻カウンタ459による時刻のカウンタ値をリセットする。すなわち、プログラム実行部458は、カウンタ値を所定の初期値に設定する。初期値は、一般的には「0」であるが、これに限られるわけではない。
ステップS803からステップS807までの処理は、それぞれ、図49に示すステップS701からステップS705までの処理と同様であり、これらの説明は繰り返さない。
(タブレットモードでのサブアプリケーション動作)
ここからは、図47のステップS507におけるアプリケーション動作、すなわち、タブレットモード時のサブアプリケーション動作について、詳細に説明する。
まず、第1のタイムカウント動作(カウント停止)に係る、タブレットモード時のサブアプリケーション動作について図51を参照して説明する。図51は、タブレットモード時の第1のサブアプリケーション動作の流れをフローチャート形式で示す図である。
ステップS901において、制御部450に含まれるプログラム実行部458は、サブアプリケーションによる時刻カウントを開始する。ただし、時刻カウントを行なわない場合は、プログラム実行部458は、ステップS901の処理を行なわない。
ステップS903において、プログラム実行部458は、時刻のカウンタ値が所定の値(タイムアウト値)に達したかどうかを判断する。カウンタ値がタイムアウト値に達した場合(ステップS903においてYES)、プログラム実行部458は、ステップS905の処理に進む。カウンタ値がタイムアウト値に達していない場合(ステップS903においてNO)、プログラム実行部458は、ステップS907の処理に進む。
ステップS905において、プログラム実行部458は、所定のタイムアウト動作を行なう。タイムアウト動作としては、すでに説明したように、文字認識の開始や、文字の確定などがある。ステップS905のあと、プログラム実行部458は、ステップS907の処理に進む。
ステップS907において、プログラム実行部458は、入力処理部452からデータ送信指示を受け付けたかどうか判断する。ここで、「データ送信指示」とは、プログラム実行部458に、データを第1ユニット1001のプログラム実行部358に対して送信することを命令する指示である。データ送信指示によって送信が指示されるデータは、サブアプリケーションにより作成されたデータ(例えば、手書き認識の結果の文字や手描きイラスト)や、メインアプリケーションの動作指示(例えば、ENTERボタンの押下にともなう指示)を含む。
データ送信指示を受け付けた場合(ステップS907においてYES)、プログラム実行部458は、インターフェース部440を制御し、第1ユニット1001のプログラム実行部358へデータを送信する。その後、プログラム実行部358は、ステップS903(タイムアウトの判断)からの処理を繰り返す。
データ送信指示を受け付けていない場合(ステップS907においてNO)、プログラム実行部358は、データを送信することなく、ステップS903(タイムアウトの判断)からの処理を繰り返す。
次に、第2のタイムカウント動作(タブレットモード再開時に時刻カウントをリセットするカウント動作)に係る、タブレットモード時のサブアプリケーション動作について図52を参照して説明する。図52は、タブレットモード時の第2のサブアプリケーション動作の流れをフローチャート形式で示す図である。
ステップS1001において、プログラム実行部458は、時刻のカウンタ値をリセットする。すなわち、図50のステップS801と同様に、プログラム実行部458は、カウンタ値を所定の初期値に設定する。初期値は、一般的には「0」であるが、これに限られるわけではない。
ステップS1003からステップS1011の処理は、それぞれ、ステップS901からステップS909の処理と同様である。したがって、これらの説明は繰り返さない。
次に、第3のタイムカウント動作(タブレットモード再開後、入力の開始または終了に応じて、時刻カウントを再開するカウント動作)に係る、タブレットモード時のサブアプリケーション動作について図53を参照して説明する。図53は、タブレットモード時の第3のサブアプリケーション動作の流れをフローチャート形式で示す図である。
ステップS1101において、制御部450に含まれるプログラム実行部458は、液晶パネル240へのタッチが開始(または終了)したかどうか判断する。すなわち、プログラム実行部358は、入力処理部452から、所定の入力に対応する信号を受け付けた(あるいは信号が終了した)かどうか判断する。例えば、プログラム実行部358は、液晶パネル240内、あるいは、液晶パネル240内の所定の領域(手書きエリアなど)内へのタッチを表わす入力処理部452からの信号が開始した(または終了した)かどうか判断する。
プログラム実行部458は、液晶パネル240へのタッチが開始(または終了)していないと判断すると(ステップS1101においてNO)、ステップS1101の処理を再び行なう。プログラム実行部458は、液晶パネル240へのタッチが開始(または終了)したと判断すると(ステップS1101においてYES)、ステップS1103の処理に進む。
ステップS1103からステップS1111の処理は、それぞれ、ステップS901からステップS909の処理と同様である。したがって、これらの説明は繰り返さない。
最後に、第4のタイムカウント動作(カウント停止+リセット+入力開始または終了で再開)に係る、タブレットモード時のサブアプリケーション動作について図54を参照して説明する。図54は、タブレットモード時の第4のサブアプリケーション動作の流れをフローチャート形式で示す図である。
ステップS1201において、プログラム実行部458は、時刻のカウンタ値をリセットする。すなわち、プログラム実行部458は、カウンタ値を所定の初期値に設定する。
ステップS1203において、制御部450に含まれるプログラム実行部458は、液晶パネル240へのタッチが開始(または終了)したかどうか判断する。この処理は、ステップS1101と同様である。したがって、その詳細な説明は繰り返さない。
プログラム実行部458は、液晶パネル240へのタッチが開始(または終了)していないと判断すると(ステップS1203においてNO)、ステップS1203の処理を再び行なう。プログラム実行部458は、液晶パネル240へのタッチが開始(または終了)したと判断すると(ステップS1203においてYES)、ステップS1205の処理に進む。
ステップS1205からステップS1213の処理は、それぞれ、ステップS1005からステップS1011の処理と同様である。したがって、これらの説明は繰り返さない。
[その他]
本発明の実施の形態にあたっては、液晶パネル140は、入力部としての機能を持たず、画面の表示のみを行なうディスプレイ(単機能ディスプレイ)であってもよい。液晶パネル140が大型でタッチパネルにするのが困難な場合に、この構成は有用である。
上記の実施の形態に係る電子機器100は、タブレットモードからマウスモードへの移行後、マウスモードの間も、サブアプリケーションの実行を続けている。ただし、電子機器100は、マウスモードへの移行時に、サブアプリケーションを終了しても構わない。
この場合、電子機器100は、タブレットモードの間に、アプリケーションの設定を記憶部430に格納しておく。これは、タブレットモードの再開時に、ユーザがマウスモード移行前のサブアプリケーションを引き続き実行できるようにするためである。電子機器100は、アプリケーションの設定を、例えば、所定の時間間隔で、記憶部430に格納する。あるいは、電子機器100は、マウスモードへの移行時に、アプリケーションの設定を記憶部430に格納してもよい。また、電子機器100は、上記の両方のタイミングで、アプリケーションの設定を記憶部430に格納してもよい。
さらに、上では、タイムカウント処理をともなうサブアプリケーションとして、手書き文字入力パッドについて説明してきた。しかしながら、本実施の形態に係る電子機器100で実行することが有益なサブアプリケーションは、これに限られるわけではない。電子機器100は、より一般的な時間変化するサブアプリケーションを実行する際に、ユーザの利便性を向上することができる。
例えば、電子機器100を用いて動画再生ソフトを実行することを考える。この場合、電子機器100が、マウスモードにおいて、動画進行に関するカウントを停止することで、ユーザは、マウスモードの前後で、動画を連続して見ることができる。
また、第1ユニット1001と第2ユニット1002とは、データのやり取りを除いて独立に動作する。そのため、第2ユニット1002は、取り外し可能であってもよい。さらに、第2ユニット1002は、第2ユニット1002と同等の機能を有する他のユニット(例えば、携帯情報端末)と取り替え可能であってもよい。したがって、第1ユニット1001を備える電子機器と、その電子機器に接続されている、あるいは接続可能なユニットとを含むシステムを、本発明の一態様と考えることができる。
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。