JP3243365B2 - キー入力装置 - Google Patents

キー入力装置

Info

Publication number
JP3243365B2
JP3243365B2 JP08006694A JP8006694A JP3243365B2 JP 3243365 B2 JP3243365 B2 JP 3243365B2 JP 08006694 A JP08006694 A JP 08006694A JP 8006694 A JP8006694 A JP 8006694A JP 3243365 B2 JP3243365 B2 JP 3243365B2
Authority
JP
Japan
Prior art keywords
key
input
data
priority
cpu
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.)
Expired - Lifetime
Application number
JP08006694A
Other languages
English (en)
Other versions
JPH07287631A (ja
Inventor
正隆 中筋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sharp Corp
Original Assignee
Sharp Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Sharp Corp filed Critical Sharp Corp
Priority to JP08006694A priority Critical patent/JP3243365B2/ja
Priority to US08/424,083 priority patent/US5734928A/en
Publication of JPH07287631A publication Critical patent/JPH07287631A/ja
Application granted granted Critical
Publication of JP3243365B2 publication Critical patent/JP3243365B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/02Input arrangements using manually operated switches, e.g. using keyboards or dials
    • G06F3/023Arrangements for converting discrete items of information into a coded form, e.g. arrangements for interpreting keyboard generated codes as alphanumeric codes, operand codes or instruction codes

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Input From Keyboards Or The Like (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、パーソナルコンピュー
タ等の情報処理装置や、ワードプロセッサ、電子卓上計
算機、キャッシュレジスタ、タイプライタなどにおいて
用いられるキー入力装置に関し、詳しくは、複数のキー
が同時に入力された場合に、いずれかのキーを優先して
入力キーとして処理するための技術に関する。
【0002】
【従来の技術】従来、入力手段として複数のキーを備え
た機器たとえば、パーソナルコンピュータ、ワードプロ
セッサ、電子卓上計算機、キャッシュレジスタ、タイプ
ライタなどにおいては、キーの多重押しが発生した場合
に、何らかの対応を行なうように構成されたものがあ
る。多重押しとは、同時に2個以上のキーが押されるこ
とである。
【0003】多重押しに対応するための技術として、た
とえば特開平5−197468号公報に記載されたキー
入力方法がある。このキー入力方法では、ある時点で押
下されたキーに関する情報と、次の時点で押下されたキ
ーに関する情報とを検出する。ある時点で押下されたキ
ーの情報と次の時点で押下されたキーの情報との排他的
論理和を求める。その論理演算の結果に基づいて、次の
時点で押下されたキーの中の、新たに押下されたキーが
選択される。これにより、操作者が、速いスピードで連
続してキー入力を行なっているときなどに、ある時点の
入力キーと次の時点の入力キーとが同時に押下された場
合であっても、各時点において入力されたキーを識別す
ることができる。
【0004】さらに、従来の機器には、同時に複数のキ
ーが押下された場合には、それら複数のキーの組合わせ
に対して全く別のキーコードを割当て、その別のキーコ
ードに対応する処理を行なうようにしたものがある。こ
の場合の別のキーコードに対応する処理としては、NO
P処理(未処理)が割当てられている機器が多い。
【0005】
【発明が解決しようとする課題】複数キーを備えた各種
の機器において、多重押しが発生する原因は様々である
ある。たとえば、機器が、いわゆる電子手帳型のパーソ
ナルコンピュータや、携帯型の電子卓上計算機など極め
て小型である場合、装置に設けられた個々のキーのサイ
ズが小さく、極端な場合には、操作者の指先よりもキー
のサイズが小さいことすらある。このような場合には、
操作者は、往々にして誤ってキーの多重押しをしてしま
うことがある。とりわけ、キーが所定の平面上にパネル
状に形成され、操作者の指などが接触することで押下さ
れたことになるように構成されたパネルキーである場合
には、多重押しが発生する頻度が高い。
【0006】ところで、前記公開公報に記されたキー入
力方法は、専ら、高速に連続して入力するときに発生す
る多重押しに対応するために提案されたものである。こ
の方法を前述したようにキーのサイズが小さいことが原
因で、誤って、同時に複数のキーが押下された場合に適
用しても効果的ではない。なぜなら、前述の誤入力の場
合には、前の時点で入力されたキーとの対応関係に基づ
いていずれかのキーを選択してもあまり意味がないから
である。
【0007】一方、多重押しがあった場合に、複数のキ
ーのコードに基づいて別のキーコードを割当て、NOP
処理するような機器の場合には、入力作業の能率が低下
してしまう。
【0008】本発明は、かかる実情に考え出されたもの
であり、誤って同時に複数のキーが押下された場合に、
いずれかのキーを優先して入力キーとして処理するキー
入力装置を提供することにある。
【0009】
【課題を解決するための手段】前述の目的を達成するた
めに、本発明におけるキー入力装置は、複数のキーを配
設したキーボードと、前記キーボードに含まれる各キー
が2個以上押下された際にもその押下されたことを出力
として読取るための読取手段と、前記読取手段によって
読取られた出力結果である押下されたキーが2個以上の
際にもそれぞれのキーのデータを記憶する読取出力記憶
手段と、前記読取出力記憶手段に記憶されたキーのデー
タの個数に基づいて前記キーボードにおけるキーが2個
以上押下されたか否かを検知するための複数キー入力検
知手段と、前記キーボードに配設された個々のキーに対
して唯一の優先順位を各キーについて予め記憶するキ
優先順位記憶手段と、前記キー優先順位記憶手段に記憶
されている個々のキーの優先順位を参照するキー優先順
位参照手段と、前記複数キー入力検知手段によって押下
されたキーが複数であると判断された場合に、前記キー
優先順位参照手段による参照結果に基づいて、前記読取
出力記憶手段に格納されている複数のキーのデータの中
から特定の1個のキーのデータを優先して選択する優先
キー選択手段とを含むことを特徴とする。
【0010】本発明におけるキー入力装置は、前記優先
キー選択手段は、前記読取出力記憶手段からキーのデー
タを削除する削除手段を含み、前記複数キー入力検知手
により検知された2個以上のキーに対して、その中で
優先順位が低いキーのデータを前記読取出力記憶手段か
ら前記削除手段によって順次削除し、最後に残ったキー
のデータが目的とするキーであるとして選択することを
特徴とする。
【0011】本発明におけるキー入力装置は、前記優先
キー選択手段キーの優先順位を比較する比較段を
み、前記複数キー入力検知手段によって押下されたキ
ーが複数であると判断された場合に、前記キー優先順位
参照手段によって前記読取出力記憶手段に格納されてい
る各キーのデータに対応する優先順位を前記キー優先順
位記憶手段から読み出し、前記比較手段によって比較
し、最終的に前記読取出力記憶手段に格納されている複
数のキーのデータの中で優先順位の高いキーのデータを
目的とするキーであるとして選択することを特徴とす
る。
【0012】
【0013】
【作用】本発明におけるキー入力装置の構成によれば、
複数のキーを配設したキーボードにおいて押下されたキ
ーを、読取手段はキーが2個以上押下された際にもその
押下されたことを出力として読取る。読取出力記憶手段
は、読取手段によって読み取られた出力結果である押下
されたキーが2個以上の際にもそれぞれのキーのデータ
を記憶する。複数キー入力検知手段は、読取出力記憶手
段に記憶されたキーのデータの個数に基づいてキーボー
ドにおけるキーが2個以上押下されたか否かを検知す
る。キー優先順位記憶手段は、キーボードに配設された
個々のキーに対して唯一の優先順位を各キーについて予
め記憶する。優先キー選択手段は、複数キー入力検知手
段によって押下されたキーが複数であると判断された場
合に、キー優先順位参照手段による参照結果に基づい
て、読取出力記憶手段に格納されている複数のキーのデ
ータの中から特定の1個のキーのデータを優先して選択
する。
【0014】本発明におけるキー入力装置の構成によれ
ば、優先キー選択手段は、読取出力記憶手段からキーの
データを削除する削除手段を含む。削除手段は、複数キ
ー入力検知手段により検知された2個以上のキーに対し
てその中で優先順位が低いキーのデータを読取出力記憶
手段から順次削除する。優先キー選択手段は、最後に残
ったキーのデータが目的とするキーであるとして選択
る。
【0015】本発明におけるキー入力装置の構成によれ
ば、優先キー選択手段は、キーの優先順位を比較する比
較手段を含む。複数キー入力検知手段によって押下され
たキーが複数であると判断された場合に、キー優先順位
参照手段は読取出力記憶手段に格納されている各キーの
データに対応する優先順位をキー優先順位記憶手段から
読み出す。比較手段は、この読出された優先順位を比較
する。優先キー選択手段は、最終的に比較の結果、読取
出力記憶手段に格納されている複数のキーのデータの中
で優先順位の高いキーのデータを目的とするキーである
として選択する。
【0016】
【0017】
【実施例】以下に、本発明のキー入力装置の一実施例に
ついて図面を参照して説明する。
【0018】図1〜図13を参照して本発明の第1実施
例について説明する。図1は、本発明のキー入力装置の
第1実施例に係る携帯型の情報処理装置(以下、単に
「装置」という)1の外観を示す平面図である。装置1
は、上部筐体3と下部筐体5とで構成されている。上部
筐体3には、LCD(Liquid Crystal Display)で構成
された表示部9が設けられている。下部筐体5には、操
作者が、装置1に対して操作指令を入力したり、文字等
のデータを入力したりするための入力キー群7が設けら
れている。表示部9は、操作者が入力キー群7を用いて
入力したデータと、装置1が処理したデータと、装置1
が発生させたメッセージなどを表示するためのデータ表
示領域11と、装置1の処理モードを操作者が選択する
ための表示パネルキー領域13とを含む。
【0019】入力キー群7に含まれる各キーと、表示パ
ネルキー領域13に含まれる各キーとは、操作者の指が
接触したキーを押下されたキーとして検知するように構
成されたタッチパネル型である。ただし、表示パネルキ
ー領域13に含まれるキーは、表示部9の表示出力中に
のみ表示される。一方、入力キー群7の各キーは、下部
筐体5の上面に樹脂等で常設されたキーである。
【0020】図1は、操作中の装置1の状態の一例であ
る。上部筐体3と下部筐体5との境界部分は蝶番で連結
されている。上部筐体3は、下部筐体5に対して蝶番を
中心にして所定範囲で回動可能に構成されている。上部
筐体3を下部筐体5の上面側に蓋状に被せ、さらに、上
部筐体3と下部筐体5とにそれぞれ設けられた係合部1
4a,14bを係合させることにより、装置1を収納ま
たは持運びが容易な状態にすることができる。
【0021】図2は、表示部9の詳細構成を示す図であ
る。表示部9の表示パネルキー領域13には、装置1が
実行する各種の機能を選択するためのモード設定キー群
15が表示される。モード設定キー群15の中に含まれ
る各キーを選択して押下することにより、そのキーに対
応する機能が実行される。
【0022】装置1の機能としては、たとえば以下のも
のがある。第1の機能は、カレンダーを表示する機能
(以下、単に「カレンダー」という)である。第2の機
能は、スケジュールデータを入力および編集する機能
(以下、単に「スケジュール」という)である。第3の
機能は、複数の住所や電話番号等のデータを入力および
編集する機能(以下、単に「アドレス帳」という)であ
る。第4の機能は、メモデータを入力および編集する機
能(以下、単に「メモ」という)である。第5の機能
は、入力された数値データに基づいた計算を行なう機能
(以下、単に「計算」という)である。第6の機能は、
時刻を表示する機能(以下、単に「時計」という)であ
る。
【0023】モード設定キー群15は、メモモードキー
17を含む。メモモードキー17は、前述の「メモ」を
実行するためのキーである。本実施例では、このメモモ
ードキー17が押下された場合のメモデータ入力時を例
にしてキー入力装置の構成を説明する。
【0024】図3は、入力キー群7の詳細構成を示す平
面図である。入力キー群7は、装置1の電源を入れるた
めの電源ONキー21aと、装置1の電源を切るための
電源OFFキー21bとを含む。さらに、入力キー群7
は、前述の各機能の実行時に、操作者が文字情報を入力
するための文字入力キー22を含む。文字入力キー22
を用いて入力されるデータの中には、平仮名、片仮名、
漢字、アルファベット、各種の記号などのほか、数値情
報などをも含まれる。
【0025】文字入力キー22は、平仮名の「あ」の文
字を入力するための文字情報1入力用キー23と、平仮
名の「い」を入力するための文字情報2入力用キー24
と、平仮名の「か」を入力するための文字情報3入力用
キー25と、平仮名の「き」を入力するための文字情報
4入力用キー26とを含む。以下の説明では、これら4
個の入力用キー23〜26が同時に押下(タッチ)され
た場合を例にして説明する。
【0026】図4は、装置1の機能ブロック図である。
装置1は、CPU31と、入力キー群7を含む入力部3
3と、CPU31から入力部33へ信号を出力するため
の複数の出力ポートの集合である出力ポート群35と、
入力部33からの信号をCPU31に入力するための複
数の入力ポートの集合である入力ポート群37とを含
む。
【0027】さらに、装置1は、各種のデータを一時的
に記憶するためのRAM(Random Access Memory)39
と、装置1のキー入力処理や各種の機能を実行するため
に必要なデータを予め記憶するためのROM(Read Onl
y Memory)41とを含む。RAM39は、電池43によ
りバックアップされることにより、装置1の電源がOF
Fの状態であるときも記憶内容を保持できる。
【0028】さらに、装置1は、データ表示領域11を
含む表示部9(図1参照)と、データ表示領域11に表
示させるデータを一時的に記憶するための表示バッファ
43を備えた表示制御部(LCDドライバ)45とを含
む。
【0029】CPU31について説明する。CPU31
は、内部に読出部51と比較部53とを含む。読出部5
1は、ROM41が予め記憶しているデータおよびRA
M39に記憶されたデータをROM41およびRAM3
9から読出するための手段である。比較部53は、その
時点で実行されているプログラムに基づいて各種のデー
タを比較するための手段である。
【0030】RAM39の記憶内容について説明する。
RAM39は、記憶領域として、入力キーコード設定部
61と、キーコード部63と、バッファ部65とを含
む。入力キーコード設定部61は、入力キー群7に含ま
れる複数のキーのうち、同時に押下されたすべてのキー
のキーコードデータを一時的に記憶するための領域であ
る。キーコード部63は、入力キーコード設定部61に
記憶されている複数のキーコードの中から、後述する各
種のプログラム処理によって入力キーとして選択された
キーのコードデータを記憶するための領域である。バッ
ファ部65は、キーコード部63に記憶されているキー
コードに対応するキャラクタデータを一時的に記憶する
ための領域である。
【0031】ROM41の記憶内容について説明する。
ROM41は、データ部71と、プログラム部73とを
含む。
【0032】データ部71は、キャラクタデータ81
と、キーコードデータ83と、有効キー情報85と、キ
ャラクタデータコード情報86とを含む。キャラクタデ
ータ81は、文字のドットデータの集合である。CPU
31は、RAM39のキーコード部63に記憶されてい
るキーコードが文字情報を表わすコードである場合に、
そのキーコードに対応するキャラクタデータコードをキ
ャラクタデータコード情報86より読出してバッファ部
65に記憶させる。そして、CPU31は、バッファ部
65からキャラクタデータコードを読出し、そのコード
データに該当するドットデータを読出して表示制御部4
5の表示バッファ43に出力する。続いて、表示制御部
45が、表示バッファ43内に格納されているドットデ
ータに基づいて表示部9を駆動制御することにより、デ
ータ表示領域11にキーコード部63に記憶されていた
キーコードに対応する文字の画像が表示される。
【0033】キャラクタデータコード情報86は、キャ
ラクタデータ81中の各1データに対応するコードデー
タが格納されている。たとえば、ASCIIコードやJ
ISコードなどがあげられる。
【0034】キーコードデータ83は、出力ポート群3
5に含まれる出力ポートと入力ポート群37に含まれる
入力ポートとの組合わせにより特定されるキーのコード
データである。CPU31は、出力ポート群35へ信号
を出力し、その信号が入力部33を経て入力ポート群3
7から入力されて戻ってきたその結果に基づいて押下さ
れたキー位置を特定する。CPU31は、押下位置に該
当するキーのコードデータをキーコードデータ83を参
照して得る。
【0035】有効キー情報85は、入力キー群7に含ま
れる各キーの優先順位を定めたデータである。入力キー
群7において同時に複数のキーが押下された場合には、
CPU31は、まず、有効キー情報85を参照して押下
された各キーの優先順位を読出す。CPU31は、入力
された複数のキーのうちの最も優先順位が高いキーを選
択し、そのキーのみが入力されたものとして処理する。
有効キー情報85の構成については後述する。
【0036】プログラム部73は、装置1において実行
される各種のプログラムを含む。プログラムとしては、
メモモードプログラム91と、キーコード変換プログラ
ム92と、入力キーコード設定プログラム93と、キー
コード選択プログラム94と、表示制御用プログラム9
9とがある。
【0037】メモモードプログラム91は、メモモード
キー17(図2参照)が入力された場合に、実行される
アプリケーションプログラムである。なお、装置1は、
実行可能な機能として「メモ」のほかにカレンダーやス
ケジュールなどをも含む。これらの機能に対応するアプ
リケーションプログラムもプログラム部73に含まれる
が、以下の説明において特に必要ではないのでその図示
を省略した。
【0038】キーコード変換プログラム92と入力キー
コード設定プログラム93とキーコード選択プログラム
94とは、装置1におけるキー入力処理を行なうための
プログラムである。これらのプログラムの詳細について
は後述する。
【0039】表示制御用プログラム99は、CPU31
がキーコード部63に記憶されているキーコードに対応
したデータなどを表示部9のデータ表示領域11に表示
する制御を行なうためのプログラムである。
【0040】表示部9について説明する。表示部9は、
たとえばドットマトリクス型のLCDを含む。CPU3
1は、表示制御用プログラム99に基づいて、RAM3
9のバッファ部65に記憶されているドットデータを読
出し、表示バッファ43に出力するとともに、表示制御
部45に表示指令信号を出力する。表示制御部45は、
表示指令信号に応答して表示バッファ43内のドットデ
ータを表示部9のドットデータ表示領域11に表示す
る。
【0041】次に、入力部33と、出力ポート群35お
よび入力ポート群37との詳細構成について図5を参照
して説明する。なお、本実施例では、入力キー群7が、
図3における縦方向にM行、図3における横方向にN列
のマトリクス状に配設された、M×N=L個のキーを含
む場合を例示する。
【0042】図5を参照して、出力ポート群35は、入
力キー群7のキーの行数に対応した第1〜第Mの出力ポ
ート121〜127を含む。入力ポート群37は、入力
キー群7のキーの列数に対応した第1〜第Nの入力ポー
ト131〜135を含む。第1〜第Mの出力ポート12
1〜127には、それぞれ入力部33における図5の横
方向の信号線が接続されている。また、第1〜第Nの入
力ポート131〜135には、それぞれ入力部33にお
ける図5の縦方向の信号線が接続されている。
【0043】入力部33においては、出力ポート群35
に接続された横方向の信号線と入力ポート群37に接続
された縦方向の信号線とが格子状に配設されている。入
力キー群7に含まれる各キーが、格子の交点に対応する
位置に形成されている。図5は、平仮名の「あ」、
「い」、「か」、「き」の文字を入力するための文字情
報1〜4の入力用キー23〜26の構成を例示してい
る。
【0044】入力キー群7に含まれるキーが押下される
と、そのキーに対応する格子の交点において横方向の信
号線と縦方向の信号線とが電気的に接続される。たとえ
ば、文字情報1(あ)の入力用キー23が押下される
と、第3の出力ポート123に接続された信号線と第1
の入力ポート131に接続された信号線とが電気的に接
続される。
【0045】CPU31は、入力キー群7におけるどの
キーが押下されているかを検出する場合には、次のよう
にする。CPU31は、第1〜第Mの出力ポート121
〜127から所定の順序で、かつ異なるタイミングで順
次信号を出力する。CPU31は、各出力ポートから信
号を出力するたびに、第1〜第Nの入力ポート131〜
135からの信号の入力状態を調べる。いずれかのキー
が押下されていれば、CPU31がそのキーに対応する
出力ポートから信号を出力したときに、そのキーに対応
する入力ポートから信号がCPU31に入力される。こ
れにより、CPU31は、押下されているキーの位置を
検出する。この検出のことを以下の説明では、キースキ
ャン検出という。
【0046】図6は、ROM41のデータ部71に記憶
されている有効キー情報85の構成を示す説明図であ
る。有効キー情報85は、入力キー群7に含まれるM×
N=L個のキーの各々に対応するキーコードを、優先順
位の高いものから順に配列して記憶している。各キーコ
ードには、優先順位データが対応付けて記憶されてい
る。CPU31は、該当するキーコードを参照データと
してそのキーコードの優先順位を得る。
【0047】図において、平仮名の「あ」すなわち文字
情報1の入力用キー23に対応するキー情報1コード
は、入力キー群7の中で最も高い優先順位(入力キー群
7の中で第1位の優先順位)を有する。次に優先順位が
高いのは平仮名の「い」すなわち文字情報2の入力用キ
ー24に対応するキーコードである(入力キー群7の中
で第2位の優先順位)。また、平仮名の「か」と「き」
すなわち文字情報3,4の入力用キー25,26に対応
するキーコードは、それぞれ入力キー群7の中で第15
位と第16位の優先順位に設定されている。その結果、
入力キー群7において、平仮名の「あ」、「い」、
「か」および「き」の中で最も優先順位が高いのは
「あ」であることがわかる。
【0048】図7は、ROM41のデータ部71に記憶
されているキーコードデータ83の構成を示す説明図で
ある。キーコードデータ83は、第1〜第Mの出力ポー
トの各々と、第1〜第Nの入力ポートの各々との組合わ
せに対応するキーコードを所定の順序で記憶している。
図7は、その配列の一例である。CPU31は、図5を
参照して説明したキースキャン検出の結果、信号入力が
あった出力ポートと入力ポートとの組合わせをキーコー
ドデータ83内で検索し、押下されたキーのコードデー
タを得る。
【0049】たとえば、第1の出力ポート121から信
号が出力されたときに、第1の入力ポート131から信
号が入力された場合には、キーコードデータ83の先頭
データが参照され、キーコード「01」のデータが得ら
れる。また、第2の出力ポート123から信号が出力さ
れたときに第2の入力ポート133から信号が入力され
たときには、キーコード「12」のデータが得られる。
【0050】次に、図8〜図13を参照して、装置1に
おけるキー入力処理について説明する。
【0051】図8は、装置1におけるメモモード実行時
の処理手順を示すフローチャートである。操作者が電源
ONキー21a(図3参照)を押下すると(S1)、表
示部9内にデータ表示領域11と表示パネルキー領域1
3とが表示される。操作者が、メモモードキー17(図
2参照)を押下すると(S2)、CPU31は、ROM
41のメモモードプログラム91を起動させる。メモモ
ードプログラム91が実行されることにより、表示部9
内のデータ表示領域11上に図9(a)に示すようなメ
モモードイニシャル画面が表示される(S3)。
【0052】操作者は、メモモードイニシャル画面に表
示された「メモ?」のメッセージに従ってメモデータを
入力するために入力キー群7(図3参照)の中のいずれ
かのキーを順次押下する(S4)。操作者によりいずれ
かのキーが押下されると、CPU31は、キーコード変
換プログラム92を起動させてキーコード変換処理を行
なう(S5)。CPU31は、キーコード変換処理を行
なうことにより、押下されたキーに対応するキーコード
を得る。なお、キーコード変換処理の詳細については後
述する。
【0053】次に、CPU31は、得られたキーコード
が文字情報に対応するコードであるか否かを判断する
(S6)。CPU31は、キーコードが文字情報を表わ
すコードであれば(S6にてYES)、キーコード部6
3に記憶されているキーコードに該当するキャラクタデ
ータコードをキャラクタデータコード情報86から読出
す(S7)。そして、CPU31は、読出したデータコ
ードをバッファ部65に格納する(S8)。次に、CP
U31は、バッファ部65に記憶されているキャラクタ
データコードに該当するドットデータをキャラクタデー
タ81から読出し、表示指令信号とともに表示制御部4
5に出力することにより、ドットデータを表示部9に表
示させる(S9)。これらS7〜S9の処理は、CPU
31が、ROM41の表示制御用プログラム99に従っ
て行なう。
【0054】入力されたキーに対応するドットデータ
(文字画像)が表示部9のデータ表示領域11に表示さ
れた状態を図9(b)に示す。図では、文字情報1
(あ)の入力用キー23が押下され、その入力用キー2
3に対応する「あ」の文字画像が表示されている。
【0055】一方、S6にてキーコードが文字情報を表
わすコードでなければ(S6にてNO)、CPU31
は、キーコードがモード終了キーのコードであるか否か
を判断する(S10)。CPU31は、キーコードがモ
ード終了キーのコードでなければ(S10にてNO)、
そのキーコードが表わす各キーに対応する処理を実行す
る(S11)。ここで各キーに対応する処理とは、入力
キー群7における文字情報入力用キー以外のキーによっ
て指定される処理である。たとえば、図3の「削除」キ
ーや「後退」キー、または「変換」キーなどが押下され
た場合の処理である。押下されたキーに対応する処理の
実行が完了すれば、再びキー入力待ちとなる(S4)。
【0056】また、S9にてキーコードがモード終了キ
ーのコードであれば(S10にてYES)、CPU31
は、それまでに入力されているメモデータをRAM39
内のメモデータ記憶領域(図示せず)に記憶させ(S1
2)、メモモードを終了する。
【0057】図10は、キーコード変換処理の処理手順
を示すフローチャートである。キーコード変換プログラ
ム92が起動すると、CPU31は、第1の出力ポート
121(図5参照)へ信号を出力する(S101)。次
に、CPU31は、第1の出力ポート121への信号出
力に対する第1〜第Nの入力ポート131〜135の入
力状態に基づいて入力キーコード設定処理を行なう(S
102)。入力キーコード設定処理とは、前述したよう
に、入力ポートからの信号入力状態に基づいて押下され
ているキーの位置を求め、そのキーに対応するキーコー
ドをキーコードデータ83(図7参照)を参照して求め
て入力キーコード設定部61に格納する処理である。な
お、入力キーコード設定処理の詳細については後述す
る。
【0058】CPU31は、第1の出力ポート121に
対する入力キーコード設定処理が終了すれば、続いて、
第2の出力ポートへ信号を出力し(S103)、第2の
出力ポートへの信号出力に対する第1〜第Nの入力ポー
ト131〜135からの信号入力状態に基づいて、入力
キーコード設定処理を行なう(S104)。その後、C
PU31は、S103,S104の処理を第3の出力ポ
ート123から第Mの出力ポート127までに対して順
次繰り返す。
【0059】入力キーコード設定処理が完了すれば、キ
ースキャン検出時において押下されていたすべてのキー
のコードデータがRAM39の入力キーコード設定部6
1に設定される。CPU31は、入力キーコード設定部
61にデータがあるか否かを判断する(S105)。C
PU31は、入力キーコード設定部61にデータがなけ
れば(S105にてNO)、キー入力がなかったと判定
し(S106)、そのままプログラムを終了する。
【0060】CPU31は、入力キーコード設定部にデ
ータがあれば(S105にてYES)、設定されている
データが複数であるか否かを判断する(S107)。C
PU31は、設定されているデータが複数であれば(S
107にてYES)、キーコード選択処理を行なう(S
108)。キーコード選択処理とは、入力キーコード設
定部61に設定されている複数のキーのコードデータの
中からいずれかのキーのコードデータを入力キーのコー
ドデータとして選択するための処理である。この処理に
より、入力キー群7において複数のキーが同時に押下さ
れている場合に、その複数のキーのうちのいずれかのキ
ーが選択される。以降の処理において、その選択された
キーのみが押下されていたものとみなして処理される。
なお、キーコード選択処理の詳細については後述する。
次に、CPU31は、キーコード選択処理によって選択
されたキーコードをキーコード部63(図4参照)に格
納する(S109)。
【0061】一方、CPU31は、入力キーコード設定
部に設定されているデータが1個であれば(S107に
てNO)、その設定されているキーコードデータをキー
コード部63に格納する(S110)。CPU31は、
S109またはS110の処理によりキーコードデータ
のキーコード部63への格納が完了すれば、プログラム
を終了する。
【0062】図11は、入力キーコード設定処理の処理
手順を示すフローチャートである。同図に示す処理手順
は、図10におけるS102とS104との詳細であ
り、入力キーコード設定プログラム93(図4参照)が
起動されることにより実行される。CPU31は、キー
スキャン検出を行なうために、第1〜第Mの出力ポート
121〜127の各々に対して信号出力を行なうたび
に、入力キーコード設定プログラム93を起動させる。
【0063】入力キーコード設定プログラム93が起動
すると、CPU31は、第1の入力ポート121からの
入力信号があるか否かを判断する(S301)。CPU
31は、第1の入力ポートから入力信号があれば(S3
01にてYES)、該当するキーコードをROM41の
データ部71に含まれるキーコードデータ83(図7参
照)から読出部51に読出す(S302)。ここで言う
該当するキーコードとは、この入力キーコード設定処理
が行なわれるときに信号が出力された出力ポートと、第
1の入力ポート131との組合わせに対応するキーコー
ドのことである。たとえば、入力キーコード設定処理
が、図10におけるS102にて実行された場合には、
S302における該当するキーコードは、図7より第1
の出力ポート121と第1の入力ポート131とが電気
的に接続された状態となった場合に対応する「01」の
コードデータとなる。
【0064】次に、CPU31は、読出部51に読出さ
れたキーコードを入力キーコード設定部61に格納する
(S303)。そして、CPU31は、S304に移
り、第2の入力ポートについての処理を行なう。
【0065】一方、CPU31は、第1の入力ポート1
21からの入力信号がなければ(S301にてNO)、
そのままS304に移り、第2の入力ポートについての
処理を行なう。
【0066】CPU31は、第2の入力ポートからの入
力信号があるか否かを判断する(S304)。CPU3
1は、第2の入力ポートからの入力信号があれば(S3
04にてYES)、S302と同様に、第2の入力ポー
トに該当するキーコードをROM41のキーコードデー
タ83から読出部51に読出す(S305)。続いて、
CPU31は、読出部51に読出したキーコードを入力
キーコード設定部61に格納する(S306)。その
後、CPU31は、第3の入力ポートについての処理を
行なう。
【0067】一方、第2の入力ポートからの入力信号が
なければ(S304にてNO)、CPU31は、そのま
ま第3の入力ポートについての処理を行なう。
【0068】CPU31は、S304〜S306の処理
を第3〜第Nの入力ポートについて順次繰り返した後、
プログラムを終了する。これにより、入力キー群7内の
押下されていたすべてのキーのコードが入力キーコード
設定部61に格納される。
【0069】図12は、キーコード選択処理の処理手順
を示すフローチャートである。同図に示す処理手順は、
図10におけるS108の詳細であり、キーコード選択
プログラム94(図4参照)が起動されることにり行な
われる。CPU31は、図10のS107にて入力キー
コード設定部に設定されているデータが複数であると判
断すれば(S107にてYES)、キーコード選択プロ
グラム94を起動する。
【0070】キーコード選択プログラム94が起動する
と、CPU31は、ROM41のデータ部71に含まれ
る有効キー情報85を読出部51に読出す(S40
1)。CPU31は、読出部51に読出した有効キー情
報(図6参照)の内容に基づいて比較部53にて入力キ
ーコード設定部61内の複数のキーコードの優先順位を
比較する(S402)。このように複数のキーコードの
優先順位を比較する処理のことを優先順位比較処理とい
う。優先順位比較処理の詳細については後述する。次
に、CPU31は、優先順位比較処理により最も優先順
位が高いキーコードを選択キーコードとし(S40
3)、プログラムを終了する。
【0071】図13(a)は、優先順位比較処理の処理
手順を示すフローチャートである。同図に示す手順は図
12のS402の詳細である。また、図13(b)は、
入力キーコード設定部61の設定状態の一例を示す説明
図である。入力キーコード設定部61では、図示したよ
うに設定されたキーコードデータが、各々の相対アドレ
スがデータ番号となるように記憶されている。
【0072】図13(a)において、優先順位比較処理
が開始されると、CPU31は、2つの変数X,Yのそ
れぞれにキーコードデータのデータ番号1および2をセ
ットする(S501)。次に、CPU31は、変数Xと
変数Yとにセットされているデータ番号に該当するキー
コードの優先順位を有効キー情報85を参照して求める
(S502)。CPU31は、変数Xにセットされてい
るデータ番号のキーコードの優先順位が変数Yにセット
されているデータ番号のキーコードの優先順位よりも大
きくなければ(S503にてNO)、変数Yにセットさ
れているデータ番号を変数Xにセットする(S50
4)。一方、CPU31は、変数Xのデータ番号のキー
コードの優先順位が変数Yのデータ番号のキーコードの
優先順位よりも高ければ(S503にてYES)、その
まま次の処理を行なう。
【0073】次に、CPU31は、変数Yにセットされ
ているデータが最終データであるか否かを判断する(S
505)。CPU31は、変数Yのデータが最終データ
でなければ(S505にてNO)、変数Yにセットされ
ているデータ番号を1加算し(S506)、S502か
らの処理を繰り返す。このS502〜S506の処理が
繰り返されることにより、その時点で最も優先順位の高
いキーコードのデータ番号が変数Xにセットされる。そ
して、その変数Xのデータ番号に対応するキーコードに
対して、変数Yにセットされているデータ番号に対応す
るキーコードの優先順位が順次比較される。
【0074】CPU31は、S505にて変数Yにセッ
トされているデータ番号が最終データの番号であれば
(S505にてYES)、比較処理を終了する。その時
点で変数Xにセットされているデータ番号に対応するキ
ーコードが最優先キーコードとして選択され(S50
7)、優先順位比較処理は終了する。
【0075】次に、本実施例の構成と請求項記載の構成
との対応について説明する。前記入力キー群7により、
複数のキーを配設したキーが構成されている。前記CP
U31と出力ポート群35と入力ポート群37とキーコ
ードデータ83と、キーコード変換プログラム92によ
る図10のS101〜S104の処理を行なう部分とに
より、キースキャン手段が構成されている。前記CPU
31と、キーコード変換プログラム92における図10
のS105とS107との処理を行なう部分とにより、
複数キー入力検知手段が構成されている。前記有効キー
情報85により、キー優先順位記憶手段が構成されてい
る。前記CPU31と、キーコード選択処理プログラム
94とにより、キー選択手段が構成されている。
【0076】前記CPU31と、キーコード選択処理プ
ログラムにおける図12のS401の処理を行なう部分
とにより、キー優先順位記憶手段を参照するための参照
手段が構成されている。前記CPU31の比較部53
と、キーコード選択処理プログラム94の図12のS4
02および図13に示した処理を行なう部分とにより、
参照手段の出力に基づいて優先すべきキーを選択するた
めの優先キー選択手段が構成されている。
【0077】前記CPU31と、キーコード変換プログ
ラム92の図10におけるS101〜S104および図
11におけるS301,S304との処理を行なう部分
とにより、キーボードに含まれる各キーからの出力を読
取るための読取手段が構成されている。前記入力キーコ
ード設定部61により、読取手段からの出力を記憶する
ための読取出力記憶手段が構成されている。また、図1
0におけるS107の処理が、複数キー入力検知手段に
よる読取出力記憶手段の記憶内容を参照して、記憶され
たデータが複数であることを検知することに対応する。
【0078】以上説明したように本実施例に係る情報処
理装置1によれば、入力キー群7に含まれる複数のキー
が同時に押下された場合であっても、有効キー情報85
に予め記憶されている各キーの有効性の優先順位に基づ
いて、いずれかひとつのキーのみが押下されたものとし
て処理される。
【0079】次に、図14〜図22を参照して、本発明
のキー入力装置の第2実施例について説明する。図14
は、本発明のキー入力装置を用いた第2実施例に係る携
帯型の情報処理装置(以下、単に「装置」という)2の
機能構成を示すブロック図である。なお、装置2の各部
について、第1実施例に示した装置1と同様の機能を有
するものについては同一の符号および名称を付し、その
詳細な説明は省略する。
【0080】装置2における装置1との異なる部分につ
いてのみ説明する。CPU31は、読出部51と比較部
53とのほかフラグ部54を含む。フラグ部54は、キ
ー入力フラグ55と多重押しフラグ56とを含む。これ
らのフラグの用途については後述する。
【0081】装置2のRAM39は、入力キーコード設
定部61に代えて入力ポート状態設定部62を含む。入
力ポート状態設定部62は、CPU31が読出した入力
ポート群37の各入力ポートからの信号入力状態を設定
するための記憶領域である。
【0082】さらに、装置2のROM41のプログラム
部73は、装置1のキーコード変換プログラム92と入
力キーコード設定プログラム93とキーコード選択プロ
グラム94とに代えて、キーコード変換プログラム95
と入力ポート選択プログラム96と入力ポート最終選択
プログラム97と最優先ポート選択プログラム98とを
含む。各プログラムの処理手順については後述する。
【0083】図15は、入力ポート状態設定部62にお
ける各入力ポートのデータのセット状態の一例を示す説
明図である。本実施例では、出力ポートと入力ポートと
の組合わせの各々について、入力ポートからの信号が検
出されたか否かを示すデータを記憶し、このデータを相
互に比較して最優先キーを選択する。このとき、出力ポ
ートと入力ポートとの組合わせのそれぞれに対応するデ
ータを格納するのが入力ポート状態設定部62である。
【0084】入力ポート状態設定部62は、第1〜第M
の出力ポート121〜127の各々についての第1〜第
Nの入力ポート131〜135から入力信号があったか
否かを示すためのデータを記憶する。「1」が格納され
ていれば、そのアドレスに対応する出力ポートと入力ポ
ートとの組合わせに対応する入力信号があり、対応する
キーが押下されていたことを示す。この状態をセット状
態という。また、「0」が格納されている場合には、そ
のアドレスに対応する出力ポートと入力ポートとの組合
わせに対応する入力信号がなく、対応するキーが押下さ
れていない状態を示す。この状態をリセット状態とい
う。入力ポート状態設定部62は、M×N=L個のすべ
てのキーに対応するアドレスを有し、各アドレスに
「1」(セット)または「0」(リセット)のデータを
格納する。
【0085】次に、図16〜図22を参照して、第2実
施例における装置2の処理手順について説明する。な
お、第2実施例においても前述と同様にメモモード実行
時を例にして説明する。メモモードのメイン処理の手順
は、図8に示した手順と同様であるので説明を省略す
る。
【0086】図16は、装置2におけるキーコード変換
プログラム95の処理手順を示すフローチャートであ
る。同図に示す処理手順は、図10における処理手順を
変形させたものである。キーコード変換プログラム95
が起動すると、CPU31は、第1の出力ポート121
へ信号を出力する(S201)。CPU31は、第1〜
第Nの入力ポート131〜135のいずれかから入力信
号があるか否かを判断する(S202)。CPU31
は、いずれかの入力ポートから入力信号があれば(S2
02にてYES)、入力ポート状態設定部62内の第1
の出力ポートと入力信号があったすべての入力ポートと
の組合わせに対応するアドレスに「1」を書込んで、セ
ット状態とする(S203)。なお、入力ポート状態設
定部62の各アドレスのデータは、キーコード変換プロ
グラム95の起動直後に予めリセット状態にされる。
【0087】その後、CPU31は、入力ポート選択処
理を行なう(S204)。入力ポート選択処理とは、C
PU31が入力ポート群37に含まれる各入力ポートか
らの信号入力の有無を調べ、さらに、複数の入力ポート
からの信号入力があった場合には、そのうちのいずれか
の入力ポートのみを優先順位に従って選択するための処
理である。その詳細については図17を参照して後述す
る。CPU31は、入力ポート選択処理が終了すれば、
S205に移り、第2の出力ポートについての処理を行
なう。一方、CPU31は、S202にていずれの入力
ポートからも入力信号がなければ(S202にてN
O)、そのままS205に移る。
【0088】CPU31は、第2の出力ポートへ信号を
出力する(S205)。CPU31は、いずれかの入力
ポートから入力信号があるか否かを判断する(S20
6)。CPU31は、第1の出力ポートと同様に、入力
ポート状態設定部62において第2の出力ポートと入力
信号があったすべての入力ポートとの組合わせに対応す
るアドレスに「1」を書込み、セット状態とする(S2
07)。その後、CPU31は、第2の出力ポートにつ
いての入力ポート選択処理を行なう(S208)。一
方、CPU31は、第2の出力ポートへ信号を出力した
ときに、いずれの入力ポートからも入力信号がなければ
(S206にてNO)、そのまま次の処理を行なう。
【0089】CPU31は、S201〜S204または
S205〜S208の処理を第3〜第Mの出力ポートの
それぞれについて順次繰り返す。CPU31は、すべて
の出力ポートについての処理が終了すれば、続いて、入
力ポート状態設定部62のセット状態を参照し、セット
状態のデータにあるものが存在するか否かを判断する
(S210)。ここで、CPU31は、入力ポート状態
設定部62において出力ポートと入力ポートとの組合わ
せに対応するアドレスのいずれにも「1」(セット)が
記憶されていない場合には(S210にてNO)、キー
入力がなかったものと判定し(S211)、プログラム
を終了する。
【0090】一方、CPU31は、入力ポート状態設定
部62の中のいずれかのアドレスに「1」(セット)の
データが記憶されていれば(S210にてYES)、続
いて、そのセット状態となっているアドレスが複数ある
か否かすなわちキー入力において多重押しがあったか否
かを判断する(S212)。CPU31は、セット状態
となっているアドレスが複数であれば(S212にてY
ES)、入力ポート最終選択処理プログラム97を起動
し、入力ポート最終選択処理を行なう(S213)。
【0091】入力ポート最終選択処理とは、この時点で
入力ポート状態設定部62において複数のアドレスに
「1」がセットされている場合に、その中のいずれかの
出力ポートと入力ポートとの組合わせを優先順位に従っ
て選択して、最優先キーを選択するための処理である。
入力ポート最終選択処理の詳細については図20を参照
して後述する。
【0092】CPU31は、入力ポート最終選択処理が
終了すれば、選択された出力ポートと入力ポートとの組
合わせに該当するキーコードをキーコード部63に格納
する(S214)。
【0093】一方、CPU31は、S212にて入力ポ
ート状態設定部62においてただ1つのアドレスのみが
セット状態であれば(S212にてNO)、そのアドレ
スに対応する出力ポートと入力ポートとの組合わせに対
応するキーコードをS214にてキーコード部63に格
納する。CPU31は、キーコード部63へのキーコー
ドの格納が終了すれば、プログラムを終了する。
【0094】図17は、入力ポート選択処理の処理手順
を示すフローチャートである。同図に示す処理手順は、
図16のS204とS208との詳細であり、入力ポー
ト選択処理プログラム96を起動することにより行なわ
れる。CPU31は、入力ポート選択処理プログラムが
起動すると、ROM41のデータ部71から有効キー情
報85を読出す(S501)。次に、CPU31は、入
力ポート状態設定部62においてセット状態となってい
る入力ポートの番号を全て読出し、該出力ポートに対す
る読出した入力ポート番号に対応するキーコードを全て
キーコードデータ83を参照して読出す。CPU31
は、読出したキーコードの優先順位を有効キー情報85
を参照して読出し、比較部53において各キーの優先順
位を比較する(S502)。この比較処理を入力ポート
比較処理という。CPU31は、入力ポート比較処理が
終了すれば、最優先とされた入力ポート以外のポートの
データをリセット状態にする(S503)。
【0095】図18と図19とは、入力ポート比較処理
の処理手順を示すフローチャートである。同図に示す処
理手順は、図17のS502の詳細であり、入力ポート
選択処理プログラムによって行なわれる処理である。C
PU31は、入力ポート比較処理が開始されると、変数
Xと変数Yとのそれぞれに、入力ポート番号1および2
をセットする(S601)。次に、CPU31は、フラ
グ部54におけるキー入力フラグ55と多重押しフラグ
56(図14参照)とをそれぞれリセットする(S60
2)。
【0096】次に、CPU31は、変数Xにより示され
る入力ポートから入力信号があるか否かを判断する(S
603)。CPU31は、変数Xにより示される入力ポ
ートから入力信号があれば(S603にてYES)、キ
ー入力フラグ55をセットする(S606)。次に、C
PU31は、変数Yにより示される入力ポートから入力
信号があるか否かを判断する(S607)。CPU31
は、変数Yにより示される入力ポートから入力信号があ
れば(S607にてYES)、多重押しフラグ56をセ
ットする(S608)。
【0097】そして、CPU31は、変数Xにより示さ
れる入力ポートと変数Yにより示される入力ポートとの
それぞれの対応するキーコードをキーコード83より求
め、さらに、各キーコードのキーの優先順位を有効キー
情報85を参照して比較する(S609)。CPU31
は、変数Xにより示される入力ポートの優先順位が変数
Yにより示される入力ポートの優先順位よりも大きくな
ければ(S610にてNO)、変数Yにより示される入
力ポートの番号を変数Xに代入する(S611)。CP
U31は、変数Xにより示される入力ポートの優先順位
が変数Yにより示される入力ポートの優先順位よりも大
きければ(S610にてYES)、そのまま次に進む。
【0098】次に、CPU31は、変数Yにより示され
る入力ポートが最終入力ポートであるか否かを判断する
(S612)。CPU31は、変数Yにより示される入
力ポートが最終入力ポートでなければ(S612にてN
O)、変数Yを1加算した後(S613)、S607に
戻り、同様の処理を繰り返す。
【0099】一方、CPU31は、S603にて変数X
により示される入力ポートからの入力信号がなければ
(S603にてNO)、変数Yが最終入力ポート番号で
あるか否かを判断する(S604)。CPU31は、変
数Yが最終入力ポート番号でなければ(S604にてN
O)、変数Xと変数Yとをそれぞれ1ずつ加算し(S6
05)、S603の処理に戻る。
【0100】また、CPU31は、S612にて変数Y
が最終入力ポートの番号と等しければ(S612にてY
ES)、キー入力フラグ55がセットされているか否か
を判断する(S614)。CPU31は、キー入力フラ
グがセットされていれば(S614にてYES)、続い
て、多重押しフラグ56がセットされているか否かを判
断する(S616)。CPU31は、多重押しフラグ5
6がセットされていれば(S616にてYES)、その
時点で変数Xにより示される入力ポートを最優先入力ポ
ートとして選択し(S618)、プログラムを終了す
る。
【0101】また、CPU31は、S604にて変数Y
が最終入力ポート番号であった場合(S604にてYE
S)と、S614にてキー入力フラグ55がセットされ
ていない場合(S614にてNO)とについては、いず
れの入力ポートからも入力信号がなかったものとし(S
615)、プログラムを終了する。
【0102】また、CPU31は、S616にて多重押
しフラグ56がセットされていなければ(S616にて
NO)、多重押しでないと判断し(S617)、プログ
ラムを終了する。この場合には、入力ポート状態設定部
62において1つの出力ポートに対応する各入力ポート
のうちのいずれか1つの入力ポートのみのデータがセッ
ト状態であるので、図17に示したS503において
は、他のデータをリセットする必要がない。
【0103】図20は、入力ポート最終選択処理の処理
手順を示すフローチャートである。同図に示す処理手順
は、図16のS213の詳細であり、入力ポート最終選
択処理プログラム97を起動することにより行なわれ
る。入力ポート最終選択処理が開始されると、CPU3
1は、ROM41のデータ部71から読出部51へ有効
キー情報85を読出す(S701)。
【0104】次に、CPU31は、最優先ポート選択処
理を行なう(S702)。最優先ポート選択処理とは、
この時点で入力ポート状態設定部62内の出力ポートと
入力ポートとの組合わせの中の、セット状態にある複数
の中から最優先とする組合わせを選択し、その組合わせ
に対応する最優先のキーを定めるための処理である。最
優先ポート選択処理の詳細については図21を参照して
後述する。次に、CPU31は、最優先として選択され
た組合わせ以外の組合わせに対応するアドレスのデータ
をリセットし(S703)、プログラムを終了する。
【0105】図21は、最優先ポート選択処理の処理手
順を示すフローチャートである。同図に示す処理手順
は、図20のS702の詳細であり、最優先ポート選択
処理プログラム98が起動することにより行なわれる。
最優先ポート選択処理が開始すると、CPU31は、二
次元配列変数(X,Z)の変数Xに出力ポート番号をセ
ットし、変数Zに入力ポート番号1をセットする(S8
01)。
【0106】次に、CPU31は、多重押しフラグ56
をリセットする(S802)。次に、CPU31は、配
列変数(X,Z)により示される出力ポートと入力ポー
トとの組合わせに対応するアドレスがセット状態である
か否かを判断する(S803)。CPU31は、(X,
Z)のデータがセット状態であれば(S803にてYE
S)、続いて、二次元配列変数(Y,W)に次の出力ポ
ートと入力ポートとの組合わせをセットする(S80
4)。すなわち、変数YにX+1を代入し、変数Wに入
力ポート番号1をセットする。次に、CPU31は、
(Y,W)により示される出力ポートと入力ポートとの
組合わせに対応するアドレスのデータがセット状態であ
るか否かを判断する(S805)。
【0107】一方、CPU31は、S803にて(X,
Z)に対応するデータがセット状態でなければ(S80
3にてNO)、次に、変数Zが最終入力ポート番号と等
しいか否かを判断する(S806)。CPU31は、変
数Zが最終入力ポート番号と等しくなければ(S806
にてNO)、変数Zに1加算し(S807)、S803
の処理に戻る。
【0108】また、CPU31は、変数Zが最終番号と
等しければ(S806にてYES)、次に、変数Xが最
終出力ポート番号と等しいか否かを判断する(S80
8)。CPU31は、変数Xが最終出力ポート番号と等
しくなければ(S808にてNO)、変数Xに1加算
し、変数Zに1をセットして(S809)、S803の
処理に戻る。
【0109】また、CPU31は、変数Xが最終番号で
あれば(S808にてYES)、キー入力処理がなかっ
たものと判断し(S809)、プログラムを終了する。
【0110】S805にて(Y,W)により示される出
力ポートと入力ポートとの組合わせに対応するデータが
セット状態であれば(S805にてYES)、CPU3
1は、多重押しフラグ56をセットする(S821)。
続いて、CPU31は、有効キー情報85を参照して、
(X,Z)に対応するキーコードと(Y,W)に対応す
るキーコードとの優先順位を比較する(S822)。
【0111】CPU31は、(X,Z)の優先順位が
(Y,W)の優先順位よりも大きければ(S823にて
YES)、変数Yが最終の出力ポート番号と等しいか否
かを判断する(S824)。また、CPU31は、
(X,Z)の優先順位が(Y,W)の優先順位よりも大
きくなければ(S823にてNO)、(Y,W)にセッ
トされている出力ポートと入力ポートとの組合わせを
(X,Z)にセットした後(S825)、S824の処
理を行なう。
【0112】CPU31は、S824にて変数Yが最終
出力ポート番号と等しくなければ(S824にてN
O)、変数Yに1加算し(S826)、S805の処理
に戻る。また、変数Yが最終の出力ポート番号と等しけ
れば(S824にてYES)、CPU31は、その時点
で(X,Z)により示される出力ポートと入力ポートと
の組合わせを最優先のポートの組合わせ番号として選択
し(S830)、プログラムを終了する。
【0113】また、CPU31は、S805にて(Y,
W)のデータがセット状態でなければ(S805にてN
O)、続いて、変数Wが最終入力ポート番号と等しいか
否かを判断する(S831)。CPU31は、変数Wが
最終入力ポート番号と等しくなければ(S831にてN
O)、変数Wに1加算し(S832)、S805に処理
を戻す。
【0114】また、CPU31は、変数Wが最終入力ポ
ート番号と等しければ(S831にてYES)、続い
て、変数Yが最終出力ポート番号と等しいか否かを判断
する(S833)。CPU31は、変数Yが最終出力ポ
ート番号と等しくなければ(S833にてNO)、変数
Yに1加算し、変数Wに1をセットして(S834)、
S805に処理を戻す。また、CPU31は、変数Yが
最終出力ポート番号と等しければ(S833にてYE
S)、続いて、多重押しフラグ56がセットされている
か否かを判断する(S835)。
【0115】CPU31は、多重押しフラグ56がセッ
トされていなければ(S835にてNO)、多重押しが
行なわれなかったものと判断し(S836)、プログラ
ムを終了する。この場合には、入力ポート状態設定部6
2において、各出力ポートのうちの1つの出力ポートに
対応する各入力ポートのうちの1つの入力ポートのみの
データがセット状態であるので、図20に示したS70
3においては、他のデータをリセットする必要がない。
また、CPU31は、多重押しフラグ56がセットされ
ていれば(S835にてYES)、S830に処理を移
し、その時点で(X,Z)にセットされている出力ポー
トと入力ポートとの組合わせの番号を最優先のポートの
組合わせ番号として選択してプログラムを終了する。
【0116】次に、第2実施例の構成と請求項記載の構
成との対応について説明する。前記入力ポート選択処理
プログラム96における図17のS503の処理を行な
う部分により、2個以上のキーの中の優先順位が低いキ
ーのデータを順次削除し、最後のデータが残ったキーを
優先すべきキーとする優先キー設定手段が構成されてい
る。
【0117】
【発明の効果】以上説明したように本発明の構成によれ
ば、複数のキーを配設したキーボードにおいて、同時に
2個以上のキーが押下されると、予め定められたキーの
優先順位を参照して、押下された2個以上のキーの中か
らある特定のキーが押下されたキーであるとして選択さ
れる。したがって、2個以上のキーを同時に押下した場
合であっても、その中に含まれるある特定のキーのみが
押下されたものとして処理することが可能となる。
【0118】具体的には、キーボードに含まれるキー
押下された場合、その押下されたキーを出力として読取
り、それを読取出力として記憶する。例えば、2個以上
のキーが押下されていた場合もそれぞれを記憶する。こ
の記憶された内容を参照して、記憶されたデータが複数
である場合、押下されたキーが複数であると判断し、複
数のキーが押下されたと検知することが可能となる。
らに、2個以上のキーが押下された場合にその押下され
たキーの中で優先すべきキーを予め定めて記憶している
ために、この予め記憶されているキーの優先順位を参照
し、その参照した結果に基づいて優先すべきキーを選択
することができる。
【0119】発明の構成によれば、2個以上のキー
押下された場合、その中で優先順位が低いキーのデータ
を順次削除し、最後にデータが残ったキーを目的とする
優先すべきキーとして定めることができる。
【0120】発明の構成によれば、押下されたキーが
複数であると判断された場合に、予めキーに関する優先
順位が記憶されていることから、押下されたキーのデー
タに対応する優先順位を読出し、その優先順位を比較
し、最終的に格納されている押下されたキーのデータの
中で優先順位の高いキーのデータを目的とするキーであ
るとして選択することができる。
【0121】以上により、同時に複数のキーが入力され
た場合に、いずれかのキーを優先して入力キーとして処
理するキー入力装置を提供することが可能となる。
【図面の簡単な説明】
【図1】本発明のキー入力装置の第1実施例に係る携帯
型の情報処理装置の外観を示す平面図である。
【図2】情報処理装置の表示部の構成を示す平面図であ
る。
【図3】情報処理装置の入力キー部の構成を示す平面図
である。
【図4】情報処理装置の機能構成を示すブロック図であ
る。
【図5】入力部と出力ポート群と入力ポート群との詳細
構成を示す模式図である。
【図6】有効キー情報の構成を示す説明図である。
【図7】キーコードデータの構成を示す説明図である。
【図8】情報処理装置におけるメモモードの処理手順を
示すフローチャートである。
【図9】メモモード実行時表示画面の構成を示す模式図
である。
【図10】キーコード変換処理の処理手順を示すフロー
チャートである。
【図11】入力キーコード設定処理の処理手順を示すフ
ローチャートである。
【図12】キーコード選択処理の処理手順を示すフロー
チャートである。
【図13】(a)は優先順位比較処理の処理手順を示す
フローチャートであり、(b)は入力キーコード設定部
の設定状態の一例を示す説明図である。
【図14】本発明のキー入力装置の第2実施例に係る携
帯型の情報処理装置の機能構成を示すブロック図であ
る。
【図15】入力ポート状態設定部の設定状態の一例を示
す説明図である。
【図16】第2実施例におけるキーコード変換処理の処
理手順を示すフローチャートである。
【図17】入力ポート選択処理の処理手順を示すフロー
チャートである。
【図18】入力ポート比較処理の処理手順を示すフロー
チャートである。
【図19】入力ポート比較処理の処理手順を示すフロー
チャートである。
【図20】入力ポート最終選択処理の処理手順を示すフ
ローチャートである。
【図21】最優先ポート選択処理の処理手順を示すフロ
ーチャートである。
【図22】最優先ポート選択処理の処理手順を示すフロ
ーチャートである。
【符号の説明】
1,2 情報処理装置 7 入力キー群 17 メモモードキー 22 文字入力キー 23,24,25,26 文字情報入力用キー 31 CPU 33 入力部 35 出力ポート群 37 入力ポート群 39 RAM 41 ROM 61 入力キーコード設定部 62 入力ポート状態設定部 63 キーコード部 83 キーコードデータ 85 有効キー情報 86 キャラクタデータコード情報 91 メモモードプログラム 92,95 キーコード変換プログラム 93 入力キーコード設定プログラム 94 キーコード選択プログラム 96 入力ポート選択プログラム 97 入力ポート最終選択プログラム 98 最優先ポート選択プログラム

Claims (3)

    (57)【特許請求の範囲】
  1. 【請求項1】 複数のキーを配設したキーボードと、 前記キーボードに含まれる各キーが2個以上押下された
    際にもその押下されたことを出力として読取るための読
    取手段と、 前記読取手段によって読取られた出力結果である押下さ
    れたキーが2個以上の際にもそれぞれのキーのデータを
    記憶する読取出力記憶手段 と、 前記読取出力記憶手段に記憶されたキーのデータの個数
    に基づいて前記キーボードにおけるキーが2個以上押下
    されたか否かを検知するための複数キー入力検知手段
    と、 前記キーボードに配設された個々のキーに対して唯一の
    優先順位を各キーについて予め記憶するキー優先順位記
    憶手段と、 前記キー優先順位記憶手段に記憶されている個々のキー
    の優先順位を参照するキー優先順位参照手段と、 前記複数キー入力検知手段によって押下されたキーが複
    数であると判断された場合に、前記キー優先順位参照手
    による参照結果に基づいて、前記読取出力記憶手段に
    格納されている複数のキーのデータの中から特定の1個
    キーのデータを優先して選択する優先キー選択手段
    を含む ことを特徴とする、キー入力装置。
  2. 【請求項2】 前記優先キー選択手段は、前記読取出力
    記憶手段からキーのデータを削除する削除手段を含み、 前記複数キー入力検知手段により検知された2個以上の
    キーに対して、その中で優先順位が低いキーのデータを
    前記読取出力記憶手段から前記削除手段によって順次削
    除し、最後に残ったキーのデータが目的とするキーであ
    るとして選択 することを特徴とする、請求項1記載のキ
    ー入力装置。
  3. 【請求項3】 前記優先キー選択手段は、キーの優先順
    位を比較する比較手段を含み、 前記複数キー入力検知手段によって押下されたキーが複
    数であると判断された場合に、前記キー優先順位参照手
    段によって前記読取出力記憶手段に格納されている各キ
    ーのデータに対応する優先順位を前記キー優先順位記憶
    手段から読み出 し、前記比較手段によって比較し、最終
    的に前記読取出力記憶手段に格納されている複数のキー
    のデータの中で優先順位の高いキーのデータを目的とす
    るキーであるとして選択することを特徴とする、請求項
    1または記載のキー入力装置。
JP08006694A 1994-04-19 1994-04-19 キー入力装置 Expired - Lifetime JP3243365B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP08006694A JP3243365B2 (ja) 1994-04-19 1994-04-19 キー入力装置
US08/424,083 US5734928A (en) 1994-04-19 1995-04-19 System for selecting a key by comparing the key code data of predetermined priority corresponding to key input flag of simultaneously pressed plurality of keys

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP08006694A JP3243365B2 (ja) 1994-04-19 1994-04-19 キー入力装置

Publications (2)

Publication Number Publication Date
JPH07287631A JPH07287631A (ja) 1995-10-31
JP3243365B2 true JP3243365B2 (ja) 2002-01-07

Family

ID=13707865

Family Applications (1)

Application Number Title Priority Date Filing Date
JP08006694A Expired - Lifetime JP3243365B2 (ja) 1994-04-19 1994-04-19 キー入力装置

Country Status (2)

Country Link
US (1) US5734928A (ja)
JP (1) JP3243365B2 (ja)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1166428A (ja) * 1997-08-25 1999-03-09 Sharp Corp 販売管理装置
JPH1185362A (ja) * 1997-09-01 1999-03-30 Nec Corp キーボード制御方法およびキーボード制御装置
US6230222B1 (en) * 1998-10-29 2001-05-08 Martha Torell Rush Prioritizing input device having a circuit indicating the highest priority key value when a plurality of keys being simultaneously selected
US6377685B1 (en) * 1999-04-23 2002-04-23 Ravi C. Krishnan Cluster key arrangement
US7821425B2 (en) * 2002-07-12 2010-10-26 Atmel Corporation Capacitive keyboard with non-locking reduced keying ambiguity
US6782251B2 (en) 2002-09-26 2004-08-24 Motorola Inc. Method and apparatus for operating a lost mobile communication device
JP4158195B2 (ja) * 2003-05-28 2008-10-01 日本電気株式会社 学習型入力判定回路を有する携帯電話機
JP2007094910A (ja) * 2005-09-29 2007-04-12 Toshiba Corp 情報処理装置
EP1791051A1 (en) * 2005-11-23 2007-05-30 Research In Motion Limited System and method for recognizing a keystroke in an electronic device
US7594050B2 (en) * 2005-11-23 2009-09-22 Research In Motion Limited System and method for recognizing a keystroke in an electronic device
US8049715B2 (en) * 2005-11-30 2011-11-01 Motorola Mobility, Inc. Method and system for accessing data stored in an electronic device
KR100826532B1 (ko) * 2006-03-28 2008-05-02 엘지전자 주식회사 이동 통신 단말기 및 그의 키 입력 검출 방법
US7903092B2 (en) * 2006-05-25 2011-03-08 Atmel Corporation Capacitive keyboard with position dependent reduced keying ambiguity
US8786554B2 (en) * 2006-07-10 2014-07-22 Atmel Corporation Priority and combination suppression techniques (PST/CST) for a capacitive keyboard
US9766738B1 (en) * 2006-08-23 2017-09-19 Cypress Semiconductor Corporation Position and usage based prioritization for capacitance sense interface
US8144121B2 (en) * 2006-10-11 2012-03-27 Victor Company Of Japan, Limited Method and apparatus for controlling electronic appliance
US8125441B2 (en) * 2006-11-20 2012-02-28 Cypress Semiconductor Corporation Discriminating among activation of multiple buttons
KR100947476B1 (ko) * 2007-02-01 2010-03-17 크루셜텍 (주) 포인팅 장치
JP5325747B2 (ja) 2009-11-12 2013-10-23 京セラ株式会社 携帯端末及び入力制御プログラム
US9081546B2 (en) * 2009-11-12 2015-07-14 KYCOERA Corporation Portable terminal, input control program and input control method
JP5380521B2 (ja) * 2011-11-29 2014-01-08 京セラドキュメントソリューションズ株式会社 操作装置及び画像形成装置
KR101575477B1 (ko) * 2014-05-23 2015-12-07 현대자동차주식회사 인사이드 미러의 버튼 심볼 제어 방법
JP6525901B2 (ja) * 2016-02-15 2019-06-05 アルパイン株式会社 キー入力インタフェース装置

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS4931232A (ja) * 1972-07-21 1974-03-20
JPS6034758B2 (ja) * 1976-04-26 1985-08-10 株式会社河合楽器製作所 キ−アサイナ
US4293849A (en) * 1979-05-23 1981-10-06 Phillips Petroleum Company Keyboard encoder using priority encoders
JPS6118023A (ja) * 1984-07-03 1986-01-25 Canon Inc キ−入力制御装置
JPH0644212B2 (ja) * 1987-06-16 1994-06-08 日本電気株式会社 キ−入力装置
EP0361869B1 (en) * 1988-09-26 1996-03-27 Sharp Kabushiki Kaisha Information display apparatus and method of scrolling displayed data
CA2003043C (en) * 1988-11-18 1994-04-05 Masataka Nakasuji Information searching apparatus
US5331555A (en) * 1990-05-11 1994-07-19 Sharp Kabushiki Kaisha Electronic apparatus
JPH0769762B2 (ja) * 1991-12-04 1995-07-31 株式会社アスキー 同時打鍵と逐次打鍵の判定方法及びその装置
KR940011434B1 (ko) * 1992-02-29 1994-12-15 삼성전자주식회사 아날로그 키방식의 더블키 입력 검출회로
JP2733485B2 (ja) * 1992-08-28 1998-03-30 セイコーエプソン株式会社 キー入力装置

Also Published As

Publication number Publication date
US5734928A (en) 1998-03-31
JPH07287631A (ja) 1995-10-31

Similar Documents

Publication Publication Date Title
JP3243365B2 (ja) キー入力装置
JP4242270B2 (ja) コンピューティング・デバイスへのペン入力システムと方法
JP3829366B2 (ja) 入力装置、および入力方法
JP2005535975A (ja) ソフトウェアキーボードを利用した文字入力方法
JPH06214699A (ja) キーボード装置
JPH06202784A (ja) 文字入力装置
JPH03150625A (ja) 命令入力装置
KR100477125B1 (ko) 전자펜을이용한문자입력장치및그제어방법
JPH10254622A (ja) 情報処理装置
JPS60241156A (ja) ワ−ドプロセツサ
JPS61121185A (ja) 文字図形入出力装置
JPH06324794A (ja) タッチ入力装置
KR100612851B1 (ko) 핸드폰의 움직임을 키 입력수단으로 이용하는 핸드폰 및핸드폰 움직임을 이용한 키 입력 방법
JP3528088B2 (ja) キー入力補助方法及び装置
JPH0950433A (ja) 手書き文字認識装置
JPH11154198A (ja) 手書き入力装置及び記憶媒体
JP3148324B2 (ja) 文字入力装置
KR100389761B1 (ko) 펜 마우스를 이용하여 워드 문서를 처리하기 위한 방법
JP2667761B2 (ja) データ処理装置
JP2706010B2 (ja) 情報処理装置
JPH0521154Y2 (ja)
JPH06295357A (ja) 情報処理装置
JP2000076380A (ja) 手書き文字入力装置及び記憶媒体
JPH0363720A (ja) 入力表示装置
JP3244493B2 (ja) 電子機器

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20010424

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20010925

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20071019

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081019

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081019

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091019

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091019

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101019

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111019

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121019

Year of fee payment: 11

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131019

Year of fee payment: 12

EXPY Cancellation because of completion of term