(57)【要約】      （修正有）【課題】機能インディケータの表示でキーコンフィグ時に所望のボタンにどのボタン機能が割当てられるのかを確認することができ、それによってディスプレイ利用などのコストを掛けずに、一のコントローラのみで所望のボタンへの機能割当を実行することができるコントローラを提供する。【解決手段】コントローラ操作面に配置され、複数の機能のいずれか一以上にそれぞれが対応する複数のボタンと、ボタン機能の変更対象ボタンの指定を前記複数のボタンのいずれか一以上を利用して受付ける指定受付部と、指定されたボタンに対して割当てる機能を自身に備えられた機能インディケータの表示と、前記複数のボタンのいずれか一以上と、を利用して選択する選択部と、選択された機能を他のボタンの割当機能と重複割当可能に割当てる割当部と、を有する。【選択図】図１
2013031100.tif 000002
【特許請求の範囲】
【請求項１】
コントローラ操作面に配置され、コントロールのための複数の機能のいずれか一以上にそれぞれが対応する複数のボタンと、
ボタン機能の変更対象となるボタンの指定を前記複数のボタンのいずれか一以上を利用して受付ける指定受付部と、
指定されたボタンに対して割当てる機能を自身に備えられた機能インディケータの表示と、前記複数のボタンのいずれか一以上と、を利用して選択する選択部と、
選択された機能を他のボタンの割当機能と重複割当可能に割当てる割当部と、
を有するコントローラ。
【請求項２】
前記選択部にて利用されるボタンは、前記指定受付部にて指定不能であるボタンである請求項１に記載のコントローラ。
【請求項３】
前記選択部は、ボタンの利用によって前記割当てる機能を複数の機能の中から順に選択する順送り選択手段を有する請求項１または２に記載のコントローラ。
【請求項４】
前記機能インディケータは、複数のＬＥＤであり、各ＬＥＤが前記複数の機能にユニークに対応して備えられるとともに、
前記選択部は、選択された機能に対応するＬＥＤの明滅を制御する明滅制御手段を有する請求項１から３のいずれか一に記載のコントローラ。
【請求項５】
前記割当部は、前記複数の機能の中の特定の機能については、常にいずれかのボタンに割当てられるように前記割り当てを行う必須割当手段を有する請求項１から４のいずれか一に記載のコントローラ。
【請求項６】
前記ボタンの割当を工場出荷時のデフォルト割当に戻すためのリセット機能部をさらに有する請求項１から５のいずれか一に記載のコントローラ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コントローラのボタン機能割当を任意に変更する、いわゆる「キーコンフィグ」技術に関する。
【背景技術】
【０００２】
例えばゲームコントローラなど、さまざまな用途に応じて被操作装置への各種操作入力を行うためのコントローラが提供されている。また、例えば「ユーザごとの癖の違い」や「良く使うボタン機能が異なる」ことなどによる使い勝手の悪化を解消するため、コントローラにはいわゆる「キーコンフィグレーション（キーコンフィグ）」が実装されていることも多い。
【０００３】
このようなコントローラのキーコンフィグ技術として、従来は、例えばコントローラや被操作装置と接続されたディスプレイにキーコンフィグ用のＧＵＩ（グラフィカル・ユーザ・インターフェース）を表示し、そのＧＵＩを参照することで、所望のボタンにいずれの機能を割当てるのかを確認しながらボタン機能の割当を変更することができる技術が提供されている。
【０００４】
また製造コストの抑制などを目的として、上記のようにディスプレイなどの外部装置を用いずにコントローラ単体でもキーコンフィグを可能とする技術も提供されている。具体的には、キーコンフィグを行うコントローラ１とは別のコントローラ２を用意し、所定装置を介して両コントローラを接続する。そしてコントローラ２で機能αが割当てられているボタンＡを指定し、つづいてコントローラ１のボタンＢを操作すると、コントローラ１のボタンＢに機能αが割当てられる、という具合である。
【０００５】
このように構成することで、所望のボタンにどのボタン機能が割当てられるのかをディスプレイなどの外部装置を用いずに容易に把握した上でキーコンフィグを行うことができる。
【先行技術文献】
【非特許文献】
【０００６】
【非特許文献１】ゲームグッズ研究所  ［連載第１５０回］ゲームライフに役立つグッズをレポート  "使い勝手はイマイチのカスタム設定"          （http://game.watch.impress.co.jp/docs/20080306/ggl.htm）
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかし、上記ディスプレイなどを用いない従来のキーコンフィグ技術は、所望のボタンにどのボタン機能が割当てられるのかをディスプレイなどを用いずに把握するために、キーコンフィグの対象ではない別のコントローラを用意し、キーコンフィグの対象となるコントローラと接続する必要がある。つまり、一のコントローラ単独で機能割当の変更をすることができない、という課題がある。
【課題を解決するための手段】
【０００８】
以上の課題を解決するために、本発明は、キーコンフィグ時に所望のボタンにどのボタン機能が割当てられるのかを機能インディケータである例えばＬＥＤの明滅などで容易に識別可能とし、それによって一のコントローラ単独で機能選択ができるよう構成する。
【０００９】
具体的に、コントローラ操作面に配置され、コントロールのための複数の機能のいずれか一以上にそれぞれが対応する複数のボタンと、ボタン機能の変更対象となるボタンの指定を前記複数のボタンのいずれか一以上を利用して受付ける指定受付部と、指定されたボタンに対して割当てる機能を自身に備えられた機能インディケータの表示と、前記複数のボタンのいずれか一以上と、を利用して選択する選択部と、選択された機能を他のボタンの割当機能と重複割当可能に割当てる割当部と、を有するコントローラを提供する。
【００１０】
また上記構成を備え、その選択部にて利用されるボタンが、前記指定受付部にて指定不能であるボタンであるコントローラも提供する。
【００１１】
また、上記構成を備え、その選択部が、ボタンの利用によって前記割当てる機能を複数の機能の中から順に選択する順送り選択手段を有するコントローラも提供する。
【００１２】
また、上記構成を備え、その機能インディケータが、複数のＬＥＤであり、各ＬＥＤが前記複数の機能にユニークに対応して備えられるとともに、その選択部が、選択された機能に対応するＬＥＤの明滅を制御する明滅制御手段を有するコントローラも提供する。
【００１３】
また、上記構成を備え、その割当部が、前記複数の機能の中の特定の機能については、常にいずれかのボタンに割当てられるように前記割り当てを行う必須割当手段を有するコントローラも提供する。
【００１４】
また、上記構成を備え、さらに前記ボタンの割当を工場出荷時のデフォルト割当に戻すためのリセット機能部を有するコントローラも提供する。
【発明の効果】
【００１５】
以上のような構成を備える本発明によって、ユーザは機能インディケータの表示でキーコンフィグ時に所望のボタンにどのボタン機能が割当てられるのかを確認することができ、それによってディスプレイ利用などのコストを掛けずに、一のコントローラのみで所望のボタンへの機能割当を実行することができる。
【図面の簡単な説明】
【００１６】
【図１】実施例１のコントローラにおける外観の一例を表す上面図
【図２】実施例１のコントローラにおける機能インディケータの表示の一例を表す図
【図３】実施例１のコントローラにおける機能ブロックの一例を表す図
【図４】実施例１のコントローラにて保持されているボタン割当機能テーブルの一例を表す図
【図５】実施例１のコントローラにおける機能インディケータの、別の表示の一例を表す図
【図６】実施例１のコントローラの割当部による機能割当の変更の一例を説明するための概念図
【図７】実施例１のコントローラにおけるハードウェア構成の一例を表す図
【図８】実施例１のコントローラにおける処理の流れの一例を表すフローチャート
【発明を実施するための形態】
【００１７】
以下に、図を用いて本発明の実施の形態を説明する。なお、本発明はこれら実施の形態に何ら限定されるものではなく、その要旨を逸脱しない範囲において、種々なる態様で実施しうる。
【００１８】
なお、実施例１は、主に請求項１から６について説明する。
【００１９】
≪実施例１≫
【００２０】
<概要>
【００２１】
図１は、本実施例のコントローラの外観の一例を表す上面図である。この図にあるように、本実施例のコントローラには、起動スライドスイッチ０１００やその他の押し込み型ボタン０１０１、０１０２、・・・、０１０９や、十字キー０１１０などの複数のボタン、複数のＬＥＤからなる機能インディケータ０１１１などが備えられている。
【００２２】
ここで起動スライドスイッチをＯＦＦからＯＮにスライドさせると、本実施例のコントローラに内蔵されているキーコンフィグプログラムが読み出され、コントローラのマイコンの演算処理によってキーコンフィグモードが実行され、割当機能を変更するボタンの指定受付待ちの状態となる。
【００２３】
そして、キーコンフィグモード実行中のコントローラで例えばボタン０１０１が押される（指定される）と、図２（ａ）に示すように機能インディケータの９つあるＬＥＤのうち、このボタン０１０１に現在割当てられている機能αに対応するＬＥＤが明滅する。
【００２４】
そしてボタン０１０１を押したまま十字キー０１１０の右を例えば４回押すと、機能インディケータのＬＥＤの明滅対象もそれに合わせて右側に移動し、図２（ｂ）に示すように機能βに対応するＬＥＤが明滅する。
【００２５】
そして、この状態でボタン０１０１から指が離され押下げが終了すると、コントローラのマイコンはボタン０１０１に割当てられる機能をαからβに変更し、ＥＥＰＲＯＭなどに保持されているボタン割当機能テーブルを更新する処理を実行する、という具合である。
【００２６】
このようにして、本実施例のコントローラでは、ユーザは機能インディケータの表示でキーコンフィグ時に所望のボタンにどのボタン機能が割当てられるのかを確認することができ、それによってボタンへの割当機能の選択が容易にできる。
【００２７】
<機能的構成>
【００２８】
図３は、本実施例のコントローラの機能ブロックの一例を表す図である。なお、本実施例のコントローラは、自身に設けられたボタンの操作入力を受付けることで割当てられた操作用信号を出力し割当機能を実現する装置をいい、その用途や操作対象、操作内容（機能）などは限定されない。
【００２９】
そして、この図にあるように、本実施例の「コントローラ」（０３００）は、「複数のボタン」（０３０１）と、「指定受付部」（０３０２）と、「選択部」（０３０３）と、「割当部」（０３０４）と、を有する。
【００３０】
「複数のボタン」（０３０１）は、コントローラ操作面に配置され、コントロールのための複数の機能のいずれか一以上にそれぞれが対応するものである。なお、そのボタンの押下検知（開閉）構造や形状などは特に限定しない。例えば、押下検知機構としてはメンブレン機構やメカニカル機構、静電容量無接点機構、また押下量をアナログ的に検知するアナログ検知機構などが挙げられる。また、形状としては四角形状や丸形状などのボタンのほか、一のボタンで４つの押下検知機構を備える十字ボタンなど様々であって良い。
【００３１】
そして図４のボタン割当機能テーブルに示すように、これらボタンのそれぞれには、その押下げ（場合によっては複数のボタンの押下げの組み合わせ）によって出力されるべき操作信号が割当てられていることで、コントロールのための複数の機能のいずれか一以上にそれぞれが対応している。
【００３２】
なお上述のように、基本的にはコントローラのボタンの押下検知によって操作信号が出力され、それが操作対象機器のプログラムで解釈されることで、操作信号に応じた「機能」が実行される。したがって、本実施例でいう「機能」とは操作信号を含む概念である。例えば、複数のボタンの同時押しによってある機能が実行される場合の機能割当の変更においては、各ボタンの操作信号の割当が個別に変更されると良い。
【００３３】
そして、図４に示すボタン割当機能テーブルは例えばコントローラ内のＥＥＰＲＯＭなどの書換え可能な記憶装置に保持され、そのテーブルレコードが更新変更されることで後述するボタンの割当機能が変更される、という具合である。
【００３４】
「指定受付部」（０３０２）は、ボタン機能の変更対象となるボタンの指定を前記複数のボタンのいずれか一以上を利用して受付ける機能を有し、例えばコントローラのマイコンなどの演算装置や前述のキーコンフィグプログラムに含まれる指定受付プログラムなどによって実現することができる。
【００３５】
例えば、「指定受付プログラムがマイコンに解釈され実行された後、最初に押下検知されたボタンを変更対象のボタンとする」と指定受付プログラムにて定められていれば、前記複数のボタン自身が変更対象指定に利用されるボタンとして機能することになる。
【００３６】
また、「変更対象指定に利用されるボタンとして例えば図１の十字キー０１１０を利用する」と指定受付プログラムにて定められていれば、例えば十字キーを一回押すとまずデフォルトでボタン０１０１が指定され（またその際には当該ボタンに内蔵されたＬＥＤが点灯し）、十字キーが所定方向に押下げられるたびに指定対象が順次ボタン０１０２、０１０３・・・という具合に変更されていくよう構成しても良い。
【００３７】
「選択部」（０３０３）は、指定されたボタンに対して割当てる機能を自身に備えられた機能インディケータの表示と、前記複数のボタンのいずれか一以上と、を利用して選択する機能を有し、例えばコントローラのマイコンなどの演算装置や、前述のキーコンフィグプログラムに含まれる選択プログラムなどによって実現することができる。
【００３８】
また、機能インディケータとは、指定されたボタンに対して割当てる機能を示すための簡易的な通知機構であって、主にＬＥＤなどの発光体やＢＥＥＰ音などを発するブザー装置などで実現されると良い。
【００３９】
具体的には、例えば図２に示すように、複数のＬＥＤで構成され、各ＬＥＤがボタンに割当てられる複数の機能にユニークに（１対１に）対応している。そしてコントローラ内のＬＥＤ制御回路や明滅制御プログラム（明滅制御手段）によって、選択された機能に対応するＬＥＤが他のＬＥＤと区別可能に明滅などしてユーザに現在選択されている機能を通知する、という具合である。
【００４０】
図５は、この機能インディケータの別の表示例を表す図である。この図５（ａ）にあるように、例えば機能インディケータとして一のＬＥＤ発光体が設けられ、その連続明滅回数によって選択された機能をユーザに通知する構成や、このＬＥＤ発光体の内部にＲＧＢの発光素子をまとめ、発光色の変化によって選択された機能をユーザに通知する構成などが挙げられる。
【００４１】
あるいは、図５（ｂ）に示すように、ＬＥＤとパネルを並べてインディケータバーを構成し、そのバーの表示長さによって選択された機能をユーザに通知する構成なども挙げられる。
【００４２】
また、機能インディケータがＢＥＥＰ音を発するブザー装置で構成されていれば、そのＢＥＥＰ音の長さや音の高さ、あるいは音の変化パターンなどによって選択された機能をユーザに通知することができる。
【００４３】
そして、指定されたボタンに対して割当てる機能を選択する際には、例えば前述のように指定のボタンを押しっぱなしのまま、例えば十字キーなどの選択用のボタンを操作して、割当てる機能を複数の機能の中から順に選択する（順送り選択手段）ことで行う構成が挙げられる。
【００４４】
あるいは、指定されたボタンを選択用のボタンとしてそのまま利用し、当該ボタンの押下回数に応じて割当てる機能を複数の機能の中から順に選択することで行う構成も挙げられる。そして所望の機能が割当てられたことを機能インディケータの表示で確認したところで、例えばボタンの長押しをしたり、決定用の専用ボタンを押したりすると良い。
【００４５】
なお、この選択部では、例えば前記十字キーなどをキーコンフィグモード時においては選択用のみ利用されるボタンとして選択プログラムにて規定するなどしても良い。つまり例えば十字キーは、前記指定受付部にて機能割当の変更対象のボタンとしては指定不能となるよう構成しても良い。
【００４６】
「割当部」（０３０４）は、選択された機能を他のボタンの割当機能と重複割当可能に割当てる機能を有し、例えばコントローラのマイコンなどの演算装置や、前述のキーコンフィグプログラムに含まれる割当プログラムなどによって実現することができる。
【００４７】
図６は、この割当部による機能割当の変更の一例を説明するための概念図である。この図６（ａ）にあるように、例えばコントローラ内のＥＥＰＲＯＭなどに、各ボタンの押下検知や複数のボタンの押下げの組み合わせ検知によって出力されるべき操作信号を示すボタン割当機能テーブルが保持されている。
【００４８】
そして、図６（ｂ）に示すように、上述の指定された例えばボタンＡの割当機能をβにするという選択がなされると、このボタン割当機能テーブルの当該レコードがβに更新される、という具合である。
【００４９】
またこの割当部は、複数の機能の中の特定の機能について常にいずれかのボタンに割当てられるように前記割り当てを行う必須割当手段を有していても良い。具体的には、例えば上記図６のボタン割当機能テーブルにおいて、各ボタンに必須割当フラグを示すレコードが設けられている。そして割当処理の際には当該レコードを参照し、例えば起動や電源など必須割当フラグがオンになっている機能については、割当変更処理を実行しないよう構成する、という具合である。
【００５０】
また本実施例のコントローラは、図示しない「リセット機能部」を備えていても良い。「リセット機能部」とは、前記ボタンの割当を工場出荷時のデフォルト割当に戻すための機能を有し、例えばマイコンなどの演算装置やリセット機能プログラムなどによって実現することができる。
【００５１】
具体的には、リセットボタンやその他ボタンの操作に応じてリセット機能プログラムがマイコンによって解釈、実行され、ＥＥＰＲＯＭに上記割当変更されたものとは別に保持されているデフォルトのボタン機能割当テーブルや割当変更処理の実行直前のボタン機能割当テーブルを用いて、記割当変更されたものが上書き更新（いわゆるロールバック）される、という具合である。
【００５２】
以上のように、ユーザは機能インディケータの表示でキーコンフィグ時に所望のボタンにどのボタン機能が割当てられるのかを確認することができ、一のコントローラのみで所望のボタンへの機能割当を実行することができる。
【００５３】
<ハードウェア構成>
【００５４】
図７は、上記機能的な各構成要件をハードウェアとして実現した際の、コントローラにおける構成の一例を表す概略図である。この図を利用してボタン機能の割当変更処理におけるそれぞれのハードウェア構成部の働きについて説明する。
【００５５】
この図にあるように、コントローラは、割当部であり、またその他の各種演算処理を実行するための「マイコン」（０７０１）を備えている。またボタン割当機能テーブルを保持する「ＥＥＰＲＯＭ」（０７０２）や、指定受付部や選択部でもある「複数のボタン」（０７０３）、機能インディケータである「ＬＥＤ」（０７０４）なども備えている。
【００５６】
そしてそれらが「システムバス」などのデータ通信経路によって相互に接続され、信号の送受信や処理を行う。
【００５７】
また、「マイコン」内メモリのプログラム領域にはキーコンフィグプログラムなどの各種プログラムが読み出され、「マイコン」はその読み出されたプログラムを参照し、プログラムで示される手順に従い各種演算処理を実行する。また、この「マイコン」内メモリのプログラム領域やデータ領域、そして「ＥＥＰＲＯＭ」にはそれぞれ複数のアドレスが割り当てられており、「マイコン」の演算処理においては、そのアドレスを特定し格納されているデータにアクセスすることで、データを用いた演算処理を行うことが可能になっている。
【００５８】
ここで、「複数のボタン」のうちの例えば起動スライドスイッチのスライド操作など所定のボタン操作を受付けると、「マイコン」はボタン操作に応じて操作信号を出力するためのコントロールプログラムに替えてキーコンフィグプログラムを「ＥＥＰＲＯＭ」から読み出し、プログラム領域に展開する。
【００５９】
そして、キーコンフィグプログラムに含まれる指定受付プログラムを「マイコン」が解釈し、コントローラは変更対象となるボタンの指定入力待ち状態となる。その後、複数のボタンの例えばボタンＡが押下げられたことを示す信号を検知すると、そのボタンＡの識別情報が「マイコン」内メモリのデータ領域に格納される。
【００６０】
つづいて、例えば「複数のボタン」のひとつである十字キーの操作を受付けると、「マイコン」はキーコンフィグプログラムに含まれる選択プログラムの解釈結果にしたがって、ボタンＡに割当てる機能を、例えば「ＥＥＰＲＯＭ」に格納されているボタン割当機能テーブルの機能の並び順に応じて順次選択していく。
【００６１】
具体的に、例えばボタンＡに今割当てられている機能がαであれば、十字キーの下や左操作の入力信号に応じて、ボタン割当機能テーブルで機能αの次にあるβを選択し、さらに十字キーの下や左操作を受付けると、その次のγを選択したものとする、という具合である。
【００６２】
また、「マイコン」はその選択にしたがって、ＬＥＤに対する発光制御信号を出力する。具体的には、前述のように機能βが選択された際には、機能インディケータを構成する複数あるＬＥＤのうち、機能βに対応付けられたＬＥＤのみを明滅させる発光制御信号を出力し、続いてγが選択されると機能γに対応付けられた別にＬＥＤの発光制御信号を出力する、という具合である。
【００６３】
そして、そのＬＥＤの発光表示を見て、ユーザが所望のボタン機能γがボタンＡに割当てられたことを確認し、例えば押しっぱなしのボタンＡを開放したり、あるいは別途ボタンＡの長押しや専用の決定ボタンを操作したりすることで、ボタンＡへの割当機能としてγが確定する。
【００６４】
すると「マイコン」は、キーコンフィグプログラムに含まれる割当プログラムの解釈結果にしたがって、「ＥＥＰＲＯＭ」に蓄積されているボタン割当機能テーブルのボタンＡの割当機能レコードをγに更新する書換え処理を実行する、という具合である。
【００６５】
そして、再度所定のボタンの長押しなどによってコントロールプログラムが読み出されると、ボタンＡが操作された際には、機能γを実現するための操作信号γが図示しない「操作信号出力回路」から出力される、という具合である。
【００６６】
<処理の流れ>
【００６７】
図８は、本実施例のコントローラにおける処理の流れの一例を表すフローチャートである。なお、以下に示すステップは、上記のような計算機の各ハードウェア構成によって実行されるステップであっても良いし、媒体に記録され計算機を制御するためのプログラムを構成する処理ステップであっても構わない。
【００６８】
この図にあるように、まず、例えば起動スライドスイッチのスライド操作などによってキーコンフィグモードにコントローラが制御された状態で、コントローラ操作面に配置され、コントロールのための複数の機能のいずれか一以上にそれぞれが対応する複数のボタンのいずれかのボタンに対する指定操作を受付ける（ステップＳ０８０１）と、その操作されたボタンをボタン機能の変更対象となるボタンとして特定し、メモリのデータ領域などに格納する。
【００６９】
つづいて指定されたボタンに対して割当てる機能の選択を、例えば別のボタンの操作入力などで受付ける（ステップＳ０８０２）と、自身に備えられた機能インディケータの表示をその選択された機能に対応するよう変化させ（ステップＳ０８０３）、それにより、特定されたボタンにいずれの機能が現在選択されているかをユーザに通知する。
【００７０】
そして、その機能インディケータの表示変化を見てユーザが所望の機能がボタンに割当てられたことを確認し、例えば決定を示すボタン操作を行うと、その操作に応じて、選択された機能を他のボタンの割当機能と重複割当可能に当該ボタンに割当てるため、例えばＥＥＰＲＯＭなどに格納されているボタン割当機能テーブルを更新する（ステップＳ０８０４）。
【００７１】
<効果の簡単な説明>
【００７２】
以上のように、本実施例のコントローラでは、機能インディケータの表示によってキーコンフィグ時に所望のボタンにどのボタン機能が割当てられるのかをユーザに通知することができ、それによって所望のボタンへの割当機能を一のコントローラ単独で行うことができる。
【符号の説明】
【００７３】
０３００  コントローラ
０３０１  複数のボタン
０３０２  指定受付部
０３０３  選択部
０３０４  割当部
【図１】
2013031100.tif 000003
【図２】
2013031100.tif 000004
【図３】
2013031100.tif 000005
【図４】
2013031100.tif 000006
【図５】
2013031100.tif 000007
【図６】
2013031100.tif 000008
【図７】
2013031100.tif 000009
【図８】
2013031100.tif 000010