JP2004118778A - Usbキーボード装置及びusb制御信号生成方法 - Google Patents
Usbキーボード装置及びusb制御信号生成方法 Download PDFInfo
- Publication number
- JP2004118778A JP2004118778A JP2002284914A JP2002284914A JP2004118778A JP 2004118778 A JP2004118778 A JP 2004118778A JP 2002284914 A JP2002284914 A JP 2002284914A JP 2002284914 A JP2002284914 A JP 2002284914A JP 2004118778 A JP2004118778 A JP 2004118778A
- Authority
- JP
- Japan
- Prior art keywords
- key
- mouse
- usb
- mode
- keypad
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Images
Landscapes
- Input From Keyboards Or The Like (AREA)
Abstract
【課題】単一のケーブル接続で、接続されるコンピュータに負荷をかけることなく、キーパッドに対する操作のみでマウスポインタを制御する。
【解決手段】キーパッド上の所定のキーに対する所定の操作に基づいて、ノーマルモードとマウスモードとを切り換え、ノーマルモードにおいては、キーパッド上のキーに対する操作に基づいて、通常のキー入力に対応するUSB制御信号を生成し、マウスモードにおいて、キーパッド上の所定のキーの組に対する操作に基づいて、マウスポインタを制御するUSB制御信号を生成する
【選択図】 図3
【解決手段】キーパッド上の所定のキーに対する所定の操作に基づいて、ノーマルモードとマウスモードとを切り換え、ノーマルモードにおいては、キーパッド上のキーに対する操作に基づいて、通常のキー入力に対応するUSB制御信号を生成し、マウスモードにおいて、キーパッド上の所定のキーの組に対する操作に基づいて、マウスポインタを制御するUSB制御信号を生成する
【選択図】 図3
Description
【0001】
【発明の属する技術分野】
本発明は、ユニバーサルシリアルバス(Universal Serial Bus:USB)規格に準拠し、コンピュータに接続されて、ユーザによる操作に基づくUSB制御信号をコンピュータに供給するUSBキーボード装置及びUSB制御信号生成方法に関する。
【0002】
【従来の技術】
コンピュータを制御し、或はコンピュータにデータを入力するための入力装置として、キーボード装置及びマウス入力装置(以下、単にマウスという。)が知られている。マウスは、周知の通り、マウスパッド上に載置され、ユーザによる移動操作に基づいて、コンピュータに接続されたディスプレイ上に表示されるマウスポインタの動きを制御する入力装置である。
【0003】
マウスパッドは、ユーザの机上の一部の領域を占有し、このため、机上でユーザが自由に使用できるスペースが狭くなるといった問題があった。さらに、マウスを使用する際に、ユーザは、キーボードから手を離す必要があるため、操作が煩雑であるという問題もあった。
【0004】
そこで、キーボード装置にマウス機能を追加したマウス機能付きキーボード装置が提案されている。マウス機能付きキーボード装置としては、キーボード上にタッチパッド、ポインティングスティック、アキュムポイント、トラックボール等のポインティングデバイスを設けたキーボード装置が知られている。さらに、特開平6−230872号には、キーボードの一部のキーをマウスポインタの制御に割り当て、キー操作によりマウスポインタを制御するキーボード装置も提案されている。
【0005】
【特許文献1】
特開平6−230872号公報
【0006】
【発明が解決しようとする課題】
ここで、キーボード上にタッチパッド、ポインティングスティック、アキュムポイント、トラックボール等のポインティングデバイスを設けたキーボード装置は、これらポインティングデバイスをキーパッド上に設けるために、通常のキーを配列するためのスペースが狭くなるという問題があった。さらに、これらポインティングデバイスを構成する部品は高価であり、キーボード装置の製造コストが高くなるという問題もあった。
【0007】
一方、特開平6−230872号に開示されるキーボード装置では、マウスポインタの制御に割り当てられたキーに対するキー操作を認識し、この操作に基づく制御信号を生成する設定部や制御部を情報処理装置(コンピュータ)に設ける必要があり、このため情報処理装置側における負担が大きい。また、特開平6−230872号には、これらの設定部や制御部をキーボード装置の本体内に設ける変形例も開示されているが、この場合、キーボード装置とコンピュータとの接続に、キーボードケーブルとマウスケーブルの2種類のケーブルを使用する必要があり、結線が煩雑であった。
【0008】
本発明は、上述のような課題に鑑みてなされたものであり、部品点数を増加させて製造コストを高めることなく、キーパッドに対する操作のみでマウスポインタを制御するとともに、接続されるコンピュータに負荷をかけることがなく且つ単一のケーブル接続のみで動作する、マウス機能が付加されたUSBキーボード装置を提供することを目的とする。
【0009】
【課題を解決するための手段】
上述の目的を達成するために、本発明に係るUSBキーボード装置は、ユーザにより操作される複数のキーが設けられたキーパッドと、キーパッドに対する操作に基づきUSB規格に準拠するUSB制御信号を生成するUSB制御部と、USB制御部により生成されたUSB制御信号をコンピュータに供給するためのUSB制御信号出力端子とを備えるUSBキーボード装置において、このキーボード装置は、ノーマルモードとマウスモードの2つの動作モードを有し、キーパッドは、ノーマルモードにおいては通常のキーとして使用され、マウスモードにおいてはマウスポインタを制御するマウス対応キーとして使用される1組の兼用キーを有し、制御部は、キーパッド上のキーに対する所定の操作に基づいて、ノーマルモードとマウスモードとを切り換え、ノーマルモードにおいては、キーパッド上のキーに対する操作に基づいて通常のキー入力に対応するUSB制御信号を生成し、マウスモードにおいては、兼用キーに対する操作に基づいてマウスポインタを制御するUSB制御信号を生成することを特徴とする。
【0010】
キーパッドには、ノーマルモードとマウスモードを切り換えるための専用の切換キーを設けてもよい。また、ノーマルモードとマウスモードの切換は、キーパッド上の所定の複数のキーを同時に押下することにより行ってもよい。或は、ノーマルモードとマウスモードの切換は、キーパッド上の所定のキーを複数回連続して押下することにより行ってもよい。また、ノーマルモードとマウスモードの切換は、キーパッド上の所定のキーを所定時間以上押下し続けることにより行ってもよい。
【0011】
また、上述の目的を達成するために、本発明に係るUSB制御信号生成方法は、ユーザにより操作される複数のキーが設けられたキーパッドを備えるUSBキーボード装置内でUSB制御信号を生成するUSB制御信号生成方法において、キーパッド上の所定のキーに対する所定の操作に基づいて、ノーマルモードとマウスモードとを切り換えるステップと、ノーマルモードにおいて、キーパッド上のキーに対する操作に基づいて、通常のキー入力に対応するUSB制御信号を生成するステップと、マウスモードにおいて、キーパッド上の所定のキーの組に対する操作に基づいて、マウスポインタを制御するUSB制御信号を生成するステップとを有する。
【0012】
【発明の実施の形態】
以下、本発明に係るUSBキーボード装置及びUSB制御信号生成方法について、図面を参照して詳細に説明する。
【0013】
図1は、本発明を適用したUSBキーボード装置1の外観を示す図である。USBキーボード装置1は、USB規格に準拠する周知のキーボード装置と略々同様の外観を有している。すなわち、USBキーボード装置1は、ユーザにより操作される複数のキー2が設けられたキーパッド3を備える。キーボード装置1は、後述するように、ノーマルモードとマウスモードの2つのモードで動作する。これらのモードは、モード切換キー2aを押下することにより切り換えられる。この具体例においては、キーパッド3上の複数のキー2のうち、上下左右の矢印キー2bは、ノーマルモードでは通常の矢印キーの役割を果たすとともに、マウスモードでは、マウス対応キーとして機能する。このため、矢印キー2bは、兼用キーとも呼ばれる。マウスモード及びマウス対応キーについては、後に詳細に説明する。
【0014】
図2は、このUSBキーボード装置1の内部構成を概念的に示す図である。USBキーボード装置1は、行番号0〜行番号17の18個の行と、列番号0〜列番号7の8個の列を有する18×8キーマトリクス4を備える。図1に示すキーパッド3上の各キー2は、18×8キーマトリクス4において、所定の行番号及び列番号により定義される所定の座標にそれぞれ対応している。すなわち、ユーザがキーパッド3を操作して任意のキー2を押下すると、押下されたキーに対応する行番号及び列番号がUSBコントローラ5に検出される。これにより、USBコントローラ5は、どのキー2が押下されたかを知り、この情報に基づいて、USB規格に準拠するUSB制御信号を生成する。さらに、USBコントローラ5は、単一のUSB接続ケーブル6を介して、ホスト装置であるコンピュータ7にこのUSB制御信号を供給する。
【0015】
なお、図2に示すNum LED、Caps LED、Scroll LEDは、従来の一般的なキーボード装置にも設けられており、これらの機能については周知であるため、ここでは詳細な説明を省略する。また、本発明に基づくMouse LEDについては、後に説明する。
【0016】
この具体例においては、上述したモード切換キー2a及び矢印キー2bは、図3に示すように、18×8キーマトリクス4において、第10行の第3列〜第7列に対応している。以下では、このモード切換キー2a及び4つの矢印キー2bを「マウス対応キー」とも呼ぶ。詳しくは、図3の表に示すように、モード切換キー2aは、18×8キーマトリクス4において、第10行第3列に対応し、ノーマルモード時にモード切換キー2aが押下されると、モードがマウスモードに切り換えられ、マウスモード時にモード切換キー2aが押下されると、モードがノーマルモードに切り換えられる。
【0017】
また、18×8キーマトリクス4の、第10行第4列〜第7列には、それぞれ上下左右の矢印キー2bが対応している。矢印キー2bは、ノーマルモード時には、通常の矢印キーとして機能し、マウスモード時には、マウスポインタを上下左右に移動させるマウス制御キーとして機能する。
【0018】
ここで、本発明を適用したUSBキーボード装置1のUSBコントローラ5により実行される処理のメインルーチンについて、図4を用いて説明する。まず、ステップS1において、USBキーボード装置1をコンピュータ7にプラグインする。次に、ステップS2において、電源オンによるリセットの後、I/O、RAM、制御レジスタ等を初期化する。続いて、ステップS3において、USBコントローラ5は、ホストであるコンピュータ7からのUSBバスリセットを待機する。
【0019】
ステップS3において、USBコントローラ5がUSBバスリセットを受信すると、処理はステップS4に進み、USBコントローラ5は、ホストとのハンドシェイクによりバスエニュメレーションを実行する。これにより、デバイスには、ホストとのハンドシェイクのためのUSBデバイスアドレスが割り当てられる。また、ノーマルモード対応キーのコードには、Endpoint 1 FIFOバッファを介して、ホストとのハンドシェイクが割り当てられる。一方、マウスモード対応キーのコードには、Endpoint 2 FIFOバッファを介して、ホストとのハンドシェイクが割り当てられる。
【0020】
次に、ステップS5において、デバイスが構成されたか否かを確認する。ここで、USBデバイスが未だ構成されていない場合は、処理は、ステップS4に戻る。一方、USBデバイスが構成されている場合は、処理は、ステップS6に進む。
【0021】
ステップS6においては、USBコントローラ5は、18×8キーマトリクス4をスキャンする。ステップS7においては、全スキャンが終了しているか否かが確認され、全スキャンが終了していない場合には、ステップS6が繰り返され、全スキャンが終了すると処理は、ステップS8に進む。
【0022】
ステップS8においては、USBコントローラ5は、ファントムキー(Phantom Key)が発生したか否かを検出する。ここで、ファントムキーが検出された場合は、処理はステップS9に進み、ファントムキーが検出されなかった場合は、処理はステップS10に進む。ステップS9においては、USBコントローラ5は、Endpoint 1 FIFOバッファにコード01H(ロールオーバーエラー)を格納し、ステップS5に戻る。一方、ステップS10においては、キーの状態に変化があるか否かが判定され、ここで、キーの状態に変化がない場合は、処理はステップS5に戻る。一方、キー状態に変化がある場合は、ステップS11において、以下に説明する「キー処理変化のサブルーチン」を実行して、ステップS5に戻る。
【0023】
この「キー処理変化のサブルーチン」を図5に示す。ステップS11において、USBコントローラ5は、マウス対応キーであるモード切換キー2a又は矢印キー2bが変化したか否かを判定する。ここで、マウス対応キーの変化が検出されなかった場合、ステップS12において、USBコントローラ5は、ノーマル対応キーのコードをEndpoint 1 FIFOバッファに格納して、このサブルーチンを抜ける。一方、ステップS11において、マウス対応キーの変化が検出された場合、処理は、ステップS13に進む。
【0024】
ステップS13において、USBコントローラ5は、モード切換キー2aが変化したか否かを判定する。ここで、モード切換キー2aの変化が検出されなかった場合、すなわち、モード切換キー2a以外のマウス対応キー(この具体例では、矢印キー2b)の変化が検出された場合、処理はステップS14に進む。ステップS14においては、USBコントローラ5は、モードがマウスモードであるか否かを判定し、マウスモードでない場合は、矢印キー2bの変化をノーマルモード対応の動作とみなし、ステップS12においてノーマル対応キーのコードをEndpoint 1 FIFOバッファに格納して、このサブルーチンを抜ける。一方、マウスモードの場合は、ステップS15において、Endpoint 2 FIFOバッファにマウスモード対応キーのコードを格納した後、このサブルーチンを抜ける。
【0025】
また、ステップS13において、モード切換キー2aの変化が検出された場合、処理はステップS16に進み、USBコントローラ5は、モード切換キー2aの変化がオンであるかオフであるかを判定する。ここで、モード切換キー2aの変化がオンである場合は、処理はステップS17に進み、モード切換キー2aの変化がオフである場合は、USBコントローラ5は、さらなる処理を実行せずにこのサブルーチンを抜ける。
【0026】
ステップS17においては、マウスモードとノーマルモードとをトグル動作にて切り換える。すなわち、マウスモードにおいてモード切換キー2aのオンが検出されると、モードはノーマルモードに切り換えられ、ノーマルモードにおいてモード切換キー2aのオンが検出されると、モードはマウスモードに切り換えられる。
【0027】
次にステップS18において、現在のモードがマウスモードであるか否かが判定される。ここで、現在のモードがマウスモードである場合、処理はステップS19に進み、USBキーボード装置1に設けられたMouse LEDを点灯してこのサブルーチンを抜ける。一方、現在のモードがマウスモードではない場合、処理はステップS20に進み、Mouse LEDを消灯してこのサブルーチンを抜ける。このMouse LEDにより、ユーザは、USBキーボード装置1が現在マウスモードで動作しているか、ノーマルモードで動作しているかを容易に確認することができる。
【0028】
さらに、Endpoint 1の割り込みルーチンについて、図6を用いて説明する。ホストにより割り当てられたUSBデバイスアドレスにてEndpoint 1のINトークンを受信すると、この割り込みルーチンが実行される。ステップS21においては、Endpoint 1 FIFOバッファにデータがあるか否かが判定される。Endpoint 1 FIFOが空ではない場合、すなわち、Endpoint 1 FIFOにデータがある場合、USBコントローラ5は、ステップS22において、ノーマルモード対応キーのコードをコンピュータ7に報告し、このルーチンを抜ける。一方、Endpoint 1 FIFOが空である場合、すなわちEndpoint 1 FIFOにデータがない場合、USBコントローラ5は、ステップS23においてNAKのハンドシェイクをコンピュータ7に返し、このルーチンを抜ける。
【0029】
次に、Endpoint 2の割り込みルーチンについて、図7を用いて説明する。ホストにより割り当てられたUSBデバイスアドレスにてEndpoint 2のINトークンを受信すると、この割り込みルーチンが実行される。ステップS31においては、Endpoint 2 FIFOバッファにデータがあるか否かが判定される。Endpoint 2 FIFOが空ではない場合、すなわち、Endpoint 2 FIFOにデータがある場合、USBコントローラ5は、ステップS32において、マウスモード対応キーのコードをコンピュータ7に報告し、このルーチンを抜ける。一方、Endpoint 2 FIFOが空である場合、すなわちEndpoint 2 FIFOにデータがない場合、USBコントローラ5は、ステップS33においてNAKのハンドシェイクをコンピュータ7に返し、このルーチンを抜ける。
【0030】
このように、上述の具体例によれば、矢印キー2bをノーマルモード及びマウスモードの兼用キーとして使用することにより、外付けマウスやポインティングデバイスを設けることなく、USBキーボード装置1のみで、マウスポインタを制御することができる。
【0031】
ここで、上述の具体例では、ノーマルモードとマウスモードの切換のために専用のモード切換キー2aを設けているが、このようなモード切換キー2aを設けることなく、従来のキーに対する所定の特殊な操作によりモードの切換を行ってもよい。例えば、上矢印キー、下矢印キー、右矢印キーの3つのキーを同時に押下することにより、ノーマルモードとマウスモードとを切り換えるようにしてもよい。或は、所定のキーを複数回、例えばシフトキーを5回連続して押下することにより、ノーマルモードとマウスモードとを切り換えるようにしてもよい。さらに、所定のキーを所定時間以上、例えば、シフトキーを3秒以上連続して押下することによりノーマルモードとマウスモードとを切り換えるようにしてもよい。いずれの場合も、このモード切換操作は、通常のキー操作時には発生しない操作であることが望ましい。
【0032】
また、上述の具体例においては、マウスモードにおけるマウスポインタの制御に矢印キー2bを用いているが、マウスポインタの制御には例えばテンキー等、他のキーを割り当ててもよいことは勿論である。さらに、上下左右の4方向のみではなく、斜め方向の移動に対応するキーを割り当てることもできる。また、マウス対応キーを連続して押下し続けることにより、マウスポインタの移動速度を変化させてもよい。
【0033】
【発明の効果】
以上のように、本発明に係るUSBキーボード装置は、ノーマルモードとマウスモードの2つの動作モードを有し、キーパッドには、ノーマルモードにおいては通常のキーとして使用され、マウスモードにおいてはマウスポインタを制御するマウス対応キーとして使用される1組の兼用キーが設けられ、制御部は、所定の操作に基づいて、ノーマルモードとマウスモードとを切り換え、ノーマルモードにおいては、キーパッド上のキーに対する操作に基づいて通常のキー入力に対応するUSB制御信号を生成し、マウスモードにおいては、兼用キーに対する操作に基づいてマウスポインタを制御するUSB制御信号を生成するので、部品点数を増加させて製造コストを高めることなく、キーパッドに対する操作のみでマウスポインタを制御することができ、また、接続されるコンピュータに負荷をかけることがなく且つ単一のケーブル接続のみでマウスポインタを制御することができる。更に、スクロール機能、クリック釦等のマウス対応キーを他のキーに追加して割り当てる事もできる。
【0034】
また、本発明に係るUSB制御信号生成方法は、キーパッド上の所定のキーに対する所定の操作に基づいて、ノーマルモードとマウスモードとを切り換え、ノーマルモードにおいては、キーパッド上のキーに対する操作に基づいて、通常のキー入力に対応するUSB制御信号を生成し、マウスモードにおいて、キーパッド上の所定のキーの組に対する操作に基づいて、マウスポインタを制御するUSB制御信号を生成するので、部品点数を増加させて製造コストを高めることなく、キーパッドに対する操作のみでマウスポインタを制御することができ、また、接続されるコンピュータに負荷をかけることがなく且つ単一のケーブル接続のみでマウスポインタを制御することができる。
【図面の簡単な説明】
【図1】本発明を適用したUSBキーボード装置の外観を示す平面図である。
【図2】図1に示すUSBキーボード装置の内部構成を示すブロック図である。
【図3】図1に示すUSBキーボード装置のマウス対応キーを説明する図である。
【図4】図2に示すUSBコントローラが実行するメインルーチンを説明するフローチャートである。
【図5】キー処理変化のサブルーチンを説明するフローチャートである。
【図6】Endpoint1の割り込みルーチンを説明するフローチャートである。
【図7】Endpoint2の割り込みルーチンを説明するフローチャートである。
【符号の説明】
1 USBキーボード装置
2 キー
2a モード切換キー
2b 矢印キー
3 キーパッド
4 18×8キーマトリクス
5 USBコントローラ
6 USB接続ケーブル
7 コンピュータ
【発明の属する技術分野】
本発明は、ユニバーサルシリアルバス(Universal Serial Bus:USB)規格に準拠し、コンピュータに接続されて、ユーザによる操作に基づくUSB制御信号をコンピュータに供給するUSBキーボード装置及びUSB制御信号生成方法に関する。
【0002】
【従来の技術】
コンピュータを制御し、或はコンピュータにデータを入力するための入力装置として、キーボード装置及びマウス入力装置(以下、単にマウスという。)が知られている。マウスは、周知の通り、マウスパッド上に載置され、ユーザによる移動操作に基づいて、コンピュータに接続されたディスプレイ上に表示されるマウスポインタの動きを制御する入力装置である。
【0003】
マウスパッドは、ユーザの机上の一部の領域を占有し、このため、机上でユーザが自由に使用できるスペースが狭くなるといった問題があった。さらに、マウスを使用する際に、ユーザは、キーボードから手を離す必要があるため、操作が煩雑であるという問題もあった。
【0004】
そこで、キーボード装置にマウス機能を追加したマウス機能付きキーボード装置が提案されている。マウス機能付きキーボード装置としては、キーボード上にタッチパッド、ポインティングスティック、アキュムポイント、トラックボール等のポインティングデバイスを設けたキーボード装置が知られている。さらに、特開平6−230872号には、キーボードの一部のキーをマウスポインタの制御に割り当て、キー操作によりマウスポインタを制御するキーボード装置も提案されている。
【0005】
【特許文献1】
特開平6−230872号公報
【0006】
【発明が解決しようとする課題】
ここで、キーボード上にタッチパッド、ポインティングスティック、アキュムポイント、トラックボール等のポインティングデバイスを設けたキーボード装置は、これらポインティングデバイスをキーパッド上に設けるために、通常のキーを配列するためのスペースが狭くなるという問題があった。さらに、これらポインティングデバイスを構成する部品は高価であり、キーボード装置の製造コストが高くなるという問題もあった。
【0007】
一方、特開平6−230872号に開示されるキーボード装置では、マウスポインタの制御に割り当てられたキーに対するキー操作を認識し、この操作に基づく制御信号を生成する設定部や制御部を情報処理装置(コンピュータ)に設ける必要があり、このため情報処理装置側における負担が大きい。また、特開平6−230872号には、これらの設定部や制御部をキーボード装置の本体内に設ける変形例も開示されているが、この場合、キーボード装置とコンピュータとの接続に、キーボードケーブルとマウスケーブルの2種類のケーブルを使用する必要があり、結線が煩雑であった。
【0008】
本発明は、上述のような課題に鑑みてなされたものであり、部品点数を増加させて製造コストを高めることなく、キーパッドに対する操作のみでマウスポインタを制御するとともに、接続されるコンピュータに負荷をかけることがなく且つ単一のケーブル接続のみで動作する、マウス機能が付加されたUSBキーボード装置を提供することを目的とする。
【0009】
【課題を解決するための手段】
上述の目的を達成するために、本発明に係るUSBキーボード装置は、ユーザにより操作される複数のキーが設けられたキーパッドと、キーパッドに対する操作に基づきUSB規格に準拠するUSB制御信号を生成するUSB制御部と、USB制御部により生成されたUSB制御信号をコンピュータに供給するためのUSB制御信号出力端子とを備えるUSBキーボード装置において、このキーボード装置は、ノーマルモードとマウスモードの2つの動作モードを有し、キーパッドは、ノーマルモードにおいては通常のキーとして使用され、マウスモードにおいてはマウスポインタを制御するマウス対応キーとして使用される1組の兼用キーを有し、制御部は、キーパッド上のキーに対する所定の操作に基づいて、ノーマルモードとマウスモードとを切り換え、ノーマルモードにおいては、キーパッド上のキーに対する操作に基づいて通常のキー入力に対応するUSB制御信号を生成し、マウスモードにおいては、兼用キーに対する操作に基づいてマウスポインタを制御するUSB制御信号を生成することを特徴とする。
【0010】
キーパッドには、ノーマルモードとマウスモードを切り換えるための専用の切換キーを設けてもよい。また、ノーマルモードとマウスモードの切換は、キーパッド上の所定の複数のキーを同時に押下することにより行ってもよい。或は、ノーマルモードとマウスモードの切換は、キーパッド上の所定のキーを複数回連続して押下することにより行ってもよい。また、ノーマルモードとマウスモードの切換は、キーパッド上の所定のキーを所定時間以上押下し続けることにより行ってもよい。
【0011】
また、上述の目的を達成するために、本発明に係るUSB制御信号生成方法は、ユーザにより操作される複数のキーが設けられたキーパッドを備えるUSBキーボード装置内でUSB制御信号を生成するUSB制御信号生成方法において、キーパッド上の所定のキーに対する所定の操作に基づいて、ノーマルモードとマウスモードとを切り換えるステップと、ノーマルモードにおいて、キーパッド上のキーに対する操作に基づいて、通常のキー入力に対応するUSB制御信号を生成するステップと、マウスモードにおいて、キーパッド上の所定のキーの組に対する操作に基づいて、マウスポインタを制御するUSB制御信号を生成するステップとを有する。
【0012】
【発明の実施の形態】
以下、本発明に係るUSBキーボード装置及びUSB制御信号生成方法について、図面を参照して詳細に説明する。
【0013】
図1は、本発明を適用したUSBキーボード装置1の外観を示す図である。USBキーボード装置1は、USB規格に準拠する周知のキーボード装置と略々同様の外観を有している。すなわち、USBキーボード装置1は、ユーザにより操作される複数のキー2が設けられたキーパッド3を備える。キーボード装置1は、後述するように、ノーマルモードとマウスモードの2つのモードで動作する。これらのモードは、モード切換キー2aを押下することにより切り換えられる。この具体例においては、キーパッド3上の複数のキー2のうち、上下左右の矢印キー2bは、ノーマルモードでは通常の矢印キーの役割を果たすとともに、マウスモードでは、マウス対応キーとして機能する。このため、矢印キー2bは、兼用キーとも呼ばれる。マウスモード及びマウス対応キーについては、後に詳細に説明する。
【0014】
図2は、このUSBキーボード装置1の内部構成を概念的に示す図である。USBキーボード装置1は、行番号0〜行番号17の18個の行と、列番号0〜列番号7の8個の列を有する18×8キーマトリクス4を備える。図1に示すキーパッド3上の各キー2は、18×8キーマトリクス4において、所定の行番号及び列番号により定義される所定の座標にそれぞれ対応している。すなわち、ユーザがキーパッド3を操作して任意のキー2を押下すると、押下されたキーに対応する行番号及び列番号がUSBコントローラ5に検出される。これにより、USBコントローラ5は、どのキー2が押下されたかを知り、この情報に基づいて、USB規格に準拠するUSB制御信号を生成する。さらに、USBコントローラ5は、単一のUSB接続ケーブル6を介して、ホスト装置であるコンピュータ7にこのUSB制御信号を供給する。
【0015】
なお、図2に示すNum LED、Caps LED、Scroll LEDは、従来の一般的なキーボード装置にも設けられており、これらの機能については周知であるため、ここでは詳細な説明を省略する。また、本発明に基づくMouse LEDについては、後に説明する。
【0016】
この具体例においては、上述したモード切換キー2a及び矢印キー2bは、図3に示すように、18×8キーマトリクス4において、第10行の第3列〜第7列に対応している。以下では、このモード切換キー2a及び4つの矢印キー2bを「マウス対応キー」とも呼ぶ。詳しくは、図3の表に示すように、モード切換キー2aは、18×8キーマトリクス4において、第10行第3列に対応し、ノーマルモード時にモード切換キー2aが押下されると、モードがマウスモードに切り換えられ、マウスモード時にモード切換キー2aが押下されると、モードがノーマルモードに切り換えられる。
【0017】
また、18×8キーマトリクス4の、第10行第4列〜第7列には、それぞれ上下左右の矢印キー2bが対応している。矢印キー2bは、ノーマルモード時には、通常の矢印キーとして機能し、マウスモード時には、マウスポインタを上下左右に移動させるマウス制御キーとして機能する。
【0018】
ここで、本発明を適用したUSBキーボード装置1のUSBコントローラ5により実行される処理のメインルーチンについて、図4を用いて説明する。まず、ステップS1において、USBキーボード装置1をコンピュータ7にプラグインする。次に、ステップS2において、電源オンによるリセットの後、I/O、RAM、制御レジスタ等を初期化する。続いて、ステップS3において、USBコントローラ5は、ホストであるコンピュータ7からのUSBバスリセットを待機する。
【0019】
ステップS3において、USBコントローラ5がUSBバスリセットを受信すると、処理はステップS4に進み、USBコントローラ5は、ホストとのハンドシェイクによりバスエニュメレーションを実行する。これにより、デバイスには、ホストとのハンドシェイクのためのUSBデバイスアドレスが割り当てられる。また、ノーマルモード対応キーのコードには、Endpoint 1 FIFOバッファを介して、ホストとのハンドシェイクが割り当てられる。一方、マウスモード対応キーのコードには、Endpoint 2 FIFOバッファを介して、ホストとのハンドシェイクが割り当てられる。
【0020】
次に、ステップS5において、デバイスが構成されたか否かを確認する。ここで、USBデバイスが未だ構成されていない場合は、処理は、ステップS4に戻る。一方、USBデバイスが構成されている場合は、処理は、ステップS6に進む。
【0021】
ステップS6においては、USBコントローラ5は、18×8キーマトリクス4をスキャンする。ステップS7においては、全スキャンが終了しているか否かが確認され、全スキャンが終了していない場合には、ステップS6が繰り返され、全スキャンが終了すると処理は、ステップS8に進む。
【0022】
ステップS8においては、USBコントローラ5は、ファントムキー(Phantom Key)が発生したか否かを検出する。ここで、ファントムキーが検出された場合は、処理はステップS9に進み、ファントムキーが検出されなかった場合は、処理はステップS10に進む。ステップS9においては、USBコントローラ5は、Endpoint 1 FIFOバッファにコード01H(ロールオーバーエラー)を格納し、ステップS5に戻る。一方、ステップS10においては、キーの状態に変化があるか否かが判定され、ここで、キーの状態に変化がない場合は、処理はステップS5に戻る。一方、キー状態に変化がある場合は、ステップS11において、以下に説明する「キー処理変化のサブルーチン」を実行して、ステップS5に戻る。
【0023】
この「キー処理変化のサブルーチン」を図5に示す。ステップS11において、USBコントローラ5は、マウス対応キーであるモード切換キー2a又は矢印キー2bが変化したか否かを判定する。ここで、マウス対応キーの変化が検出されなかった場合、ステップS12において、USBコントローラ5は、ノーマル対応キーのコードをEndpoint 1 FIFOバッファに格納して、このサブルーチンを抜ける。一方、ステップS11において、マウス対応キーの変化が検出された場合、処理は、ステップS13に進む。
【0024】
ステップS13において、USBコントローラ5は、モード切換キー2aが変化したか否かを判定する。ここで、モード切換キー2aの変化が検出されなかった場合、すなわち、モード切換キー2a以外のマウス対応キー(この具体例では、矢印キー2b)の変化が検出された場合、処理はステップS14に進む。ステップS14においては、USBコントローラ5は、モードがマウスモードであるか否かを判定し、マウスモードでない場合は、矢印キー2bの変化をノーマルモード対応の動作とみなし、ステップS12においてノーマル対応キーのコードをEndpoint 1 FIFOバッファに格納して、このサブルーチンを抜ける。一方、マウスモードの場合は、ステップS15において、Endpoint 2 FIFOバッファにマウスモード対応キーのコードを格納した後、このサブルーチンを抜ける。
【0025】
また、ステップS13において、モード切換キー2aの変化が検出された場合、処理はステップS16に進み、USBコントローラ5は、モード切換キー2aの変化がオンであるかオフであるかを判定する。ここで、モード切換キー2aの変化がオンである場合は、処理はステップS17に進み、モード切換キー2aの変化がオフである場合は、USBコントローラ5は、さらなる処理を実行せずにこのサブルーチンを抜ける。
【0026】
ステップS17においては、マウスモードとノーマルモードとをトグル動作にて切り換える。すなわち、マウスモードにおいてモード切換キー2aのオンが検出されると、モードはノーマルモードに切り換えられ、ノーマルモードにおいてモード切換キー2aのオンが検出されると、モードはマウスモードに切り換えられる。
【0027】
次にステップS18において、現在のモードがマウスモードであるか否かが判定される。ここで、現在のモードがマウスモードである場合、処理はステップS19に進み、USBキーボード装置1に設けられたMouse LEDを点灯してこのサブルーチンを抜ける。一方、現在のモードがマウスモードではない場合、処理はステップS20に進み、Mouse LEDを消灯してこのサブルーチンを抜ける。このMouse LEDにより、ユーザは、USBキーボード装置1が現在マウスモードで動作しているか、ノーマルモードで動作しているかを容易に確認することができる。
【0028】
さらに、Endpoint 1の割り込みルーチンについて、図6を用いて説明する。ホストにより割り当てられたUSBデバイスアドレスにてEndpoint 1のINトークンを受信すると、この割り込みルーチンが実行される。ステップS21においては、Endpoint 1 FIFOバッファにデータがあるか否かが判定される。Endpoint 1 FIFOが空ではない場合、すなわち、Endpoint 1 FIFOにデータがある場合、USBコントローラ5は、ステップS22において、ノーマルモード対応キーのコードをコンピュータ7に報告し、このルーチンを抜ける。一方、Endpoint 1 FIFOが空である場合、すなわちEndpoint 1 FIFOにデータがない場合、USBコントローラ5は、ステップS23においてNAKのハンドシェイクをコンピュータ7に返し、このルーチンを抜ける。
【0029】
次に、Endpoint 2の割り込みルーチンについて、図7を用いて説明する。ホストにより割り当てられたUSBデバイスアドレスにてEndpoint 2のINトークンを受信すると、この割り込みルーチンが実行される。ステップS31においては、Endpoint 2 FIFOバッファにデータがあるか否かが判定される。Endpoint 2 FIFOが空ではない場合、すなわち、Endpoint 2 FIFOにデータがある場合、USBコントローラ5は、ステップS32において、マウスモード対応キーのコードをコンピュータ7に報告し、このルーチンを抜ける。一方、Endpoint 2 FIFOが空である場合、すなわちEndpoint 2 FIFOにデータがない場合、USBコントローラ5は、ステップS33においてNAKのハンドシェイクをコンピュータ7に返し、このルーチンを抜ける。
【0030】
このように、上述の具体例によれば、矢印キー2bをノーマルモード及びマウスモードの兼用キーとして使用することにより、外付けマウスやポインティングデバイスを設けることなく、USBキーボード装置1のみで、マウスポインタを制御することができる。
【0031】
ここで、上述の具体例では、ノーマルモードとマウスモードの切換のために専用のモード切換キー2aを設けているが、このようなモード切換キー2aを設けることなく、従来のキーに対する所定の特殊な操作によりモードの切換を行ってもよい。例えば、上矢印キー、下矢印キー、右矢印キーの3つのキーを同時に押下することにより、ノーマルモードとマウスモードとを切り換えるようにしてもよい。或は、所定のキーを複数回、例えばシフトキーを5回連続して押下することにより、ノーマルモードとマウスモードとを切り換えるようにしてもよい。さらに、所定のキーを所定時間以上、例えば、シフトキーを3秒以上連続して押下することによりノーマルモードとマウスモードとを切り換えるようにしてもよい。いずれの場合も、このモード切換操作は、通常のキー操作時には発生しない操作であることが望ましい。
【0032】
また、上述の具体例においては、マウスモードにおけるマウスポインタの制御に矢印キー2bを用いているが、マウスポインタの制御には例えばテンキー等、他のキーを割り当ててもよいことは勿論である。さらに、上下左右の4方向のみではなく、斜め方向の移動に対応するキーを割り当てることもできる。また、マウス対応キーを連続して押下し続けることにより、マウスポインタの移動速度を変化させてもよい。
【0033】
【発明の効果】
以上のように、本発明に係るUSBキーボード装置は、ノーマルモードとマウスモードの2つの動作モードを有し、キーパッドには、ノーマルモードにおいては通常のキーとして使用され、マウスモードにおいてはマウスポインタを制御するマウス対応キーとして使用される1組の兼用キーが設けられ、制御部は、所定の操作に基づいて、ノーマルモードとマウスモードとを切り換え、ノーマルモードにおいては、キーパッド上のキーに対する操作に基づいて通常のキー入力に対応するUSB制御信号を生成し、マウスモードにおいては、兼用キーに対する操作に基づいてマウスポインタを制御するUSB制御信号を生成するので、部品点数を増加させて製造コストを高めることなく、キーパッドに対する操作のみでマウスポインタを制御することができ、また、接続されるコンピュータに負荷をかけることがなく且つ単一のケーブル接続のみでマウスポインタを制御することができる。更に、スクロール機能、クリック釦等のマウス対応キーを他のキーに追加して割り当てる事もできる。
【0034】
また、本発明に係るUSB制御信号生成方法は、キーパッド上の所定のキーに対する所定の操作に基づいて、ノーマルモードとマウスモードとを切り換え、ノーマルモードにおいては、キーパッド上のキーに対する操作に基づいて、通常のキー入力に対応するUSB制御信号を生成し、マウスモードにおいて、キーパッド上の所定のキーの組に対する操作に基づいて、マウスポインタを制御するUSB制御信号を生成するので、部品点数を増加させて製造コストを高めることなく、キーパッドに対する操作のみでマウスポインタを制御することができ、また、接続されるコンピュータに負荷をかけることがなく且つ単一のケーブル接続のみでマウスポインタを制御することができる。
【図面の簡単な説明】
【図1】本発明を適用したUSBキーボード装置の外観を示す平面図である。
【図2】図1に示すUSBキーボード装置の内部構成を示すブロック図である。
【図3】図1に示すUSBキーボード装置のマウス対応キーを説明する図である。
【図4】図2に示すUSBコントローラが実行するメインルーチンを説明するフローチャートである。
【図5】キー処理変化のサブルーチンを説明するフローチャートである。
【図6】Endpoint1の割り込みルーチンを説明するフローチャートである。
【図7】Endpoint2の割り込みルーチンを説明するフローチャートである。
【符号の説明】
1 USBキーボード装置
2 キー
2a モード切換キー
2b 矢印キー
3 キーパッド
4 18×8キーマトリクス
5 USBコントローラ
6 USB接続ケーブル
7 コンピュータ
Claims (6)
- ユーザにより操作される複数のキーが設けられたキーパッドと、上記キーパッドに対する操作に基づきUSB規格に準拠するUSB制御信号を生成するUSB制御部と、上記USB制御部により生成されたUSB制御信号をコンピュータに供給するためのUSB制御信号出力端子とを備えるUSBキーボード装置において、
当該キーボード装置は、ノーマルモードとマウスモードの2つの動作モードを有し、
上記キーパッドは、上記ノーマルモードにおいては通常のキーとして使用され、上記マウスモードにおいてはマウスポインタを制御するマウス対応キーとして使用される1組の兼用キーを有し、
上記制御部は、上記キーパッド上のキーに対する所定の操作に基づいて、上記ノーマルモードと上記マウスモードとを切り換え、上記ノーマルモードにおいては、上記キーパッド上のキーに対する操作に基づいて通常のキー入力に対応するUSB制御信号を生成し、上記マウスモードにおいては、上記兼用キーに対する操作に基づいてマウスポインタを制御するUSB制御信号を生成することを特徴とするUSBキーボード装置。 - 上記キーパッドは、上記ノーマルモードとマウスモードを切り換えるための専用の切換キーを備えることを特徴とする請求項1記載のUSBキーボード装置。
- 上記ノーマルモードとマウスモードの切換は、上記キーパッド上の所定の複数のキーを同時に押下することにより行われることを特徴とする請求項1記載のUSBキーボード装置。
- 上記ノーマルモードとマウスモードの切換は、上記キーパッド上の所定のキーを複数回連続して押下することにより行われることを特徴とする請求項1記載のUSBキーボード装置。
- 上記ノーマルモードとマウスモードの切換は、上記キーパッド上の所定のキーを所定時間以上押下し続けることにより行われることを特徴とする請求項1記載のUSBキーボード装置。
- ユーザにより操作される複数のキーが設けられたキーパッドを備えるUSBキーボード装置内でUSB制御信号を生成するUSB制御信号生成方法において、
上記キーパッド上の所定のキーに対する所定の操作に基づいて、ノーマルモードとマウスモードとを切り換えるステップと、
上記ノーマルモードにおいて、上記キーパッド上のキーに対する操作に基づいて、通常のキー入力に対応するUSB制御信号を生成するステップと、
上記マウスモードにおいて、上記キーパッド上の所定のキーの組に対する操作に基づいて、マウスポインタを制御するUSB制御信号を生成するステップと
を有することを特徴とするUSB制御信号生成方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002284914A JP2004118778A (ja) | 2002-09-30 | 2002-09-30 | Usbキーボード装置及びusb制御信号生成方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002284914A JP2004118778A (ja) | 2002-09-30 | 2002-09-30 | Usbキーボード装置及びusb制御信号生成方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004118778A true JP2004118778A (ja) | 2004-04-15 |
Family
ID=32278343
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002284914A Withdrawn JP2004118778A (ja) | 2002-09-30 | 2002-09-30 | Usbキーボード装置及びusb制御信号生成方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004118778A (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009099079A (ja) * | 2007-10-19 | 2009-05-07 | Ty Kikaku:Kk | データ入力方法及び機器 |
JP2010514020A (ja) * | 2006-12-19 | 2010-04-30 | 邱 波 | ヒューマンインタラクション装置、電子装置及びヒューマンインタラクション方法 |
JP2016045461A (ja) * | 2014-08-26 | 2016-04-04 | リコーイメージング株式会社 | 撮影装置 |
JP2016091282A (ja) * | 2014-11-04 | 2016-05-23 | 富士通株式会社 | 電子機器および操作形態切替プログラム |
-
2002
- 2002-09-30 JP JP2002284914A patent/JP2004118778A/ja not_active Withdrawn
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010514020A (ja) * | 2006-12-19 | 2010-04-30 | 邱 波 | ヒューマンインタラクション装置、電子装置及びヒューマンインタラクション方法 |
JP2009099079A (ja) * | 2007-10-19 | 2009-05-07 | Ty Kikaku:Kk | データ入力方法及び機器 |
JP2016045461A (ja) * | 2014-08-26 | 2016-04-04 | リコーイメージング株式会社 | 撮影装置 |
JP2016091282A (ja) * | 2014-11-04 | 2016-05-23 | 富士通株式会社 | 電子機器および操作形態切替プログラム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4789232B2 (ja) | 情報処理装置及び入力操作モード制御方法 | |
JP3091500U (ja) | キーボードとディスプレイとマウスを共用できる切り換え装置 | |
US7532200B2 (en) | Apparatus for setting multi-stage displacement resolution of a mouse | |
JP2000242377A (ja) | ディスプレイ装置 | |
EP0860771B1 (en) | An apparatus for selectively operating a plurality of computers with a single set of data input device and monitor | |
JP2004118778A (ja) | Usbキーボード装置及びusb制御信号生成方法 | |
JPH06324805A (ja) | タブレット付き電子機器 | |
JP4771181B2 (ja) | 情報処理装置、入力操作モード制御方法及び情報処理装置に用いるプログラム | |
US8179290B2 (en) | Electronic apparatus and key operation control method | |
JPH0793094A (ja) | 座標入力装置 | |
JPH11272360A (ja) | 携帯用電子機器 | |
JPH096534A (ja) | コンピュータ・システムおよび入力装置 | |
JP2004252730A (ja) | コントローラ | |
JP2001034413A (ja) | ペン入力システム及びペン入力方法 | |
TWI828559B (zh) | 觸控系統及觸控方法 | |
JP2003177858A (ja) | 外部入力装置 | |
KR20010078954A (ko) | 컴퓨터 주변기기 공유 장치 | |
KR100953967B1 (ko) | 노트북컴퓨터의 엔코더 스위치의 제어장치 및 방법 | |
JPS63317817A (ja) | キ−ボ−ド制御方式 | |
JPS6158024A (ja) | コンピユ−タシステム | |
JP2001159943A (ja) | データ入力装置 | |
KR20010019498A (ko) | 소형 단말기에서 터치 패드형 입력 시스템 | |
KR20060030303A (ko) | 노트북컴퓨터에서 키보드를 이용한 마우스 기능 버튼구현방법 | |
JP2004206180A (ja) | テンキーパッド | |
JPS63208922A (ja) | キ−入力装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20041216 |
|
A761 | Written withdrawal of application |
Free format text: JAPANESE INTERMEDIATE CODE: A761 Effective date: 20060529 |