JP2007257103A - Input device and method using keyboard - Google Patents
Input device and method using keyboard Download PDFInfo
- Publication number
- JP2007257103A JP2007257103A JP2006078072A JP2006078072A JP2007257103A JP 2007257103 A JP2007257103 A JP 2007257103A JP 2006078072 A JP2006078072 A JP 2006078072A JP 2006078072 A JP2006078072 A JP 2006078072A JP 2007257103 A JP2007257103 A JP 2007257103A
- Authority
- JP
- Japan
- Prior art keywords
- key
- data
- code
- pressed
- keyboard
- 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.)
- Granted
Links
Images
Abstract
Description
本発明はキーボードを用いた入力装置及び入力方法に関し、特に継続してキーを押し続ける間は定周期で任意の処理を実行させる動作(以下、アナログ操作と呼ぶ)の動作応答を向上させた入力装置及び入力方法に関する。 The present invention relates to an input device and an input method using a keyboard, and in particular, an input that improves an operation response of an operation (hereinafter referred to as an analog operation) that executes an arbitrary process at a fixed period while a key is continuously pressed. The present invention relates to an apparatus and an input method.
プラント監視制御システムなどの分散制御システム(DCS:distributed control system)では、オペレータが監視及び操作を行うためのHMI(human machine interface)手段として、専用キーボードが使用される。このようなシステムに用いられる専用キーボードは、ノイズ等によるキー入力データの変化が事故の発生につながることもあるため、送受信間でのデータに高い信頼性が要求される。 In a distributed control system (DCS) such as a plant monitoring control system, a dedicated keyboard is used as an HMI (human machine interface) means for an operator to perform monitoring and operation. In a dedicated keyboard used in such a system, a change in key input data due to noise or the like may lead to an accident, and thus high reliability is required for data between transmission and reception.
近年、DCSにおいてはパソコンを用いてシステムを構築することが多く、上記専用キーボードのインターフェースとしてPS/2インターフェースが使用されるようになってきた。しかし、PS/2インターフェースは、通信伝文中に巡回冗長検査やチェックサム等の伝送データを保障するためのデータを有していないので、特に、専用キーボードがパソコン本体から離れた位置に設置されて、それら相互を接続するケーブルが長くなるときは、パソコン本体において信頼性の高いキーコードを得られなくなるおそれがある。 In recent years, in DCS, a system is often constructed using a personal computer, and a PS / 2 interface has been used as an interface for the dedicated keyboard. However, the PS / 2 interface does not have data for guaranteeing transmission data such as cyclic redundancy check and checksum in the communication message, so the special keyboard is installed at a position away from the PC main body. When the cables connecting them become long, there is a possibility that a highly reliable key code cannot be obtained in the personal computer body.
そこで、キーの押圧時にキーコードをコンピュータに伝送するとともに、キーの押圧解除時にキーコードに関する認証データをコンピュータに伝送し、コンピュータ側でこのキーコードのデータと認証データとを照合するという技術が提案されている(例えば、特許文献1参照)。この技術によれば、例えば、ノイズによりキーコードが変化したときに、そのキー入力データの誤りをコンピュータ側で判定することが可能になる。
上記従来の技術方法では、キーの押圧解除時点がキーコードの入力時点になるので、オペレータがキー操作時に違和感やストレスを感じることがある。また、アナログ操作中であるかどうかの判定処理に対応できない。 In the above-described conventional technical method, since the key press release time is the key code input time, the operator may feel discomfort or stress when operating the keys. Further, it cannot cope with the determination process of whether or not an analog operation is being performed.
本発明は、上記問題点を鑑み、キーコードの伝送品質を確保しつつ、アナログ操作を可能にしたキーボードを用いた入力装置及び入力方法を提供することを課題とする。 In view of the above problems, an object of the present invention is to provide an input device and an input method using a keyboard that enables analog operation while ensuring transmission quality of a key code.
上記の課題を解決する手段として、本発明は以下のように構成する。 As means for solving the above problems, the present invention is configured as follows.
第1に、キーボードに設け、該キーボードの任意のキーが押されたときは、その押されたキーを特定するキーコードを含む第1のデータと該キーコードに識別コードを付加した第2のデータとを作成して送信する第1のキーコード作成手段と、押されているキーが離されたときは、その離されたキーを特定するキーコードを含む第3のデータと該キーコードに識別コードを付加した第4のデータとを作成して送信する第2のキーコード作成手段と、任意のキーが押され続けている間は、前記第1のデータ及び前記第2のデータを周期的に作成して送信する第3のキーコード作成手段と、前記第1及び前記第2のデータ、或いは前記第3及び前記第4のデータを受信し、それらのデータに含まれる前記キーコードを相互に照合して該キーコードの適否を判定する第1の判定手段と、を機能させるように構成する。 First, when an arbitrary key on the keyboard is pressed, first data including a key code for specifying the pressed key and a second code in which an identification code is added to the key code are provided. First key code generating means for generating and transmitting data, and when the pressed key is released, the third data including the key code for specifying the released key and the key code Second key code creating means for creating and transmitting the fourth data to which the identification code is added, and the first data and the second data are cycled while an arbitrary key is kept pressed. And a third key code creating means for creating and transmitting the first and second data, or the third and fourth data, and receiving the key code included in the data. The key code is checked against each other A first judging means for judging appropriateness, configured to cause the function.
第2に、キーボードに設け、該キーボードのいずれのキーにおいても、押したときから離すまで、或いは押したときから次のキーが押されるまでは、その押したキーを特定するキーコードを含む第5のデータと該キーコードに識別コードを付加した第6のデータとを周期的に作成して送信する第4のキーコード作成手段と、押したキーが離されたときは、その離されたキーを特定するキーコードを含む第7のデータと該キーコードに識別コードを付加した第8のデータとを作成して送信する第5のキーコード作成手段と、該キーボードの1つ或いは複数のキーが押され続ける間は、キーが押されていることを特定するキーコードを含む第9のデータと該キーコードに識別コードを付加した第10のデータとを周期的に作成して送信する第6のキーコード作成手段と、前記1つ或いは複数のキーが全て離されたときはキーが離されたことを特定するキーコードを含む第11のデータと該キーコードに識別コードを付加した第12のデータとを作成して送信するする第7のキーコード作成手段と、前記第5及び前記第6のデータ、或いは前記第7及び前記第8のデータ、或いは前記第9及び前記第10のデータ、或いは前記第11及び前記第12のデータを受信し、それらのデータに含まれる前記キーコードを相互に照合して前記キーコードの適否を判定する第2の判定手段と、前記第5及び前記第6のデータ、或いは前記第7及び前記第8のデータ、或いは前記第9及び前記第10のデータ、或いは前記第11及び前記第12のデータを受信し、それらのデータを受信した時系列に従いキーコードに戻すことにより、いずれのキーが押され続けているか/いないかを判断する判断手段と、を機能させるように構成する。 Second, a keyboard is provided, and any key of the keyboard includes a key code that identifies the pressed key from when it is pressed until it is released, or from when it is pressed until the next key is pressed. The fourth key code creating means for periodically creating and transmitting the data No. 5 and the sixth data obtained by adding the identification code to the key code; and when the pressed key is released, the released key Fifth key code creating means for creating and transmitting seventh data including a key code for specifying a key and eighth data obtained by adding an identification code to the key code; and one or more of the keyboard While the key is continuously pressed, ninth data including a key code for specifying that the key is pressed and tenth data obtained by adding an identification code to the key code are periodically generated and transmitted. 6th -Eleventh data including a key code for specifying that a key has been released when the one or more keys are released, and a twelfth data having an identification code added to the key code. And a seventh key code generating means for generating and transmitting the data, and the fifth and sixth data, the seventh and eighth data, the ninth and tenth data, or Second determination means for receiving the eleventh and twelfth data and comparing the key codes included in the data with each other to determine the suitability of the key code; and the fifth and sixth Data, or the seventh and eighth data, the ninth and tenth data, or the eleventh and twelfth data, and according to the time series received. By returning the key code is configured to a determination unit configured to determine either whether the key is not whether / have continues to be pressed, the function.
第3に、上記の第1、第2に加えて、前記キーボードの特殊キー、或いは非特殊キー、或いは特殊キー及び非特殊キーの組合せを、前記キーボード上に専用キーとして設けた専用キーにキーコードを割り付ける手段と、割り付けられた該専用キーが押されている間は、その他のキーの入力を無視する受信手段と、を機能させるように構成する。 Third, in addition to the first and second described above, a special key of the keyboard, a non-special key, or a combination of a special key and a non-special key is assigned to a special key provided as a dedicated key on the keyboard. The means for assigning the code and the receiving means for ignoring the input of the other keys are operated while the assigned dedicated key is being pressed.
第4に、キーボードの任意のキーが押されたときに、その押されたキーを特定するキーコードを含む第1のデータと該キーコードに識別コードを付加した第2のデータとを作成して送信し、押されているキーが離されたときは、その離されたキーを特定するキーコードを含む第3のデータと該キーコードに識別コードを付加した第4のデータとを作成して送信し、任意のキーが押され続けている間は、前記第1のデータ及び前記第2のデータを周期的に作成して送信し、送信された前記第1及び前記第2のデータ、或いは前記第3及び前記第4のデータを受信し、それらのデータに含まれる前記キーコードを相互に照合して該キーコードの適否を判定する。 Fourth, when an arbitrary key on the keyboard is pressed, first data including a key code for specifying the pressed key and second data in which an identification code is added to the key code are generated. When the pressed key is released, third data including a key code for specifying the released key and fourth data in which an identification code is added to the key code are generated. The first data and the second data are periodically generated and transmitted while an arbitrary key is continuously pressed, and the transmitted first and second data are transmitted, Alternatively, the third and fourth data are received, and the key codes included in the data are compared with each other to determine whether the key code is appropriate.
第5に、キーボードの任意のキーが押されたときに、その押されたキーを特定するキーコードを含む第5のデータと該キーコードに識別コードを付加した第6のデータとを作成して送信し、押され続けている間は、前記第5及び前記第6のデータを周期的に作成して送信し、該キーボードの他のキーが押されたとき、或いは押しているキーが離されたときはその離されたキーを特定するキーコードを含む第7のデータと該キーコードに識別コードを付加した第8のデータとを作成して送信し、前記任意のキー或いは前記他のキーが押され続ける間は、キーが押されていることを特定するキーコードを含む第9のデータと該キーコードに識別コードを付加した第10のデータとを周期的に作成して送信し、キーが全て離されたときはキーが離されたことを特定するキーコードを含む第11のデータと該キーコードに識別コードを付加した第12のデータとを作成して送信し、前記第5及び前記第6のデータ、或いは前記第7及び前記第8のデータ、或いは前記第9及び前記第10のデータ、或いは前記第11及び前記第12のデータを受信し、それらのデータに含まれる前記キーコードを相互に照合して前記キーコードの適否を判定し、判定結果に基づいて受信したデータを、時系列に従いキーコードに戻すことにより、いずれのキーが押され続けているか/いないかを判断する。 Fifth, when an arbitrary key on the keyboard is pressed, fifth data including a key code specifying the pressed key and sixth data in which an identification code is added to the key code are created. The fifth and sixth data are periodically generated and transmitted while the key is being pressed, and when another key of the keyboard is pressed or the key being pressed is released. When the key is released, the seventh data including the key code for specifying the released key and the eighth data with the identification code added to the key code are generated and transmitted, and the arbitrary key or the other key is transmitted. While the key is continuously pressed, the ninth data including the key code specifying that the key is pressed and the tenth data obtained by adding the identification code to the key code are periodically generated and transmitted. When all keys are released, the keys are released. The eleventh data including the key code for specifying the above and the twelfth data with the identification code added to the key code are generated and transmitted, and the fifth and sixth data, or the seventh and The eighth data, the ninth and tenth data, or the eleventh and twelfth data are received, the key codes included in the data are collated, and the key code It is determined whether or not the key is kept pressed by determining the suitability and returning the data received based on the determination result to the key code in time series.
第6に、上記の第4、第5に加えて、前記キーボードの特殊キー、或いは非特殊キー、或いは特殊キー及び非特殊キーの組合せを、前記キーボード上に専用キーとして設けた専用キーにキーコードを割り付け、割り付けられた該専用キーが押されている間は、その他のキーの入力を無視する。 Sixth, in addition to the above fourth and fifth, a special key of the keyboard, a non-special key, or a combination of a special key and a non-special key is assigned to a special key provided as a dedicated key on the keyboard. A code is assigned, and input of other keys is ignored while the assigned dedicated key is being pressed.
本発明によれば、キーの押圧操作と同時に、キー入力データの適否を判定することができるので、キーデータの入力遅れに伴う違和感やストレスを受けることがない。また、キーの押圧時、押圧中、押圧解除の各時点でキー入力データの適否を判定するので信頼性が高くなる。加えて、アナログ操作中は、周期的にキー入力データを送信するのでアナログ操作中かどうかが判別可能になる。 According to the present invention, it is possible to determine whether or not the key input data is appropriate at the same time as the key pressing operation. Therefore, there is no sense of incongruity or stress associated with a delay in key data input. In addition, the reliability of the key input data is increased because the suitability of the key input data is determined at each time point when the key is pressed, during pressing, or when the key is released. In addition, during the analog operation, key input data is periodically transmitted, so that it is possible to determine whether the analog operation is in progress.
更に、複数のキーにおいてアナログ操作中のときは、全てのアナログ操作中のキー入力データを周期的に送信するのではなく、必要なキー入力データのみを送信することにしたので、システムの負荷量も少なくて済む。また、アナログ操作中は、通常のキー操作を受けつけなくし、誤った操作を回避している。 Furthermore, when analog operation is being performed for a plurality of keys, the key input data during all analog operations is not transmitted periodically, but only necessary key input data is transmitted. Less. In addition, during analog operation, normal key operations are not accepted and erroneous operations are avoided.
図3は、本発明における入力装置に適用されたHMI、つまり、監視対象設備とオペレータとの間におけるインターフェース装置を示している。 FIG. 3 shows an HMI applied to the input device according to the present invention, that is, an interface device between a monitored facility and an operator.
このHMI30は、監視用モニタ32、専用キーボード34、HMI本体としてのコンピュータ36、専用キーボード34とコンピュータ36とを接続するPS/2インターフェースケーブル38、および制御用LAN40を備えている。監視用モニタ32では、専用キーボード34で入力したデータや制御LAN40を経由して収集した監視対象機器の動作状態を示すデータ等が表示される。
The HMI 30 includes a
図4は、本発明における入力装置が有するキーコードの発生機構の一例を示している。任意のキー42では、押されたり離されたりすると、該キー42に付設された図示していないスイッチがそれぞれオン/オフされることにより信号を送信し、この信号に応じて、キーコード発生器44よりキーコードを含むデータを生成する。
FIG. 4 shows an example of a key code generation mechanism of the input device according to the present invention. When an
図5は、本発明における入力装置におけるキーの名称とキーコードの割り付けの一例を示している。また、図6は、キーコードと本発明で作成するデータの関係の一例を示している。ここでは、一定時間キーを押し続けることにより計器の値を上昇させる事を目的としたUP-1、UP-2、UP-3、UP-4、…の専用キー群、同じく計器の値を降下させる事を目的としたDOWN-1、DOWN-2、DOWN-3、DOWN-4、…の専用キー群を設ける。専用キーボード34上において、例えば、これらの専用キーを上下に組として設置することにより、オペレータにアナログ操作を意識させることができる。これらの専用キーには、既存のキーコードを割り付ける。ここで言うキーコードとは、通常はキーボード上の全てのキーに割り当てられており、“Shift”、“Ctrl”、“Alt”等の他のキーとの組み合わせての使用を主とする特殊キーのキーコードと、その他の非特殊キー(例えば、英数字キーやファンクションキーF1〜F12)のキーコードからなる。図5の割り付け例では、例えば、専用キーUP-1には、押したときのキーコードとして特殊キー“Ctrl”と非特殊キー“1”を、離したときのキーコードとして特殊キー“Ctrl”と非特殊キー“Q”を割り付けている。なお、ここではアナログ操作用として専用キーを用意したが、従来のキーボードの任意のキーをアナログ操作に用いても構わない。
FIG. 5 shows an example of assignment of key names and key codes in the input device according to the present invention. FIG. 6 shows an example of the relationship between the key code and the data created by the present invention. Here, dedicated keys for UP-1, UP-2, UP-3, UP-4, etc. for the purpose of increasing the value of the instrument by holding down the key for a certain period of time, also decreasing the value of the instrument A dedicated key group of DOWN-1, DOWN-2, DOWN-3, DOWN-4, etc. is provided for the purpose. On the
ところでキーボードのインターフェースにおいては、キーボードの信号を送受信するコードセットとして、コードセット“Scan Code Set 1”、“Scan Code Set 2”、“Scan Code Set 3”の3種類がある。ここでは、PC/AT互換機において一般的に使用されている“Scan Code Set 2”を使用する。“Scan Code Set 2”では、第1のデータに1バイトのときは、第2のデータに2バイトを使用する。具体的には、例えば、オペレータがキー42として“1”を押したときは、図6(a)に示すように、1バイトのキーコード16が第1のデータとして作成され、さらに、このキーコード16に1バイトの識別コードF0を付加した2バイトのキーコードF0・16が第2のデータとして作成される。図6(b)、(c)は特殊キー及び非特殊キーが組み合わされたときの一例になる。“Ctrl”と“1”を押したときは、キーコード14とキーコード16が第1のデータとして作成され、それぞれに識別コードF0を付加したキーコードF0・14とキーコードF0・16が第2のデータとして作成される。そこで、第1のデータに2バイト、第2のデータに4バイトを使用する。以降、図6(d)、(e)、(f)、(g)も同様にしてデータを作成する。ここで、第1のデータ14・16に対して、第2のデータF0・16・F0・14では、キーコード14、16の順が入れ替わっているが、後述の判定手順におけるフローにおける処理量を軽減させることを配慮してのことだが、正順でも構わなく、これは発明を限定するものでは無い。
By the way, in the keyboard interface, there are three types of code sets “
本発明の実施例1を、機能で大別すると、キーコードの作成・送信部と受信部に分かれる。ここでは一例として、任意の専用キーをアナログ操作した場合について説明する。
(1)始めにキーコードの作成・送信部を説明する。
The first embodiment of the present invention can be roughly divided into a key code creation / transmission unit and a reception unit. Here, as an example, a case where an analog operation of an arbitrary dedicated key is described.
(1) First, the key code creation / transmission unit will be described.
図2は、専用キーのアナログ操作とキーコードに対応したデータの発生タイミングの関係の一例を説明した図である。ここでは、時刻T1において専用キーUP-1を押し、時刻T2に離している。専用キーUP-1には、押したときのキーコードとして“Ctrl”と“1”、離したときのキーコードとして“Ctrl”と“Q”が割り付けられている(図5参照)。 FIG. 2 is a diagram for explaining an example of the relationship between the analog operation of the dedicated key and the generation timing of data corresponding to the key code. Here, the dedicated key UP-1 is pressed at time T1 and released at time T2. The dedicated key UP-1 is assigned “Ctrl” and “1” as key codes when pressed, and “Ctrl” and “Q” as key codes when released (see FIG. 5).
専用キーUP-1が押された後に、キーコード発生器44は、専用キーUP-1に割り付けられたキーを押したときのキーコードを含むデータを作成し送信する。ここで、押したときのキーコードである“Ctrl”と“1”を特定することのできるデータは14・16とし、識別コードを付加したデータはF0・16・F0・14とする(図6(b)参照)。これらのデータは、公用技術のMAKE/BREAKを拡張したものであり、組で送信するものなので、以後、14・16/F0・16・F0・14と記述する。
After the dedicated key UP-1 is pressed, the
図2の塗りつぶしの上矢印は、上記データが送信されるタイミングを示している。これらのデータは時刻T2でキーが離されるまで周期的に送信される。この周期は任意に設定が可能であり、例えば、1msecで等間隔にして良いし、10msec・100msec・10msec・・・のような一定のルールに従い設定しても良い。時刻T2でキーが離された後に、キーコード発生器44は、専用UP-1に割り付けられたキーを離したときのキーコードを含むデータを作成し送信する。ここで、離したときのキーコードである“Ctrl”と“Q”を特定することのできるデータは14・15とし、識別コードを付加したデータはF0・15・F0・14とする(図6(c)参照)。
The solid up arrow in FIG. 2 indicates the timing at which the data is transmitted. These data are transmitted periodically until the key is released at time T2. This period can be arbitrarily set. For example, it may be set at an equal interval of 1 msec, or may be set according to a certain rule such as 10 msec, 100 msec, 10 msec,. After the key is released at time T2, the
以上のステップにより、コードはデータとして送信される。
(2)次にキーコードの受信部を説明する。
Through the above steps, the code is transmitted as data.
(2) Next, a key code receiving unit will be described.
前述の作成・送信部から、14・16/F0・16・F0・14、或いは14・15/F0・15・F0・14が送信されてくるので、受信部ではこれらのデータからキーコードを抽出する。 Since 14 · 16 / F0 · 16 · F0 · 14 or 14 · 15 / F0 · 15 · F0 · 14 is sent from the above-mentioned creating / transmitting unit, the receiving unit extracts the key code from these data. To do.
図7は、受信部におけるキーコードを抽出するフローを説明した図である。また図9は、記憶領域内の記憶データを説明した図である。図9のShiftフラグ、Ctrlフラグ、Altフラグは、それぞれ“Shift”、“Ctrl”、“Alt”キーが押されているか否かを判別する情報が入力されるものであり、一方で、キーコード記憶領域には、キーコードの値が入力される。初期化したときには、例えば0が代入される。 FIG. 7 is a diagram illustrating a flow for extracting a key code in the receiving unit. FIG. 9 is a diagram for explaining the storage data in the storage area. The Shift flag, Ctrl flag, and Alt flag in FIG. 9 are used to input information for determining whether the “Shift”, “Ctrl”, and “Alt” keys are pressed, respectively. A key code value is input to the storage area. For example, 0 is substituted when initialized.
ところで、図3に示すケーブル38等で伝送路上の送信中にデータの変化がないときは、前述の14・16/F0・16・F0・14、或いは14・15/F0・15・F0・14を受け取る。両者のフローは同じになるので、ここでは14・16/F0・16・F0・14が送られてきたときの処理を説明する。
By the way, when there is no change in data during transmission on the transmission line with the
まず初期動作として、コンピュータ36に設けられた、図9に示す記憶領域60を初期化し(ステップ502)、その後、最初の1バイトのコードを受けとるとともに、その受けとったコードが識別コードであるか否かを判断する(ステップ504、506)。最初の1バイトのコードは、14である。ここで14は識別コードではないので、ステップ506の判断結果がNOになる。そこで、次に14が特殊キー(Shift、Ctrl、Alt等)に係るものであるか否かを判断する(ステップ518)。14は、特殊キーに係るものではないため、ステップ518の判断結果はNOである。そこで、当該キーコード14が記憶領域60のキーコード記憶領域に記憶される(ステップ522)。ステップ522の処理が終了すると、次のコードがあるか否かを判定する(ステップ512)。ここでは16が続くのでステップ512の判断結果はYESであり、処理を続ける。
First, as an initial operation, the
手順が前記ステップ504に戻されて、次の1バイトのコードを受けとるとともに、その受けとったコードが識別コードであるか否かを判断する(ステップ504、506)。次の1バイトのコードは、16である。ここで16は識別コードではないので、ステップ506の判断結果がNOになる。そこで、次に16が特殊キー(Shift、Ctrl、Alt等)に係るものであるか否かを判断する(ステップ518)。キーコード16は、特殊キーに係るものなので、ステップ518の判断結果はYESである。そこで、記憶領域60において、キーコード16は“Ctrl”なので、Ctrlフラグを1にする(ステップ520)。ステップ520の処理が終了すると、次のコードがあるか否かを判定する(ステップ512)。ここではF0が続くのでステップ512の判断結果はYESであり、処理を続ける。
The procedure is returned to step 504 to receive the next 1-byte code and determine whether the received code is an identification code (
手順が前記ステップ504に戻されて、次の1バイトのコードを受けとるとともに、その受けとったコードが識別コードであるか否かを判断する(ステップ504、506)。次の1バイトのコードは、F0である。ここでF0は識別コードなので、ステップ506の判断結果がYESになる。そこで、さらに次の1バイトのキーコードを受けとる(ステップ508)。受けとった1バイトのコードは、16である。そこで、次に16が特殊キー(Shift、Ctrl、Alt等)に係るものであるか否かを判断する(ステップ510)。ここで16は特殊キーに係るものではないため、ステップ510の判断結果がNOになる。そこで、受けとったキーコード16が前記ステップ522で記憶領域60のキーコード記憶領域に記憶されたキーコードと同一か否かを判断する(ステップ514)。記憶領域に記憶されたキーコードは16、受けとったキーコードも16で同一なので、ステップ514の判断結果はYESになる。そこで、16をキーコードとして受信する。また、記憶領域60の各フラグにおいて、その値が1のフラグの特殊キーは押されていると判断する(ステップ516)。
The procedure is returned to step 504 to receive the next 1-byte code and determine whether the received code is an identification code (
以上のステップにより、データは照合され、受信側でも“Ctrl”と“1”が特定される。
(3)キーコードの受信部の他の一例を説明する。
Through the above steps, the data is collated, and “Ctrl” and “1” are specified on the receiving side.
(3) Another example of the key code receiving unit will be described.
図8は、受信部におけるキーコードを抽出するフローを説明した図である。図7との相違点は、特殊キーを全て受信するまで処理を継続することにより、信頼性を向上させている点にある。この図8のフローチャートにおいて、ステップ702〜710は、図7のステップ502〜510にそれぞれ対応し、ステップ730と732は、図7のステップ518と522にそれぞれ対応、ステップ720と726は、図7のステップ514と516にそれぞれ対応している。また図10は、記憶領域内の記憶データを説明した図であり、図9にキーフラグを追加している。キーフラグでは、非特殊キーが押されているかを判別する情報が入力されるものであり、初期化したときには、例えば0が代入される。
FIG. 8 is a diagram illustrating a flow for extracting a key code in the receiving unit. The difference from FIG. 7 is that the reliability is improved by continuing the processing until all the special keys are received. In the flowchart of FIG. 8,
ここでは14・16/F0・16・F0・14が送られてきたときの処理を説明する。 Here, the processing when 14.16 / F0.16.F0.14 is sent will be described.
まず初期動作として、コンピュータ36に設けられた、図10に示す記憶領域80を初期化し(ステップ702)、そののち、最初の1バイトのコードを受けとるとともに、その受けとったコードが識別コードであるか否かを判断する(ステップ704、706)。最初の1バイトのコードは、14である。ここで14は識別コードではないので、ステップ706の判断結果がNOになる。そこで、記憶領域80において、該当するフラグであるキーフラグを1にする(ステップ728)。次に14が特殊キー(Shift、Ctrl、Alt等)に係るものであるか否を判断する(ステップ730)。キーコード14は、特殊キーに係るものではないため、ステップ730の判断結果はNOである。そこで、当該キーコード14が記憶領域80のキーコード記憶領域に記憶される(ステップ732)。ステップ732の処理が終了すると、次のコードがあるか否かを判定する(ステップ734)。ここでは16が続くのでステップ734の判断結果はYESであり、処理を続ける。
First, as an initial operation, the
手順が前記ステップ704に戻されて、次の1バイトのコードを受けとるとともに、その受けとったコードが識別コードであるか否かを判断する(ステップ704、706)。次の1バイトのコードは、16である。ここで16は識別コードではないので、ステップ706の判断結果がNOになる。そこで、記憶領域80において、該当するフラグであるCtrlフラグを1にする(ステップ728)。次に16が特殊キー(Shift、Ctrl、Alt等)に係るものであるか否かを判断する(ステップ730)。キーコード16は、特殊キーに係るものなので、ステップ730の判断結果はYESである。そこで、次のコードがあるか否かを判定する(ステップ734)。ここではF0が続くのでステップ734の判断結果はYESであり、処理を続ける。
The procedure is returned to step 704 to receive the next 1-byte code and determine whether the received code is an identification code (
手順が前記ステップ704に戻されて、次の1バイトのコードを受けとるとともに、その受けとったコードが識別コードであるか否かを判断する(ステップ704、706)。次の1バイトのコードは、F0である。ここでF0は識別コードなので、ステップ706の判断結果がYESになる。そこで、さらに次の1バイトのキーコードを受けとる(ステップ708)。受けとった1バイトのコードが特殊キー(Shift、Ctrl、Alt等)に係るものであるか否かを判断する(ステップ710)。受けとったキーコード16は特殊キー係るものではないので、ステップ710の判断結果がNOになる。そこで、受けとった16が前記ステップ732で記憶領域80のキーコード記憶領域に記憶されたキーコードと同一か否かを判断する(ステップ720)。記憶領域に記憶されたキーコードは16、受けとったキーコードも16で同一なので、ステップ720の判断結果はYESになる。そこで、記憶領域80において、該当するフラグであるキーフラグを2にする(ステップ722)。次に全ての特殊キーのフラグが0か否かを判断する(ステップ724)。ここで、記憶領域80のキーコード記憶領域に記憶された全ての特殊キーのフラグが0ではないので、ステップ724の判断結果がNOになる。そこで、次のコードがあるか否かを判定する(ステップ734)。ここではF0が続くのでステップ734の判断結果はYESであり、処理を続ける。
The procedure is returned to step 704 to receive the next 1-byte code and determine whether the received code is an identification code (
手順が前記ステップ704に戻されて、次の1バイトのコードを受けとるとともに、その受けとったコードが識別コードであるか否かを判断する(ステップ704、706)。次の1バイトのコードは、F0である。ここでF0は識別コードなので、ステップ706の判断結果がYESになる。そこで、さらに次の1バイトのキーコードを受けとる(ステップ708)。受けとった1バイトのコードが特殊キー(Shift、Ctrl、Alt等)に係るものであるか否かを判断する(ステップ710)。受けとったキーコード14は特殊キーに係るものなので、ステップ710の判断結果がYESになる。そこで、該当するフラグが0か否かを判断する(ステップ712)。ここで、記憶領域80において、該当するフラグであるCtrlフラグは1なので、ステップ712の判断結果がNOになる。次に最後のコードか否かを判断する(ステップ714)。これは最後のコードなので、ステップ714の判断結果がYESになる。そこで、受信処理を行う。まず、記憶領域80のキーコード記憶領域に記憶されている16をキーコードとして受信する。また、記憶領域80の各フラグにおいて、その値が1以上のフラグの特殊キーは押されていると判断する(ステップ716)。その後、次のコードがあるか否かを判定する(ステップ734)。続くコードは無いのでステップ734の判断結果はNOであり、処理を終了する。
The procedure is returned to step 704 to receive the next 1-byte code and determine whether the received code is an identification code (
以上のステップにより、データは照合され、受信側でも“Ctrl”と“1”が特定される。 Through the above steps, the data is collated, and “Ctrl” and “1” are specified on the receiving side.
本発明の実施例2を、機能で大別すると、キーコードの作成・送信部と受信部に分かれる。また受信部はキーコードを正常に受信したかの判定部を有する。ここでは一例として、任意の専用キーをアナログ操作した場合について説明する。
(1)始めにキーコードの作成・送信部を説明する。
The second embodiment of the present invention can be broadly divided into functions: a key code creation / transmission unit and a reception unit. The receiving unit has a determining unit as to whether the key code has been normally received. Here, as an example, a case where an analog operation of an arbitrary dedicated key is described.
(1) First, the key code creation / transmission unit will be described.
図1は、専用キーのアナログ操作とキーコードに対応したデータの発生タイミングの関係の一例を説明した図である。時刻T1において専用キーUP-1を押し、更に時刻T2において専用キーUP-2を押し、時刻T3において専用キーUP-2離して、最後に時刻T4において専用キーUP-1を離している。専用キーUP-1には、押したときのキーコードとして“Ctrl”と“1”、離したときのキーコードとして“Ctrl”と“Q”が割り付けられており、専用キーUP-2には、押したときのキーコードとして“Ctrl”と“2”、離したときのキーコードとして“Ctrl”と“W”が割り付けられている(図5参照)。また、アナログ操作特有のキーが押されて続けている事を判別する内部キーをRepeatキーと呼称することにする。このRepeatキーは、特定のキーに付随するものではなく、いずれかのキーが一つでも押され続けるときを対象とする。Repeatキーには、押したときのキーコードとして“Ctrl”と“P”、離したときのキーコードとして“Ctrl”と“L”が割り付けられている(図5参照)。 FIG. 1 is a diagram illustrating an example of the relationship between the analog operation of a dedicated key and the generation timing of data corresponding to the key code. The dedicated key UP-1 is pressed at time T1, the dedicated key UP-2 is further pressed at time T2, the dedicated key UP-2 is released at time T3, and finally the dedicated key UP-1 is released at time T4. Dedicated key UP-1 is assigned “Ctrl” and “1” as key codes when pressed, “Ctrl” and “Q” as key codes when released, and dedicated key UP-2 "Ctrl" and "2" are assigned as key codes when pressed, and "Ctrl" and "W" are assigned as key codes when released (see FIG. 5). Further, an internal key for determining that a key unique to an analog operation is being pressed is referred to as a “Repeat key”. This Repeat key is not attached to a specific key, and is intended for the case where any one of the keys is kept pressed. The “Repeat” key is assigned “Ctrl” and “P” as key codes when pressed, and “Ctrl” and “L” as key codes when released (see FIG. 5).
実施例1と同様に、各キーの操作に対応して図6(b)、(c)、(d)、(e)、(f)、(g)のデータが作成される。図11は、キーコードからデータを作成・送信するフローを説明した図である。フローで示すアナログキーとは、アナログ操作するキーを対象としており、ここでは専用キーを指すが、前述した通り、従来のキーボードの任意のキーをアナログキーとして用いても構わない。以下、図1で示すようなアナログ操作について、図11のフローの処理を説明する。
・時刻T1
まず時刻T1になり専用キーUP-1が押される。ここでキーが押されているので、ステップ202の判断結果がYESになる(ステップ202)。また、ここではアナログキーが押されているので、ステップ204の判断結果がYESになる(ステップ204)。専用キーUP-1は新たに押されたキーなので、ステップ206の判断結果がYESになる(ステップ206)。ここでキーコード発生器44は、新しいアナログキーとして、専用キーUP-1を押したときのキーコードである14・16/F0・16・F0・14を送信する(ステップ208)。次にRepeatキーの開始として、押したときのコードである14・4D/F0・4D・F0・14を送信する(ステップ210)。ここで、一定時間として前述の周期(例えば、1msecで等間隔にして良いし、10msec・100msec・10msec・・・のような一定のルールに従い設定しても良い。)が経過するまで待機する(ステップ232)。
・時刻T1〜時刻T2
前記周期の時間が経過後、手順が前記ステップ202に戻される。この時点の時刻が、時刻T1〜時刻T2の間であるとする。ここでキーが押されているので、ステップ202の判断結果がYESになる(ステップ202)。また、ここではアナログキーが押されているので、ステップ204の判断結果がYESになる(ステップ204)。専用キーUP-1以降は新たに押されたわけではないので、ステップ206の判断結果がNOになる(ステップ206)。専用キーUP-1は前回送信から押され続けているので、ステップ212の判断結果がYESになる(ステップ212)。ここでキーコード発生器44は、アナログキーとして、専用キーUP-1を押したときのキーコードである14・16/F0・16・F0・14を送信する(ステップ214)。専用キーは離されていないので、ステップ216の判断結果がNOになる(ステップ216)。次にRepeatキーとして、押したときのコードである14・4D/F0・4D・F0・14を送信する(ステップ210)。ここで、一定時間経過するまで待機する(ステップ232)。
・時刻T2
前記周期の時間が経過後、手順が前記ステップ202に戻される。この時点の時刻が、時刻T2だとする。ここでは、新たに専用キーUP-2が押される。ここでキーが押されているので、ステップ202の判断結果がYESになる(ステップ202)。また、ここではアナログキーが押されているので、ステップ204の判断結果がYESになる(ステップ204)。専用キーUP-2は新たに押されたキーなので、ステップ206の判断結果がYESになる(ステップ206)。ここでキーコード発生器44は、新しいアナログキーとして、専用キーUP-2を押したときのキーコードである14・26/F0・26・F0・14を送信する(ステップ208)。次にRepeatキーとして、押したときのコードである14・4D/F0・4D・F0・14を送信する(ステップ210)。ここで、一定時間経過するまで待機する(ステップ232)。
・時刻T2〜T3
前記周期の時間が経過後、手順が前記ステップ202に戻される。この時点の時刻が、時刻T2〜時刻T3の間だとする。ここでキーが押されているので、ステップ202の判断結果がYESになる(ステップ202)。また、ここではアナログキーが押されているので、ステップ204の判断結果がYESになる(ステップ204)。専用キーUP-2以降は新たに押されたわけではないので、ステップ206の判断結果がNOになる(ステップ206)。専用キーUP-2は前回送信から押され続けているので、ステップ212の判断結果がYESになる(ステップ212)。ここでキーコード発生器44は、アナログキーとして、専用キーUP-2を押したときのキーコードである14・26/F0・26・F0・14を送信する(ステップ214)。専用キーは離されていないので、ステップ216の判断結果がNOになる(ステップ216)。次にRepeatキーとして、押したときのコードである14・4D/F0・4D・F0・14を送信する(ステップ210)。ここで、一定時間経過するまで待機する(ステップ232)。
・時刻T3
前記周期の時間が経過後、手順が前記ステップ202に戻される。この時点の時刻が、時刻T3だとする。ここでは、専用キーUP-2が離される。ここでキーが押されているので、ステップ202の判断結果がYESになる(ステップ202)。また、ここではアナログキーが押されているので、ステップ204の判断結果がYESになる(ステップ204)。専用キーUP-2以降は新たに押されたわけではないので、ステップ206の判断結果がNOになる(ステップ206)。専用キーUP-2は前回送信から離されたので、ステップ212の判断結果がNOになる(ステップ212)。専用キーUP-2が離されてたので、ステップ216の判断結果がYESになる(ステップ216)。ここでキーコード発生器44は、、アナログキーとして、専用キーUP-2を離したときのキーコードである14・1D/F0・1D・F0・14を送信する(ステップ218)。次にRepeatキーとして、押したときのコードである14・4D/F0・4D・F0・14を送信する(ステップ210)。ここで、一定時間経過するまで待機する(ステップ232)。
・時刻T3〜T4
前記周期の時間が経過後、手順が前記ステップ202に戻される。この時点の時刻が、時刻T3〜時刻T4の間だとする。ここでキーが押されているので、ステップ202の判断結果がYESになる(ステップ202)。また、ここではアナログキーが押されているので、ステップ204の判断結果がYESになる(ステップ204)。専用キーUP-2以降は新たに押されたわけではないので、ステップ206の判断結果がNOになる(ステップ206)。専用キーUP-2は前回送信から離されたので、ステップ212の判断結果がNOになる(ステップ212)。専用キーは離されていないので、ステップ216の判断結果がNOになる(ステップ216)。次にRepeatキーとして、押したときのコードである14・4D/F0・4D・F0・14を送信する(ステップ210)。ここで、一定時間経過するまで待機する(ステップ232)。
・時刻T4
前記周期の時間が経過後、手順が前記ステップ202に戻される。この時点の時刻が、時刻T4だとする。ここでは、専用キーUP-1が離される。ここでキーは何も押されていないので、ステップ202の判断結果がNOになる(ステップ202)。専用キーUP-1が離されてたので、ステップ224の判断結果がYESになる(ステップ224)。ここでキーコード発生器44は、、アナログキーとして、専用キーUP-1を離したときのキーコードである14・15/F0・15・F0・14を送信する(ステップ226)。ここで前回は専用キーUP-1が押されていたので、ステップ228の判断結果がYESになる(ステップ228)。次にRepeatキーの終了として、離したときのコードである14・4B/F0・4B・F0・14を送信する(ステップ230)。ここで、一定時間経過するまで待機する(ステップ232)。
Similar to the first embodiment, the data shown in FIGS. 6B, 6C, 6D, 6E, 6F, and 6G are created corresponding to the operation of each key. FIG. 11 is a diagram illustrating a flow of creating / transmitting data from a key code. The analog keys shown in the flow are intended for analog keys, and are dedicated keys here. However, as described above, any key of a conventional keyboard may be used as an analog key. Hereinafter, the processing of the flow of FIG. 11 will be described for the analog operation as shown in FIG.
・ Time T1
First, at time T1, the dedicated key UP-1 is pressed. Since the key is pressed here, the determination result in
・ Time T1-Time T2
After the period has elapsed, the procedure returns to step 202. It is assumed that the time at this time is between time T1 and time T2. Since the key is pressed here, the determination result in
・ Time T2
After the period has elapsed, the procedure returns to step 202. It is assumed that the time at this time is time T2. Here, the dedicated key UP-2 is newly pressed. Since the key is pressed here, the determination result in
・ Time T2 ~ T3
After the period has elapsed, the procedure returns to step 202. It is assumed that the time at this time is between time T2 and time T3. Since the key is pressed here, the determination result in
・ Time T3
After the period has elapsed, the procedure returns to step 202. It is assumed that the time at this time is time T3. Here, the dedicated key UP-2 is released. Since the key is pressed here, the determination result in
・ Time T3 ~ T4
After the period has elapsed, the procedure returns to step 202. It is assumed that the time at this time is between time T3 and time T4. Since the key is pressed here, the determination result in
・ Time T4
After the period has elapsed, the procedure returns to step 202. It is assumed that the time at this time is time T4. Here, the dedicated key UP-1 is released. Since no key is pressed here, the determination result in
以上のステップにより、コードはデータとして送信される。
(2)次にキーコードの受信部を説明する。
Through the above steps, the code is transmitted as data.
(2) Next, a key code receiving unit will be described.
前述の作成・送信部から、キーコードを含んだデータが送られてくる。これらにデータは、実質上、対をなすデータで送られてくる。これらのデータを相互に照合することにより、送信中にエラーが生じていないか確認する方法は、前述した実施例1の受信部で説明したものと同様である。エラーがなく正常と判定されたデータからキーコードをどのように受信処理するかを説明する。 Data including a key code is sent from the above-described creating / transmitting unit. Data is sent to these as a pair of data. A method for confirming whether or not an error has occurred during transmission by comparing these data with each other is the same as that described in the receiving section of the first embodiment. How to receive a key code from data determined to be normal without error will be described.
前述の作成・送信部から、専用キーUP-1を押したときのデータ、離したときのデータ、専用キーUP-2を押したときのデータ、離したときのデータ、Repeatキーを押したときのデータ、離したときのデータ、のいずれかのデータが送信される。それぞれ、
14・16/F0・16・F0・14
14・15/F0・15・F0・14
14・26/F0・26・F0・14
14・1D/F0・1D・F0・14
14・4D/F0・4D・F0・14
14・4B/F0・4B・F0・14
が相当する。受信部ではこれらからキーコードを抽出し、どのキーが押されている状態か判断する。
When the dedicated key UP-1 is pressed, when released, data when the dedicated key UP-2 is pressed, when released, or when the Repeat key is pressed Data, or data when released, is transmitted. Respectively,
14 ・ 16 / F0 ・ 16 ・ F0 ・ 14
14 ・ 15 / F0 ・ 15 ・ F0 ・ 14
14 ・ 26 / F0 ・ 26 ・ F0 ・ 14
14.1D / F0.1D.F0.14
14.4D / F0.4D.F0.14
14 ・ 4B / F0 ・ 4B ・ F0 ・ 14
Corresponds. The receiving unit extracts the key code from these, and determines which key is being pressed.
図12は、キーコードを抽出するフローを説明した図である。また図13は、専用キーの受信状況フラグの一例を説明した図である。ここで、専用キーの受信状況フラグ90は、例えば、記憶領域にあるビット情報を格納するアドレス番号であり、アドレス番号4〜7には専用キーUP-1〜4を、アドレス番号12〜15には専用キーDOWN-1〜4を割り付けられている。いずれのアドレスもビット情報を格納し、TはTrue(真)、FはFalse(偽)を表し、初期の状態、或いは初期化した段階で全てのアドレスにFが格納されるものとする。そこで図13の受信状況フラグ90の状態は、専用キーUP-1を押したときのコードと専用キーUP-2を押したときのコードを受信中であることを意味する。
・時刻T1
まず時刻T1になり専用キーUP-1が押される。ここで送信中にエラーが無いときは、専用キーUP-1を押したときの送信部で送信したデータである14・16/F0・16・F0・14を受信する(ステップ102)。14・16/F0・16・F0・14は前述の判定部で“Ctrl”と“1”を正常に受信したと処理されるので、ステップ104の判断結果がYESになる(ステップ104)。キー操作が初めて処理されたときは、受信状況フラグ90は初期状態であり、これは初期化されている状態なのでステップ106の判断結果がNOになる(ステップ106)。ここでは図5のように専用キーとキーコードの割り付けを設定しており、“Ctrl”と“1”は専用キーUP-1におけるアナログ操作なので、ステップ112の判断結果がYESになる(ステップ112)。ここで、受信したキーコードにより処理するが、“Ctrl”と“1”は専用キーUP-1を押したときのキーコードなので、ステップ116に分岐する(ステップ114)。これは専用キーUP-1を押したときのキーコードを受信したことになるので、受信状況フラグ90のアドレス番号4をTにする(ステップ116)。その後、手順が前記ステップ102に戻される。
FIG. 12 is a diagram illustrating a flow for extracting a key code. FIG. 13 is a diagram for explaining an example of the reception status flag of the dedicated key. Here, the dedicated key
・ Time T1
First, at time T1, the dedicated key UP-1 is pressed. If there is no error during transmission, 14 · 16 / F0 · 16 · F0 · 14, which is data transmitted by the transmission unit when the dedicated key UP-1 is pressed, is received (step 102). 14 · 16 / F0 · 16 · F0 · 14 are processed by the above-described determination unit when “Ctrl” and “1” are normally received, so that the determination result in
続けて、Repeatキーを押したときの送信部で送信したデータである14・4D/F0・4D・F0・14を受信する(ステップ102)。14・4D/F0・4D・F0・14は前述の判定部で“Ctrl”と“P”を正常に受信したと処理されるので、ステップ104の判断結果がYESになる(ステップ104)。受信状況フラグ90は少なくともアドレス番号4がTなので初期状態ではない。そこでステップ106の判断結果がYESになる(ステップ106)。ここでは最後にキーが押されてから経過時間として、キーを押したときのキーコードを受信してからn秒経過したかを確認する。経過時間は、例えば、図示しない内部カウンタ等により測定する。押したときのキーコードが、最後にステップ104をYESで通過してからの経過時間を測定しているものとする。また、閾値としてn秒を任意に設定可能とし、通常は送信エラー等でリセットしても構わないと判断される値、例えばn=3を設定する。ここでは、n秒経過しなかったものとし、ステップ108の判断結果がNOになる(ステップ108)。“Ctrl”と“P”はRepeatキーによるアナログ操作の一つなので、ステップ112の判断結果がYESになる(ステップ112)。ここで、受信したキーコードにより処理するが、“Ctrl”と“P”はRepeatキーを押したときのキーコードなので、ステップ120に分岐する(ステップ114)。ここで、受信状況フラグ90において、押したときのキーのアドレス番号がTになっているキー全てが押されている状態と判定する。アドレス番号4だけがTなので、専用キーUP-1が押されていると判定する。(ステップ120)。その後、手順が前記ステップ102に戻される。
・時刻T1〜T2
次に時刻T1〜時刻T2の間だとする。ここで14・16/F0・16・F0・14を受信すると(ステップ102)、前述と同様に、ステップ104はYES、ステップ106はYES、ステップ108はNO、ステップ112はYES、ステップ114は押したときのキーコードとなり、専用キーUP-1を押したときのキーコードを受信したので、対象である、受信状況フラグ90のアドレス番号4をTで維持する(ステップ116)。その後、手順が前記ステップ102に戻される。
Subsequently, 14 · 4D / F0 · 4D · F0 · 14 which is data transmitted by the transmission unit when the Repeat key is pressed is received (step 102). 14 · 4D / F0 · 4D · F0 · 14 is processed by the above-described determination unit when “Ctrl” and “P” are normally received, so the determination result in
・ Time T1-T2
Next, it is assumed that it is between time T1 and time T2. When 14 · 16 / F0 · 16 · F0 · 14 is received (step 102),
続けて、14・4D/F0・4D・F0・14を受信すると(ステップ102)、前述と同様に、ステップ104はYES、ステップ106はYES、ステップ108はNO、ステップ112はYES、ステップ114は押したときのキーコード(Repeat)となり、ここで、受信状況フラグ90において、押したときのキーのアドレス番号がTになっているキー全てが押されている状態と判定する。アドレス番号4だけがTなので、専用キーUP-1が押されていると判定する(ステップ120)。その後、手順が前記ステップ102に戻される。
・時刻T2
次に時刻T2になり、14・26/F0・26・F0・14を受信すると(ステップ102)、前述と同様に、ステップ104はYES、ステップ106はYES、ステップ108はNO、ステップ112はYES、ステップ114は押したときのキーコードとなり、専用キーUP-2を押したときのキーコードを受信したので、対象である、受信状況フラグ90のアドレス番号5をTにする(ステップ116)。その後、手順が前記ステップ102に戻される。
When 14 · 4D / F0 · 4D · F0 · 14 is received (step 102),
・ Time T2
Next, at time T2, when 14 · 26 / F0 · 26 · F0 · 14 is received (step 102),
続けて、14・4D/F0・4D・F0・14を受信すると(ステップ102)、前述と同様に、ステップ104はYES、ステップ106はYES、ステップ108はNO、ステップ112はYES、ステップ114は押したときのキーコード(Repeat)となり、ここで、受信状況フラグ90において、押したときのキーのアドレス番号がTになっているキー全てが押されている状態と判定する。アドレス番号4と5がTなので、専用キーUP-1と専用キーUP-2が押されていると判定する(ステップ120)。その後、手順が前記ステップ102に戻される。
・時刻T2〜T3
次に時刻T2〜時刻T3の間だとする。ここで14・26/F0・26・F0・14を受信すると(ステップ102)、前述と同様に、ステップ104はYES、ステップ106はYES、ステップ108はNO、ステップ112はYES、ステップ114は押したときのキーコードとなり、専用キーUP-2を押したときのキーコードを受信したので、対象である、受信状況フラグ90のアドレス番号5をTで維持する(ステップ116)。その後、手順が前記ステップ102に戻される。
When 14 · 4D / F0 · 4D · F0 · 14 is received (step 102),
・ Time T2 ~ T3
Next, it is assumed that it is between time T2 and time T3. When 14 · 26 / F0 · 26 · F0 · 14 is received (step 102),
続けて、14・4D/F0・4D・F0・14を受信すると(ステップ102)、前述と同様に、ステップ104はYES、ステップ106はYES、ステップ108はNO、ステップ112はYES、ステップ114は押したときのキーコード(Repeat)となり、ここで、受信状況フラグ90において、押したときのキーのアドレス番号がTになっているキー全てが押されている状態と判定する。アドレス番号4と5がTなので、専用キーUP-1と専用キーUP-2が押されていると判定する(ステップ120)。その後、手順が前記ステップ102に戻される。
・時刻T3
次に時刻T3になり、14・1D/F0・1D・F0・14を受信すると(ステップ102)、前述と同様に、ステップ104はYES、ステップ106はYES、ステップ108はNO、ステップ112はYES、ステップ114は離したときのキーコードとなり、専用キーUP-2を離したときのキーコードを受信したので、対象である、受信状況フラグ90のアドレス番号5をFにする(ステップ118)。その後、手順が前記ステップ102に戻される。
When 14 · 4D / F0 · 4D · F0 · 14 is received (step 102),
・ Time T3
Next, at time T3, when 14 · 1D / F0 · 1D · F0 · 14 is received (step 102),
続けて、14・4D/F0・4D・F0・14を受信すると(ステップ102)、前述と同様に、ステップ104はYES、ステップ106はYES、ステップ108はNO、ステップ112はYES、ステップ114は押したときのキーコード(Repeat)となり、ここで、受信状況フラグ90において、押したときのキーのアドレス番号がTになっているキー全てが押されている状態と判定する。アドレス番号4だけがTなので、専用キーUP-1が押されていると判定する(ステップ120)。その後、手順が前記ステップ102に戻される。
・時刻T3〜T4
次に時刻T3〜時刻T4の間だとする。ここで14・4D/F0・4D・F0・14を受信すると(ステップ102)、前述と同様に、ステップ104はYES、ステップ106はYES、ステップ108はNO、ステップ112はYES、ステップ114は押したときのキーコード(Repeat)となり、ここで、受信状況フラグ90において、押したときのキーのアドレス番号がTになっているキー全てが押されている状態と判定する。アドレス番号4だけがTなので、専用キーUP-1が押されていると判定する(ステップ120)。その後、手順が前記ステップ102に戻される。
・時刻T4
次に時刻T4になり、14・15/F0・15・F0・14を受信すると(ステップ102)、前述と同様に、ステップ104はYES、ステップ106はYES、ステップ108はNO、ステップ112はYES、ステップ114は離したときのキーコードとなり、専用キーUP-1を離したときのキーコードを受信したので、対象である、受信状況フラグ90のアドレス番号4をFにする(ステップ118)。その後、手順が前記ステップ102に戻される。
When 14 · 4D / F0 · 4D · F0 · 14 is received (step 102),
・ Time T3 ~ T4
Next, it is assumed that it is between time T3 and time T4. If 14 · 4D / F0 · 4D · F0 · 14 is received (step 102),
・ Time T4
Next, at time T4, when 14 · 15 / F0 · 15 · F0 · 14 is received (step 102),
続けて、14・4B/F0・4B・F0・14を受信すると(ステップ102)、前述と同様に、ステップ104はYES、ステップ106はYES、ステップ108はNO、ステップ112はYES、ステップ114は離したときのキーコード(Repeat)となり、ここで、受信状況フラグ90を初期化する(ステップ126)。その後、手順が前記ステップ102に戻される。
When 14 · 4B / F0 · 4B · F0 · 14 is received (step 102),
以上のステップにより、データはキーコードとして受信され、受信側でもデータを受信した時点におけるアナログ操作の状態が特定される。 Through the above steps, the data is received as a key code, and the state of the analog operation at the time when the data is received is also specified on the receiving side.
以上の記載から明らかなように、実施例1において、受信した第1のデータに含まれるキーコードが受信した第2のデータを照合し、両者に一致したキーコードが確認され場合のみキーコードを最終的に受信処理するようにしている。 As is clear from the above description, in the first embodiment, the key code included in the received first data is collated with the received second data, and the key code is obtained only when the matching key code is confirmed. Finally, the reception process is performed.
またキーボードのキーが押された時点でキーコードが入力されるので、オペレータに対してキーデータの入力遅れに伴う違和感やストレスを与えないという効果を奏する。加えて、キーを押している間はキーコードを周期的に作成して送信することにより、アナログ操作を可能にしている。 In addition, since the key code is input when the keyboard key is pressed, there is an effect that the operator does not feel uncomfortable or stress associated with the delay in key data input. In addition, analog operation is enabled by periodically creating and transmitting a key code while the key is pressed.
実施例2は、上記に加えて、複数のアナログ操作を実現可能にしている。この際に、キーを押されていること自体をRepeatキーと言うキーコードで共有することにより、押されているキー全てのキーコードを周期的に作成して送信するような負荷の高い処理を回避するという効果を奏する。 In the second embodiment, in addition to the above, a plurality of analog operations can be realized. At this time, by sharing the key press itself with a key code called the Repeat key, a high-load processing such as periodically generating and transmitting the key codes of all the pressed keys is performed. There is an effect of avoiding.
また、図11の送信処理ステップ204以降の処理により、アナログキーが押されている間は、通常キーの操作を受けつけなくし、誤った操作を回避するという効果を奏する。
In addition, the processing after the
N…ネットワーク
30…HMI
32…監視用モニタ
34…専用キーボード
36…コンピュータ
38…PS/2インターフェースケーブル
40…制御用LAN
42…キー
44…キーコード発生部
60、80…記憶領域
90…受信状況フラグ
N ...
32 ... Monitoring
42 ... key 44 ...
Claims (6)
該キーボードの任意のキーが押されたときは、その押されたキーを特定するキーコードを含む第1のデータと該キーコードに識別コードを付加した第2のデータとを作成して送信する第1のキーコード作成手段と、
押されているキーが離されたときは、その離されたキーを特定するキーコードを含む第3のデータと該キーコードに識別コードを付加した第4のデータとを作成して送信する第2のキーコード作成手段と、
任意のキーが押され続けている間は、前記第1のデータ及び前記第2のデータを周期的に作成して送信する第3のキーコード作成手段と、
前記第1及び前記第2のデータ、或いは前記第3及び前記第4のデータを受信し、それらのデータに含まれる前記キーコードを相互に照合して該キーコードの適否を判定する第1の判定手段と、
を備えることを特徴とするキーボードを用いた入力装置。 Provided on the keyboard,
When an arbitrary key on the keyboard is pressed, first data including a key code for specifying the pressed key and second data obtained by adding an identification code to the key code are generated and transmitted. First key code creating means;
When the pressed key is released, the third data including the key code specifying the released key and the fourth data with the identification code added to the key code are generated and transmitted. 2 key code creation means;
A third key code creating means for periodically creating and transmitting the first data and the second data while an arbitrary key is being pressed;
The first and second data, or the third and fourth data are received, and the key codes included in the data are compared with each other to determine whether the key code is appropriate A determination means;
An input device using a keyboard, comprising:
該キーボードのいずれのキーにおいても、押したときから離すまで、或いは押したときから次のキーが押されるまでは、その押したキーを特定するキーコードを含む第5のデータと該キーコードに識別コードを付加した第6のデータとを周期的に作成して送信する第4のキーコード作成手段と、
押したキーが離されたときは、その離されたキーを特定するキーコードを含む第7のデータと該キーコードに識別コードを付加した第8のデータとを作成して送信する第5のキーコード作成手段と、
該キーボードの1つ或いは複数のキーが押され続ける間は、キーが押されていることを特定するキーコードを含む第9のデータと該キーコードに識別コードを付加した第10のデータとを周期的に作成して送信する第6のキーコード作成手段と、
前記1つ或いは複数のキーが全て離されたときはキーが離されたことを特定するキーコードを含む第11のデータと該キーコードに識別コードを付加した第12のデータとを作成して送信するする第7のキーコード作成手段と、
前記第5及び前記第6のデータ、或いは前記第7及び前記第8のデータ、或いは前記第9及び前記第10のデータ、或いは前記第11及び前記第12のデータを受信し、それらのデータに含まれる前記キーコードを相互に照合して前記キーコードの適否を判定する第2の判定手段と、
前記第5及び前記第6のデータ、或いは前記第7及び前記第8のデータ、或いは前記第9及び前記第10のデータ、或いは前記第11及び前記第12のデータを受信し、それらのデータを受信した時系列に従いキーコードに戻すことにより、いずれのキーが押され続けているか/いないかを判断する判断手段と、
を備えることを特徴とするキーボードを用いた入力装置。 Provided on the keyboard,
In any key of the keyboard, from when the key is pressed until it is released, or from when the key is pressed until the next key is pressed, the fifth data including the key code specifying the pressed key and the key code Fourth key code creating means for periodically creating and transmitting sixth data to which an identification code is added;
When the pressed key is released, the fifth data including the key code for specifying the released key and the eighth data with the identification code added to the key code is generated and transmitted. Key code creation means;
While one or more keys of the keyboard continue to be pressed, the ninth data including the key code specifying that the key is pressed and the tenth data with the identification code added to the key code Sixth key code creating means for periodically creating and transmitting;
When all of the one or more keys are released, eleventh data including a key code for specifying that the key has been released and twelfth data in which an identification code is added to the key code are created. A seventh key code creating means for transmitting;
Receive the fifth and sixth data, or the seventh and eighth data, or the ninth and tenth data, or the eleventh and twelfth data, Second determination means for determining whether the key code is appropriate by collating the included key codes with each other;
The fifth and sixth data, the seventh and eighth data, the ninth and tenth data, or the eleventh and twelfth data are received, and those data are received. A judging means for judging which key is kept pressed by returning to the key code according to the received time series;
An input device using a keyboard, comprising:
前記キーボードの特殊キー、或いは非特殊キー、或いは特殊キー及び非特殊キーの組合せを、前記キーボード上に専用キーとして設けた専用キーにキーコードを割り付ける手段と、
割り付けられた該専用キーが押されている間は、その他のキーの入力を無視する受信手段と
を備えることを特徴とするキーボードを用いた入力装置。 In the input device using the keyboard according to claim 1 or 2,
Means for assigning a key code to a dedicated key provided as a dedicated key on the keyboard, a special key of the keyboard, or a non-special key, or a combination of a special key and a non-special key;
An input device using a keyboard, comprising: receiving means for ignoring input of other keys while the assigned dedicated key is pressed.
押されているキーが離されたときは、その離されたキーを特定するキーコードを含む第3のデータと該キーコードに識別コードを付加した第4のデータとを作成して送信し、
任意のキーが押され続けている間は、前記第1のデータ及び前記第2のデータを周期的に作成して送信し、
送信された前記第1及び前記第2のデータ、或いは前記第3及び前記第4のデータを受信し、それらのデータに含まれる前記キーコードを相互に照合して該キーコードの適否を判定すること
を特徴とするキーボードを用いた入力方法。 When an arbitrary key on the keyboard is pressed, first data including a key code for specifying the pressed key and second data obtained by adding an identification code to the key code are transmitted.
When the pressed key is released, the third data including the key code for specifying the released key and the fourth data with the identification code added to the key code are generated and transmitted.
While the arbitrary key is kept pressed, the first data and the second data are periodically created and transmitted,
The transmitted first and second data, or the third and fourth data are received, and the key codes included in those data are collated with each other to determine whether the key code is appropriate. An input method using a keyboard characterized by the above.
押され続けている間は、前記第5及び前記第6のデータを周期的に作成して送信し、
該キーボードの他のキーが押されたとき、或いは押しているキーが離されたときはその離されたキーを特定するキーコードを含む第7のデータと該キーコードに識別コードを付加した第8のデータとを作成して送信し、
前記任意のキー或いは前記他のキーが押され続ける間は、キーが押されていることを特定するキーコードを含む第9のデータと該キーコードに識別コードを付加した第10のデータとを周期的に作成して送信し、キーが全て離されたときはキーが離されたことを特定するキーコードを含む第11のデータと該キーコードに識別コードを付加した第12のデータとを作成して送信し、
前記第5及び前記第6のデータ、或いは前記第7及び前記第8のデータ、或いは前記第9及び前記第10のデータ、或いは前記第11及び前記第12のデータを受信し、それらのデータに含まれる前記キーコードを相互に照合して前記キーコードの適否を判定し、判定結果に基づいて受信したデータを、時系列に従いキーコードに戻すことにより、いずれのキーが押され続けているか/いないかを判断すること
を特徴とするキーボードを用いた入力方法。 When an arbitrary key on the keyboard is pressed, the fifth data including the key code for specifying the pressed key and the sixth data with the identification code added to the key code are generated and transmitted.
While being pushed, the fifth and sixth data are periodically created and transmitted,
When another key of the keyboard is pressed, or when the key being pressed is released, seventh data including a key code specifying the released key and an eighth code in which an identification code is added to the key code Create and send data with
While the arbitrary key or the other key is continuously pressed, the ninth data including the key code specifying that the key is pressed and the tenth data including the identification code added to the key code. The eleventh data including a key code for specifying that the key has been released and the twelfth data having an identification code added to the key code when the keys are all released are periodically generated and transmitted. Create and send,
Receive the fifth and sixth data, or the seventh and eighth data, or the ninth and tenth data, or the eleventh and twelfth data, By comparing the key codes included in each other to determine the suitability of the key codes and returning the received data to the key codes according to the determination result, which key is being pressed / An input method using a keyboard characterized by determining whether there is any.
前記キーボードの特殊キー、或いは非特殊キー、或いは特殊キー及び非特殊キーの組合せを、前記キーボード上に専用キーとして設けた専用キーにキーコードを割り付け、割り付けられた該専用キーが押されている間は、その他のキーの入力を無視すること
を特徴とするキーボードを用いた入力方法。 In the input method using the keyboard according to claim 4 or 5,
A special key of the keyboard, a non-special key, or a combination of a special key and a non-special key is assigned to a special key provided as a special key on the keyboard, and the assigned special key is pressed. An input method using a keyboard characterized by ignoring other key inputs.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006078072A JP4706526B2 (en) | 2006-03-22 | 2006-03-22 | Input device and input method using keyboard |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006078072A JP4706526B2 (en) | 2006-03-22 | 2006-03-22 | Input device and input method using keyboard |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2007257103A true JP2007257103A (en) | 2007-10-04 |
JP4706526B2 JP4706526B2 (en) | 2011-06-22 |
Family
ID=38631322
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006078072A Expired - Fee Related JP4706526B2 (en) | 2006-03-22 | 2006-03-22 | Input device and input method using keyboard |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4706526B2 (en) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS61143235U (en) * | 1985-02-21 | 1986-09-04 | ||
JPS62196718A (en) * | 1986-02-24 | 1987-08-31 | Nec Corp | Keyboard |
JPH03268123A (en) * | 1990-03-19 | 1991-11-28 | Alpine Electron Inc | Decoding method for key operation |
JPH09305285A (en) * | 1996-05-16 | 1997-11-28 | Alps Electric Co Ltd | Keyboard |
JP2001075715A (en) * | 1999-07-28 | 2001-03-23 | Samsung Electro Mech Co Ltd | Data transmission method for wireless keyboard equipped with track ball |
JP2002055764A (en) * | 2000-07-26 | 2002-02-20 | Silitek Corp | Wireless keyboard and infrared transmission code for pc remote controller |
JP2004192605A (en) * | 2002-12-12 | 2004-07-08 | Samsung Electro Mech Co Ltd | Data transmission and reception method for wireless keyboard |
-
2006
- 2006-03-22 JP JP2006078072A patent/JP4706526B2/en not_active Expired - Fee Related
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS61143235U (en) * | 1985-02-21 | 1986-09-04 | ||
JPS62196718A (en) * | 1986-02-24 | 1987-08-31 | Nec Corp | Keyboard |
JPH03268123A (en) * | 1990-03-19 | 1991-11-28 | Alpine Electron Inc | Decoding method for key operation |
JPH09305285A (en) * | 1996-05-16 | 1997-11-28 | Alps Electric Co Ltd | Keyboard |
JP2001075715A (en) * | 1999-07-28 | 2001-03-23 | Samsung Electro Mech Co Ltd | Data transmission method for wireless keyboard equipped with track ball |
JP2002055764A (en) * | 2000-07-26 | 2002-02-20 | Silitek Corp | Wireless keyboard and infrared transmission code for pc remote controller |
JP2004192605A (en) * | 2002-12-12 | 2004-07-08 | Samsung Electro Mech Co Ltd | Data transmission and reception method for wireless keyboard |
Also Published As
Publication number | Publication date |
---|---|
JP4706526B2 (en) | 2011-06-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8407380B2 (en) | Remote operation system | |
US8384669B2 (en) | Information processing apparatus, remote system, and computer readable medium | |
JP4966393B2 (en) | Terminal equipment | |
US8346948B2 (en) | Information processing apparatus, selector, remote operation system, scan code transmission method, and program product therefor | |
WO2017045190A1 (en) | Method, apparatus and device for instructing operations on terminal device | |
US20120188113A1 (en) | Remote control apparatus and electronic device remotely controlled by the same | |
CN106327143B (en) | Method and apparatus for nodes in a flow | |
US8583045B2 (en) | Method of pairing a computer and wireless electronic devices | |
JP4706526B2 (en) | Input device and input method using keyboard | |
US20110040853A1 (en) | KVM switch and KVM system | |
US8959252B2 (en) | Method for configuring a field device and corresponding system for parameterization | |
WO2017107429A1 (en) | Operation processing method, apparatus and device for interconnection application, and non-volatile computer storage medium | |
JP5427592B2 (en) | Device control system, terminal device and device | |
JP2007134843A (en) | Communication terminal, remote operation method and program | |
JP3920892B2 (en) | Terminal device | |
US8074001B2 (en) | Information processing apparatus, KVM switch, remote system, and computer readable storage medium | |
JP2010011322A (en) | Communication system, communication device, and communication method | |
JP2007140716A (en) | Input device using keyboard and input method | |
JP2009015561A (en) | Server, key information conversion method, program, and system | |
JP2006155047A (en) | Verification system and verification method | |
JP2013186552A (en) | Signal converter, and signal transmission system | |
CN113590079B (en) | Music playing control method, device and computer readable storage medium | |
CN115052195B (en) | Remote input method, device, equipment and storage medium | |
US11114075B2 (en) | Electronic musical instrument and electronic musical instrument system | |
JP2008257564A (en) | Print system and its firmware update method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20081215 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20090219 |
|
A625 | Written request for application examination (by other person) |
Free format text: JAPANESE INTERMEDIATE CODE: A625 Effective date: 20090313 |
|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A712 Effective date: 20090701 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20101029 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110104 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110127 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20110215 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20110228 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140325 Year of fee payment: 3 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
LAPS | Cancellation because of no payment of annual fees |