(57)【要約】行および列で配列された関連するスイッチを有する独立キー（２５４）の行列を伴うキーボード（２５２）を有するデバイスにおける入力フィードバックであって、対角線上で隣接するキーの組み合わせが組み合わせキー（２５６）出力に関連する、入力フィードバックを提供する。１つの方法には、作動済みキーについてスキャンするステップと、暫定的な出力をユーザに与えて（１１１）、作動済みキーが登録されたことを示すステップと、行列のスキャンを続けるステップと（１１４）、第１の作動済みキーの開放前の隣接キーの作動に応答して、最終的な出力をユーザに与えて（１２４）、第１および隣接キーの組み合わせが登録されたことを示し、暫定的な出力を除外するステップと、が含まれる。他の方法は、隣接対で行を駆動する一方で、スイッチ作動について列を調べることと、隣接対で行を駆動する間に２つの隣接する列においてスイッチ作動を検出した場合に応答して、組み合わせキー出力を決定することを特徴とする。
2005500600.tif 000002
【特許請求の範囲】
【請求項１】
関連するスイッチを有する独立キーの行列を伴うキーボードを有するデバイスにおいて入力フィードバックを与える方法であって、
（１００）作動済みキーについて前記行列をスキャンするステップと、
第１の作動済みキーを検出したときに、（１１１）暫定的な出力をユーザに与えて、前記作動済みキーが登録されたことを示すステップと、
（１１４）前記第１の作動済みキーの開放前の隣接キーの作動について前記行列のスキャンを続けるステップと、
前記第１の作動済みキーの開放前の隣接キーの作動に応答して（１１８）、最終的な出力を前記ユーザに与えて（１２４）、前記第１および隣接キーの組み合わせが登録されたことを示し、（１２１）前記暫定的な出力を除外するステップと、
（１０５）前記第１および隣接キーの開放を待って、作動済みキーについての前記行列のスキャンを続けるステップと、を含む方法。
【請求項２】
前記最終的な出力が視覚的なフィードバックとして与えられる請求項１に記載の方法。
【請求項３】
前記暫定的な出力が視覚的なフィードバックとしても与えられる請求項２に記載の方法。
【請求項４】
前記暫定的な出力が聴覚的なフィードバックとしても与えられる請求項２に記載の方法。
【請求項５】
前記行列のスキャンが行および列のスキャンを含む請求項１〜４のいずれか一項に記載の方法。
【請求項６】
前記行列のスキャンが、（１８３）隣接する２つの行を同時に駆動して、同時出力の２つの列を探すステップを含む請求項１〜５のいずれか一項に記載の方法（図２を参照）。
【請求項７】
（１１８）隣接キーの作動についての前記行列のスキャンを続けるステップが、対角線上の隣接キーが作動済みであるかどうかを判断するステップを含む請求項１〜６のいずれか一項に記載の方法。
【請求項８】
（１２０）前記第１の作動済みキーの開放前の隣接キーの作動に応答して内部テーブルにおいて所望の組み合わせキーを検索するステップを含む請求項１〜７のいずれか一項に記載の方法。
【請求項９】
暫定的な出力を与えるステップが、（１１２）前記暫定的な出力を生データとしてレジスタ内に格納するステップを含む請求項１〜８のいずれか一項に記載の方法。
【請求項１０】
前記暫定的な出力がフィードバックとして与えられ、前記暫定的な出力を与えるステップが、
前記第１の作動済みキーを検出したときに前記暫定的な出力を決定するステップと、次いで、
（１０７）前記暫定的な出力が決定された後（１１１）フィードバックを与える前に所定の時間量だけ遅延させるステップと、を含む請求項１〜９のいずれか一項に記載の方法。
【請求項１１】
前記暫定的な出力が視覚的なフィードバックとして与えられる請求項１０に記載の方法。
【請求項１２】
前記所定の時間量が約２０ミリ秒である請求項１０に記載の方法。
【請求項１３】
前記遅延時間量が、キー・ストローク間の測定時間と修正の詳細とから決定される請求項１０に記載の方法。
【請求項１４】
前記キーボードの前記独立キー（２５４）が、格納された組み合わせキー出力に対応するキー組み合わせを共に形成する隣接する独立キー間の前記キーボードの間隙領域（２６５）の露出面を越えて高い露出面を有する請求項１〜１３のいずれか一項に記載の方法。
【請求項１５】
既知の配列の関連するスイッチを有する独立キー（２５４）の行列を伴うキーボード（２５２）を有するデバイスにおいて入力を決定する方法であって、隣接キーの組み合わせが組み合わせキー入力に関連し、前記方法は、第１の作動済みキーに関連する正当な組み合わせキー入力の独立キーの確認を、
所定の組の番号のそれぞれを、前記作動済みキーに関連する連続番号に付加して、前記作動済みキーに関連する正当な組み合わせ生成独立キーの連続番号を決定するステップであって、前記所定の組の番号は前記既知のスイッチ配列に基づく、ステップと、次いで、
キーと連続番号とを関連付けるテーブルにおいて、前記決定された連続番号から正当な組み合わせ生成独立キーを確認するステップと、によって行なうステップを含む方法（図５および６を参照）。
【請求項１６】
第１の作動済みキーに関連する正当な組み合わせキー入力の独立キーを確認した後に、前記確認された正当な組み合わせ生成独立キーのうちの１つの作動に応答して、前記第１の作動済みキーと前記確認された正当な組み合わせ生成独立キーのうちの前記作動済みの１つとの組み合わせに関連する入力を登録するステップをさらに含む請求項１５に記載の方法。
【請求項１７】
正当な組み合わせ生成独立キーを確認した後に、前記確認された正当な組み合わせ生成独立キーの作動を詳細にチェックするステップをさらに含む請求項１５に記載の方法。
【請求項１８】
前記キー・スイッチが行および列で配列されており、関連する入力を有する正当なキー組み合わせが、対角線上で隣接するキーの組み合わせである請求項１５〜１７のいずれか一項に記載の方法。
【請求項１９】
前記所定の組の番号が、（Ｒ＋１）および（Ｒ−１）に関連する値からなり、ここでＲは前記キー行列の行の数である、請求項１８に記載の方法。
【請求項２０】
正当な組み合わせ生成独立キーの作動のチェックが、前記第１の作動済みキーを確認したスキャンの結果を評価するステップを含む請求項１５〜１９のいずれか一項に記載の方法。
【請求項２１】
前記キー行列の第１のスキャン上で前記第１の作動済みキーが確認され、前記確認された正当な組み合わせ生成独立キーの作動の詳細なチェックが、前記行列をその後にスキャンするステップを含む請求項１５に記載の方法。
【請求項２２】
前記確認された正当な組み合わせ生成独立キー（２５４）の作動の詳細なチェックが、前記第１の作動済みキーを含む列に隣接する単一の列のみをスキャンするステップを含む請求項２１に記載の方法。
【請求項２３】
キーと連続番号とを関連付ける前記テーブルが、前記キー行列のスイッチに関連しない追加の連続番号を含む請求項１５〜２２のいずれか一項に記載の方法（図６を参照）。
【請求項２４】
前記追加の連続番号が、数字的に、前記キー行列の対向する縁上のスイッチに関連する連続番号の間にある請求項２３に記載の方法。
【請求項２５】
前記キーボードの前記独立キー（２５４）が、組み合わせキー出力に関連する対角線上の隣接キーの組み合わせに対応する隣接する独立キー間の前記キーボードの間隙領域（２５６）の露出面を越えて高い露出面を有する請求項１５〜２４のいずれか一項に記載の方法。
【請求項２６】
関連するスイッチを有する独立キー（２５４）の行列を伴うキーボード（２５２）を有するデバイスにおいて入力フィードバックを与える方法であって、隣接キーの組み合わせが組み合わせキー入力に関連し、
前記方法は、
（１２）作動済みキーについて前記行列をスキャンするステップと、
（１３）スキャンされたキー状態を、前記行列の以前のスキャンからのキー状態と比較するステップと、
キー状態の変化を検出したときに、（１４）前記スキャンされたキー状態を分析するステップであって、
スキャンされたキー状態が、１つの作動中キーのみを示す場合には、（１１２）前記作動中キーに関連する独立キーを登録し、
スキャンされたキー状態が、単一の組み合わせ入力に関連する複数の作動中キーを示す場合には、（１２０）前記複数の作動中キーに関連する前記組み合わせキー入力を登録するステップを含むステップと、を含む方法（図９および１０を参照）。
【請求項２７】
キー状態の変化の検出が、作動済みキーの数の変化の検出を含む請求項２６に記載の方法。
【請求項２８】
スキャンされたキー状態を前記行列の以前のスキャンからのキー状態と比較した結果、キー状態の変化が全く検出されなかった場合に応答して、前記スキャンされたキー状態の前記分析を行なうことなく、作動済みキーについて前記行列をスキャンする前記ステップを繰り返すステップをさらに含む請求項２６または２７に記載の方法。
【請求項２９】
前記スキャンされたキー状態の分析には、スキャンされたキー状態が、単一の組み合わせ入力の組み合わせに関連しない複数の作動中キーを示す場合に、（４０）格納された個人識別番号に関連する入力を登録するステップがさらに含まれる請求項２６に記載の方法。
【請求項３０】
前記スキャンされたキー状態の分析には、スキャンされたキー状態が２つの作動中キーを示す場合に、（３４）前記２つの作動中キーが互いに対角線上で隣接するかどうかを判断し、前記２つの作動中キーが互いに対角線上で隣接すると判断された場合に、（１２０）前記２つの作動中キーに関連する組み合わせキー入力を登録するステップが含まれる請求項２６に記載の方法。
【請求項３１】
前記キーボードの前記独立キー（２５４）が、組み合わせキー出力に関連する対角線上の隣接キーの組み合わせに対応する隣接する独立キー間の前記キーボードの間隙領域（２５６）の露出面を越えて高い露出面を有する請求項２６〜３０のいずれか一項に記載の方法。
【請求項３２】
関連するスイッチを有する独立キー（２５４）の行列を伴うキーボードを有するデバイスにおいて入力フィードバックを与える方法であって、隣接キーの組み合わせが組み合わせキー入力に関連し、前記方法は、
（４）作動済みキーについて前記行列をスキャンするステップと、
作動済みキーの数に対応するキー・カウントを生成するステップと、
（５）前記キー・カウントを評価して、（６）他のキー状態情報を分析するかどうかを判断するステップと、を含む方法（図８を参照）。
【請求項３３】
前記キー・カウントの評価には、前記キー・カウントを数字「１」と比較して、キー・カウントが数字「１」に等しい場合には、他のキー状態情報を分析して、どの独立キーが作動中かを決定するステップが含まれる請求項３２に記載の方法。
【請求項３４】
前記キー・カウントの評価には、前記キー・カウントを前記行列の以前のスキャンからの格納されたキー・カウントと比較して、前記キー・カウントが変化したかどうかを判断するステップが含まれる請求項３２または３３に記載の方法。
【請求項３５】
前記キーボードの前記独立キー（２５４）が、組み合わせキー出力に関連する対角線上の隣接キーの組み合わせに対応する隣接する独立キー間の前記キーボードの間隙領域（２５６）の露出面を越えて高い露出面を有する請求項３２〜３４のいずれか一項に記載の方法。
【請求項３６】
関連するスイッチを有する独立キーの行列を伴うキーボードを有するデバイスにおいて入力フィードバックを与える方法であって、隣接キーの組み合わせが組み合わせキー入力に関連し、前記方法は、
（１００、１２）作動済みキーについて前記行列をスキャンするステップと、
所定の時間の間キーが作動中であることが検出された場合に応答して、（１１２、２２）前記作動済みキーに関連する入力を登録するステップと、
キーが作動中であると検出されたがその時間が前記所定の時間よりも短かったスキャンの後のスキャンにおいてキーが全く作動されないことが検出された場合に応答して、（１１２、２２）前記作動済みキーに関連する入力を登録するステップと、を含む方法（図７および９を参照）。
【請求項３７】
（１１２）前記作動済みキーに関連する入力を登録した後に、キー作動時間に関連するタイマをリセットして、（１００）前記行列を再びスキャンするステップを、さらに含む請求項３６に記載の方法。
【請求項３８】
前記タイマが、所定のキーが作動中である各順次スキャンにおいてインクリメントされるカウンタを含む請求項３７に記載の方法（図７）。
【請求項３９】
前記所定の時間が、約１６０〜２５０ミリ秒である請求項３６〜３８のいずれか一項に記載の方法。
【請求項４０】
関連するスイッチを有する独立キー（２５４）の行列を伴うキーボードを有する電子デバイスであって、隣接キーの組み合わせが組み合わせキー入力に関連し、請求項１、１５、２６、３２、３６のいずれか一項に記載の前記方法を実施するように構成された電子デバイス。
【発明の詳細な説明】
【技術分野】
【０００１】
技術分野
本発明は、個別キーと、間隙に関連する隣接キーの作動と、の両方の結果として固有の出力を与えるキーを有するタイル型キーボード、およびこのようなキーボード上で入力されるデータの解釈に関する。
【背景技術】
【０００２】
背景
技術の進歩において、小型化は中心的なパラダイムである。技術進歩の第２のパラダイムは、製品の複雑さを絶えず増加させることであり、このことは、ボタンの数を増加させる必要性に関連している。これら２つの基本的なパラダイムは対立しており、その示唆するところは、時が経つにつれて、製品全体のサイズが減少し付加的な機能性に対する要求が増え続けるために、より小さい（しかし有用な）入力デバイスに対する必要性が増えるということである。音声技術によって、いつの日か必ず、高品質、低コストで、ほぼゼロ・サイズの入力が出現する。しかしこのような技術は、次のような公共の場、すなわち教室、会議、公共交通機関（航空、陸上）にいるとき、図書館などで使用することに対しては、常に不適切であることが明らかである。したがって、これらの基本的技術の進歩曲線に対して引き続き軌跡を描くためには、最大限の出力密度および最大限の使いやすさの両方を備えた低コスト・キーボードを製造することが極めて望ましい。最大限の出力密度とは、最小限のスペースにおける最大のシングル・タッチ操作を意味する。最大限の使いやすさとは、主に２つのことを意味する。すなわち（１）各出力を、ユーザが必要とする速さで容易に操作でき、隣接する出力の偶発的な作動が起きないものでなければならない、および（２）直感的に認識されて自然であるためには、出力を作動させる技術は、一般的に知られて受け入れられている「ボタン」パラダイム（使用パターンおよび感触を含む）に基づかなければならない。
【０００３】
密度の問題については、米国特許第５，６１２，６９０号（レビィ（Ｌｅｖｙ））によってかなり対処されたが、使いやすさの問題については対処していなかった。関連する先行技術としては、米国特許第４，５４９，２７９号および第４，９９４，９９２号（ラペイレ（Ｌａｐｅｙｒｅ））がある。これらの特許では、原寸キーの隣接する縁、中心、または交点で押すことによりワン・タッチ・アクセス可能な多数の操作（Ｍ×Ｎの成人した人間の指幅の領域において４ＭＮ−２Ｍ−２ｎ＋１）が、提供されている。米国特許出願第４，４００，５９３号（クンズ（Ｋｕｎｚ））では、小型のタイル型キーを用いて同じ密度が得られているが、キーが小さすぎて縁のキー操作ができない。米国特許出願第５，６１２，６９０号では、縮小サイズのキーの中心に対して「火山」構造を導入して、最大限の出力密度を実質的に８ＭＮ−４ｍ−４ｎ＋１まで増加させることによって、前述の特許に対する著しい進歩が得られている。しかしこれらのどの特許においても、タイル型キーボードまたは個別および組み合わせキー出力の両方を備えたキーボードの何れかを実現して成功させることについての、著しいが自明ではない障害については、検討されていない。
【０００４】
たとえば、個別キーでのみまたは組み合わせたキーでのみ動作するキー付きデバイスを実現することは、比較的些細なことである。しかし個別キーを用いた場合および組み合わせたキーを用いた場合の両方に対して、迅速かつ信頼性良く動作するデバイスを実現することは非常に難しい。組み合わせたキーについてのみスキャンすることは、比較的些細なことである。と言うのは、キー・スイッチ・デバウンス（debounce）に対する汎用的な解決方法を用いて２つの対向キー（two opposing keys）を登録すればいつでも、信頼性の高い出力を決定できるからである。しかしデバイスが個別キーも出力する場合には、迅速な個別キー操作を実現することへの要求と、信頼性の高い組み合わせキーの操作との間には、本来的に緊張関係が存在する。理由：組み合わせキーの信頼性を高めるためには、組み合わせた対向キーが全て現れるのを待つための時間遅延を長くしなければならない。こうすると、個別キーの遅い操作が増える。本発明は、迅速な個別キー操作と信頼性の高い組み合わせキー操作とを実現するために、この問題に取り組むものである。出力の正確度を低下させることなく迅速な出力応答を得ることが、ＩＡＣＫキーボードには望ましい。
【０００５】
ＩＡＣＫキーパッドの分野における最近のいくつかの進歩が、発明者の以前のＰＣＴ出願の国際公開第０１／９５３５８号に開示されている。
【発明の開示】
【０００６】
概要
本発明の一態様によれば、関連するスイッチを有する独立キーの行列を伴うキーボードを有するデバイスにおいて入力フィードバックを与える方法が提供される。本方法は、作動済みキーについて行列をスキャンするステップと、第１の作動済みキーを検出したときに、暫定的な出力をユーザに与えて、作動済みキーが登録されたことを示すステップと、第１の作動済みキーの開放前に隣接キーの作動について行列のスキャンを続けるステップと、第１の作動済みキーの開放前の隣接キーの作動に応答して、最終的な出力をユーザに与えて、第１および隣接キーの組み合わせが登録されたことを示し、暫定的な出力を除外するステップと、を含む。
【０００７】
「スイッチ」によって意味するところは、何らからの接触または非接触デバイス（受動または能動の何れか）であって、その関連するキーの作動を示す出力を与えるデバイスが含まれることである。例としては、複数のキーの下に配置された力感応（force-senstive）または近接感応（proximity-sensitive）なグリッドの領域（たとえば前述の米国特許出願に記載されるもの）が挙げられる。
【０００８】
場合によっては、最終的な出力もしくは暫定的な出力、または両方が、視覚的なフィードバックとして与えられる。暫定的な出力は、聴覚的なフィードバックとして与えても良い。
【０００９】
行列のスキャンは、場合によって、行および列のスキャンを含む。
【００１０】
ある実施形態では、行列のスキャンが、隣接する２つの行を同時に駆動して、同時出力の２つの列を探すことを含む。
【００１１】
隣接キーの作動についての行列のスキャンを続けることは、構成によっては、対角線上で隣接するキーが作動済みであるかどうかを判断することを含む。
【００１２】
ある実施形態では、本方法は、第１の作動済みキーの開放前の隣接キーの作動に応答して内部テーブルにおいて所望の組み合わせキーを検索することを含む。
【００１３】
暫定的な出力を与えることは、たとえば、暫定的な出力を生データ（raw data）としてレジスタ内に登録することを含んでいても良い。
【００１４】
ある実施形態では、暫定的な出力がフィードバックとして与えられ、暫定的な出力を与えることが、第１の作動済みキーを検出したときに暫定的な出力を決定することと、暫定的な出力が決定された後、フィードバックを与える前に、所定の時間量（たとえば約２０ミリ秒）だけ遅延させることと、を含む。ある場合には、遅延時間の量は、キー・ストローク間の計測時間と修正の詳細から決定される（the amount of delay time is determined from measured time betweenkey strokes and details of correction）。
【００１５】
本方法は、キーボードの独立キーが、格納された組み合わせキー出力に対応するキー組み合わせを共に形成する隣接する独立キー間のキーボードの間隙領域（interstitial regions）の露出面を越えて高い露出面を有する場合に、特に有利である。
【００１６】
本発明の他の態様によれば、行および列で配列された関連するスイッチを有する独立キーの行列を伴うキーボードを有するデバイスにおいて入力フィードバックを与える方法であって、対角線上で隣接するキーの組み合わせが組み合わせキー出力に関連する方法が提供される。本方法は、隣接対で行を駆動する一方で、スイッチ作動について列を調べることと、隣接対で行を駆動する間に２つの隣接する列においてスイッチ作動を検出した場合に応答して、組み合わせキー出力を決定することとを含む。
【００１７】
好ましくは本方法は、隣接対で行を駆動する前に、キー・スイッチの行を駆動する一方でスイッチ作動状態について列をサーチすることと、少なくとも１つの列上で作動済みスイッチを検出した場合に応答して隣接対で行を駆動することと、を含む。キー・スイッチの行を全て同時に駆動して、たとえばその間に、スイッチ作動状態について列をサーチしても良い。さらに場合によって、本方法は、組み合わせキー出力を決定した後に、全ての列がローとなるまで待機することを、スイッチの全ての行を再び駆動する前に行なう。
【００１８】
ある実施形態では、本方法は、隣接対で行を駆動する間に１つの列でのみスイッチ作動状態を検出した場合に応答して、個別キー出力を決定することを含み、これはたとえば、第１のヒット・カウンタを、示されたキーが作動済みであるサイクル数の記録を取るようにセットすることと、サイクルごとに第１のヒット・カウンタをインクリメントすることと、第１のヒット・カウンタが所定の数（たとえば約２０〜３０ミリ秒または約２００ミリ秒にさえ相当するもの）に達したら、示されたキーに関連する独立キーを登録することと、によって行なう。好ましくは、独立キー出力を登録した後で、第１のヒット・カウンタをリセットして、全ての列がローとなるまでアルゴリズムが待機することを、スイッチの行を再び駆動する前に行なう。所定の数を、学習モードに取り込む。学習モードは、個別キーの登録後に削除キーを使用した後、関連する組み合わせキーを入力することに応答して、所定の数を増やすことを含んでいても良い。
【００１９】
本方法は、以下に述べる方法とともに、キーボードの独立キーが、組み合わせキー出力に関連する対角線上の隣接キーの組み合わせに対応する、隣接する独立キー間のキーボードの間隙領域の露出面を越えて高い露出面を有する場合に、特に有利である。
【００２０】
本方法の他の態様によれば、既知の配列の関連するスイッチを有する独立キーの行列を伴うキーボードを有するデバイスにおいて入力を決定する方法であって、隣接キーの組み合わせが組み合わせキー入力に関連し、本方法は、第１の作動済みキーに関連する正当な（legitimate）組み合わせキー入力の独立キーの確認を、所定の組の番号のそれぞれを、作動済みキーに関連する連続番号に付加して、作動済みキーに関連する正当な組み合わせ生成独立キーの連続番号を決定することと（所定の組の番号は既知のスイッチ配列に基づく）、キーと連続番号とを関連付けるテーブルにおいて、決定された連続番号から正当な組み合わせ生成独立キーを確認することと、によって行なうステップを含む方法である。
【００２１】
場合によっては、本方法は、第１の作動済みキーに関連する正当な組み合わせキー入力の独立キーを確認した後に、確認された正当な組み合わせ生成独立キーのうちの１つの作動に応答して、第１の作動済みキーと、確認された正当な組み合わせ生成独立キーのうちの作動済みの１つと、の組み合わせに関連する入力を登録することを、さらに含む。
【００２２】
ある実施形態では、本方法は、正当な組み合わせ生成独立キーを確認した後に、確認された正当な組み合わせ生成独立キーの作動について詳細にチェックすることを含む。
【００２３】
本方法は、キー・スイッチが行および列で配列されており、関連する入力を有する正当なキー組み合わせが、対角線上で隣接するキーの組み合わせである場合に、特に有用である。このような場合、所定の組の番号は、（Ｒ＋１）および（Ｒ−１）に関連する値からなり、ここでＲはキー行列の行の数である。
【００２４】
場合によっては、正当な組み合わせ生成独立キーの作動についてのチェックが、第１の作動済みキーを確認したスキャンの結果を評価することを含む。
【００２５】
ある実施形態では、キー行列の第１のスキャン上で第１の作動済みキーが確認され、確認された正当な組み合わせ生成独立キーの作動についての詳細なチェックが、行列をその後にスキャンすることを含む。確認された正当な組み合わせ生成独立キーの作動についての詳細なチェックは、たとえば第１の作動済みキーを含む列に隣接する単一の列のみをスキャンすることを伴っていても良い。
【００２６】
場合によっては、キーと連続番号とを関連付けるテーブルが、キー行列のスイッチに関連しない追加の連続番号（extra sequence numbers）を含む。これらの追加の連続番号は、たとえばキーボードの「ゴースト・キー」に対応するものと考えることができる。このような追加の連続番号は好ましくは、数字的に、キー行列の対向する縁上のスイッチに関連する連続番号の間にある。
【００２７】
本方法のさらに他の態様によれば、関連するスイッチを有する独立キーの行列を伴うキーボードを有するデバイスにおいて入力フィードバックを与える方法であって、隣接キーの組み合わせが組み合わせキー入力に関連する方法が提供される。本方法は、作動済みキーについて行列をスキャンするステップと、スキャンされたキー状態を、行列の以前のスキャンからのキー状態と比較するステップと、キー状態の変化を検出したときに、スキャンされたキー状態を分析するステップであって、スキャンされたキー状態が１つの作動中キーのみを示す場合には、作動中キーに関連する独立キーを登録し、スキャンされたキー状態が、単一の組み合わせ入力に関連する複数の作動中キーを示す場合には、複数の作動中キーに関連する組み合わせキー入力を登録することを含むステップと、を含む。
【００２８】
キー状態の変化の検出は、たとえば作動済みキーの数の変化の検出を含んでいても良いし、単にこの検出から構成されていても良い。
【００２９】
場合によっては、本方法は、スキャンされたキー状態を行列の以前のスキャンからのキー状態と比較した結果、キー状態の変化が全く検出されなかった場合に応答して、スキャンされたキー状態の分析を行なうことなく、作動済みキーについて行列をスキャンするステップを繰り返すことを含む。
【００３０】
スキャンされたキー状態の分析には、スキャンされたキー状態が、単一の組み合わせ入力との組み合わせに関連しない複数の作動中キーを示す場合に、格納された個人識別番号に関連する入力を登録することがさらに含まれていても良い。
【００３１】
スキャンされたキー状態の分析には、スキャンされたキー状態が２つの作動中キーを示す場合に、２つの作動中キーが互いに対角線上で隣接するかどうかを判断し、２つの作動中キーが互いに対角線上で隣接すると判断された場合に、２つの作動中キーに関連する組み合わせキー入力を登録することが含まれていても良い。
【００３２】
本方法の他の態様によれば、関連するスイッチを有する独立キーの行列を伴うキーボードを有するデバイスにおいて入力フィードバックを与える方法であって、隣接キーの組み合わせが組み合わせキー入力に関連し、本方法は、作動済みキーについて行列をスキャンするステップと、作動済みキーの数に対応するキー・カウントを生成するステップと、キー・カウントを評価して、他のキー状態情報を分析するかどうかを判断するステップと、を含む方法である。
【００３３】
ある実施形態では、キー・カウントの評価には、キー・カウントを数字「１」と比較して、キー・カウントが１に等しい場合には、他のキー状態情報を分析して、どの独立キーが作動中かを決定することが含まれる。
【００３４】
場合によっては、キー・カウントの評価には、キー・カウントを、行列の以前のスキャンからの格納されたキー・カウントと比較して、キー・カウントが変化したかどうかを判断することが含まれる。
【００３５】
本発明のさらに他の態様によれば、関連するスイッチを有する独立キーの行列を伴うキーボードを有するデバイスにおいて入力フィードバックを与える方法であって、隣接キーの組み合わせが組み合わせキー入力に関連し、作動済みキーについて行列をスキャンするステップを含む方法である。所定の時間（たとえば約１６０〜２５０ミリ秒）の間キーが作動中であることが検出された場合か、またはキーが作動中であると検出されたがその時間が所定の時間よりも短かったスキャンの後のスキャンにおいてキーが全く作動されないことが検出された場合に応答して、本方法は、作動済みキーに関連する入力を登録するステップを含む。
【００３６】
本方法は、ある実施形態では、作動済みキーに関連する入力を登録した後に、キー作動時間に関連するタイマをリセットして、行列を再びスキャンすることも含む。
【００３７】
場合によっては、タイマは、所定のキーが作動中である各順次スキャンにおいてインクリメントされるカウンタを含む（the timer comprises a counter incremented for each sequential scanin which a given key is active）。
【００３８】
本方法の他の態様には、本発明の前述の態様の方法を実施するように構成された電子デバイスが含まれる。
【００３９】
本発明の１以上の実施形態の詳細を、添付の図面および以下の説明において述べる。本発明の他の特徴、目的、および利点は、説明および図面から、ならびに特許請求の範囲から、明らかである。
【００４０】
種々の図面における同様の参照符号は同様の要素を示す。
詳細な説明
図１に、間隙キーを用いたタイル型キーボード（図４に示すキーパッドなど）におけるキー作動を決定するための事後（after-the-fact）（２階層）アルゴリズムを示す。これによって、応答速度および出力正確度の組み合わせとしての性能が向上する。アルゴリズムによって、キーを打つ約２００ミリ秒の間にユーザにフィードバックがなされ、その結果、「瞬時の」応答という印象がユーザに与えられる。実際、フィードバック時にユーザの指はまだ動いており、システムは依然として、ユーザが指を上げる前に生じ得る入力をモニタしている。
【００４１】
アルゴリズムは、ユーザにフィードバックがなされたときに登録される入力とは異なる場合がある最終的な出力を、デバイス・ディスプレイへ送るようにデザインされている。図示した実施形態では、システムは液晶ディスプレイに対して、フィードバックがなされるときに受け取る入力に対応する暫定的出力を掲示した後、この暫定的な出力を、ユーザが指を上げる前に受け取る追加入力の関数として変える場合がある。このアルゴリズムは、図２および３に記載された第１ステージのアルゴリズムとともに用いても良い。（第１ステージのアルゴリズムは、この図のステップ１００〜１１４と関連している）。行列スキャン１００は、行および列の従来のスキャンであっても良いし、新しいアプローチとして、隣接する２つの行を同時に駆動して、同時出力の２つの列を探すことによって、意図する組み合わせのキー出力を自動的に示すものであっても良い。ステップ１０２：キーが全く作動されない場合には、スキャンを続ける。ステップ１０４：いったん１つのキーの作動が検出されたら、デバイスは、対角線上（すなわち、対角線上で隣接する）キーも作動されているかどうかを判断する。このような方法の１つを、図５および６を参照して後述する。２つの隣接行のアプローチ（two-adjacent-row approach）を用いる場合には、追加のスキャンが必要である。組み合わせキー出力が意図されていることが、作動中のスイッチによって示された場合、ステップ１０６で所望のキーを内部テーブル内で検索し、ステップ１０８で所望の組み合わせキー出力を表示する。こうしてユーザには、組み合わせキーが登録されたというフィードバックがなされる。フィードバックは、聴覚的であっても良いし、視覚的および／または触感的であっても良い。ステップ１０４において対角線上のスイッチが全く作動されない場合には、デバイスは、個別キー出力が意図されていると暫定的に解釈して、ステップ１０９に入る。これは、どの個別キーが意図されているかを暫定的に決定するフェーズである。ステップ１０９では、暫定的に決定された出力が、ステップ１１０において、テーブル内で検索される。テーブルは、行列スキャン１００によって確認されるスイッチ位置を、ＡＳＣＩＩ文字および／または生データとしてレジスタおよび／またはディスプレイ自体に格納される文字などと関連付けるものである。ユーザには、個別キーが登録されたというフィードバックがなされる（ステップ１１１および１１２）。このフィードバックも、聴覚的であっても良いし、視覚的および／または触感的であっても良い。フィードバックの何れかまたは全部をわずかだけ（約２０ミリ秒）遅延させて（ステップ１０７）、暫定的な出力が決定された後も筋肉の動きが継続できるようにすることが有用であり得る。これは特に、ユーザが軽いタッチでキーを速く操作しているときに当てはまる。このことは、キー・ストローク間の時間を測定して、削除キーの使用によって確認される何らかの修正と関連付けることによって決定することができる。
【００４２】
この出力は「暫定的である」。と言うのは、次に第２の階層のスキャニング（ステップ１１４）が開始されて、作動されたスイッチが、開であるとみなされる十分な時間の間停止されるかどうかが判断されるからである（ステップ１１６）。これが起きた場合、サイクルは、ステップ１００に戻って、別の入力を探し始める。スイッチが全てクリアされてはいない場合には、ステップ１１８において、デバイスは対角線上のスイッチの作動に対してのスキャンを続ける。このスキャンは、スイッチがクリアされるまで続けられる（ステップ１１６）。全てのスイッチがクリアされる前に対角線上のスイッチが作動された場合には、デバイスは、もともと組み合わせキーが意図されていたと判断する。次にデバイスは、意図された組み合わせキーを決定し（ステップ１２０）、暫定的に決定された出力を除外して（ステップ１２２）、意図された組み合わせキーを出力する（ステップ１２４）。操作が登録されたというフィードバックがユーザになされた後に最終的な出力を決定できることに、ユーザは気付かないでいることができる。組み合わせ出力を確立するための正しいヒットの数は、正確な結果を得るために、非常に少ない可能性がある（８ＭＨｚにおいて１６周期のオーダであるか、場合によってはおそらくたった１度の周期でさえある）。この図では、各個々のスイッチのデバウンスに関連する待ち状態は示されていない。と言うのは、この待ち状態は、当該技術分野において良く知られており理解されているからである。
【００４３】
図２に、ＩＡＣＫキーボードにおけるキー作動の決定を改善するための他の実施形態を示す。ここでは、異なる時間に接触する単一の組み合わせキー内の個別キーに関連する遅延も、考慮されている。ステップ１８０において、全ての行を同時に駆動してハイにする。ステップ１８２では、作動中のスイッチについて列をサーチする。少なくとも１つの列が、作動されたスイッチを示すときには、行を、隣接する対で駆動し（第１および第２、第２および第３、第３および第４など）、作動中のスイッチについて列を調べる（ステップ１８３）。１つまたは２つの列についてハイの出力が測定されるかどうかにより、分岐が生じる（ステップ１８４）。２つのラインがハイの場合には、デバイスによって、どの組み合わせキーが作動されているかが決定されて（ステップ１２０）、表示される（ステップ１２４）。次にデバイスが、全ての列がローになるまで待機することを（ステップ１８５）、ステップ１８０でプロセスを繰り返す前に行なう。一つの列のみがハイの場合には、ステップ１８８の個別キーの分析に入る。図３で、ステップ１８８をより詳細に示す。ステップ１８８では、第１のヒット・カウンタを、示したキーがハイであると測定されたサイクルの数の記録を取るようにセットする。ステップ１８６では、毎度カウンタをインクリメントする。ステップ１８７では、所定の数のカウント（Ｘ）が測定されたかどうかを判断する。この数の値（値１）は、適切な動作にとって極めて重要であり得る。好ましい値は、約１６０〜２２５ミリ秒に相当し、学習モードに取り込んでも良い。たとえば、個別キーの入力後に削除キーを使用した後、関連する組み合わせキーを入力することは、この所定の値が増加する要因とすることができる。ステップ１２２ではカウンタをリセットする。そして、ステップ１８５では、ステップ１８０におけるプロセスを繰り返す前に、デバイスは全ての列がローになるまで待機するプロセスを行なう。
【００４４】
図３に、ステップ１８８の一実施形態の詳細を示す。このアルゴリズムは、最終キーの取得を速める一方で、デバイス・レベルのデバウンスを設けることによって正確度を維持する。これは、隣接するキーが極端に近いことに起因する不安定な作動を考慮している。最初に、第１の候補（候補１）を確認し（ステップ１９０）、デバイスは、デフォルトによって、ステップ１９２、１８６、１８７を進む。第２のサイクルの間に、分岐点が生じる場合がある。ステップ１９２は、各スキャンが、ステップ１９０で確認された候補１と現時点のスキャンとが一致するかどうかを判断するための分岐点である。一致する場合には、第１のカウンタをインクリメントする（ステップ１８６）。この第１のカウンタ（値１をモニタしている）が所定のカウント数に達した場合には（ステップ１８７）、候補は意図する出力であると判断され、候補キーが出力される（ステップ１１２）。そうでない場合には、十分な数の候補測定値が読み込まれるまで、デバイスはスキャンを続ける（ステップ１８０）。しかしステップ１９２において、異なるキー・ストローク（すなわちウィッチ（ｗｉｔｃｈ）作動）が確認された場合には（たとえば、デバイス・レベル・キーの跳ね返りが原因）、ステップ１９８において第２の候補（候補２）が確認されて、ステップ１９９において第２のカウンタがインクリメントされる。第２のカウンタが第２の値（値２）（値１よりも著しく小さい値（８ＭＨｚでは１６が妥当な値である））にまだ達していない場合には、サイクルは、ステップ１８０に戻ることによって、変わらずに繰り返す。第２のカウンタの合計が値２に達した場合には、候補１の代わりに候補２として、プロセスはステップ１８０に戻って再び始める。
【００４５】
このように、この例示された実施形態には、小型のタイル型キーボードにおける組み合わせキーの操作に関連したノイズに対処するデバイス・レベルのデバウンスが含まれている。これは、次のように簡単に述べることができる。すなわち、最初の読み込みに基づいてデフォルトの出力を指定するようにエレクトロニクスおよびソフトウェアをデザインし、そして誤った文字を新しい基礎として受け入れる前に所定の数の誤入力を読み込んで無視し、または現時点で受け入れられたデフォルトの出力を出力する。キーボードによる最初のスイッチ認識とユーザへのフィードバックとの間に、人工的な遅延を加える（１６０〜２５０ミリ秒のオーダ）。この遅延によって、第１のスイッチ認識の後、指の動きを弱めずに続けることができる。そのため、ユーザが指を引っ込めて違うキーへのタッチに備える前に、第２の意図するスイッチの接触が起こる機会が増える。この遅延の有利な点は、ユーザによる接触が極端に遅いか軽いときに、より明白となる。また、ユーザ入力の関数として遅延を変える動的な「学習モード」を実行することも有利である。削除キーによって誤入力が示されるという仮定のもとで、これらの遅延の長さは、それ相応に再度割り当てられる。たとえば、個別出力の後すぐに削除キーが使用され、その後に、関連する組み合わせ出力が読み込まれる場合には、一致する測定値の数および／または遅延時間を増やさなくてはならないことを示している。
【００４６】
この２階層スキャンおよび修正のアルゴリズムにより、出力信頼性の低下を最小限にする一方で、キー作動の速度を最大にすることができる。これは、正当な出力オプションを決定した後に、ユーザにフィードバック（たとえば、ディスプレイ上で視覚的におよび／または「ビープ音」の形態で触感的に）を与え、その後にスキャンを続けて、出力がなされた後に取得されるスイッチ・データの関数として元々の（仮想的な）出力を変更することに備える。
【００４７】
図４に、４つの独立キー列と７つの独立キー行からなる行列を有する典型的なＩＡＣＫキーパッドを示す。独立キー７０は、組み合わせキー領域７２を越えて高くなっている。この実施形態では、電子スイッチの行列が存在しており、各スイッチは、対応する独立キー７０の下に配置されて、独立キー７０に関連している。独立キー７０を押すことによって、ユーザは、独立キー７０の下の関連するスイッチを作動させる。組み合わせキー領域７２を押して、２つの隣接する対角線の（すなわち対角線上の）独立キー７０を（最小限で）打ち、これにより、関連する独立キー・スイッチを作動させることによって、ユーザは、組み合わせキー７２を作動させることへの本人の要求を示す。
【００４８】
図５に、図４のスイッチ行列を番号付けで表したものを、４つの列と７つの行とを有するテーブルとして示す。テーブルの升目においては、連続する数値が各スイッチに割り当てられている。ＩＡＣＫキーパッドでは、組み合わせキー領域の周りで、隣接する対角線のスイッチを作動させることが、その組み合わせキーを作動させるための最低限の要求として使用されるため、システムは、潜在的な組み合わせを以下のように探すことによって、スキャン・ステップを最小限にすることができる。すなわちシステムが、スイッチＮが作動されているとして検出したときには、その右側に直接にスイッチＮ＋７が配置され、したがってスイッチＮ＋６およびＮ＋８が対角線上のキーであることが分る。言い換えれば、可能な組み合わせは、キーＮ＋Ｒ−１およびＮ＋Ｒ＋１であり、ここでＲは、キー行列での行の数を表している。可能な組み合わせの確認は、ハードウェアのスキャン・レベルで行なっても良く、デバイスがスキャンの数を最小限にすることができる。または、ソフトウェア分析レベルで行なっても良く、レイアウト幾何形状と分析アルゴリズムとの間の独立性が、ある程度可能になる。この独立性によって、様々なＩＡＣＫキーパッドを実現するときの製品開発において著しい有利点を得ることができる。と言うのは、ＩＡＣＫキーパッド内においてレイアウトをユーザ意図の分析に統合するアルゴリズムでは、各異なるレイアウトに対してソフトウェアを完全に書き換える必要があるからである。たとえばこのアプローチによって、ある数の行を有するキーパッドからの入力を分析するように書かれたソフトウェアを変更して、異なる数の行のキーパッドを取り扱うようにすることが、前述の公式において値Ｒを簡単に修正することによって可能となる。所定の数の直行する行と任意の数の列とのキーを有するどんなキーパッドにも適用可能な適切なアルゴリズムの実行方法は、当業者には容易に明らかになる。
【００４９】
この実施形態においては、スイッチ行列の一方の側から他の側へスキャンして分析することが好ましいことに注意されたい。すなわち行２におけるスイッチが検出された場合には、次のサイクルの分析では、行３のみに焦点を当てて、行１には当てない。したがって行１および２に配置される独立キーで構成される組み合わせキー領域が、その後のスイッチ行列のフル・スキャン上で最初に見出される（すなわち、行１におけるスイッチが最初に検出され、次にシステムは、行２におけるキーとの可能な組み合わせをチェックする）。このシステムによって、ＩＡＣＫキーパッドの大部分にわたって組み合わせキーの分析が非常に簡単になるが、この方式では、キーパッドの周辺におけるキーを分析するときに特別の考慮が必要である。用語「行」および「列」は、本明細書で用いる場合、多くの点で交換可能であり、行列内の異なる方向に沿ったキーの配列または順序を示していることが理解される。
【００５０】
図６に、周辺キーの分析に対処するための１つのアプローチを示す。ここでは、「ゴースト」行が、キーパッドの独立キーの物理的な行に対応する行の上下に付加されている。同様に付加されているのは、ゴースト列５、３つの「混合」行、および行列の一番下における最後のゴースト行である。ゴースト行は物理的なスイッチを表してはいないが、ゴースト「スイッチ」には、連続する数値が割り当てられており、その結果、図示した番号付け方式となっている。「ゴースト」指数によって、デバイスが、スイッチ「Ｎ」に関連する潜在的な組み合わせの作動をトランスペアレントにチェックすることを、キーがスイッチ行列の境界上にあるか内部にあるかにかまわずに、スイッチＮ＋１２およびＮ＋１４を（最低限に）チェックすることによって、行なうことができる。たとえばスイッチ番号４が検出された場合、潜在的な組み合わせキーの決定は、スイッチ番号１６および１８を見るだけで行なうことができる。周辺においてもアルゴリズムは機能する。たとえばスイッチ番号１４（たとえば図４の「ｂ」）が検出された場合、潜在的な組み合わせは、（最低限で）スイッチ番号２６および２８を有する。当然のことながら、この例において、スイッチ番号２６は物理的なスイッチではなく、定義により作動中ではない。このアプローチにより、システムは、潜在的な組み合わせに対してのみスキャンすることが、または完全なスキャン・データの組（すなわちキーパッド全体のスキャンのデータ・ストリーム）をチェックすることが、複雑な検索テーブルを用いるかまたは各キー・ケース（ｋｅｙ−ｃａｓｅ）を個別にプログラムする代わりに単純に付加することで、可能となる。このアプローチを用いることで、組み合わせを確認するキーの完全な組を容易に規定することができる。この場合、この例における正当な組み合わせは何れも、Ｎ、（Ｎ＋１）、（Ｎ＋１３）、（Ｎ＋１４）の中の少なくとも１つの対角線上の組からなり、他の独立キーは全くない。この判断基準によれば、存在しない正当な組み合わせキーがある。この状況は、システムがこのような「ゴースト」組み合わせキーの数値表現を検索しようと試みて「ヌル（null）」を戻すときに、自ずと正される。組み合わせキーの数値表現の説明については、図９を参照されたい。
【００５１】
混合行によって、システムは、真に独立なキーの機能性だけでなく、ＩＡＣＫキーパッド・グリッド（たとえば図４に示したグリッド）の外側のキーからのＩＡＣＫ機能性の両方に対して、適応することができる。ここで示した例では、番号４８、４９、５０で表したスイッチは、「送る」、「クリアにする」、「終了する」などの独立キーである。番号９、１０、２２、２３で表したキーは、やはり組み合わせキー出力を与えることができる独立キーである。最後のゴースト行が付加されているのは、混合行３での独立キー番号５０の付加に適応するためであり、これによって、キーボード全体を能率的な同じアルゴリズムによってスキャンすることができる
図７に、ＩＡＣＫキーパッドにおいて個別キーに対する迅速なアクセスと組み合わせキーの信頼性の高い読み込みとの両方が得られる、改善されたスキャニング・アルゴリズムを示す。以前のＩＡＣＫキーパッドの中には、最初の独立キーが打たれた後にシステムが一時停止するタイミング遅延を含むものもあった。これは、組み合わせキーの作動をユーザが実際に意図しているかどうかを判断するための手段としてであった。また以前の実施形態の中には、独立キーをディスプレイに掲示または「登録」する行為がタイマに基づく事象であるものもあった。本実施形態の特徴は、ＩＡＣＫ独立キー出力をディスプレイに掲示するためのトリガとしての代替的な判断基準であり、これによって、著しい改善がデバイスに与えられる。ステップ１００では、システムがＩＡＣＫキーパッドをスキャンして、ユーザがスイッチ行列の何れかの部分を作動させたかどうかを決定する。ステップ１０３では、システムが、第１のスイッチが作動されたかどうかを判断する。これは、図１のステップ１０２とは区別される。ステップ１０２では、任意の作動中スイッチを探している。ステップ１０３では、出力シーケンスを初期化するために、キーボード上の作動状態を確認しようとしている。第１のキーが確認されて（アルゴリズムを作動させている）、システムから出力が与えられていない場合、ステップ１０３は、プロセスがステップ１８６へ移ることを許可する。そうでない場合には、システムは行列のスキャンを続ける。ステップ１８６で、システムはカウンタをインクリメントする。次にアルゴリズムは、独立キーの文字をディスプレイ上に掲示するパス上にシステムをセットする２つの事象を有する。最初のものは、ステップ１８７でカウンタが所定の値（Ｘ）に達するものである。（Ｘの値は好ましくは、１６０〜２５０ミリ秒にほぼ等しい時間に関連することに注意されたい。）指定された遅延時間にシステムが達しており、組み合わせキーがまだ作動されておらず、正当な個別キーが確認された場合には（ステップ１８８）、システムは、確認された個別キーをディスプレイに掲示する（ステップ１１２）。個別キーを掲示するパス上にシステムをセットするための第２の判断基準は、行列内の全てのスイッチがクリアされていることである（ステップ１１６）。（１）ヒット・カウンタがその最大値に達しているか、または（２）正当なキーが確認された後でキーが開放されている場合には、システムはそのキーをディスプレイに掲示する。このアルゴリズムは、図１の２レベル・スキャンと組み合わせて、非常に効果的に用いることができる。ステップ１８７および１１６の条件のどちらも満足しない場合には、システムは、対角線上の作動をサーチすることによって、組み合わせ（および／またはＰＩＮナンバー）入力を探し続ける（ステップ１１８）。ユーザが組み合わせキーを意図している場合には、システムは、適切な組み合わせキー（またはＰＩＮ）出力を検索して（ステップ１２０）、組み合わせを表示する（ステップ１２４）。次にシステムは、カウンタをリセットして、行列を再びスキャンし始める（ステップ１００）。
【００５２】
図８に、ＩＡＣＫキーパッド用のコードを実現するための代替的な実施形態を示す。システムは主に、３つの部分に分けられる。第１の部分は、スキャン・コード４であり、ここではキーパッド行列を駆動し読み込んで、スイッチ・データを収集する。スキャン・コード４は、押されて作動されたキーの数とキーボード状態を表すデータセットとに関する情報を、各サイクルの間にフィルタ５を通して送る。データセットが、ある判断基準を満たす場合には、データを分析する（ステップ６）。殆どの場合、データセットはその基準を満たさない。そのため、多量の処理時間が節約され、その時間を、デバイス内の他のコンポーネントが使用できる。同様に、アルゴリズムによって電力が節約される。これは、携帯の用途において非常に重要なことである。
【００５３】
図９に、どのようにして図８のアーキテクチャを実現して、ＩＡＣＫキーパッド・デバイスにおける電力および処理時間が節約できるのかを示す。キーパッド行列の分析がサイクルに分解され、各サイクルにおいて、１組の文字（通常は１つだが、しばしばそれを上回る）がＬＣＤに掲示される。各サイクルは、全てのキーが開放されたときに終了する。どの単一のサイクル内でも、キーパッド・アレイが定期的にスキャンされ、全てのキーの状態が記録される。１以上の状態が以前のスキャンから変化しているとシステムが判断したときには、スキャンの結果をより詳細に分析し、分析結果を用いて出力記録を構成する。各サイクルでは、（個別キーに対応して）単一キーが押されるか、または（組み合わせキー、ＰＩＮコード、または曖昧な結果に対応して）複数のキーが押される。単一のサイクル内で複数のキーが押される場合には、キーパッド・アレイは、キーが全く押されていない状態から、１つ、次に２つ、そして３つ等のキーが作動される状態へ進む（図１０も参照）。キーパッド・アレイ状態におけるこれらの各変化は、「フレーム」と言うことができる。十分に高いスキャン速度が使用される場合には、各フレームによって通常、単一キーの状態における以前のフレームからの変化が表される。（これは理想的な場合であるが、正しいシステム機能には必要ではない）。新しいフレームのそれぞれにおいて、アレイを分析し、文字をＬＣＤに掲示する(又は提示しない）。アルゴリズムは、有限状態機械（finite state machine）として機能して、現時点の状態および入力値（キーパッド・アレイおよび遅延タイマ）に基づいて次の状態を選択する。現時点の状態は、サイクルの以前のフレームにおいて、どんな行為が取られたかに基づく。分析記録は、キーパッド・アレイの現在の状態を表わす。現時点の状態、タイマの状態、および分析記録の値が分れば、システムは、（もしあれば）どんな行為を現時点のフレームにおいて取るべきかを判定することができる。ステップ１０は、キーボードをスキャンする速度をセットするデューティ・サイクル・タイマである。このタイマがプリセット値に達したときに、システムはキーパッドをスキャンし（ステップ１２）、そして、作動されたキーの数（すなわち閉となったスイッチの数）およびスイッチ自体のデータセットについての情報を送る。キーパッド・スキャンのデータセットは、キーパッド全体の一連のスイッチ作動データからなっていても良い。このデータは、図７で示されるように、単一の言葉で表されている。ステップ１３において、作動中のキーの数を、以前のスキャンにおいて作動中だったキーの数と比較する（たとえば、図８のフィルタ５の一部として）。キーの数が変化しておらず、フィードバック・タイマが時間切れとなっていない場合には（ステップ２０）、アルゴリズムは戻って、次のスキャンを待つ。キーの数が変化している場合には、ステップ１４においてシステムは、ステップ１８においてキーパッドの状態を分析する必要があるかどうかを、判断する。（作動されたキーの数が、たとえば１から０になった場合には、さらに分析を行なう必要は全くない）。次にシステムは、キーパッド・データ・セットについて分析を行なって、ユーザの意図を決定する（ステップ１８）。図１０に、この分析の一例を詳細に述べ、後述する。システムは、分析からの出力を得た後、ステップ１６において、文字（または複数の文字）をディスプレイに掲示するかどうかを判断する（たとえばここで説明した判断基準によって）。分析１８からの出力は、たとえばそのフレーム中にユーザの意図に基づくようにシステムが決定した文字（または複数の文字）の数値表現からなることができる。独立キーは、図６に示したように数値的に表現することができ、組み合わせキーは、その関連する左上の指示物の独立キーの番号＋任意定数に対応する番号によって表現することができる。ここで定数は、デバイス上の何れかの物理的またはゴースト・キーを表わす最も大きな番号よりも大きい。たとえば図６の実施形態の場合、番号「４０」がこの定数として十分である。この場合、たとえば、組み合わせキー「５」は、番号「５１」によって表現される。ＰＩＮコードは、独立キー表現の文字列によって確認することができる。ステップ２２において、システムは、数値表現と関連するＡＳＣＩＩ文字を検索して、このような文字または値を、ディスプレイおよび／または他の場所に（デバイスからの必要に応じて）掲示する。
【００５４】
図１０に、図９のステップ１８で行なわれる分析の一実施形態を示す。ステップ２６において、システムは、スキャン（たとえば図８のスキャン４）から送られたデータを読み込んで、このキー確認シーケンスにおいて検出される第１のスイッチを確認する（ステップ２８）。この第１のキーが、「指示物」になる。ステップ３０において１つのスイッチのみが作動中であると判断された場合には、システムは、個別キーを検索して、そのキーの数値表現をメモリに登録する（ステップ１１２）。ステップ３２において２つのスイッチが作動中であると判断された場合には、システムは、キーが互いに対角線上であるかどうかを判断する（ステップ３４）。これは、たとえば図５および６に関して説明したアプローチを用いて行なう。次にシステムは、適切な組み合わせキーを検索する（ステップ１２０）。ステップ３６において３つ以上のスイッチが作動中である場合には、システムは、作動中のキーが組み合わせキー（たとえば図５および６に関して説明したもの）のための判断基準に従うかどうかを判断する。（組み合わせキーの第４のスイッチは、その目的のためにハードウェアが特にデザインされていない限り、確認できないことに注意されたい）。ステップ３８において組み合わせの判断基準が満足されて（かつ超過されない）場合には、ステップ１２０においてシステムは適切な組み合わせキー表現を計算する。組み合わせ判断基準を超過した場合には、システムは、ステップ４０へ進み、そこでＰＩＮ組み合わせ（米国特許出願第０９／８６２，９４８号の図３５で説明されているものなど）を評価して、一連の独立キー数値表現を出力しても良い。ステップ１６を、次のステップとしてここで示す。ステップ１６は、図９に関して説明済みである。
【００５５】
次に図１１を参照して、携帯電話２５０が、キーパッド２５２（エラストマー・キーパッド・カバーによって、隆起した独立キー領域２５４および間隙の組み合わせキー領域２５６が規定されている）と、英数字の文字を表示するためのディスプレイ２５８とを有している。各独立キー領域２５４は、スイッチ行列の関連するスイッチ（図示せず）にオーバーレイしており、隣接する組み合わせキー領域を越えて高い露出面を有して、ユーザによって指先で作動するようになっている（米国特許出願第０９／２３６，１９９号に記載されているように）。電話２５０は、本明細書で開示した方法を全て行なうように構成およびプログラムされている。
【００５６】
本発明の多くの実施形態について説明してきた。それでもやはり、本発明の趣旨および範囲から逸脱することなく、種々の変更を行なっても良いことが理解される。したがって、他の実施形態は、添付の特許請求の範囲内である。
【図面の簡単な説明】
【００５７】
【図１】間隙キーを用いたタイル型キーボードでのキー作動を決定するための第１のアルゴリズムを示す図である。
【図２】デバイス・レベルのデバウンスを有するスキャニング・アルゴリズムを示す図である。
【図３】デバイス・レベルのデバウンス・アルゴリズムの詳細を示す図である。
【図４】４つの独立キー列と７つの独立キー行からなる行列を有するＩＡＣＫキーパッドを示す図である。
【図５】図４のスイッチ行列を番号付けで表した図である。
【図６】図４のスイッチ行列を「ゴースト」行を用いて代替的に表した図である。
【図７】ＩＡＣＫキーパッド用の第２のスキャニング・アルゴリズムを示す図である。
【図８】キーパッド状態変更フィルタを用いた、ＩＡＣＫキーパッドとともに使用するための第３のアルゴリズムを示す図である。
【図９】図８のアルゴリズムのより詳細な実施形態を示す図である。
【図１０】図９の分析ステップ１８の一実施形態を示す図である。
【図１１】ＩＡＣＫキーパッドを有する携帯電話を示す図である。
【図１】
2005500600.tif 000003
【図２】
2005500600.tif 000004
【図３】
2005500600.tif 000005
【図４】
2005500600.tif 000006
【図５】
2005500600.tif 000007
【図６】
2005500600.tif 000008
【図７】
2005500600.tif 000009
【図８】
2005500600.tif 000010
【図９】
2005500600.tif 000011
【図１０】
2005500600.tif 000012
【国際公開パンフレット】
2005500600.tif 000013
2005500600.tif 000014
2005500600.tif 000015
2005500600.tif 000016
2005500600.tif 000017
2005500600.tif 000018
2005500600.tif 000019
2005500600.tif 000020
2005500600.tif 000021
2005500600.tif 000022
2005500600.tif 000023
2005500600.tif 000024
2005500600.tif 000025
2005500600.tif 000026
2005500600.tif 000027
2005500600.tif 000028
2005500600.tif 000029
2005500600.tif 000030
2005500600.tif 000031
2005500600.tif 000032
2005500600.tif 000033
2005500600.tif 000034
2005500600.tif 000035
2005500600.tif 000036
2005500600.tif 000037
2005500600.tif 000038
2005500600.tif 000039
2005500600.tif 000040
2005500600.tif 000041
2005500600.tif 000042
2005500600.tif 000043
2005500600.tif 000044
2005500600.tif 000045
2005500600.tif 000046
2005500600.tif 000047
【国際公開パンフレット（コレクトバージョン）】
2005500600.tif 000048
2005500600.tif 000049
【手続補正書】
【提出日】平成15年7月11日(2003.7.11)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
既知の配列の関連するスイッチを有する独立キー（２５４）の行列を伴うキーボード（２５２）を有するデバイスにおいて入力を決定する方法であって、隣接キーの組み合わせが組み合わせキー入力に関連し、前記方法は、第１の作動済みキーに関連する正当な組み合わせキー入力の独立キーの確認を、
所定の組の番号のそれぞれを、前記作動済みキーに関連する連続番号に付加して、前記作動済みキーに関連する正当な組み合わせ生成独立キーの連続番号を決定するステップであって、前記所定の組の番号は前記既知のスイッチ配列に基づく、ステップと、次いで、
キーと連続番号とを関連付けるテーブルにおいて、前記決定された連続番号から正当な組み合わせ生成独立キーを確認するステップと、によって行なうステップを含む方法（図５および６を参照）。
【請求項２】
第１の作動済みキーに関連する正当な組み合わせキー入力の独立キーを確認した後に、前記確認された正当な組み合わせ生成独立キーのうちの１つの作動に応答して、前記第１の作動済みキーと前記確認された正当な組み合わせ生成独立キーのうちの前記作動済みの１つとの組み合わせに関連する入力を登録するステップをさらに含む請求項１に記載の方法。
【請求項３】
正当な組み合わせ生成独立キーを確認した後に、前記確認された正当な組み合わせ生成独立キーの作動を詳細にチェックするステップをさらに含む請求項１に記載の方法。
【請求項４】
前記キー・スイッチが行および列で配列されており、関連する入力を有する正当なキー組み合わせが、対角線上で隣接するキーの組み合わせである請求項１〜３のいずれか一項に記載の方法。
【請求項５】
前記所定の組の番号が、（Ｒ＋１）および（Ｒ−１）に関連する値からなり、ここでＲは前記キー行列の行の数である、請求項４に記載の方法。
【請求項６】
正当な組み合わせ生成独立キーの作動のチェックが、前記第１の作動済みキーを確認したスキャンの結果を評価するステップを含む請求項１〜５のいずれか一項に記載の方法。
【請求項７】
前記キー行列の第１のスキャン上で前記第１の作動済みキーが確認され、前記確認された正当な組み合わせ生成独立キーの作動の詳細なチェックが、前記行列をその後にスキャンするステップを含む請求項１に記載の方法。
【請求項８】
前記確認された正当な組み合わせ生成独立キー（２５４）の作動の詳細なチェックが、前記第１の作動済みキーを含む列に隣接する単一の列のみをスキャンするステップを含む請求項７に記載の方法。
【請求項９】
キーと連続番号とを関連付ける前記テーブルが、前記キー行列のスイッチに関連しない追加の連続番号を含む請求項１〜８のいずれか一項に記載の方法（図６を参照）。
【請求項１０】
前記追加の連続番号が、数字的に、前記キー行列の対向する縁上のスイッチに関連する連続番号の間にある請求項９に記載の方法。
【請求項１１】
前記キーボードの前記独立キー（２５４）が、組み合わせキー出力に関連する対角線上の隣接キーの組み合わせに対応する隣接する独立キー間の前記キーボードの間隙領域（２５６）の露出面を越えて高い露出面を有する請求項１〜１０のいずれか一項に記載の方法。
【請求項１２】
関連するスイッチを有する独立キー（２５４）の行列を伴うキーボード（２５２）を有するデバイスにおいて入力フィードバックを与える方法であって、隣接キーの組み合わせが組み合わせキー入力に関連し、
前記方法は、
（１２）作動済みキーについて前記行列をスキャンするステップと、
（１３）スキャンされたキー状態を、前記行列の以前のスキャンからのキー状態と比較するステップと、
キー状態の変化を検出したときに、（１４）前記スキャンされたキー状態を分析するステップであって、
スキャンされたキー状態が１つの作動中キーのみを示す場合には、（１１２）前記作動中キーに関連する独立キーを登録し、
スキャンされたキー状態が、単一の組み合わせ入力に関連する複数の作動中キーを示す場合には、（１２０）前記複数の作動中キーに関連する前記組み合わせキー入力を登録するステップを含むステップと、を含む方法（図９および１０を参照）。
【請求項１３】
キー状態の変化の検出が、作動済みキーの数の変化の検出を含む請求項１２に記載の方法。
【請求項１４】
スキャンされたキー状態を前記行列の以前のスキャンからのキー状態と比較した結果、キー状態の変化が全く検出されなかった場合に応答して、前記スキャンされたキー状態の前記分析を行なうことなく、作動済みキーについて前記行列をスキャンする前記ステップを繰り返すステップをさらに含む請求項１２または１３に記載の方法。
【請求項１５】
前記スキャンされたキー状態の分析には、スキャンされたキー状態が、単一の組み合わせ入力の組み合わせに関連しない複数の作動中キーを示す場合に、（４０）格納された個人識別番号に関連する入力を登録するステップがさらに含まれる請求項１２に記載の方法。
【請求項１６】
前記スキャンされたキー状態の分析には、スキャンされたキー状態が２つの作動中キーを示す場合に、（３４）前記２つの作動中キーが互いに対角線上で隣接するかどうかを判断し、前記２つの作動中キーが互いに対角線上で隣接すると判断された場合に、（１２０）前記２つの作動中キーに関連する組み合わせキー入力を登録するステップが含まれる請求項１２に記載の方法。
【請求項１７】
前記キーボードの前記独立キー（２５４）が、組み合わせキー出力に関連する対角線上の隣接キーの組み合わせに対応する隣接する独立キー間の前記キーボードの間隙領域（２５６）の露出面を越えて高い露出面を有する請求項１２〜１６のいずれか一項に記載の方法。
【請求項１８】
関連するスイッチを有する独立キー（２５４）の行列を伴うキーボードを有するデバイスにおいて入力フィードバックを与える方法であって、隣接キーの組み合わせが組み合わせキー入力に関連し、前記方法は、
（４）作動済みキーについて前記行列をスキャンするステップと、
作動済みキーの数に対応するキー・カウントを生成するステップと、
（５）前記キー・カウントを評価して、（６）他のキー状態情報を分析するかどうかを判断するステップと、を含む方法（図８を参照）。
【請求項１９】
前記キー・カウントの評価には、前記キー・カウントを数字「１」と比較して、キー・カウントが１に等しい場合には、他のキー状態情報を分析して、どの独立キーが作動中かを決定するステップが含まれる請求項１８に記載の方法。
【請求項２０】
前記キー・カウントの評価には、前記キー・カウントを前記行列の以前のスキャンからの格納されたキー・カウントと比較して、前記キー・カウントが変化したかどうかを判断するステップが含まれる請求項１８または１９に記載の方法。
【請求項２１】
前記キーボードの前記独立キー（２５４）が、組み合わせキー出力に関連する対角線上の隣接キーの組み合わせに対応する隣接する独立キー間の前記キーボードの間隙領域（２５６）の露出面を越えて高い露出面を有する請求項１８〜２０のいずれか一項に記載の方法。
【請求項２２】
関連するスイッチを有する独立キー（２５４）の行列を伴うキーボードを有する電子デバイスであって、隣接キーの組み合わせが組み合わせキー入力に関連し、請求項１、１２、および１８のいずれか一項に記載の前記方法を実施するように構成された電子デバイス。
【国際調査報告】
2005500600.tif 000050
2005500600.tif 000051
2005500600.tif 000052