(57)【特許請求の範囲】
【請求項１】
無線通信を行うことが可能な複数の機器を含む無線システムであって、当該無線システムは第１の機器と第２の機器とを含み、
前記第１の機器は、
前記第２の機器と接続を確立する接続確立手段と、
ユーザによって操作される操作ボタンと、
前記操作ボタンに対して第１のタイミングで行われた第１の操作と、同じ操作ボタンに対して前記第１の操作が終了した後の第２のタイミングで行われた第２の操作とを含む複数の操作を蓄積する蓄積手段と、
前記第２の機器と接続された状態において、前記蓄積手段によって蓄積された複数の操作を示す操作結果情報を前記第２の機器に無線で送信する送信手段とを備え、
前記第２の機器は、第１演出情報を前記第１の機器に送信し、
前記第１の機器は、
前記第１演出情報を前記第２の機器から受信する受信手段と、
前記受信手段によって受信された前記第１演出情報に基づいて第１演出を実行する第１演出実行手段とをさらに備え、
前記蓄積手段は、前記第１演出に応じて行われた前記複数の操作を蓄積し、
前記第１の機器は、前記第１演出情報を前記第２の機器から受信した後、前記第２の機器と通信を行わなくても、前記第１演出に応じた操作が行われたことに基づいて、第２演出を行う、無線システム。
【請求項２】
前記操作結果情報は、前記複数の操作のそれぞれが行われたタイミングを示すタイミング情報を含む、請求項１に記載の無線システム。
【請求項３】
前記第１の機器および前記第２の機器の少なくとも何れか一方は、前記第１の機器と前記第２の機器との間の通信の時間間隔を設定する間隔設定手段を備え、
前記第１の機器と前記第２の機器とは、互いに接続された状態において前記間隔設定手段によって設定された時間間隔で無線通信を行い、
前記第１の機器の送信手段は、前記間隔設定手段によって設定された時間間隔で行われる通信において前記操作結果情報を前記第２の機器に送信する、請求項１又は２に記載の無線システム。
【請求項４】
前記間隔設定手段は、前記第１の機器と前記第２の機器との間の接続が確立される際に前記時間間隔を設定する、請求項３に記載の無線システム。
【請求項５】
前記間隔設定手段は、予め定められた所定の範囲で前記時間間隔を設定する、請求項３又は４に記載の無線システム。
【請求項６】
前記間隔設定手段は、前記時間間隔を第１の時間間隔から当該第１の時間間隔とは異なる第２の時間間隔に変更する、請求項３から５の何れかに記載の無線システム。
【請求項７】
前記間隔設定手段は、前記第１の機器と前記第２の機器とが接続された状態において、前記時間間隔を変更する、請求項６に記載の無線システム。
【請求項８】
前記第１の機器および前記第２の機器の少なくとも何れか一方は、所定のアプリケーションを実行するアプリケーション実行手段を備え、
前記間隔設定手段は、前記アプリケーション実行手段によって実行されるアプリケーションの種類、及び／又は、アプリケーションの実行状況に応じて、前記時間間隔を設定する、請求項３に記載の無線システム。
【請求項９】
前記間隔設定手段は、前記アプリケーション実行手段によって実行されるアプリケーションの種類、及び／又は、アプリケーションの実行状況に応じて、前記時間間隔を変更する、請求項８に記載の無線システム。
【請求項１０】
前記所定のアプリケーションは、複数の部分を有し、
前記間隔設定手段は、実行されるアプリケーションの部分に応じて、前記時間間隔を変更する、請求項９に記載の無線システム。
【請求項１１】
前記間隔設定手段は、前記所定のアプリケーションが実行されている状態から休止状態に移行する場合、前記時間間隔を変更する、請求項９に記載の無線システム。
【請求項１２】
前記間隔設定手段は、前記第１の機器の前記操作ボタンに対する操作の頻度に応じて、前記時間間隔を設定する、請求項３に記載の無線システム。
【請求項１３】
前記第２の機器は操作手段を備え、
前記間隔設定手段は、前記第１の機器の操作ボタンおよび前記第２の機器の操作手段のうちの少なくとも何れか一方に対する操作の頻度に応じて、前記時間間隔を設定する、請求項３に記載の無線システム。
【請求項１４】
前記第１の機器には機能の異なる複数の種類があり、
前記間隔設定手段は、前記第１の機器の種類に応じて、前記時間間隔を設定する、請求項３に記載の無線システム。
【請求項１５】
前記第２の機器には機能の異なる複数の種類があり、
前記間隔設定手段は、前記第２の機器の種類に応じて、前記時間間隔を設定する、請求項３又は１４に記載の無線システム。
【請求項１６】
前記第１の機器および前記第２の機器の少なくとも何れか一方は、所定のアプリケーションを実行するアプリケーション実行手段を備え、
前記所定のアプリケーションは複数の機器を用いて実行され、
前記間隔設定手段は、前記所定のアプリケーションが行われる機器の数に応じて、前記時間間隔を設定する、請求項３に記載の無線システム。
【請求項１７】
前記無線システムは、前記第１の機器および第２の機器とは異なる第３の機器を含み、
前記第２の機器は、前記第３の機器と通信を行い、
前記間隔設定手段は、前記第２の機器と前記第３の機器との間の通信の状況に応じて、前記第１の機器と第２の機器との間の通信における前記時間間隔を設定する、請求項３に記載の無線システム。
【請求項１８】
前記第２の機器をマスターとし、前記第１の機器をスレーブとして、前記第１の機器と前記第２の機器との接続が確立され、
マスターとして動作する前記第２の機器が前記間隔設定手段を備える、請求項３から１７の何れかに記載の無線システム。
【請求項１９】
前記第１の機器および前記第２の機器の少なくとも何れか一方は、前記第１の機器と前記第２の機器との接続における許容期間を設定する許容期間設定手段を備え、
前記第２の機器は、
前記第１の機器と接続された状態において、所定の時間間隔で所定のパケットを前記第１の機器に送信し、
前記第１の機器は、
前記第２の機器と接続された状態において、前記許容期間に基づいて、前記第２の機器からの前記所定のパケットに対する応答を前記第２の機器に送信するか否かを判定する、請求項１から１８の何れかに記載の無線システム。
【請求項２０】
前記第１の機器は、前記操作結果情報を、前記所定のパケットに対する応答に含めて送信する、請求項１９に記載の無線システム。
【請求項２１】
前記第１の機器は、
前記操作ボタンに対する操作の有無に応じて、前記操作結果情報を前記応答に含めて前記第２の機器に送信するか否かを判定し、
前記操作ボタンに対する操作があった場合、前記操作結果情報を含む前記応答を前記第２の機器に送信すると判定し、
前記操作ボタンに対する操作がなかった場合であっても前記応答を送信しない期間と前記許容期間とに基づいて、前記応答を前記第２の機器に送信すると判定する、請求項２０に記載の無線システム。
【請求項２２】
前記第１の機器および前記第２の機器の少なくとも何れか一方は、所定のアプリケーションを実行するアプリケーション実行手段を備え、
前記許容期間設定手段は、前記アプリケーション実行手段によって実行されるアプリケーションの種類、及び／又は、アプリケーションの実行状況に応じて、前記許容期間を設定する、請求項１９から２１の何れかに記載の無線システム。
【請求項２３】
前記第１の機器および前記第２の機器の少なくとも何れか一方は、前記第１の機器と前記第２の機器との接続における接続維持期間を設定する接続維持期間設定手段を備え、
前記第２の機器は、
前記第１の機器と接続された状態において、所定の時間間隔で所定のパケットを前記第１の機器に送信し、
前記第１の機器と接続された状態において、前記第１の機器から前記所定のパケットに対する応答が無い期間と前記接続維持期間とに基づいて、前記第１の機器との接続を切断するかを判定する、請求項１から２２の何れかに記載の無線システム。
【請求項２４】
第３のタイミングで前記第１の機器と前記第２の機器との間の通信が行われてから前記間隔設定手段によって設定された時間間隔が到来した第４のタイミングで前記第１の機器と前記第２の機器の間の通信が行われ、
前記蓄積手段は、前記第３のタイミングから前記第４のタイミングまでの期間において前記操作ボタンに対して行われた複数の操作を蓄積し、
前記第１の機器の送信手段は、前記第４のタイミングで行われる通信において、前記蓄積手段によって蓄積された複数の操作を示す操作結果情報を前記第２の機器に送信する、請求項３から１８の何れかに記載の無線システム。
【請求項２５】
前記第２の機器は、前記第１の機器の前記送信手段によって送信された操作結果情報に基づいて所定の処理を実行する、請求項１から２４の何れかに記載の無線システム。
【請求項２６】
前記第１の機器は、ユーザに対する出力を行う出力手段を更に備え、
前記第２の機器は、前記所定の処理の実行結果を前記第１の機器に送信し、
前記第１の機器は、前記所定の処理の実行結果を受信し、当該実行結果に応じた出力を前記出力手段を用いて行う、請求項２５に記載の無線システム。
【請求項２７】
前記第２の機器は、ユーザに対する出力を行なう出力手段を備え、当該出力手段を用いて前記所定の処理の実行結果に応じた出力を行う、請求項２５又は２６に記載の無線システム。
【請求項２８】
前記第１の機器と前記第２の機器とは、互いに接続された状態において所定の時間間隔で無線通信を行い、
前記第２の機器は、前記所定の時間間隔で行われる通信において、前記所定の処理の実行結果を前記第１の機器に送信する、請求項２５から２７の何れかに記載の無線システム。
【請求項２９】
前記第２の機器は、所定の時間間隔で前記第１の機器に送信する接続を維持するための所定のパケットに、前記第１演出情報を含めて送信し、
前記第１の機器は、前記所定のパケットに対する応答に前記操作結果情報を含めて当該応答を前記第２の機器に送信する、請求項１から２８の何れかに記載の無線システム。
【請求項３０】
前記第２の機器は、
前記操作結果情報に基づいて、前記第１演出に応じた操作が前記第１の機器において行われたか否かを判定する操作判定手段と、
前記操作判定手段による判定結果に基づいて所定の処理を行う処理手段とを備える、請求項１から２９の何れかに記載の無線システム。
【請求項３１】
前記第１の機器と前記第２の機器とは、互いに接続された状態において所定の時間間隔で無線通信を行い、
前記第２の機器は、前記所定の時間間隔で行われる通信において前記第１演出情報を前記第１の機器に送信し、
前記第１の機器は、前記第１演出情報に基づく前記第１演出を、前記所定の時間間隔を跨いで実行する、請求項１から３０の何れかに記載の無線システム。
【請求項３２】
前記第１演出情報には優先度が設定され、
前記第１の機器は、優先度の高い前記第１演出情報に基づく演出を優先度の低い前記第１演出情報に基づく演出よりも優先して実行する、請求項１から３１の何れかに記載の無線システム。
【請求項３３】
前記第２の機器は、操作条件と第２演出情報とを前記第１の機器に送信し、
前記第１の機器は、
前記操作条件と前記第２演出情報とを受信する受信手段と、
前記操作条件を満たす操作が前記操作ボタンを用いて行われた場合、前記第２演出情報に基づいて第２演出を実行する第２演出実行手段とを備える、請求項１から３２の何れかに記載の無線システム。
【請求項３４】
前記第１の機器と前記第２の機器とは、互いに接続された状態において所定の時間間隔で無線通信を行い、
前記第２の機器は、前記所定の時間間隔で行われる通信において前記操作条件を前記第１の機器に送信し、
前記操作条件は、前記所定の時間間隔を跨いで満たされる条件である、請求項３３に記載の無線システム。
【請求項３５】
前記第２演出情報には優先度が設定され、
前記第１の機器は、優先度の高い前記第２演出情報に基づく演出を優先度の低い前記第２演出情報に基づく演出よりも優先して実行する、請求項３３又は３４に記載の無線システム。
【請求項３６】
前記第１の機器は、振動、光、音の少なくとも何れか１つを用いて前記演出を行う、請求項１から３５の何れかに記載の無線システム。
【請求項３７】
前記第１の機器と前記第２の機器との間の通信の規格は、Ｂｌｕｅｔｏｏｔｈ  Ｌｏｗ  Ｅｎｅｒｇｙである、請求項１から３６の何れかに記載の無線システム。
【請求項３８】
前記操作結果情報は、前記操作ボタンに対する操作の回数、又は、１回あたりの操作の時間を示す情報を含む、請求項１から３７の何れかに記載の無線システム。
【請求項３９】
無線通信を行うことが可能な無線機器であって、
他の機器と接続を確立する接続確立手段と、
ユーザによって操作される操作ボタンと、
前記操作ボタンに対して第１のタイミングで行われた第１の操作と、同じ操作ボタンに対して前記第１の操作が終了した後の第２のタイミングで行われた第２の操作とを含む複数の操作を蓄積する蓄積手段と、
前記他の機器と接続された状態において、前記蓄積手段によって蓄積された複数の操作を示す操作結果情報を前記他の機器に無線で送信する送信手段とを備え、
前記他の機器は、第１演出情報を前記無線機器に送信し、
前記無線機器は、
前記第１演出情報を前記他の機器から受信する受信手段と、
前記受信手段によって受信された前記第１演出情報に基づいて第１演出を実行する第１演出実行手段とをさらに備え、
前記蓄積手段は、前記第１演出に応じて行われた前記複数の操作を蓄積し、
前記無線機器は、前記第１演出情報を前記他の機器から受信した後、前記他の機器と通信を行わなくても、前記第１演出に応じた操作が行われたことに基づいて、第２演出を行う、無線機器。
【請求項４０】
無線通信を行うことが可能な無線機器のコンピュータによって実行されるプログラムであって、前記コンピュータを、
他の機器と接続を確立する接続確立手段と、
ユーザによって操作される操作ボタンに対して第１のタイミングで行われた第１の操作と、同じ操作ボタンに対して前記第１の操作が終了した後の第２のタイミングで行われた第２の操作とを含む複数の操作を蓄積する蓄積手段と、
前記他の機器と接続された状態において、前記蓄積手段によって蓄積された複数の操作を示す操作結果情報を前記他の機器に無線で送信する送信手段として機能させ、
前記他の機器は、第１演出情報を前記無線機器に送信し、
前記コンピュータを、
前記第１演出情報を前記他の機器から受信する受信手段と、
前記受信手段によって受信された前記第１演出情報に基づいて第１演出を実行する第１演出実行手段としてさらに機能させ、
前記蓄積手段は、前記第１演出に応じて行われた前記複数の操作を蓄積し、
前記無線機器が前記第１演出情報を前記他の機器から受信した後、前記他の機器と通信を行わなくても、前記第１演出に応じた操作が行われたことに基づいて、第２演出を行う第２演出実行手段として前記コンピュータをさらに機能させる、プログラム。
【請求項４１】
無線通信を行うことが可能な複数の機器を含む無線システムにおいて実行される通信方法であって、当該無線システムは第１の機器と第２の機器とを含み、
前記第１の機器に、
前記第２の機器と接続を確立する接続確立ステップと、
ユーザによって操作される操作ボタンに対して第１のタイミングで行われた第１の操作と、同じ操作ボタンに対して前記第１の操作が終了した後の第２のタイミングで行われた第２の操作とを含む複数の操作を蓄積する蓄積ステップと、
前記第２の機器と接続された状態において、前記蓄積ステップで蓄積された複数の操作を示す操作結果情報を前記第２の機器に無線で送信する送信ステップとを実行させ、
前記第２の機器は、第１演出情報を前記第１の機器に送信し、
前記第１の機器は、
前記第１演出情報を前記第２の機器から受信する受信ステップと、
前記受信ステップで受信された前記第１演出情報に基づいて第１演出を実行する第１演出実行ステップとをさらに実行し、
前記蓄積ステップでは、前記第１演出に応じて行われた前記複数の操作を蓄積し、
前記第１の機器は、前記第１演出情報を前記第２の機器から受信した後、前記第２の機器と通信を行わなくても、前記第１演出に応じた操作が行われたことに基づいて、第２演出を行う、通信方法。
【請求項４２】
無線通信を行うことが可能な無線機器であって、
ユーザによって操作される操作ボタンと、
前記操作ボタンに対して第１のタイミングで行われた第１の操作と、同じ操作ボタンに対して前記第１の操作が終了した後の第２のタイミングで行われた第２の操作とを含む複数の操作を蓄積する蓄積手段と、
前記蓄積手段によって蓄積された複数の操作を示す操作結果情報を他の機器に無線で送信する送信手段とを備え、
前記他の機器は、第１演出情報を前記無線機器に送信し、
前記無線機器は、
前記第１演出情報を前記他の機器から受信する受信手段と、
前記受信手段によって受信された前記第１演出情報に基づいて第１演出を実行する第１演出実行手段とをさらに備え、
前記蓄積手段は、前記第１演出に応じて行われた前記複数の操作を蓄積し、
前記無線機器は、前記第１演出情報を前記他の機器から受信した後、前記他の機器と通信を行わなくても、前記第１演出に応じた操作が行われたことに基づいて、第２演出を行う、無線機器。
【請求項４３】
無線通信を行うことが可能な無線機器のコンピュータにおいて実行されるプログラムであって、前記コンピュータを、
ユーザによって操作される操作ボタンに対して第１のタイミングで行われた第１の操作と、同じ操作ボタンに対して前記第１の操作が終了した後の第２のタイミングで行われた第２の操作とを含む複数の操作を蓄積する蓄積手段と、
前記蓄積手段によって蓄積された複数の操作を示す操作結果情報を他の機器に無線で送信する送信手段として機能させ、
前記他の機器は、第１演出情報を前記無線機器に送信し、
前記コンピュータを、
前記第１演出情報を前記他の機器から受信する受信手段と、
前記受信手段によって受信された前記第１演出情報に基づいて第１演出を実行する第１演出実行手段としてさらに機能させ、
前記蓄積手段は、前記第１演出に応じて行われた前記複数の操作を蓄積し、
前記無線機器が前記第１演出情報を前記他の機器から受信した後、前記他の機器と通信を行わなくても、前記第１演出に応じた操作が行われたことに基づいて、第２演出を行う第２演出実行手段として前記コンピュータをさらに機能させる、プログラム。
【請求項４４】
無線通信を行うことが可能な無線機器において行われる通信方法であって、
ユーザによって操作される操作ボタンに対して第１のタイミングで行われた第１の操作と、同じ操作ボタンに対して前記第１の操作が終了した後の第２のタイミングで行われた第２の操作とを含む複数の操作を蓄積する蓄積ステップと、
前記蓄積ステップにおいて蓄積された複数の操作を示す操作結果情報を他の機器に無線で送信する送信ステップとを含み、
前記他の機器は、第１演出情報を前記無線機器に送信し、
前記無線機器は、
前記第１演出情報を前記他の機器から受信する受信ステップと、
前記受信ステップで受信された前記第１演出情報に基づいて第１演出を実行する第１演出実行ステップとさらに含み、
前記蓄積ステップでは、前記第１演出に応じて行われた前記複数の操作を蓄積し、
前記無線機器は、前記第１演出情報を前記他の機器から受信した後、前記他の機器と通信を行わなくても、前記第１演出に応じた操作が行われたことに基づいて、第２演出を行う、通信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の機器と通信を行うことが可能な無線システム、無線機器、通信プログラム、および通信方法に関する。
【背景技術】
【０００２】
従来より、近距離での無線通信を行う機器が存在する（例えば、特許文献１）。例えば、Ｂｌｕｅｔｏｏｔｈ（登録商標）規格による通信では、ある機器がマスターとなり別の機器がスレーブとなって１つのネットワークを構成し通信が行われる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１４−１７９８９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来の無線通信においては、一方の機器で行われた操作の情報を他方の機器に効率的（消費電力を抑えることを含む）に送信することに関して改善の余地があった。
【０００５】
それ故、本発明の目的は、一方の機器で行われた操作の情報を他方の機器に効率的（消費電力を抑えることを含む）に送信することが可能な技術を提供することである。
【課題を解決するための手段】
【０００６】
本発明は、上記の課題を解決するために、以下の構成を採用した。
【０００７】
一実施形態では、無線通信を行うことが可能な複数の機器を含む無線システムであって、当該無線システムは第１の機器と第２の機器とを含む。前記第１の機器は、接続確立手段と、ユーザによって操作される操作手段と、蓄積手段と、送信手段とを備える。接続確立手段は、前記第２の機器と接続を確立する。蓄積手段は、前記操作手段に対して行われた複数の操作を蓄積する。送信手段は、前記第２の機器と接続された状態において、前記蓄積手段によって蓄積された複数の操作を示す操作結果情報を前記第２の機器に無線で送信する。
【０００８】
上記によれば、第１の機器は操作手段に対して行われた複数の操作を蓄積し、当該蓄積した複数の操作を示す操作結果情報を第２の機器に送信することができる。これにより、例えば、第１の機器と第２の機器とが頻繁に通信されなくても、第１の機器において行なわれた複数の操作を第２の機器にまとめて送信することができ、消費電力を抑えることができる。
【０００９】
上記実施形態では、前記蓄積手段は、第１のタイミングで行われた操作と当該第１のタイミングとは異なる第２のタイミングで行われた操作とを含む複数の操作を蓄積してもよい。
【００１０】
上記によれば、第１の機器は操作手段に対して異なるタイミング行われた複数の操作を蓄積し、当該蓄積した複数の操作を示す操作結果情報を第２の機器に送信することができる。これにより、例えば、第１の機器と第２の機器とが頻繁に通信されなくても、第１の機器において異なるタイミングで行なわれた複数の操作を第２の機器にまとめて送信することができ、消費電力を抑えることができる。
【００１１】
また、上記実施形態によれば、第１の機器において行なわれた各操作のタイミングを第２の機器は正確に知ることができる。すなわち、第１の機器からの情報が第２の機器に届くまでには遅延が発生し、この遅延にはバラつきがある。このため、例えば、操作手段に対して操作が行われる毎に当該操作の情報が逐次第２の機器に送信されると、第２の機器に操作の情報が届くまでの遅延のバラつきによって、第２の機器は、第１の機器において行なわれた各操作のタイミングを正確に知ることができない。しかしながら、上記実施形態では、第１のタイミングで行われた操作と第２のタイミングで行われた操作の情報が第２の機器に送信されるため、第２の機器は、第１のタイミングの操作と第２のタイミングの操作とがどの程度ずれているのかを正確に知ることができる。
【００１２】
上記実施形態では、前記第１の機器および前記第２の機器の少なくとも何れか一方は、前記第１の機器と前記第２の機器との間の通信の時間間隔を設定する間隔設定手段を備えてもよい。前記第１の機器と前記第２の機器とは、互いに接続された状態において前記間隔設定手段によって設定された時間間隔で無線通信を行う。前記第１の機器の送信手段は、前記間隔設定手段によって設定された時間間隔で行われる通信において前記操作結果情報を前記第２の機器に送信する。
【００１３】
上記によれば、第１の機器と第２の機器とは設定された所定の時間間隔で通信を行う。第１の機器は、複数の操作を蓄積し、所定の時間間隔で行われる通信において、蓄積した複数の操作を第２の機器に送信することができる。これにより、第１の機器において操作が行われる毎に第２の機器に当該操作の情報が送信される場合よりも電力消費を抑制することができるとともに、第１の機器において行われた複数の操作を第２の機器に送信することができる。
【００１４】
上記実施形態では、前記間隔設定手段は、前記第１の機器と前記第２の機器との間の接続が確立される際に前記時間間隔を設定してもよい。
【００１５】
上記によれば、接続が確立される際に時間間隔を設定することができ、例えば、あるタイミングで接続が確立される際の時間間隔と、別のタイミングで接続が確立される際の時間間隔とを異ならせることができる。
【００１６】
上記実施形態では、前記間隔設定手段は、予め定められた所定の範囲で前記時間間隔を設定してもよい。
【００１７】
上記によれば、予め定められた範囲で時間間隔を設定することができる。これにより、必要に応じて時間間隔を短くしたり、長くしたりすることができる。
【００１８】
上記実施形態では、前記間隔設定手段は、前記時間間隔を第１の時間間隔から当該第１の時間間隔とは異なる第２の時間間隔に変更してもよい。
【００１９】
上記によれば、上記時間間隔を変更することができる。
【００２０】
上記実施形態では、前記間隔設定手段は、前記第１の機器と前記第２の機器との接続中に、前記時間間隔を変更してもよい。
【００２１】
上記によれば、接続中に前記時間間隔を変更することができ、必要に応じて適切な時間間隔を設定して第１の機器と第２の機器との通信を行うことができる。
【００２２】
上記実施形態では、前記第１の機器および前記第２の機器の少なくとも何れか一方は、所定のアプリケーションを実行するアプリケーション実行手段を備えてもよい。前記間隔設定手段は、前記アプリケーション実行手段によって実行されるアプリケーションの種類、及び／又は、アプリケーションの実行状況に応じて、前記時間間隔を設定してもよい。
【００２３】
上記によれば、例えば、実行されるアプリケーションの種類によって時間間隔を異ならせることができる。また、アプリケーションの実行状況に応じて、時間間隔を異ならせることができる。ここで、アプリケーションの実行状況は、アプリケーションの実行開始からの経過時間、ユーザの操作に基づくアプリケーションの状態であってもよい。例えば、ゲームアプリケーションでは実行中のシーンやステージ、エリア、ミッション等、アプリケーションが休止状態か否か等であってもよい。
【００２４】
上記実施形態では、前記間隔設定手段は、前記アプリケーション実行手段によって実行されるアプリケーションの種類、及び／又は、アプリケーションの実行状況に応じて、前記時間間隔を変更してもよい。
【００２５】
上記によれば、既に設定されている時間間隔を、アプリケーションの種類及び／又はアプリケーションの実行状況に応じて変更することができ、アプリケーションの種類や実行状況に応じて、適切な時間間隔に変更することができる。
【００２６】
上記実施形態では、前記所定のアプリケーションは、複数の部分を有し、前記間隔設定手段は、実行されるアプリケーションの部分に応じて、前記時間間隔を変更してもよい。
【００２７】
上記によれば、アプリケーションの部分に応じて、時間間隔を変更することができる。例えば、ゲームアプリケーションが行われる場合に、ゲームのシーンに応じて時間間隔を変更することができる。
【００２８】
上記実施形態では、前記間隔設定手段は、前記所定のアプリケーションが実行されている状態から休止状態に移行する場合、前記時間間隔を変更してもよい。
【００２９】
上記によれば、アプリケーションが休止状態に移行する場合に、時間間隔を設定することができる。例えば、アプリケーションが休止状態になる場合に、時間間隔を長くすることができ、休止状態において電力消費を抑制することができる。
【００３０】
上記実施形態では、前記間隔設定手段は、前記第１の機器の前記操作手段に対する操作の頻度に応じて、前記時間間隔を設定してもよい。
【００３１】
上記によれば、操作手段に対する操作の頻度に応じて、前記時間間隔を設定することができる。例えば、操作手段が頻繁に操作される場合には、時間間隔を短くすることができ、操作に対する遅延を抑制することができる。
【００３２】
上記実施形態では、前記第２の機器も操作手段を備えてもよい。前記間隔設定手段は、前記第１の機器の操作手段および前記第２の機器の操作手段のうちの少なくとも何れか一方に対する操作の頻度に応じて、前記時間間隔を設定してもよい。
【００３３】
上記によれば、第１の機器及び／又は第２の機器の操作手段に対する操作の頻度に応じて、第１の機器と第２の機器との間の通信の時間間隔を設定することができる。
【００３４】
上記実施形態では、前記第１の機器には機能の異なる複数の種類があり、前記間隔設定手段は、前記第１の機器の種類に応じて、前記時間間隔を設定してもよい。
【００３５】
上記によれば、第２の機器と接続される第１の機器の種類に応じて、時間間隔を異ならせることができる。例えば、第１の機器が有する機能に応じて、時間間隔を異ならせることができる。
【００３６】
上記実施形態では、前記第２の機器には機能の異なる複数の種類があり、前記間隔設定手段は、前記第２の機器の種類に応じて、前記時間間隔を設定してもよい。
【００３７】
上記によれば、第２の機器の種類に応じて、第１の機器と第２の機器との間の通信の時間間隔を異ならせることができる。
【００３８】
上記実施形態では、前記第１の機器および前記第２の機器の少なくとも何れか一方は、所定のアプリケーションを実行するアプリケーション実行手段を備えてもよい。前記所定のアプリケーションは複数の機器を用いて実行され、前記間隔設定手段は、前記所定のアプリケーションが行われる機器の数に応じて、前記時間間隔を設定してもよい。
【００３９】
上記によれば、複数の機器を用いてアプリケーションが実行される場合に、機器の数に応じて上記時間間隔を設定することができる。例えば、複数の機器を用いてゲームが行われる場合には、当該ゲームに参加するプレイヤの数によって時間間隔を設定することができる。
【００４０】
上記実施形態では、前記無線システムは、前記第１の機器および第２の機器とは異なる第３の機器を含んでもよい。前記第２の機器は、前記第３の機器と通信を行う。前記間隔設定手段は、前記第２の機器と前記第３の機器との間の通信の状況に応じて、前記第１の機器と第２の機器との間の通信における前記時間間隔を設定してもよい。
【００４１】
上記によれば、第２の機器と第３の機器との通信の状況によって、第１の機器と第２の機器との間の通信の時間間隔を設定することができる。ここで、「第２の機器と第３の機器との通信の状況」は、第２の機器と第３の機器との通信の有無、第２の機器と第３の機器との通信の頻度、第２の機器と第３の機器との間で送受信されるデータの量等であってもよい。
【００４２】
上記実施形態では、前記第２の機器をマスターとし、前記第１の機器をスレーブとして、前記第１の機器と前記第２の機器との接続が確立され、マスターとして動作する前記第２の機器が前記間隔設定手段を備えてもよい。
【００４３】
上記によれば、マスターとして動作する第２の機器が前記時間間隔を設定することができる。
【００４４】
上記実施形態では、前記第１の機器および前記第２の機器の少なくとも何れか一方は、前記第１の機器と前記第２の機器との接続における許容期間を設定する許容期間設定手段を備えてもよい。前記第２の機器は、前記第１の機器と接続された状態において、所定の時間間隔で所定のパケットを前記第２の機器に送信する。また、第１の機器は、前記第２の機器と接続された状態において、前記許容期間に基づいて、前記第２の機器からの前記所定のパケットに対する応答を前記第２の機器に返すか否かを判定する。
【００４５】
上記によれば、第１の機器と第２の機器との間の接続には許容期間が設定される。第１の機器は、第２の機器に対する応答を送信するかどうかを判定することができる。これにより、第１の機器は、無駄な通信を省略して電力消費を抑制することができる。ここで、許容期間は、例えば、後述するスレーブレイテンシーのように所定の時間間隔で行われる第１の機器と第２の機器との間の通信の回数（例えば、コネクションイベントの回数）によって定められてもよいし、時間によって定められてもよい。
【００４６】
上記実施形態では、前記第１の機器は、前記操作結果情報を、前記所定のパケットの対する応答に含めて送信してもよい。
【００４７】
上記によれば、第１の機器は、操作結果情報を所定のパケットに対する応答に含めて送信することができる。これにより、第１の機器は、操作結果情報を第２の機器に送信することができるとともに、第１の機器に応答を返すことができる。
【００４８】
上記実施形態では、前記第１の機器は、前記操作手段に対する操作の有無に応じて、前記操作結果情報を前記応答に含めて前記第２の機器に送信するか否かを判定し、前記操作手段に対する操作があった場合、前記操作結果情報を含む前記応答を前記第２の機器に送信すると判定してもよい。また、第１の機器は、前記操作手段に対する操作がなかった場合であっても前記応答を送信しない期間と前記許容期間とに基づいて、前記応答を前記第２の機器に送信すると判定してもよい。
【００４９】
上記によれば、操作手段に対する操作が有った場合には当該操作に応じた操作結果情報を前記応答に含めて第２の機器に送信することができる。また、例えば、操作手段に対する応答が無かった場合でも、前記応答を送信しない期間が前記許容期間を超える場合は前記応答を第２の機器に送信することができる。これにより、第１の機器は第２の機器との接続を維持しつつ、消費電力を抑えながら必要に応じて操作結果情報を第２の機器に送信することができる。
【００５０】
上記実施形態では、前記第１の機器および前記第２の機器の少なくとも何れか一方は、所定のアプリケーションを実行するアプリケーション実行手段を含んでもよい。前記許容期間設定手段は、前記アプリケーション実行手段によって実行されるアプリケーションの種類、及び／又は、アプリケーションの実行状況に応じて、前記許容期間を設定してもよい。
【００５１】
上記によれば、例えば、実行されるアプリケーションの種類によって許容期間を異ならせることができる。また、アプリケーションの実行状況に応じて、許容期間を異ならせることができる。
【００５２】
前記第１の機器および前記第２の機器の少なくとも何れか一方は、前記第１の機器と前記第２の機器との接続における接続維持期間を設定する接続維持期間設定手段を備えてもよい。前記第２の機器は、前記第１の機器と接続された状態において、所定の時間間隔で所定のパケットを前記第１の機器に送信する。また、第２の機器は、前記第１の機器と接続された状態において、前記第１の機器から前記所定のパケットに対する応答が無い期間と前記接続維持期間とに基づいて、前記第１の機器との接続を切断するかを判定する。
【００５３】
上記によれば、第２の機器は、第１の機器から前記応答が無い期間と前記接続維持期間とに基づいて、第１の機器との接続を維持するか、切断するかを判定することができる。例えば、第２の機器は、第１の機器からの応答が無い期間が前記接続維持期間を超えた場合、第１の機器との接続を切断してもよい（すなわち、第１の機器および第２の機器は接続状態から非接続状態に移行してもよい）。なお、接続維持期間は、例えば後述する接続監視タイムアウトのように時間によって定められてもよいし、所定の時間間隔で行なわれる第１の機器と第２の機器との間の通信の回数（例えば、コネクションイベントの回数）によって定められてもよい。
【００５４】
上記実施形態では、第３のタイミングで前記第１の機器と前記第２の機器との間の通信が行われてから前記間隔設定手段によって設定された時間間隔が到来した第４のタイミングで前記第１の機器と前記第２の機器の間の通信が行われてもよい。前記蓄積手段は、前記第３のタイミングから前記第４のタイミングまでの期間において前記操作手段に対して行われた複数の操作（第１のタイミングでの操作及び第２のタイミングでの操作）を蓄積してもよい。前記第１の機器の送信手段は、前記第４のタイミングで行われる通信において、前記蓄積手段によって蓄積された複数の操作を示す操作結果情報を前記第２の機器に送信してもよい。
【００５５】
上記によれば、第３のタイミングから第４のタイミングまでの操作を蓄積し、蓄積した操作を示す操作結果情報を第４のタイミングにおいて第２の機器に送信することができる。
【００５６】
上記実施形態では、前記第２の機器は、前記第１の機器の前記送信手段によって送信された操作結果情報に基づいて所定の処理を実行してもよい。
【００５７】
上記によれば、第２の機器は、第１の機器において行われた操作に基づいて所定の処理を行うことができる。例えば、第２の機器は、第１の機器において行われた操作に基づいて、当該操作の判定やゲーム処理を行うことができる。
【００５８】
上記実施形態では、前記第１の機器は、ユーザに対する出力を行う出力手段を更に備えてもよい。前記第２の機器は、前記所定の処理の実行結果を前記第１の機器に送信してもよい。前記第１の機器は、前記所定の処理の実行結果を受信し、当該実行結果に応じた出力を前記出力手段を用いて行ってもよい。
【００５９】
上記によれば、第１の機器は、第２の機器において行われた所定の処理の実行結果に応じて、ユーザに対して出力を行うことができる。例えば、ユーザに対する出力を行う出力手段としては、文字や画像を表示する表示装置、ＬＥＤ等の発光装置、音声を出力するスピーカ、振動を発生させるバイブレータ等が用いられてもよい。
【００６０】
上記実施形態では、前記第２の機器は、ユーザに対する出力を行なう出力手段を備え、当該出力手段を用いて前記所定の処理の実行結果に応じた出力を行ってもよい。
【００６１】
上記によれば、第２の機器は、第１の機器において行われた操作に基づいて、例えば画像や音声を出力することができる。
【００６２】
上記実施形態では、前記第１の機器と前記第２の機器とは、互いに接続された状態において所定の時間間隔で無線通信を行ってもよい。前記第２の機器は、前記所定の時間間隔で行われる通信において、前記所定の処理の実行結果を前記第１の機器に送信してもよい。
【００６３】
上記によれば、第２の機器は、所定の時間間隔で行われる通信において、所定の処理の実行結果を前記第１の機器に送信することができる。
【００６４】
上記実施形態では、前記第２の機器は、第１演出情報を前記第１の機器に送信してもよい。前記第１の機器は、前記第１演出情報を前記第２の機器から受信する受信手段と、前記受信手段によって受信された前記第１演出情報に基づいて第１演出を実行する第１演出実行手段とを備えてもよい。
【００６５】
上記によれば、第１の機器は、第２の機器から第１演出情報を受信したことに基づいて第１演出を実行することができる。
【００６６】
上記実施形態では、前記蓄積手段は、前記第１演出に応じて行われた前記複数の操作を蓄積してもよい。
【００６７】
上記によれば、第１の機器のユーザは、第１演出の応じた操作を行うことができ、当該第１演出に応じた複数の操作が第１の機器において蓄積される。
【００６８】
上記実施形態では、前記第２の機器は、所定の時間間隔で前記第１の機器に送信する接続を維持するための所定のパケットに、前記第１演出情報を含めて送信してもよい。前記第１の機器は、前記所定のパケットに対する応答に前記操作結果情報を含めて当該応答を前記第２の機器に送信してもよい。
【００６９】
上記によれば、接続を維持するための所定のパケットが第２の機器から第１の機器に所定の時間間隔で送信される。第２の機器は、当該所定のパケットに前記第１演出情報を含めて送信することができる。これにより、第２の機器は、所定のパケットを送信するだけで第１の機器との接続を維持するとともに、第１演出情報を第１の機器に送信することができる。
【００７０】
上記実施形態では、前記第２の機器は、操作判定手段と、処理手段とを備えてもよい。操作判定手段は、前記操作結果情報に基づいて、前記第１演出に応じた操作が前記第１機器において行われたか否かを判定する。処理手段は、前記操作判定手段による判定結果に基づいて所定の処理を行う。
【００７１】
上記によれば、第２の機器から第１の機器に第１演出情報が送信され、第１の機器において第１演出情報に基づく第１演出が行われる。第１演出に応じた操作が第１の機器において行われたか否かによって、第２の機器は所定の処理を行う。これにより、例えば、第１の機器と第２の機器とを用いたインタラクティブなアプリケーションを行うことができる。
【００７２】
上記実施形態では、前記第１の機器と前記第２の機器とは、互いに接続された状態において所定の時間間隔で無線通信を行ってもよい。前記第２の機器は、前記所定の時間間隔で行われる通信において前記第１演出情報を前記第１の機器に送信してもよい。前記第１の機器は、前記第１演出情報に基づく前記第１演出を、前記所定の時間間隔を跨いで実行してもよい。
【００７３】
上記によれば、第１の機器と第２の機器との通信が所定の時間間隔で行われ、第１の機器は、所定の時間間隔を跨いで第１演出を行う。これにより、第１の機器と第２の機器との間の通信の時間間隔よりも長い演出を第１の機器に行わせることができる。
【００７４】
上記実施形態では、前記第１演出情報には優先度が設定されてもよい。前記第１の機器は、優先度の高い前記第１演出情報に基づく演出を優先度の低い前記第１演出情報に基づく演出よりも優先して実行してもよい。
【００７５】
上記によれば、第２の機器から送信される第１演出情報に優先度を設定することができる。
【００７６】
上記実施形態では、前記第２の機器は、操作条件と第２演出情報とを前記第１の機器に送信してもよい。前記第１の機器は、前記操作条件と前記第２演出情報とを受信する受信手段と、前記操作条件を満たす操作が前記操作手段を用いて行われた場合、前記第２演出情報に基づいて第２演出を実行する第２演出実行手段とを備えてもよい。
【００７７】
上記によれば、第２の機器から操作条件と第２演出情報とを同時に第１の機器に送信することができ、第１の機器は、操作条件を満たす操作が行われた場合に、第２演出情報に基づいて第２演出を行うことができる。
【００７８】
上記実施形態では、前記第１の機器と前記第２の機器とは、互いに接続された状態において所定の時間間隔で無線通信を行ってもよい。前記第２の機器は、前記所定の時間間隔で行われる通信において前記操作条件を前記第１の機器に送信してもよい。前記操作条件は、前記所定の時間間隔を跨いで満たされる条件であってもよい。
【００７９】
上記によれば、第１の機器と第２の機器との通信が所定の時間間隔で行われ、操作条件は、所定の時間間隔を跨いで満たされる条件である。これにより、第１の機器と第２の機器との間の通信の時間間隔よりも長い期間において、操作条件を満たす操作が行われたか否かを判定することができる。
【００８０】
上記実施形態では、前記第２演出情報には優先度が設定されてもよい。前記第１の機器は、優先度の高い前記第２演出情報に基づく演出を優先度の低い前記第２演出情報に基づく演出よりも優先して実行してもよい。
【００８１】
上記によれば、第２の機器から送信される第２演出情報に優先度を設定することができる。
【００８２】
上記実施形態では、前記第１の機器は、振動、光、音の少なくとも何れか１つを用いて前記演出を行ってもよい。
【００８３】
上記によれば、比較的小さなデータで第１の機器に演出を行わせることができる。
【００８４】
上記実施形態では、前記操作手段は、操作ボタンであってもよい。前記蓄積手段は、前記操作ボタンに対して行われた複数回の操作を蓄積してもよい。前記送信手段は、前記操作ボタンに対して行われた複数回の操作を示す操作結果情報を前記第２の機器に送信してもよい。
【００８５】
上記によれば、第１の機器において、操作ボタンに対する複数の操作を蓄積して、第２の機器に当該複数の操作を示す操作結果情報を送信することができる。
【００８６】
上記実施形態では、前記操作手段は、タッチパネルであってもよい。前記蓄積手段は、前記タッチパネルに対して行われた第１の操作と、当該第１の操作とは別のタイミングで行われた第２の操作とを蓄積してもよい。前記送信手段は、前記タッチパネルに対して行われた前記第１の操作及び第２の操作を示す操作結果情報を前記第２の機器に送信してもよい。
【００８７】
上記によれば、第１の機器のタッチパネルに対して行なわれた複数の操作を蓄積して、第２の機器に送信することができる。ここで、タッチパネルに対する第１の操作は、例えばタッチパネルに対するタッチオンからタッチオフまでの一連の操作であってもよく、複数のタッチ位置として検出される。また、タッチパネルに対する第２の操作は、第１の操作とは異なるタイミングで行なわれた一連の操作であり、複数のタッチ位置として検出される。例えば、ユーザによってタッチパネル（画面）上で横方向に直線が描かれ、続いて円が描かれた場合、横方向の直線は「タッチパネルに対する第１の操作」であり、円は「タッチパネルに対する第２の操作」である。このようなタッチパネルに対して行なわれた複数の操作が第１の機器において蓄積され、当該蓄積された複数の操作が、第２の機器にまとめて送信される。
【００８８】
上記実施形態では、前記第１の機器及び前記第２の機器のうちの何れか一方の機器は、接続を確立するためのデータをブロードキャストで送信するブロードキャスト手段を備えてもよい。前記第１の機器及び前記第２の機器のうちの他方の機器が前記ブロードキャストで送信されたデータを受信したことに応じて、前記一方の機器と前記他方の機器との間の接続が確立されてもよい。
【００８９】
上記によれば、一方の機器からブロードキャストで接続を確立するためのデータを送信することにより、他方の機器と接続を確立することができる。
【００９０】
上記実施形態では、前記第１の機器が前記ブロードキャスト手段を備えてもよい。前記接続確立手段は、前記第２の機器をマスターとして、前記第１の機器をスレーブとして前記第２の機器と接続を確立してもよい。
【００９１】
上記によれば、スレーブとして動作する第１の機器から接続を確立するためのデータをブロードキャストで送信することができる。
【００９２】
上記実施形態では、前記第２の機器が前記間隔設定手段を備えてもよい。前記第２の機器の前記間隔設定手段は、前記第１の機器から前記ブロードキャストで送信されたデータを受信したことに応じて、前記時間間隔を設定し、当該設定した時間間隔を前記第１の機器に通知してもよい。
【００９３】
上記によれば、マスターとして動作する第２の機器が前記時間間隔を設定することができる。
【００９４】
上記実施形態では、前記第１の機器と前記第２の機器とは、互いに接続された状態において所定の時間間隔で通信を行ってもよい。前記第１の機器は、前記第２の機器と接続を確立する際に、前記第２の機器の時刻の精度情報を受信し、前記第２の機器からデータを受信する際に、前記所定の時間間隔と前記精度情報とに基づいて、前記第２の機器からのデータの受信を試みてもよい。
【００９５】
上記によれば、第１の機器は、第２の機器の時刻の精度情報を受信することができ、当該精度情報に基づいて、第２の機器からのデータを受信することができる。
【００９６】
上記実施形態では、前記第１の機器および第２の機器は、電波の周波数を切り替えながら前記無線通信を行ってもよい。
【００９７】
上記によれば、周辺に電波を送信する機器があっても電波の干渉を避けることができる。
【００９８】
上記実施形態では、前記第１の機器と前記第２の機器との間の通信の規格は、Ｂｌｕｅｔｏｏｔｈ  Ｌｏｗ  Ｅｎｅｒｇｙであってもよい。
【００９９】
上記によれば、ＢＬＥ規格を用いて第１の機器および第２の機器の消費電力を抑えることができる。
【０１００】
他の実施形態では、無線通信を行うことが可能な無線機器であって、無線機器は、ユーザによって操作される操作手段と、蓄積手段と、送信手段とを備えてもよい。蓄積手段は、前記操作手段に対して第１のタイミングで行われた操作と当該第１のタイミングとは異なる第２のタイミングで行われた操作とを含む複数の操作を蓄積する。送信手段は、前記蓄積手段によって蓄積された複数の操作を示す操作結果情報を前記他の機器に無線で送信する。
【０１０１】
他の実施形態では、複数の機器の間で接続を確立することにより所定のゲーム処理を行う無線システムであって、当該無線システムは第１の機器と第２の機器とを含んでもよい。前記第２の機器は、間隔設定手段と、許容期間設定手段と、接続維持期間設定手段と、第２送信手段と、第２受信手段と、第２制御手段と、判定手段とを備える。間隔設定手段は、所定の時間間隔を設定する。許容期間設定手段は、所定の許容期間を設定する。接続維持期間設定手段は、所定の接続維持期間を設定する。第２送信手段は、前記第１の機器と接続された状態において、前記間隔設定手段によって設定された所定の時間間隔で所定のパケットを前記第１の機器に送信する。第２受信手段は、前記所定のパケットに対する応答パケットを前記第１の機器から受信する。前記第２制御手段は、前記応答パケットに基づいて前記ゲーム処理を制御する。判定手段は、前記第１の機器から前記応答パケットを受信しなかった期間と前記接続維持期間とに基づいて、前記第１の機器との接続を維持するか、前記第１の機器との接続を切断するかを判定する。前記第１の機器は、第１受信手段と、第１制御手段と、応答判定手段と、第１送信手段とを備える。第１受信手段は、前記所定の時間間隔で送信される前記所定のパケットを前記第２の機器から受信する。第１制御手段は、前記所定のパケットに基づいて前記ゲーム処理を制御する。応答判定手段は、前記ゲーム処理の実行状況に応じて、前記応答パケットを前記第２の機器に送信するか否かを判定する。第１送信手段は、前記応答判定手段によって前記応答パケットを送信すると判定された場合、前記応答パケットを前記第２の機器に送信する。前記所定の時間間隔、前記所定の許容期間、及び、前記所定の接続維持期間のうちの少なくとも何れか１つは、前記ゲーム処理に応じて設定される。
【０１０２】
上記によれば、第１の機器と第２の機器とが接続を確立し、第１の機器と第２の機器との間でゲーム処理を行う。具体的には、第１の機器と第２の機器とは、設定された所定の時間間隔、所定の許容期間、所定の接続維持期間（これらを接続パラメータという）に基づいて通信を行う。また、ゲーム処理は、第２の機器からの所定のパケット、第１の機器からの応答パケットに基づいて行なわれる。そして、ゲーム処理に応じて、３つの接続パラメータ（所定の時間間隔、所定の許容期間、所定の接続維持期間）のうち少なくとも何れか１つが設定される。これにより、ゲーム処理に応じて、接続パラメータを設定することができ、ゲームに応じたパラメータを設定することができる。
【０１０３】
なお、ここで接続パラメータを「設定する」とは、新たな接続を確立する際に新たにパラメータを設定すること、及び、接続された状態でパラメータを新たな値に変更することの両方を意味してもよい。また、「所定の許容期間」は、時間によって定められてもよいし、例えば後述するスレーブレイテンシーのように所定の時間間隔で行なわれる第１の機器と第２の機器との間の通信の回数によって定められてもよい。また、「所定の接続維持期間」は、例えば後述する接続監視タイムアウトのように時間によって定められてもよいし、所定の時間間隔で行なわれる第１の機器と第２の機器との間の通信の回数によって定められてもよい。すなわち、ここでいう「期間」は、概念的に、時間だけでなく通信の回数も含まれる。
【０１０４】
上記実施形態では、前記第１の機器と前記第２の機器とが接続された状態において、前記第２の機器がマスターであり、前記第１の機器がスレーブであってもよい。
【０１０５】
上記によれば、第２の機器をマスター、第１の機器をスレーブとして２つの機器が接続され、マスター・スレーブ間の通信によってゲーム処理を行うことができる。
【０１０６】
また、上記実施形態では、前記第１の機器と前記第２の機器とが接続された状態において、前記第１の機器の前記応答判定手段は、前記許容期間に基づいて、前記応答パケットを前記第２の機器に送信するか否かを判定してもよい。
【０１０７】
上記によれば、第１の機器は、ゲーム処理の実行状況に加えて、許容期間に基づいて応答パケットを第２の機器に送信するか否かを判定することができる。例えば、第１の機器は、ゲーム処理の実行状況によって第２の機器に送信すべきデータがある場合には、応答パケットに当該データを含めて第２の機器に送信することができる。また、第１の機器は、送信すべきデータが無い場合であっても、第２の機器に応答パケットを送信しない期間が前記許容期間を超える場合には、応答パケットを第２の機器に送信すると判断することができる。これにより、ゲーム処理を進めることができるとともに、第１の機器の消費電力を抑えることができる。
【０１０８】
上記実施形態では、前記第１の機器および第２の機器は、電波の周波数を切り替えながら無線通信を行ってもよい。
【０１０９】
上記によれば、前記第１の機器および第２の機器は、電波の周波数を切り替えながら無線通信を行うことによりゲーム処理を実行することができる。このため、例えば、特定の周波数でノイズが発生した場合でも他の周波数に切り替えて通信を行うことができるため、ゲーム処理を進めることができる。
【０１１０】
上記実施形態では、前記第２送信手段は、所定の情報を前記所定のパケットに含めて前記第１の機器に送信することが可能であってもよい。また、前記第１機器は、前記第１受信手段によって受信された所定のパケットに含まれる前記所定の情報に基づく操作を行うための操作手段をさらに備えてもよい。前記第１送信手段は、前記操作手段に対して行われた操作を示す操作結果情報を前記応答パケットに含めて前記第２の機器に送信することが可能であってもよい。
【０１１１】
上記によれば、第１の機器が備える操作手段を用いた操作によって第１の機器と第２の機器との間でゲーム処理を実行することができ、２つの機器間でインタラクティブなゲームを行なうことができる。
【０１１２】
上記実施形態では、前記第１の機器は、ユーザに対する出力を行なう出力手段を更に備えてもよい。前記第２送信手段は、前記ゲーム処理手段によるゲーム処理の結果を前記第１の機器に送信し、前記第１の機器は、前記出力手段を用いて前記ゲーム処理の結果に基づく出力を行ってもよい。
【０１１３】
また、他の実施形態では、複数の機器の間で接続を確立することにより所定のゲーム処理を行う無線システムに含まれる無線機器であってもよい。当該無線機器は、所定の時間間隔を設定する間隔設定手段と、所定の許容期間を設定する許容期間設定手段と、所定の接続維持期間を設定する接続維持期間設定手段と、前記無線システムに含まれる他の機器と接続された状態において、前記間隔設定手段によって設定された所定の時間間隔で所定のパケットを前記他の機器に送信する送信手段と、前記所定のパケットに対する応答パケットを前記他の機器から受信する受信手段と、前記応答パケットに基づいて前記ゲーム処理を制御する制御手段と、前記他の機器から前記応答パケットを受信しなかった期間と前記接続維持期間とに基づいて、前記他の機器との接続を維持するか、前記他の機器との接続を切断するかを判定する判定手段と、を備える。そして、前記所定の時間間隔、前記所定の許容期間、及び、前記所定の接続維持期間のうちの少なくとも何れか１つは、前記ゲーム処理に応じて設定されてもよい。
【０１１４】
また、他の実施形態では、複数の機器の間で接続を確立することにより所定のゲーム処理を行う無線システムに含まれる無線機器であってもよい。当該無線機器は、所定の時間間隔を設定する間隔設定手段と、所定の許容期間を設定する許容期間設定手段と、所定の接続維持期間を設定する接続維持期間設定手段と、前記無線システムに含まれる他の機器から前記所定の時間間隔で送信される所定のパケットを受信する受信手段と、前記所定のパケットに基づいて前記ゲーム処理を制御する制御手段と、前記他の機器から前記所定のパケットを受信しなかった期間と前記接続維持期間とに基づいて、前記他の機器との接続を維持するか、前記他の機器との接続を切断するかを判定する判定手段と、前記ゲーム処理の実行状況に応じて、前記所定のパケットに対する応答パケットを前記他の機器に送信するか否かを判定する応答判定手段と、前記応答判定手段によって前記応答パケットを送信すると判定された場合、前記応答パケットを前記他の機器に送信する送信手段と、を備える。前記応答判定手段は、前記許容期間に基づいて、前記応答パケットを前記他の機器に送信するか否かを判定してもよい。また、前記所定の時間間隔、前記所定の許容期間、及び、前記所定の接続維持期間のうちの少なくとも何れか１つは、前記ゲーム処理に応じて設定されてもよい。
【０１１５】
上記によれば、第２の機器におけるゲーム処理の結果を第１の機器に送信することができ、第１の機器において当該ゲーム処理の結果に基づく出力を行うことができる。なお、ユーザに対する出力を行う出力手段としては、文字や画像を表示する表示装置、ＬＥＤ等の発光装置、音声を出力するスピーカ、振動を発生させるバイブレータ等が用いられてもよい。
【０１１６】
他の実施形態では、操作手段を有する他の機器と無線通信を行うことが可能な無線機器であってもよい。前記無線機器は、間隔設定手段と、接続確立手段と、送信手段とを備える。間隔設定手段は、所定の時間間隔を設定する。接続確立手段は、前記他の機器と接続を確立する。送信手段は、前記接続確立手段によって接続が確立された後、前記間隔設定手段によって設定された前記所定の時間間隔で所定のパケットを前記他の機器に送信する。前記送信手段は、前記操作手段に対する操作に関する操作条件と、当該操作条件が満たされたときに前記他の機器において行われる演出の内容を示す演出情報とを、前記所定のパケットに含めて送信する。
【０１１７】
上記によれば、無線機器は、操作条件と、当該操作条件を満たす操作が行われた場合に実行される演出を示す演出情報とをまとめて他の機器に送信することができる。
【０１１８】
上記実施形態では、前記演出情報には、あるタイミングで送信された演出情報に基づく演出と別のタイミングで送信された演出情報に基づく演出とで、どちらを優先して前記他の機器に行わせるかを示す優先度が設定されてもよい。
【０１１９】
上記実施形態では、前記操作条件は、前記操作手段に対する操作を受け付ける期間を含んでもよい。
【０１２０】
上記実施形態では、前記演出情報は、前記他の機器において行われる演出のパターンを示す情報であってもよい。
【０１２１】
上記実施形態では、前記操作条件は、前記所定の時間間隔を跨いで満たされる条件であってもよい。
【０１２２】
上記実施形態では、前記演出情報に基づく演出は、振動、発光、および音の少なくとも何れか１つであってもよい。
【０１２３】
上記実施形態では、上記無線機器は、前記他の機器から当該他の機器の操作手段に対して行われた複数の操作を示す操作結果情報を受信する受信手段と、前記受信手段によって受信された操作結果情報に基づいて所定の処理を実行する実行手段とを備えてもよい。
【０１２４】
上記実施形態では、前記接続確立手段は、前記他の機器からブロードキャストで送信された接続を確立するためのデータを受信したことに応じて、前記他の機器と接続を確立してもよい。
【０１２５】
上記実施形態では、前記無線機器と前記他の機器とは、電波の周波数を切り替えながら前記無線通信を行ってもよい。
【０１２６】
上記実施形態では、前記無線機器と前記他の機器との間の無線通信の規格は、Ｂｌｕｅｔｏｏｔｈ  Ｌｏｗ  Ｅｎｅｒｇｙであってもよい。
【０１２７】
他の実施形態では、第１の機器と第２の機器との間で無線通信を行う無線システムであって、当該無線システムは、前記第１の機器または第２の機器の操作手段に対する操作に基づいて所定のゲーム処理を実行してもよい。前記第２の機器は、間隔設定手段と、許容期間設定手段と、接続維持期間設定手段と、第２送信手段と、第２受信手段と、第２制御手段と、判定手段と、を備える。間隔設定手段は、所定の時間間隔を設定する。許容期間設定手段は、所定の許容期間を設定する。接続維持期間設定手段は、所定の接続維持期間を設定する。第２送信手段は、前記間隔設定手段によって設定された所定の時間間隔で所定のパケットを前記第１の機器に送信する。第２受信手段は、前記所定のパケットに対する応答パケットを前記第１の機器から受信する。第２制御手段は、前記応答パケットに基づいて前記ゲーム処理を制御する。判定手段は、前記第１の機器から前記応答パケットを受信しなかった期間と前記接続維持期間とに基づいて、前記第１の機器との接続を維持するか、前記第１の機器との接続を切断するかを判定する。また、前記第１の機器は、第１受信手段と、第１制御手段と、応答判定手段と、第１送信手段と、を備える。第１受信手段は、前記所定の時間間隔で送信される前記所定のパケットを前記第２の機器から受信する。第１制御手段は、前記所定のパケットに基づいて前記ゲーム処理を制御する。応答判定手段は、前記許容期間に基づいて、前記応答パケットを前記第２の機器に送信するか否かを判定する。第１送信手段は、前記応答判定手段によって前記応答パケットを送信すると判定された場合、前記応答パケットを前記第２の機器に送信する。前記所定の時間間隔、前記所定の許容期間、及び、前記所定の接続維持期間のうちの少なくとも何れか１つは、前記ゲームの種類、及び／又は、前記ゲーム処理の実行状況、前記第１の機器または第２の機器の操作手段に対する操作の頻度、前記第１の機器または第２の機器の種類、および、前記無線システムに含まれる機器の数、のうちの少なくとも何れか１つに基づいて設定される。
【０１２８】
上記によれば、ゲーム処理の実行状況、ゲームの種類、操作手段に対する操作の頻度、機器の種類や数等様々な状況によって前記時間間隔、許容期間、接続維持期間（これらを接続パラメータという）のうちの少なくとも何れか１つを設定することができる。なお、接続パラメータを「設定する」とは、新たな接続を確立する際に新たにパラメータを設定すること、及び、接続された状態でパラメータを新たな値に変更することの両方を意味してもよい。また、ここでいう「期間」は、概念的に、時間だけでなく通信の回数も含まれる。
【０１２９】
他の実施形態は、上記無線機器（無線システム）に含まれる機器のそれぞれであってもよいし、各機器において実行されるプログラムであってもよい。また上記実施形態は、上記無線機器（無線システム）において実行される通信方法であってもよい。
【発明の効果】
【０１３０】
本発明によれば、消費電力を抑えつつ通信を行うことができる。
【図面の簡単な説明】
【０１３１】
【図１】携帯端末１０と、ＢＬＥ端末２０とを含む一般的なＢＬＥネットワークの一例を示す図
【図２】携帯端末１０の内部構成の一例を示すブロック図
【図３】ＢＬＥ端末２０の内部構成の一例を示すブロック図
【図４】携帯端末１０とＢＬＥ端末２０とが接続されていない状態から接続された状態になるまでの通信の流れの一例を示す図
【図５】接続状態における携帯端末１０とＢＬＥ端末２０との通信の一例を示す図
【図６】携帯端末１０がアドバタイジングを繰り返すことにより他の機器と接続せずにデータを送信する様子を示す図
【図７】携帯端末１０と他の機器とがスキャンとアドバタイジングを繰り返すことにより接続せずに通信を行う様子を示す図
【図８】本実施形態における携帯端末１０とＢＬＥ端末２０とを用いたインタラクティブなアプリケーションが実行された場合の処理の概略を示す図
【図９】図８に示す処理が行われる場合の通信の流れの一例を示す図
【図１０】図９のコネクションイベントＣＥ１において携帯端末１０からＢＬＥ端末２０に送信される演出データＤの構造の一例を示す図
【図１１】携帯端末１０からＢＬＥ端末２０に演出データＤが送信された後のＢＬＥ端末２０において行われる演出の一例を示す図
【図１２】ＢＬＥ端末２０において入力ボタン２２に対する操作が行われた場合にＢＬＥ端末２０から携帯端末１０に入力ボタン２２に対する操作を示す操作結果情報が送信される様子を示す図
【図１３Ａ】コネクションインターバルにおいて入力ボタン２２が１回だけ押された場合の操作結果情報を示す図
【図１３Ｂ】コネクションインターバルにおいて入力ボタン２２が２回押された場合の操作結果情報を示す図
【図１３Ｃ】コネクションインターバルにおいて入力ボタン２２が長押しされた場合の操作結果情報を示す図
【図１４】携帯端末１０とＢＬＥ端末２０とを用いたゲームの一例を示す図
【図１５】携帯端末１０とＢＬＥ端末２０とを用いた他のゲームの一例を示す図
【図１６】携帯端末１０とＢＬＥ端末２０とを用いた他の応用例を示す図
【図１７】図１６に示した応用例の処理の流れを示す図
【図１８】携帯端末１０のＣＰＵ１１によって行われるメイン処理の詳細を示すフローチャート
【図１９】図１８のステップＳ１１０におけるゲーム処理の詳細を示すフローチャート
【図２０】ＢＬＥ通信モジュール１６によって行われるマスター側接続処理の詳細を示すフローチャート
【図２１】携帯端末１０のＢＬＥ通信モジュール１６によって行われる接続状態の処理の詳細を示すフローチャート
【図２２】ＢＬＥ端末２０の制御回路２１によって行われるメイン処理の詳細を示すフローチャート
【図２３】図２２のステップＳ２０４における演出制御処理の詳細を示すフローチャート
【図２４】ＢＬＥ端末２０のＢＬＥ通信モジュール２５によって行われるスレーブ側接続処理の詳細を示すフローチャート
【図２５】ＢＬＥ端末２０のＢＬＥ通信モジュール２５によって行われる接続状態の処理の詳細を示すフローチャート
【発明を実施するための形態】
【０１３２】
以下、図面を参照して、一実施形態に係る無線通信システムについて説明する。本実施形態の無線通信システムは、無線通信が可能な複数の機器を含むシステムであり、各機器は、例えば、Bluetooth Low Energy（Bluetooth ４．ｘ。以下、「ＢＬＥ」と略する）規格に基づく通信を行うものとする。まず、ＢＬＥ規格の概要について説明する。
【０１３３】
（ＢＬＥの概要）
ＢＬＥ規格は、クラシックＢｌｕｅｔｏｏｔｈ（登録商標）（Ｖｅｒ．１．ｘ−３．ｘ）よりも消費電力が低くなるように設計された通信規格である。ＢＬＥではクラシックＢｌｕｅｔｏｏｔｈよりも最大送信電力を抑えたり、無線通信の動作時間や動作回数を減らしたりすることにより、消費電力が抑えられる。ＢＬＥでは、クラシックＢｌｕｅｔｏｏｔｈと比較して、通信の時間間隔は長く、この時間間隔は変更可能である。また、ＢＬＥでは、クラシックＢｌｕｅｔｏｏｔｈと同様に、１のマスターに対して複数のスレーブが接続可能なスター型のネットワークトポロジーが採用されている。
【０１３４】
図１は、携帯端末１０と、ＢＬＥ端末２０とを含む一般的なＢＬＥネットワークの一例を示す図である。図２は、携帯端末１０の内部構成の一例を示すブロック図である。図３は、ＢＬＥ端末２０の内部構成の一例を示すブロック図である。
【０１３５】
図１に示すように、通信可能な範囲には携帯端末１０と、ＢＬＥ端末２０とが存在し、これらの機器によってネットワークが形成される。ＢＬＥでは、通信可能な範囲は、例えば数ｍ〜数十ｍ以内である。
【０１３６】
携帯端末１０は、例えば、携帯電話、スマートフォン、タブレット端末等の所定のアプリケーションを実行可能な携帯型の情報処理装置である。図２に示すように、携帯端末１０は、例えば、ＣＰＵ（又は／及び他のプロセッサ）１１と、ＲＡＭ１２と、記憶装置（不揮発性メモリやハードディスク等）１３と、表示装置（液晶表示装置や有機ＥＬ表示装置等）１４と、入力装置１５と、ＢＬＥ規格に基づく通信を行うためのＢＬＥ通信モジュール１６と、バイブレータ１７と、スピーカ１８とを備える。また、携帯端末１０は、図示しないバッテリーを備える。携帯端末１０のＣＰＵ１１は、ＲＡＭ１２と協働して、記憶装置１３に記憶された（又はネットワーク経由で取得した）様々なアプリケーションプログラムを実行することが可能である。例えば、携帯端末１０は、所定のアプリケーションとして、動画や静止画を再生可能なアプリケーション、メッセージアプリケーション、ブラウザアプリケーション、ゲームアプリケーション、ＢＬＥ端末２０から取得したデータを処理するアプリケーション等、様々なアプリケーションプログラムを実行可能である。携帯端末１０は、入力装置１５として、例えば、入力ボタン、タッチパネル、加速度センサや角速度センサ等の慣性センサ、カメラ、マイク等を備えてもよい。また、携帯端末１０は、ＧＰＳ（Global Positioning System）機能を備えてもよい。携帯端末１０は、ＢＬＥ端末２０と比較して高度な情報処理を行うことが可能であり、そのため消費電力もＢＬＥ端末２０と比較して高い。
【０１３７】
ＢＬＥ端末２０は、例えば、携帯型の機器であり、典型的には携帯端末１０よりも小さな機器である。ＢＬＥ端末２０は、典型的には携帯端末１０よりも限定された機能しか有しておらず、比較的単純な処理を行う機器であってもよい。なお、ＢＬＥ端末２０は、携帯端末１０と同様の高度な情報処理（アプリケーション）を実行可能な機器であってもよい。
【０１３８】
図３に示すように、ＢＬＥ端末２０は、例えば、制御回路２１と、入力ボタン２２と、ＬＥＤ２３と、バイブレータ２４と、ＢＬＥ通信モジュール２５とを備える。ＢＬＥ端末２０は、携帯型の比較的小さな機器であって消費電力が低い機器であり、例えばボタン電池によって比較的長期間（数ヶ月〜数年）動作することが可能である。ＢＬＥ端末２０の各部は制御回路２１上に実装されてもよい。例えば、ＢＬＥ端末２０は、携帯端末１０から送信されたデータをＢＬＥ通信モジュール２５を用いて受信して、ＬＥＤ２３を発行させたり、バイブレータ２４を振動させたりする。また、ＢＬＥ端末２０は、入力ボタン２２に対して行われた操作に応じたデータをＢＬＥ通信モジュール２５を用いて携帯端末１０に送信する。なお、ＢＬＥ端末２０は、任意のアプリケーションプログラムを実行するためのＣＰＵ又は／及び他のプロセッサを備えてもよい。また、ＢＬＥ端末２０は、表示装置、スピーカ、マイク、カメラ等を備えてもよい。例えば、ＢＬＥ端末２０は、映像や音声に係るデータをＢＬＥ通信モジュール２５を介して携帯端末１０とやり取りしてもよい。また、ＢＬＥ端末２０は、ユーザからの入力を受け付ける入力手段として、入力ボタンの他にもタッチパネルや各種センサ（加速度センサ、角速度センサ等）等を備えてもよい。
【０１３９】
図１に示すように、携帯端末１０は、ＢＬＥネットワークにおけるセントラル（「マスター」とも言う）として機能し、ＢＬＥ端末２０は、ペリフェラル（「スレーブ」とも言う）として機能する。携帯端末１０は、複数のＢＬＥ端末２０（２０ａ、・・、２０ｘ）と接続を確立することが可能であり、各接続においてセントラルとなる。セントラルは、ペリフェラルのネットワークへの参加を管理したり、ペリフェラルとの接続のおける各種パラメータを設定したりする。
【０１４０】
ここで、ＢＬＥ規格では、２．４ＧＨｚ帯の電波を用いて通信が行われる。具体的には、４０のチャネルを用いて通信が行われる。ＢＬＥ規格では、４０のチャネルのうち、３つのチャネル３７〜３９はアドバタイジングチャネルであり、その他のチャネル０〜３６は、データチャネルである。アドバタイジングチャネルは、機器の発見や接続のために用いられたり、又は、自機の存在を他の機器に知らせるために用いたり、後述するように他の機器と接続を確立せずにデータをやり取りするために用いられるチャネルである。データチャネルは、接続状態（接続された状態）において用いられるチャネルであり、接続状態にある２つの機器間でデータの送受信を行うために用いられる。なお、クラシックＢｌｕｅｔｏｏｔｈでは、７９のチャネルを有し、そのうち３２チャネルが発見用のチャネルである。
【０１４１】
図４は、携帯端末１０とＢＬＥ端末２０とが接続されていない状態から接続された状態になるまでの通信の流れの一例を示す図である。
【０１４２】
各機器は接続されていない状態（非接続状態）から接続状態になるまでに、その状態を変化させる。具体的には、図４に示すように、携帯端末１０は、所定の時間間隔でスキャンを繰り返す。スキャンを行っている状態をスキャニング状態といい、その状態の機器をスキャナという。具体的には、携帯端末１０は、スキャンと休止状態とを繰り返し、スキャンの実行中は、受信回路を作動させて他の機器からのアドバタイジングパケット（アドバタイジングＰＤＵ（プロトコル・データ・ユニット））の受信を試みる。携帯端末１０は、スキャンの期間及び／又は休止状態の期間を変化させながらスキャンを実行してもよい。
【０１４３】
一方、ＢＬＥ端末２０は、アドバタイジングインターバルの間隔でアドバタイジングを繰り返す。アドバタイジングを行っている状態をアドバタイジング状態といい、その状態の機器をアドバタイザという。具体的には、ＢＬＥ端末２０は、１回のアドバタイジング（アドバタイジングイベント）において、３つのチャネル３７〜３９を切り替えながらアドバタイジングパケットを送信する。このように、電波の周波数を切り替えながらアドバタイジングパケットが送信される。電波の周波数が切り替えられることを「ホッピング」という。
【０１４４】
図４に示すように、携帯端末１０のスキャンのタイミングとＢＬＥ端末２０のアドバタイジングのタイミングとが一致すると、携帯端末１０は、ＢＬＥ端末２０からのアドバタイジングパケットを受信する。携帯端末１０は、ＢＬＥ端末２０からのアドバタイジングパケットを受信すると、ＢＬＥ端末２０に対してスキャン要求を送信する。このスキャン要求に対してＢＬＥ端末２０がスキャン応答を返す。スキャン要求およびスキャン応答もまた、アドバタイジングチャネルを用いて送信される。スキャンの方式には「アクティブスキャン」と、「パッシブスキャン」とがあり、図４では、「アクティブスキャン」の例が示されている。「パッシブスキャン」では、図４に示す「スキャン要求」と「スキャン応答」は行われない。すなわち、パッシブスキャンでは、携帯端末１０は、ＢＬＥ端末２０からのアドバタイジングパケットを受信すると、スキャン要求を送信せずに、コネクション要求をＢＬＥ端末２０に送信する。
【０１４５】
携帯端末１０は、アドバタイジングパケットを送信した機器と接続を行う場合、アドバタイジングパケットを送信したＢＬＥ端末２０に対して、コネクション要求を送信する。携帯端末１０がＢＬＥ端末２０にコネクション要求を送信すると、携帯端末１０とＢＬＥ端末２０との間の接続が確立される（携帯端末１０及びＢＬＥ端末２０の両者が「接続状態」に遷移する）。具体的には、携帯端末１０がマスター（セントラル）となり、ＢＬＥ端末２０がスレーブ（ペリフェラル）となって、２つの機器が接続状態となる。ここでは、「接続が確立される」とは、２つの機器が接続状態に遷移したことを意味するものとする。例えば、携帯端末１０はＢＬＥ端末２０に対してコネクション要求を送信すると接続状態に遷移する。ここで、コネクション要求をＢＬＥ端末２０が受信できなかった場合、ＢＬＥ端末２０は接続状態に遷移しない。ＢＬＥ端末２０が接続状態に遷移していなければ、携帯端末１０は、その後のコネクションイベントにおけるデータパケットに対する応答をＢＬＥ端末２０から受信できない。したがって、この場合、携帯端末１０は、接続状態から非接続状態に遷移する。
【０１４６】
なお、携帯端末１０から送信されるコネクション要求には、接続のための複数のパラメータが含まれる。具体的には、コネクション要求には、携帯端末１０のアドレス、ＢＬＥ端末２０のアドレス、アクセスアドレス、コネクションインターバル、スレーブレイテンシー、ホッピングに係る情報（ホップ数や使用するチャネルに係る情報）、接続監視タイムアウト（connection  supervision  timeout）等が含まれる。アクセスアドレスはランダムに決定されるものであり、接続を識別するためのものである。各機器は、接続相手にデータチャネルを用いてパケット（データパケット）を送信する場合、このアクセスアドレスをデータパケットに含めて送信する。各機器は、アクセスアドレスに基づいて、接続相手からのデータパケットかどうかを判断することができる。また、コネクションインターバル、スレーブレイテンシー、接続監視タイムアウトについては後述する。また、コネクション要求の後に、接続における暗号鍵を交換するためのペアリングやボンディングが行われてもよい。ペアリングでは、この接続において用いられる一時的な暗号鍵が生成・交換される。ボンディングでは、ペアリングの後に、永続的な暗号鍵の生成・交換が行われる。永続的な暗号鍵は各機器において不揮発性メモリ等に記憶される。
【０１４７】
図５は、接続状態における携帯端末１０とＢＬＥ端末２０との通信の一例を示す図である。図５に示すように、２つの機器が接続状態である場合、２つの機器との間でコネクションイベントと呼ばれる同期した通信（同期通信）が所定の時間間隔で行われる。コネクションイベントの間隔を「コネクションインターバル（ＣＩ）」という。コネクションインターバルは、接続が確立される際にマスターによって設定される。携帯端末１０とＢＬＥ端末２０との接続におけるコネクションインターバルは、例えば５００ｍ秒である。コネクションインターバルは、７．５ｍ秒〜４秒の範囲で設定されてもよい。
【０１４８】
１回のコネクションイベントでは、１のデータチャネル（例えば、チャネル１）を用いて携帯端末１０とＢＬＥ端末２０との間でデータの送受信が行われる。あるコネクションイベントの次のコネクションイベントにおいては、周波数がホップする。例えば、あるコネクションイベントにおいてチャネル１が用いられた場合には、次のコネクションイベントにおいてチャネル３が用いられる。このコネクションイベント毎にホップするチャネルの数を「ホップ数」という。このホップ数は、携帯端末１０とＢＬＥ端末２０との間の接続が確立される際に設定される。
【０１４９】
具体的には、前回のコネクションイベントのタイミングからコネクションインターバル（ＣＩ）が経過した場合、携帯端末１０はＢＬＥ端末２０に対してデータパケットを送信する。そして、このコネクションイベントにおいて、ＢＬＥ端末２０は、応答パケットを携帯端末１０に送信する。携帯端末１０及びＢＬＥ端末２０は、コネクションイベントのタイミング以外は、無線通信を休止しデータの送受信を行わない。ここで、各機器には時刻の計測誤差があるため、ＢＬＥ端末２０は、この誤差を考慮して、コネクションイベントのタイミングを含む所定期間で携帯端末１０からのデータパケットの受信を試みる。携帯端末１０（マスター）の時刻の精度情報は、上記コネクション要求に含まれて、携帯端末１０からＢＬＥ端末２０に送信される。ＢＬＥ端末２０は、受信した携帯端末１０の精度情報と自機の時刻の精度情報とに基づいて、受信回路を作動させるタイミングを計算する。
【０１５０】
なお、クラッシックＢｌｕｅｔｏｏｔｈにおいても周波数のホッピングは行われるが、クラッシックＢｌｕｅｔｏｏｔｈでは０．６２５ｍ秒のタイムスロット毎に周波数のホッピングが行われる。クラッシックＢｌｕｅｔｏｏｔｈでは、０．６２５ｍ秒のタイムスロットにおいて、例えばマスターはスレーブに対してパケットを送信する。このとき、マスターは、あるチャネルを用いてスレーブにパケットを送信し、これと同期してスレーブは、同じチャネルを用いてマスターからのパケットの受信を試みる。次のタイムスロット（０．６２５ｍｓ後）において、スレーブは、別のチャネルを用いてマスターに対して応答を返す。
【０１５１】
これに対して、ＢＬＥでは、上述のように、１回のコネクションイベントにおいて、マスターからスレーブにパケットが送信されるとともに、スレーブからマスターに対して応答パケットが送信される。また、コネクションイベントの間隔（ＣＩ）は可変であり、例えば、携帯端末１０及び／又はＢＬＥ端末２０において実行されるアプリケーションの種類によって異なる。
【０１５２】
ここで、図５に示すように、携帯端末１０とＢＬＥ端末２０との間の接続には、スレーブレイテンシーが設定される。スレーブレイテンシーは、ＢＬＥ端末２０（スレーブ）が無視（スキップ）することができるコネクションイベントの回数である。通常、各コネクションイベントにおいて携帯端末１０はＢＬＥ端末２０に対してデータパケットを送信し、ＢＬＥ端末２０は当該データパケットを受信したことに応じて応答パケットを返す。これにより、アプリケーションデータがやり取りされる。しかしながら、ＢＬＥ端末２０は、送信すべきデータが無い場合、スレーブレイテンシーによって定められる期間では、応答パケットを返さなくてもよい。これにより、ＢＬＥ端末２０の消費電力を低減することができる。
【０１５３】
図５に示す例では、スレーブレイテンシーＳＬは「４」に設定されている。図５に示すように、時点ｔ０におけるコネクションイベントにおいて、携帯端末１０からＢＬＥ端末２０にパケットが送信され、当該パケットに応じてＢＬＥ端末２０から携帯端末１０に応答パケットが送信される。ＣＩが経過した時点ｔ１におけるコネクションイベントでは、携帯端末１０はＢＬＥ端末２０にパケットを送信するものの、ＢＬＥ端末２０は、応答パケットを携帯端末１０に送信しなくてもよい。さらに次の時点ｔ２、ｔ３、ｔ４においても、ＢＬＥ端末２０は、応答パケットを携帯端末１０に送信しなくてもよい。一方、時点ｔ４からＣＩが経過した時点ｔ５におけるコネクションイベントでは、ＢＬＥ端末２０は応答パケットを携帯端末１０に送信する。さらに、その後の時点ｔ６〜ｔ９におけるコネクションイベントでは、ＢＬＥ端末２０は応答パケットを携帯端末１０に送信しなくてもよいが、時点ｔ１０におけるコネクションイベントでは、ＢＬＥ端末２０は応答パケットを携帯端末１０に送信する。なお、ＢＬＥ端末２０は、時点ｔ１〜ｔ４、ｔ６〜ｔ９におけるコネクションイベントにおいて、応答パケットを携帯端末１０に送信してもよい。すなわち、スレーブレイテンシーは、スレーブとしてのＢＬＥ端末２０がコネクションイベントを連続的に無視することができる最大回数である。
【０１５４】
携帯端末１０とＢＬＥ端末２０との間で所定期間通信が行われなかった場合、２つの機器の間の接続は切断される（２つの機器が接続状態から非接続状態に遷移する）。２つの機器の間の接続が切断されるか否かは、接続監視タイムアウトに基づいて判断される。具体的には、前回の通信からの経過時間が接続監視タイムアウトを超えた場合、携帯端末１０とＢＬＥ端末２０との接続は切断される。ここで、例えば、接続監視タイムアウトは、スレーブレイテンシーＳＬよりも大きな値に設定される。このため、例えば図５において、携帯端末１０が５回目のコネクションイベント（ｔ５）においてＢＬＥ端末２０からの応答パケットを受信しなかった場合でも、携帯端末１０およびＢＬＥ端末２０はすぐに非接続状態に遷移しない。これは、例えば、スレーブレイテンシーが「４」に設定されている場合に、ＢＬＥ端末２０が４回のコネクションイベント（ｔ１〜ｔ４におけるコネクションイベント）を無視して、５回目のコネクションイベント（ｔ５）において携帯端末１０に応答パケットを送信した場合でも、通信の状況により、その応答パケットを携帯端末１０が受信できないことも想定されるからである。仮に、５回目のコネクションイベントにおいてＢＬＥ端末２０が送信した応答パケットを携帯端末１０が受信できなかった場合に携帯端末１０とＢＬＥ端末２０との接続が切断されると、頻繁に接続が切断されてしまう。このようなことを防止するために、接続監視タイムアウトは、スレーブレイテンシーＳＬよりも大きな値に設定され、通信が行われなかった期間が接続監視タイムアウトを超えた場合に、２つの機器は接続状態から非接続状態に遷移する（２つの機器の接続は切断される）。
【０１５５】
具体的には、携帯端末１０は、応答パケットを受信してからの経過時間を計測し、ＢＬＥ端末２０から応答パケットを受信しない期間が接続監視タイムアウトを超えた場合（又は接続監視タイムアウトに達した場合）、接続状態から非接続状態に遷移する。また、ＢＬＥ端末２０は、携帯端末１０からのデータパケットを受信しない期間が接続監視タイムアウトを超えた場合（又は接続監視タイムアウトに達した場合）、接続状態から非接続状態に遷移する（または、ＢＬＥ端末２０は、携帯端末１０に応答パケットを送信してからの経過時間を計測し、携帯端末１０に応答パケットを送信しない期間が接続監視タイムアウトを超えた場合、接続状態から非接続状態に遷移してもよい）。すなわち、携帯端末１０及びＢＬＥ端末２０は、接続先からのパケットを受信しない期間が接続監視タイムアウトを超えた（又は達した）場合、接続状態から非接続状態に遷移する。
【０１５６】
なお、前回の通信からの経過時間を計測し、コネクションイベントにおいて接続先からの通信を確認できない期間が接続監視タイムアウトを超えた（又は達した）場合、携帯端末１０又はＢＬＥ端末２０は接続状態から非接続状態に遷移せず、接続の中断があったと判断してもよい。例えば、接続の中断があったと判断した場合、携帯端末１０及び／又はＢＬＥ端末２０は、接続状態を維持したまま別の状態に遷移してもよい。例えば、ＢＬＥ端末２０は、接続の中断があったと判断した場合、携帯端末１０からのパケットの受信を試みるものの、受信したパケットに対する応答は返さない状態に遷移してもよい。このパケットの受信を試みるタイミングは、例えば、接続状態におけるコネクションインターバルと同じ間隔であってもよいし、コネクションインターバルよりも長い又は短い間隔であってもよし、ランダムであってもよい。あるいは、ＢＬＥ端末２０は、接続の中断があったと判断した場合、携帯端末１０からのパケットの受信を試みずに、携帯端末１０に対してパケットを定期的に又はランダムに送信する状態に遷移してもよい。また、携帯端末１０は、接続の中断があったと判断した場合、例えば、接続状態において設定されていたコネクションインターバルと同じ又は異なる間隔でＢＬＥ端末２０にパケットを送信してもよいし、ランダムに決定したタイミングでＢＬＥ端末２０にパケットを送信してもよい。あるいは、携帯端末１０は、接続の中断があったと判断した場合、ＢＬＥ端末２０にパケットを送信せず、ＢＬＥ端末２０からのパケットの受信を試みてもよい。そして、接続状態を維持したまま別の状態に遷移した２つの機器は、（接続監視タイムアウトを超えた又は達した場合であっても）相手からのパケットを受信したことに基づいて再び接続状態に戻ってもよい。
【０１５７】
接続監視タイムアウトは、「（ＳＬ＋１）×コネクションインターバル」の２倍以上に設定される。例えば、コネクションインターバルが５００ｍ秒、スレーブレイテンシーが４に設定される場合、接続監視タイムアウトとして、５００ｍ秒×（４＋１）×２＝５秒が設定されてもよい。なお、接続監視タイムアウトは、時間によって定められてもよいし、コネクションイベントの回数によって定められてもよい。例えば、コネクションインターバルが５００ｍ秒、スレーブレイテンシーが４に設定される場合、接続監視タイムアウトとして「（４＋１）×２＝１０」が設定されてもよく、この場合は時間に換算すると「５秒」となる。この場合、例えば、図５において、５回目のコネクションイベント（ｔ５）において、携帯端末１０がＢＬＥ端末２０から応答パケットを受信しなかった場合でも、ｔ６〜ｔ１０におけるコネクションイベントは実行される（この期間、２つの機器の接続は維持される）。時点ｔ１０におけるコネクションイベントにおいて、携帯端末１０がＢＬＥ端末２０から応答パケットを受信した場合は、２つの機器の接続は維持される。一方、５回目のコネクションイベント（ｔ５）において携帯端末１０がＢＬＥ端末２０から応答パケットを受信しなかった場合において、時点ｔ１０におけるコネクションイベントにおいても携帯端末１０がＢＬＥ端末２０から応答パケットを受信しなかった場合（すなわち、ｔ１以降の全てのコネクションイベントにおいて携帯端末１０が応答パケットを受信しなかった場合）は、２つの機器の接続は切断される。なお、接続監視タイムアウトは、例えば１００ｍ秒〜３２秒の範囲で定められてもよい。
【０１５８】
なお、スレーブレイテンシーの定義範囲は例えば０〜４９９である。しかしながら、ＢＬＥ規格は時刻同期型の通信であるため、２つの機器のクロックの累積誤差がある値を超える前に２つの機器は同期される必要がある。クロックの累積誤差を考慮した必要な通信間隔を実効接続インターバルという。実効接続インターバルは、「（ＳＬ＋１）×コネクションインターバル」で表され、上記接続監視タイムアウトの半分以下に設定されなければならない。このため、スレーブレイテンシーの最大値は、接続監視タイムアウトの制限を受ける。
【０１５９】
なお、スレーブレイテンシーに基づいて、携帯端末１０とＢＬＥ端末２０との接続を切断するか否かが判断されてもよい。例えば、携帯端末１０は、ＢＬＥ端末２０からの応答パケットが無かった期間がスレーブレイテンシーを超えた場合、ＢＬＥ端末２０との接続を切断してもよい。
【０１６０】
このように、ＢＬＥ端末２０は、所定の許容期間（スレーブレイテンシーが示すコネクションイベントの回数）だけ、携帯端末１０からのデータパケットに対して応答パケットを送信しなくてもよい。これにより、ＢＬＥ端末２０は、消費電力を低減することができる。なお、この許容期間は、上述のようにコネクションイベントの回数によって表されてもよく、時間によって表されてもよい。
【０１６１】
また、携帯端末１０とＢＬＥ端末２０とは、接続監視タイムアウトによって定められる期間内に互いに通信が行われれば、接続状態を維持する。一方、通信が行われなかった期間が接続監視タイムアウトによって定められる期間を超えた場合（又は達した場合）、携帯端末１０とＢＬＥ端末２０とは非接続状態に移行する。
【０１６２】
以上のように、２つの機器との間で接続が確立される際は、コネクション要求が行われて（接続のためのパラメータがやり取りされて）、２つの機器は接続状態になる。２つの機器が接続状態である場合には、２つの機器の間でコネクションインターバルの間隔で通信が行われる。
【０１６３】
なお、上述のように、携帯端末１０は複数のＢＬＥ端末２０と接続を確立することができる。例えば、携帯端末１０が、ＢＬＥ端末２０ａと接続された状態において、ＢＬＥ端末２０ｂとも接続を確立する（携帯端末１０とＢＬＥ端末２０ｂとが接続状態になる）。携帯端末１０とＢＬＥ端末２０ａとの間の接続におけるコネクションインターバルと、携帯端末１０とＢＬＥ端末２０ｂとの間の接続におけるコネクションインターバルとは異なっていてもよいし同じでもよいが、各接続のコネクションイベントが時間的に重ならないように、携帯端末１０は、最初のコネクションイベントのタイミングを決定する。
【０１６４】
なお、携帯端末１０は、接続を確立せずに他の機器（携帯端末１０や他のＢＬＥ端末）と通信を行ってもよい。
【０１６５】
図６は、携帯端末１０がアドバタイジングを繰り返すことにより他の機器と接続せずにデータを送信する様子を示す図である。図６に示すように、携帯端末１０は、アドバタイジングを繰り返し実行する。アドバタイジングパケットには、接続のためのアドバタイジングパケットと、他の機器にデータを送信するためのアドバタイジングパケットとがある。図６に示す例では、他の機器にデータを送信するためのアドバタイジングパケットが送信される。このアドバタイジングパケットには、アプリケーションで用いられるデータが含まれる。これにより、携帯端末１０は、自機の周辺にある不特定の他の機器にデータをブロードキャストすることができる。
【０１６６】
図７は、携帯端末１０と他の機器とがスキャンとアドバタイジングを繰り返すことにより接続せずに通信を行う様子を示す図である。図７に示すように、携帯端末１０は、スキャンとアドバタイジングを繰り返し実行する。スキャンとアドバタイジングの間にはスキャンもアドバタイジングも行わない休止期間がある。また、他の機器も同様にスキャンとアドバタイジングを繰り返し実行する。携帯端末１０のスキャンと他の機器のアドバタイジングとが時間的に重なった場合、携帯端末１０は他の機器からデータを受信することができる。また、携帯端末１０のアドバタイジングと他の機器のスキャンとが時間的に重なった場合、携帯端末１０は他の機器にデータを送信することができる。
【０１６７】
このように、携帯端末１０は、他の機器と接続しなくてもアドバタイジングパケットを送信することにより、他の機器との間で所定のデータの送受信を行うことができる。
【０１６８】
次に、本実施形態における携帯端末１０とＢＬＥ端末２０とを用いて実行されるインタラクティブなアプリケーションについて説明する。図８は、本実施形態における携帯端末１０とＢＬＥ端末２０とを用いたインタラクティブなアプリケーションが実行された場合の処理の概略を示す図である。
【０１６９】
図８に示すように、携帯端末１０とＢＬＥ端末２０とが接続された状態において、携帯端末１０からＢＬＥ端末２０に演出データが送信される（Ａ）。この演出データには、ＢＬＥ端末２０において実行される演出の内容を示す演出情報が含まれる。
【０１７０】
ＢＬＥ端末２０は、携帯端末１０からの演出データを受信したことに応じて、第１演出を行うとともに、入力ボタン２２に対する操作を受け付ける（Ｂ）。入力ボタン２２に対する操作が受け付けられている間に入力ボタン２２が操作されると、ＢＬＥ端末２０は、操作に応じた演出（第２演出）を実行する（Ｃ）。
【０１７１】
次に、入力ボタン２２に対する操作の有無を示す操作結果情報が、ＢＬＥ端末２０から携帯端末１０に送信される（Ｄ）。ここでは、所定の期間において行われた一又は複数の操作の情報が、ＢＬＥ端末２０から携帯端末１０に送信される。そして、携帯端末１０は、ＢＬＥ端末２０からの操作結果情報に基づいて所定の処理を実行する（Ｅ）。例えば、携帯端末１０は、操作結果情報に基づいてゲーム処理を行い、当該ゲーム処理の結果を示す画像を表示装置１４に表示したり、ゲーム処理の結果に応じた音声をスピーカ１８から出力したりする。
【０１７２】
そして、携帯端末１０は、所定の処理の実行結果をＢＬＥ端末２０に送信する（Ｆ）。ＢＬＥ端末２０においては、携帯端末１０による所定の処理の実行結果に応じた出力が行われてもよい。例えば、ＢＬＥ端末２０は、所定の処理の実行結果に応じて、ＬＥＤ２３を発光させたり、バイブレータ２４を振動させたりする。また、ＢＬＥ端末２０に表示装置やスピーカが設けられる場合は、携帯端末１０による所定の処理の実行結果に応じた画像や音声が出力されてもよい。
【０１７３】
図９は、図８に示す処理が行われる場合の通信の流れの一例を示す図である。
【０１７４】
図９に示すように、携帯端末１０は、コネクションイベントＣＥ１のタイミングでＢＬＥ端末２０に対して演出情報を含む演出データを送信する。なお、この演出情報を含む演出データは、１回のコネクションイベントにおいて携帯端末１０からＢＬＥ端末２０に送信されてもよいし、複数回のコネクションイベントに分けて送信されてもよい。携帯端末１０からＢＬＥ端末２０への送信される演出データの構造については、図１０を参照して後に詳述する。
【０１７５】
ＢＬＥ端末２０は、コネクションイベントＣＥ１において演出データを受信すると、第１演出を実行する。具体的には、第１演出として、ＬＥＤ２３を用いた演出と、バイブレータ２４を用いた演出とが行われる。
【０１７６】
また、携帯端末１０から演出データを受信すると、ＢＬＥ端末２０は、入力ボタン２２に対する操作を受け付けるボタン受付時間を設定する。当該ボタン受付時間内に入力ボタン２２に対する操作が行われた場合に、第２演出が行われる。
【０１７７】
また、ボタン受付時間内に入力ボタン２２に対して操作が行われた場合、当該操作の内容を示す操作結果情報がＢＬＥ端末２０から携帯端末１０に送信される。具体的には、ＢＬＥ端末２０は、コネクションインターバル（ＣＩ）において入力ボタン２２に対して行われた複数の操作を蓄積することができる。ＣＩにおいて蓄積された複数の操作を示す操作結果情報は、次のコネクションイベントにおいてＢＬＥ端末２０から携帯端末１０に送信される。例えば、ＢＬＥ端末２０は、コネクションイベントＣＥ１において携帯端末１０から演出データを受信した場合、次のコネクションイベントＣＥ２が発生するまで、入力ボタン２２に対して行われた操作を蓄積する。次のコネクションイベントＣＥ２が発生するまでに入力ボタン２２が例えば２回押下された場合には、ＢＬＥ端末２０は、入力ボタン２２が２回押下されたことを示す操作結果情報を、次のコネクションイベントＣＥ２において携帯端末１０に送信する。具体的には、ＢＬＥ端末２０は、コネクションイベントＣＥ２において携帯端末１０からデータパケットを受信すると、当該パケットに対する応答パケットに、入力ボタン２２が２回押下されたことを示す操作結果情報を含めて送信する。さらに、コネクションイベントＣＥ２から次のコネクションイベントＣＥ３までの期間において行われた入力ボタン２２に対する操作は、コネクションイベントＣＥ３においてＢＬＥ端末２０から携帯端末１０に送信される。同様に、コネクションイベントＣＥ３から次のコネクションイベントＣＥ４までの期間において行われた入力ボタン２２に対する操作は、コネクションイベントＣＥ４においてＢＬＥ端末２０から携帯端末１０に送信される。
【０１７８】
このように、ＢＬＥ端末２０は、所定の時間間隔（ＣＩ）において行われた入力ボタン２２に対する操作を蓄積し、所定の時間間隔で行われるコネクションイベントにおいて、当該蓄積した操作を携帯端末１０に送信する。すなわち、入力ボタン２２に対して第１のタイミングで行われた操作と当該第１のタイミングとは異なる第２のタイミングで行われた操作とを含む複数の操作の情報がＢＬＥ端末２０において蓄積される。そして、当該蓄積された複数の操作の情報が、ＢＬＥ端末２０から携帯端末１０に送信される。これにより、入力ボタン２２に対して操作が行われるごとに当該操作の情報がＢＬＥ端末２０から携帯端末１０に逐次送信される場合と比較して消費電力を抑えることができる。また、入力ボタン２２に対して操作が行われるごとに当該操作の情報が逐次送信される場合、当該操作の情報が携帯端末１０に届くまでの時間にバラつきが生じることがある。すると、携帯端末１０側では、ＢＬＥ端末２０において各操作が正確にどのタイミングで行われたのかを知ることができない。しかしながら、本実施形態では、第１のタイミングで行われた操作と第２のタイミングで行われた操作とが蓄積され、蓄積された複数の操作の情報がＢＬＥ端末２０から携帯端末１０に送信される。このため、携帯端末１０側では、第１のタイミングでの操作と第２のタイミングでの操作とでどれだけの時間差があるのかを正確に知ることができる。
【０１７９】
図１０は、図９のコネクションイベントＣＥ１において携帯端末１０からＢＬＥ端末２０に送信される演出データＤの構造の一例を示す図である。
【０１８０】
図１０に示すように、携帯端末１０からＢＬＥ端末２０に送信される演出データＤには、基本情報ＤＡと第１演出情報ＤＢとが含まれる。
【０１８１】
基本情報ＤＡは、４オクテットで表される。基本情報ＤＡには、ボタン受付時間と、第２演出情報と、優先度と、演出数とが含まれる。
【０１８２】
基本情報ＤＡのボタン受付時間は、入力ボタン２２に対する操作を受け付ける時間（図９参照）である。ボタン受付時間は、操作条件の一例である。ここで、操作条件は、入力ボタン２２に対する操作に関する条件である。操作条件としては、ボタン操作を受け付ける時間に加えて（又は替えて）、入力ボタン２２及び／又はその他の入力装置を用いた操作の内容（操作の回数、操作のパターン等）であってもよい。操作条件を満たす操作がＢＬＥ端末２０において行われると、第２演出情報に基づいて第２演出が行われる。
【０１８３】
図１０に示すように、ボタン受付時間は、２５６段階（８ｂｉｔ）で表され、１段階は５０ｍ秒と定義される。したがって、ボタン受付時間は、０秒〜１２７５０ｍ秒の範囲で設定される。本実施形態では、ボタン受付時間は、ＢＬＥ端末２０が演出データＤを受信した時点から、第１演出の終了後の所定期間が終了するまでの時間である。すなわち、第１演出が終了した後の所定期間に入力ボタン２２が操作されると第２演出情報に基づいて第２演出が行われるが、入力ボタン２２に対する操作の受け付けは、演出データＤを受信した時点から開始する。第１演出の実行中に入力ボタン２２が操作された場合は、当該操作は無視される。すなわち、第１演出の実行中に入力ボタン２２が操作されても、第１演出の終了後の所定期間に入力ボタン２２が操作されなければ、第２演出は実行されない。なお、第１演出の実行中に入力ボタン２２が操作された場合に、当該操作が記憶され、第１演出の終了後に、当該記憶された操作に基づいて第２演出が行われてもよい。
【０１８４】
基本情報ＤＡの第２演出情報は、入力ボタン２２の操作時に行われる演出（第２演出）を示す情報である。第２演出情報は、１６ｂｉｔで表される。具体的には、第２演出情報は、「ＬＥＤ」情報、及び、「振動」情報を含む。「ＬＥＤ」情報は、ＬＥＤ２３をどのように発光させるかを示す情報であり、１２ｂｉｔ（＝３×４ｂｉｔ）で表される。ＬＥＤ２３は、青、緑、赤の３色のＬＥＤを含み、ＢＬＥ端末２０は、各ＬＥＤを１６段階（４ｂｉｔ）のうちの何れかの強さで発光させることができる。この「ＬＥＤ」情報によって３つの色のＬＥＤの強さが指定されることで、ＬＥＤ２３を任意の色で発光させることができる。また、第２演出情報の「振動」情報は、バイブレータ２４をどのような強さで振動させるかを示す情報であり、３ｂｉｔ（８段階）で表される。
【０１８５】
本実施形態では、第１演出情報ＤＢに基づく第１演出が行われた後、第２演出情報の「ＬＥＤ」情報で示された態様でＬＥＤ２３が発光する。そして、「ボタン受付時間」内に入力ボタン２２に対する操作が行われると、第２演出情報の「振動」情報で示された態様で、バイブレータ２４が振動する。
【０１８６】
基本情報ＤＡの優先度は、ＢＬＥ端末２０が演出データＤに基づく演出を実行しているときに、別の演出データＤを携帯端末１０からさらに受信した場合に、どちらの演出データＤに基づく演出を優先するかを決定するための情報である。例えば、ＢＬＥ端末２０は、あるタイミングで携帯端末１０から優先度１が設定された演出データＤ１を受信したとする。ＢＬＥ端末２０は、この優先度１が設定された演出データＤ１に基づいて演出を実行する。ＢＬＥ端末２０は、演出データＤ１に基づく演出を実行している間に、優先度２（優先度１より優先度が高い）が設定された演出データＤ２を携帯端末１０からさらに受信した場合、実行中の演出データＤ１に基づく演出を中止し、演出データＤ２に基づく演出を実行する。
【０１８７】
基本情報ＤＡの演出数は、第１演出情報ＤＢに含まれる演出の数を示す。演出数は５ｂｉｔで表される。なお、第１演出情報ＤＢに含まれる演出の数は、最大で３０個である。
【０１８８】
第１演出情報ＤＢは、第１演出を示す情報であり、例えばユーザにボタン操作を促す演出を行うための情報である。第１演出情報ＤＢは、演出情報ＤＢ１からＤＢ３０までの最大で３０個の演出情報を含む。例えば、基本情報ＤＡの演出数が「２」の場合には、第１演出情報ＤＢには、演出情報ＤＢ１及びＤＢ２が含まれる。演出情報ＤＢ１〜ＤＢ３０のそれぞれは、３オクテットで表される。具体的には、１の演出情報ＤＢ１は、ＬＥＤ２３の発光態様を示す「ＬＥＤ」情報（１２ｂｉｔ）と、バイブレータ２４を用いた振動の態様を示す「振動」情報（４ｂｉｔ）と、これらＬＥＤ及び振動による演出の実行時間を示す「演出時間」情報（８ｂｉｔ）とを含む。１の演出情報ＤＢに基づく演出は、最大で５０ｍ秒×２５５＝１２７５０ｍ秒実行される。第１演出情報ＤＢに複数の演出情報が含まれる場合、ＢＬＥ端末２０は、番号の若い順（演出情報ＤＢ１、ＤＢ２、ＤＢ３・・）に演出を実行する。
【０１８９】
なお、演出数は最大で３０であり、１つの演出情報ＤＢは３オクテットであるため、第１演出情報ＤＢの最大データ長は９０オクテットである。例えば、ＢＬＥ規格では、１つのパケットのペイロードの最大サイズは２７オクテットである。このため、携帯端末１０は、１つのパケットで全ての演出に関する情報を送信することができない場合がある。この場合は、携帯端末１０は、１回のコネクションイベントにおいて、複数のデータパケットを送信する場合がある。具体的には、１つのパケットで全ての演出に関する情報を送信することができない場合、携帯端末１０は、コネクションイベントのタイミングが到来すると、１つ目のデータパケットをＢＬＥ端末２０に送信し、ＢＬＥ端末２０から応答パケットを受信し、このコネクションイベントにおいてさらに２つ目のデータパケットをＢＬＥ端末２０に送信する。この場合は、携帯端末１０は、１つ目のデータパケットに、１つ目のパケットに続けて２つ目のパケットを送信する旨の情報を含めてＢＬＥ端末２０に送信する。さらに、携帯端末１０は、２つ目のデータパケットに対する応答をＢＬＥ端末２０から受信した後、このコネクションイベントにおいて３つ目のデータパケットをＢＬＥ端末２０に送信する。このように、演出数が多くて１つのデータパケットに演出データＤの全てを含めることができない場合、携帯端末１０は、１回のコネクションイベントにおいて、複数のデータパケットをＢＬＥ端末２０に送信してもよい。なお、携帯端末１０は、複数回のコネクションイベントにわたって演出データＤをＢＬＥ端末２０に送信してもよい。演出データＤが１つのデータパケットのペイロードに収まらない場合に、演出データＤを１回のコネクションイベントにおいて複数のパケットに分けて送信するか、演出データＤを複数のコネクションイベントにわたって送信するかは、次のコネクションイベントまでの時間によって決定される。例えば、携帯端末１０は、送信すべきデータの量と、コネクションインターバルとに基づいて、１回のコネクションイベントにおいて複数のパケットを送信するか否か、今回のコネクションイベントでいくつのパケットを送信するかを判断する。なお、携帯端末１０は、今回のコネクションイベントにおいて複数のパケットを送信しても全てのデータを送信することができない場合は、次のコネクションイベントにおいて残りのデータを送信する。
【０１９０】
図１１は、携帯端末１０からＢＬＥ端末２０に演出データＤが送信された後のＢＬＥ端末２０において行われる演出の一例を示す図である。図１１に示すように、例えば、コネクションイベントＣＥ１において、２つの演出情報ＤＢ１及びＤＢ２を含む演出データＤ１が携帯端末１０からＢＬＥ端末２０に送信された場合、ＢＬＥ端末２０は、演出データＤ１に含まれる演出情報ＤＢ１及びＤＢ２に基づいて第１演出を行う。具体的には、ＢＬＥ端末２０は、演出情報ＤＢ１に基づいてＬＥＤ２３を発光させるとともに、バイブレータ２４を振動させる。演出情報ＤＢ１に基づく第１演出は、演出情報ＤＢ１に含まれる「演出時間」だけ行われる。演出情報ＤＢ１に基づく第１演出が終了した後、ＢＬＥ端末２０は、演出情報ＤＢ２に基づく第１演出を行う。演出情報ＤＢ２に基づく第１演出が終了すると、ＢＬＥ端末２０は、演出データＤ１に基づく一連の第１演出を終了する。第１演出が終了した後、第２演出情報の「ＬＥＤ」情報で示された態様でＬＥＤ２３が発光する。ＬＥＤ２３が発光している間に（演出データＤ１を受信してから基本情報ＤＡの「ボタン受付時間」が経過するまでに）ユーザが入力ボタン２２を押下すると、第２演出情報の「振動」情報で示された態様でバイブレータ２４が振動する（第２演出が行われる）。ＬＥＤ２３が発光している間に入力ボタン２２が押下されなかった場合は、バイブレータ２４は振動しない（第２演出は行われない）。なお、ＬＥＤ２３が発光している間に入力ボタン２２が押下されなかった場合は、操作の失敗を示す態様でバイブレータ２４が振動してもよいし、操作の失敗を示す態様でＬＥＤ２３が発光してもよい。
【０１９１】
次に、コネクションイベントＣＥ２において、携帯端末１０からＢＬＥ端末２０に対して、３つの演出情報ＤＢ１、ＤＢ２及びＤＢ３を含む演出データＤ２が送信された場合、ＢＬＥ端末２０は、演出情報ＤＢ１、ＤＢ２及びＤＢ３に基づいて第１演出を行う。図１１に示すように、演出データＤ２に基づく一連の第１演出は、次のコネクションイベントＣＥ３を跨いで行われる。演出データＤ２に基づく一連の第１演出が行われた後、演出データＤ２に含まれる第２演出情報の「ＬＥＤ」情報で示された態様でＬＥＤ２３が発光し、ユーザが入力ボタン２２を押下すると、第２演出情報の「振動」情報で示された態様でバイブレータ２４が振動する。
【０１９２】
図１２は、ＢＬＥ端末２０において入力ボタン２２に対する操作が行われた場合にＢＬＥ端末２０から携帯端末１０に入力ボタン２２に対する操作を示す操作結果情報が送信される様子を示す図である。
【０１９３】
図１２に示すように、コネクションイベントの間（ＣＩ）に行われた入力ボタン２２に対する操作を示す操作結果情報は、次に発生するコネクションイベントにおいて、ＢＬＥ端末２０から携帯端末１０に送信される。具体的には、携帯端末１０からＢＬＥ端末２０に対して演出データＤが送信された場合、ＢＬＥ端末２０は、当該演出データＤに含まれる「ボタン受付時間」に基づいて、入力ボタン２２に対する操作を受け付ける。ＢＬＥ端末２０の制御回路２１は、ＣＩよりも短い時間間隔で入力ボタン２２の操作状態を検出し、各時点の操作状態をメモリに保存する。例えば、ＣＩが５００ｍ秒である場合、ＢＬＥ端末２０の制御回路２１は、５０ｍ秒間隔で入力ボタン２２の操作状態を検出する。そして、メモリに保存された各時点の操作状態を示す操作結果情報が、次のコネクションイベントにおいて、ＢＬＥ端末２０から携帯端末１０に送信される。
【０１９４】
例えば、ＢＬＥ端末２０は、コネクションイベントＣＥ１とＣＥ２との間に入力ボタン２２が１回押された場合、当該ボタンが１回だけ押されたことを示す操作結果情報を、コネクションイベントＣＥ２において携帯端末１０に送信する。また、ＢＬＥ端末２０は、コネクションイベントＣＥ２とＣＥ３との間に入力ボタン２２が２回押された場合、当該ボタンが２回押されたことを示す操作結果情報を、コネクションイベントＣＥ３において携帯端末１０に送信する。同様に、ＢＬＥ端末２０は、コネクションイベントＣＥ３とＣＥ４との間、入力ボタン２２が継続して押されていた場合、当該ボタンが継続して押されていたことを示す操作結果情報を、コネクションイベントＣＥ４において携帯端末１０に送信する。
【０１９５】
図１３Ａ〜図１３Ｃは、操作結果情報の一例を示す図である。図１３Ａは、コネクションインターバルにおいて入力ボタン２２が１回だけ押された場合の操作結果情報を示す図である。図１３Ｂは、コネクションインターバルにおいて入力ボタン２２が２回押された場合の操作結果情報を示す図である。図１３Ｃは、コネクションインターバルにおいて入力ボタン２２が長押しされた場合の操作結果情報を示す図である。
【０１９６】
図１３Ａに示すように、操作結果情報は、例えば１０ｂｉｔで表される。操作結果情報の各ｂｉｔは、５０ｍ秒毎の入力ボタン２２の操作状態を示す。各ｂｉｔの「１」は、入力ボタン２２に対する操作が検知されたことを示し、各ｂｉｔの「０」は、入力ボタン２２に対する操作が検知されなかったことを示す。図１３Ａでは、１番目〜５番目のｂｉｔは「０」であり、６番目及び７番目のｂｉｔが「１」となっている。すなわち、図１３Ａでは、入力ボタン２２に対する操作が受け付けられた時点から２５０ｍ秒（＝５０ｍ秒×５ｂｉｔ）経過した時点において、入力ボタン２２が一瞬押下された場合が例示されている。
【０１９７】
図１３Ｂでは、２番目〜４番目のｂｉｔが「１」であり、８番目〜１０番目のｂｉｔが「１」となっている。すなわち、図１３Ｂでは、入力ボタン２２に対する入力が受け付けられた時点から５０ｍ秒経過した時点において入力ボタン２２が一瞬押下され、その後、入力ボタン２２が押下された状態から元の状態に戻り、再び、入力ボタン２２が押下された場合が例示されている。
【０１９８】
一方、図１３Ｃでは、全てのｂｉｔが「１」になっている。これは、コネクションインターバルにおいて、入力ボタン２２が継続して押下されたことを示す。
【０１９９】
図１３Ａ〜図１３Ｃから明らかなように、携帯端末１０は、ＢＬＥ端末２０から操作結果情報を受信することにより、ＣＩにおいてＢＬＥ端末２０の入力ボタン２２が押下されたか否か、押下された回数、および押下された時間を認識することができる。携帯端末１０は、この操作結果情報に基づいて、所定の処理（例えば、ゲーム判定及びゲーム判定の結果を表示する処理）を行う。
【０２００】
次に、携帯端末１０とＢＬＥ端末２０の使用例について説明する。図１４は、携帯端末１０とＢＬＥ端末２０とを用いたゲームの一例を示す図である。図１４に示す例では、携帯端末１０において、あるイベントが発生した場合、携帯端末１０からＢＬＥ端末２０に対して上記演出データＤが送信され、ゲームが開始される。図１４に示すゲームは、ＢＬＥ端末２０において演出が行われた後、特定期間にユーザに入力ボタン２２を操作させるゲームである。
【０２０１】
図１４に示すように、条件が成立すると所定のイベントが発生する。例えば、所定のイベントが発生する条件は、携帯端末１０においてユーザによって所定の操作（ゲームの開始を指示する操作）が行われたこと、所定の時刻になったこと、携帯端末１０が所定の位置に移動したこと（ＧＰＳにより検出される位置が予め定められた位置になったこと）等であってもよい。また、所定のイベントが発生する条件は、携帯端末１０において実行中のゲームが特定の条件を満たしたこと（例えば、プレイヤキャラクタがゲーム空間の所定位置に到達したこと、ゲームにおけるある場面をクリアしたこと、アイテムが取得されたこと等）であってもよい。
【０２０２】
所定のイベントが発生した後のコネクションイベントＣＥ１において、演出データＤが携帯端末１０からＢＬＥ端末２０に送信される。ＢＬＥ端末２０は、演出データＤを受信したことに応じて、演出データＤに含まれる第１演出情報ＤＢを再生することにより第１演出を行う。例えば、第１演出は、複数のコネクションイベントにわたって行われる。第１演出が行われている間も、入力ボタン２２に対する操作は受け付けられる。例えば、第１演出が行われている間に入力ボタン２２が操作された場合には、その操作結果を示す操作結果情報Ｅが、コネクションイベントにおいてＢＬＥ端末２０から携帯端末１０に送信される。第１演出ではバイブレータ２４が振動するため、第１演出が行われている間に入力ボタン２２に対する操作が行われても、当該操作に応じて、第２演出は行われない（バイブレータ２４は振動しない）。ＢＬＥ端末２０が演出データＤを受信してから所定時間が経過すると、第１演出が終了する。図１４に示すゲームでは、第１演出の終了から特定期間内に入力ボタン２２が操作されたか否かによって、ゲームの成否が判定される。具体的には、第１演出の終了から特定期間内に入力ボタン２２が操作された場合は「成功」であり、特定期間内に入力ボタン２２が操作されなかった場合は「失敗」である。なお、入力ボタン２２が操作された場合に、図１４に示すように、第２演出（第２演出情報の「振動」情報に基づく演出）が行われる。第１演出が終了した後は、第２演出は、特定期間内に入力ボタン２２が操作された場合でも、特定期間以外に入力ボタン２２が操作された場合でも行われる。すなわち、ゲームの成否判定（特定期間内に入力ボタン２２が操作されたか否かの判定）は、携帯端末１０において行われるため、ＢＬＥ端末２０は、特定期間内に入力ボタン２２が操作されたか否かに関わらず、入力ボタン２２が操作された場合は、第２演出を実行する。
【０２０３】
具体的には、ＢＬＥ端末２０は、上述のようにＣＩにおける入力ボタン２２の操作を操作結果情報Ｅとして蓄積し、コネクションイベントにおいて操作結果情報Ｅを携帯端末１０に送信する。携帯端末１０は、コネクションイベントＣＥ２〜ＣＥ５において受信した複数の操作結果情報Ｅに基づいて、第１演出が終了してからの特定期間に入力ボタン２２が操作されたか否かを判定する。携帯端末１０は、特定期間において入力ボタン２２が操作されたと判定した場合は、「成功」と判定し、特定期間において入力ボタン２２が操作されなかったと判定した場合は、「失敗」と判定する。「成功」と判定した場合、携帯端末１０は、携帯端末１０の表示装置１４において「成功」を示す画像を出力してもよい。また、携帯端末１０は、「成功」と判定した場合、次のコネクションイベントＣＥ６においてＢＬＥ端末２０に演出データＤを送信し、ＢＬＥ端末２０は、当該演出データＤに基づいて、「成功」を示す演出を行ってもよい。
【０２０４】
また、図１４に示すゲームの結果が「成功」である場合、点数が加算されてもよい。点数に応じて、携帯端末１０で行われるゲーム（「メインゲーム」という）において、ユーザに有利な特典が付与されてもよい。例えば、携帯端末１０においてメインゲームが実行されているときに、上記所定のイベントが発生し、図１４に示すゲーム（「サブゲーム」という）が開始される。このサブゲームの結果に応じて点数が加算され、点数に応じてメインゲームにおいてユーザに有利な特典が付与される。例えば、メインゲームで利用可能な「アイテム」が付与されたり、メインゲームのプレイヤキャラクタの体力が増加したり、レベルが上昇したり、メインゲームを次のステージやシーンに進めることができたりしてもよい。
【０２０５】
図１５は、携帯端末１０とＢＬＥ端末２０とを用いた他のゲームの一例を示す図である。図１５に示すゲームは、ユーザに所定のリズムで入力ボタン２２を操作させるリズムゲームである。
【０２０６】
図１５に示すように、所定のイベントが発生した後のコネクションイベントＣＥ１において、演出データＤ１が携帯端末１０からＢＬＥ端末２０に送信される。この演出データＤ１に基づいて、ＢＬＥ端末２０は、第１演出を行う。第１演出中（又は第１演出後）の特定期間において入力ボタン２２が操作されると、リズムゲームが開始される。具体的には、コネクションイベントＣＥ２において、ＢＬＥ端末２０から携帯端末１０に操作結果情報Ｅが送信される。携帯端末１０は受信した操作結果情報Ｅに基づいて、特定期間において入力ボタン２２が操作されたか否かを判定する。
【０２０７】
特定期間に入力ボタン２２が操作されたと判定した場合、携帯端末１０は、次のコネクションイベントＣＥ３において、リズムゲームの内容を含む演出データＤ２をＢＬＥ端末２０に送信する。演出データＤ２の優先度は、演出データＤＢ２の優先度よりも高くてもよい。ＢＬＥ端末２０は、演出データＤ２を受信したことに応じて、第１演出を実行する。演出データＤ１に基づく演出が実行されている場合には、ＢＬＥ端末２０は、演出データＤ１の基づく演出を終了し、演出データＤ２に基づく第１演出を開始する。ここで、第１演出として、ＬＥＤ２３の発光と振動とが複数回繰り返される。例えば、一定の時間間隔で発光と振動とが行われてもよい。第１演出が行われた後、ユーザは、第１演出と同じリズムで入力ボタン２２を操作する。入力ボタン２２が操作された場合には、第２演出（第２演出情報の「振動」情報に示される演出）が行われる。入力ボタン２２に対する操作の操作結果情報Ｅは、各コネクションイベントにおいてＢＬＥ端末２０から携帯端末１０に送信される。
【０２０８】
そして、携帯端末１０は、リズムゲームが終了した後に、リズム判定を行う。具体的には、コネクションイベントＣＥ４〜ＣＥ７において受信した複数の操作結果情報Ｅに基づいて、第１演出が終了した後の特定期間（図１５では３つの特定期間）において入力ボタン２２が操作されたか否かを判定する。この特定期間は、第１演出のリズムに合うように設定される。携帯端末１０は、リズム判定の結果に応じて、点数を算出し、当該点数を表示装置１４に表示してもよい。また、ＢＬＥ端末２０に表示装置が設けられる場合、次のコネクションイベントにおいて、携帯端末１０がＢＬＥ端末２０に点数の情報を送信し、ＢＬＥ端末２０の表示装置に当該点数が表示されてもよい。
【０２０９】
図１６は、携帯端末１０とＢＬＥ端末２０とを用いた他の応用例を示す図である。図１６に示す応用例では、ユーザが携帯端末１０及びＢＬＥ端末２０を携帯して移動し、所定の位置に近づいた場合に携帯端末１０からＢＬＥ端末２０に対して演出データＤが送信される。
【０２１０】
具体的には、図１６に示すように、ユーザは携帯端末１０とＢＬＥ端末２０とを所持して、例えば市街地を移動する。ユーザが特定の位置Ｐに近づいた場合、携帯端末１０からＢＬＥ端末２０に演出データＤ１が送信される。ＢＬＥ端末２０は、演出データＤ１を受信したことに応じて、例えばＬＥＤ２３を点滅させる。なお、携帯端末１０が特定の位置に近づくにつれて、ＬＥＤ２３が点滅する間隔が短くなるようにしてもよい。さらにユーザが移動して、携帯端末１０が特定の位置Ｐに到達すると、携帯端末１０からＢＬＥ端末２０に演出データＤ２が送信される。この演出データＤ２は演出データＤ１よりも優先度が高い。ＢＬＥ端末２０は、演出データＤ２を受信したことに応じて、例えばＬＥＤ２３を点灯させる。そして、入力ボタン２２が操作された場合、ＢＬＥ端末２０は振動する。
【０２１１】
図１７は、図１６に示した応用例の処理の流れを示す図である。図１７に示すように、ユーザが携帯端末１０及びＢＬＥ端末２０を所持して移動し、特定の位置に近づく（ステップＳ１）。具体的には、携帯端末１０は、ＧＰＳ機能を有し、自機の位置を検出することができる。携帯端末１０は、自機の位置が予め定められた特定の位置を含む所定範囲内の場合、特定の位置に近づいたと判断する。例えば、携帯端末１０は、自機の位置に関する位置情報を検出する位置検出部を備える。本実施形態においては、位置検出部は、ＧＮＳＳ（Ｇｌｏｂａｌ  Ｎａｖｉｇａｔｉｏｎ  Ｓａｔｅｌｌｉｔｅ  Ｓｙｓｔｅｍ）を用いて位置情報を検出する。位置検出部は、いわゆるＧＮＳＳセンサであり、例えばＧＰＳ（Ｇｌｏｂａｌ  Ｐｏｓｉｔｉｏｎｉｎｇ  Ｓｙｓｔｅｍ）センサ（ＧＰＳモジュール）などである。ここで、「位置に関する位置情報」とは、位置を示す情報であってもよいし、位置を特定することが可能な情報であってもよい。位置情報は、例えば、緯度経度を示す情報であってもよいし、ＧＰＳの衛星から送信されてくる、位置を特定可能な情報（例えば、電波送信時の時刻情報や、衛星の軌道情報）であってもよい。なお、位置検出部における位置検出方法は任意であり、例えば、位置検出部は、無線通信設備からの電波に基づいて位置を検出してもよい。すなわち、位置検出部は、携帯電話基地局からの電波や、無線アクセスポイントからの電波に基づいて位置を検出してもよい。また、位置検出部は、携帯端末１０とは異なる他の装置から携帯端末１０の位置を表す情報を取得することによって位置を検出してもよい。例えば、ＢＬＥ端末２０が上記位置検出部を備え、携帯端末１０がＢＬＥ端末２０から位置を表す情報を取得してもよい。
【０２１２】
次に携帯端末１０は、演出データＤ１をＢＬＥ端末２０に送信し（ステップＳ２）、これに応じてＢＬＥ端末２０はＬＥＤ２３を点滅させる（ステップＳ３）。さらに移動して、携帯端末１０が特定の位置に到達すると（ステップＳ４）、携帯端末１０からＢＬＥ端末２０に演出データＤ２が送信される（ステップＳ５）。この演出データＤ２に基づいて、ＢＬＥ端末２０はＬＥＤ２３を点灯させる。
【０２１３】
次に、ＢＬＥ端末２０にて入力ボタン２２が操作される（ステップＳ６）。当該操作に基づいて、ＢＬＥ端末２０は操作結果情報を携帯端末１０に送信する（ステップＳ７）。
【０２１４】
次に、携帯端末１０は、受信した操作結果情報に基づいて、入力ボタン２２に対する操作が所定の条件を満たしたか否かを判定する（ステップＳ８）。入力ボタン２２に対する操作が所定の条件を満たしたと判定した場合、例えば、ゲームで用いられるアイテムが付与される（ステップＳ９）。例えば、携帯端末１０は、所定時間内に入力ボタン２２が押された場合や所定のパターンで入力ボタン２２が押下された場合に、所定の条件を満たしたと判定してもよい。
【０２１５】
以上のように、携帯端末１０とＢＬＥ端末２０とを用いて様々なゲームが行われる。携帯端末１０とＢＬＥ端末２０とは接続されており、携帯端末１０からＢＬＥ端末２０に対して演出データＤが送信され、演出データＤに基づいてＢＬＥ端末２０において演出が行われる。また、ＢＬＥ端末２０において行われた操作の結果を示す操作結果情報が携帯端末１０に送信される。携帯端末１０は、操作結果情報に基づいてゲームの判定を行う。そして、携帯端末１０は、判定結果を表示装置１４に表示したり、ＢＬＥ端末２０に送信したりする。
【０２１６】
このように、本実施形態では、携帯端末１０とＢＬＥ端末２０とを用いたインタラクティブなゲームが行われる。なお、ゲームに限らず、他のアプリケーションが行われてもよい。例えば、携帯端末１０とＢＬＥ端末２０との間でメッセージをやり取りするアプリケーションが行われてもよい。
【０２１７】
（処理の詳細）
次に、携帯端末１０及びＢＬＥ端末２０において行われる処理の詳細について説明する。まず、図１８〜図２１を参照して携帯端末１０において行われる処理について説明する。
【０２１８】
（携帯端末１０のＣＰＵ１１によって行われるメイン処理）
図１８は、携帯端末１０のＣＰＵ１１によって行われるメイン処理の詳細を示すフローチャートである。携帯端末１０のＣＰＵ１１は、記憶装置１３に記憶された所定のアプリケーションプログラムを実行することにより、図１８に示す処理を行う。
【０２１９】
ＣＰＵ１１は、まず、所定のイベントが発生したか否かを判定する（ステップＳ１０１）。例えば、ＣＰＵ１１は、ユーザによってゲーム開始の指示が行われた場合（例えば、表示装置１４に表示されたメニュー画面においてゲーム開始の指示が行われた場合）、所定のイベントが発生したと判定する。また、ＣＰＵ１１は、実行中のアプリケーションにおいて所定の条件が満たされた場合（例えば、実行中のメインゲームにおいて所定の条件が満たされた場合）、又は、携帯端末１０が特定の位置に移動した場合、所定のイベントが発生したと判定してもよい。
【０２２０】
ＣＰＵ１１は、ステップＳ１０１においてＮＯと判定した場合、再びステップＳ１０１の処理を実行する。
【０２２１】
ステップＳ１０１においてＹＥＳと判定した場合、ＣＰＵ１１は、接続パラメータを設定する（ステップＳ１０２）。具体的には、ＣＰＵ１１は、後述するステップＳ１０８において開始するゲーム（アプリケーションの一例）の種類に応じて、ＢＬＥ端末２０との接続における各種パラメータを設定する。
【０２２２】
より具体的には、ＣＰＵ１１は、接続パラメータとして、コネクションインターバル（ＣＩ）、スレーブレイテンシー（ＳＬ）、および接続監視タイムアウトを設定する。ＣＩ、ＳＬおよび接続監視タイムアウトは、実行されるアプリケーションの種類によって異なる。例えば、ステップＳ１０８において開始するゲームの種類が、比較的低いレイテンシーを必要とするゲーム（比較的早いレスポンスを必要とするゲーム）である場合、ＣＰＵ１１は、比較的短い時間（例えば、１０ｍ〜１００ｍ秒）をＣＩとして設定するとともに、比較的小さい値をＳＬとして設定する。また、ステップＳ１０８において開始するゲームの種類が、比較的早い切断の検知を必要とするゲームである場合、ＣＰＵ１１は、比較的短い時間（例えば、１秒〜数秒）を接続監視タイムアウトとして設定する。比較的低いレイテンシーを必要とするゲームの例としては、アクションゲーム（例えば、レースゲームや格闘ゲーム等、ユーザの操作によってキャラクタ等が動作し表示に反映されるゲーム）が考えられる。すなわち、ユーザの操作に対して早いレスポンスが必要なゲームがＢＬＥ端末２０と携帯端末１０とを用いて行われる場合は、携帯端末１０とＢＬＥ端末２０との通信が短時間で頻繁に行われる必要がある。このため、このようなゲームが開始される場合には、ＣＰＵ１１は、携帯端末１０とＢＬＥ端末２０との通信の遅延が小さくなるように、ＣＩを短くするとともにＳＬを小さくする。また、通信の遅延があっても問題が発生する可能性が低いゲーム（一例として、クイズゲームやロールプレイングゲーム等）が行われる場合には、ＣＰＵ１１は、比較的長い時間（例えば、５００ｍ秒や１０００ｍ秒）をＣＩとして設定するとともに、比較的大きな値をＳＬとして設定する。また、通信の遅延があっても問題が発生する可能性が低いゲーム（一例として、クイズゲームやロールプレイングゲーム等）が行われる場合には、ＣＰＵ１１は、比較的長い時間（例えば、数秒〜３２秒の範囲）を接続監視タイムアウトとして設定する。
【０２２３】
このように、ＣＩ、ＳＬおよび接続監視タイムアウトのうちの少なくとも何れか１つは、実行されるアプリケーションの種類によって設定されてもよい。なお、他の形態では、ＣＩ、ＳＬおよび接続監視タイムアウトの少なくとも何れか１つは、ユーザによって設定されてもよい。
【０２２４】
また、ＣＰＵ１１は、携帯端末１０及びＢＬＥ端末２０において行われるゲーム（アプリケーションの一例）の実行状況に応じて、ＣＩ、ＳＬおよび接続監視タイムアウトのうちの少なくとも何れか１つを設定してもよい。ここで、「ゲームの実行状況」とは、例えば、ゲームにおけるシーンやステージ、エリア、ミッション等であってもよい。すなわち、ゲームが複数の部分（シーン、ステージ、エリア、ミッション等）に分かれている場合、実行されるゲームの部分に応じて、ＣＩ、ＳＬおよび接続監視タイムアウトが設定されてもよい。ゲームの各部分を実行するためのプログラムが用意され、当該各プログラムを携帯端末１０及び／又はＢＬＥ端末２０が実行することにより、ゲームの各部分が実行されてもよい。また、ゲームの各部分を実行するためのデータが用意され、各データを共通のプログラムによって処理することで、ゲームの各部分が実行されてもよい。すなわち、携帯端末１０及び／又はＢＬＥ端末２０を用いて実行されるゲームの部分に対応するプログラムの種類、又は、実行されるゲームの部分に対応するデータの種類に応じて、ＣＩ、ＳＬおよび接続監視タイムアウトのうちの少なくとも何れか１つが設定されてもよい。例えば、既にゲームが実行されている場合において、当該ゲームにおけるステージが第１ステージから第２ステージに移行する場合、ＣＩ、ＳＬおよび接続監視タイムアウトのうちの少なくとも何れか１つが新たに設定されてもよい。
【０２２５】
また、「ゲームの実行状況」は、例えば、ゲームが実行されている状態か、休止状態かであってもよい。例えば、ゲームが実行されている状態から休止状態に移行した場合、ＣＩ、ＳＬおよび接続監視タイムアウトのうちの少なくとも何れか１つが新たに設定されてもよい。休止状態では、ゲームの進行が一時停止し、例えば、ゲーム画面からメニュー画面（アプリケーションを起動したり機器の設定変更をしたりするための画面）に移る。休止状態ではゲームの途中経過はメモリに保存され、ゲームが再開されると、休止状態に移行する前の状態から引き続いてゲームが行われる。例えば、携帯端末１０及びＢＬＥ端末２０においてゲームが実行されている場合に、ユーザが他のプログラムを起動すると、実行中のゲームが休止状態になる。また、例えば、携帯端末１０及びＢＬＥ端末２０においてゲームが実行されている場合に、ユーザによって一時停止のボタンが操作された場合に、実行中のゲームが休止状態になる。また、例えば、ゲームが比較的処理の軽い場面（例えば、ユーザからの操作を受け付けない場面等）になった場合、ゲームが休止状態になってもよい。例えば休止状態においては、ＣＩ及び／又はＳＬが、ゲームの実行中よりも大きく（又は小さく）設定されてもよい。このように、ゲームの実行中にゲーム画面からメニュー画面に移った場合やユーザによって一時停止が指示された場合に、ゲームが休止状態に移行し、当該休止状態においては、ＣＩ、ＳＬ、接続監視タイムアウトのうちの少なくとも何れか１つが変更されてもよい。
【０２２６】
また、ＣＰＵ１１は、例えば接続する機器（スレーブ）の種類に応じて、ＣＩ、ＳＬおよび接続監視タイムアウトのうちの少なくとも何れか１つを設定してもよい。例えば、ＢＬＥ端末２０として、表示装置（例えばタッチディスプレイ）を備えない機器と、表示装置を備える機器とがある場合、表示装置を備えるか否かによってＣＩ、ＳＬおよび接続監視タイムアウトの値が設定されてもよい。また、例えば、ＢＬＥ端末２０として、特定の入力装置を備える機器と、特定の入力装置を備えない機器とがある場合、特定の入力装置を備えるか否かによってＣＩ、ＳＬおよび接続監視タイムアウトが設定されてもよい。すなわち、携帯端末１０のスレーブとして接続される機器が有する機能に応じて、ＣＩ、ＳＬおよび接続監視タイムアウトの値が設定されてもよい。また、マスターとしての携帯端末にも複数の種類があり、マスターの機器の種類（機種、機器が備える機能等）に応じて、ＣＩ、ＳＬおよび接続監視タイムアウトのうちの少なくとも何れか１つが設定されてもよい。
【０２２７】
なお、接続する機器の種類の判別方法としては、例えば次のような方法が考えられる。第１の方法としては、例えば、機器を識別するためのデバイスアドレスに機器の種別を示す番号を割り当てる方法である。ＢＬＥ端末２０がアドバタイジングを実行する際には、このデバイスアドレスを含むアドバタイジングパケットを送信する。携帯端末１０がこのデバイスアドレスを含むアドバタイジングパケットを受信し、携帯端末１０のＣＰＵ１１は、デバイスアドレスに含まれる上記番号に基づいて、ＢＬＥ端末２０の種類を判別することができる。
【０２２８】
また、接続する機器の種類の判別するための第２の方法としては、携帯端末１０とＢＬＥ端末２０との接続が確立された後に、ＢＬＥ端末２０から携帯端末１０に機器の種類を示す情報を送信する方法である。具体的には、携帯端末１０とＢＬＥ端末２０との接続が確立された後、コネクションイベントにおいて、携帯端末１０からＢＬＥ端末２０にデータパケットが送信され、当該パケットに応じてＢＬＥ端末２０から携帯端末１０に応答パケットが送信される。例えば、ＢＬＥ端末２０は、この応答パケットのペイロードに、ＢＬＥ端末２０の種類を示す情報を含めて携帯端末１０に送信する。
【０２２９】
また、接続する機器の種類の判別するための第３の方法としては、ＢＬＥ端末２０が持つ機能（ＬＥＤ、スピーカ、振動子、センサ、入力装置、表示装置等）ごとに、サービスやキャラクタリスティックを分ける方法である。ＢＬＥ規格では、異なるメーカの機器同士を接続するためにいくつかの標準サービスが定義されており、また、ユーザが独自にサービスを定義することもできる。例えば、ユーザが独自に定めたサービスにＢＬＥ端末２０が持つ機能の有無または種類を示すキャラクタリスティックを追加する。携帯端末１０はこのキャラクタリスティックの内容を参照することでＢＬＥ機器２０の種類を判別することができる。
【０２３０】
また、ＣＰＵ１１は、接続する機器（スレーブ）の数によって、ＳＬおよび接続監視タイムアウトのうちの少なくとも何れか１つを設定してもよい。例えば、複数のユーザのそれぞれがＢＬＥ端末２０を有し、複数のＢＬＥ端末２０が携帯端末１０に接続されて、複数のユーザによってゲームが行われる場合を想定する。この場合、それぞれの機器は別のユーザによって操作され、複数人でゲームが行われる。このような複数人でゲームが行われる場合に、当該ゲームのプレイ人数（携帯端末１０に接続されるＢＬＥ端末２０の数、携帯端末１０を含むシステムの中の機器の数）に応じて、ＣＩ、ＳＬおよび接続監視タイムアウトが設定されてもよい。
【０２３１】
なお、ＣＰＵ１１は、接続する機器（スレーブ）の種類に応じて、モードを設定し、当該設定したモードにて自機を動作させる。携帯端末１０には、接続される機器の種類に応じたモードがある。携帯端末１０のモードが接続される機器の種類に応じて設定されることにより、携帯端末１０は接続された機器との間で通信を行うとともに、接続された機器に応じたゲーム処理を行うことができる。例えば、図３に示すＢＬＥ端末２０が接続される場合には、当該ＢＬＥ端末２０の種類を識別する情報をＢＬＥ端末２０から受信し、当該情報に基づくモードを設定する。これにより、携帯端末１０は、ＢＬＥ端末２０が有するハードウェア（ＬＥＤ２３やバイブレータ２４等の出力装置、入力ボタン２２等の入力装置）を用いたゲームを行うことができ、携帯端末１０とＢＬＥ端末２０とを用いたゲームを実行することができる。
【０２３２】
また、ＣＰＵ１１は、接続する機器（スレーブ）の数に応じて、モードを設定する。携帯端末１０には、接続される機器の数（プレイ人数等）に応じたモードがあり、モードに応じたゲームを実行する。例えば、携帯端末１０は、２人プレイモードでゲームを実行したり、３人プレイモードでゲームを実行したりする。携帯端末１０は接続された複数の機器と通信を行うことにより、複数人でプレイするゲームを実行することができる。また、携帯端末１０に複数の機器（スレーブ）が接続される場合において、一人プレイのゲームを行なうこともできる。一人のプレイヤは、携帯端末１０と接続された複数の機器を用いて入力（ボタン、タッチパネル、加速度センサや角速度センサ等の慣性センサ等を用いた入力）を行なったり、複数の機器を用いた出力（表示装置を用いた文字や画像の表示、スピーカを用いた音声の出力、バイブレータを用いた振動による出力、ＬＥＤを発光させることによる光の出力等）を行なったりすることができる。このように、一人でゲームをプレイする場合でも、接続する機器の数に応じて、モードが設定される。
【０２３３】
また、ＣＰＵ１１は、他の機器との間の通信の状況に応じて、ＣＩ、ＳＬおよび接続監視タイムアウトの少なくとも何れか１つを設定してもよい。例えば、携帯端末１０がＢＬＥ端末２０とは異なる第３の機器とＢＬＥ規格に基づく通信を行う場合（第３の機器との通信は接続状態で行なわれてもよいし、非接続状態で行なわれてもよい）と、第３の機器と通信を行わない場合とで、異なるＣＩ、ＳＬ、接続監視タイムアウトが設定されてもよい。すなわち、携帯端末１０は、第３の機器との通信の有無に応じて、ＢＬＥ端末２０との間の接続におけるＣＩ、ＳＬ、接続監視タイムアウトを設定してもよい。また、携帯端末１０が第３の機器と通信を行う場合、その通信の頻度や第３の機器からの電波の状況等に応じて、ＢＬＥ端末２０との間の接続におけるＣＩ、ＳＬおよび接続監視タイムアウトが設定されてもよい。  
【０２３４】
また、ＣＰＵ１１は、ＢＬＥ端末２０との通信の状況（通信の頻度や送受信されるデータの量、電波の状況等）に応じて、当該ＢＬＥ端末２０との接続におけるＣＩ、ＳＬおよび接続監視タイムアウトの少なくとも何れか１つを設定してもよい。
【０２３５】
なお、ＣＩ、ＳＬおよび接続監視タイムアウトのうちの少なくとも何れか１つはＢＬＥ端末２０（スレーブ）によって設定されてもよい。具体的には、上述のように実行されるアプリケーションの種類、アプリケーションの実行状況、ＢＬＥ端末２０の種類（ＢＬＥ端末２０が有する機能）、接続相手となる携帯端末１０の種類、携帯端末１０と接続される他の機器の数等に基づいて、ＢＬＥ端末２０（スレーブ）が、ＣＩ、ＳＬおよび接続監視タイムアウトのうちの少なくとも何れか１つを設定してもよい。例えば、ＢＬＥ端末２０がＳＬを設定し、当該設定したＳＬを携帯端末１０に通知してもよい。また、ＢＬＥ端末２０がＳＬを設定し、当該設定したＳＬは、携帯端末１０に送信されなくてもよい。また、ＢＬＥ端末２０がＣＩを設定してもよいし、接続監視タイムアウトを設定してもよい。なお、ＢＬＥ端末２０が設定した当該ＣIまたは当該接続監視タイムアウトを携帯端末１０に通知してもよい。このような通知を受信した後、携帯端末１０は、例えば、ＢＬＥ端末２０からの通知に含まれるＣＩ、ＳＬまたは接続監視タイムアウトに従って、自らのＣＩ、ＳＬまたは接続監視タイムアウトを設定する。なお、その場合に、携帯端末１０側において、当該ＢＬＥ端末２０から通知されたＣＩ、ＳＬまたは接続監視タイムアウトとは異なるＣＩ、ＳＬまたは接続監視タイムアウトが設定されようとしていた場合は、マスター側、すなわち、携帯端末１０側の設定が優先されてもよい。マスター側の設定が優先される場合には、例えば、マスターである携帯端末１０が、自らが設定したい（かつ、ＢＬＥ端末２０から通知されたＣＩ、ＳＬまたは接続監視タイムアウトとは異なる）ＣＩ、ＳＬまたは接続監視タイムアウトをＢＬＥ端末２０に対して通知し返し、当該携帯端末１０が設定したいＣＩ、ＳＬまたは接続監視タイムアウトがＢＬＥ端末２０において強制的に設定される。
【０２３６】
なお、「ＣＩ、ＳＬおよび接続監視タイムアウトを設定する」とは、携帯端末１０とＢＬＥ端末２０とが接続されていない状態において接続を確立する際にＣＩ、ＳＬおよび接続監視タイムアウトを設定すること、及び、携帯端末１０とＢＬＥ端末２０とが接続されている状態においてＣＩ、ＳＬおよび接続監視タイムアウトを新たに設定すること（変更すること）を含む。
【０２３７】
ステップＳ１０２の処理の後、ＣＰＵ１１は、現在、ＢＬＥ端末２０と接続中か否かを判定する（ステップＳ１０３）。現在、ＢＬＥ端末２０と接続中でない場合（ステップＳ１０３：ＮＯ）、ＣＰＵ１１は、マスター側接続処理を行う（ステップＳ１０４）。ステップＳ１０４の処理は、携帯端末１０をマスターとしてＢＬＥ端末２０と接続を確立するための処理である。具体的には、ＣＰＵ１１は、ＢＬＥ通信モジュール１６に対して、ＢＬＥ端末２０と接続を確立するための命令を送る。このＣＰＵ１１の命令には、ステップＳ１０２において設定された接続パラメータ（ＣＩ、ＳＬ、接続監視タイムアウト）が含まれる。このＣＰＵ１１の命令に応じて、ＢＬＥ通信モジュール１６は、自機の周辺にあるＢＬＥ端末２０と接続を試みる。ＢＬＥ通信モジュール１６によって行われるマスター側接続処理の詳細については、図２０を参照して後に詳述する。
【０２３８】
ステップＳ１０４に続いて、ＣＰＵ１１は、ＢＬＥ端末２０と接続されたか否かを判定する（ステップＳ１０５）。ステップＳ１０５でＮＯと判定した場合、ＣＰＵ１１は、再びステップＳ１０４の処理を行う。ステップＳ１０５でＹＥＳと判定した場合、ＣＰＵ１１は、ステップＳ１０８の処理を実行する。
【０２３９】
一方、接続中であると判定した場合（ステップＳ１０３：ＮＯ）、ＣＰＵ１１は、現在の接続パラメータが、ステップＳ１０２で設定した接続パラメータと異なるかどうかを判定し（ステップＳ１０６）、異なると判定した場合（ステップＳ１０６：ＹＥＳ）、現在の接続パラメータを変更する（ステップＳ１０７）。具体的には、ＣＰＵ１１は、ステップＳ１０２で設定した接続パラメータ（ＣＩ、ＳＬ、接続監視タイムアウト）をＢＬＥ通信モジュール１６に渡す。例えば、ＢＬＥ通信モジュール１６は、新たなＣＩ、ＳＬおよび接続監視タイムアウトをＣＰＵ１１から取得した場合、後述するステップＳ１４４において、当該新たなＣＩ、ＳＬおよび接続監視タイムアウトをＢＬＥ端末２０に送信する。これにより、携帯端末１０とＢＬＥ端末２０との間の接続におけるＣＩ、ＳＬおよび接続監視タイムアウトが変更される。なお、ステップＳ１０２で設定したＣＩ、ＳＬおよび接続監視タイムアウトが現在の値と同じである場合（ステップＳ１０６：ＮＯ）、ＣＰＵ１１は、これらの値を変更せずに、次にステップＳ１０８の処理を実行する。
【０２４０】
例えば、あるアプリケーションを実行中に別のアプリケーションの実行を開始する場合、ＣＰＵ１１は、ステップＳ１０７において、当該別のアプリケーションの種類に応じて、現在のＣＩ、ＳＬ、接続監視タイムアウトのうちの少なくとも何れか１つを変更する。例えば、クイズゲームを実行中にアクションゲームを実行する場合、ＣＰＵ１１は、ＣＩを短くする。
【０２４１】
また、例えば、あるゲームを実行中にメニュー画面に戻る操作がユーザによって行われた場合には、ＣＰＵ１１は、実行中のゲームを休止するとともに、メニュー画面を表示する。これに応じて、ＣＰＵ１１は、例えばＣＩを長くしてもよい。すなわち、ＣＰＵ１１は、実行中のアプリケーションが休止状態となった場合、ＣＩ、ＳＬ、接続監視タイムアウトのうちの少なくとも何れか１つを変更する。休止状態からゲームが再開された場合には、変更されたＣＩ、ＳＬ、接続監視タイムアウトのうちの少なくとも何れか１つは変更前の値に戻される。
【０２４２】
また、例えば、ゲームが複数の部分に分かれている場合、実行されるゲームの部分に応じて、ＣＩ、ＳＬ、接続監視タイムアウトのうちの少なくとも何れか１つが変更されてもよい。例えば、１つのゲームが複数のステージに分かれている場合、あるステージから別のステージに移ったことに応じて、ＣＩ、ＳＬ、接続監視タイムアウトのうちの少なくとも何れか１つが変更されてもよい。また、ゲームにおいて、あるエリアから別のエリアに移った場合、ＣＩ、ＳＬ、接続監視タイムアウトのうちの少なくとも何れか１つが変更されてもよい。また、１のゲームにおいて複数のミッション（特定の目的を達成するための小ゲーム）が行われる場合、ミッションゲームが行われたことに応じて、ＣＩ、ＳＬ、接続監視タイムアウトのうちの少なくとも何れか１つが変更されてもよい。
【０２４３】
ステップＳ１０５でＹＥＳと判定した場合、ステップＳ１０６でＮＯと判定した場合、又は、ステップＳ１０７の処理を実行した場合、ＣＰＵ１１は、ゲーム（例えば、図１４〜図１６で示したゲーム）を開始する（ステップＳ１０８）。
【０２４４】
ゲームが開始されると、ＣＰＵ１１は、図１０で示した演出データＤをセットする（ステップＳ１０９）。ここでセットされた演出データＤは、携帯端末１０とＢＬＥ端末２０との接続におけるコネクションイベントにおいてＢＬＥ端末２０に送信される。具体的には、ＢＬＥ通信モジュール１６が後述する図２１のステップＳ１４４を実行することにより、演出データＤが携帯端末１０からＢＬＥ端末２０に送信される。なお、ＣＰＵ１１は、ステップＳ１０９において、ＢＬＥ端末２０に送信すべき演出データＤがある場合に、演出データＤをセットし、ＢＬＥ端末２０に送信すべき演出データＤがない場合は、何もせずに次のステップＳ１１０を実行する。
【０２４５】
ＣＰＵ１１は、ステップＳ１０９の処理を実行した後、ゲーム処理を実行する（ステップＳ１１０）。ステップＳ１１０のゲーム処理では、ＢＬＥ端末２０から受信した入力ボタン２２の操作結果情報に基づく処理が行われる。例えば、ステップＳ１１０のゲーム処理では、操作結果情報に基づく画像が生成されたり、操作結果情報に基づいてＢＬＥ端末２０に行わせる演出の内容が決定されたりする。また、テップＳ１１０のゲーム処理では、ステップＳ１０８においてゲームが開始されてからの経過時間に応じて画像が生成されてもよい。ステップＳ１１０の処理の詳細については、図１９を参照して後に詳述する。
【０２４６】
ステップＳ１１０に続いて、ＣＰＵ１１は、表示処理を行う（ステップＳ１１１）。具体的には、ＣＰＵ１１は、ステップＳ１１０のゲーム処理の結果に応じた画像を表示装置１４に表示させる。次に、ＣＰＵ１１は、ゲームを終了するか否かを判定する（ステップＳ１１２）。ゲームを終了すると判定した場合（ステップＳ１１２：ＹＥＳ）、ＣＰＵ１１は、図１８に示す処理を終了する。ゲームを終了すると判定しなかった場合（ステップＳ１１２：ＮＯ）、ＣＰＵ１１は、ステップＳ１０９の処理を再び実行する。ステップＳ１０９〜ステップＳ１１２の処理が所定の時間間隔（例えば、１／６０秒）で行われることにより、ＢＬＥ端末２０において演出が行われるとともに、例えば、ＢＬＥ端末２０の入力ボタン２２に対する操作に応じた画像が携帯端末１０の表示装置１４に表示される。
【０２４７】
なお、携帯端末１０とＢＬＥ端末２０との接続におけるコネクションインターバル（ＣＩ）は、携帯端末１０の表示装置１４の表示が更新される間隔（上記１／６０秒）よりも長く設定される。このため、例えばＢＬＥ端末２０の入力ボタン２２に対する操作が行われた場合でも、そのボタン操作が即座に携帯端末１０の表示装置１４の表示に反映されず、若干の遅延があった後にそのボタン操作に応じた表示が行われる。また、そのボタン操作に応じて、携帯端末１０がさらにＢＬＥ端末２０に演出を行わせる場合には、ＢＬＥ端末２０においてボタン操作が行われてからさらに演出が行われるまでに遅延が発生する。しかしながら、上記ステップＳ１０２において例えばゲームアプリケーションの種類に応じてＣＩが決定されることにより、ユーザが許容できるように遅延を制御することができる。
【０２４８】
（携帯端末１０のＣＰＵ１１によって行われるゲーム処理）
図１９は、図１８のステップＳ１１０におけるゲーム処理の詳細を示すフローチャートである。
【０２４９】
ＣＰＵ１１は、まず、ＢＬＥ通信モジュール１６が操作結果情報を受信したか否かを判定する（ステップＳ１２１）。ＢＬＥ通信モジュール１６は、ＣＰＵ１１が所定の時間間隔（例えば１／６０秒）でゲーム処理を行っている間、コネクションインターバルＣＩ（例えば５００ｍ秒間隔）でＢＬＥ端末２０と通信を行う。このＢＬＥ端末２０との通信によって受信されたデータは、ＢＬＥ通信モジュール１６からＣＰＵ１１に渡される。ステップＳ１２１では、ＣＰＵ１１は、ＢＬＥ通信モジュール１６がＢＬＥ端末２０との通信によって操作結果情報を受信したか否かを判定する。
【０２５０】
ステップＳ１２１においてＹＥＳと判定した場合、ＣＰＵ１１は、受信した操作結果情報に基づく処理を行う（ステップＳ１２２）。具体的には、ＣＰＵ１１は、ステップＳ１０９においてセットした演出データＤに含まれる第１演出情報ＤＢに応じた操作が、ＢＬＥ端末２０の入力ボタン２２に対して行われたか否かを判定する。操作結果情報は、上述したように、例えば１０ｂｉｔで表されており、各ｂｉｔは、例えば５０ｍ秒毎の入力ボタン２２の操作状態を示す。したがって、ＣＰＵ１１は、操作結果情報の各ｂｉｔが「１」か否かを判定することにより、コネクションインターバルにおいて入力ボタン２２が押されたか否か、何回押されたか、どのくらいの時間押されたかを判定することができる。また、ＣＰＵ１１は、複数のコネクションイベントにおいて操作結果情報を受信した場合、複数の操作結果情報に基づいて、複数のコネクションイベントにわたる期間において入力ボタン２２に対してどのような操作が行われたかを判定することができる。
【０２５１】
例えば、図１４に示すゲームが行われた場合には、ＣＰＵ１１は、操作結果情報に基づいて、第１演出の後の特定期間において入力ボタン２２が操作されたか否かを判定することにより、ゲームの成否判定を行う。具体的には、ＣＰＵ１１は、ステップＳ１０９においてセットした演出データＤがＢＬＥ端末２０に送信されてからの経過時間と、ＢＬＥ端末２０から受信した操作結果情報とに基づいて、入力ボタン２２が予め設定した特定期間に操作されたか否かを判定する。特定期間において入力ボタン２２が操作された場合、ＣＰＵ１１は「成功」と判定する。特定期間において入力ボタン２２が操作されなかった場合、ＣＰＵ１１は「失敗」と判定する。そして、ＣＰＵ１１は、成否判定の結果に基づいて、点数を加算（又は減算）したり、ゲームの結果を示す画像を生成したり、音声を出力したり、バイブレータ１７を振動させたりする。また、ＣＰＵ１１は、成否判定の結果をＢＬＥ端末２０に送信するために、当該成否判定の結果を示すデータをセットする。この成否判定の結果を示すデータは、ＢＬＥ通信モジュール１６によって次のコネクションイベントにおいてＢＬＥ端末２０に送信される。成否判定の結果を示すデータに基づいて、ＢＬＥ端末２０において発光や振動による演出が行われてもよい。また、ＢＬＥ端末２０に表示装置が設けられる場合には、当該ＢＬＥ端末２０の表示装置に成否判定の結果に応じた画像が表示されてもよい。
【０２５２】
また、例えば、図１５に示すゲームが行われた場合には、ＣＰＵ１１は、演出データＤがＢＬＥ端末２０に送信されてからの経過時間と、操作結果情報に基づいて、所定のリズムに合った操作が行われたか否かを判定する。そして、ＣＰＵ１１は、判定結果に基づいて、点数を加算（又は減算）したり、リズムゲームの結果を示す画像を生成したりする。また、ＣＰＵ１１は、ＢＬＥ端末２０に当該リズムゲームの結果を示すデータをセットしてもよい。セットされたデータは、ＢＬＥ通信モジュール１６によって次のコネクションイベントにおいてＢＬＥ端末２０に送信される。
【０２５３】
ステップＳ１２２の処理を実行した場合、又は、ステップＳ１２１でＮＯと判定した場合、ＣＰＵ１１は、その他の処理を実行する（ステップＳ１２３）。例えば、ＣＰＵ１１は、操作結果情報を受信する前では、演出データＤがＢＬＥ端末２０に送信されてからの経過時間に応じた画像を生成してもよい。生成された画像は、上記ステップＳ１１１において表示装置１４に表示される。また、ＣＰＵ１１は、例えば、携帯端末１０の入力装置１５に対する操作を検知し、当該操作に基づいてゲームに関する処理（点数の計算、画像の生成や音声の出力）を行ってもよい。
【０２５４】
また、ＣＰＵ１１は、ステップＳ１２３において、操作結果情報に基づいて、携帯端末１０とＢＬＥ端末２０との間の接続のパラメータを変更してもよい。例えば、ＣＰＵ１１は、操作結果情報に基づいてＢＬＥ端末２０の入力ボタン２２の操作頻度を算出し、ＢＬＥ端末２０の入力ボタン２２が頻繁に操作されていると判定した場合、その操作頻度に応じて、ＣＩの値を現在よりも短く設定してもよい。また、ＣＰＵ１１は、入力ボタン２２の操作頻度に応じて、ＳＬや接続監視タイムアウトを変更してもよい。また、携帯端末１０の入力装置１５に対する操作の操作頻度を算出し、算出された操作頻度に基づいて、ＣＩ、ＳＬ、接続監視タイムアウトのうちの少なくとも何れか１つが変更されてもよい。変更されたＣＩ、ＳＬ、接続監視タイムアウトは、次のコネクションイベントにおいてＢＬＥ端末２０に通知される。当該通知を受信した後、ＢＬＥ端末２０は、例えば、携帯端末１０から通知のあったＣＩ、ＳＬまたは接続監視タイムアウトに従って、自らのＣＩ、ＳＬまたは接続監視タイムアウトを設定する。
【０２５５】
（携帯端末１０のＢＬＥ通信モジュール１６によって行われるマスター側接続処理）
次に、携帯端末１０のＢＬＥ通信モジュール１６によって行われる処理について説明する。図２０は、ＢＬＥ通信モジュール１６によって行われるマスター側接続処理の詳細を示すフローチャートである。ＣＰＵ１１によって上記ステップＳ１０４が行われたことに応じて、ＢＬＥ通信モジュール１６は、図２０に示す処理を実行する。図２０に示す処理は、携帯端末１０の通信可能範囲（例えば、数ｍ以内）に存在するＢＬＥ端末２０との間で接続を確立するための処理である。
【０２５６】
ＢＬＥ通信モジュール１６は、まず、受信回路を作動させてアドバタイジングパケットの受信処理を行う（ステップＳ１３１）。具体的には、ＢＬＥ通信モジュール１６は、３つのチャネルを切り替えながら自機の周辺に存在する他の機器からのアドバタイジングパケットの受信を試みる。続いて、ＢＬＥ通信モジュール１６は、アドバタイジングパケットを受信したか否かを判定する（ステップＳ１３２）。具体的には、ＢＬＥ通信モジュール１６は、接続のためのアドバタイジングパケットを受信したか否かを判定する。
【０２５７】
アドバタイジングパケットを受信しなかった場合（ステップＳ１３２：ＮＯ）、ＢＬＥ通信モジュール１６は、再びステップＳ１３１の処理を実行する。ステップＳ１３１の処理を繰り返し実行することにより、ＢＬＥ端末２０は、図４で示したようにスキャンと休止とを繰り返し実行し、アドバタイジングパケットの受信を試みる。なお、所定時間が経過してもアドバタイジングパケットを受信しなかった場合、ＢＬＥ通信モジュール１６は、図２０に示す処理を終了する。
【０２５８】
アドバタイジングパケットを受信した場合（ステップＳ１３２：ＹＥＳ）、ＢＬＥ通信モジュール１６は、アドバタイジングパケットを送信した機器に対してコネクション要求を送信する（ステップＳ１３３）。ここでは、ＢＬＥ通信モジュール１６は、ＢＬＥ端末２０からアドバタイジングパケットを受信したものとする。
【０２５９】
具体的には、ステップＳ１３３において、ＢＬＥ通信モジュール１６は、上記ステップＳ１０２で設定されたパラメータ（ＣＩ及びＳＬ）を含むコネクション要求をＢＬＥ端末２０に送信する。
【０２６０】
コネクション要求をＢＬＥ端末２０に送信すると、ＢＬＥ通信モジュール１６は、接続状態に移行し（ステップＳ１３４）、ＢＬＥ端末２０との接続が確立される（ステップＳ１３５）。ここでは、携帯端末１０がマスター（セントラル）となり、ＢＬＥ端末２０がスレーブ（ペリフェラル）となる。接続状態に移行した後、ＢＬＥ通信モジュール１６は、図２１に示す接続状態の処理を行う。以下、接続状態における処理について説明する。
【０２６１】
（携帯端末１０のＢＬＥ通信モジュール１６によって行われる接続状態の処理）
図２１は、携帯端末１０のＢＬＥ通信モジュール１６によって行われる接続状態の処理の詳細を示すフローチャートである。図２１に示すように、ＢＬＥ通信モジュール１６は、前回のコネクションイベントからＣＩ（例えば、５００ｍ秒）が経過したか否かを判定する（ステップＳ１４１）。
【０２６２】
前回のコネクションイベントからＣＩが経過したと判定した場合（ステップＳ１４１：ＹＥＳ）、ＢＬＥ通信モジュール１６は、演出データＤがセットされているか否かを判定する（ステップＳ１４２）。この演出データＤは、上述のようにＣＰＵ１１がステップＳ１０９の処理を行うことによってセットされる。
【０２６３】
演出データＤがセットされていると判定した場合（ステップＳ１４２：ＹＥＳ）、ＢＬＥ通信モジュール１６は、データパケットに当該演出データＤを含める（ステップＳ１４３）。
【０２６４】
ステップＳ１４３の処理を実行した場合、又は、ステップＳ１４２でＮＯと判定した場合、ＢＬＥ通信モジュール１６は、データパケットをＢＬＥ端末２０に送信する（ステップＳ１４４）。具体的には、ＢＬＥ通信モジュール１６は、データチャネル０〜３６のうちの何れかを用いてデータパケットをＢＬＥ端末２０に送信する。ＢＬＥ通信モジュール１６は、前回のコネクションイベントで用いたチャネルにホップ数を加えたチャネルを今回のコネクションイベントにおいて用いる。ステップＳ１４３の処理が実行された場合には、データパケットのペイロードには上記演出データＤが含まれ、ステップＳ１４３の処理が実行されなかった場合には、ペイロードにはデータは含まれない。
【０２６５】
なお、上記ステップＳ１０７やステップＳ１２３においてＣＰＵ１１がＣＩ及び／又はＳＬを変更した場合、ＢＬＥ通信モジュール１６は、当該新たなＣＩ及び／又はＳＬの情報をパケットに含めてＢＬＥ端末２０に送信する。以降は、変更後のＣＩ及びＳＬに基づいて、コネクションイベントが行われる。
【０２６６】
ステップＳ１４４に続いて、ＢＬＥ通信モジュール１６は、ＢＬＥ端末２０から応答パケットを受信したか否かを判定する（ステップＳ１４５）。ＢＬＥ端末２０から応答パケットを受信した場合（ステップＳ１４５：ＹＥＳ）、ＢＬＥ通信モジュール１６は、応答パケットに操作結果情報が含まれるか否かを判定する（ステップＳ１４６）。
【０２６７】
応答パケットに操作結果情報が含まれる場合（ステップＳ１４６：ＹＥＳ）、ＢＬＥ通信モジュール１６は、当該操作結果情報をＣＰＵ１１に渡す。この操作結果情報に基づいて、上述したステップＳ１２２の処理が行われる。
【０２６８】
ステップＳ１４７の処理を実行した場合、又はステップＳ１４６でＮＯと判定した場合、ＢＬＥ通信モジュール１６は、変数Ｎに「０」を設定するとともに、変数Ｔをリセットする（ステップＳ１４８）。そして、ＢＬＥ通信モジュール１６は、再びステップＳ１４１に処理を戻す。ここで、「Ｎ」は、ＢＬＥ通信モジュール１６の内部メモリにおいて記憶される変数であり、携帯端末１０とＢＬＥ端末２０との間の接続においてＢＬＥ端末２０から応答パケットを受信しなかったコネクションイベントの回数を示す。すなわち、「Ｎ」は、ＢＬＥ端末２０がコネクションイベントを無視（スキップ）した回数を示す。また、変数「Ｔ」は、ＢＬＥ通信モジュール１６の内部メモリにおいて記憶される変数であり、携帯端末１０がＢＬＥ端末２０から応答パケットを受信してからの経過時間を示す変数である。ＢＬＥ通信モジュール１６は、ＢＬＥ端末２０との接続を切断するか否かをこの変数「Ｔ」を用いて判定する。例えば、「Ｔ」は、時間経過に応じて加算されてもよいし、ステップＳ１４９の処理が行われる毎に１ずつ加算されてもよい。
【０２６９】
一方、ＢＬＥ端末２０から応答パケットを受信しなかった場合（ステップＳ１４５：ＮＯ）、ＢＬＥ通信モジュール１６は、「Ｎ」に１を加算する（ステップＳ１４９）。
【０２７０】
なお、携帯端末１０のＢＬＥ通信モジュール１６は、次のコネクションイベントのタイミングが到来する前に、今回のコネクションイベントにおいてステップＳ１４２〜ステップＳ１４５の処理を複数回実行してもよい。例えば、ＢＬＥ通信モジュール１６は、ステップＳ１４５においてＢＬＥ端末２０から応答を受信した場合において、送信すべきデータが残っている場合、次のコネクションイベントまでの時間に基づいて、今回のコネクションイベントにおいてさらにデータパケットを送信するか否かを判定する。今回のコネクションイベントにおいてさらにデータパケットを送信すると判定した場合、ＢＬＥ通信モジュール１６は、再びステップＳ１４３及びステップＳ１４４を実行し、ステップＳ１４５を実行する。具体的には、ＢＬＥ通信モジュール１６は、今回のコネクションイベントにおいて複数回ステップＳ１４４及びＳ１４５の処理を実行する場合、同じデータチャネルを用いてパケットの送受信を行なう。すなわち、ＢＬＥ通信モジュール１６は、１回のコネクションイベントにおいて、同じデータチャネルを用いて複数のデータパケットを送信する。
【０２７１】
ステップＳ１４９の処理を行った場合、ＢＬＥ通信モジュール１６は、変数「Ｔ」が接続監視タイムアウト以上か否かを判定する（ステップＳ１５０）。変数「Ｔ」が接続監視タイムアウト以上と判定した場合（ステップＳ１５０：ＹＥＳ）には、ＢＬＥ通信モジュール１６は、ＢＬＥ端末２０との接続を切断して非接続状態に移行し（ステップＳ１５１）、図２１に示す処理を終了する。一方、Ｔが接続監視タイムアウトよりも大きいと判定しなかった場合には、ＢＬＥ通信モジュール１６は、処理をステップＳ１４１に戻す。ここで、「接続監視タイムアウト」は、上述のように、実効接続インターバル（（ＳＬ＋１）×ＣＩ）よりも大きな値であり、具体的には、（ＳＬ＋１）×ＣＩの２倍以上に設定される。このため、例えば変数「Ｎ」がＳＬより大きい場合でも（すなわち、ＢＬＥ端末２０から応答パケットを受信しなかった回数がＳＬより大きい場合でも）、ステップＳ１４８において変数「Ｔ」がリセットされてからの経過時間（ＢＬＥ端末２０から応答パケットを受信してからの経過時間）が接続監視タイムアウトを超えていない場合は、ＢＬＥ通信モジュール１６は、ステップＳ１５０においてＮＯと判定して、ＢＬＥ端末２０との接続を維持する。
【０２７２】
なお、携帯端末１０は、ＢＬＥ端末２０と接続している間にも、ＢＬＥ端末２０とは異なる他の機器と通信を行ってもよい。例えば、携帯端末１０は、他の機器と接続を確立して当該他の機器と通信を行う。この場合、ＢＬＥ通信モジュール１６は、接続を確立した端末毎に図２１の処理を行う。ＢＬＥ通信モジュール１６は、接続を確立する際に、同時に２つ以上の機器との間でコネクションイベントが発生しないように、各接続におけるコネクションインターバルを設定するとともに、最初のコネクションイベントのタイミングを調整する。また、携帯端末１０は、他の機器と接続を確立せずに通信を行ってもよい。
【０２７３】
携帯端末１０がＢＬＥ端末２０と接続している間にＢＬＥ端末２０とは異なる他の機器と通信を行う場合、携帯端末１０とＢＬＥ端末２０との間の接続におけるＣＩ、ＳＬおよび接続監視タイムアウトの少なくともいずれか一つが変更されてもよい。例えば、携帯端末１０がＢＬＥ端末２０と接続している間に他の機器と通信を行う場合、携帯端末１０とＢＬＥ端末２０との接続におけるＣＩ、ＳＬおよび接続監視タイムアウトの少なくともいずれか一つの値を、現在の値よりも大きく（又は小さく）してもよい。
【０２７４】
（ＢＬＥ端末２０の制御回路２１によって行われるメイン処理）
次に、ＢＬＥ端末２０において行われる処理について説明する。図２２は、ＢＬＥ端末２０の制御回路２１によって行われるメイン処理の詳細を示すフローチャートである。制御回路２１は、所定の時間間隔で図２２に示す処理を実行する。例えば、制御回路２１は、携帯端末１０との間の接続におけるコネクションインターバル（例えば、５００ｍ秒）よりも短い間隔（例えば、５０ｍ秒）で図２２に示す処理を実行してもよい。例えば、ＢＬＥ端末２０は、入力ボタン２２の操作状態を検知する頻度と同じ頻度で図２２に示す処理を行ってもよい。また、ＢＬＥ端末２０に表示装置が設けられる場合、ＢＬＥ端末２０は、当該表示装置の表示の更新頻度と同じ頻度で図２２に示す処理を行ってもよい。
【０２７５】
ＢＬＥ端末２０の制御回路２１は、まず、携帯端末１０と接続中か否かを判定する（ステップＳ２０１）。接続中であると判定した場合（ステップＳ２０１：ＹＥＳ）、制御回路２１は、次にステップＳ２０４の処理を実行する。
【０２７６】
携帯端末１０と接続中でないと判定した場合（ステップＳ２０１：ＮＯ）、制御回路２１は、スレーブ側接続処理を行う（ステップＳ２０２）。具体的には、制御回路２１は、携帯端末１０と接続を確立するために、ＢＬＥ通信モジュール２５に命令を送る。ＢＬＥ通信モジュール２５は、当該制御回路２１の命令に応じて、図２４に示す処理を実行する。図２４については後に詳述する。
【０２７７】
続いて、制御回路２１は、ステップＳ２０２の処理の結果、携帯端末１０と接続されたか否かを判定する（ステップＳ２０３）。ステップＳ２０３でＹＥＳと判定した場合、制御回路２１は、次にステップＳ２０４の処理を実行する。ステップＳ２０３でＮＯと判定した場合、制御回路２１は、ステップＳ２０２の処理を再び実行する。
【０２７８】
次に、制御回路２１は、ステップＳ２０４において演出制御処理を実行する。ステップＳ２０４の演出制御処理は、演出データＤに基づいて、ＬＥＤ２３やバイブレータ２４を用いた演出を制御するための処理である。以下、ステップＳ２０４の演出制御処理の詳細について説明する。
【０２７９】
（ＢＬＥ端末２０の制御回路２１によって行われる演出制御処理）
図２３は、図２２のステップＳ２０４における演出制御処理の詳細を示すフローチャートである。図２３に示すように、制御回路２１は、演出データＤに基づく演出を実行中か否かを判定する（ステップＳ２１１）。本実施形態では、制御回路２１は、演出データＤを受信してから当該演出データＤに設定された「ボタン受付時間」が経過するまでの間、ステップＳ２１１においてＹＥＳと判定する。
【０２８０】
演出データＤに基づく演出を実行中であると判定した場合（ステップＳ２１１：ＹＥＳ）、制御回路２１は、携帯端末１０から新たに演出データＤを受信したか否かを判定する（ステップＳ２１２）。具体的には、ＢＬＥ通信モジュール２５がコネクションイベントにおいて演出データＤを受信した場合には、当該演出データＤが制御回路２１に渡される。制御回路２１は、ＢＬＥ通信モジュール２５が新たな演出データＤを受信したか否かを判定する。
【０２８１】
新たに演出データを受信した場合（ステップＳ２１２：ＹＥＳ）、制御回路２１は、受信した新たな演出データＤの優先度が、実行中の演出に係る演出データＤの優先度よりも高いか否かを判定する（ステップＳ２１３）。
【０２８２】
受信した新たな演出データＤの優先度が実行中の演出に係る演出データＤの優先度よりも高いと判定した場合（ステップＳ２１３：ＹＥＳ）、制御回路２１は、受信した新たな演出データＤに基づく第１演出を実行する（ステップＳ２１４）。具体的には、制御回路２１は、演出データＤに含まれる第１演出情報ＤＢに基づいて、ＬＥＤ２３やバイブレータ２４を用いた演出を行う。第１演出情報ＤＢに複数の演出情報がある場合には、制御回路２１は、先頭の演出情報から順に読み取って、各演出情報に基づく第１演出を実行する。
【０２８３】
一方、演出データＤに基づく演出を実行中でないと判定した場合（ステップＳ２１１：ＮＯ）、制御回路２１は、携帯端末１０から演出データＤを受信したか否かを判定する（ステップＳ２１５）。携帯端末１０から演出データＤを受信したと判定した場合（ステップＳ２１５：ＹＥＳ）、制御回路２１は、受信した演出データＤに基づく第１演出を実行する（ステップＳ２１６）。携帯端末１０から演出データＤを受信したと判定しなかった場合（ステップＳ２１５：ＮＯ）、制御回路２１は、図２３に示す処理を終了する。
【０２８４】
ステップＳ２１２でＮＯと判定した場合、ステップＳ２１３でＮＯと判定した場合、ステップＳ２１４の処理を実行した場合、又は、ステップＳ２１６の処理を実行した場合、制御回路２１は、次にステップＳ２１７の処理を実行する。
【０２８５】
ステップＳ２１７において、制御回路２１は、入力ボタン２２が操作されたか否かを判定する。
【０２８６】
入力ボタン２２が操作された場合（ステップＳ２１７：ＹＥＳ）、制御回路２１は、操作結果情報として「１」をメモリにセットする（ステップＳ２１８）。一方、入力ボタン２２が操作されていない場合（ステップＳ２１７：ＮＯ）、制御回路２１は、操作結果情報として「０」をメモリにセットする（ステップＳ２１９）。
【０２８７】
例えば、制御回路２１のメモリには、操作結果情報を格納するための１０ｂｉｔの操作格納領域が設けられる。制御回路２１は、操作格納領域の１ｂｉｔ目に「１」又は「０」をセットした後、次にステップＳ２１８又はステップＳ２１９の処理を実行すると、操作格納領域の２ｂｉｔ目に「１」又は「０」をセットする。制御回路２１は、さらにその後、ステップＳ２１８又はステップＳ２１９の処理を実行すると、操作格納領域の３ｂｉｔ目に「１」又は「０」をセットする。上述のように、図２２に示す処理は例えば５０ｍ秒毎に実行されるため、５０ｍ秒毎にステップＳ２１８又はステップＳ２１９の処理が行われる。したがって、５０ｍ秒毎の入力ボタン２２の操作状態（「１」又は「０」）が操作結果情報として制御回路２１のメモリに記憶される。
【０２８８】
ステップＳ２１８に続いて、制御回路２１は、第１演出が終了したか否かを判定する（ステップＳ２２０）。具体的には、制御回路２１は、演出データＤに含まれる第１演出情報ＤＢのうち、全ての演出情報の再生が終了したか否かを判定する。制御回路２１は、第１演出が終了した後は、ステップＳ２２０においてＹＥＳと判定する。第１演出が終了していないと判定した場合（ステップＳ２２０：ＮＯ）、制御回路２１は、図２３に示す処理を終了する。
【０２８９】
ステップＳ２２０においてＹＥＳと判定した場合、制御回路２１は、入力ボタン２２の操作に応じた第２演出を実行する（ステップＳ２２１）。具体的には、制御回路２１は、演出データＤに含まれる第２演出情報の「振動」情報に基づいてバイブレータ２４を振動させることにより、第２演出を実行する。なお、この入力ボタン２２の操作に応じて行われる第２演出は、一定時間だけ行われる。
【０２９０】
ステップＳ２１５でＮＯと判定した場合、ステップＳ２１９の処理を行った場合、ステップＳ２２０でＮＯと判定した場合、又は、ステップＳ２２１の処理を行った場合、制御回路２１は、図２３に示す処理を終了する。
【０２９１】
（ＢＬＥ端末２０のＢＬＥ通信モジュール２５によって行われるスレーブ側接続処理）
次に、ＢＬＥ端末２０のＢＬＥ通信モジュール２５によって行われる処理について説明する。図２４は、ＢＬＥ端末２０のＢＬＥ通信モジュール２５によって行われるスレーブ側接続処理の詳細を示すフローチャートである。制御回路２１によって上記ステップＳ２０２が行われたことに応じて、ＢＬＥ通信モジュール２５は、図２４に示す処理を実行する。図２４に示す処理は、ＢＬＥ端末２０の通信可能範囲に存在する携帯端末１０との間で接続を確立するための処理である。
【０２９２】
ＢＬＥ通信モジュール２５は、まず、送信回路を作動させてアドバタイジングを実行する（ステップＳ２２１）。具体的には、ＢＬＥ通信モジュール２５は、３つのチャネル３７〜３９を切り替えながら接続のためのアドバタイジングパケットをブロードキャストで送信する。
【０２９３】
次に、ＢＬＥ通信モジュール２５は、携帯端末１０が上記ステップＳ１３３において送信したコネクション要求を受信したか否かを判定する（ステップＳ２２２）。携帯端末１０からコネクション要求を受信しなかった場合（ステップＳ２２２：ＮＯ）、ＢＬＥ通信モジュール２５は、ステップＳ２２１の処理を再び実行する。
【０２９４】
コネクション要求を受信した場合（ステップＳ２２２：ＹＥＳ）、ＢＬＥ通信モジュール２５は、コネクション要求に含まれるＣＩ、ＳＬ、接続監視タイムアウト、ホップ数、アクセスアドレス等を設定して接続状態に移行し（ステップＳ２２３）、ＢＬＥ端末２０と携帯端末１０との間の接続を確立する（ステップＳ２２４）。ここでは、携帯端末１０がマスター（セントラル）となり、ＢＬＥ端末２０がスレーブ（ペリフェラル）となる。接続状態に移行した場合は、ＢＬＥ通信モジュール２５は、図２５に示す接続状態の処理を行う。以下、接続状態における処理について説明する。
【０２９５】
（ＢＬＥ端末２０のＢＬＥ通信モジュール２５によって行われる接続状態の処理）
図２５は、ＢＬＥ端末２０のＢＬＥ通信モジュール２５によって行われる接続状態の処理の詳細を示すフローチャートである。
【０２９６】
図２５に示すように、ＢＬＥ通信モジュール２５は、前回のコネクションイベントからＣＩが経過したか否かを判定する（ステップＳ２３１）。ＣＩが経過していないと判定した場合（ステップＳ２３１：ＮＯ）、ＢＬＥ通信モジュール２５は、ステップＳ２３１の処理を再び実行する。なお、ＢＬＥ通信モジュール２５は、ステップＳ２３１において、実際には前回のコネクションイベントからＣＩよりも所定時間（時刻の計測誤差を考慮して算出される時間）だけ短い時間が経過したか否かを判定する。
【０２９７】
前回のコネクションイベントからＣＩが経過したと判定した場合（ステップＳ２３１：ＹＥＳ）、ＢＬＥ通信モジュール２５は、携帯端末１０が上記ステップＳ１４４で送信したデータパケットを受信する（ステップＳ２３２）。ＢＬＥ通信モジュール２５は、受信したパケットに含まれるデータを制御回路２１に渡す。例えば、上記演出データＤがパケットに含まれる場合、ＢＬＥ通信モジュール２５は、当該演出データＤを制御回路２１に渡す。
【０２９８】
次に、ＢＬＥ通信モジュール２５は、送信すべきデータがあるか否かを判定する（ステップＳ２３３）。具体的には、ＢＬＥ通信モジュール２５は、上記操作結果情報がある場合、ステップＳ２３３においてＹＥＳと判定する。ここで、ＢＬＥ通信モジュール２５は、操作結果情報の各ｂｉｔが全て「０」であっても、ステップＳ２３３においてＹＥＳと判定する。すなわち、入力ボタン２２が操作されなかった場合でも、ＢＬＥ通信モジュール２５は、入力ボタン２２が操作されなかったことを示す操作結果情報を、携帯端末１０に送信する。
【０２９９】
なお、ＢＬＥ通信モジュール２５は、操作結果情報の各ｂｉｔが全て「０」の場合（入力ボタン２２が操作されなかった場合）、ステップＳ２３３においてＮＯと判定してもよい。すなわち、入力ボタン２２が操作されなかった場合は、入力ボタン２２が操作されなかったことを示す操作結果情報は携帯端末１０に送信されなくてもよい。携帯端末１０は、操作結果情報を含む応答パケットを受信しなかった場合は、入力ボタン２２が操作されなかったと判断することができる。
【０３００】
また、ＢＬＥ通信モジュール２５は、ステップＳ２３３において次のような処理を行ってもよい。具体的には、ＢＬＥ通信モジュール２５は、ゲームの実行状況に応じて、ステップＳ２３３においてＹＥＳ又はＮＯと判定する。より具体的には、携帯端末１０からＢＬＥ端末２０に上記演出データＤが送信されたことによって携帯端末１０とＢＬＥ端末２０とを用いてゲームが行われている場合、当該ゲームの実行状況に応じて、ステップＳ２３３においてＹＥＳと判定する（すなわち、応答パケットを携帯端末２０に返すと判定する）。例えば、制御回路２１は、受信した演出データＤに基づいて、ボタン受付時間（図１４、図１５参照）を設定する。当該ボタン受付時間内では、ＢＬＥ通信モジュール２５は、ステップＳ２３３において常にＹＥＳと判定してもよい。また、ボタン受付時間内において、入力ボタン２２の操作が行われた場合にのみ（操作結果情報の全てのｂｉｔが「０」でない場合）、ＢＬＥ通信モジュール２５は、ステップＳ２３３においてＹＥＳと判定してもよい。
【０３０１】
ステップＳ２３３においてＹＥＳと判定した場合、ＢＬＥ通信モジュール２５は、データチャネル０〜３６のうちの何れかを用いて携帯端末１０に応答パケットを送信する（ステップＳ２３４）。具体的には、ＢＬＥ通信モジュール２５は、上記ステップＳ２１８又はステップＳ２１９でセットされた操作結果情報（１０ｂｉｔの情報）を応答パケットに含めて送信する。なお、ＢＬＥ通信モジュール２５は、送信すべきデータが無い場合（例えば、ゲームが実行中でない場合やゲームが休止状態の場合、ゲームの実行中であってもボタン受付時間内でない場合等）、ステップＳ２３４において、ペイロード部のデータが無い応答パケット（空の応答パケット）を携帯端末１０に送信する。
【０３０２】
なお、ＢＬＥ通信モジュール２５は、ＳＬや接続監視タイムアウトの変更を携帯端末１０に要求することができる。このＳＬや接続監視タイムアウトの変更要求は、上記応答パケットに含められて携帯端末１０に送信される。例えば、ＢＬＥ端末２０は、ゲームの実行状況に応じてＳＬや接続監視タイムアウトの変更要求を携帯端末１０に送信してもよい。携帯端末１０は、ＢＬＥ端末２０からＳＬの変更要求を受信した場合、ＳＬを変更し、ＢＬＥ端末２０から接続監視タイムアウトの変更要求を受信した場合、接続監視タイムアウトを変更する。
【０３０３】
また、ＢＬＥ通信モジュール２５は、ＣＩを変更するための変更要求を、上記応答パケットに含めて携帯端末１０に送信してもよい。例えば、ＢＬＥ端末２０は、携帯端末１０との通信の状況に応じて、ＣＩの変更要求を携帯端末１０に送信してもよい。また、例えば、ＢＬＥ端末２０は、入力ボタン２２の操作頻度を計算し、当該操作頻度に応じて、ＣＩ、ＳＬ、及び接続監視タイムアウトの変更要求を携帯端末１０に送信してもよい。このように、ＢＬＥ通信モジュール２５は、ステップＳ２３４において、ゲームの実行状況、通信の状況（携帯端末１０との通信の状況）、入力ボタン２２の操作の状況等に応じて、ＣＩ、ＳＬおよび接続監視タイムアウトの少なくとも何れか１つの変更要求を携帯端末１０に送信してもよい。
【０３０４】
ステップＳ２３４に続いて、ＢＬＥ通信モジュール２５は、変数Ｎに「０」を設定し（ステップＳ２３５）、再びステップＳ２３１に戻る。ここで、「Ｎ」は、ＢＬＥ通信モジュール２５の内部メモリにおいて記憶される変数であり、ＢＬＥ通信モジュール２５がコネクションイベントをスキップした回数（携帯端末１０に対して応答パケットを送信しなかったコネクションイベントの回数）を示す。
【０３０５】
なお、ＢＬＥ通信モジュール２５は、例えばステップＳ２３１の処理の前又は後に、前回の携帯端末１０との通信からの経過時間が接続監視タイムアウト以上か否かを判定する。例えば、ＢＬＥ通信モジュール２５は、前回携帯端末１０からパケットを受信してからの経過時間が接続監視タイムアウト以上か否かを判定する。あるいは、ＢＬＥ通信モジュール２５は、前回携帯端末１０に対して応答パケットを送信してからの経過時間が接続監視タイムアウトを以上か否かを判定してもよい。そして、前回の携帯端末１０との通信からの経過時間が接続監視タイムアウト以上の場合には、ＢＬＥ通信モジュール２５は、接続状態から非接続状態に移行して、図２５の処理を終了する。この接続監視タイムアウトは、コネクションの確立時に携帯端末１０によって決定されて通知される。
【０３０６】
一方、ＢＬＥ通信モジュール２５は、ステップＳ２３３でＮＯと判定した場合、すなわち、携帯端末１０に送信すべきデータがないと判定した場合、「Ｎ」が「ＳＬ」以上か否かを判定する（ステップＳ２３６）。ＮがＳＬ以上と判定した場合（ステップＳ２３６：ＹＥＳ）、ＢＬＥ通信モジュール２５は、次にステップＳ２３４の処理を実行する。すなわち、ＢＬＥ通信モジュール２５は、今回のコネクションイベントをスキップすると、連続してコネクションイベントをスキップする回数がＳＬを超える場合には、今回のコネクションイベントにおいて携帯端末１０に応答パケットを送信する。ＮがＳＬ未満と判定した場合（ステップＳ２３６：ＮＯ）、ＢＬＥ通信モジュール２５は、「Ｎ」に１を加算する（ステップＳ２３７）。その後、ＢＬＥ通信モジュール２５は、ステップＳ２３１の処理を再び実行する。
【０３０７】
ステップＳ２３１〜ステップＳ２３７の処理が繰り返し行われることにより、コネクションイベントにおいて携帯端末１０からデータパケットを受信するとともに、携帯端末１０に応答パケットを送信する。これにより、ＢＬＥ端末２０は、上述した演出データＤを携帯端末１０から受信したり、上記操作結果情報を携帯端末１０に送信したりする。
【０３０８】
以上のように、本実施形態では、所定の時間間隔（ＣＩ）で発生するコネクションイベントにおいて携帯端末１０からＢＬＥ端末２０に演出データＤが送信される（Ｓ１０９、Ｓ１４４）。ＢＬＥ端末２０は、携帯端末１０から演出データＤを含むデータパケットを受信し（Ｓ２３２）、当該演出データＤに基づいて、演出を実行する（Ｓ２１４、Ｓ２１６、Ｓ２２１）。具体的には、演出データＤには、第１演出情報ＤＢと、操作条件（図１０の「ボタン受付時間」）と、第２演出情報とが含まれる（図１０）。また、第１演出情報ＤＢには、ＬＥＤ２３やバイブレータ２４を用いた第１演出のパターンを示す情報が含まれる。ＢＬＥ端末２０において、操作条件を満たす操作が行われた場合、第２演出情報に基づく第２演出が行われるとともに（Ｓ２２１）、当該操作の内容を示す操作結果情報がＢＬＥ端末２０において蓄積される（Ｓ２１８、Ｓ２１９）。そして、コネクションイベントにおいてＢＬＥ端末２０から携帯端末１０に操作結果情報が送信される（Ｓ２３４）。
【０３０９】
このように、第１演出のパターンを示す第１演出情報と、操作条件および第２演出情報とが携帯端末１０からＢＬＥ端末２０に送信される。ＢＬＥ端末２０が第１演出情報を再生することにより、ＢＬＥ端末２０において第１演出が行われ、ＢＬＥ端末２０において操作条件を満たす操作が行われた場合は第２演出情報に基づく第２演出が行われる。このようにして、ＢＬＥネットワークで接続された携帯端末１０とＢＬＥ端末２０との間でインタラクティブなゲームを行うことができる。
【０３１０】
本実施形態では、携帯端末１０とＢＬＥ端末２０とはＢＬＥ規格に基づいて通信が行われる。携帯端末１０とＢＬＥ端末２０とが接続された状態では、所定の時間間隔（ＣＩ）でコネクションイベントが発生し、携帯端末１０とＢＬＥ端末２０との間でデータがやり取りされる。このＣＩは可変であり、例えば、実行されるアプリケーションの種類やアプリケーションの実行状況に基づいて、設定される。また、ＣＩは、ＢＬＥ端末２０（及び／又は携帯端末１０）の入力装置に対する操作の頻度、ＢＬＥ端末２０の種類（機能）、アプリケーションに参加するユーザ（ＢＬＥ端末２０又は携帯端末１０）の数等に基づいて、設定されてもよい。典型的には、ＣＩは、（携帯端末１０又はＢＬＥ端末２０の）表示装置の表示が更新される間隔（例えば、１／６０秒や１／３０秒）よりも長い。また、ＣＩは、（携帯端末１０又はＢＬＥ端末２０の）入力装置に対する操作を検出する間隔（例えば、５０ｍ秒）よりも長い。このため、操作に対する応答にはある程度の遅延が発生するものの、各機器の消費電力を抑えることができる。
【０３１１】
例えば、ある程度の遅延があってもユーザに違和感を与えないアプリケーションが実行される場合には、ＣＩは比較的長く設定される。これにより、より消費電力を抑えることができる。この場合、ＣＩは、表示装置の更新間隔や入力装置（入力ボタン２２やタッチパネル等）に対する操作の検出間隔よりも長く設定されてもよい。ＣＩが入力装置に対する操作の検出間隔よりも長い場合、ＣＩにおける入力装置に対する複数の操作がＢＬＥ端末２０において蓄積される。
【０３１２】
一方、遅延があるとユーザに違和感を与えるアプリケーションが実行される場合には、ＣＩは比較的短く設定される。この場合、ＣＩは、表示装置の更新間隔や入力装置に対する操作の検出間隔よりも短く（又はこれらと同じに）設定されてもよい。ＣＩが入力装置に対する操作の検出間隔よりも短い又は同じ場合、入力装置に対する複数の操作がＢＬＥ端末２０において蓄積されず、入力装置に対する操作が行われる毎に、当該操作の内容を示す操作結果情報がＢＬＥ端末２０から携帯端末１０に送信される。これにより、例えば、アクションゲームのようにユーザによって頻繁に操作が行われる場合であっても、ユーザの操作を即座に表示に反映することができ、ユーザに違和感やストレスを与えないようにすることができる。
【０３１３】
また、スレーブレイテンシー（ＳＬ）及び接続監視タイムアウトも、例えばアプリケーションの種類によって設定される。例えば、遅延があってもユーザに違和感を与えないアプリケーションが実行される場合には、ＳＬ及び接続監視タイムアウトは比較的大きな値に設定され、遅延があるとユーザに違和感を与えるアプリケーションが実行される場合には、ＳＬ及び接続監視タイムアウトは比較的小さな値に設定される。
【０３１４】
例えば、携帯端末１０及びＢＬＥ端末２０を用いてゲームアプリケーションを実行しているときに、ＢＬＥ端末２０のみを用いたゲームが行われる場合、ＣＩ、ＳＬおよび接続監視タイムアウトが変更されてもよい。具体的には、携帯端末１０及びＢＬＥ端末２０を用いてゲームアプリケーションを実行しているときには、携帯端末１０とＢＬＥ端末２０とは、例えば５００ｍ秒間隔で通信する。この携帯端末１０及びＢＬＥ端末２０を用いたゲーム中に、ＢＬＥ端末２０のみを用いたゲームが開始される。このＢＬＥ端末２０のみを用いたゲームは、例えば、数十秒間行われてもよい。ＢＬＥ端末２０のみを用いたゲームが行われる間は、携帯端末１０とＢＬＥ端末２０とは通信をする必要はないため、例えば、ＣＩが「１秒」に設定されるとともに、ＳＬが「１５」に設定される。これにより、ＢＬＥ端末２０は１５秒間、携帯端末１０に応答を返す必要がない。したがって、ＢＬＥ端末２０は、携帯端末１０に応答を返さなくてもよく、ゲーム処理に集中することができ、無駄な電力消費を抑えることができる。なお、ＢＬＥ端末２０のみを用いたゲームが行われる場合、接続監視タイムアウトが変更されてもよい。例えば、携帯端末１０とＢＬＥ端末２０とを用いたゲームが行われている場合は、接続監視タイムアウトは１０秒に設定され、ＢＬＥ端末２０のみを用いたゲームが行われる場合は、３０秒に設定されてもよい。
【０３１５】
このように、本実施形態では、実行されるアプリケーションの種類によってＣＩ、ＳＬ、及び接続監視タイムアウトを異ならせることで、ＢＬＥ端末２０の消費電力を抑えることができるとともに、ユーザに違和感やストレスを与えないように遅延を制御することができる。
【０３１６】
なお、上記フローチャートにおける各ステップの処理は、単なる一例に過ぎず、各ステップの処理順序を入れ替えてもよいし、各ステップの処理が実行されなくてもよい。また、上記フローチャートにおける処理に他の処理が付加されてもよい。また、各ステップにおける数値は単なる一例であり、他の値が用いられてもよい。
【０３１７】
また、上記実施形態では、各機器は、ＢＬＥ規格に基づく通信を行うものとしたが、ＢＬＥに限らずクラシックＢｌｕｅｔｏｏｔｈに基づく通信が行われてもよい。また、他の規格（例えば、ＩＥＥＥ８０２．１１シリーズ等）に基づく通信が行われてもよい。また、その他の任意の規格に基づく通信が行われてもよい。なお、上記ＢＬＥ規格に基づく通信では、接続状態において、接続確立時に生成された共通のアクセスアドレスを用いて２つの機器間で通信が行われる。他の規格に基づく通信においては、例えば、接続が確立された後の接続状態では、機器固有のアドレスを用いて通信が行われる。すなわち、送信側は、受信側の機器のアドレスを指定してパケットを送信する（ユニキャスト）。
【０３１８】
また、上記実施形態では、マスターである携帯端末１０からスレーブであるＢＬＥ端末２０に演出データＤが送信され、ＢＬＥ端末２０において演出が行われるとともにＢＬＥ端末２０において行われた操作が携帯端末１０に送信された。他の実施形態では、マスターである携帯端末１０において演出が行われるとともに、携帯端末１０において行われた操作がスレーブであるＢＬＥ端末２０に送信されてもよい。また、ＢＬＥ端末２０がマスターとして、携帯端末１０がスレーブとして２つの機器が接続されてもよい。
【０３１９】
また、上記実施形態では、携帯端末１０とＢＬＥ端末２０との間で接続が確立され、携帯端末１０とＢＬＥ端末２０とが接続された状態において、２つの機器を用いて上記アプリケーション（ゲーム）が行なわれる例が示された。他の実施形態では、携帯端末１０同士で上記と同様の処理が行なわれてもよい。例えば、携帯端末１０ａがマスターとして、携帯端末１０ｂがスレーブとして、これら２つの機器が接続され、マスターとしての携帯端末１０ａが上記携帯端末１０の処理を行い、スレーブとしての携帯端末１０ｂが上記ＢＬＥ端末２０の処理を行うことで、携帯端末１０ａと携帯端末１０ｂとの間で上記アプリケーションが実行されてもよい。
【０３２０】
また、上記実施形態では、ＢＬＥ端末２０が入力ボタン２２を備え、コネクションインターバルにおいて入力ボタン２２を用いた複数の操作（複数のタイミングで行なわれた複数の押下操作）がＢＬＥ端末２０において蓄積され、次のコネクションイベントにおいて入力ボタン２２を用いた複数の操作の情報が携帯端末１０に送信された。他の実施形態では、ＢＬＥ端末２０がタッチパネルを備え、コネクションインターバルにおいて行なわれたタッチパネルに対する複数の操作の情報が、次のコネクションイベントにおいて携帯端末１０に送信されてもよい。すなわち、コネクションインターバルにおいてタッチパネルに対する第１の操作が行われた後に、続けて第２の操作が行われた場合に、第１の操作と第２の操作とが次のコネクションイベントにおいて携帯端末１０に送信されてもよい。「タッチパネルに対する第１の操作」は、タッチオンからタッチオフまでの操作を意味してもよい。例えば、タッチパネルに指やペンが接触（タッチオン）してから接触状態を維持したまま所定の軌跡が描かれ、その後に、指やペンがタッチパネルから離される（タッチオフ）。このようなタッチオンからタッチオフまでの一連の操作が、「タッチパネルに対する操作」である。ユーザが第１の操作を行なっている間、タッチパネルは所定の時間間隔（例えば、表示装置のフレームレートと同じ又はフレームレートよりも短い間隔）でタッチ位置を検出する。検出された複数のタッチ位置によって描かれる軌跡は、ユーザによって行われた第１の操作を示す。また、「第２の操作」は、第１の操作が終了した後に、再び指やペンがタッチパネルに接触し、その後、指やペンがタッチパネルから離されるまでの一連の操作である。このように、タッチパネルに対して行なわれた複数の操作がＢＬＥ端末２０に蓄積され、蓄積された複数の操作を示す情報がコネクションイベントにおいて携帯端末１０に送信されてもよい。
【０３２１】
この明細書に記載されている処理の一部又は全部は、携帯端末又はＢＬＥ端末のＣＰＵ及び／又は他のプロセッサが通信プログラムを実行することによって行われてもよい。また、上記処理の一部又は全部は、携帯端末又はＢＬＥ端末が備えるＡＳＩＣ（Application  Specific  Integrated  Circuit）によって行われてもよい。
【符号の説明】
【０３２２】
１  無線通信システム
１０  携帯端末
１１  ＣＰＵ
１４  表示装置
１５  入力装置
１６  ＢＬＥ通信モジュール
２０  ＢＬＥ端末
２１  制御回路
２２  入力ボタン
２３  ＬＥＤ
２４  バイブレータ
２５  ＢＬＥ通信モジュール
【図１】
0006761634.tif 000002
【図２】
0006761634.tif 000003
【図３】
0006761634.tif 000004
【図４】
0006761634.tif 000005
【図５】
0006761634.tif 000006
【図６】
0006761634.tif 000007
【図７】
0006761634.tif 000008
【図８】
0006761634.tif 000009
【図９】
0006761634.tif 000010
【図１０】
0006761634.tif 000011
【図１１】
0006761634.tif 000012
【図１２】
0006761634.tif 000013
【図１３Ａ】
0006761634.tif 000014
【図１３Ｂ】
0006761634.tif 000015
【図１３Ｃ】
0006761634.tif 000016
【図１４】
0006761634.tif 000017
【図１５】
0006761634.tif 000018
【図１６】
0006761634.tif 000019
【図１７】
0006761634.tif 000020
【図１８】
0006761634.tif 000021
【図１９】
0006761634.tif 000022
【図２０】
0006761634.tif 000023
【図２１】
0006761634.tif 000024
【図２２】
0006761634.tif 000025
【図２３】
0006761634.tif 000026
【図２４】
0006761634.tif 000027
【図２５】
0006761634.tif 000028