(57)【要約】【課題】ホストとしての役割を一方の機器に分担し、デバイスとしての役割を他方の機器に分担する必要がある通信において、フレキシブル且つ適切に、ホスト又はデバイスの役割分担を切換える。【解決手段】ＵＳＢホストとＵＳＢデバイスのいずれの役割も選択的に設定することができるＤＲＤコントローラが備えられる電子機器に、ＵＳＢアプリケーションが備えられる。ＵＳＢアプリケーションは、ＤＲＤコントローラに現在設定されている一方の役割を他方の役割に変更するべきか否かを判断する判断手段と、判断手段の判断結果が肯定的であるときに、ＤＲＤコントローラの現在設定されている一方の役割を他方の役割に変更するようＤＲＤコントローラに要求する役割変更要求手段とを有する。【選択図】　　　　図１
2004118261.tif 000002
【特許請求の範囲】
【請求項１】
他の電子機器と通信可能な電子機器において、
他の電子機器との通信するための通信コントローラであって、通信のマスタとなる通信ホストとしての役割と、通信のスレーブとなる通信デバイスとしての役割とを選択的に行うことができ、他の電子機器と通信可能に接続されたときに、通信ホスト及び通信デバイスのいずれか一方の役割を初期的に設定し、後に、現在設定されている役割を変更することができるように構成されている通信コントローラと、
前記通信コントローラに現在設定されている一方の役割を他方の役割に変更するべきか否かを判断する判断手段と、
前記判断手段の判断結果が肯定的であるときに、前記通信コントローラの前記一方の役割を他方の役割に変更するよう前記通信コントローラに要求する役割変更要求手段と
を備える電子機器。
【請求項２】
前記判断手段は、現在設定されている役割が通信デバイスであるとき、ユーザによって前記電子機器が所定の操作をされた場合に、現在設定されている役割を、通信デバイスから通信ホストに変更するべきであると判断する、
請求項１記載の電子機器。
【請求項３】
前記判断手段は、前記電子機器に関する機器情報に基づいて、現在設定されている一方の役割を他方の役割に変更するべきか否かを判断する、
請求項１記載の電子機器。
【請求項４】
前記判断手段は、前記電子機器と、前記他の電子機器との関係に基づいて、現在設定されている一方の役割を他方の役割に変更するべきか否かを判断する、
請求項１記載の電子機器。
【請求項５】
他の電子機器と通信するための通信コントローラを備えた電子機器の通信制御方法において、
他の電子機器と通信可能に接続されたときに、通信コントローラを、通信のマスタとなる通信ホストと、通信のスレーブとなる通信デバイスとのうちのいずれか一方の役割に初期的に設定するステップと、
前記通信コントローラに現在設定されている一方の役割を他方の役割に変更するべきか否かを判断するステップと、
前記判断するステップによって肯定的な判断結果が得られたときに、前記通信コントローラに現在設定されている前記一方の役割を他方の役割に変更するステップと
を有する通信制御方法。
【請求項６】
前記判断するステップでは、前記通信コントローラに現在設定されている役割が通信デバイスであるとき、ユーザによって前記電子機器が所定の操作をされた場合に、現在設定されている役割を、通信デバイスから通信ホストに変更するべきであると判断する、
請求項５記載の通信制御方法。
【請求項７】
前記判断するステップでは、前記電子機器に関する機器情報に基づいて、現在設定されている一方の役割を他方の役割に変更するべきか否かを判断する、
請求項５記載の通信制御方法。
【請求項８】
前記判断するステップでは、前記電子機器と、前記他の電子機器との関係に基づいて、現在設定されている一方の役割を他方の役割に変更するべきか否かを判断する、
請求項５記載の通信制御方法。
【請求項９】
他の電子機器と通信可能な電子機器に備えられる、他の電子機器と通信するための通信コントローラを制御することができるコンピュータプログラムであって、
前記通信コントローラが、通信のマスタとなる通信ホストとしての役割と、通信のスレーブとなる通信デバイスとしての役割とを選択的に行うことができ、他の電子機器と通信可能に接続されたときに、通信ホスト及び通信デバイスのいずれか一方の役割を初期的に設定し、後に、現在設定されている役割を変更することができるように構成されている場合、
前記通信コントローラに現在設定されている一方の役割を他方の役割に変更するべきか否かを判断するステップと、
前記判断手段の判断結果が肯定的であるときに、前記通信コントローラの前記一方の役割を他方の役割に変更するよう前記通信コントローラに要求するステップと
を前記電子機器のコンピュータに行なわせるコンピュータプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、例えばＵＳＢ　Ｏｎ−Ｔｈｅ−Ｇｏの規格に従う通信コントローラのように、ホストとデバイスのいずれの役割も選択的に設定することができる通信コントローラを備えた電子機器に関する。
【０００２】
【従来の技術】
従来、通信制御を主体的に行なうホストと、ホストからの通信制御に従って通信を行なうデバイスとのいずれか一方の役割を選択的に設定することができる通信コントローラの一例として、ＵＳＢ　Ｏｎ−Ｔｈｅ−Ｇｏの規格に従う通信コントローラがある。この通信コントローラを備えた電子機器（例えば、パーソナルコンピュータや、それの周辺機器であるプリンタ、デジタルカメラ、携帯電話機、ＰＤＡ等）は、他の電子機器と接続されたとき、初期的に、ＵＳＢホストとＵＳＢデバイスのいずれか一方の役割を持つ。
【０００３】
【発明が解決しようとする課題】
ところで、ＵＳＢ　Ｏｎ−Ｔｈｅ−Ｇｏに従う通信を行なうためには、通常、所定の通信ケーブルの一端のプラグを一方の電子機器のレセプタに挿し、他端のプラグを他方の電子機器のレセプタに挿して、電子機器同士を通信ケーブルを介して通信可能に接続する必要がある。このとき、各電子機器がＵＳＢホストとなるかＵＳＢデバイスとなるかは、その電子機器のレセプタに挿されたプラグの形状によって決まってしまう。
【０００４】
しかし、プラグの形状によってＵＳＢホストとなるかＵＳＢデバイスとなるかが決まってしまうのでは使い勝手が良くない。
【０００５】
なぜなら、第１に、ユーザは、通信ケーブルを機器に接続する度に、いちいち、その機器をＵＳＢホストとして又はＵＳＢデバイスとして使用するかに基づいてプラグの形状を意識しなければならないからである。第２に、機能が充実している方の機器をＵＳＢホストにすることが望ましい場合があるが、そのためには、どちらの機器の方が機能的に充実しているかを知らなければならないからである。
【０００６】
このような問題点は、ＵＳＢ　Ｏｎ−Ｔｈｅ−Ｇｏに従う通信に限らず、ホストとしての役割を一方の機器に分担し、デバイスとしての役割を他方の機器に分担する他の通信においても存在し得るものである。
【０００７】
従って、本発明の目的は、ホストとしての役割を一方の機器に分担し、デバイスとしての役割を他方の機器に分担する必要がある通信において、フレキシブル且つ適切に、ホスト又はデバイスの役割分担を切換えることにある。
【０００８】
【課題を解決するための手段】
本発明に従う電子機器は、他の電子機器と通信可能な電子機器において、他の電子機器との通信するための通信コントローラであって、通信のマスタとなる通信ホストとしての役割と、通信のスレーブとなる通信デバイスとしての役割とを選択的に行うことができ、他の電子機器と通信可能に接続されたときに、通信ホスト及び通信デバイスのいずれか一方の役割を初期的に設定し、後に、現在設定されている役割を変更することができるように構成されている通信コントローラと、前記通信コントローラに現在設定されている一方の役割を他方の役割に変更するべきか否かを判断する判断手段と、その判断手段の判断結果が肯定的であるときに、通信コントローラの現在設定されている一方の役割を他方の役割に変更するよう通信コントローラに要求する役割変更要求手段とを備える。
【０００９】
ここで、「通信ホスト」とは、主体的に通信制御を行ないつつ他の電子機器と通信する機器である。また、「通信デバイス」とは、通信ホストからの通信制御に従って他の電子機器と通信する機器である。
【００１０】
本発明の好適な実施形態では、上記判断手段は、現在設定されている役割が通信デバイスであるとき、ユーザによって電子機器が所定の操作をされた場合に、現在設定されている役割を、通信デバイスから通信ホストに変更するべきであると判断する。
【００１１】
本発明の好適な実施形態では、上記判断手段は、上記電子機器（つまり自機）に関する機器情報（例えば、機器の機種、所定時点での自機の電源状態等のステータスなど）に基づいて、現在設定されている一方の役割を他方の役割に変更するべきか否かを判断する。
【００１２】
本発明の好適な実施形態では、上記判断手段は、上記電子機器と、他の電子機器との関係に基づいて、現在設定されている一方の役割を他方の役割に変更するべきか否かを判断する。
【００１３】
本発明の電子機器に備えられる上記判断手段及び上記役割変更要求手段の少なくとも一方は、専用ハードウェア、プログラムされたコンピュータ、又はそれらの組合せのいずれによっても実現することができる。
【００１４】
【発明の実施の形態】
以下、図面を参照して、本発明の一実施形態に係る電子機器が適用されたデジタルカメラ１とプリンタ３とを含んだ通信システムについて説明する。
【００１５】
図１は、本発明の第１の実施形態に係る通信システムを示す。
【００１６】
この通信システムは、ＵＳＢ　Ｏｎ−Ｔｈｅ−Ｇｏに従う通信を行うためのシステムであり、２台のＵＳＢ　Ｏｎ−Ｔｈｅ−Ｇｏ　Ｄｕａｌ　Ｒｏｌｅ　Ｄｅｖｉｃｅ（すなわち、ＵＳＢ　Ｏｎ−Ｔｈｅ−Ｇｏに従う通信においてＵＳＢホストとＵＳＢデバイスのどちらの役割分担も持つことが可能な機器、以下、「ＤＲＤ」と言う）、例えば、デジタルカメラ１と、プリンタ（例えばインクジェットプリンタ或いはレーザプリンタ等）３とが、通信ケーブル３５を介して通信可能に接続される。
【００１７】
通信ケーブル３５の一端には、所定の形状をした第１のプラグ３１があり、他端には、第１のプラグ３１とは別の形状をした第２のプラグ３３がある。第１のプラグ３１の形状は、薄型の直方体であり、このプラグ３１が挿された機器では、デフォルトで、ＵＳＢホストとして決定される（この観点から、第１のプラグ３１を、以下、「ｍｉｎｉ−Ａプラグ３１」と称する）。一方、第２のプラグ３３の形状は、ｍｉｎｉ−Ａプラグ３１よりも厚みのある角柱状になっており、このプラグ３３が挿された機器では、デフォルトで、ＵＳＢデバイスとして決定される（この観点から、第２のプラグ３３を、以下、「ｍｉｎｉ−Ｂプラグ３３」と称する）。
【００１８】
デジタルカメラ１は、レセプタ１６と、コントロールパネル５と、ＤＲＤコントローラ１０と、ＵＳＢアプリケーション７とを備える。同様に、プリンタ３も、レセプタ３７と、コントロールパネル１９と、ＤＲＤコントローラ３０と、ＵＳＢアプリケーション２１とを備える。デジタルカメラ１とプリンタ３の上記各種構成要素は、名称が同一のものは、参照番号が異なっていても特徴的には同じなので、以下、デジタルカメラ１の構成要素を代表的に説明する。
【００１９】
レセプタ１６は、「ｍｉｎｉ−ＡＢ」というレセプタであり、ｍｉｎｉ−Ａプラグ３１とｍｉｎｉ−Ｂプラグ３３の双方を挿入することができるように、挿入口が凸型形状をしている。
【００２０】
コントロールパネル５は、デジタルカメラ１を操作するためのユーザインターフェースである。このコントロールパネル５を操作すれば、デジタルカメラ１に日時を設定したり、デジタルカメラ１内（又はデジタルカメラ１に挿されている可搬式の記録媒体内）で保存されている撮影画像を削除したり、その撮影画像を印刷することを命じたりすることができる。
【００２１】
ＤＲＤコントローラ１０は、デジタルカメラ１をＵＳＢホストとＵＳＢデバイスのいずれにするかを決定したり、通信相手機器であるプリンタ３とのＵＳＢ　Ｏｎ−Ｔｈｅ−Ｇｏに従う通信を制御したりするものである。ＤＲＤコントローラ１０は、デジタルカメラ１のＵＳＢホストとしての通信を制御するＵＳＢホストコントローラ１１と、デジタルカメラ１のＵＳＢデバイスとしての通信を制御するＵＳＢデバイスコントローラ１３と、通信相手機器のＤＲＤコントローラ（この実施形態ではプリンタ３のＤＲＤコントローラ３０）とネゴシエーションするネゴシエーション部１５とを有している。ＤＲＤコントローラ１０は、レセプタ１６にどのようなプラグが挿されたかを検出することができ、検出の結果、挿されたプラグがｍｉｎｉ−Ａプラグ３１であれば、デジタルカメラ１の役割分担をＵＳＢホストと決定してＵＳＢホストコントローラ１１を起動する（つまりデフォルトでデジタルカメラ１の役割分担をＵＳＢホストと決定する）。一方、挿されたプラグがｍｉｎｉ−Ｂプラグ３３であれば、ＤＲＤコントローラ１０は、デジタルカメラ１の役割分担をＵＳＢデバイスと決定してＵＳＢデバイスコントローラ１３を起動する（つまりデフォルトでデジタルカメラ１の役割分担をＵＳＢデバイスと決定する）。また、ＤＲＤコントローラ１０は、ＵＳＢアプリケーション７から、ＨＮＰ（Ｈｏｓｔ　Ｎｅｇｏｔｉａｔｉｏｎ　Ｐｒｏｔｏｃｏｌ）の要求、すなわち、デジタルカメラ１の現在の役割分担がＵＳＢデバイスであるときにその役割分担をＵＳＢホストに切換えることの役割分担切換え要求を受けた場合、ネゴシエーション部１５を起動する。ネゴシエーション部１５によって、通信相手機器のＤＲＤコントローラのネゴシエーション部とのネゴシエーションが行なわれる。ＤＲＤコントローラ１０は、ネゴシエーションの結果が成功であれば、その旨をＵＳＢアプリケーション７に通知すると共に、デジタルカメラ１の役割分担をＵＳＢデバイスからＵＳＢホストに変更してＵＳＢホストコントローラ１１を起動し、反対に、ネゴシエーションの結果が失敗であれば、その旨をＵＳＢアプリケーション７に通知すると共に、デジタルカメラ１の役割分担をＵＳＢデバイスに維持する。
【００２２】
ＵＳＢアプリケーション７は、ＤＲＤコントローラ１０と会話して（相互通信して）、デジタルカメラ１の現在の役割分担を検出することができる。ＵＳＢアプリケーション７は、コントロールパネル５がユーザによって所定の操作がされた場合にそれを検出し、デジタルカメラ１の現在の役割分担がＵＳＢデバイスであるならば、ＨＮＰの要求（すなわち、上記役割分担切換え要求）をＤＲＤコントローラ１０に出力する。また、ＵＳＢアプリケーション７は、ＨＮＰの要求の後、ＤＲＤコントローラ１０からネゴシエーション成功の通知を受けた場合には、ユーザによるコントロールパネル５の操作に従って処理を実行し、反対に、ネゴシエーション失敗の通知をＤＲＤコントローラ１０から受けた場合には、所定のエラー処理を実行する。ネゴシエーションに失敗する場合として、例えば、通信相手機器が所定の処理を実行中であるとか、通信相手機器が必ずＵＳＢホストとして動作しなければならない等が考えられ、エラー処理としては、例えば、「相手機器がビジー状態です。しばらくお待ちください。」というエラーメッセージや「相手機器を操作してください」というエラーメッセージをデジタルカメラ１のディスプレイ画面（図示せず）に表示する処理等が考えられる。このＵＳＢアプリケーション７は、ＡＳＩＣのような専用ハードウェア、プログラムされたコンピュータ、又はそれらの組合せのいずれによっても実現することができる。
【００２３】
以下、図２を参照して、ＵＳＢアプリケーション７の動作流れについて説明する。
【００２４】
図２は、ＵＳＢアプリケーション７の動作の流れを示す。なお、以下の説明では、ステップを「Ｓ」と略記する。
【００２５】
デジタルカメラ１には、デフォルトで又はその後のＨＮＰの実行により、ＵＳＢホストとＵＳＢデバイスのいずれかの役割が分担されている。
【００２６】
ＵＳＢアプリケーション７は、コントロールパネル５がユーザによって所定の操作（例えば印刷命令）がされた場合にそれを検出する（Ｓ１でＹ）。そのとき、デジタルカメラ１の現在の役割分担がＵＳＢホストであるならば、ＵＳＢアプリケーション７は、ユーザの操作に応じた処理を実行し（Ｓ６）、一方、デジタルカメラ１の現在の役割分担がＵＳＢデバイスであるならば、ＤＲＤコントローラ１０へＨＮＰを要求する（すなわち、上記役割分担切換え要求を出力する）（Ｓ３）。これにより、ＤＲＤコントローラ１０のネゴシエーション部１５と、通信相手機器のＤＲＤコントローラのネゴシエーション部（この実施形態ではプリンタ３のＤＲＤコントローラ３０のネゴシエーション部２５）との間で、以下のネゴシエーション、すなわち、デジタルカメラ１の役割分担をＵＳＢデバイスからＵＳＢホストへ切換え、且つ、プリンタ３の役割分担をＵＳＢホストからＵＳＢデバイスへ切換えるネゴシエーションが行なわれる。
【００２７】
このネゴシエーションが成功したならば（Ｓ４でＹ）、デジタルカメラ１の役割分担は、ＵＳＢデバイスからＵＳＢホストへ切換えられ、ＵＳＢアプリケーション７は、ＤＲＤコントローラ１０からネゴシエーション成功の通知を受ける。その場合、ＵＳＢアプリケーション７は、ユーザの操作に応じた処理を実行する（Ｓ６）。
【００２８】
一方、そのネゴシエーションが失敗したならば（Ｓ４でＮ）、デジタルカメラ１の役割分担は、ＵＳＢデバイスに維持され、ＵＳＢアプリケーション７は、ＤＲＤコントローラ１０からネゴシエーション失敗の通知を受ける。その場合、ＵＳＢアプリケーション７は、上に例示したような所定のエラー処理を実行する（Ｓ５）。
【００２９】
以上が、デジタルカメラ１のＵＳＢアプリケーション７の動作の流れである。
【００３０】
なお、詳しい説明はしないが、プリンタ３のＵＳＢアプリケーション２１も略同様の動作を行なう。すなわち、ユーザがプリンタ３のコントロールパネル１９を用いて所定の操作をしたならば、ＵＳＢアプリケーション２１がそれを検出し、プリンタ３の役割分担がＵＳＢデバイスならばそれをＵＳＢホストに切換えるためのＨＮＰを要求する。その要求に応答して行なわれるネゴシエーションが成功したならば、プリンタ３の役割分担は、ＵＳＢデバイスからＵＳＢホストに切換わり、プリンタ３は、主体的に通信を制御することができる。
【００３１】
また、ＵＳＢデバイスには、ストレージクラス、ＨＩＤクラス、ＳＴＩクラス及びプリンタクラスなどがあり、ＵＳＢデバイスとしての役割が設定される場合には、いずれか１つのクラス（例えばストレージクラス或いは複数のクラス）が設定されるが、設定されるクラスは自由に設計変更可能である。
【００３２】
この第１の実施形態によれば、機器１及び３は、たとえデフォルトではＵＳＢデバイスの役割分担になっていても、ユーザに所定の操作がされれば、自動的に、ＵＳＢデバイスからＵＳＢホストの役割分担に切換わることができる。これにより、ユーザは、機器１、３に挿すプラグ３１又は３３の形状を意識しなくても、自分が操作する方の機器１又は３をＵＳＢホストとして使用することができるので便利である。
【００３３】
ところで、本発明には、例えば以下の第２、第３の実施形態が考えられる。以下、第２及び第３の実施形態について説明する。なお、その説明では、上記第１の実施形態との相違点（具体的にはＵＳＢアプリケーションの動作）を重点的に説明し、共通点についての説明は簡略或いは省略する。
【００３４】
図３は、第２の実施形態でのＵＳＢアプリケーション７の動作の流れを示す。
【００３５】
第２の実施形態では、デジタルカメラ１のＵＳＢアプリケーション７（プリンタ３のＵＳＢアプリケーション２１も同様）は、第１の実施形態での動作に代えて或いは加えて、以下のように動作することが可能である。すなわち、ＵＳＢアプリケーション７は、デジタルカメラ１の機器情報（例えば、デジタルカメラ１内に予め用意されているデータ、機能、電源の状態、印刷ジョブの特性等）に基づいて、デジタルカメラ１の役割分担をどの役割分担にするべきかを判断し、その判断に応じた役割分担を持つことを、ＤＲＤコントローラ１０に要求することができる。
【００３６】
具体的に言うと、ＵＳＢアプリケーション７は、デジタルカメラ１の機器情報（例えば、デジタルカメラ１に、デジタルカメラ１がＵＳＢホストとなるべき旨を示す情報）に基づいて、デジタルカメラ１はＵＳＢホストになるべきであると判断した場合、デジタルカメラ１が既にＵＳＢホストの役割分担を持っているときは（Ｓ１１でＹ）、通常の処理（例えば、待ち状態）を実行する（Ｓ１５）。一方、その場合において、デジタルカメラ１がＵＳＢデバイスの役割分担を持っているときは（Ｓ１１でＮ）、ＵＳＢアプリケーション７は、ＤＲＤコントローラ１０へＨＮＰを要求する（Ｓ１２）。その結果、ネゴシエーションが成功であれば、デジタルカメラ１の役割分担はＵＳＢデバイスからＵＳＢホストに切換わって、ＵＳＢアプリケーション７は、通常の処理を実行し（Ｓ１５）、ネゴシエーションが失敗であれば、所定のエラー処理を実行する（Ｓ１４）。
【００３７】
以上が、第２の実施形態でのＵＳＢアプリケーション７の動作である。なお、ＵＳＢアプリケーション７は、デジタルカメラ１はＵＳＢデバイスになるべきであると判断した場合でも、以上のような動作と実質的に同様の動作を実行することができる。
【００３８】
この第２の実施形態によれば、ＵＳＢホストとなった方が望ましい機器１又は３が、その機器にどのプラグ３１又は３３が挿されたかに関わらず、自動的にＵＳＢホストの役割分担を持つことができる（同様に、ＵＳＢデバイスとなった方が望ましい機器１又は３が、その機器にどのプラグ３１又は３３が挿されたかに関わらず、自動的にＵＳＢデバイスの役割分担を持つことができる）。この実施形態でも、ユーザは、機器１、３に挿すプラグ３１又は３３の形状を意識しなくても良いの便利である。
【００３９】
図４は、第３の実施形態でのＵＳＢアプリケーション７の動作の流れを示す。
【００４０】
第３の実施形態では、デジタルカメラ１のＵＳＢアプリケーション７（プリンタ３のＵＳＢアプリケーション２１も同様）は、第１及び第２の少なくとも一方の実施形態での動作に代えて或いは加えて、以下のように動作することが可能である。すなわち、ＵＳＢアプリケーション７は、ＤＲＤコントローラ１０を介して、通信相手機器であるプリンタ３に関するプリンタ情報をプリンタ３から取得し、デジタルカメラ１に関するカメラ情報と、取得したプリンタ情報とを比較して、その比較の結果に基づいて（換言すれば、デジタルカメラ１とその通信相手機器であるプリンタ３との関係に基づいて）、デジタルカメラ１の現在の役割分担を切換える必要があるか否かを判断することができる。
【００４１】
具体的に言うと、ＵＳＢアプリケーション７は、ＤＲＤコントローラ１０に、プリンタ３と通信して、プリンタ３からプリンタ情報（例えば、プリンタ３の性能、電源等の状態、データの種類など）を取得することを命令し、その命令に応答してプリンタ情報を取得したならば、カメラ情報とプリンタ情報とを比較して、その比較の結果に基づいて、どちらの機器１又は３がＵＳＢホストとなるかを決定する（Ｓ３１）。より具体的には、ＵＳＢアプリケーション７は、カメラ情報とプリンタ情報とを比較して、両機器１、３の性能の差、両機器１、３の機種の関係、及び、両機器１、３の電源等の状態の少なくとも１つの機器関係状況を検出し、その検出の結果と、所定の条件とに基づいて、どちらの機器１又は３がＵＳＢホストとなるかを決定する（例えば、機能的に優れている方の機器（具体例としては、印刷を命じる際により詳細な条件設定をすることができる方の機器）をＵＳＢホストに決定する）。
【００４２】
Ｓ３１の結果、デジタルカメラ１の現在の役割分担を切換える必要がなければ（Ｓ３２でＮ）、ＵＳＢアプリケーション７は、通常の動作をし（Ｓ３６）、一方、デジタルカメラ１の現在の役割分担を切換える必要があれば（Ｓ３２でＹ）、ＤＲＤコントローラ１０へＨＮＰを要求する。その後の動作は、第２の実施形態と略同様である。
【００４３】
この第３の実施形態によれば、通信相手機器との関係に基づいて、各機器の役割分担が決まる（例えば、機能的に優れている方の機器が、ＵＳＢホストとなって、使い易くなる）。これにより、この実施形態でも、ユーザは、機器１、３に挿すプラグ３１又は３３の形状を意識しなくても良いの便利である。
【００４４】
以上、本発明の好適な幾つかの実施形態を説明したが、これらは本発明の説明のための例示であって、本発明の範囲をこれらの実施形態にのみ限定する趣旨ではない。本発明は、他の種々の形態でも実施することが可能である。すなわち、本発明は、ＵＳＢ　Ｏｎ−Ｔｈｅ−Ｇｏに従う通信に限らず、ホストとしての役割を一方の機器に分担し、デバイスとしての役割を他方の機器に分担する必要がある他の通信においても適用し得る。
【００４５】
また、例えば、デフォルトで通信デバイスとしての役割を持った一方の電子機器の役割が通信デバイスから通信ホストに切り替わった後、その一方の電子機器が通信ホストとして通信することを継続的に行っていれば、通信ホストとしての役割が維持され、反対に、その一方の電子機器が通信ホストとして通信を行わないようなとき（例えば、役割が切り替わってから一定時間が過ぎてもユーザに所定の操作が行われないとき）、一方の電子機器の役割は通信ホストから通信デバイスに戻り、それに伴って、他方の電子機器の役割が通信デバイスから通信ホストに戻っても良い。別の言い方をすれば、一方の電子機器が、通信を活性とすることで通信ホストとしての役割を維持し、例えばユーザの操作に応じた処理が終了する等して、その一方の電子機器の通信が非活性となった時点で、一方の電子機器の役割が通信デバイスに戻って、他方の電子機器の役割が通信ホストに戻っても良い。
【図面の簡単な説明】
【図１】本発明の第１の実施形態に係る通信システムを示すブロック図。
【図２】本発明の第１の実施形態でのＵＳＢアプリケーション７の動作の流れを示す図。
【図３】本発明の第２の実施形態でのＵＳＢアプリケーション７の動作の流れを示す図。
【図４】本発明の第３の実施形態でのＵＳＢアプリケーション７の動作の流れを示す図。
【符号の説明】
１　デジタルカメラ
３　プリンタ
５、１９　コントロールパネル
７、２１　ＵＳＢアプリケーション
１０、３０　ＤＲＤコントローラ
１１、１７　ＵＳＢホストコントローラ
１３、２３　ＵＳＢデバイスコントローラ
１５、２５　ネゴシエーション部
１６、３７　レセプタ
３１　ｍｉｎｉ−Ａプラグ
３３　ｍｉｎｉ−Ｂプラグ
３５　通信ケーブル
【図１】
2004118261.tif 000003
【図２】
2004118261.tif 000004
【図３】
2004118261.tif 000005
【図４】
2004118261.tif 000006