JP7363874B2 - 無線通信装置、電子時計、無線通信方法、及びプログラム - Google Patents

無線通信装置、電子時計、無線通信方法、及びプログラム Download PDF

Info

Publication number
JP7363874B2
JP7363874B2 JP2021164430A JP2021164430A JP7363874B2 JP 7363874 B2 JP7363874 B2 JP 7363874B2 JP 2021164430 A JP2021164430 A JP 2021164430A JP 2021164430 A JP2021164430 A JP 2021164430A JP 7363874 B2 JP7363874 B2 JP 7363874B2
Authority
JP
Japan
Prior art keywords
wireless communication
counter
communication device
processing
event
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2021164430A
Other languages
English (en)
Other versions
JP2022008875A (ja
Inventor
和穂 姜
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Casio Computer Co Ltd
Original Assignee
Casio Computer Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Casio Computer Co Ltd filed Critical Casio Computer Co Ltd
Priority to JP2021164430A priority Critical patent/JP7363874B2/ja
Publication of JP2022008875A publication Critical patent/JP2022008875A/ja
Application granted granted Critical
Publication of JP7363874B2 publication Critical patent/JP7363874B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Landscapes

  • Electric Clocks (AREA)
  • Programmable Controllers (AREA)
  • Mobile Radio Communication Systems (AREA)

Description

この発明は、無線通信装置、電子時計、無線通信方法、及びプログラムに関する。
従来より、通信相手との接続のための設定情報の履歴を保存しておくことにより、他の通信相手との間で割り込み通信が発生した場合であっても、割り込み通信の後に、設定情報の履歴に基づいて、元の通信相手との通信を再開する技術がある(例えば、特許文献1参照)。
特開2006-238329号公報
特許文献1に開示されているような通信処理において、通信装置同士が互いに決められたシーケンスに従って通信している状況において、例えば一方の通信装置のOS(Operating System)のアップデート等により、決められたシーケンスと異なるシーケンスを要求された場合がある。このような場合に、異なるシーケンスを優先的に処理した結果、元のシーケンスに戻れずに通信装置が動作不全に陥る可能性がある。
この発明の目的は、安定して通信を維持することが可能な無線通信装置、電子時計、無線通信方法、及びプログラムを提供することにある。
上記目的を達成するため、本発明の観点に係る無線通信装置は、
他の無線通信装置からの情報の受信と前記他の無線通信装置への情報の送信とを行う無線通信部と、
カウンタを参照して処理を実行する制御部と、
を備え、
前記カウンタは、
前記無線通信部を介して所定の情報の受信と送信とを予め定められた順番で行う複数の前記処理のそれぞれに対応づけられており、
前記制御部は、
前記複数の処理のうち一の処理を終了するときに前記カウンタを次に実行すべき処理に対応するカウンタに更新し、
前記複数の処理の実行中に期待されるイベントと異なるイベント内容についてのデータを前記他の無線通信装置から受信した場合には、前記異なるイベントの処理を実行し、前記異なるイベントの処理が終了したあとに前記カウンタに基づいた前記処理に戻り、前記処理を終了するとき前記カウンタを次に実行すべき処理に対応するカウンタに更新する、
ことを特徴とする。

本発明に従うと、安定して通信を維持することができる。
実施形態に係る無線通信システムの構成例を示す図である。 実施形態に係る電子時計の構成を示すブロック図である。 実施形態における電子時計と無線通信装置との間の接続中に実行される複数の処理を示す図である。 実施形態における電子時計のCPUが実行する無線通信処理の動作の一例を示すフローチャートである。 実施形態における電子時計のCPUが実行する各処理におけるデータ送受信処理の動作の一例を示すフローチャートである。 実施形態における電子時計のCPUが実行する層判定処理の動作の一例を示すフローチャートである。 実施形態における電子時計のCPUが実行する応答処理の動作の一例を示すフローチャートである。
以下、本発明の実施の形態を図面に基づいて説明する。
図1は、実施形態に係る無線通信システム1の構成例を示す図である。図1に示す構成例において、無線通信システム1は、電子時計100と、無線通信装置200とから構成される。電子時計100は、計時機能及び無線通信機能を備える電子機器であって、Bluetooth(登録商標) Low Energy(以下、BLEという。)等の無線通信規格に基づいて、無線通信装置200と無線通信を行う。無線通信装置200は、例えば、携帯電話、スマートフォン、PC(Personal Computer)、PDA(Personal Digital Assistant)や、スマートウォッチ等のウェアラブル端末といった、無線通信機能を備える携帯可能な電子機器である。
次に、実施形態に係る電子時計100の構成について説明する。
図2は、本実施形態に係る電子時計100の構成例を示すブロック図である。まず、実施形態に係る電子時計100のハードウェア構成について説明する。図2に示すように、電子時計100は、マイクロコンピュータ101と、ROM(Read Only Memory)102と、通信部103と、アンテナ104と、電力供給部105と、表示部106と、表示ドライバ107と、操作受付部108と、振動子109と、を備える。
マイクロコンピュータ101は、制御部としてのCPU(Central Processing Unit)110と、記憶部としてのRAM(Random Access Memory)111と、発振回路112と、分周回路113と、計時回路114とを備える。なお、RAM111、発振回路112、分周回路113、及び計時回路114は、マイクロコンピュータ101の内部に限られず、マイクロコンピュータ101の外部に設けられてもよい。また、ROM102と、通信部103と、電力供給部105と、表示ドライバ107と、振動子109は、マイクロコンピュータ101の外部に限られず、マイクロコンピュータ101の内部に設けられてもよい。
CPU110は、各種演算処理を行い、電子時計100の全体動作を統括制御するプロセッサである。CPU110は、ROM102から制御プログラムを読み出し、RAM111にロードして時刻の表示や各種機能に係る演算制御や表示などの各種動作処理を行う。また、CPU110は、通信部103を制御して、無線通信装置200との接続を確立し、後述する無線通信処理を実行する。
RAM111は、SRAM(Static Random Access Memory)やDRAM(Dynamic Random Access Memory)などの揮発性のメモリであり、CPU110に作業用のメモリ空間を提供して一時データを記憶すると共に、各種設定データを記憶する。
発振回路112は、振動子109を発振さることにより所定の周波数信号(クロック信号)を生成して出力する。この発振回路112として、例えば、水晶発振器が用いられる。
分周回路113は、発振回路112から入力された周波数信号を、計時回路114やCPU110が利用する周波数の信号に分周して出力する。この出力信号の周波数は、CPU110による設定に基づいて変更されても良い。
計時回路114は、分周回路113から入力された所定の計時信号の入力回数を計数して初期値に加算することで現在の時刻を計時する。計時回路114は、RAM111に記憶させる値を変化させるソフトウェアにより構成されても良いし、或いは、専用のカウンタ回路により構成されても良い。計時回路114が計時する時刻は、所定のタイミングからの累積時間、UTC(Coordinated Universal Time、協定世界時)、又は予め設定された地方時などのうち何れであっても良い。また、この計時回路114が計時する時刻は、必ずしも年月日時分秒の形式で保持される必要がない。また、計時回路114が計時する時刻は、Wi-Fi(登録商標)等の外部から得られる時刻によって修正可能である。
これら発振回路112、分周回路113及び計時回路114により計時部が構成される。
ROM102は、マスクROMや書き換え可能な不揮発性メモリなどであり、制御プログラムや初期設定データが記憶されている。制御プログラムの中には、後述する各種処理の制御に係るプログラム115が含まれる。
通信部103は、例えば無線周波数(RF:Radio Frequency)回路やベースバンド(BB:Baseband)回路、メモリ回路で構成される。通信部103は、アンテナ104を介して受信した無線信号を、復調、復号等してCPU110へ送る。また、通信部103は、CPU110から送られた信号を、符号化、変調等して、アンテナ104を介して外部へ送信する。
また、通信部103は、複数の階層から構成される通信プロトコルスタックに従って無線通信装置200と互いに無線通信する。本実施形態において、通信部103は、BLEにおける通信プロトコルスタックであるBLEスタックに従って無線通信する。BLEスタックは、複数の階層として、リンク層、L2CAP(Logical Link Control and Adaption Protocol)層、SM(Security Management)層、ATT(Attribute Protocol)層等から構成される。リンク層は、自装置に近接するデバイスの発見や接続、通信に用いられるプロトコルの階層である。L2CAP層は、通信の多重化を行うプロトコルの層である。SM層は、ペアリングや暗号化、暗号鍵の配布の方法を定義するプロトコルの層である。ATT層は、BLEのサービス及びキャラクタリスティックを定義するプロトコルの層である。本実施形態では、後述するように、リンク層、L2CAP層、SM層、及びATT層の4つの層のそれぞれについて、無線通信装置200への応答の要否を判定する。
電力供給部105は、バッテリを備え、電子時計100の動作に係る電力を各部にその動作電圧で供給する。電力供給部105のバッテリとしては、本実施形態では、リチウムイオン電池等の二次電池が用いられる。
これらマイクロコンピュータ101、ROM102、通信部103、アンテナ104、電力供給部105、及び振動子109により無線通信装置10が構成される。
表示部106は、例えば、液晶ディスプレイ(LCD:Liquid Crystal Display)や有機EL(Electro Luminescence)ディスプレイなどの表示画面を備える。表示ドライバ107は、表示画面の種別に応じた駆動信号をCPU110からの制御信号に基づいて表示部106に出力して、表示画面上への表示を行う。
操作受付部108は、例えばキーやボタンを備え、ユーザからの入力操作を受け付けて、当該入力操作に応じた電気信号を入力信号としてCPU110に出力する。また、例えば、操作受付部108としてタッチセンサが表示部106の表示画面に重ねて設けられ、表示画面とともにタッチパネルを構成してもよい。この場合、タッチセンサは、当該タッチセンサへのユーザの接触動作に係る接触位置や接触態様を検出し、検出された接触位置や接触態様に応じた操作信号をCPU110に出力する。
次に、実施形態に係る電子時計100のCPU110の機能構成について説明する。図2に示すように、CPU110は、通常処理部121、応答要否判定部122、応答部123として機能する。これら通常処理部121、応答要否判定部122、応答部123の機能は、単一のCPUにより実現されても良いし、各々別個のCPUにより実現されても良い。また、それらの機能は、通信部103のCPU等、マイクロコンピュータ101以外のプロセッサにより実現されても良い。
通常処理部121としてのCPU110は、通信部103を制御して、無線通信装置200とのデータの送受信を含む複数の処理を、複数の処理それぞれに対応するカウンタに基づいて実行する。複数の処理は、電子時計100と無線通信装置200との間で予め設定された所定の順序で実行される処理である。本実施形態では、図3に示すように、電子時計100は、無線通信装置200との接続確立後に無線通信をすることにより、サービス発見処理(Service Discovery)、プロファイル構成処理(Profile Config)、接続更新処理(Connection Update)、接続継続処理(Connect Continue)、終了処理(Terminate)を、この順序で実行する例について説明する。サービス発見処理は、電子時計100が行う、無線通信装置200が持つサービスを確定するための処理である。プロファイル構成処理は、データ読出し・書込みを行い、電子時計100の設定、アプリの設定等を行うための処理である。接続更新処理は、接続におけるデータ送受信間隔の変更や、接続に関するパラメータを更新するための処理である。接続継続処理は、接続を維持してユーザが無線通信装置200を操作すること等により、電子時計100の状態を変更することや、無線通信装置200からの通知を受け取るための処理である。終了処理は、タイムアウトや、電子時計100等の操作により接続を切断するための処理である。これらの処理を上記の順で実行するため、本実施形態では、各処理に1~5までの値を割り当て、RAM111に各処理に対応するカウンタctが設定される。例えば、サービス発見処理に「1」、プロファイル構成処理に「2」、接続更新処理に「3」、接続継続処理に「4」、終了処理に「5」が割り当てられ、カウンタct=1の場合、サービス発見処理が実行される。通常処理部121は、上記5つの処理のうちいずれかを終了するとき、カウンタctを次の値に更新し、次の処理を実行する。なお、カウンタctは、当該処理の実行中において、当該実行中の処理も示している。
また、通常処理部121としてのCPU110は、各処理の実行中に、無線通信装置200とのデータの送受信を行う。具体的には、CPU110は、実行中の処理が無線通信装置200からのデータの受信が必要な処理である場合、通信部103を制御して、無線通信装置200からデータを受信する。そして、CPU110は、受信したデータが、実行中の処理において期待されているイベントである場合、カウンタを次の値に更新する。また、CPU110は、実行中の処理が無線通信装置200へのデータの送信が必要な処理である場合、通信部103を制御して、無線通信装置200へデータを送信する。そして、CPU110は、無線通信装置200からデータを受信しなかった場合、カウンタを次の値に更新する。
応答要否判定部122としてのCPU110は、通信プロトコルスタックを構成する複数の階層のそれぞれについて、無線通信装置200への応答の要否を判定する。本実施形態において、CPU110は、リンク層、L2CAP層、SM層、及びATT層の4つの層のそれぞれについて、無線通信装置200への応答の要否を判定する。具体的には、CPU110は、サービス発見処理、プロファイル構成処理、接続更新処理、接続継続処理、終了処理のいずれかを処理中に、受信したデータが、実行中の処理において期待されているイベントでない場合や、送信が必要な処理であるのに無線通信装置200からデータを受信した場合には、通常の処理とは異なる処理が発生していると判定し、BLEスタックを構成する4つの階層のそれぞれについて、無線通信装置200への応答の要否を判定するデータチェック処理を実行する。具体的には、CPU110は、受信したイベントがリンク層イベントであると判定した場合、リンク層データチェック処理を実行する。また、CPU110は、受信したイベントがATT層イベントであって、後述するATT層応答フラグがONであると判定した場合、ATT層データチェック処理を実行する。また、CPU110は、受信したイベントがSM層イベントであって、後述するSM層応答フラグがONであると判定した場合、SM層データチェック処理を実行する。また、CPU110は、受信したイベントがL2CAP層イベントであって、後述するL2CAP層応答フラグがONであると判定した場合、L2CAP層データチェック処理を実行する。
また、CPU110は、リンク層データチェック処理、ATT層データチェック処理、SM層データチェック処理、L2CAP層データチェック処理といったデータチェック処理において、対応する層で受信する可能性があるコマンド毎に応答の要否を判定する。そして、CPU110は、応答が必要であると判定した場合に、RAM111に設定された各層の応答フラグをONにする。例えば、ATT層データチェック処理においては、"Write Request"、"Write Response"、"Write Command"、"Handle Value Indication"、"Handle Value Notification"といったコマンドを受信する可能性がある。CPU110は、これらのコマンドのうち、無線通信装置200への応答が必要なコマンド、例えば"Write Response"や"Handle Value Indication"を受信したと判定した場合、RAM111に設定されたATT層応答フラグをONにし、応答すべきデータの準備をする。CPU110は、リンク層データチェック処理、SM層データチェック処理、L2CAP層データチェック処理においても同様に応答の要否を判定し、応答が必要であると判定した場合に、RAM111に設定されたリンク層応答フラグ、L2CAP層応答フラグ、SM層応答フラグをONにする。
応答部123としてのCPU110は、無線通信装置200への応答が必要であると判定された場合に、無線通信装置200に応答を送信する。本実施形態において、CPU110は、RAM111に設定されたリンク層応答フラグ、L2CAP層応答フラグ、SM層応答フラグ、ATT層応答フラグを参照し、フラグがONである場合に、応答すべきデータを無線通信装置200に送信する。
図4は、本実施形態における電子時計100のCPU110が実行する無線通信処理の動作の一例を示すフローチャートである。電子時計100のCPU110は、例えば無線通信装置200との接続が確立すると、図4に示す無線通信処理を開始する。
まず、CPU110は、RAM111に設定されたリンク層応答フラグがONか否かを判定する(ステップS101)。リンク層応答フラグがONでないと判定した場合(ステップS101;No)、CPU110は、RAM111に設定されたL2CAP層応答フラグがONか否かを判定する(ステップS102)。L2CAP層応答フラグがONでないと判定した場合(ステップS102;No)、CPU110は、RAM111に設定されたSM層応答フラグがONか否かを判定する(ステップS103)。SM層応答フラグがONでないと判定した場合(ステップS103;No)、CPU110は、RAM111に設定されたATT層応答フラグがONか否かを判定する(ステップS104)。
リンク層応答フラグがONであると判定した場合(ステップS101;Yes)、L2CAP層応答フラグがONであると判定した場合(ステップS102;Yes)、SM層応答フラグがONであると判定した場合(ステップS103;Yes)、またはATT層応答フラグがONであると判定した場合(ステップS104;Yes)、CPU110は、後述する応答処理を実行する(ステップS105)。
CPU110は、RAM111に設定されたATT層応答フラグがONでないと判定した場合(ステップS104;No)、RAM111に設定されたカウンタctが「1」か否かを判定する(ステップS106)。カウンタctが「1」であるとした場合(ステップS106;Yes)、CPU110はサービス発見処理を実行し(ステップS107)、ステップS101に戻る。
カウンタctが「1」でないとした場合(ステップS106;No)、CPU110は
カウンタctが「2」か否かを判定する(ステップS108)。カウンタctが「2」であるとした場合(ステップS108;Yes)、CPU110はプロファイル構成処理を実行し(ステップS109)、ステップS101に戻る。
カウンタctが「2」でないとした場合(ステップS108;No)、CPU110は
カウンタctが「3」か否かを判定する(ステップS110)。カウンタctが「3」であるとした場合(ステップS110;Yes)、CPU110は接続更新処理を実行し(ステップS111)、ステップS101に戻る。
カウンタctが「3」でないとした場合(ステップS110;No)、CPU110は
カウンタctが「4」か否かを判定する(ステップS112)。カウンタctが「4」であるとした場合(ステップS112;Yes)、CPU110は接続継続処理を実行し(ステップS113)、ステップS101に戻る。
カウンタctが「4」でないとした場合(ステップS112;No)、CPU110は
カウンタctが「5」か否かを判定する(ステップS114)。カウンタctが「5」であるとした場合(ステップS114;Yes)、終了処理を実行し(ステップS115)、無線通信処理を終了する。カウンタctが「5」でないとした場合(ステップS114;No)、例えばカウンタctの値を「1」としてステップS101に戻る。
図5に本実施形態における電子時計100のCPU110がサービス発見処理(図4のステップS107)、プロファイル構成処理(図4のステップS109)、接続更新処理(図4のステップS111)、接続継続処理(図4のステップS113)、及び終了処理(図4のステップS115)において共通して実行される、無線通信装置200とのデータの送受信処理(データ送受信処理)の動作の一例を示すフローチャートを示す。
まずCPU110は、現在実行中の処理において、無線通信装置200からのデータの受信を待っている状態か否かを判定する(ステップS201)。無線通信装置200からのデータの受信を待っている状態であると判定した場合(ステップS201;Yes)、CPU110は、通信部103を制御して、無線通信装置200からデータを受信するデータ受信処理を実行する(ステップS202)。
そして、CPU110は、ステップS202において受信したデータが実行中の処理において受信を期待していたイベントであるか否かを判定する(ステップS203)。受信したデータが受信を期待していたイベントであると判定した場合(ステップS203;Yes)、CPU110は、現在のカウンタctを1増加させることによりカウンタctを更新する(ステップS204)。また、受信したデータが受信を期待していたイベントでないと判定した場合(ステップS203;No)、CPU110は、層判定処理を実行する(ステップS205)。
また、CPU110は、無線通信装置200からのデータの受信を待っていない状態であると判定した場合(ステップS201;No)、すなわち無線通信装置200へデータを送信すべきであると判定した場合、無線通信装置200に送信するデータをセットする(ステップS206)。そして、CPU110は、通信部103を制御して、無線通信装置200との間でデータ送受信処理を実行する(ステップS207)。
そして、CPU110は、ステップS207において無線通信装置200から受信したデータがあるか否かを判定する(ステップS208)。無線通信装置200から受信したデータがないと判定した場合(ステップS208;No)、CPU110は、現在のカウンタctを1増加させることによりカウンタctを更新する(ステップS209)。また、無線通信装置200から受信したデータがあると判定した場合(ステップS208;Yes)、CPU110は、層判定処理を実行する(ステップS205)。
図6に本実施形態における電子時計100のCPU110が実行する層判定処理の動作の一例を示すフローチャートを示す。まずCPU110は、図4に示すステップS202またはステップS208において受信したイベントがリンク層イベントか否かを判定する(ステップS301)。受信したイベントがリンク層イベントであると判定した場合(ステップS301;Yes)、CPU110は、リンク層データチェック処理を実行し(ステップS302)、応答が必要であると判定した場合に、リンク層応答フラグをONにして本処理を終了する。
そしてCPU110は、受信したイベントがリンク層イベントでないと判定した場合(ステップS301;No)、受信したイベントがATT層イベントか否かを判定する(ステップS303)。受信したイベントがATT層イベントであると判定した場合(ステップS303;Yes)、CPU110は、RAM111に設定されているATT層応答フラグがONか否かを判定する(ステップS304)。CPU110は、ATT層応答フラグがONでないと判定した場合(ステップS304;No)、ATT層データチェック処理を実行し(ステップS305)、応答が必要であると判定した場合に、ATT層応答フラグをONにして本処理を終了する。ATT層応答フラグがONであると判定した場合(ステップS304;Yes)、CPU110は、本処理を終了する。
そしてCPU110は、受信したイベントがATT層イベントでないと判定した場合(ステップS303;No)、受信したイベントがSM層イベントか否かを判定する(ステップS306)。受信したイベントがSM層イベントであると判定した場合(ステップS306;Yes)、CPU110は、RAM111に設定されているSM層応答フラグがONか否かを判定する(ステップS307)。CPU110は、SM層応答フラグがONでないと判定した場合(ステップS307;No)、SM層データチェック処理を実行し(ステップS308)、応答が必要であると判定した場合に、SM層応答フラグをONにして本処理を終了する。SM層応答フラグがONであると判定した場合(ステップS307;Yes)、CPU110は、本処理を終了する。
そしてCPU110は、受信したイベントがSM層イベントでないと判定した場合(ステップS306;No)、受信したイベントがL2CAP層イベントか否かを判定する(ステップS309)。受信したイベントがL2CAP層イベントであると判定した場合(ステップS309;Yes)、CPU110は、RAM111に設定されているL2CAP層応答フラグがONか否かを判定する(ステップS310)。CPU110は、L2CAP層応答フラグがONでないと判定した場合(ステップS310;No)、L2CAP層データチェック処理を実行し(ステップS311)、応答が必要であると判定した場合に、L2CAP層応答フラグをONにして本処理を終了する。L2CAP層応答フラグがONであると判定した場合(ステップS310;Yes)、CPU110は、本処理を終了する。
そしてCPU110は、受信したイベントがL2CAP層イベントでないと判定した場合(ステップS309;No)、エラーを通知し(ステップS312)、本処理を終了する。
図7に本実施形態における電子時計100のCPU110が実行する応答処理の動作の一例を示すフローチャートを示す。まずCPU110は、無線通信装置200に送信すべき送信データをセットする(ステップS401)。そして、CPU110は、通信部103を制御して、無線通信装置200との間でデータ送受信処理を実行する(ステップS402)。そして、CPU110は、本処理の契機となった応答フラグをクリアする(ステップS403)。
そして、CPU110は、ステップS402において無線通信装置200から受信したデータがあるか否かを判定する(ステップS404)。無線通信装置200から受信したデータがないと判定した場合(ステップS404;No)、CPU110は、現在のカウンタctを1増加させることによりカウンタctを更新する(ステップS405)。また、無線通信装置200から受信したデータがあると判定した場合(ステップS405;Yes)、CPU110は、図6に示す層判定処理を実行する(ステップS406)。そして、CPU110は、図4のステップS101に戻る。
以上説明したように、本実施形態に係る電子時計100のCPU110は、複数の通常処理を複数の処理それぞれに対応するカウンタに基づいて所定の順序で実行する。またその際に、通信プロトコルスタックを構成する複数の階層のそれぞれについて、無線通信装置200への応答の要否を判定し、応答を要すると判定した場合に、無線通信部を制御して、応答を送信する。またCPU110は、現在実行中の処理を終了するとき、カウンタを次に実行すべき処理を表すように更新する。従って、CPU110は、応答を要する通常と異なる処理が要求されても、応答を送信しつつ、カウンタに基づいて通常処理を実行するため、安定して通信を維持することができる。なお、カウンタは必ずしも1ずつカウントアップされる必要はなく、例えば、サービス発見処理等の各処理中に、特定の数値にカウンタが変更されてもよい。よって、サービス発見処理を行った次の処理が、接続更新処理や、終了処理となるように、複数の通常処理をカウンタに基づいて実行することで、順序が入れ替わってもよい。このようにカウンタの制御は、適宜変更可能である。
また、本実施形態に係る電子時計100のCPU110は、複数の階層のそれぞれについて、当該階層で無線通信装置200から受信する可能性があるコマンド毎に、応答の要否を判定する。従って、CPU110は、応答を要するコマンドを受信した場合に、そのコマンドに対応する応答を無線通信装置200に送信することができる。
また、本実施形態に係る電子時計100のCPU110は、複数の処理のそれぞれについて、期待されるイベントと異なるイベントが発生した場合に、複数の階層それぞれについて受信する可能性があるコマンド毎に、応答の要否を判定する。従って、CPU110は、通常処理のイベントと異なるイベントが発生した場合に、そのイベントに応じた応答を無線通信装置200に送信するこができる。
また、上記の実施形態では、電子時計100及び無線通信装置200が、Bluetooth(登録商標)で通信する例を説明した。しかし、電子時計100及び無線通信装置200は、その他の通信方法、例えば、無線LAN(Local Area Network)やWi-Fi(登録商標)で通信しても良い。
また、上記の実施形態では、電子時計100を例に挙げて説明したが、本発明はこれに限られず、無線通信可能な電子機器に適用可能である。本発明は、特に、電子時計100にように、比較的小さな容量を有するバッテリを搭載する携帯可能な電子機器に好適である。
また、上記の実施形態では、CPU110が、制御動作を行う例を説明した。しかし、制御動作は、CPUによるソフトウェア制御に限られるものではない。制御動作の一部又は全部が専用の論理回路などのハードウェア構成を用いてなされても良い。
また、以上の説明では、本発明のデータ通信処理に係るプログラム、アドバタイズ処理に係るプログラムを記憶するコンピュータ読み取り可能な媒体としてフラッシュメモリなどの不揮発性メモリからなるROM102を例に挙げて説明した。しかし、コンピュータ読み取り可能な媒体は、これらに限定されず、HDD(Hard Disk Drive)、CD-ROM(Compact Disc Read Only Memory)やDVD(Digital Versatile Disc)などの可搬型記録媒体を適用してもよい。また、本発明に係るプログラムのデータを通信回線を介して提供する媒体として、キャリアウェーブ(搬送波)も本発明に適用される。
その他、上記実施の形態で示した構成、制御手順や表示例などの具体的な細部は、本発明の趣旨を逸脱しない範囲において適宜変更可能である。
本発明のいくつかの実施形態を説明したが、本発明の範囲は、上述の実施の形態に限定するものではなく、特許請求の範囲に記載された発明の範囲とその均等の範囲を含む。以下に、この出願の願書に最初に添付した特許請求の範囲に記載した発明を付記する。付記の番号は、この出願の願書に最初に添付した特許請求の範囲の通りである。
(付記1)
複数の階層から構成される通信プロトコルスタックに従って他の無線通信装置と互いに無線通信する無線通信部と、
制御部と、
を備え、
前記制御部は、
前記無線通信部を制御して、前記他の無線通信装置とのデータの送受信を含む複数の処理を、前記複数の処理それぞれに対応するカウンタに基づいて実行し、
前記処理の実行中に期待されるイベントと異なるイベントが発生した場合に、前記複数の階層のそれぞれについて、前記他の無線通信装置への応答の要否を判定し、
前記応答を要すると判定した場合に、前記無線通信部を制御して、前記応答を送信し、
現在実行中の処理を終了するとき、前記カウンタを次に実行すべき処理を表すように更新する、
ことを特徴とする無線通信装置。
(付記2)
前記制御部は、前記複数の階層のそれぞれについて、当該階層で前記他の無線通信装置から受信する可能性があるコマンド毎に、前記応答の要否を判定する、
ことを特徴とする付記1に記載の無線通信装置。
(付記3)
前記制御部は、
前記複数の処理それぞれの実行中に、期待されるイベントと異なるイベントが発生した場合に、前記複数の階層のそれぞれで受信する可能性があるコマンド毎に、前記応答の要否を判定する、
ことを特徴とする付記2に記載の無線通信装置。
(付記4)
付記1乃至3のいずれか1つに記載の無線通信装置と、
現在時刻を計時する計時部と、
前記計時部により計時された現在時刻を表示する表示部と、
を備えることを特徴とする電子時計。
(付記5)
複数の階層から構成される通信プロトコルスタックに従って他の無線通信装置と互いに無線通信する無線通信部を備える無線通信装置が実行する無線通信方法であって、
前記無線通信部を制御して、前記他の無線通信装置とのデータの送受信を含む複数の処理を、前記複数の処理それぞれに対応するカウンタに基づいて実行し、
前記処理の実行中に期待されるイベントと異なるイベントが発生した場合に、前記複数の階層のそれぞれについて、前記他の無線通信装置への応答の要否を判定し、
前記応答を要すると判定した場合に、前記無線通信部を制御して、前記応答を送信し、
現在実行中の処理を終了するとき、前記カウンタを次に実行すべき処理を表すように更新する、
ことを特徴とする無線通信方法。
(付記6)
複数の階層から構成される通信プロトコルスタックに従って他の無線通信装置と互いに無線通信する無線通信部を備えるコンピュータを、
前記無線通信部を制御して、前記他の無線通信装置とのデータの送受信を含む複数の処理を、前記複数の処理それぞれに対応するカウンタに基づいて実行する処理手段、
前記処理の実行中に期待されるイベントと異なるイベントが発生した場合に、前記複数の階層のそれぞれについて、前記他の無線通信装置への応答の要否を判定する応答要否判定手段、
前記応答を要すると判定した場合に、前記無線通信部を制御して、前記応答を送信する応答手段、
として機能させ、
前記処理手段は、現在実行中の処理を終了するとき、前記カウンタを次に実行すべき処理を表すように更新する、
ことを特徴とするプログラム。
1…無線通信システム、10…無線通信装置、100…電子時計、101…マイクロコンピュータ、102…ROM、103…通信部、104…アンテナ、105…電力供給部、106…表示部、107…表示ドライバ、108…操作受付部、109…振動子、110…CPU、111…RAM、112…発振回路、113…分周回路、114…計時回路、115…プログラム、121…通常処理部、122…応答要否判定部、123…応答部、200…無線通信装置

Claims (6)

  1. 他の無線通信装置からの情報の受信と前記他の無線通信装置への情報の送信とを行う無線通信部と、
    カウンタを参照して処理を実行する制御部と、
    を備え、
    前記カウンタは、
    前記無線通信部を介して所定の情報の受信と送信とを予め定められた順番で行う複数の前記処理のそれぞれに対応づけられており、
    前記制御部は、
    前記複数の処理のうち一の処理を終了するときに前記カウンタを次に実行すべき処理に対応するカウンタに更新し、
    前記複数の処理の実行中に期待されるイベントと異なるイベント内容についてのデータを前記他の無線通信装置から受信した場合には、前記異なるイベントの処理を実行し、前記異なるイベントの処理が終了したあとに前記カウンタに基づいた前記処理に戻り、前記処理を終了するとき前記カウンタを次に実行すべき処理に対応するカウンタに更新する、
    ことを特徴とする無線通信装置。
  2. 前記複数の処理の実行中において、前記無線通信装置へデータを送信するためのデータをセットしている状態で前記無線通信装置からデータを受信した場合に、受信したデータに係るイベントの処理を実行し、前記受信したデータに係るイベントの処理が終了したあとに前記カウンタに基づいた前記複数の処理に戻り、前記複数の処理を終了するとき前記カウンタを次に実行すべき処理に対応するカウンタに更新する、
    ことを特徴とする請求項1に記載の無線通信装置。
  3. 前記複数の処理とは、サービス発見処理、プロファイル構成処理、接続更新処理、接続継続処理及び終了処理のいずれかであることを特徴とする請求項1又は2に記載の無線通信装置。
  4. 請求項1から3の何れか一項に記載の無線通信装置と、
    現在時刻を計時する計時部と、
    前記計時部により計時された現在時刻を表示する表示部と、
    を備えることを特徴とする電子時計。
  5. 無線通信装置が実行する無線通信方法であって、
    他の無線通信装置からの情報の受信と前記他の無線通信装置への情報の送信とを行う無線通信ステップと、
    カウンタを参照して処理を実行する制御ステップと、
    を有し、
    前記カウンタは、
    前記無線通信ステップにおいて所定の情報の受信と送信とを予め定められた順番で行う複数の前記処理のそれぞれに対応づけられており、
    前記制御ステップは、
    前記複数の処理のうち一の処理を終了するときに前記カウンタを次に実行すべき処理に対応するカウンタに更新し、
    前記複数の処理の実行中に期待されるイベントと異なるイベント内容についてのデータを前記他の無線通信装置から受信した場合には、前記異なるイベントの処理を実行し、前記異なるイベントの処理が終了したあとに前記カウンタに基づいた前記処理に戻り、前記処理を終了するとき前記カウンタを次に実行すべき処理に対応するカウンタに更新する、
    ことを特徴とする無線通信方法。
  6. 無線通信装置のコンピュータを、
    他の無線通信装置からの情報の受信と前記他の無線通信装置への情報の送信とを行う無線通信手段、
    カウンタを参照して処理を実行する制御手段、
    として機能させ、
    前記カウンタは、
    前記無線通信手段において所定の情報の受信と送信とを予め定められた順番で行う複数の前記処理のそれぞれに対応づけられており、
    前記制御手段は、
    前記複数の処理のうち一の処理を終了するときに前記カウンタを次に実行すべき処理に対応するカウンタに更新し、
    前記複数の処理の実行中に期待されるイベントと異なるイベント内容についてのデータを前記他の無線通信装置から受信した場合には、前記異なるイベントの処理を実行し、前記異なるイベントの処理が終了したあとに前記カウンタに基づいた前記処理に戻り、前記処理を終了するとき前記カウンタを次に実行すべき処理に対応するカウンタに更新する、
    ことを特徴とするプログラム。
JP2021164430A 2017-10-02 2021-10-06 無線通信装置、電子時計、無線通信方法、及びプログラム Active JP7363874B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2021164430A JP7363874B2 (ja) 2017-10-02 2021-10-06 無線通信装置、電子時計、無線通信方法、及びプログラム

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2017192668A JP6958201B2 (ja) 2017-10-02 2017-10-02 無線通信装置、電子時計、無線通信方法、及びプログラム
JP2021164430A JP7363874B2 (ja) 2017-10-02 2021-10-06 無線通信装置、電子時計、無線通信方法、及びプログラム

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2017192668A Division JP6958201B2 (ja) 2017-10-02 2017-10-02 無線通信装置、電子時計、無線通信方法、及びプログラム

Publications (2)

Publication Number Publication Date
JP2022008875A JP2022008875A (ja) 2022-01-14
JP7363874B2 true JP7363874B2 (ja) 2023-10-18

Family

ID=66338417

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2017192668A Active JP6958201B2 (ja) 2017-10-02 2017-10-02 無線通信装置、電子時計、無線通信方法、及びプログラム
JP2021164430A Active JP7363874B2 (ja) 2017-10-02 2021-10-06 無線通信装置、電子時計、無線通信方法、及びプログラム

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2017192668A Active JP6958201B2 (ja) 2017-10-02 2017-10-02 無線通信装置、電子時計、無線通信方法、及びプログラム

Country Status (1)

Country Link
JP (2) JP6958201B2 (ja)

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2605044B2 (ja) * 1987-06-19 1997-04-30 株式会社ゼクセル 燃料噴射制御装置用のデータ通信制御装置
JPH02114302A (ja) * 1988-10-24 1990-04-26 Fanuc Ltd 数値制御装置
JP2970248B2 (ja) * 1992-09-10 1999-11-02 松下電器産業株式会社 通信制御装置
JP2929980B2 (ja) * 1995-10-06 1999-08-03 株式会社デンソー 情報処理装置
JPWO2004086737A1 (ja) * 2003-03-24 2006-06-29 セイコーインスツル株式会社 携帯型無線通信装置
JP4172458B2 (ja) * 2005-02-28 2008-10-29 ソニー株式会社 接続制御装置、通信システムおよび接続制御方法
US7898995B2 (en) * 2007-02-21 2011-03-01 Qualcomm, Incorporated Dynamic adjustment of inactivity timer threshold for call control transactions
CN102668519B (zh) * 2009-10-09 2015-07-08 松下电器产业株式会社 车载装置

Also Published As

Publication number Publication date
JP6958201B2 (ja) 2021-11-02
JP2022008875A (ja) 2022-01-14
JP2019067187A (ja) 2019-04-25

Similar Documents

Publication Publication Date Title
JP6132037B1 (ja) 無線通信方法及びプログラム
CN111051152B (zh) 提供智能密钥服务的方法及其电子设备
CN106550320B (zh) 无线通信装置、电子钟表以及无线通信方法
KR20130123732A (ko) 휴대단말기에서 RCS(Rich Communication Suite)의 Capability Discovery를 위한 SIP OPTIONS 메시지 교환 방법 및 장치
JP6690592B2 (ja) 無線通信方法及びプログラム
JP6451666B2 (ja) 通信装置、電子時計、通信方法及びプログラム
JP7363874B2 (ja) 無線通信装置、電子時計、無線通信方法、及びプログラム
EP3634047B1 (en) Wireless communication apparatus, electronic timepiece, transmission power control method, and program
EP3462254A1 (en) Wireless communication device, electronic timepiece, wireless communication method, and storage medium
JP7136149B2 (ja) 通信装置、通信接続制御方法及びプログラム
JP6834283B2 (ja) 無線通信装置、電子時計、無線通信方法、時刻変更方法、及びプログラム
KR20220017328A (ko) 전자 장치의 위치 확인 서비스를 제공하는 방법 및 그 장치
EP3451081A1 (en) Electronic timepiece, processing selection method, and storage medium
JP2019126100A (ja) 無線通信装置、無線通信方法、及びプログラム
JP7087314B2 (ja) 無線通信装置、電子時計、無線通信方法、及びプログラム
JP6711133B2 (ja) 無線通信装置、電子時計、無線通信方法及びプログラム
CN108632447B (zh) 无线通信装置、电子表、无线通信方法及记录介质
JP2023160667A (ja) 無線通信装置、無線通信方法およびコンピュータプログラム
JP2021136626A (ja) 通信装置、通信システム、通信方法及びプログラム
JP2018157341A (ja) 無線通信方法、無線通信装置、電子時計、及びプログラム
JP2018101954A (ja) 無線通信装置、無線通信方法、及びプログラム
CN116009380A (zh) 电子设备、时刻修正方法、电子表和计算机可读取介质
JP2018044931A (ja) 無線通信装置、電子時計、時刻変更方法、時刻情報提供方法、及びプログラム
JP2017228984A (ja) 情報処理装置、制御方法およびプログラム

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20211025

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20211025

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220719

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220830

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20221027

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20230228

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230525

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20230602

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230905

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230918

R150 Certificate of patent or registration of utility model

Ref document number: 7363874

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150