(57)【特許請求の範囲】
【請求項１】
ＵＳＢインタフェースを有するポインティングデバイスであって、
該ポインティングデバイスの状態変化を検知する検知手段と、
通常モードからサスペンドモードへの遷移を指示するサスペンド信号を、前記ＵＳＢインタフェースを介して受信する受信手段と、
前記サスペンド信号を受信してから所定の待ち時間、前記検知手段の前記の検知を無効にする無効化手段と、
前記状態変化が検知された場合、サスペンドモードから通常モードへの遷移を指示するリジューム信号を、前記ＵＳＢインタフェースを介して送信する送信手段とを備えることを特徴とするポインティングデバイス。
【請求項２】
ＵＳＢインタフェースを有するポインティングデバイスであって、
該ポインティングデバイスの状態変化を検知する検知手段であって、サスペンドモード時では通常モード時よりも長い検知周期で検知する検知手段と、
前記サスペンドモードにあるときに前記状態変化が検知された場合、所定の検知時間内に前記検知手段で検知される前記状態変化の累積量を記憶する記憶手段と、
前記累積量が所定のしきい値以上であるかを判定する判定手段と、
該判定手段が前記しきい値以上であると判定した場合、前記サスペンドモードから前記通常モードへの遷移を指示するリジューム信号を、前記ＵＳＢインタフェースを介して送信する送信手段とを備えることを特徴とするポインティングデバイス。
【請求項３】
ＵＳＢインタフェースを有するポインティングデバイスであって、
該ポインティングデバイスの状態変化を検知する検知手段であって、サスペンドモード時では通常モード時よりも長い検知周期で検知する検知手段と、
前記通常モードから前記サスペンドモードへの遷移を指示するサスペンド信号を、前記ＵＳＢインタフェースを介して受信する受信手段と、
前記サスペンド信号を受信してから所定の待ち時間、前記検知手段の前記の検知を無効にする無効化手段と、
前記状態変化が検知された場合、所定の検知時間内に前記検知手段で検知される前記状態変化の累積量を記憶する記憶手段と、
前記累積量が所定のしきい値以上であるかを判定する判定手段と、
該判定手段が前記しきい値以上であると判定した場合、前記サスペンドモードから前記通常モードへの遷移を指示するリジューム信号を、前記ＵＳＢインタフェースを介して送信する送信手段とを備えることを特徴とするポインティングデバイス。
【請求項４】
前記検知手段は、前記検知時間内は前記通常モード時の検知周期で検知する請求項２又は３に記載のポインティングデバイス。
【請求項５】
前記累積量は、前記ポインティングデバイスの移動量である請求項２〜４のいずれか一項に記載のポインティングデバイス。
【請求項６】
前記累積量は、クリックスイッチの押下時間である請求項２〜４のいずれか一項に記載のポインティングデバイス。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ＵＳＢインタフェースを有するポインティングデバイスに関する。
【０００２】
【従来の技術】
パソコンと各周辺機器との接続インタフェースに、ユニバーサルシリアルバス（Universal Serial Bus: USB)インタフェースが用いられることが多い。ＵＳＢインタフェースは、ＰＳ／２等のインタフェースに比べて有利であり、例えばコンピュータ周辺機器に関するプラグ＆プレイ機能、ホットプラグイン・プラグアウト機能、コネクタケーブルの共通化等、ユーザの使いやすさを特に考慮した設計になっている。
【０００３】
このようなＵＳＢインタフェースを有する周辺機器（以下ＵＳＢデバイスと呼ぶ）においては、その通信は、接続されるパソコン内にあるホストチップ及びオペレーティングシステムによって全て制御される。
ＵＳＢデバイスは、自己電源を有するセルフパワーデバイスと、コンピュータ等からの給電が必要なバスパワーデバイスとに区別することができる。このうちバスパワーデバイスには、ポインティングデバイスあるいはキーボード等がある。
【０００４】
一般に、パソコンがサスペンドモードになると、そのパソコンに接続されているデバイスもサスペンドモードになり、消費される電力が低減される。特にバスパワーデバイスにおいては、サスペンドモード時に給電が許容される電流最大値は５００μＡであると規定されている。
ユーザは、パソコン本体に設けられた専用のボタン、キーボード、ポインティングデバイス等を操作することによって通常モードとサスペンドモードとの切替えを行う。例えば通常モードからサスペンドモードへの切換えの指示は、パソコン本体に設けられた専用のサスペンドボタンの押下や、ポインティングデバイスを操作してウィンドウズ９８（登録商標）等のソフトウェアを介してなされる。
【０００５】
これに対し、サスペンドモードから通常モードへ復帰（リジュームと呼ぶ）する場合は、パソコン本体側からリジューム操作するのが基本であるが、特にマウス、ジョイスティック、トラックボール等のＵＳＢポインティングデバイスからリジュームの指示をすることも可能である。このようなリジュームはリモートウェイクアップとも呼ばれている。
【０００６】
例えばＵＳＢマウスの場合では、ＵＳＢマウス本体が移動させられたり、あるいはクリックスイッチが押下されるといったような状態変化が検知されたとき、レジューム信号がコンピュータへ送出される。このようなＵＳＢマウスの動作原理について簡単に説明する。
図８は、従来例によるＵＳＢマウスの動作原理を示すフローチャートである。
【０００７】
ここで、パソコンが通常モードにある場合を考える。
ＵＳＢマウスが接続されているパソコンの電源が投入されるか、あるいは、電源が既に投入されているパソコンにＵＳＢマウスが後から接続されると、ステップＳ１０１において、ＵＳＢマウスのメモリ等が初期化される。この後、ＵＳＢマウスは、次に説明するステップＳ１０２〜Ｓ１０５に示される、通常モードにおける処理動作に入る。
【０００８】
まず、ステップＳ１０２において、Ｘ軸用座標センサ、Ｙ軸用座標センサ及びクリックスイッチ等の各センサのそれぞれにおいて、状態変化を検知（センシング）する。
次にステップＳ１０３において、パソコンは、状態変化に関する送信すべきデータが存在するか否かをＵＳＢマウスに確認する。ユーザがＵＳＢマウス本体を移動させたりクリックスイッチを押下した場合は送信すべきデータが存在するので、ステップＳ１０４へ進む。送信すべきデータが存在しない場合はステップＳ１０５へ進む。
【０００９】
ステップＳ１０４では、送信データがセットされ、ＵＳＢインタフェースを介してパソコンへ送信される。
ステップＳ１０５では、ＵＳＢマウスのＣＰＵは、パソコンから、通常モードからサスペンドモードへの遷移を指示するサスペンド信号を受信したか否かを判定する。受信したと判定された場合はステップＳ１０６へ進み、そうでない場合はステップＳ１０２へ戻る。
【００１０】
以上のステップＳ１０２〜Ｓ１０５の処理ループは、通常モードにおいてユーザがＵＳＢマウス本体を移動させたりクリックスイッチを押下した場合の、ＵＳＢマウスのＸ軸用座標センサ、Ｙ軸用座標センサ及びクリックスイッチ等の各センサが検知する状態変化の抽出のための処理である。これらの処理は、パソコンからのサスペンド信号を受信しない限り例えば数十〜数百μ秒の周期で実行される。
【００１１】
ここで、ステップＳ１０５において、ホストからサスペンド信号を受信したと判定した場合はステップＳ１０６へ進み、ＵＳＢマウスはサスペンドモードへ入る。
上述のように、サスペンドモードにおいてはＵＳＢインタフェース規格により許容される最大消費電流値は５００μＡである。従って、通常ＵＳＢマウスにおいては、サスペンドモード時にはＵＳＢマウスに内蔵されたＣＰＵの処理速度及び各センサの処理速度を減少させることによって電流消費を抑制する。具体的には、ＣＰＵの処理動作を所定の時間だけストップさせる。この時間は、本明細書においては「ＣＰＵストップ復帰用タイマ」と呼ばれるタイマで規定され、この時間は例えば数十〜数百ｍ秒に設定される。ＣＰＵの処理動作がストップした後、この時間が経過してＣＰＵストップ復帰用タイマがオーバするとＣＰＵの通常の処理動作が復帰する。
【００１２】
ＵＳＢマウスがサスペンドモードへ入ると、ステップＳ１０６においてＣＰＵストップ復帰用タイマがセットされ、次いでステップＳ１０７においてＣＰＵの処理動作がストップする。
そして、ステップＳ１０８においてＣＰＵストップ復帰用タイマがオーバした場合又はサスペンドモードから通常モードへのリジューム（復帰）を指示するリジューム信号の割り込みがパソコンからあった場合、ステップＳ１０９では、ストップしていたＣＰＵの処理動作が再びスタートする。
【００１３】
するとＵＳＢマウスのＣＰＵは、ステップＳ１１０において、パソコンからのリジューム信号を受信したか否かを判定する。
リジューム信号を受信したと判定された場合は、リジューム処理がなされ、パソコン及びＵＳＢマウスはリジュームする。
リジューム信号を受信していないと判定された場合は、ステップＳ１０８において単にＣＰＵストップ復帰用タイマがオーバしたことを意味するので、ステップＳ１１１へ進み、Ｘ軸用座標センサ、Ｙ軸用座標センサ及びクリックスイッチ等の各センサは、状態変化をそれぞれ検知する。このステップＳ１１１は、ＣＰＵストップ復帰用タイマがオーバしたときにのみ実行されるので、結果として各センサの検知処理動作はＣＰＵの処理動作に同期することになる。
【００１４】
ステップＳ１１２においてＣＰＵは、ステップＳ１１１において各センサ及びクリックスイッチ等の各スイッチのいずれかにおいて状態変化があったか否かを判定する。
ステップＳ１１２において状態変化があったと判定された場合は、ユーザはＵＳＢマウスを操作することによってＵＳＢマウス側からリジューム処理を指示したことを意味するのでステップＳ１１３へ進み、リジューム処理がなされ、パソコン及びＵＳＢマウスはリジュームする。
【００１５】
ステップＳ１１２において状態変化はない判定された場合は再びステップＳ１０６へ戻る。
【００１６】
【発明が解決しようとする課題】
ＵＳＢマウスが接続されたパソコンにおいては、ユーザは、例えばディスプレイに表示されたウィンドウズ画面上のメニューからサスペンド指示に対応するアイコンを、ＵＳＢマウスを操作することで選択し、図８のステップＳ１０５に示された処理を経て通常モードからサスペンドモードへ切り換える。
【００１７】
上述のようにＵＳＢマウスにおいては、サスペンドモード時にＵＳＢマウス本体を移動させることでもパソコン及びＵＳＢマウスのリジュームが可能である。しかし、サスペンドモードへの切換えのためマウスカーソル操作の終了後にＵＳＢマウスから手を離す際に、ＵＳＢマウス本体が振動し、ＵＳＢマウスはこの振動をリジュームのためになされたものと誤って判断（図８のステップＳ１１１及びＳ１１２）して、サスペンドさせたにもかからわずすぐに通常モードにリジュームしてしまう誤動作が発生しやすい問題がある。
【００１８】
また更に、サスペンドモード時において、リジューム操作を意図していない微妙な振動あるいは接触等でも、ＵＳＢマウスは状態変化があったものと誤って判断（図８のステップＳ１１１及びＳ１１２）しリジュームしてしまう誤動作が発生しやすい問題もある。
従って本発明の目的は、上記課題に鑑み、通常モードとサスペンドモードの切替えについての操作性を向上させたＵＳＢポインティングデバイスを提供することにある。
【００１９】
【課題を解決するための手段】
上記目的を実現するために、第１の発明においては、ＵＳＢインタフェースを有するポインティングデバイスは、ポインティングデバイスの状態変化を検知する検知手段と、通常モードからサスペンドモードへの遷移を指示するサスペンド信号を、ＵＳＢインタフェースを介して受信する受信手段と、サスペンド信号を受信してから所定の待ち時間、検知手段の検知を無効にする無効化手段と、状態変化が検知された場合、サスペンドモードから通常モードへの遷移を指示するリジューム信号を、ＵＳＢインタフェースを介して送信する送信手段とを備える。
【００２０】
第２の発明においては、ＵＳＢインタフェースを有するポインティングデバイスは、ポインティングデバイスの状態変化を検知する検知手段であって、サスペンドモード時では通常モード時よりも長い検知周期で検知する検知手段と、サスペンドモードにあるときに状態変化が検知された場合、所定の検知時間内に検知手段で検知される状態変化の累積量を記憶する記憶手段と、累積量が所定のしきい値以上であるかを判定する判定手段と、判定手段がしきい値以上であると判定した場合、サスペンドモードから通常モードへの遷移を指示するリジューム信号を、ＵＳＢインタフェースを介して送信する送信手段とを備える。
【００２１】
第３の発明においては、ＵＳＢインタフェースを有するポインティングデバイスは、ポインティングデバイスの状態変化を検知する検知手段であって、サスペンドモード時では通常モード時よりも長い検知周期で検知する検知手段と、通常モードからサスペンドモードへの遷移を指示するサスペンド信号を、ＵＳＢインタフェースを介して受信する受信手段と、サスペンド信号を受信してから所定の待ち時間、検知手段の検知を無効にする無効化手段と、状態変化が検知された場合、所定の検知時間内に検知手段で検知される状態変化の累積量を記憶する記憶手段と、累積量が所定のしきい値以上であるかを判定する判定手段と、判定手段がしきい値以上であると判定した場合、サスペンドモードから通常モードへの遷移を指示するリジューム信号を、ＵＳＢインタフェースを介して送信する送信手段とを備える。
【００２２】
第１の発明によれば、例えば通常モードからサスペンドモードへの切換えのためマウスカーソル操作の終了後にＵＳＢポインティングデバイスから手を離す際にＵＳＢポインティングデバイス本体が振動してしまっても、リジュームしてしまう誤動作を防ぐことができる。
また、第２の発明によれば、リジューム操作を意図していない微妙な振動及び接触等によってリジュームしてしまう誤動作を防止することができる。
【００２３】
第３の発明によれば、第１の発明と第２の発明を組み合わせることにより従来のＵＳＢポインティングデバイスに比べてより操作性のよいリジューム（リモートウェイクアップ）を実現することができる。
【００２４】
【発明の実施の形態】
本明細書においては、ＵＳＢインタフェースを有するポインティングデバイスとしてＵＳＢマウスを例にとって説明する。なお、このＵＳＢマウスはボール式あるいは光学式のどちらであってもよい。また本発明はジョイスティック、トラックボールあるいは平面入力パネル等のＵＳＢポインティングデバイスにも適用できる。
【００２５】
まず、本発明の第１の実施例によるＵＳＢマウスについて説明する。
本実施例によるＵＳＢマウスは、例えば通常モードからサスペンドモードへの切換えのためマウスカーソル操作の終了後にＵＳＢマウスから手を離す際にＵＳＢマウス本体が振動してしまい、ＵＳＢマウスはこの振動をリジュームのためになされたものと誤って判断してすぐに通常モードにリジュームしてしまう誤動作を防止するものである。
【００２６】
図１は、ＵＳＢマウスの基本構成を示す図である。
ＵＳＢインタフェース１１を有するＵＳＢマウス１は、ＵＳＢマウス１の床面に対する相対移動を検出するためのＸ軸用座標センサ２１及びＹ軸用座標センサ２２と、ＵＳＢマウス１上に設けられるクリックスイッチ２３（左右のクリックスイッチを含む）と、ＣＰＵ２４と、メモリ２５とを備える。各構成要素はバス２６を介して接続される。
【００２７】
ＵＳＢマウス１は、ＵＳＢインタフェース１１に接続されたＵＳＢケーブル２７を介してパソコンに接続される。
図２は、本発明の第１の実施例によるＵＳＢマウスの機能ブロック図である。本実施例によれば、ＵＳＢインタフェース１１を有するＵＳＢマウス１は、ＵＳＢマウス１の状態変化を検知する検知手段１２と、通常モードからサスペンドモードへの遷移を指示するサスペンド信号を、ＵＳＢインタフェース１１を介して受信する受信手段１３と、サスペンド信号を受信してから所定の待ち時間、検知手段１２の検知を無効にする無効化手段１４と、状態変化が検知された場合、サスペンドモードから通常モードへの遷移を指示するリジューム信号を、ＵＳＢインタフェース１１を介して送信する送信手段１５とを備える。
【００２８】
検知手段１２には、ＵＳＢマウス１の床面に対する相対移動を検出するためのＸ軸用座標センサ及びＹ軸用座標センサと、ＵＳＢマウス１上に設けられるクリックスイッチ（左右のクリックスイッチを含む）等が含まれる。
これら各手段の制御及び処理は、図１のＣＰＵ２４を含めたファームウェア形式によって制御部２０で実現される。
【００２９】
図３は、本発明の第１の実施例によるＵＳＢマウスの動作原理を示すフローチャートである。
ここで、初めにＵＳＢマウスが接続されているパソコンが通常モードにあり、上述した図８の処理ループが既に実行されている場合を考える。なお、後に説明する第２の及び第３の実施例においても同様であるが、各図において、参照符号が同じステップにおいて実行される処理内容は同じである。
【００３０】
図８のステップＳ１０５において、ＵＳＢマウス１の制御部２０が、ホストからのサスペンド信号を受信したと判定した場合は、ステップＳ２０１へ進み、ＵＳＢマウス１はサスペンドモードへ入る。
本実施例では、サスペンド信号を受信してから所定の待ち時間、検知手段１２の検知を無効にする無効化手段１４が、ＣＰＵ２４を含めたファームウェア形式によって制御部２０内に実現される。すなわち、ＵＳＢマウス１がサスペンドモードに入ってからこの待ち時間が経過するまでは、図８に示されたステップＳ１１１及びＳ１１２は実行されない。この待ち時間を実現するための待ち時間生成要素として、ステップＳ２０１においてカウント数Ｎを設定する。カウント数Ｎについては後で詳細に説明するが、本実施例では例えばＮ＝１０として設定される。
【００３１】
ＵＳＢマウス１がサスペンドモードに入ると、ステップＳ１０６においてＣＰＵストップ復帰用タイマがセットされる。上述のように、サスペンドモードにおいてはＵＳＢインタフェース規格により許容される最大消費電流値（５００μＡ）以下に消費電流を抑制するため、ＣＰＵ２４の処理動作をＣＰＵストップ復帰タイマで規定される時間だけストップさせ、ＣＰＵ２４の処理速度及び各センサの処理速度を減少させる。この時間は例えば数十〜数百ｍ秒に設定される。
【００３２】
ステップＳ１０８においてＣＰＵ２４の処理動作がストップした後にこの時間が経過してＣＰＵストップ復帰用タイマがオーバするか又はサスペンドモードから通常モードへのリジューム信号をパソコン側からＵＳＢインタフェース１１を介して受信して割り込みがあったとき、
ステップＳ１０９において、ストップしていたＣＰＵ２４の処理動作が再びスタートする。
【００３３】
次に、ステップＳ１１０において、制御部２０は、パソコンからのリジューム信号を受信したか否かを判定する。
ステップＳ１１０においてリジューム信号を受信したと判定された場合は、ステップＳ１１３進んでリジューム処理がなされ、パソコン及びＵＳＢマウス１はリジュームする。
【００３４】
ステップＳ１１０においてリジューム信号を受信していないと判定された場合は、ステップＳ１０８で単にＣＰＵストップ復帰用タイマがオーバしたことを意味するので、ステップＳ２０２へ進む。
ステップＳ２０２では、カウント数Ｎが０であるか否かを判定する。カウント数Ｎが０でない場合はステップＳ２０３へ進み、カウント数Ｎが０である場合はステップＳ１１１へ進む。
【００３５】
ステップＳ２０２においてカウント数Ｎが０であると判定された場合は、ステップＳ１１１へ進み、Ｘ軸用座標センサ２１、Ｙ軸用座標センサ２２及びクリックスイッチ２３等の各センサは状態変化をそれぞれ検知（センシング）する。
ステップＳ１１２では、制御部２０は、ステップＳ１１１においてＸ軸用座標センサ２１、Ｙ軸用座標センサ２２及びクリックスイッチ２３等の各センサのいずれかにおいて状態変化があったか否かを判定する。この状態変化はＸ軸用座標センサ２１及びＹ軸用座標センサ２２についてはＵＳＢマウスの移動の有無であり、クリックスイッチ２３についてはその押下の有無である。
【００３６】
ステップＳ１１２において状態変化があったと判定された場合は、ユーザはＵＳＢマウス１を操作することによってＵＳＢマウス１側からリジューム処理を指示したことを意味するのでステップＳ１１３へ進み、リジューム処理がなされ、パソコン及びＵＳＢマウス１はリジュームする。
ステップＳ１１２において状態変化はない判定された場合は再びステップＳ１０６へ戻る。
【００３７】
ステップＳ２０２でカウント数Ｎは０ではないと判定された場合、ステップＳ２０３においてカウント数Ｎが１ディクリメントされ、ステップＳ１０６へ戻る。
本実施例ではカウント数Ｎを１０と設定していたので、サスペンドモードに入りパソコン側からリジューム信号を受信しない限りは、上述のステップＳ１０６〜Ｓ２０３を１０回繰り返すということになる。この間、検知手段１２の検知が無効化され、前述のステップＳ１１１及びＳ１１２の処理は実行されず、ＵＳＢマウス１の移動やクリックスイッチ２３の押下があってもリジュームすることはない。なお、本実施例ではカウント数Ｎを１０と設定したが、例えばステップＳ１０６のＣＰＵストップ復帰用タイマを数百ｍ秒とした場合、待ち時間は数秒間（＝数百ｍ秒×１０）となる。カウント数Ｎは、必要とする待ち時間に応じて適宜設定すればよい。
【００３８】
カウント数Ｎが０になったとき、すなわちリジューム信号を受信してから所定の待ち時間が経過した後は、ステップＳ１０６、Ｓ１０７、Ｓ１０８、Ｓ１０９、Ｓ１１０、Ｓ２０２、Ｓ１１１、Ｓ１１２そしてＳ１０６までの処理ループが実行され、サスペンドモードが継続する。そして、パソコン側からリジューム信号を受信した場合（ステップＳ１０８及びＳ１１０）、あるいはＵＳＢマウス１を移動させるかクリックスイッチ２３が押下された場合（ステップＳ１１１及びＳ１１２）に、サスペンドモードから通常モードへリジュームする。
【００３９】
以上説明したように、本発明の第１の実施例のＵＳＢマウスによれば、サスペンドモードに遷移してから所定の待ち時間が経過するまでは検知手段の検知は無効化されるので、ＵＳＢマウスの移動やクリックスイッチの押下があってもリジュームすることはない。従って、例えば、通常モードからサスペンドモードへの切換えのためマウスカーソル操作の終了後にＵＳＢマウスから手を離す際にＵＳＢマウス本体が振動してしまっても、リジュームしてしまうことはない。
【００４０】
次に、本発明の第２の実施例によるＵＳＢマウスについて説明する。
本実施例によるＵＳＢマウスは、サスペンドモード時において、リジューム操作を意図していない微妙な振動及び接触等に対してもＵＳＢマウスは状態変化があったものと誤って判断しリジュームしてしまう誤動作を防止するものである。すなわち、サスペンドモードにおいてＸ軸用座標センサ、Ｙ軸用座標センサ及びクリックスイッチ等の各センサにより状態変化が検出された場合は、所定の検知時間、この状態変化を累積し、この累積量が所定のしきい値以上である場合にリジューム処理を実行する。これにより、リジューム操作を意図していない微妙な振動及び接触等によってリジュームしてしまう誤動作を防止することができる。
【００４１】
図４は、本発明の第２の実施例によるＵＳＢマウスの機能ブロック図である。本実施例によれば、ＵＳＢインタフェース１１を有するＵＳＢマウス１は、ＵＳＢマウス１の状態変化を検知する検知手段１２であって、サスペンドモード時では通常モード時よりも長い検知周期で検知する検知手段１２と、サスペンドモードにあるときに状態変化が検知された場合、所定の検知時間内に検知手段１２で検知される状態変化の累積量を記憶する記憶手段１６と、累積量が所定のしきい値以上であるかを判定する判定手段１７と、判定手段１７がしきい値以上であると判定した場合、サスペンドモードから通常モードへの遷移を指示するリジューム信号を、ＵＳＢインタフェース１１を介して送信する送信手段１５とを備える。
【００４２】
検知手段１２には、ＵＳＢマウス１の床面に対する相対移動を検出するためのＸ軸用座標センサ及びＹ軸用座標センサと、ＵＳＢマウス１上に設けられるクリックスイッチ（左右のクリックスイッチを含む）等が含まれる。
記憶手段１６は、メモリ２５を含んで成る。
これら各手段の制御及び処理は、ＣＰＵ２４を含めたファームウェア形式によって制御部２０で実現される。
【００４３】
図５は、本発明の第２の実施例によるＵＳＢマウスの動作原理を示すフローチャートである。
ここで、初めにＵＳＢマウスが接続されているパソコンが通常モードにあり、上述した図８の処理ループが既に実行されている場合を考える。
図８のステップＳ１０５において、ＵＳＢマウス１の制御部２０が、ホストから、ホストからのサスペンド信号を受信したと判定した場合はステップＳ１０６へ進み、ＵＳＢマウス１はサスペンドモードへ入る。
【００４４】
ＵＳＢマウス１がサスペンドモードへ入ると、ステップＳ１０６においてＣＰＵストップ復帰用タイマがセットされ、次いでステップＳ１０７においてＣＰＵ２４の処理動作がストップする。
そして、ステップＳ１０８においてＣＰＵストップ復帰用タイマがオーバするか又はサスペンドモードから通常モードへのリジュームを指示するリジューム信号の割り込みがパソコンからあった場合、
ステップＳ１０９において、ストップしていたＣＰＵ２４の処理動作が再びスタートする。
【００４５】
次に、ステップＳ１１０において、ＵＳＢマウス１の制御部２０は、パソコンからのリジューム信号を受信したか否かを判定する。
ステップＳ１１０においてリジューム信号を受信したと判定された場合は、ステップＳ１１３へ進んでリジューム処理がなされ、パソコン及びＵＳＢマウスは１リジュームする。
【００４６】
ステップＳ１１０においてリジューム信号を受信していないと判定された場合は、ステップＳ１０８において単にＣＰＵストップ復帰用タイマがオーバしたことを意味するのでステップＳ１１１へ進み、Ｘ軸用座標センサ２１、Ｙ軸用座標センサ２２及びクリックスイッチ２３等の各センサは状態変化をそれぞれ検知する。このステップＳ１１１は、ＣＰＵストップ復帰用タイマがオーバしたときにのみ実行されるので、結果として各センサの上述した検知処理動作はＣＰＵの処理動作に同期することになる。
【００４７】
ステップＳ１１２では、制御部２０は、ステップＳ１１１においてＸ軸用座標センサ２１、Ｙ軸用座標センサ２２及びクリックスイッチ２３等の各センサのいずれかにおいて状態変化があったか否かを判定する。この状態変化はＸ軸用座標センサ２１及びＹ軸用座標センサ２２についてはＵＳＢマウスの移動の有無であり、クリックスイッチ２３についてはその押下の有無である。
【００４８】
ステップＳ１１２において状態変化はない判定された場合は、再びステップＳ１０６へ戻る。
ステップＳ１１２において状態変化があったと判定された場合は、ユーザはＵＳＢマウス１を操作することによってＵＳＢマウス１側からリジューム処理を指示した可能性があることを意味するので、ステップＳ３０１へ進む。
【００４９】
ステップＳ３０１では、上述の検知時間を実現するための検知時間生成要素として、カウント数Ｍを設定する。カウント数Ｍについては後で詳細に説明するが、本実施例では例えばＭ＝２０００として設定される。
次にステップＳ３０２において、Ｘ軸用座標センサ２１、Ｙ軸用座標センサ２２及びクリックスイッチ２３等の各センサは状態変化をそれぞれ検知（センシング）する。
【００５０】
従来例によれば、サスペンドモードではＣＰＵストップ復帰用タイマを用いることによってＣＰＵの処理速度を減少させている。その結果、ＣＰＵの処理動作に同期する各センサ及びクリックスイッチの検知速度についても低減することになり、通常モードよりも長い周期である例えば数十〜数百ｍ秒の周期でステップＳ１０６〜Ｓ１１２の処理ループが実行される。
【００５１】
これに対し本実施例では、後述する理由から通常モードと同様の周期（例えば数十〜数百μ秒）でＣＰＵ２４を動作させ、ステップＳ３０２の検知処理についても通常モードと同様の周期で実行する。
ステップＳ３０３では、制御部２０は、パソコンからのリジューム信号を受信したか否かを判定する。
【００５２】
ステップＳ３０３においてリジューム信号を受信したと判定された場合は、リジューム処理の指示がパソコン側から直接あったことを意味するのでステップＳ１１３へ進み、通常のリジューム処理がなされ、パソコン及びＵＳＢマウス１はリジュームする。
ステップＳ３０３においてリジューム信号を受信していないと判定された場合は、ステップＳ１０８において単にＣＰＵストップ復帰用タイマがオーバしたことを意味するので、ステップＳ３０４へ進む。
【００５３】
ステップＳ３０４では、カウント数Ｍが０であるか否かを判定する。カウント数Ｍが０でない場合はステップＳ３０５へ進み、カウント数Ｍが０である場合はステップＳ３０６へ進む。
ステップＳ３０４でカウント数Ｍは０ではないと判定された場合、ステップＳ３０５において、カウント数Ｍが１ディクリメントすると共に、検知された状態変化を累積し記憶する。ステップ３０５で累積される状態変化量は、Ｘ軸用座標センサ２１及びＹ軸用座標センサ２２についてはＵＳＢマウスの移動量（マウスカウント数) であり、クリックスイッチ２３についてはその押下時間である。ステップＳ３０５終了後は、再びステップＳ３０２へ戻る。
【００５４】
ステップＳ３０２〜Ｓ３０５の処理ループはカウント数Ｍが０になるまで実行され、その間、ステップ３０２において各検知される状態変化を累積していく。すなわち、状態変化量をＸ、１回の処理ループで検知される状態変化をΔｘとすると、累積される状態変化量はｘ＋Δｘのようになる。この処理ループは通常モードにおける検知周期と同様の処理周期（例えば数十〜数百μ秒）で実行される。本実施例では、カウント数Ｍを２０００と設定したが、例えば通常の処理モードにおける各センサ２１及び２２並びにクリックスイッチ２３の検知周期（ステップＳ３０２〜Ｓ３０５の処理周期）を５０μ秒とすると、カウント数Ｍが０になるまでの時間である検知時間は１００ｍ秒（＝５０μ秒×２０００）となり、この間は状態変化に関するデータが蓄積されていくことになる。カウント数Ｍは必要とする検知時間に応じて適宜設定すればよい。
このように本実施例においては、所定の検知時間、サスペンドモード時にあっても通常モードと同じ検知周期で、Ｘ軸用座標センサ２１、Ｙ軸用座標センサ２２及びクリックスイッチ２３等の各センサの状態検知が実行されることを特徴とする。従来例によるＵＳＢマウスからのリジューム（すなわちリモートウェイクアップ）では、ＵＳＢの状態変化の有無でリジュームをすべきか否かを判定していたが、本実施例では、ＵＳＢの状態変化があったときに、所定の検知時間における状態変化の総量が所定のしきい値以上であるか否かでリジュームすべきか否かを判定する。すなわち、Ｘ軸用座標センサ２１、Ｙ軸用座標センサ２２及びクリックスイッチ２３等の各センサを、通常モードと同じ検知周期で検知させて状態変化に関するデータを累積し、リジュームの可否を判定するので信頼性が向上する。
【００５５】
ステップＳ３０４でカウント数Ｍは０であると判定された場合は、ステップＳ３０２〜Ｓ３０５のループを抜け出し、ステップＳ３０６へ進む。
ステップＳ３０６では、累積された状態変化量が、所定のしきい値以上であるか否かを判定する。上述のように、Ｘ軸用座標センサ２１及びＹ軸用座標センサ２２についてはＵＳＢマウスの移動量（マウスカウント数) であり、クリックスイッチ２３についてはその押下時間である。従ってステップＳ３０６においては、ＵＳＢマウス１の移動量あるいはクリックスイッチ２３の押下時間等のうちの少なくとも１つが所定のしきい値以上であるか否かが判定される。
【００５６】
ステップＳ３０６で所定のしきい値以上ではないと判定された場合は、ステップＳ１０６へ戻る。すなわち、この場合はリジューム操作を意図していない微妙な振動及び接触である可能性が高いのでリジュームせず、再び通常のサスペンドモードにおける処理が行われる。
ステップＳ３０６で所定のしきい値以上であると判定された場合、ユーザがＵＳＢマウス１を操作することによってＵＳＢマウス１側からリジューム処理を指示した可能性が高いのでステップＳ１１３へ進み、リジューム処理がなされ、パソコン及びＵＳＢマウス１はリジュームする。
【００５７】
以上説明したように、本発明の第２の実施例のＵＳＢマウスによれば、サスペンドモードにおいてＸ軸用座標センサ、Ｙ軸用座標センサ及びクリックスイッチ等の各センサにより状態変化が検知された場合は、所定の検知時間、この状態変化を累積し、この累積量が所定のしきい値以上である場合にリジューム処理を実行する。従って、リジューム操作を意図していない微妙な振動及び接触等によってリジュームしてしまう誤動作を防止することができる。
【００５８】
なお、ここではＵＳＢマウスについて説明したが、本実施例は、ＵＳＢポインティングデバイスに平面入力パネルを有するような場合についても適用できる。例えばち、平面入力パネルが所定の時間接触していた場合にリジュームするようにすればよい。
次に、本発明の第３の実施例によるＵＳＢマウスについて説明する。
【００５９】
本実施例によるＵＳＢマウスは、上述の第１の実施例と第２の実施例を組み合わせたものである。すなわち、本実施例によるＵＳＢマウスは、例えば通常モードからサスペンドモードへの切換えのためマウスカーソル操作の終了後にＵＳＢマウスから手を離す際にＵＳＢマウス本体が振動し、この振動をリジュームのためになされたものと誤って判断してすぐに通常モードにリジュームしてしまう誤動作を防止すると共に、サスペンドモード時において、リジューム操作を意図していない微妙な振動及び接触等でも、ＵＳＢマウスは状態変化があったものと誤って判断しリジュームしてしまう誤動作を防止するものである。
【００６０】
各ステップにおける特長、変形例その他については既に第１及び第２の実施例において詳細に説明してあるのでここでは処理フローのみを簡単に説明する。
図６は、本発明の第３の実施例によるＵＳＢマウスの機能ブロック図である。本実施例によれば、ＵＳＢインタフェース１１を有するＵＳＢマウス１は、ＵＳＢマウス１の状態変化を検知する検知手段１２であって、サスペンドモード時では通常モード時よりも長い検知周期で検知する検知手段１２と、通常モードからサスペンドモードへの遷移を指示するサスペンド信号を、ＵＳＢインタフェース１１を介して受信する受信手段１３と、サスペンド信号を受信してから所定の待ち時間、検知手段１２の検知を無効にする無効化手段１４と、状態変化が検知された場合、所定の検知時間内に検知手段１２で検知される状態変化の累積量を記憶する記憶手段１６と、累積量が所定のしきい値以上であるかを判定する判定手段１７と、判定手段１７がしきい値以上であると判定した場合、サスペンドモードから通常モードへの遷移を指示するリジューム信号を、ＵＳＢインタフェース１１を介して送信する送信手段１５とを備える。
【００６１】
検知手段１２には、ＵＳＢマウス１の床面に対する相対移動を検出するためのＸ軸用座標センサ及びＹ軸用座標センサと、ＵＳＢマウス１上に設けられるクリックスイッチ（左右のクリックスイッチを含む）等が含まれる。
記憶手段１６は、メモリ２５を含んで成る。
これら各手段の制御及び処理は、ＣＰＵ２４を含めたファームウェア形式によって制御部２０で実現される。
【００６２】
図７は、本発明の第３の実施例によるＵＳＢマウスの動作原理を示すフローチャートである。
ここで、初めにＵＳＢマウスが接続されているパソコンが通常モードにあり、上述した図８の処理ループが既に実行されている場合を考える。
図８のステップＳ１０５において、ＵＳＢマウス１の制御部２０が、ホストからのサスペンド信号を受信したと判定した場合はステップＳ２０１へ進み、ＵＳＢマウス１はサスペンドモードへ入る。
【００６３】
ステップＳ２０１においてカウント数Ｎを設定する。なお、本実施例ではカウント数Ｎを１０と設定したが、第１の実施例でも説明したように、カウント数Ｎは、必要とする待ち時間に応じて適宜設定すればよい。
次にステップＳ１０６において、ＣＰＵストップ復帰用タイマがセットされる。この時間は例えば数十〜数百ｍ秒に設定される。
【００６４】
次いでステップＳ１０７においてＣＰＵ２４がストップする。
ステップＳ１０８においてＣＰＵストップ復帰用タイマがオーバするか又はリジューム信号の割り込みがパソコンからあった場合、
ステップＳ１０９において、ストップしていたＣＰＵ２４の処理動作が再びスタートする。
【００６５】
次に、ステップＳ１１０において、制御部２０は、パソコンからのリジューム信号を受信したか否かを判定する。
ステップＳ１１０においてリジューム信号を受信したと判定された場合は、ステップＳ１１３へ進んでリジューム処理がなされ、パソコン及びＵＳＢマウス１はリジュームする。
【００６６】
ステップＳ１１０においてリジューム信号を受信していないと判定された場合は、ステップＳ１０８において単にＣＰＵストップ復帰用タイマがオーバしたことを意味するので、ステップＳ２０２へ進む。
ステップＳ２０２では、カウント数Ｎが０であるか否かを判定する。カウント数Ｎが０でない場合はステップＳ２０３へ進み、カウント数Ｎが０である場合はステップＳ１１１へ進む。
【００６７】
ステップＳ２０２でカウント数Ｎは０ではないと判定された場合、ステップＳ２０３においてカウント数Ｎが１ディクリメントされ、ステップＳ１０６へ戻る。
前述のように、本実施例ではカウント数Ｎを１０と設定していたので、サスペンドモードに入りパソコン側からリジューム信号を受信しない限りは、ステップＳ１０６〜Ｓ２０３を１０回繰り返すということになる。従ってその間は検知手段１２の検知は無効であり、前述のステップＳ１１１及びＳ１１２の処理は実行されず、ＵＳＢマウス１を移動させてもクリックスイッチ２３を押下してもリジュームすることはない。
【００６８】
ステップＳ２０２においてカウント数Ｎが０であると判定された場合は、ステップＳ１１１へ進み、Ｘ軸用座標センサ２１、Ｙ軸用座標センサ２２及びクリックスイッチ２３等の各センサは、状態変化をそれぞれ検知（センシング）する。ステップＳ１１２では、制御部２０は、ステップＳ１１１においてＸ軸用座標センサ２１、Ｙ軸用座標センサ２２及びクリックスイッチ２３等の各センサのいずれかにおいて状態変化があったか否かを判定する。この状態変化はＸ軸用座標センサ２１及びＹ軸用座標センサ２２についてはＵＳＢマウスの移動の有無であり、クリックスイッチ２３についてはその押下の有無である。
【００６９】
ステップＳ１１２において状態変化はない判定された場合は再びステップＳ１０６へ戻る。
ステップＳ１１２において状態変化があったと判定された場合は、ユーザはＵＳＢマウス１を操作することによってＵＳＢマウス１側からリジューム処理を指示した可能性があることを意味するので、ステップＳ３０１へ進む。
【００７０】
ステップＳ３０１では、第２の実施例で説明したように、カウント数Ｍを設定する。本実施例では、カウント数Ｍを２０００と設定したが、必要とする検知時間に応じて適宜設定すればよい。
次にステップＳ３０２において、Ｘ軸用座標センサ２１、Ｙ軸用座標センサ２２及びクリックスイッチ２３等の各センサは、状態変化をそれぞれ検知（センシング）する。
【００７１】
ステップＳ３０３では、制御部２０は、パソコンからのリジューム信号を受信したか否かを判定する。
ステップＳ３０３においてリジューム信号を受信したと判定された場合は、ステップＳ１１３へ進んでリジューム処理がなされ、パソコン及びＵＳＢマウス１はリジュームする。
【００７２】
ステップＳ３０３においてリジューム信号を受信していないと判定された場合は、ステップＳ１０８において単にＣＰＵストップ復帰用タイマがオーバしたことを意味するので、ステップＳ３０４へ進む。
ステップＳ３０４では、カウント数Ｍが０であるか否かを判定する。カウント数Ｍが０でない場合はステップＳ３０５へ進み、カウント数Ｍが０である場合はステップＳ３０６へ進む。
【００７３】
ステップＳ３０４でカウント数Ｍは０ではないと判定された場合、カウント数Ｍを１ディクリメントすると共に、ステップ３０２において検知された状態変化を累積し記憶する（ステップＳ３０５）。ここで累積される状態変化量は、Ｘ軸用座標センサ２１及びＹ軸用座標センサ２２についてはＵＳＢマウスの移動量（マウスカウント数) であり、クリックスイッチ２３についてはその押下時間である。ステップＳ３０５終了後は、再びステップＳ３０２へ戻る。
【００７４】
ステップＳ３０２〜Ｓ３０５の処理ループはカウント数Ｍが０になるまで実行され、その間はステップ３０２において検知された状態変化を累積していく。この処理ループは通常モードにおける検知周期と同様の処理周期（例えば数十〜数百μ秒）で実行される。
ステップＳ３０４でカウント数Ｍは０であると判定された場合は、ステップＳ３０２〜Ｓ３０５のループを抜け出し、ステップＳ３０６へ進む。
【００７５】
ステップＳ３０６では、累積された状態変化量が所定のしきい値以上であるか否かを判定する。上述のように、Ｘ軸用座標センサ２１及びＹ軸用座標センサ２２についてはＵＳＢマウスの移動量（マウスカウント数) であり、クリックスイッチ２３についてはその押下時間である。ステップＳ３０６においては、ＵＳＢマウス１の移動量あるいはクリックスイッチ２３の押下時間等のうち少なくとも１つが所定のしきい値以上であるか否かが判定される。
【００７６】
ステップＳ３０６で所定のしきい値以上ではないと判定された場合は、ステップＳ１０６へ戻る。すなわち、この場合はリジューム操作を意図していない微妙な振動及び接触である可能性が高いのでリジュームはせず、再び通常のサスペンドモードにおける処理が継続する。
ステップＳ３０６で所定のしきい値以上であると判定された場合、ユーザがＵＳＢマウス１を操作することによってＵＳＢマウス１側からリジューム処理を指示した可能性が高いのでステップＳ１１３へ進み、リジューム処理がなされ、パソコン及びＵＳＢマウス１はリジュームする。
【００７７】
以上説明したように、本発明の第３の実施例のＵＳＢマウスによれば、、サスペンドモードに遷移してから所定の待ち時間が経過するまでは検知手段の検知は無効化されるので、ＵＳＢマウスの移動やクリックスイッチの押下があってもリジュームすることはない。従って、例えば、通常モードからサスペンドモードへの切換えのためマウスカーソル操作の終了後にＵＳＢマウスから手を離す際にＵＳＢマウス本体が振動してしまっても、リジュームしてしまうことはない。
【００７８】
また、サスペンドモードにおいてＸ軸用座標センサ、Ｙ軸用座標センサ及びクリックスイッチ等の各センサにより状態変化が検知された場合は、所定の検知時間、この状態変化を累積し、この累積量が所定のしきい値以上である場合にリジューム処理を実行する。従って、リジューム操作を意図していない微妙な振動及び接触等によってリジュームしてしまうような誤動作を防止することができる。
【００７９】
【発明の効果】
以上説明したように、第１の発明のＵＳＢポインティングデバイスによれば、サスペンドモードに遷移してから所定の待ち時間が経過するまでは検知手段の検知は無効化されるので、ＵＳＢポインティングデバイスの移動やクリックスイッチの押下があってもリジュームすることはない。従って、例えば、通常モードからサスペンドモードへの切換えのためマウスカーソル操作の終了後にＵＳＢポインティングデバイスから手を離す際にＵＳＢポインティングデバイス本体が振動してしまっても、リジュームしてしまうことはない。
【００８０】
また、第２の発明のＵＳＢポインティングデバイスによれば、サスペンドモードにおいて各センサ、クリックスイッチ、平面入力パネル等が状態変化を検知した場合は、所定の検知時間、この状態変化を累積し、この累積量が所定のしきい値以上である場合にリジューム処理を実行するので、リジューム操作を意図していない微妙な振動及び接触等によってリジュームしてしまう誤動作を防止することができる。また、この検知時間における各センサ、クリックスイッチ、平面入力パネルの検知周期は、通常モードの場合と同じであるので、信頼性の高い累積された状態変化量を得ることができ、これに基づいてリジュームの可否を判定するので信頼性が向上する。
【００８１】
第３の発明は、第１の発明と第２の発明を組み合わせたものであり、これにより従来のＵＳＢポインティングデバイスに比べてより操作性のよいリジューム（リモートウェイクアップ）を実現することができる。
【図面の簡単な説明】
【図１】ＵＳＢマウスの基本構成を示す図である。
【図２】本発明の第１の実施例によるＵＳＢマウスの機能ブロック図である。
【図３】本発明の第１の実施例によるＵＳＢマウスの動作原理を示すフローチャートである。
【図４】本発明の第２の実施例によるＵＳＢマウスの機能ブロック図である。
【図５】本発明の第２の実施例によるＵＳＢマウスの動作原理を示すフローチャートである。
【図６】本発明の第３の実施例によるＵＳＢマウスの機能ブロック図である。
【図７】本発明の第３の実施例によるＵＳＢマウスの動作原理を示すフローチャートである。
【図８】従来例によるＵＳＢマウスの動作原理を示すフローチャートである。
【符号の説明】
１…ＵＳＢマウス
１１…ＵＳＢインタフェース
１２…検知手段
１３…受信手段
１４…無効化手段
１５…送信手段
１６…記憶手段
１７…判定手段
２０…制御部
２１…Ｘ軸用座標センサ
２２…Ｙ軸用座標センサ
２３…クリックスイッチ
２４…ＣＰＵ
２５…メモリ
２６…バス
２７…ＵＳＢケーブル
【図１】
0004371549.tif 000002
【図２】
0004371549.tif 000003
【図３】
0004371549.tif 000004
【図４】
0004371549.tif 000005
【図５】
0004371549.tif 000006
【図６】
0004371549.tif 000007
【図７】
0004371549.tif 000008
【図８】
0004371549.tif 000009