(57)【要約】【課題】複数のモジュールを良好に接続し得る制御モジュール、電子機器、制御方法およびプログラムを提供する。【解決手段】後段に第１のモジュールが接続され、第１のモジュールの後段に第２のモジュールが接続され得る制御モジュールは、所定の条件が満たされるか否かを判定する判定手段と、制御モジュールが有する第１の通信手段と第１のモジュールが有する第２の通信手段とが信号線を介して電気的に接続され、第２の通信手段と第１のモジュールが有する第３の通信手段とがスイッチによって電気的に分離され、且つ、第３の通信手段と第２のモジュールが有する第４の通信手段とが信号線を介して電気的に接続された状態となるように制御するか否かを、所定の条件が満たされるか否かの判定結果に基づいて決定する制御手段とを有する。【選択図】図２Ａ
2019020771.tif 000002
【特許請求の範囲】
【請求項１】
後段に第１のモジュールが接続され、前記第１のモジュールの後段に第２のモジュールが接続され得る制御モジュールであって、
所定の条件が満たされるか否かを判定する判定手段と、
前記制御モジュールが有する第１の通信手段と前記第１のモジュールが有する第２の通信手段とが信号線を介して電気的に接続され、前記第２の通信手段と前記第１のモジュールが有する第３の通信手段とがスイッチによって電気的に分離され、且つ、前記第３の通信手段と前記第２のモジュールが有する第４の通信手段とが信号線を介して電気的に接続された状態となるように制御するか否かを、前記所定の条件が満たされるか否かの判定結果に基づいて決定する制御手段と
を有することを特徴とする制御モジュール。
【請求項２】
前記所定の条件は、信号線における信号の遅延が所定時間未満であるという条件であることを特徴とする請求項１に記載の制御モジュール。
【請求項３】
前記第３の通信手段は、前記状態において、前記第２の通信手段が前記第１の通信手段から受け取った信号に応じた信号を前記第４の通信手段に送信し得ることを特徴とする請求項１または２に記載の制御モジュール。
【請求項４】
前記第１の通信手段と前記第３の通信手段とは、それぞれマスタとして動作し、
前記第２の通信手段と前記第４の通信手段とは、それぞれスレーブとして動作することを特徴とする請求項１から３のいずれか１項に記載の制御モジュール。
【請求項５】
前記制御手段は、前記マスタの数を所定数以下に制限することを特徴とする請求項４に記載の制御モジュール。
【請求項６】
第１のモジュールと、前記第１のモジュールの後段に位置する第２のモジュールと、前記第２のモジュールの後段に位置する第３のモジュールとを有する電子機器であって、
所定の条件が満たされるか否かを判定する判定手段と、
前記第１のモジュールが有する第１の通信手段と前記第２のモジュールが有する第２の通信手段とが信号線を介して電気的に接続され、前記第２の通信手段と前記第２のモジュールが有する第３の通信手段とがスイッチによって電気的に分離され、且つ、前記第３の通信手段と前記第３のモジュールが有する第４の通信手段とが信号線を介して電気的に接続された状態となるように制御するか否かを、前記所定の条件が満たされるか否かの判定結果に基づいて決定する制御手段と
を有することを特徴とする電子機器。
【請求項７】
後段に第１のモジュールが接続され、前記第１のモジュールの後段に第２のモジュールが接続され得る制御モジュールの制御方法であって、
所定の条件が満たされるか否かを判定するステップと、
前記制御モジュールが有する第１の通信手段と前記第１のモジュールが有する第２の通信手段とが信号線を介して電気的に接続され、前記第２の通信手段と前記第１のモジュールが有する第３の通信手段とがスイッチによって電気的に分離され、且つ、前記第３の通信手段と前記第２のモジュールが有する第４の通信手段とが信号線を介して電気的に接続された状態となるように制御するか否かを、前記所定の条件が満たされるか否かの判定結果に基づいて決定するステップと
を有することを特徴とする制御方法。
【請求項８】
第１のモジュールと、前記第１のモジュールの後段に位置する第２のモジュールと、前記第２のモジュールの後段に位置する第３のモジュールとを有する電子機器の制御方法であって、
所定の条件が満たされるか否かを判定するステップと、
前記第１のモジュールが有する第１の通信手段と前記第２のモジュールが有する第２の通信手段とが信号線を介して電気的に接続され、前記第２の通信手段と前記第２のモジュールが有する第３の通信手段とがスイッチによって電気的に分離され、且つ、前記第３の通信手段と前記第３のモジュールが有する第４の通信手段とが信号線を介して電気的に接続された状態となるように制御するか否かを、前記所定の条件が満たされるか否かの判定結果に基づいて決定するステップと
を有することを特徴とする制御方法。
【請求項９】
後段に第１のモジュールが接続され、前記第１のモジュールの後段に第２のモジュールが接続され得る制御モジュールで用いられるプログラムであって、
コンピュータを、
所定の条件が満たされるか否かを判定する判定手段と、
前記制御モジュールが有する第１の通信手段と前記第１のモジュールが有する第２の通信手段とが信号線を介して電気的に接続され、前記第２の通信手段と前記第１のモジュールが有する第３の通信手段とがスイッチによって電気的に分離され、且つ、前記第３の通信手段と前記第２のモジュールが有する第４の通信手段とが信号線を介して電気的に接続された状態となるように制御するか否かを、前記所定の条件が満たされるか否かの判定結果に基づいて決定する制御手段
として機能させるためのプログラム。
【請求項１０】
第１のモジュールと、前記第１のモジュールの後段に位置する第２のモジュールと、前記第２のモジュールの後段に位置する第３のモジュールとを有する電子機器で用いられるプログラムであって、
コンピュータを、
所定の条件が満たされるか否かを判定する判定手段と、
前記第１のモジュールが有する第１の通信手段と前記第２のモジュールが有する第２の通信手段とが信号線を介して電気的に接続され、前記第２の通信手段と前記第２のモジュールが有する第３の通信手段とがスイッチによって電気的に分離され、且つ、前記第３の通信手段と前記第３のモジュールが有する第４の通信手段とが信号線を介して電気的に接続された状態となるように制御するか否かを、前記所定の条件が満たされるか否かの判定結果に基づいて決定する制御手段
として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、制御モジュール、電子機器、制御方法およびプログラムに関する。
【背景技術】
【０００２】
複数のモジュールから構成される電子機器においては、マスタモジュールのＩＣ（Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ：集積回路）とスレーブモジュールのＩＣとの間で通信を行うことにより、電子機器全体の制御が行われる。ＩＣ間の通信規格として、Ｉ２Ｃ（Ｉｎｔｅｒ−Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）規格が知られている。Ｉ２Ｃ規格に基づく通信であるＩ２Ｃ通信においては、Ｉ２Ｃ通信用の信号線であるシリアルクロック線ＳＣＬおよびシリアルデータ線ＳＤＡを介して通信が行われる。Ｉ２Ｃ通信用の信号線における伝送信号の立ち上がり時間および立ち下がり時間は、Ｉ２Ｃ規格によって定められている。一方、特許文献１には、再生装置に接続される出力装置に応じてプルアップ抵抗を変化させることによって、伝送信号の立ち上がり時間を調整する方法が記載されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】国際公開第２００６／０４３５４７号
【発明の概要】
【発明が解決しようとする課題】
【０００４】
Ｉ２Ｃ通信用の信号線では、伝送信号の立ち上がり時間および立ち下がり時間は、信号線の抵抗および容量の影響を受ける。このため、多数の電子機器を直列に接続した場合には、Ｉ２Ｃ通信用の信号線における伝送信号の立ち上がり時間または立ち下がり時間がＩ２Ｃ規格において定められた条件を満足し得ず、良好に接続を確立し得ない場合が想定される。特許文献１のようにプルアップ抵抗を変化させるようにした場合には、接続処理の煩雑化等を招いてしまうことが想定される。
【０００５】
そこで、本発明は、複数のモジュールの接続を良好に行い得る制御モジュール、電子機器、制御方法およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明の一態様に係る制御モジュールは、後段に第１のモジュールが接続され、前記第１のモジュールの後段に第２のモジュールが接続され得る制御モジュールであって、所定の条件が満たされるか否かを判定する判定手段と、前記制御モジュールが有する第１の通信手段と前記第１のモジュールが有する第２の通信手段とが信号線を介して電気的に接続され、前記第２の通信手段と前記第１のモジュールが有する第３の通信手段とがスイッチによって電気的に分離され、且つ、前記第３の通信手段と前記第２のモジュールが有する第４の通信手段とが信号線を介して電気的に接続された状態となるように制御するか否かを、前記所定の条件が満たされるか否かの判定結果に基づいて決定する制御手段とを有する。
【０００７】
本発明の一態様に係る電子機器は、第１のモジュールと、前記第１のモジュールの後段に位置する第２のモジュールと、前記第２のモジュールの後段に位置する第３のモジュールとを有する電子機器であって、所定の条件が満たされるか否かを判定する判定手段と、前記第１のモジュールが有する第１の通信手段と前記第２のモジュールが有する第２の通信手段とが信号線を介して電気的に接続され、前記第２の通信手段と前記第２のモジュールが有する第３の通信手段とがスイッチによって電気的に分離され、且つ、前記第３の通信手段と前記第３のモジュールが有する第４の通信手段とが信号線を介して電気的に接続された状態となるように制御するか否かを、前記所定の条件が満たされるか否かの判定結果に基づいて決定する制御手段とを有する。
【０００８】
本発明の一態様に係る制御方法は、後段に第１のモジュールが接続され、前記第１のモジュールの後段に第２のモジュールが接続され得る制御モジュールの制御方法であって、所定の条件が満たされるか否かを判定するステップと、前記制御モジュールが有する第１の通信手段と前記第１のモジュールが有する第２の通信手段とが信号線を介して電気的に接続され、前記第２の通信手段と前記第１のモジュールが有する第３の通信手段とがスイッチによって電気的に分離され、且つ、前記第３の通信手段と前記第２のモジュールが有する第４の通信手段とが信号線を介して電気的に接続された状態となるように制御するか否かを、前記所定の条件が満たされるか否かの判定結果に基づいて決定するステップとを有する。
【０００９】
本発明の一態様に係る制御方法は、第１のモジュールと、前記第１のモジュールの後段に位置する第２のモジュールと、前記第２のモジュールの後段に位置する第３のモジュールとを有する電子機器の制御方法であって、所定の条件が満たされるか否かを判定するステップと、前記第１のモジュールが有する第１の通信手段と前記第２のモジュールが有する第２の通信手段とが信号線を介して電気的に接続され、前記第２の通信手段と前記第２のモジュールが有する第３の通信手段とがスイッチによって電気的に分離され、且つ、前記第３の通信手段と前記第３のモジュールが有する第４の通信手段とが信号線を介して電気的に接続された状態となるように制御するか否かを、前記所定の条件が満たされるか否かの判定結果に基づいて決定するステップとを有する。
【００１０】
本発明の一態様に係るプログラムは、後段に第１のモジュールが接続され、前記第１のモジュールの後段に第２のモジュールが接続され得る制御モジュールで用いられるプログラムであって、コンピュータを、所定の条件が満たされるか否かを判定する判定手段と、前記制御モジュールが有する第１の通信手段と前記第１のモジュールが有する第２の通信手段とが信号線を介して電気的に接続され、前記第２の通信手段と前記第１のモジュールが有する第３の通信手段とがスイッチによって電気的に分離され、且つ、前記第３の通信手段と前記第２のモジュールが有する第４の通信手段とが信号線を介して電気的に接続された状態となるように制御するか否かを、前記所定の条件が満たされるか否かの判定結果に基づいて決定する制御手段として機能させるためのプログラムである。
【００１１】
本発明の一態様に係るプログラムは、第１のモジュールと、前記第１のモジュールの後段に位置する第２のモジュールと、前記第２のモジュールの後段に位置する第３のモジュールとを有する電子機器で用いられるプログラムであって、コンピュータを、所定の条件が満たされるか否かを判定する判定手段と、前記第１のモジュールが有する第１の通信手段と前記第２のモジュールが有する第２の通信手段とが信号線を介して電気的に接続され、前記第２の通信手段と前記第２のモジュールが有する第３の通信手段とがスイッチによって電気的に分離され、且つ、前記第３の通信手段と前記第３のモジュールが有する第４の通信手段とが信号線を介して電気的に接続された状態となるように制御するか否かを、前記所定の条件が満たされるか否かの判定結果に基づいて決定する制御手段として機能させるためのプログラムである。
【発明の効果】
【００１２】
本発明によれば、複数のモジュールの接続を良好に行い得る制御モジュール、電子機器、制御方法およびプログラムを提供することができる。
【図面の簡単な説明】
【００１３】
【図１Ａ】実施形態１における電子機器６００が有する複数のモジュールの例を説明するための図である。
【図１Ｂ】実施形態１における電子機器６００が有する複数のモジュールの例を説明するための図である。
【図２Ａ】モジュール１００、２００、３００、４００および５００の構成要素を説明するためのブロック図である。
【図２Ｂ】モジュール１００、２００、３００、４００および５００の構成要素を説明するためのブロック図である。
【図２Ｃ】モジュール１００、２００、３００、４００および５００の構成要素を説明するためのブロック図である。
【図２Ｄ】モジュール１００、２００、３００、４００および５００の構成要素を説明するためのブロック図である。
【図２Ｅ】モジュール１００、２００、３００、４００および５００の構成要素を説明するためのブロック図である。
【図２Ｆ】モジュール１００、２００、３００、４００および５００の構成要素を説明するためのブロック図である。
【図３】実施形態１における電子機器６００の動作例を説明するためのフローチャートである。
【図４】Ｉ２Ｃ通信部１１３の構成例を説明するためのブロック図である。
【図５】伝送信号の例を説明するためのタイムチャートである。
【図６】電子機器６００で行われる所定の通知の例を説明するための図である。
【発明を実施するための形態】
【００１４】
以下、図面を参照して本発明の実施形態を説明する。ただし、本発明は以下の実施形態に限定されるものではない。
【００１５】
［実施形態１］
図１Ａおよび図１Ｂは、電子機器６００が有する複数のモジュールの例を説明するための図である。実施形態１では、電子機器６００が直列に接続された５つのモジュール１００、２００、３００、４００および５００で構成される例を説明するが、電子機器６００の構成はこのような構成に限定されるものではない。図１Ａおよび図１Ｂには、複数のモジュール１００、２００、３００、４００および５００が互いに分離された状態が示されている。図１Ａは、互いに分離されたモジュール１００、２００、３００、４００および５００を一方の側から見た際の斜視図である。図１Ｂは、互いに分離されたモジュール１００、２００、３００、４００および５００を他方の側から見た際の斜視図である。モジュール１００は、例えばカメラモジュールであり、例えばマスタモジュールとして動作し得る。モジュール２００、３００および４００は、例えば、特定の機能をそれぞれ有するモジュールであり、スレーブモジュールとして動作可能であるが、マスタモジュールとしても動作可能である。モジュール２００、３００および４００としては、例えば、外部機器と通信するためのコネクタを有するＩ／Ｏ（入出力）モジュール、近距離無線通信を行うＮＦＣ（Ｎｅａｒ  Ｆｉｅｌｄ  Ｃｏｍｍｕｎｉｃａｔｉｏｎ）モジュールが挙げられる。また、モジュール２００、３００および４００として、外部機器との間で無線通信によってデータの送受信を行う通信モジュール、デジタル化された画像を出力する画像出力モジュール、音楽または操作音を出力するスピーカモジュールが挙げられる。また、モジュール２００、３００および４００として、音声入力のためのマイクモジュール、大容量のデータを保存し得る記録モジュール、表示装置（例：液晶表示装置）を有する表示モジュール、他のモジュールを冷却する冷却ユニット等が挙げられる。ユーザは、所望の機能を有するモジュール２００、３００および４００をモジュール１００に接続し得る。モジュール５００は、例えば電源モジュールであり、例えばスレーブモジュールとして動作し得る。複数のモジュール１００、２００、３００、４００および５００の接続は、モジュール５００によって終端される。なお、複数のモジュール１００、２００、３００、４００および５００の接続の順序は、上記に限定されるものではない。実施形態１および他の実施形態では、複数のモジュールが組み合わされたものを電子機器と称しているが、個々のモジュールを電子機器と称することもできる。また、複数のモジュールが組み合わされた電子機器は、通信システムと称することもできるし、電子システムと称することもできる。また、モジュールは、モジュールデバイスと称することもできるし、電子装置と称することもできるし、制御モジュールと称することもできる。
【００１６】
モジュール１００は、上述したように、例えばカメラモジュールである。モジュール１００は、被写体の光学像からデジタル化された画像を生成する撮像部１０２と、モジュール１００を操作するためのユーザインタフェースである操作部１０４とを有する。操作部１０４は、電源の投入または切断を行うための電源ボタン、被写体を撮像するためのレリーズボタン等を含む。また、モジュール１００は、入出力用ジャックを保護するためのジャックカバー部１０８を有する。ジャックカバー部１０８を開いた状態にすることによって、入出力用ジャックに各種ケーブルを接続することが可能である。また、モジュール１００は、後段のモジュール２００、３００、４００および５００をモジュール１００に機構的にロックするためのロック部１０９を有する。ロック部１０９は、回動させることが可能であり、ロック位置とロック解除位置との間で操作され得る。ロック部１０９をロック解除位置に設定することよって、後段のモジュール２００、３００、４００および５００をモジュール１００から取り外すことが可能である。モジュール１００は、後段のモジュール２００を接続するためのコネクタ１９９を有する。
【００１７】
モジュール２００、３００および４００は、上述したように、特定の機能をそれぞれ有する。モジュール２００は、モジュール２００の前段に接続されるモジュール１００と接続するためのコネクタ２０１と、モジュール２００の後段に接続されるモジュール３００と接続するためのコネクタ２９９とを有する。モジュール３００は、モジュール３００の前段に接続されるモジュール２００と接続するためのコネクタ３０１と、モジュール３００の後段に接続されるモジュール４００と接続するためのコネクタ３９９とを有する。モジュール４００は、モジュール４００の前段に接続されるモジュール３００と接続するためのコネクタ４０１と、モジュール４００の後段に接続されるモジュール５００と接続するためのコネクタ４９９とを有する。
【００１８】
モジュール５００は、上述したように電源モジュールである。モジュール５００は、モジュール５００の前段に接続されるモジュール４００と接続するためのコネクタ５０１を有する。上述したように、複数のモジュール１００、２００、３００、４００および５００の接続は、モジュール５００によって終端される。従って、モジュール５００は、モジュール１００、２００、３００、４００および５００の接続を終端するような構造となっている。
【００１９】
次に、図２Ａ、図２Ｂ、図２Ｃおよび図２Ｄを参照して、モジュール１００、２００、３００、４００および５００の構成要素を説明する。図２Ａは、スイッチ１２３がＯＮ状態であり、スイッチ２２３、３２３および４２３がＯＦＦ状態である状態を示している。図２Ａにおいては、スイッチ２２７、３２７および４２７はＯＮ状態であり、スイッチ２２９、３２９および４２９はＯＦＦ状態である。図２Ｂは、図２Ａに示す状態において、スイッチ２２３をＯＦＦ状態からＯＮ状態に変化させた状態を示している。図２Ｃは、図２Ｂに示す状態において、スイッチ３２３および４２３をＯＦＦ状態からＯＮ状態に変化させた状態を示している。図２Ｄは、図２Ｃに示す状態において、スイッチ４２７をＯＮ状態からＯＦＦ状態に変化させ、スイッチ４２９をＯＦＦ状態からＯＮ状態に変化させた状態を示している。
【００２０】
図２Ａに示すように、モジュール１００は、レンズユニット１０１と、撮像部１０２と、絞り１０３と、操作部１０４と、シャッタ１０５と、メモリ１１０と、制御部１１１と、電源部１１５と、表示部１１９と、記録部１２１とを有する。モジュール１００は、スイッチ１２３と、プルアップ抵抗１２７とをさらに有する。レンズユニット１０１は、被写体の光学像を撮像部１０２の撮像面に導く。撮像部１０２は、上述したように、被写体の光学像からデジタル化された画像を生成する。絞り１０３は、撮像部１０２の撮像面に達する光量を調整する。シャッタ１０５は、撮像部１０２の撮像面に達する光の入射時間を制御する。メモリ１１０は、制御部１１１のワークエリアとして用い得る。メモリ１１０には、電子機器６００の各種設定情報が記憶される。メモリ１１０には、シリアルクロック線ＳＣＬおよびシリアルデータ線ＳＤＡの伝送信号の立ち上がり時間に応じたカウント値が記憶される。制御部１１１は、モジュール１００の各構成要素を制御するためのプログラムを記憶したメモリと、そのメモリに記憶されたプログラムを実行することによりモジュール１００の各構成要素を制御するプロセッサ（例えばハードウェアプロセッサ）とを有する。これにより、制御部１１１は、レンズユニット１０１と、絞り１０３と、シャッタ１０５とを含む撮像光学系を制御し得る。制御部１１１は、撮像部１０２を含む画像処理系も制御し得る。さらに、制御部１１１は、シリアルクロック線ＳＣＬおよびシリアルデータ線ＳＤＡにそれぞれ接続されているスイッチ１２３をも制御する。スイッチ１２３は、制御部１１１から供給されるイネーブル（Ｅｎａｂｌｅ）信号によって制御される。制御部１１１はさらに、Ｉ２Ｃ通信部１１３を有する。Ｉ２Ｃ通信部１１３は、モジュール２００、３００、４００および５００のＩ２Ｃ通信部２１３、３１３、４１３および５１３と通信可能である。具体的には、Ｉ２Ｃ通信部１１３は、他のモジュール２００、３００、４００および５００を直列に接続するＩ２Ｃ用の信号線を介して、Ｉ２Ｃ通信部２１３、３１３、４１３および５１３と通信する。より具体的には、Ｉ２Ｃ通信部１１３は、シリアルクロック線ＳＣＬおよびシリアルデータ線ＳＤＡを介して、他のモジュール２００、３００、４００および５００のＩ２Ｃ通信部２１３、３１３、４１３および５１３との間でそれぞれＩ２Ｃ通信を行い得る。モジュール１００のＩ２Ｃ通信部１１３はマスタであり、他のモジュール２００、３００、４００および５００のＩ２Ｃ通信部２１３、３１３、４１３および５１３はいずれもスレーブとする。モジュール１００のＩ２Ｃアドレスは、例えば０ｘ０５とする。Ｉ２Ｃ通信部１１３は、以下のような状態において、所定の条件が満たされているか否かを判定する。その状態とは、Ｉ２Ｃ通信部１１３とモジュール２００のＩ２Ｃ通信部２１３とが信号線を介して電気的に接続され、且つ、モジュール２００のＩ２Ｃ通信部２１３とモジュール３００のＩ２Ｃ通信部３１３とがスイッチ２２３によって電気的に分離されている状態である。Ｉ２Ｃ通信部１１３は、以下のような状態において、所定の条件が満たされているか否かを判定する。その状態とは、Ｉ２Ｃ通信部１１３とモジュール３００のＩ２Ｃ通信部３１３とが信号線を介して電気的に接続され、且つ、モジュール３００のＩ２Ｃ通信部３１３とモジュール４００のＩ２Ｃ通信部４１３とがスイッチ３２３によって電気的に分離されている状態である。さらに、Ｉ２Ｃ通信部１１３は、以下のような状態において、所定の条件が満たされているか否かを判定する。その状態とは、Ｉ２Ｃ通信部１１３とモジュール４００のＩ２Ｃ通信部４１３とが信号線を介して電気的に接続され、且つ、モジュール４００のＩ２Ｃ通信部４１３とモジュール５００のＩ２Ｃ通信部５１３とがスイッチ４２３によって電気的に分離されている状態である。電源部１１５は、モジュール１００の各構成要素に電力を供給する。制御部１１１およびプルアップ抵抗１２７にも、電源部１１５から電力が供給される。表示部１１９には、ライブビュー画像、再生画像、電子機器６００の状態等が表示され得る。Ｉ２Ｃ通信が成立しない場合等に発せられる通知情報も、表示部１１９に表示され得る。記録部１２１は、撮像によって取得された画像を記録する。記録部１２１としては、モジュール１００に内蔵された記録媒体であってもよいし、モジュール１００から取り外し可能な記録媒体等であってもよい。スイッチ１２３は、シリアルクロック線ＳＣＬおよびシリアルデータ線ＳＤＡに接続されている。図２Ａに示す状態においては、スイッチ１２３がＯＮ状態となっているため、モジュール１００のＩ２Ｃ通信用の信号線と、モジュール１００の後段に接続されているモジュール２００のＩ２Ｃ通信用の信号線とが電気的に接続されている。プルアップ抵抗１２７の一方の端部は、電源部１１５に接続されている。プルアップ抵抗１２７の他方の端部は、シリアルクロック線ＳＣＬおよびシリアルデータ線ＳＤＡにそれぞれ接続されている。コネクタ１９９は、モジュール１００の後段に接続されるモジュール２００のコネクタ２０１に接続されている。
【００２１】
モジュール２００は、負荷部２０３と、制御部２１１と、電源部２１５と、スイッチ２２３、２２７および２２９と、プルアップ抵抗２３１とを有する。負荷部２０３は、モジュール２００の機能を実現するためのものである。負荷部２０３は、例えば、外部機器と通信するためのＩ／Ｏ機能部であるが、これに限定されるものではない。制御部２１１は、モジュール２００の各構成要素を制御するためのプログラムを記憶したメモリと、そのメモリに記憶されたプログラムを実行することによりモジュール２００の各構成要素を制御するプロセッサ（例えばハードウェアプロセッサ）とを有する。これにより、制御部２１１は、負荷部２０３を制御し得る。さらに、制御部２１１は、シリアルクロック線ＳＣＬおよびシリアルデータ線ＳＤＡにそれぞれ接続されているスイッチ２２３をも制御し得る。スイッチ２２３は、制御部２１１から供給されるイネーブル信号によって制御される。制御部２１１はさらに、Ｉ２Ｃ通信部２１３とＩ２Ｃ通信部２２５とを有する。Ｉ２Ｃ通信部２１３は、モジュール１００、３００、４００および５００のＩ２Ｃ通信部１１３、３１３、４１３および５１３と、シリアルクロック線ＳＣＬおよびシリアルデータ線ＳＤＡを介して通信可能である。Ｉ２Ｃ通信部２１３は、スレーブとして動作することが可能である。Ｉ２Ｃ通信部２１３のＩ２Ｃアドレスは、例えば０ｘ１０とする。Ｉ２Ｃ通信部２２５は、モジュール３００、４００および５００のＩ２Ｃ通信部３１３、４１３および５１３と、シリアルクロック線ＳＣＬおよびシリアルデータ線ＳＤＡを介して通信可能である。Ｉ２Ｃ通信部２２５は、マスタとして動作することが可能である。Ｉ２Ｃ通信部２２５のＩ２Ｃアドレスは、例えば０ｘ１１とする。電源部２１５は、モジュール２００の各構成要素に電力を供給する。制御部２１１、負荷部２０３およびプルアップ抵抗２３１にも、電源部２１５から電力が供給される。スイッチ２２３および２２７は、Ｉ２Ｃ通信の信号線であるシリアルクロック線ＳＣＬおよびシリアルデータ線ＳＤＡに接続されている。図２Ａにおいては、スイッチ２２３がＯＦＦ状態となっているため、モジュール２００のＩ２Ｃ通信用の信号線と、モジュール２００の後段に接続されているモジュール３００のＩ２Ｃ通信用の信号線とは電気的に分離されている。プルアップ抵抗２３１の一方の端部は、電源部２１５に接続されている。プルアップ抵抗２３１の他方の端部に接続されたシリアルデータ線ＳＤＡおよびシリアルクロック線ＳＣＬは、スイッチ２２９を介して、シリアルデータ線ＳＤＡおよびシリアルクロック線ＳＣＬにそれぞれ接続されている。Ｉ２Ｃ通信部２２５は、スイッチ２２７および２２９をも制御し得る。スイッチ２２７および２２９は、Ｉ２Ｃ通信部２２５から供給されるマスタイネーブル（Ｍａｓｔｅｒ  Ｅｎａｂｌｅ）信号によって制御される。図２Ａにおいては、スイッチ２２９がＯＦＦ状態となっているため、Ｉ２Ｃ通信部２２５に接続されたＩ２Ｃ通信用の信号線と、スイッチ２２３および２２７に接続されたＩ２Ｃ通信用の信号線とは、電気的に分離されている。Ｉ２Ｃ通信部２２５をマスタとするＩ２Ｃ通信を行う場合、スイッチ２２７はＯＦＦ状態とされ、ス���ッチ２２９はＯＮ状態とされる。一方、Ｉ２Ｃ通信部２２５をマスタとするＩ２Ｃ通信を行わない場合、スイッチ２２７はＯＮ状態とされ、スイッチ２２９はＯＦＦ状態とされる。コネクタ２９９は、モジュール２００の後段に接続されているモジュール３００のコネクタ３０１に接続されている。図２Ａにおいて矢印が付された破線は、コネクタ２９９とコネクタ３０１とが接続されていることを概念的に示している。
【００２２】
モジュール３００は、負荷部３０３と、制御部３１１と、電源部３１５と、スイッチ３２３、３２７および３２９と、プルアップ抵抗３３１とを有する。負荷部３０３は、モジュール３００の機能を実現するためのものである。負荷部３０３は、例えば、無線通信によって外部機器との間でデータの送受信を行うための通信機能部であるが、これに限定されるものではない。制御部３１１は、モジュール３００の各構成要素を制御するためのプログラムを記憶したメモリと、そのメモリに記憶されたプログラムを実行することによりモジュール３００の各構成要素を制御するプロセッサ（例えばハードウェアプロセッサ）とを有する。これにより、制御部３１１は、負荷部３０３を制御し得る。さらに、制御部３１１は、シリアルクロック線ＳＣＬおよびシリアルデータ線ＳＤＡにそれぞれ接続されているスイッチ３２３をも制御し得る。スイッチ３２３は、制御部３１１から供給されるイネーブル信号によって制御される。制御部３１１はさらに、Ｉ２Ｃ通信部３１３とＩ２Ｃ通信部３２５とを有する。Ｉ２Ｃ通信部３１３は、モジュール１００、２００、４００および５００のＩ２Ｃ通信部１１３、２１３、４１３および５１３と、シリアルクロック線ＳＣＬおよびシリアルデータ線ＳＤＡを介して通信可能である。Ｉ２Ｃ通信部３１３はさらに、モジュール２００のＩ２Ｃ通信部２２５と、シリアルクロック線ＳＣＬおよびシリアルデータ線ＳＤＡを介して通信可能である。Ｉ２Ｃ通信部３１３は、スレーブとして動作することが可能である。Ｉ２Ｃ通信部３１３のＩ２Ｃアドレスは、例えば０ｘ１５とする。Ｉ２Ｃ通信部３２５は、モジュール４００および５００のＩ２Ｃ通信部４１３および５１３と、シリアルクロック線ＳＣＬおよびシリアルデータ線ＳＤＡを介して通信可能である。Ｉ２Ｃ通信部３２５は、マスタとして動作することが可能である。Ｉ２Ｃ通信部３２５のＩ２Ｃアドレスは、例えば０ｘ１６とする。電源部３１５は、モジュール３００の各構成要素に電力を供給する。制御部３１１、負荷部３０３およびプルアップ抵抗３３１にも、電源部３１５から電力が供給される。スイッチ３２３および３２７は、シリアルクロック線ＳＣＬおよびシリアルデータ線ＳＤＡに接続されている。図２Ａにおいては、スイッチ３２３がＯＦＦ状態となっているため、モジュール３００のＩ２Ｃ通信用の信号線と、モジュール３００の後段に接続されているモジュール４００のＩ２Ｃ通信用の信号線とは電気的に分離されている。プルアップ抵抗３３１の一方の端部は、電源部３１５に接続されている。プルアップ抵抗３３１の他方の端部に接続されたシリアルデータ線ＳＤＡおよびシリアルクロック線ＳＣＬは、スイッチ３２９を介して、シリアルデータ線ＳＤＡおよびシリアルクロック線ＳＣＬにそれぞれ接続されている。Ｉ２Ｃ通信部３２５は、スイッチ３２７および３２９をも制御し得る。スイッチ３２７および３２９は、Ｉ２Ｃ通信部３２５から供給されるマスタイネーブル信号によって制御される。図２Ａにおいては、スイッチ３２９がＯＦＦ状態となっているため、Ｉ２Ｃ通信部３２５のＩ２Ｃ通信用の信号線と、スイッチ３２３および３２７のＩ２Ｃ通信用の信号線とは、電気的に分離されている。Ｉ２Ｃ通信部３２５をマスタとするＩ２Ｃ通信を行う場合、スイッチ３２７はＯＦＦ状態とされ、スイッチ３２９はＯＮ状態とされる。一方、Ｉ２Ｃ通信部３２５をマスタとするＩ２Ｃ通信を行わない場合、スイッチ３２７はＯＮ状態とされ、スイッチ３２９はＯＦＦ状態とされる。コネクタ３９９は、モジュール３００の後段に接続されているモジュール４００のコネクタ４０１に接続されている。
【００２３】
モジュール４００は、負荷部４０３と、制御部４１１と、電源部４１５と、スイッチ４２３、４２７および４２９と、プルアップ抵抗４３１とを有する。負荷部４０３は、モジュール４００の機能を実現するためのものである。負荷部４０３は、例えば、デジタル化された画像または画像および音声を外部に出力するための機能部であるが、これに限定されるものではない。制御部４１１は、モジュール４００の各構成要素を制御するためのプログラムを記憶したメモリと、そのメモリに記憶されたプログラムを実行することによりモジュール４００の各構成要素を制御するプロセッサ（例えばハードウェアプロセッサ）とを有する。これにより、制御部４１１は、負荷部４０３を制御し得る。さらに、制御部４１１は、シリアルクロック線ＳＣＬおよびシリアルデータ線ＳＤＡにそれぞれ接続されているスイッチ４２３をも制御し得る。スイッチ４２３は、制御部４１１から供給されるイネーブル信号によって制御される。制御部４１１はさらに、Ｉ２Ｃ通信部４１３およびＩ２Ｃ通信部４２５を有する。Ｉ２Ｃ通信部４１３は、モジュール１００、２００、３００および５００のＩ２Ｃ通信部１１３、２１３、３１３および５１３と、シリアルクロック線ＳＣＬおよびシリアルデータ線ＳＤＡを介して通信可能である。Ｉ２Ｃ通信部４１３はさらに、モジュール２００および３００のＩ２Ｃ通信部２２５および３２５と、シリアルクロック線ＳＣＬおよびシリアルデータ線ＳＤＡを介して通信可能である。Ｉ２Ｃ通信部４１３は、スレーブとして動作することが可能である。Ｉ２Ｃ通信部４１３のＩ２Ｃアドレスは、例えば０ｘ１Ａとする。Ｉ２Ｃ通信部４２５は、モジュール５００のＩ２Ｃ通信部５１３と、シリアルクロック線ＳＣＬおよびシリアルデータ線ＳＤＡを介して通信可能である。Ｉ２Ｃ通信部４２５は、マスタとして動作することが可能である。Ｉ２Ｃ通信部４２５のＩ２Ｃアドレスは、例えば０ｘ１Ｂとする。電源部４１５は、モジュール４００の各構成要素に電力を供給する。制御部４１１、負荷部４０３およびプルアップ抵抗４３１にも、電源部４１５から電力が供給される。スイッチ４２３および４２７は、シリアルクロック線ＳＣＬおよびシリアルデータ線ＳＤＡに接続されている。図２Ａにおいては、スイッチ４２３がＯＦＦ状態となっているため、モジュール４００のＩ２Ｃ通信用の信号線と、モジュール４００の後段に接続されているモジュール５００のＩ２Ｃ通信用の信号線とは電気的に分離されている。プルアップ抵抗４３１の一方の端部は、電源部４１５に接続されている。プルアップ抵抗４３１の他方の端部に接続されたシリアルデータ線ＳＤＡおよびシリアルクロック線ＳＣＬは、スイッチ４２９を介して、シリアルデータ線ＳＤＡおよびシリアルクロック線ＳＣＬにそれぞれ接続されている。Ｉ２Ｃ通信部４２５は、スイッチ４２７および４２９をも制御し得る。スイッチ４２７および４２９は、Ｉ２Ｃ通信部４２５から供給されるマスタイネーブル信号によって制御される。図２Ａにおいては、スイッチ４２９がＯＦＦ状態となっているため、Ｉ２Ｃ通信部４２５に接続されたＩ２Ｃ通信用の信号線と、スイッチ４２３および４２７が接続されたＩ２Ｃ通信用の信号線とは、電気的に分離されている。Ｉ２Ｃ通信部４２５をマスタとするＩ２Ｃ通信を行う場合、スイッチ４２７はＯＦＦ状態とされ、スイッチ４２９はＯＮ状態とされる。一方、Ｉ２Ｃ通信部４２５をマスタとするＩ２Ｃ通信を行わない場合、スイッチ４２７はＯＮ状態とされ、スイッチ４２９はＯＦＦ状態とされる。コネクタ４９９は、モジュール４００の後段に接続されているモジュール５００のコネクタ５０１に接続されている。
【００２４】
モジュール５００は、制御部５１１と、電源部５１５とを有する。制御部５１１は、モジュール５００の各構成要素を制御するためのプログラムを記憶したメモリと、そのメモリに記憶されたプログラムを実行することによりモジュール５００の各構成要素を制御するプロセッサ（例えばハードウェアプロセッサ）とを有する。制御部５１１はさらに、Ｉ２Ｃ通信部５１３を有する。Ｉ２Ｃ通信部５１３は、モジュール１００、２００、３００、４００のＩ２Ｃ通信部１１３、２１３、３１３および４１３と、シリアルクロック線ＳＣＬおよびシリアルデータ線ＳＤＡを介して通信可能である。Ｉ２Ｃ通信部５１３はさらに、モジュール２００、３００、４００のＩ２Ｃ通信部２２５、３２５および４３５と、シリアルクロック線ＳＣＬおよびシリアルデータ線ＳＤＡを介して通信可能である。なお、モジュール５００のＩ２Ｃアドレスは、例えば０ｘ１Ｆとする。電源部５１５は、モジュール５００の各構成要素に電力を供給する。制御部５１１にも、電源部５１５から電力が供給される。電源部５１５の接地端子は、接地電位５２７に接続される接地線に接続されている。電源部１１５、２１５、３１５、４１５および５１５の接地端子は、接地線によって互いに接続される。なお、モジュール５００は、モジュール５００の後段に他のモジュールが接続されないような機構となっている。
【００２５】
次に、図３のフローチャートを参照して、電子機器６００の動作例を説明する。図３では、電子機器６００を起動した際に行われるモジュールの識別方法を説明する。
【００２６】
ステップＳ３０１において、モジュール１００は、モジュール１００の後段に接続されているモジュールの識別を開始する。モジュールの識別は、マスタモジュールであるモジュール１００の近くに位置しているモジュールから順に行われる。従って、まずは、モジュール２００の識別が行われる。モジュール２００の識別は、モジュール１００のＩ２Ｃ通信部１１３とモジュール２００のＩ２Ｃ通信部２１３とが、シリアルクロック線ＳＣＬおよびシリアルデータ線ＳＤＡを介して電気的に接続されている状態で行われる。この際、Ｉ２Ｃ通信部３１３、３２５、４１３、４２５および５１３は、モジュール２００のスイッチ２２３によって、Ｉ２Ｃ通信部１１３および２１３から電気的に分離される。また、Ｉ２Ｃ通信部２２５は、モジュール２００のスイッチ２２９によって、Ｉ２Ｃ通信に用いられる信号線から分離される。モジュールの識別は、モジュールからの応答があるまでＩ２Ｃアドレスをインクリメントしていくことによって行われる。上述したように、モジュール２００のアドレスは、例えば０ｘ１０である。従って、ＩＣアドレスを０ｘ１０までインクリメントした際に、モジュール１００はモジュール２００からの応答を得る。こうして、モジュール２００の識別が行われることとなる。
【００２７】
ステップＳ３０２において、モジュール１００のＩ２Ｃ通信部１１３は、ＩＣ２通信に用いられる信号線における遅延時間がＩ２Ｃ規格に定められた所定の条件を満たすか否かを判定する。所定の条件は、例えば、Ｉ２Ｃ通信用の信号線における信号の遅延が所定時間未満であるという条件である。所定の条件を満足するか否かに基づいて、所定の条件を満足するようにするための制御を行うか否かが決定される。Ｉ２Ｃ通信部１１３は、シリアルクロック線ＳＣＬおよびシリアルデータ線ＳＤＡにおける遅延時間がかかる所定の条件を満足するか否かを判定する。具体的には、Ｉ２Ｃ通信部１１３は、シリアルクロック線ＳＣＬおよびシリアルデータ線ＳＤＡの伝送信号の立ち上がり時間をカウントする。そして、Ｉ２Ｃ通信部１１３は、当該カウント値が規格値（閾値）未満であるか否かに基づいて、シリアルクロック線ＳＣＬおよびシリアルデータ線ＳＤＡにおける遅延時間がＩ２Ｃ規格を満足するか否かを判定する。
【００２８】
図４を参照して、Ｉ２Ｃ通信部１１３の構成例を説明する。Ｉ２Ｃ通信部１１３は、ＦＥＴ（Ｆｉｅｌｄ−Ｅｆｆｅｃｔ  Ｔｒａｎｓｉｓｔｏｒ）１２９および１３１を有する。ＦＥＴ１２９および１３１のソースは、それぞれ接地線に接続されている。ＦＥＴ１２９のドレインは、シリアルクロック線ＳＣＬに接続されている。ＦＥＴ１３１のドレインは、シリアルデータ線ＳＤＡに接続されている。ＦＥＴ１２９および１３１のゲートには、ＦＥＴ制御部１３７から出力される制御信号が印加されるようになっている。ＦＥＴ制御部１３７は、ＦＥＴ１２９および１３１を制御するものである。ＦＥＴ制御部１３７がＦＥＴ１２９のゲートにＨｉｇｈレベルの制御信号を印加すると、ＦＥＴ１２９はＯＮ状態となり、シリアルクロック線ＳＣＬがＬｏｗレベルになる。ＦＥＴ制御部１３７がＦＥＴ１３１のゲートにＨｉｇｈレベルの制御信号を印加すると、ＦＥＴ１３１はＯＮ状態となり、シリアルデータ線ＳＤＡがＬｏｗレベルになる。ＦＥＴ制御部１３７からＦＥＴ１２９のゲートに供給される制御信号がＬｏｗレベルになると、ＦＥＴ１２９がＯＦＦ状態となり、シリアルクロック線ＳＣＬがＬｏｗレベルに固定されない状態となる。ＦＥＴ制御部１３７からＦＥＴ１３１のゲートに供給される制御信号がＬｏｗレベルになると、ＦＥＴ１３１がＯＦＦ状態となり、シリアルデータ線ＳＤＡがＬｏｗレベルに固定されない状態となる。Ｉ２Ｃ通信部１１３は、ＦＥＴ１２９のドレインおよびシリアルクロック線ＳＣＬに接続されたバッファ１３５を有する。Ｉ２Ｃ通信部１１３は、ＦＥＴ１３１のドレインおよびシリアルデータ線ＳＤＡに接続されたバッファ１３３をさらに有する。バッファ１３３および１３５の出力は、それぞれカウンタ１３９に入力されるようになっている。カウンタ１３９は、シリアルクロック線ＳＣＬおよびシリアルデータ線ＳＤＡがＬｏｗレベルからＨｉｇｈレベルに遷移するまでの時間をそれぞれカウントし得る。例えば、カウンタ１３９は、ＦＥＴ制御部１３７がＦＥＴ１２９をＯＮ状態からＯＦＦ状態に変化させてから、バッファ１３５の出力がＬｏｗレベルからＨｉｇｈレベルに遷移するまでの時間をカウントし得る。また、カウンタ１３９は、ＦＥＴ制御部１３７がＦＥＴ１３１をＯＮ状態からＯＦＦ状態に変化させてから、バッファ１３３の出力がＬｏｗレベルからＨｉｇｈレベルに遷移するまでの時間をカウントし得る。
【００２９】
図５（ａ）〜図５（ｄ）のタイムチャートを参照して、伝送信号の例を説明する。図５は、シリアルクロック線ＳＣＬおよびシリアルデータ線ＳＤＡにおける伝送信号の例を示している。図５（ａ）は、例えば図２Ａの状態に対応しており、図５（ｂ）は例えば図２Ｃの状態に対応している。図５（ｃ）は、図５（ａ）のうちの四角で囲まれた部分を拡大して示したものであり、図５（ｄ）は、図５（ｂ）のうちの四角で囲まれた部分を拡大して示したものである。
【００３０】
タイミングｔ１において、ＦＥＴ制御部１３７は、シリアルクロック線ＳＣＬに接続されているＦＥＴ１２９をＯＮ状態からＯＦＦ状態に変化させるとともに、カウンタ１３９によるカウント動作を開始する。シリアルクロック線ＳＣＬがプルアップ抵抗１２７を介してプルアップされているため、ＦＥＴ１２９をＯＮ状態からＯＦＦ状態に変化させると、シリアルクロック線ＳＣＬがＬｏｗレベルからＨｉｇｈレベルに遷移する。シリアルクロック線ＳＣＬがＬｏｗレベルからＨｉｇｈレベルに遷移するまでの時間は、シリアルクロック線ＳＣＬの抵抗および容量、並びに、プルアップ抵抗１２７の抵抗に応じた時間となる。ＦＥＴ１２９をＯＮ状態からＯＦＦ状態に変化させた際に、シリアルクロック線ＳＣＬがＬｏｗレベルからＨｉｇｈレベルに遷移するまでの時間は、モジュール１００に接続されているモジュールの数が多くなるほど長くなる。図５に示す閾値Ｖｔｈは、バッファ１３５の出力がＬｏｗレベルからＨｉｇｈレベルに遷移する際のシリアルクロック線ＳＣＬの電位である。シリアルクロック線ＳＣＬの電位が閾値Ｖｔｈに達すると、バッファ１３５の出力がＬｏｗからＨｉｇｈレベルに変化し、カウンタ１３９はカウント動作を停止する。Ｉ２Ｃ通信部１１３は、シリアルクロック線ＳＣＬにおける遅延時間が、Ｉ２Ｃ規格に定められている規格値を満足するか否かを判定する。具体的には、Ｉ２Ｃ通信部１１３は、カウンタ１３９によって得られたカウント値と、Ｉ２Ｃ規格に定められている規格値に応じたカウント値と比較する。なお、Ｉ２Ｃ規格に定められている規格値に応じたカウント値は、例えば、メモリ１１０等に格納されている。
【００３１】
Ｉ２Ｃ通信に用いられる信号線における遅延時間がＩ２Ｃ規格を満たす場合には（ステップＳ３０２でＹＥＳ）、ステップＳ３０３に移行する。一方、Ｉ２Ｃ通信に用いられる信号線における遅延時間がＩ２Ｃ規格を満たさない場合には（ステップＳ３０２でＮＯ）、ステップＳ３０９に移行する。図２Ａに示す状態においては、図５（ａ）および図５（ｃ）に示すように、タイミングｔ２において、シリアルクロック線ＳＣＬの電位が閾値Ｖｔｈに達する。タイミングｔ１からタイミングｔ２までの時間は、Ｉ２Ｃ規格において規定されている遅延時間未満とする。従って、図２Ａに示す状態の場合には、ステップＳ３０３に移行する。
【００３２】
ステップＳ３０３において、Ｉ２Ｃ通信部１１３は、検出されたモジュールが電源モジュール５００であるか否かを識別する。かかる識別は、Ｉ２Ｃ通信によって行われる。電源モジュール５００のアドレスは、上述したように例えば０ｘ１Ｆである。従って、検出されたモジュールのアドレスが０ｘ１Ｆであるか否かに基づいて、当該モジュールが電源モジュール５００であるか否かを判定し得る。なお、検出されたモジュールが電源モジュール５００であるか否かを判定するのは、電源モジュール５００によって複数のモジュールの接続が終端される仕様となっているため、更なるモジュールの検出が不要なためである。なお、電源モジュール５００から、電源電圧値、バッテリ残量、劣化度等の情報を取得するようにしてもよい。検出されたモジュールが電源モジュール５００である場合には（ステップＳ３０３でＹＥＳ）、ステップＳ３０７に移行する。一方、検出されたモジュールが電源モジュール５００でない場合には（ステップＳ３０３でＮＯ）、ステップＳ３０４に移行する。
【００３３】
ステップＳ３０４において、モジュール１００の制御部１１１は、ステップＳ３０１において識別の対象となったモジュールの後段に位置するモジュールのＩ２Ｃ通信部がＩ２Ｃ通信用の信号線を介してＩ２Ｃ通信部１１３に接続されるように制御を行う。なお、説明の便宜上、ステップＳ３０１において識別の対象となったモジュールの後段に位置するモジュールを、「次のモジュール」とも称することとする。例えば、図２Ａに示す状態になっている場合、Ｉ２Ｃ通信部１１３は、図２Ｂに示す状態になるように制御を行う。モジュール１００の制御部１１１は、モジュール２００の後段に接続されたモジュール３００を識別すべく、モジュール２００のスイッチ２２３がＯＮ状態となるように命令を行う。かかる命令は、例えばＩ２Ｃ通信によって、モジュール２００の制御部２１１に送信される。モジュール２００の制御部２１１がスイッチ２２３をＯＮ状態にすると、モジュール１００は、モジュール２００の後段に接続されたモジュール３００の識別を行うことが可能となる。
【００３４】
ステップＳ３０５において、モジュール１００の制御部１１１は、次のモジュールを接続するための処理が完了したか否かを、モジュール２００に対して問い合わせる。具体的には、モジュール１００は、モジュール２００のスイッチ２２３をＯＮ状態にする処理が完了したか否かを、例えばＩ２Ｃ通信によってモジュール２００の制御部２１１に対して問い合わせる。次のモジュールを接続するための処理が完了した場合には（ステップＳ３０５でＹＥＳ）、ステップＳ３０１に戻る。次のモジュールを接続するための処理が完了せず、次のモジュールを接続することが不可能である場合には（ステップＳ３０５でＮＯ）、ステップＳ３０６に移行する。次のモジュールがモジュール３００である場合には、図２Ａに示す状態から図２Ｂに示す状態に移行する。図２Ｂに示す状態においては、モジュール１００のスイッチ１２３と、モジュール２００のスイッチ２２３および２２７とがＯＮ状態となっている。このため、モジュール１００、２００および３００のＩ２Ｃ通信用の信号線が互いに接続された状態となる。次のモジュールがモジュール４００である場合には、以下のような不図示の状態に移行する。不図示の状態においては、モジュール１００のスイッチ１２３と、モジュール２００のスイッチ２２３および２２７と、モジュール３００のスイッチ３２３および３２７とがＯＮ状態となっている。このため、モジュール１００、２００、３００および４００のＩ２Ｃ通信用の信号線が互いに接続された状態となる。次のモジュールがモジュール５００である場合には、上記のような不図示の状態から図２Ｃに示す状態に移行する。図２Ｃに示す状態においては、モジュール１００のスイッチ１２３と、モジュール２００のスイッチ２２３および２２７とがＯＮ状態になっている。また、モジュール３００のスイッチ３２３および３２７と、モジュール４００のスイッチ４２３および４２７とがＯＮ状態となっている。このため、モジュール１００、２００、３００、４００および５００のＩ２Ｃ通信用の信号線が互いに接続された状態となる。この後、ステップＳ３０１以降の動作が上記と同様にして繰り返される。
【００３５】
図２Ｃに示す状態においては、図５（ｂ）および図５（ｄ）に示すように、タイミングｔ３において、シリアルクロック線ＳＣＬの電位が閾値Ｖｔｈに達する。図２Ｃに示す状態において、シリアルクロック線ＳＣＬの電位が閾値Ｖｔｈに達するまでの時間が図２Ａに示す場合よりも長くなるのは、モジュールの接続数の増加によって、シリアルクロック線ＳＣＬの抵抗および容量が増加したためである。タイミングｔ１からタイミングｔ３までの時間は、例えば、Ｉ２Ｃ規格において規定されている遅延時間以上とする。従って、図２Ｃに示す状態の場合には、Ｉ２Ｃ通信に用いられる信号線における遅延時間がＩ２Ｃ規格を満たさず（ステップＳ３０２でＮＯ）、ステップＳ３０９に移行する。
【００３６】
ステップＳ３０９において、モジュール１００の制御部１１１は、マスタが所定数未満であるか否かを判定する。マスタが所定数未満か否かを判定するのは、マスタの数が多くなると、モジュール１００とモジュール５００との間における通信遅延が大きくなってしまうため、マスタの数を所定数以下に制限することが好ましいためである。ここでは、マスタの数を２つまで許容する場合を例に説明するが、これに限定されるものではない。マスタの数が所定数未満である場合には（ステップＳ３０９でＹＥＳ）、ステップＳ３１０に移行する。一方、マスタの数が所定数以上である場合には、ステップＳ３０６に移行する。
【００３７】
ステップＳ３１０において、モジュール１００の制御部１１１は、今回識別対象となったモジュールをマスタモジュールとして動作させるための命令を、当該モジュールの制御部に対して送信する。かかる命令の送信は、例えばＩ２Ｃ通信によって行われる。今回識別対象となったモジュールがモジュール４００である場合には、以下のような処理が行われる。モジュール１００の制御部１１１は、モジュール４００の制御部４１１に対し、Ｉ２Ｃ通信部４２５をマスタとして動作させるための命令を行う。モジュール４００の制御部４１１は、モジュール１００の制御部１１１からの命令に基づいて、Ｉ２Ｃ通信部４２５を制御する。Ｉ２Ｃ通信部４２５は、マスタイネーブル信号をイネーブル状態とすることにより、スイッチ４２７をＯＦＦ状態にし、スイッチ４２９をＯＮ状態にする。スイッチ４２７がＯＦＦ状態となるため、Ｉ２Ｃ通信部４１３に接続されたＩ２Ｃ通信用の信号線と、Ｉ２Ｃ通信部４２５に接続されたＩ２Ｃ通信用の信号線とが電気的に分離される。Ｉ２Ｃ通信部４１３に接続されたＩ２Ｃ通信用の信号線と、Ｉ２Ｃ通信部４２５に接続されたＩ２Ｃ通信用の信号線とが電気的に分離されるため、これらＩ２Ｃ通信用の信号線における電気抵抗や寄生容量が十分に小さくなる。このため、これらＩＣ２通信用の信号線における遅延時間がＩ２Ｃ規格に定められた所定の条件を満たすようになる。
【００３８】
ステップＳ３１１において、モジュール１００の制御部１１１は、今回識別対象となったモジュールをマスタモジュールとして動作させるための初期化処理が完了したか否かを判定する。かかる初期化処理が完了した場合には（ステップＳ３１１でＹＥＳ）、ステップＳ３０１以降の動作を繰り返す。一方、かかる初期化処理が完了していない場合には（ステップＳ３１１でＮＯ）、ステップＳ３１２に移行する。
【００３９】
ステップＳ３１２において、モジュール１００の制御部１１１は、ステップＳ３１１において初期化処理を行い得なかったモジュールの前段に位置するモジュールに対し、マスタとして動作させるための命令を行う。ステップＳ３１１において初期化処理を行い得なかったモジュールがモジュール４００である場合には、モジュール４００の前段に位置するモジュールはモジュール３００である。この場合、モジュール１００の制御部１１１は、モジュール３００のＩ２Ｃ通信部３２５をマスタとして動作させるための命令を行う。モジュール３００の制御部３１１は、モジュール１００の制御部１１１からの命令に基づいて、Ｉ２Ｃ通信部３２５を制御する。Ｉ２Ｃ通信部３２５は、マスタイネーブル信号をイネーブル状態とすることにより、スイッチ３２７をＯＦＦ状態にし、スイッチ３２９をＯＮ状態にする。これにより、スイッチ３２７がＯＦＦ状態となるため、Ｉ２Ｃ通信部３１３に接続されたＩ２Ｃ通信用の信号線と、Ｉ２Ｃ通信部３２５に接続されたＩ２Ｃ通信用の信号線とが電気的に分離される。Ｉ２Ｃ通信部３１３に接続されたＩ２Ｃ通信用の信号線と、Ｉ２Ｃ通信部３２５に接続されたＩ２Ｃ通信用の信号線とが電気的に分離されるため、以下のようなＩ２Ｃ通信を行うことが可能となる。Ｉ２Ｃ通信部１１３をマスタとし、Ｉ２Ｃ通信部２１３および３１３をスレーブとするＩ２Ｃ通信を行うとともに、Ｉ２Ｃ通信部３２５をマスタとするＩ２Ｃ通信を行うことが可能となる。この後、ステップＳ３１３に移行する。
【００４０】
ステップＳ３１３において、モジュール１００の制御部１１１は、ステップＳ３１１において初期化処理を行い得なかったモジュールの前段に位置するモジュールが、制御部１１１を有するモジュール１００であるか否かを判定する。ステップＳ３１１において初期化処理を行い得なかったモジュールの前段に位置するモジュールが、制御部１１１を有するモジュール１００である場合には、ステップＳ３０６に移行する。一方、ステップＳ３１１において初期化処理を行い得なかったモジュールの前段に位置するモジュールが、制御部１１１を有するモジュール１００でない場合には、ステップＳ３１１に移行する。このように、ステップＳ３１１において初期化処理を行い得ない場合には、後段側から前段側に向かって、マスタモジュールとして機能させ得るモジュールの検出が行われることとなる。図２Ｅは、ステップＳ３１１において初期化処理を行い得ない場合の例を示す図である。図２Ｅに示す例においては、スレーブとして機能し得るＩ２Ｃ通信部４１３を、モジュール４００の制御部４１１が有している。しかし、モジュール４００の制御部４１１は、マスタとして機能し得るＩ２Ｃ通信部４１３（図２Ａ参照）を有していない。マスタとして機能し得るＩ２Ｃ通信部４２５を、モジュール４００の制御部４１１が有していないため、図２Ｅに示す例においては、Ｉ２Ｃ通信部４１３に対する初期化処理をステップＳ３１１において行い得ない。このような場合には、モジュール４００の前段に位置しているモジュール３００のＩ２Ｃ通信部３２５をマスタとして動作するための処理がステップＳ３１２において行われる。図２Ｅに示す例においては、マスタとして機能し得るＩ２Ｃ通信部３１３を、モジュール３００の制御部３１１が有している。このため、モジュール３００のＩ２Ｃ通信部３２５をマスタとして動作させるための処理がステップＳ３１２において行われる。ステップＳ３１２においてマスタとして動作させるための処理が行われたモジュールがモジュール３００である場合、当該モジュールはモジュール１００ではないため（ステップＳ３１３でＮＯ）、ステップＳ３１１に移行する。モジュール３００のＩ２Ｃ通信部３２５をマスタとして動作させるための初期化処理が完了した場合には（ステップＳ３１１でＹＥＳ）、ステップＳ３０１以降の動作が繰り返される。この場合には、ステップＳ３０１において、モジュール３００のＩ２Ｃ通信部３２５が、モジュール３００の後段に接続されているモジュールの識別を開始する。このように、マスタとして機能し得るＩ２Ｃ通信部４２５を、モジュール４００の制御部４１１が有していない場合、マスタとして機能し得るＩ２Ｃ通信部３２５を制御部３１１が有しているモジュール３００をマスタとしてＩ２Ｃ通信を行い得る。
【００４１】
ステップＳ３０６において、モジュール１００の制御部１１１は、表示部１１９（通知手段）を用いて所定の警告（通知）を行う。図６（ａ）〜図６（ｃ）を参照して、電子機器６００で行われる所定の通知の例を説明する。例えば、制御部１１１は、直列接続されるモジュールの数を減ずることをユーザに促すための通知を行い得る。具体的には、図６（ａ）に示すように、制御部１１１は、「制限台数を超えています。接続モジュール数を少なくしてください。」という通知情報を、表示部１１９に表示し得る。このような表示は、例えば以下のような場合に行われる。例えば、所定数を超える数のモジュールをマスタモジュールにしない限り、Ｉ２Ｃ通信用の信号線における遅延時間がＩ２Ｃ規格を満たし得ない場合には、ステップＳ３０９でＮＯとなり、図６（ａ）に示すような表示が行われる。また、Ｉ２Ｃ通信用の信号線における遅延時間がＩ２Ｃ規格を満たさず、しかも、モジュール１００以外のモジュール２００、３００および４００をマスタモジュールとし得ない場合には、ステップＳ３１３でＮＯとなり、図６（ａ）に示すような表示が行われる。この後、ステップＳ３０８に移行する。
【００４２】
ステップＳ３０８において、モジュール１００の制御部１１１は、モジュールの識別を終了する（識別失敗）。
【００４３】
ステップＳ３０７において、モジュール１００の制御部１１１は、モジュールの識別を終了する（識別成功）。この後、電子機器６００を用いた撮像等がユーザ等による操作に基づいて行われる。
【００４４】
なお、ここでは、Ｉ２Ｃ通信用の信号線における遅延時間がＩ２Ｃ規格を満足するか否かを判定し、その判定結果に応じた内容が表示部１１９に表示される場合を例に説明したが、これに限定されるものではない。例えば、制御部１１１は、複数のモジュールのうちのいずれかとの間で通信を確立できない場合には、通信を確立できないことを示す表示を、表示部１１９を用いて行うようにしてもよい。さらには、制御部１１１は、モジュールの再接続やモジュールの交換を促す表示を、表示部１１９を用いて行うようにしてもよい。例えば、図６（ｂ）に示すように、制御部１１１は、「通信できません。モジュールを再接続または交換してください。」という通知情報を、表示部１１９を用いて表示するようにしてもよい。この際、制御部１１１は、通信不能なモジュールを示す情報を、表示部１１９に表示するようにしてもよい。このような表示は、例えば以下のような場合に行われる。例えば、何らかの電気的異常によって通信が確立できない場合には、ステップＳ３０５でＮＯとなり、図６（ｂ）に示すような表示が行われる。また、正規の仕様でないモジュールが接続されている場合にも、ステップＳ３０５でＮＯとなり、図６（ｂ）に示すような表示が行われる。また、制御部１１１は、通信可能なモジュールを、表示部１１９を用いて一覧表示するようにしてもよい。例えば、図６（ｃ）に示すように、「通信可能モジュール：ＡＡ、ＢＢ、ＣＣ」という通知情報を、表示部１１９を用いて表示するようにしてもよい。
【００４５】
モジュール４００のＩ２Ｃ通信部４２５をマスタとした場合には、以下のようなＩ２Ｃ通信を行うことが可能となる。Ｉ２Ｃ通信部１１３をマスタとし、Ｉ２Ｃ通信部２１３、３１３および４１３をスレーブとするＩ２Ｃ通信を行うとともに、Ｉ２Ｃ通信部４２５をマスタとし、Ｉ２Ｃ通信部５１３をスレーブとするＩ２Ｃ通信を行うことが可能となる。この場合、モジュール１００とモジュール５００との間のＩ２Ｃ通信は、例えば以下のようにして行われる。マスタとして動作するＩ２Ｃ通信部１１３からスレーブとして動作するＩ２Ｃ通信部４１３に対して、Ｉ２Ｃ通信用の信号線を介して命令が送信される。そして、当該命令が、マスタとして動作するＩ２Ｃ通信部４２５からスレーブとして動作するＩ２Ｃ通信部５１３に対して、Ｉ２Ｃ通信用の信号線を介して送信される。こうして、モジュール１００から発せられた命令がモジュール５００に伝達される。この後、スレーブとして動作するＩ２Ｃ通信部５１３からマスタとして動作するＩ２Ｃ通信部４２５に対して、上記のような命令に対する応答が送信される。そして、当該応答が、スレーブとして動作するＩ２Ｃ通信部４１３からマスタとして動作するＩ２Ｃ通信部１１３に対して送信される。こうして、モジュール５００から発せられた応答がモジュール１００に伝達される。
【００４６】
このように、実施形態１では、スレーブとして動作させ得るＩ２Ｃ通信部２１３、３１３および４１３のみならず、マスタとして動作させ得るＩ２Ｃ通信部２２５、３２５および４２５を、モジュール２００、３００および４００がそれぞれ有している。スレーブとして動作し得るＩ２Ｃ通信部２１３、３１３および４１３と、マスタとして動作し得るＩ２Ｃ通信部２２５、３２５および４２５とは、Ｉ２Ｃ通信用の信号線に接続されたスイッチ２２７、３２７および４２７によってそれぞれ電気的に分離され得る。ＩＣ２通信用の信号線における遅延時間がＩ２Ｃ規格に定められた所定の条件を満たさない場合には、スイッチ２２７、３２７および４２７のうちのいずれかをＯＦＦ状態とし、スイッチ２２９、３２９および４２９のうちのいずれかをＯＮ状態とする。そして、Ｉ２Ｃ通信部２２５、３２５および４２５のいずれかをマスタとして動作させる。このため、実施形態１によれば、多数のモジュールを良好に接続することが可能となる。
【００４７】
なお、実施形態１では、表示部１１９を用いて警告等を表示する場合を例に説明したが、これに限定されるものではなく、音声等による警告を通知するようにしてもよい。
【００４８】
また、実施形態１では、モジュール１００の表示部１１９によって通知が行われる場合を例に説明したが、これに限定されるものではない。例えば、モジュール１００とは別個のモジュール、具体的には、モジュール２００の表示部によって、所定の通知が行われるようにしてもよい。
【００４９】
［実施形態２］
実施形態１で説明した様々な機能、処理または方法は、パーソナルコンピュータ、マイクロコンピュータ、ＣＰＵ（ｃｅｎｔｒａｌ  ｐｒｏｃｅｓｓｉｎｇ  ｕｎｉｔ）、プロセッサなどがプログラムを用いて実現することもできる。以下、実施形態２では、パーソナルコンピュータ、マイクロコンピュータ、ＣＰＵ（ｃｅｎｔｒａｌ  ｐｒｏｃｅｓｓｉｎｇ  ｕｎｉｔ）、プロセッサなどを「コンピュータＸ」と呼ぶ。また、実施形態２では、コンピュータＸを制御するためのプログラムであって、実施形態１で説明した様々な機能、処理または方法を実現するためのプログラムを「プログラムＹ」と呼ぶ。
【００５０】
実施形態１で説明した様々な機能、処理または方法は、コンピュータＸがプログラムＹを実行することによって実現される。この場合において、プログラムＹは、コンピュータ読み取り可能な記憶媒体を介してコンピュータＸに供給される。実施形態２におけるコンピュータ読み取り可能な記憶媒体は、ハードディスク装置、磁気記憶装置、光記憶装置、光磁気記憶装置、メモリカード、揮発性メモリ、不揮発性メモリなどの少なくとも１つを含む。実施形態２におけるコンピュータ読み取り可能な記憶媒体は、ｎｏｎ−ｔｒａｎｓｉｔｏｒｙな記憶媒体である。
【００５１】
なお、本発明の実施形態は上述の実施形態１または２に限定されるものではない。発明の要旨を逸脱しない範囲で変更または修正された実施形態１または２も本発明の実施形態に含まれる。
【符号の説明】
【００５２】
１００、２００、３００、４００、５００  モジュール
６００  電子機器
１２３、２２３、２２７、２２９、３２３、３２７、３２９、４２３、４２７、４２９  スイッチ
１９９、２０１、２９９、３０１、３９９、４０１、４９９、５０１  コネクタ
【図１Ａ】
2019020771.tif 000003
【図１Ｂ】
2019020771.tif 000004
【図２Ａ】
2019020771.tif 000005
【図２Ｂ】
2019020771.tif 000006
【図２Ｃ】
2019020771.tif 000007
【図２Ｄ】
2019020771.tif 000008
【図２Ｅ】
2019020771.tif 000009
【図２Ｆ】
2019020771.tif 000010
【図３】
2019020771.tif 000011
【図４】
2019020771.tif 000012
【図５】
2019020771.tif 000013
【図６】
2019020771.tif 000014