(57)【要約】【課題】ホスト装置に電子機器が接続されたときに、エニュメレーションに関する処理を高速に実行できる電子機器を提供する。【解決手段】電子機器（１）は、ＵＳＢインターフェースを介してホスト装置（１０）へ接続されてＵＳＢファンクションとして動作可能である。電子機器（１）は、電子機器（１）の機能を示す情報であるディスクリプタを格納する格納部（１４）と、ディスクリプタをホスト装置（１０）へ送信する送信部（８）と、ホスト装置（１０）によって出力される、一時停止を示す信号であるサスペンド信号を検出する検出部（７ｂ）と、電子機器（１）とホスト装置（１０）との間のエニュメレーションにおいて、送信部（８）がディスクリプタをホスト装置（１０）へ送信した後、検出部（７ｂ）がサスペンド信号を検出したとき、その検出結果に基づいて所定の処理を実行する制御部（７）と、を備える。【選択図】図５Ｂ
2013175167.tif 000002
【特許請求の範囲】
【請求項１】
ＵＳＢインターフェースを介してホスト装置へ接続されてＵＳＢファンクションとして動作可能な電子機器であって、
前記電子機器の機能を示す情報であるディスクリプタを格納する格納部と、
前記ディスクリプタを前記ホスト装置へ送信する送信部と、
前記ホスト装置によって出力される、一時停止を示す信号であるサスペンド信号を検出する検出部と、
前記電子機器と前記ホスト装置との間のエニュメレーションにおいて、前記送信部が前記ディスクリプタを前記ホスト装置へ送信した後、前記検出部が前記サスペンド信号を検出したとき、前記検出結果に基づいて所定の処理を実行する制御部と、
を備える電子機器。
【請求項２】
前記格納部は、互いに異なる機能を示す２つのディスクリプタを格納し、
前記制御部は、前記送信部が前記２つのディスクリプタうちの一方のディスクリプタを前記ホスト装置へ送信した後、前記検出部が前記サスペンド信号を検出したとき、前記所定の処理として、
前記ホスト装置へ送信すべきディスクリプタを、前記２つのディスクリプタうちの前記一方のディスクリプタから他方のディスクリプタに変更し、
前記電子機器と前記ホスト装置との間の通信を初期化する、
請求項１記載の電子機器。
【請求項３】
前記電子機器と前記ホスト装置との間の接続状態を管理する状態管理部をさらに備え、
前記制御部は、前記エニュメレーションにおいて、前記送信部が前記ディスクリプタを前記ホスト装置へ送信した後、前記検出部が前記サスペンド信号を検出したとき、前記検出結果と前記接続状態とに基づいて、前記所定の処理を実行する、
請求項１記載の電子機器。
【請求項４】
前記制御部は、前記所定の処理として、前記電子機器と前記ホスト装置との間の通信を終了する、
請求項１記載の電子機器。
【請求項５】
ホスト装置へ接続可能な電子機器であって、
前記ホスト装置は、前記電子機器の機能に非対応であるときに所定の信号を前記電子機器に送信する装置であって、
前記電子機器は、
前記電子機器の機能を示す情報である機能情報を格納する格納部と、
前記機能情報を前記ホスト装置へ送信する送信部と、
前記所定の信号を検出する検出部と、
前記電子機器と前記ホスト装置との間の通信を確立するための処理において、前記機能情報が前記ホスト装置へ送信された後、前記検出部が前記所定の信号を検出したとき、前記検出結果に基づいて所定の処理を実行する制御部と、
を備える電子機器。
【請求項６】
ＵＳＢインターフェースを介してホスト装置へ接続されてＵＳＢデバイスとして動作可能な電子機器であって、
それぞれが複数の機能を示す複数のディスクリプタを格納する格納部と、
前記複数のディスクリプタのうちの第１のディスクリプタを前記ホスト装置へ送信する送信部と、
前記ホスト装置から出力されるサスペンド信号を検出する検出部と、
前記送信部が前記第１のディスクリプタを前記ホスト装置へ送信した後、前記検出部が前記サスペンド信号を検出したとき、前記送信部が前記複数のディスクリプタのうち別のディスクリプタを前記ホスト装置へ送信するよう、前記送信部を指示する制御部と
を備える、
電子機器。
【請求項７】
前記制御部は、エニュメレーションにおいて、前記検出部が前記ホスト装置からのサスペンド信号を検出しなくなり、かつ前記電子機器と前記ホスト装置との間の接続が確立されるまで、前記制御部が前記複数のディスクリプタのうちの別のディスクリプタを前記ホスト装置へ送信するよう、前記制御部を繰り返し指示する、
請求項６記載の電子機器。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、ＵＳＢ（Universal Serial Bus）インターフェースを介して外部機器と接続できる電子機器に関する。
【背景技術】
【０００２】
ＵＳＢインターフェースを介して外部機器と接続できる電子機器として、ＵＳＢデバイスが知られている。そして、複数の機能を備えるＵＳＢデバイスが知られている。複数の機能を備えるＵＳＢデバイスは、各機能を示す情報として複数のＵＳＢディスクリプタ（以下、「ディスクリプタ」という）を格納している。
【０００３】
このようなＵＳＢデバイスとホスト装置との間の通信を確立するための各種手法が提案されている。例えば特許文献１は次のようなＵＳＢファンクション装置（ＵＳＢデバイス）を開示する。ＵＳＢファンクション装置は、ホスト装置に接続されると、ホスト装置からディスクリプタを要求される。ＵＳＢファンクション装置は、この要求に対して、複数の機能の中から使用者によって予め選択された１つの機能を示すディスクリプタをホスト装置へ送信する。ホスト装置が送信されたディスクリプタによって示される機能に対応していない場合、一定時間後、ＵＳＢファンクション装置は別のディスクリプタを選択する。ここで、別のディスクリプタによって示される機能は、先に送信されたディスクリプタによって示される機能とは異なる。そしてＵＳＢファンクション装置はＵＳＢファンクション装置とホスト装置との間の通信を初期化するＵＳＢバスリセットを発生させる。ＵＳＢファンクション装置は、ＵＳＢバスリセット後の再接続時に、ホスト装置からのディスクリプタの要求に対して、選択した別のディスクリプタをホスト装置へ送信する。
【０００４】
このような構成により、特許文献１記載のＵＳＢファンクション装置は、ホスト装置との接続を確立する可能性を向上させる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００５−７８３０４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかし、特許文献１に記載された従来のＵＳＢファンクション装置には、ホスト装置との通信を確立するための処理（エニュメレーション）に時間がかかる恐れがあるという利便性の悪さがある。これは以下に述べる理由による。
【０００７】
ＵＳＢファンクション装置がディスクリプタをホスト装置に送信しても、ホスト装置がそのディスクリプタによって示される機能に対応していない場合、ホスト装置とＵＳＢファンクション装置との間の通信は開始されない。ＵＳＢファンクション装置は、通信がいつまでも開始されない事態を回避するため、ディスクリプタの送信後、所定時間内にホスト装置からの応答がない場合（タイムアウト）、ホスト装置が送信されたディスクリプタによって示される機能に対応していないと判断する。その場合、ＵＳＢファンクション装置は、ＵＳＢファンクション装置内で現在設定されている機能から別の機能に切り替えてから、ＵＳＢバスリセットを発生させる。そしてＵＳＢファンクション装置は、再接続後に別の機能に対応するディスクリプタをホスト装置に送信する。このような動作が行われるので、ＵＳＢファンクション装置は、ホスト装置が対応していない機能を示すディスクリプタを送信した場合、所定時間が経過するまで機能を切り替えて再接続することができない。よって、ＵＳＢファンクション装置とホスト装置との間のエニュメレーションに時間がかかる。
【０００８】
本開示は、ホスト装置に電子機器が接続されたときに、エニュメレーションに関する処理を高速に実行できる電子機器を提供する。
【課題を解決するための手段】
【０００９】
ＵＳＢデバイスを制御する機能を備えたホスト装置としてパーソナルコンピュータ（ＰＣ）が知られている。このようなＰＣは、ＵＳＢデバイスがＰＣに接続されると、ディスクリプタをＵＳＢデバイスに要求する。この要求に対して、ＵＳＢデバイスは予め使用者によって選択された機能を示すディスクリプタをＰＣに送信する。送信されたディスクリプタに対するＰＣの応答は、ＰＣを制御するソフトウェアであるオペレーティング・システム（ＯＳ）によって異なる。
【００１０】
ＰＣ（または、ＰＣを制御するＯＳ）が、ＰＣへ送信されたディスクリプタにＰＣが対応していないと判断したとき、即座に、一時停止（サスペンド）を示す信号をＵＳＢデバイスに送信するＰＣ（ＯＳ）が存在する。
【００１１】
従来のＵＳＢデバイスは、このようなＯＳによって制御されるＰＣにＵＳＢインターフェースを介して接続されるときにも、既に述べたように、エニュメレーションに時間がかかりうるという問題がある。
【００１２】
本開示における第１の電子機器は、ＵＳＢインターフェースを介してホスト装置へ接続されてＵＳＢファンクションとして動作可能である。電子機器の機能を示す情報であるディスクリプタを格納する格納部と、ディスクリプタをホスト装置へ送信する送信部と、ホスト装置によって出力される、一時停止を示す信号であるサスペンド信号を検出する検出部と、電子機器とホスト装置との間のエニュメレーションにおいて、送信部がディスクリプタをホスト装置へ送信した後、検出部がサスペンド信号を検出したとき、検出結果に基づいて所定の処理を実行する制御部と、を備える。
【００１３】
また、本開示における第２の電子機器は、ホスト装置へ接続可能である。ホスト装置は、電子機器の機能に非対応であるときに所定の信号を電子機器に送信する。電子機器は、電子機器の機能を示す情報である機能情報を格納する格納部と、機能情報をホスト装置へ送信する送信部と、所定の信号を検出する検出部と、電子機器とホスト装置との間の通信を確立するための処理において、機能情報がホスト装置へ送信された後、検出部が所定の信号を検出したとき、検出結果に基づいて所定の処理を実行する制御部と、を備える。
【００１４】
また、本開示における第３の電子機器は、ＵＳＢインターフェースを介してホスト装置へ接続されてＵＳＢデバイスとして動作可能である。電子機器は、それぞれが複数の機能を示す複数のディスクリプタを格納する格納部と、複数のディスクリプタのうちの第１のディスクリプタをホスト装置へ送信する送信部と、ホスト装置から出力されるサスペンド信号を検出する検出部と、送信部が第１のディスクリプタをホスト装置へ送信した後、検出部がサスペンド信号を検出したとき、送信部が複数のディスクリプタのうち別のディスクリプタをホスト装置へ送信するよう、送信部を指示する制御部とを備える。
【発明の効果】
【００１５】
本開示における電子機器は、送信部を介してディスクリプタをホスト装置へ送信した後、検出部がサスペンド信号を検出したとき、その検出結果に基づいて、所定の処理を実行する。これにより、電子機器は、ホスト装置に接続されたときに、エニュメレーションに関する処理を、タイムアウトを検出する電子機器より高速に実行できる。
【図面の簡単な説明】
【００１６】
【図１】本実施形態のデジタルカメラの構成の一部と、デジタルカメラおよびパーソナルコンピュータの接続とを説明するための図。
【図２】本実施形態のデジタルカメラの電気的構成を示すブロック図。
【図３Ａ】デジタルカメラとパーソナルコンピュータとの間のＵＳＢインターフェースを介した通信が確立されるまでの一般的な動作を説明するためのシーケンスチャート。
【図３Ｂ】本実施形態のデジタルカメラとパーソナルコンピュータとの間のＵＳＢインターフェースを介した通信が確立されるまでの動作を説明するためのシーケンスチャート。
【図４】本実施形態における、エニュメレーションにおけるデジタルカメラの状態遷移を説明するための図。
【図５Ａ】本実施形態のデジタルカメラがパーソナルコンピュータへのＵＳＢインターフェースを介した接続を確立するための一連の動作（エニュメレーション）を説明するための第１のフローチャート。
【図５Ｂ】本実施形態のデジタルカメラがパーソナルコンピュータへのＵＳＢインターフェースを介した接続を確立するための一連の動作（エニュメレーション）を説明するための第２のフローチャート。
【発明を実施するための形態】
【００１７】
以下、添付の図面を参照しながら、実施形態について説明する。以下、ホスト装置としてパーソナルコンピュータを例示し、電子機器として、パーソナルコンピュータにＵＳＢインターフェースを介して接続できるデジタルカメラを例示する。
【００１８】
ただし、必要以上に詳細な説明は省略される場合がある。例えば、既によく知られた事項の詳細な説明および実質的に同一の構成に対する重複した説明は省略される。以下の説明が不必要に冗長になることを避けることが、当業者の理解を容易にするからである。
【００１９】
なお、発明者（ら）は、当業者が本開示を充分に理解できるよう以下の説明および添付の図面を開示するのであって、以下の説明および添付の図面によって特許請求の範囲の主題を限定することを意図しない。
【００２０】
＜１．デジタルカメラの構成＞
本実施形態のデジタルカメラについて説明する。
【００２１】
＜１−１．デジタルカメラの外装の構成＞
図１は、本実施形態のデジタルカメラと、そのデジタルカメラに接続されたパーソナルコンピュータとを示す図である。デジタルカメラ１は、外部機器であるパーソナルコンピュータ（以下、「ＰＣ」という）１０と、ＵＳＢケーブル９を介して接続されることが可能である。このＵＳＢ接続において、ＰＣ１０がホスト（ＵＳＢホスト装置）であり、デジタルカメラ１がファンクション（ペリフェラル、ＵＳＢデバイス）である。
【００２２】
デジタルカメラ１は、液晶モニタ５と、ＬＥＤ１１と、操作部１５とを備える。操作部１５は電源スイッチ１５ａと、シャッター釦１５ｂと、決定釦１５ｃと、カーソルキー１５ｄと、メニュー釦１５ｅとを含む。
【００２３】
液晶モニタ５は撮像済みの画像やスルー画像を表示する表示手段である。操作部１５は、使用者の操作を受け付ける。電源スイッチ１５ａは、デジタルカメラ１の電源のＯＮ／ＯＦＦを切り替えるためのスイッチであり、本図の両矢印の方向に移動可能である。電源スイッチ１５ａが両矢印のＯＮ側に移動されると電源はＯＮ状態になり、電源スイッチ１５ａが両矢印のＯＦＦ側に移動されると電源はＯＦＦ状態になる。シャッター釦１５ｂは、デジタルカメラ１のシャッターを動作させるための釦である。シャッター釦１５ｂが押下されるとシャッターが動作する。カーソルキー１５ｄは、液晶モニタ５に表示される画像内のカーソルを移動させるためのキーである。決定釦１５ｃは、カーソルによって選択された項目の確定等を行うための釦である。メニュー釦１５ｅは、液晶モニタ５に表示される画像内に設定メニュー等を表示するための釦である。
【００２４】
なお、デジタルカメラ１は液晶モニタ５の代わりに例えば有機ＥＬ表示パネルを備えてもよい。また、デジタルカメラ１は、これらの表示部材に限らず、画像を表示できる任意のデバイスを備えてもよい。
【００２５】
ＬＥＤ１１は、点灯することにより、バッテリが充電中であることを使用者に提示する。この目的のために、ＬＥＤ１１は、ＰＣ１０とデジタルカメラ１とがＵＳＢケーブル９で接続された場合に、デジタルカメラ１のバッテリがＰＣ１０から供給される５Ｖの電圧で充電されている間、点灯する。
【００２６】
＜１−２．デジタルカメラ内部の構成＞
デジタルカメラ１の構成について説明する。
図２は、デジタルカメラ１の電気的構成を示すブロック図である。デジタルカメラ１は、撮像部２と、画像処理部３と、メモリカード４と、システム制御部６と、ＵＳＢ制御部７と、ＵＳＢコネクタ８と、電源制御部１２と、バッテリ１３と、ＲＡＭ／ＲＯＭ１４とを備える。
【００２７】
撮像部２は、被写体の光学的信号を電気的信号に変換して画像データを生成する。撮像部２はレンズおよびＣＣＤ等で構成される。
【００２８】
画像処理部３は、撮像部２によって生成された画像データに所定の処理を施す。例えば、画像処理部３は画像データに拡大処理、縮小処理、圧縮処理（ＪＰＥＧ圧縮等）および／または伸長処理等を施す。画像処理部３は、処理を施した画像データを液晶モニタ５、メモリカード４および／またはシステム制御部６に出力する。
【００２９】
メモリカード４は画像処理部３から出力された画像データを格納する。また、メモリカード４は格納した画像データを画像処理部３に出力する。メモリカード４は半導体メモリ（フラッシュメモリ、強誘電体メモリ等）等で構成される。
【００３０】
システム制御部６は、デジタルカメラ１の各部を制御する制御部であり、ＣＰＵ等で構成される。システム制御部６は、操作部１５によって受け付けられた操作に基づいて、撮像部２、画像処理部３およびＵＳＢ制御部７を制御する。
【００３１】
ＵＳＢコネクタ８は、ＵＳＢケーブル９を接続するコネクタである。
【００３２】
ＵＳＢ制御部７はＵＳＢ規格に準拠した通信を制御する手段である。ＵＳＢ制御部７は、状態管理部７ａと、サスペンド検出部７ｂと、ディスクリプタ切り替え部７ｃと、バスリセット発生・検出部７ｄと、ＶＢＵＳ検出部７ｅと、通信制御部７ｆとを含む。
【００３３】
状態管理部７ａはＵＳＢ接続時のデジタルカメラ１の状態を管理する。サスペンド検出部７ｂはＰＣ１０の一時停止状態（サスペンド状態）を検出する。ディスクリプタ切り替え部７ｃは、デジタルカメラ１がデバイス・ディスクリプタ要求をＰＣ１０から受信したときにデジタルカメラ１がＰＣ１０に送信するデバイス・ディスクリプタ（後述）を決定する。バスリセット発生・検出部７ｄは、デジタルカメラ１とＰＣ１０との間のＵＳＢインターフェースを介した通信をデジタルカメラ１側からリセットする（バスリセット）ための制御を行う。ＶＢＵＳ検出部７ｅは、デジタルカメラ１がＰＣ１０にＵＳＢケーブル９を介して接続されたとき、ＵＳＢケーブル９のＶＢＵＳ信号線を通じてＰＣ１０から供給される５Ｖ電圧（以下、「ＶＢＵＳ」ともいう）を検出する。ＶＢＵＳ検出部７ｅは、ＶＢＵＳを検出することにより、デジタルカメラ１とＰＣ１０とのＵＳＢコネクタ８を介した接続を検出する。通信制御部７ｆはＰＣ１０とデジタルカメラ１との間の通信を制御する。
【００３４】
電源制御部１２は、バッテリ１３および／またはＡＣ電源の電圧を検出し、デジタルカメラ１の動作に必要な電力をデジタルカメラ１の各部へ供給するよう、バッテリ１３および／またはＡＣ電源を制御する。
【００３５】
また、電源制御部１２は、ＰＣ１０とデジタルカメラ１とがＵＳＢケーブル９で接続された場合、ＰＣ１０の５Ｖの電源によるバッテリ１３の充電を制御する。
【００３６】
ＲＡＭ／ＲＯＭ１４は、揮発性のＲＡＭと、読み出し専用の不揮発性のＲＯＭとを含む。ＲＡＭは、デジタルカメラ１内で扱われる画像データおよびその他のデータを一時的に格納する。ＲＯＭはあらかじめ決められた不変の情報と、システム制御部６が実行するプログラム等とを格納している。また、ＲＯＭは、ＵＳＢ接続においてＵＳＢ制御部７によって使用される複数のデバイス・ディスクリプタと、複数のコンフィグレーション・ディスクリプタとを格納している。
【００３７】
本実施形態のデバイス・ディスクリプタおよびコンフィグレーション・ディスクリプタはＵＳＢ規格に則った形式を有する情報である。
【００３８】
本実施形態のデジタルカメラ１のＲＡＭ／ＲＯＭ１４は、２つのデバイス・ディスクリプタと２つのコンフィグレーション・ディスクリプタとを格納している。各デバイス・ディスクリプタは、デジタルカメラ１に対応するデバイスＩＤ、サポートする通信設定（コンフィグレーション）の数の情報を含む。本実施形態の各デバイス・ディスクリプタは、１つの通信設定をサポートする。したがって、各デバイス・ディスクリプタはそれぞれコンフィグレーション・ディスクリプタと関連付けられている。コンフィグレーション・ディスクリプタは少なくとも、ＰＣ１０への電力要求の有無を示す情報と、デジタルカメラ１がサポートする通信クラス（例えば、マスストレージクラス、オーディオクラスなど）を含む。またコンフィグレーション・ディスクリプタは、コンフィグレーション・ディスクリプタがホスト装置へ電力を要求することを示す情報を含む場合、要求する電力容量を示す情報をさらに含む。
【００３９】
デジタルカメラ１のＲＡＭ／ＲＯＭ１４によって格納される２つのコンフィグレーション・ディスクリプタについて説明する。以下、２つのコンフィグレーション・ディスクリプタを、「コンフィグレーション・ディスクリプタＡ」、「コンフィグレーション・ディスクリプタＢ」という。コンフィグレーション・ディスクリプタＡは、デジタルカメラ１がバスパワーで動作するために、ホスト装置（本実施形態ではＰＣ１０）に電力を要求することを示す情報を含む。以下、ホスト装置へ電力を要求することを示す情報を「電力要求ありの情報」という。
【００４０】
コンフィグレーション・ディスクリプタＢは、デジタルカメラ１がセルフパワーで動作するために、ＰＣ１０に電力を要求しないことを示す情報を含む。以下、ＰＣ１０へ電力を要求しないことを示す情報を「電力要求なしの情報」という。
【００４１】
また、コンフィグレーション・ディスクリプタＡは、ＰＣ１０に要求する電力の値（例えば５００ｍＡ）を示す情報と、通信クラスがマスストレージであることを示す情報とをさらに含む。コンフィグレーション・ディスクリプタＢは、デジタルカメラ１が対応する通信クラスがマスストレージであることを示す情報をさらに含む。
【００４２】
なお、デジタルカメラ１は、上述の「課題を解決するための手段」で述べた電子機器の一例である。ＲＡＭ／ＲＯＭ１４は格納部の一例である。ＵＳＢコネクタ８は送信部の一例である。サスペンド検出部７ｂは検出部の一例である。ＵＳＢ制御部７は制御部の一例である。
【００４３】
＜２．デジタルカメラの動作＞
以上の構成を有するデジタルカメラ１がＰＣ１０に接続されたときの、ＰＣ１０との通信を確立するためのデジタルカメラ１の動作を説明する。まず、一般的なＵＳＢ接続における通信の確立のための動作について説明し、その後、本実施形態のデジタルカメラ１がＰＣ１０との通信の確立のための動作を説明する。
【００４４】
＜２−１．ＵＳＢ接続を確立する動作＞
一般的なＵＳＢ接続における通信の確立のための動作について説明する。
【００４５】
図３Ａは、デジタルカメラ１とＰＣ１０との間のＵＳＢインターフェースを介した通信が確立されるまでの一般的な動作（エニュメレーション）を説明するためのシーケンスを示す図である。
【００４６】
なお、ＰＣ１０は、状況に応じて、一時停止を示す信号（以下、「サスペンド信号」という）をデジタルカメラ１へ出力する。サスペンド信号は、ＰＣ１０が一時停止をデジタルカメラ１に示す間、出力されつづける。具体的には、ＰＣ１０は、ＰＣ１０に対してＵＳＢデバイス（本実施形態ではデジタルカメラ１）が接続された直後の所定時間、ＰＣ１０がＵＳＢデバイスから送信されたコンフィグレーション・ディスクリプタによって示されるＵＳＢデバイスの機能に対応していないと判断した場合、およびＰＣ１０が省電力モード等である期間、サスペンド信号を出力する。
【００４７】
ＵＳＢデバイスがＰＣ１０に接続された直後に出力されるサスペンド信号は、所定時間の経過後、その出力が停止される。以下、ＵＳＢデバイスの接続直後に出力されるサスペンド信号によって示されるサスペンド状態を「初期サスペンド状態」という。また、ＰＣ１０がＵＳＢデバイスから送信されたコンフィグレーション・ディスクリプタによって示されるＵＳＢデバイスの機能に対応していないと判断した場合に出力されるサスペンド信号は、ＵＳＢデバイスとＰＣ１０との間の通信が初期化（バスリセット）されるまで、出力されつづける。また、ＰＣ１０が省電力モード等に移行した場合のサスペンド信号は、ＰＣ１０が省電力モード等から解除されると、その出力が停止される。
【００４８】
デジタルカメラ１は、サスペンド信号がこれらのいずれの場合において出力されたのかを判定する機能を備える。この判定機能の詳細については後述する。
【００４９】
また、ＵＳＢ接続はホスト装置が主体として動作する仕組みであるので、デジタルカメラ１は、デジタルカメラ１がＰＣ１０からの要求を受信したときに要求に応答するという形式で、通信する。
【００５０】
デジタルカメラ１がＰＣ１０にＵＳＢケーブル９を介して接続されると、ホスト装置であるＰＣ１０は初期サスペンド状態を示すサスペンド信号をデジタルカメラ１へ送信する。初期サスペンド状態は所定時間後に解除される。デジタルカメラ１およびＰＣ１０は、初期サスペンド状態の解除後、デジタルカメラ１とＰＣ１０との間の通信を確立するための要求処理および応答処理（エニュメレーション）を開始する。
【００５１】
すなわち、図３Ａに示すように、デジタルカメラ１がＵＳＢケーブル９を介してＰＣ１０に接続され（Ｓ４１）、そして初期サスペンド状態が解除されたとき、ＰＣ１０は、デジタルカメラ１と通信するために、デジタルカメラ１に指定するアドレスを決定し、このアドレスとともにアドレス設定の要求をデジタルカメラ１へ送信する（Ｓ４２）。
【００５２】
デジタルカメラ１は、アドレス設定の要求を受信すると、指定されたアドレスを格納した後、アドレス設定の完了をＰＣ１０へ通知する（Ｓ４３）。ＰＣ１０に指定されたアドレスがデジタルカメラ１に設定されることで、ＰＣ１０はＰＣ１０に接続されたデジタルカメラ１を識別して管理することが可能となり、デジタルカメラ１はＰＣ１０に指定されたアドレスに対応する要求のみに応答することが可能となる。
【００５３】
ＰＣ１０は、アドレス設定（Ｓ４２、Ｓ４３）後、接続されたデジタルカメラ１のデバイスＩＤおよびサポートする通信設定（コンフィグレーション）の数等を取得するために、デバイス・ディスクリプタをデジタルカメラ１に要求する（Ｓ４４）。デジタルカメラ１は、デバイス・ディスクリプタの要求を受信すると、デジタルカメラ１のＵＳＢ制御部７によって予め設定されたデバイス・ディスクリプタをＰＣ１０へ送信する（Ｓ４５）。
【００５４】
ＰＣ１０は、取得したデバイス・ディスクリプタに基づいて、デジタルカメラ１の電力要求の有無および通信クラス等に関する情報を取得するために、コンフィグレーション・ディスクリプタをデジタルカメラ１へ要求する（Ｓ４６）。
【００５５】
デジタルカメラ１のＵＳＢ制御部７は、コンフィグレーション・ディスクリプタの要求を受信すると、ディスクリプタ切り替え部７ｃによって予め設定されたデバイス・ディスクリプタに関連付けられたコンフィグレーション・ディスクリプタを、ＰＣ１０へ送信する（Ｓ４７）。
【００５６】
ＰＣ１０は、取得したコンフィグレーション・ディスクリプタに基づいて、デジタルカメラ１によって要求された電力設定（ＰＣ１０への電力要求の有無および／または電力容量）と、デジタルカメラ１がサポートする通信クラスとにＰＣ１０が対応しているか否かを判定する。ＰＣ１０は、デジタルカメラ１によって要求された電力設定および通信クラスに対応していると判断した場合、コンフィグレーション設定をデジタルカメラ１へ要求する（Ｓ４８）。ここでコンフィグレーション設定の要求は、デジタルカメラ１が設定すべきコンフィグレーションを指定するための情報を含む。
【００５７】
デジタルカメラ１のＵＳＢ制御部７は、コンフィグレーション設定の要求を受信すると、ＰＣ１０へ送信したコンフィグレーション・ディスクリプタによって示される通信クラス（例えば、マスストレージ）でＰＣ１０と通信するよう、コンフィグレーション設定を実行する。そしてデジタルカメラ１のＵＳＢ制御部７は、コンフィグレーション設定の完了をＰＣ１０へ通知する（Ｓ４９）。
【００５８】
これ以降、デジタルカメラ１とＰＣ１０とは、コンフィグレーション設定において設定された通信クラスで通信できる。
【００５９】
以上の動作により、デジタルカメラ１とＰＣ１０との間のエニュメレーションが完了する。
【００６０】
一方、ＰＣ１０は、デジタルカメラ１によって要求された電力設定および通信クラスに非対応であると判断した場合、コンフィグレーション設定の要求をデジタルカメラ１へ送信しない。この場合、前述のとおり、ＰＣ１０とデジタルカメラ１との間の通信はいつまでも開始されないという問題が生じる。
【００６１】
従来技術はこの問題に、タイムアウトを検出することにより対処していた。しかしこの方法によっても、通信が確立されるまでに時間がかかるという問題が残されていた。
【００６２】
しかし本実施形態のデジタルカメラ１はこの問題を解決する。図３Ｂを参照してその解決手段の概略を説明する。デジタルカメラ１も、図３Ａで示した一般的なエニュメレーションを同様に行なう（Ｓ４１〜Ｓ４９）。しかしデジタルカメラ１は、コンフィグレーション・ディスクリプタを送信した（Ｓ４７）後、ＰＣ１０がサスペンド信号を出力したときは（Ｓ５０）、ＰＣ１０へ送信すべきディスクリプタ（デバイス・ディスクリプタ、コンフィグレーション・ディスクリプタ）を変更する（Ｓ５１）。そしてデジタルカメラ１はバスリセットを行ない（Ｓ５２）、エニュメレーションを再び実施する。このとき出力されるサスペンド信号は、ＰＣ１０がデジタルカメラ１から送信されたコンフィグレーション・ディスクリプタによって示される機能に非対応であるときに出力されるものである。よって、デジタルカメラ１はこのサスペンド信号を検出することによって、ＰＣ１０がデジタルカメラ１の機能に非対応であると判断できる。これにより、通信が確立されるまでの時間を、タイムアウトを検出する方式に比べて短縮できる。
【００６３】
このようなデジタルカメラ１の動作の詳細について以下で説明する。
【００６４】
＜２−２．デジタルカメラ内部の状態遷移＞
本実施形態のデジタルカメラ１の、エニュメレーションにおける状態遷移について説明する。デジタルカメラ１の状態管理部７ａは、エニュメレーションにおけるデジタルカメラ１内部のＵＳＢ接続に関する状態（以下、「ＵＳＢ接続状態」という）を管理する。例えば、デジタルカメラ１のアドレス設定が完了したとき、状態管理部７ａはＵＳＢ接続状態を、アドレスが設定済みである状態を示す「アドレス設定済み状態」に設定する。ＵＳＢ接続状態の管理は、例えば、ＵＳＢ接続状態を示す情報を用いることにより、またはＵＳＢ接続状態を検知する装置を用いることにより実現できる。
【００６５】
以下、デバイス・ディスクリプタおよびコンフィグレーション・ディスクリプタを総称して「ディスクリプタ」という。また、コンフィグレーション・ディスクリプタＡと、コンフィグレーション・ディスクリプタＡに関連付けられたデバイス・ディスクリプタとを総称して「ディスクリプタＡ」という。コンフィグレーション・ディスクリプタＢと、コンフィグレーション・ディスクリプタＢに関連付けられたデバイス・ディスクリプタとを総称して「ディスクリプタＢ」という。
【００６６】
図４は、本実施形態のデジタルカメラ１の、エニュメレーションにおけるＵＳＢ接続状態の遷移を説明するための図である。
【００６７】
電源スイッチ１５ａがＯＮ側に移動されると、状態管理部７ａはＵＳＢ接続状態を、デジタルカメラ１がＰＣ１０とＵＳＢインターフェースを介して接続されていない状態を示す「ＵＳＢケーブル切断状態」（Ｓ１）に設定する。
【００６８】
ＵＳＢ接続状態が「ＵＳＢケーブル切断状態」（Ｓ１）であるとき、ＶＢＵＳ検出部７ｅがデジタルカメラ１とＰＣ１０との接続を検出すると、状態管理部７ａはＵＳＢ接続状態を「接続済み状態」（Ｓ２）に設定する。
【００６９】
ＵＳＢ接続状態が「接続済み状態」（Ｓ２）であるとき、初期サスペンド状態の解除後、デジタルカメラ１のアドレス設定が完了すると（図３ＡにおけるステップＳ４２、Ｓ４３）、状態管理部７ａはＵＳＢ接続状態を「アドレス設定済み状態」（Ｓ３）に設定する。
【００７０】
ＵＳＢ接続状態が「アドレス設定済み状態」（Ｓ３）であるとき、ディスクリプタの要求／送信とデジタルカメラ１のコンフィグレーション設定とが完了すると（図３ＡにおけるステップＳ４３〜Ｓ４９）、状態管理部７ａはＵＳＢ接続状態を「コンフィグレーション設定済み状態」（Ｓ４）に設定する。
【００７１】
ここで、ＰＣ１０がデジタルカメラ１から送信されたディスクリプタによって示される電力設定および通信クラスに非対応である場合、前述の通り、ＰＣ１０はコンフィグレーション設定をデジタルカメラ１へ要求しない。この場合、ＰＣ１０は、サスペンド信号をデジタルカメラ１へ出力する（図３ＢにおけるステップＳ５０）。例えば、ＰＣ１０へ送信されたディスクリプタが電力要求ありの情報を含み５００ｍＡの電力供給がＰＣ１０へ要求された場合、ＰＣ１０がデジタルカメラ１から要求された電力をデジタルカメラ１に供給できるか否かの判定は、ＰＣ１０の種類（あるいはＰＣ１０を制御するＯＳの種類）によって異なる。よって、ＰＣ１０（あるいはＰＣ１０を制御するＯＳ）は、デジタルカメラ１から要求された電力をデジタルカメラ１に供給できないと判断した場合、コンフィグレーション設定をデジタルカメラ１へ要求せずに、サスペンド信号をデジタルカメラ１へ出力する。
【００７２】
ＵＳＢ接続状態が「アドレス設定済み状態」（Ｓ３）であるときに、ディスクリプタの要求／応答（図３ＡのステップＳ４４〜Ｓ４７）が行われた後、サスペンド検出部７ｂがサスペンド信号を検出した場合、ＵＳＢ制御部７は、送信したディスクリプタによって示される設定ではデジタルカメラ１がＰＣ１０と通信できないと判断する。ＵＳＢ制御部７のこの判断に基づいて、状態管理部７ａはＵＳＢ接続状態を「ディスクリプタ切り替え＆再接続状態」（Ｓ５）に設定する。「ディスクリプタ切り替え＆再接続状態」（Ｓ５）において、デジタルカメラ１は、ディスクリプタを先に送信されたディスクリプタから別のディスクリプタへ変更した（Ｓ５１）後、ＰＣ１０へ再接続する（Ｓ５２）。
【００７３】
状態管理部７ａがＵＳＢ接続状態を「ディスクリプタ切り替え＆再接続状態」（Ｓ５）に設定すると、ディスクリプタ切り替え部７ｃは送信すべきディスクリプタを、先に送信されたディスクリプタから別のディスクリプタへ変更する（Ｓ５１）。その後、バスリセット発生・検出部７ｄがＵＳＢバスリセットを発生させることで、デジタルカメラ１とＰＣ１０との接続が再度実施される（Ｓ５２）。このとき、状態管理部７ａはＵＳＢ接続状態を「接続済み状態」（Ｓ２）に設定する。
【００７４】
また、ＰＣ１０は、デジタルカメラ１のコンフィグレーション設定が完了（図３ＡにおけるステップＳ４８〜Ｓ４９）すると、デジタルカメラ１によって設定された通信クラスでデジタルカメラ１と通信する。この通信中に、ＰＣ１０は、省電力モード等に移行してサスペンド信号をデジタルカメラ１へ出力する場合がある。つまり、ＵＳＢ接続状態が「コンフィグレーション設定済み状態」（Ｓ４）であるときに、サスペンド検出部７ｂがサスペンド信号を検出する場合がある。この場合、状態管理部７ａはＵＳＢ接続状態を「サスペンド状態」（Ｓ６）に設定する。「サスペンド状態」（Ｓ６）は、デジタルカメラ１が、ＰＣ１０の省電力モード等に起因するサスペンド状態が解除されるまで待機する状態を示す。サスペンド検出部７ｂがサスペンド信号の途絶（つまり、ＰＣ１０のサスペンド状態の解除）を検出すると、状態管理部７ａはＵＳＢ接続状態を「コンフィグレーション設定済み状態」（Ｓ４）に戻す。
【００７５】
また、ＵＳＢ接続状態が「アドレス設定済み状態」（Ｓ３）または「コンフィグレーション設定済み状態」（Ｓ４）であるときにバスリセット発生・検出部７ｄがＵＳＢバスリセットを行なった（または検出した）場合、状態管理部７ａはＵＳＢ接続状態を「接続済み状態」（Ｓ２）に設定する。
【００７６】
また、ＵＳＢ接続状態が図４に示されるいずれかの状態（Ｓ１〜Ｓ６）に設定されているときに、ＶＢＵＳ検出部７ｅがＶＢＵＳに５Ｖ電圧が供給されなくなったことを検出すると、状態管理部７ａはＵＳＢ接続状態を「ＵＳＢケーブル切断状態」（Ｓ１）に設定する。図４には状態Ｓ２から状態Ｓ１への遷移を示す矢印のみ描かれているが、他の状態（Ｓ３〜Ｓ６）から状態Ｓ１へ遷移してもよい。
【００７７】
＜２−３．デジタルカメラの動作の詳細＞
図５Ａおよび図５Ｂを参照して、本実施形態のデジタルカメラ１がＰＣ１０とのＵＳＢインターフェースを介した接続を確立する一連の動作（エニュメレーション）について、具体的に説明する。
【００７８】
デジタルカメラ１の電源スイッチ１５ａがＯＮ側になると、状態管理部７ａは、ＵＳＢ接続状態を「ＵＳＢケーブル切断状態」（Ｓ１）に設定する（Ｆ０１）。次に、ディスクリプタ切り替え部７ｃは、ＰＣ１０へ送信すべきディスクリプタとして、電力要求ありの情報を含むディスクリプタＡを設定する（Ｆ０２）。ここで、ディスクリプタＡは、前述のとおり、電力要求ありの情報を含むディスクリプタである。
【００７９】
それからＶＢＵＳ検出部７ｅは、ＶＢＵＳを検出することにより、デジタルカメラ１とＰＣ１０とがＵＳＢケーブル９を介して接続されたか否かを判定する（Ｆ０３）。ＶＢＵＳ検出部７ｅは、ＶＢＵＳが検出されなかった場合（ステップＦ０３におけるＮＯ）、ＶＢＵＳが検出されるまで、ＵＳＢ接続の判定を繰り返す。
【００８０】
一方、ＶＢＵＳ検出部７ｅがＶＢＵＳを検出した場合（ステップＦ０３におけるＹＥＳ）、状態管理部７ａはＵＳＢ接続状態を「接続済み状態」（Ｓ２）に設定する（Ｆ０４）。そして、デジタルカメラ１のＵＳＢ制御部７は、デジタルカメラ１がＰＣ１０によってアドレス設定を要求されたか否かを判定する（Ｆ０５）。
【００８１】
ＵＳＢ制御部７は、デジタルカメラ１がアドレス設定を要求されたと判断した場合（ステップＦ０５におけるＹＥＳ）、デジタルカメラ１のアドレスをＰＣ１０によって指定されたアドレスに設定する（Ｆ０６）。その後、状態管理部７ａはＵＳＢ接続状態を「アドレス設定済み状態」（Ｓ３）に設定する（Ｆ０７）。
【００８２】
一方、ＵＳＢ制御部７は、デジタルカメラ１がアドレス設定を要求されていないと判断した場合（ステップＦ０５におけるＮＯ）、または状態管理部７ａがＵＳＢ接続状態を「アドレス設定済み状態」（Ｓ３）に設定した後、デジタルカメラ１がＰＣ１０によってディスクリプタ（デバイス・ディスクリプタまたはコンフィグレーション・ディスクリプタ）を要求されたか否かを判定する（Ｆ０８）。
【００８３】
ＵＳＢ制御部７は、デジタルカメラ１がディスクリプタを要求されたと判断した場合（ステップＦ０８におけるＹＥＳ）、ステップＦ０２において設定されたディスクリプタ（本例ではディスクリプタＡ）をＰＣ１０へ送信する（Ｆ０９）。
【００８４】
一方、ＵＳＢ制御部７は、デジタルカメラ１がディスクリプタを要求されていないと判断した場合（ステップＦ０８におけるＮＯ）、またはＵＳＢ制御部７がディスクリプタをＰＣ１０へ送信した（Ｆ０９）後、デジタルカメラ１がＰＣ１０によってコンフィグレーション設定を要求されたか否かを判定する（Ｆ１０）。ここで、コンフィグレーション設定の要求は、ＰＣ１０によって指定されたコンフィグレーションを示す情報を含む。
【００８５】
ＵＳＢ制御部７は、デジタルカメラ１がコンフィグレーション設定を要求されたと判断した場合（ステップＦ１０におけるＹＥＳ）、デジタルカメラ１のコンフィグレーションをＰＣ１０によって指定されたコンフィグレーションに設定する（Ｆ１１）。その後、状態管理部７ａはＵＳＢ接続状態を「コンフィグレーション設定済み状態」（Ｓ４）に設定する（Ｆ１２）。
【００８６】
一方、ＵＳＢ制御部７は、デジタルカメラ１がコンフィグレーション設定を要求されていないと判断した場合（ステップＦ１０におけるＮＯ）、または状態管理部７ａがＵＳＢ接続状態を「コンフィグレーション設定済み状態」（Ｓ４）に設定した（Ｆ１２）後、サスペンド検出部７ｂがサスペンド信号を検出したか否かを判定する（Ｆ１３）。
【００８７】
まず、サスペンド信号が検出されていない場合（ステップＦ１３におけるＮＯ）について述べる。サスペンド信号が検出されていない場合、状態管理部７ａは、現在のＵＳＢ接続状態が「コンフィグレーション設定済み状態」（Ｓ４）であるか否かを判定する（Ｆ１４）。コンフィグレーションがすでに設定されている場合（ステップＦ１４におけるＹＥＳ）、通信が確立されているので、デジタルカメラ１は設定した通信クラスに基づいて通信を行う（Ｆ１５）。
【００８８】
一方、現在のＵＳＢ接続状態が「コンフィグレーション設定済み状態」（Ｓ４）でない場合（ステップＦ１４におけるＮＯ）、状態管理部７ａは、ＵＳＢ接続状態が「アドレス設定済み状態」（Ｓ３）であるか否かを判定する（Ｆ１６）。
【００８９】
ＵＳＢ接続状態が「アドレス設定済み状態」（Ｓ３）でない場合、つまり、ＰＣ１０からアドレス設定をまだ要求されていない場合（ステップＦ１６におけるＮＯ）、ＵＳＢ制御部７は再びＰＣ１０からアドレス設定を要求されたか否かを判定する（Ｆ０５）。
【００９０】
一方、ＵＳＢ接続状態が「アドレス設定済み状態」（Ｓ３）である場合、つまり、すでにＰＣ１０からのアドレス設定を要求されている場合（ステップＦ１６におけるＹＥＳ）、ＵＳＢ制御部７はディスクリプタが要求されたか否かを再び判定する（Ｆ０８）。
【００９１】
以上の動作により、デジタルカメラ１は、サスペンド検出判定処理（Ｆ１３）においてサスペンド信号が検出されない場合、ＵＳＢ接続状態に基づいた通信処理を実行できる。
【００９２】
次に、サスペンド検出判定処理（Ｆ１３）においてサスペンド信号が検出された場合（ステップＦ１３におけるＹＥＳ）について述べる。サスペンド判定（Ｆ１３）において、サスペンド信号が検出された場合、ＵＳＢ制御部７は、状態管理部７ａで管理されている現在のＵＳＢ接続状態が「アドレス設定済み状態」（Ｓ３）であるか否かを判定する（Ｆ１７）。
【００９３】
ＵＳＢ接続状態が「アドレス設定済み状態」（Ｓ３）でない場合（ステップＦ１７におけるＮＯ）、すなわち、ＵＳＢ接続状態が「コンフィグレーション設定済み状態」（Ｓ４）であるかアドレスがまだ設定されていない状態（Ｓ２）等である場合、デジタルカメラ１は、ＰＣ１０が省電力モードに入ったと判断する。そして、デジタルカメラ１はＰＣ１０が省電力モードから解除されるのを待つためのサスペンド処理へ移行する（Ｆ１８）。サスペンド処理では、ＵＳＢ制御部７のみが動作して、他の部分の動作は停止される。ＵＳＢ制御部７はＰＣ１０が省電力モードから解除されるまで待機する。これによりデジタルカメラ１の電力消費が抑えられる。
【００９４】
一方、ＵＳＢ接続状態が「アドレス設定済み状態」（Ｓ３）であった場合（ステップＦ１７におけるＹＥＳ）、デジタルカメラ１は、現在のディスクリプタとは異なるディスクリプタで再接続するための処理へ移行する。この処理において、まず、ディスクリプタ切り替え部７ｃは、ＰＣ１０へ送信すべきディスクリプタを、電力要求ありの情報を含むディスクリプタＡ（Ｆ０２）から電力要求なしの情報を含むディスクリプタＢに変更する（Ｆ１９）。そして、状態管理部７ａはＵＳＢ接続状態を「接続済み状態」（Ｓ２）に設定しなおす（Ｆ２０）。さらにバスリセット発生・検出部７ｄはＵＳＢバスリセットを発生させる（Ｆ２１）。この処理により、ＰＣ１０は、ＵＳＢバスリセットを受けて、デジタルカメラ１との通信をアドレス設定からやり直す。
【００９５】
このようにデジタルカメラ１は、ＵＳＢ接続状態が「アドレス設定済み状態」（Ｓ３）であるときサスペンド信号が検出されると、検出されたサスペンド信号が、ＰＣ１０がデジタルカメラ１から送信されたディスクリプタによって示される機能に対応していないときに出力されたと判断する。このときデジタルカメラ１は、即座にディスクリプタを切り替えて再接続することが可能である。
【００９６】
以上のように、ＰＣ１０とデジタルカメラ１との通信接続において、デジタルカメラ１は、ＰＣ１０からのディスクリプタ要求に対してディスクリプタを送信することにより応答する。ＰＣ１０がデジタルカメラ１からのディスクリプタ応答において送信されたディスクリプタの内容で通信できないことによりサスペンドした場合、デジタルカメラ１は、ＰＣ１０からのコンフィグレーション設定の要求を待ち続けることなく、即座にディスクリプタを切り替えて接続しなおすことが可能である。よって、本実施形態のデジタルカメラ１によれば、タイムアウトを待たずに高速に対応できるという優れた効果が得られる。
【００９７】
なお、本実施形態のＲＡＭ／ＲＯＭ１４は、「電力要求ありの情報」を含むディスクリプタＡと「電力要求なしの情報」を含むディスクリプタＢを格納していた。しかし、ＲＡＭ／ＲＯＭ１４が他の機能を示すディスクリプタを格納していてもよい。
【００９８】
＜３．本実施形態のまとめ＞
以上のように、本実施形態のデジタルカメラ１は、ＵＳＢインターフェースを介してＰＣ１０へ接続されてＵＳＢファンクションとして動作可能である。デジタルカメラ１は、デジタルカメラ１の機能を示す情報であるディスクリプタを格納するＲＡＭ／ＲＯＭ１４と、ディスクリプタをＰＣ１０へ送信するＵＳＢコネクタ８と、ＰＣ１０によって出力される、一時停止を示す信号であるサスペンド信号を検出するサスペンド検出部７ｂと、デジタルカメラ１とＰＣ１０との間のエニュメレーションにおいて、ＵＳＢコネクタ８がディスクリプタをＰＣ１０へ送信した後、サスペンド検出部７ｂがサスペンド信号を検出したとき、その検出結果に基づいて所定の処理を実行するＵＳＢ制御部７と、を備える。
【００９９】
このような構成を有するデジタルカメラ１は、ＵＳＢコネクタ８を介してディスクリプタをＰＣ１０へ送信した後、サスペンド検出部７ｂがサスペンド信号を検出したとき、その検出結果に基づいて、所定の処理を実行する。これにより、デジタルカメラ１は、ＰＣ１０に接続されたときに、エニュメレーションに関する処理を、タイムアウトを検出する電子機器より高速に実行できる。
【０１００】
また、本実施形態のデジタルカメラ１において、ＲＡＭ／ＲＯＭ１４は異なる機能を示す２つのディスクリプタを格納している。ＵＳＢ制御部７は、所定の処理として、ＰＣ１０へ送信すべきディスクリプタを、送信されたディスクリプタから別のディスクリプタに変更してから、デジタルカメラ１とＰＣ１０との間の通信を初期化する。
【０１０１】
このような構成を有するデジタルカメラ１は、デジタルカメラ１の機能に非対応であった場合にサスペンド信号をデジタルカメラ１へ送信するＰＣ１０とデジタルカメラ１との間のエニュメレーションにおいて、ＵＳＢコネクタ８がディスクリプタをＰＣ１０へ送信した後、サスペンド検出部７ｂがサスペンド信号を検出したとき、その検出結果に基づいて、ディスクリプタを切り替えた上でＵＳＢバスリセットを発生させる。これにより、デジタルカメラ１は、ＰＣ１０との通信が確立される可能性を低下させることなく、タイムアウトを検出する電子機器より高速に、変更されたディスクリプタでエニュメレーションをやり直すことが可能である。
【０１０２】
＜４．他の実施形態＞
上記実施形態の思想は、以上で説明された実施形態に限定されない。種々の実施形態が考えられてもよい。以下、上記実施形態の思想を適用できる他の実施形態について説明する。
【０１０３】
上記実施形態のデジタルカメラ１はディスクリプタを２つ保持したが、デジタルカメラ１は３つ以上のディスクリプタを保持してもよい。その場合、ＵＳＢ制御部７は、エニュメレーションにおいて、サスペンド検出部７ｂがＰＣ１０からのサスペンド信号を検出しなくなり、かつデジタルカメラ１とＰＣ１０との間の接続が確立されるまで、ＵＳＢ制御部７が複数のディスクリプタのうちの別のディスクリプタをＰＣ１０へ送信するよう、ＵＳＢ制御部７を繰り返し指示してもよい。
【０１０４】
また、上記実施形態のデジタルカメラ１では、１つのコンフィグレーション・ディスクリプタが１つのデバイス・ディスクリプタに関連付けられた。しかし複数のコンフィグレーション・ディスクリプタが１つのデバイス・ディスクリプタに関連付けられてもよい。
【０１０５】
また、上記実施形態では、電子機器の例としてデジタルカメラを説明した。しかし、電子機器は、デジタルカメラに限らず、ファンクションとしてＵＳＢ接続が可能な任意の機器でよい。上記実施形態の思想は、上記実施形態のＵＳＢ制御部７と実質的に同一の制御部を有する電子機器（例えば、ビデオカメラ、携帯電話、スマートフォン、携帯ゲーム機等）にも適用できる。
【０１０６】
また、上記実施形態では、ＵＳＢインターフェースを介してＰＣへ接続するＵＳＢ機器（デジタルカメラ）が例示された。しかし上記実施形態の思想はこれに限定されない。上記実施形態の思想は、ＵＳＢ以外のインターフェースを介してホスト装置へ接続する電子機器にも適用できる。ただし、電子機器はホスト装置との通信を確立するために、電子機器の機能を示す情報（機能情報）をホスト装置へ送信する。また、ホスト装置は、ホスト装置が送信された機能情報によって示される機能に非対応であった場合、所定の信号を電子機器へ送信する。
【０１０７】
また、上記実施形態では、ＰＣ１０がデジタルカメラ１から送信されたディスクリプタによって示される機能に非対応であった場合、デジタルカメラ１はディスクリプタを変更してＰＣ１０に再接続した。しかし上記実施形態の思想はこれに限定されない。ＰＣ１０がデジタルカメラ１から送信されたディスクリプタによって示される機能に非対応であった場合、デジタルカメラ１はＰＣ１０との通信を終了してもよい。これにより、結果としてデジタルカメラ１とＰＣ１０との通信が確立されない場合にも、デジタルカメラ１は、タイムアウトを検出する場合より高速に、エニュメレーションを終了できる。
【０１０８】
以上、本開示における技術の例示として、実施形態を説明した。そのために、詳細な説明および添付の図面を開示した。よって、詳細な説明および添付の図面に記載された構成要素の中には、課題解決のために必須でない構成要素が含まれることがある。したがって、それらの必須でない構成要素が、詳細な説明および添付の図面に記載されているからといって、それらの必須でない構成要素が必須であると直ちに認定されるべきではない。
【０１０９】
上記実施形態は、本開示における技術を例示するためのものである。よって、上記実施形態は、特許請求の範囲またはその均等の範囲において種々の変更、置換、付加および／または省略等を行なわれてもよい。
【産業上の利用可能性】
【０１１０】
本開示の技術は、電子機器の機能に非対応であるときに所定の信号を電子機器に送信するホスト装置に接続可能な電子機器であって、自装置の機能を示す情報（ディスクリプタ等）をホスト装置へ送信することによりホスト装置との通信を確立する電子機器（デジタルカメラ、ビデオカメラ、携帯電話、スマートフォン、携帯ゲーム機等）等に適用できる。
【符号の説明】
【０１１１】
１  デジタルカメラ
２  撮像部
３  画像処理部
４  メモリカード
５  液晶モニタ
６  システム制御部
７  ＵＳＢ制御部
７ａ  状態管理部
７ｂ  サスペンド検出部
７ｃ  ディスクリプタ切り替え部
７ｄ  バスリセット発生・検出部
７ｅ  ＶＢＵＳ検出部
７ｆ  通信制御部
８  ＵＳＢコネクタ
９  ＵＳＢケーブル
１０  パーソナルコンピュータ
１１  ＬＥＤ
１２  電源制御部
１３  バッテリ
１４  ＲＡＭ／ＲＯＭ
１５  操作部
１５ａ  電源スイッチ
１５ｂ  シャッター釦
１５ｃ  決定釦
１５ｄ  カーソルキー
１５ｅ  メニュー釦
【図１】
2013175167.tif 000003
【図２】
2013175167.tif 000004
【図３Ａ】
2013175167.tif 000005
【図３Ｂ】
2013175167.tif 000006
【図４】
2013175167.tif 000007
【図５Ａ】
2013175167.tif 000008
【図５Ｂ】
2013175167.tif 000009