(57)【要約】【課題】  通信装置は、ＣＥＣのコマンドの伝送に関するエラーが検出されたことを表示装置に通知するようにすることを目的とする。【解決手段】  外部装置から所定のプロトコルに応じて、コマンドを受信する通信手段と、前記外部装置との間の通信に関するエラーを検出するための処理を行う検出手段と、前記通信手段によって前記外部装置に第１のコマンドが受信されている間に、前記検出手段によってエラーが検出された後、前記検出手段によって検出されたエラーを前記外部装置に通知するための第２のコマンドを前記通信手段に送信させる制御手段とを有することを特徴とする通信装置。【選択図】  図１
2015119342.tif 000002
【特許請求の範囲】
【請求項１】
外部装置から所定のプロトコルに応じて、コマンドを受信する通信手段と、
前記外部装置との間の通信に関するエラーを検出するための処理を行う検出手段と、
前記通信手段によって前記外部装置に第１のコマンドが受信されている間に、前記検出手段によってエラーが検出された後、前記検出手段によって検出されたエラーを前記外部装置に通知するための第２のコマンドを前記通信手段に送信させる制御手段と
を有することを特徴とする通信装置。
【請求項２】
前記制御手段は、前記通信手段によって前記外部装置に前記第１のコマンドが受信されている間に、前記検出手段によってエラーが検出された後、前記第１のコマンドを前記通信手段に再び受信させることを特徴とする請求項１に記載の通信装置。
【請求項３】
前記検出手段は、前記通信手段によって前記第１のコマンドに含まれるＨｅａｄｅｒ  Ｂｌｏｃｋの送信が行われている間、前記処理を行うことを特徴とする請求項１または２に記載の通信装置。
【請求項４】
前記検出手段は、前記通信手段によって前記第１のコマンドに含まれるデータブロックの受信が行われている間、前記処理を行うことを特徴とする請求項１から３のいずれか１項に記載の通信装置。
【請求項５】
前記制御手段は、前記通信手段によって前記外部装置に前記第１のコマンドが受信されている間に、前記検出手段によってエラーが検出された後、前記第１のコマンドの種類に応じて、前記第１のコマンドを要求するための第３のコマンドの前記外部装置への送信を前記通信装置に行わせるか否かを制御することを特徴とする請求項１から４のいずれか１項に記載の通信装置。
【請求項６】
前記制御手段は、前記第２のコマンドを前記外部装置に送信することによって、前記通信装置と前記外部装置との間における通信に関するエラーが検出されたと前記外部装置に判定させることを特徴とする請求項１から５のいずれか１項に記載の通信装置。
【請求項７】
前記所定のプロトコルは、ＨＤＭＩ（Ｈｉｇｈ−Ｄｅｆｉｎｉｔｉｏｎ  Ｍｕｌｔｉｍｅｄｉａ  Ｉｎｔｅｒｆａｃｅ）規格に準拠することを特徴とする請求項１から６のいずれか１項に記載の通信装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信装置に関するものである。
【背景技術】
【０００２】
表示装置と通信装置とをＨＤＭＩ（Ｈｉｇｈ−Ｄｅｆｉｎｉｔｉｏｎ  Ｍｕｌｔｉｍｅｄｉａ  Ｉｎｔｅｒｆａｃｅ）（登録商標）に対応するケーブル（以下、「ＨＤＭＩケーブル」と呼ぶ。）で接続する通信システムがある。このような通信システムにおいて、表示装置は、通信装置からＨＤＭＩに対応するケーブルを介して受信した映像を表示する。
【０００３】
さらに、表示装置が通信装置を制御するためのＣＥＣ（Ｃｏｎｓｕｍｅｒ  Ｅｌｅｃｔｒｏｎｉｃｓ  Ｃｏｎｔｒｏｌ）コマンドを送信したり、通信装置を制御するためのＣＥＣコマンドを表示装置から受信することが知られている（特許文献１）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１０−０２８４４４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
従来、通信装置がＣＥＣコマンドの伝送に関するエラーを検出した場合、エラーを解消するために、ＣＥＣコマンドの送信を行うための通信部をリセットすることが開示されている。
【０００６】
しかしながら、従来、通信装置は、ＣＥＣコマンドの伝送に関するエラーが発生したことを表示装置に通知していなかったので、表示装置は、通信装置と表示装置との間のＣＥＣコマンドの伝送が正常に行われたのか否かを判定することができなかった。そのため、表示装置は、ＣＥＣコマンドの伝送に関するエラーが送信装置に発生しているにもかかわらず、通信装置と表示装置との間におけるＣＥＣコマンドの伝送が正常に行われていると誤って判定してしまう場合があった。
【０００７】
これを解決するために、通信装置は、ＣＥＣのコマンドの伝送に関するエラーが検出されたことを表示装置に通知するようにすることを目的とする。
【課題を解決するための手段】
【０００８】
本発明に係る通信装置は、外部装置から所定のプロトコルに応じて、コマンドを受信する通信手段と、前記外部装置との間の通信に関するエラーを検出するための処理を行う検出手段と、前記通信手段によって前記外部装置に第１のコマンドが受信されている間に、前記検出手段によってエラーが検出された後、前記検出手段によって検出されたエラーを前記外部装置に通知するための第２のコマンドを前記通信手段に送信させる制御手段とを有することを特徴とする。
【発明の効果】
【０００９】
本発明によれば、通信装置は、ＣＥＣのコマンドの伝送に関するエラーが検出されたことを表示装置に通知することができる。
【図面の簡単な説明】
【００１０】
【図１】本発明の実施例１及び２に係る通信システムの構成の一例を示す図である。
【図２】本発明の実施例１に係るコマンド受信処理を示すフローチャートの一例である。
【図３】本発明の実施例２に係るコマンド受信処理を示すフローチャートの一例である。
【発明を実施するための形態】
【００１１】
以下に、本発明に係る実施例について、添付の図面に基づいて詳細に説明する。なお、本発明、以下に説明する実施例１に限定されるものではないものとする。
【００１２】
［実施例１］
実施例１に係る通信システムは、図１に示すように、通信装置１００、外部装置３００及び通信装置１００と外部装置３００とを接続するためのケーブル２００を有する。
【００１３】
実施例１において、通信装置１００は、ケーブル２００を介して画像データ、音声データ及び補助データの少なくとも一つを外部装置３００に送信することができるデータ送信装置である。外部装置３００は、通信装置１００から受信した画像データを表示器に表示し、通信装置１００から受信した音声データをスピーカから出力するデータ受信装置である。通信装置１００及び外部装置３００はいずれも、ケーブル２００を介して様々な制御コマンドを双方向に送信することができる。
【００１４】
本実施例において、通信装置１００、外部装置３００及びケーブル２００は、ＨＤＭＩ（Ｈｉｇｈ−Ｄｅｆｉｎｉｔｉｏｎ  Ｍｕｌｔｉｍｅｄｉａ  Ｉｎｔｅｒｆａｃｅ）規格に準拠するものとする。したがって、通信装置１００は、ＨＤＭＩ規格におけるＨＤＭＩソース（Ｓｏｕｒｃｅ）として機能するソース装置であり、外部装置３００は、ＨＤＭＩ規格におけるＨＤＭＩシンク（Ｓｉｎｋ）として機能するシンク装置である。
【００１５】
本実施例において、通信装置１００及び外部装置３００は、ＨＤＭＩ規格が規定しているＣＥＣプロトコルに準拠するものとする。通信装置１００と外部装置３００との間で双方向に送信される制御コマンドは、ＣＥＣプロトコルに準拠する。以下、ＣＥＣプロトコルに準拠した制御コマンドを「ＣＥＣコマンド」と呼ぶ。
【００１６】
本実施例では、通信装置１００の一例としてデジタルスチルカメラを用いる。なお、通信装置１００は、デジタルスチルカメラに限るものではなく、ＨＤＭＩソースとしての機能を持つ装置であれば、デジタル一眼レフカメラ、デジタルビデオカメラ、レコーダ、プレイヤなどの装置を通信装置１００として用いてもよい。また、通信装置１００は、スマートフォンやパーソナルコンピュータであってもよい。
【００１７】
本実施例では、外部装置３００の一例としてテレビジョン受像機（以下、「テレビ」と呼ぶ）を用いる。なお、外部装置３００は、テレビに限るものではなく、ＨＤＭＩシンクとしての機能を持つ装置であれば、プロジェクタやパーソナルコンピュータなどの表示装置を外部装置３００として用いてもよい。また、外部装置３００は、ＨＤＭＩ規格におけるＨＤＭＩリピータ（Ｒｅｐｅａｔｅｒ）として機能するリピータ装置（中継装置）であってもよいものとする。
【００１８】
＜ケーブル２００＞
次に、図１を参照して、ケーブル２００について説明を行う。
【００１９】
ケーブル２００は、電源伝送ライン２０１、ＨＰＤ（Ｈｏｔ  Ｐｌｕｇ  Ｄｅｔｅｃｔ）ライン２０２及びＤＤＣ（Ｄｉｓｐｌａｙ  Ｄａｔａ  Ｃｈａｎｎｅｌ）ライン２０３を有する。ケーブル２００は、さらに、ＴＭＤＳ（Ｔｒａｎｓｉｔｉｏｎ  Ｍｉｎｉｍｉｚｅｄ  Ｄｉｆｆｅｒｅｎｔｉａｌ  Ｓｉｎｇｎａｌｉｎｇ）（登録商標）ライン２０４及びＣＥＣライン２０５を有する。
【００２０】
電源伝送ライン２０１は、通信装置１００から外部装置３００に所定の電源を供給するための伝送ラインである。所定の電源とは、例えば、＋５Ｖ電源や＋３．３Ｖ電源である。
【００２１】
ＨＰＤライン２０２は、高電圧レベル（以下、Ｈレベル）又は低電圧レベル（以下、Ｌレベル）のＨＰＤ信号を外部装置３００から通信装置１００に伝送するための伝送ラインである。
【００２２】
ＤＤＣライン２０３は、外部装置３００のデバイス情報を外部装置３００から通信装置１００に伝送するための伝送ラインである。外部装置３００のデバイス情報とは、外部装置３００のＥＤＩＤ（Ｅｘｔｅｎｄｅｄ  Ｄｉｓｐｌａｙ  Ｉｄｅｎｔｉｆｉｃａｔｉｏｎ  Ｄａｔａ）又はＥ−ＥＤＩＤ（Ｅｎｈａｎｃｅｄ  ＥＤＩＤ）である。ＥＤＩＤ及びＥ−ＥＤＩＤはいずれも、外部装置３００のデバイス情報として、外部装置３００の識別情報、外部装置３００の表示能力に関する情報、外部装置３００の音声出力能力に関する情報等を含む。また、例えば、ＥＤＩＤ及びＥ−ＥＤＩＤには、外部装置３００がサポートしている解像度、走査周波数、アスペクト比、色空間などに関する情報や、物理アドレスが含まれている。物理アドレスは、通信装置１００と外部装置３００との接続の関係を示す情報である。
【００２３】
Ｅ−ＥＤＩＤは、ＥＤＩＤを拡張したものであり、ＥＤＩＤよりも多くの能力情報を含む。例えば、Ｅ−ＥＤＩＤには、外部装置３００がサポートしている画像データ及び音声データのフォーマットや３Ｄ表示フォーマットに関する対応などに関する情報が含まれている。以下、ＥＤＩＤ及びＥ−ＥＤＩＤをいずれも「ＥＤＩＤ」と呼ぶ。
【００２４】
ＴＭＤＳライン２０４は、通信装置１００から外部装置３００に画像データ、音声データ及び補助データの少なくとも一つを伝送するための高速な伝送ラインである。
【００２５】
ＣＥＣライン２０５は、通信装置１００と外部装置３００との間で、ＣＥＣコマンドを双方向に伝送するための伝送ラインである。
【００２６】
外部装置３００は、通信装置１００を制御するためのＣＥＣコマンドを通信装置１００にＣＥＣライン２０５を介して送信することにより、通信装置１００を制御することができる。また、通信装置１００は、外部装置３００を制御するためのＣＥＣコマンドを外部装置３００にＣＥＣライン２０５を介して送信することにより、外部装置３００を制御することができる。
【００２７】
なお、ケーブル２００は、ＨＤＭＩ規格に対応するケーブルに限られるものではない。ケーブル２００は、ＨＤＭＩ規格の代わりにＭＨＬ（Ｍｏｂｉｌｅ  Ｈｉｇｈ−Ｄｅｆｉｎｉｔｉｏｎ  Ｌｉｎｋ）（登録商標）規格に対応するものであっても良い。また、ケーブル２００は、ＨＤＭＩ規格の代わりにＤｉｓｐｌａｙ  Ｐｏｒｔ（登録商標）規格に対応するものであっても良い。また、ケーブル２００は、ＨＤＭＩ規格の代わりにＨＤＢａｓｅＴ（登録商標）規格に対応するものであってもよい。
【００２８】
また、ケーブル２００は、ＨＤＭＩ規格と互換性のある通信インターフェースであってもよい。また、通信装置１００と外部装置３００は、ＨＤＭＩ規格に準拠した通信を無線によって行うものであってもよい。
【００２９】
＜通信装置１００＞
次に、図１を参照して、通信装置１００の構成の一例について説明を行う。
【００３０】
通信装置１００は、図１に示すように、制御部１０１、メモリ１０２、通信部１０３、撮像部１０４、記録部１０５、表示部１０６、操作部１０７、電源供給部１０８、及びＲＯＭ１０９を有する。以下、通信装置１００について説明する。
【００３１】
制御部１０１は、通信装置１００を制御する。制御部１０１は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）やＭＰＵ（Ｍｉｃｒｏ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）を含む。なお、制御部１０１は、ハードウェアにより構成される。
【００３２】
また、制御部１０１は、外部装置３００から受信したＣＥＣコマンドにしたがって、通信装置１００を制御したり、操作部１０７からの入力信号により通信装置１００を制御する。また、制御部１０１は、外部装置３００から取得した外部装置３００のＥＤＩＤを解析し、解析した結果を取得したＥＤＩＤとともにメモリ１０２に記録する。また、制御部１０１は、時間を計測するためのタイマー１０１ａを有する。
【００３３】
メモリ１０２は、通信装置１００のバッファとして機能するメモリであり、記録部１０５によって読み出された画像データや音声データ等を一時的に記録媒体１０５ａに記録することもできる。
【００３４】
また、メモリ１０２は、制御部１０１によって解析されたＥＤＩＤの解析結果、コマンド処理部１０３ｆによって受信されたコマンドの解析結果及び外部装置３００から取得したＥＤＩＤを記録する。
【００３５】
また、メモリ１０２は、後述のエラーフラグに関する設定、論理アドレス及び物理アドレスを格納する。
【００３６】
メモリ１０２は、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）に限られるものではなく、ハードディスク装置等の外部記憶装置であってもよい。
【００３７】
通信部１０３は、不図示のコネクタ、電源出力部１０３ａ、第１の検出部１０３ｂ、ＥＤＩＤ取得部１０３ｃ、データ送信部１０３ｄ、第２の検出部１０３ｅ、コマンド処理部１０３ｆ及び第３の検出部１０３ｇを有する。
【００３８】
不図示のコネクタは、ケーブル２００を接続するために用いられる。
【００３９】
電源出力部１０３ａは、電源供給部１０８から供給される電源から所定の電源を生成する。さらに、電源出力部１０３ａは、生成した所定の電源を電源伝送ライン２０１を介して外部装置３００に出力する。
【００４０】
第１の検出部１０３ｂは、外部装置３００から送信されるＨＰＤ信号を、ＨＰＤライン２０２を介して検出する。電源出力部１０３ａから電源伝送ライン２０１を介して外部装置３００に所定の電源が供給されている場合、外部装置３００は、外部装置３００のＥＤＩＤを通信装置１００に送信できるか否かを判定する。この場合、外部装置３００は、この判定結果に応じて、ＨレベルのＨＰＤ信号またはＬレベルのＨＰＤ信号を通信装置１００に送信する。電源伝送ライン２０１を介して外部装置３００に所定の電源が供給されている場合、外部装置３００がＥＤＩＤを通信装置１００に送信できると判定したとき、外部装置３００はＨレベルのＨＰＤ信号を通信装置１００にＨＰＤライン２０２を介して送信する。そこで、第１の検出部１０３ｂは、ＨＰＤライン２０２を介してＨレベルのＨＰＤ信号を検出した場合、外部装置３００から外部装置３００のＥＤＩＤを取得できることを制御部１０１に通知する。
【００４１】
また、電源出力部１０３ａから電源伝送ライン２０１を介して外部装置３００に所定の電源が供給されていない場合、外部装置３００は、ＬレベルのＨＰＤ信号を通信装置１００にＨＰＤライン２０２を介して送信する。電源伝送ライン２０１を介して外部装置３００に所定の電源が供給されている場合、外部装置３００は、外部装置３００がＥＤＩＤを通信装置１００に送信できないと判定し、ＬレベルのＨＰＤ信号を通信装置１００にＨＰＤライン２０２を介して送信する。そこで、第１の検出部１０３ｂは、ＨＰＤライン２０２を介してＬレベルのＨＰＤ信号を検出した場合、外部装置３００から外部装置３００のＥＤＩＤを取得できないことを制御部１０１に通知する。
【００４２】
第１の検出部１０３ｂは、ＨＰＤライン２０２を介して検出したＨＰＤ信号がＨレベルのＨＰＤ信号からＬレベルのＨＰＤ信号に変化した場合、ＨＰＤ信号がＨレベルからＬレベルに変化したことを制御部１０１に通知する。また、第１の検出部１０３ｂは、ＨＰＤ信号がＬレベルのＨＰＤ信号からＨレベルのＨＰＤ信号に変化した場合も同様にＨＰＤ信号がＬレベルからＨレベルに変化したことを制御部１０１に通知する。
【００４３】
ＥＤＩＤ取得部１０３ｃは、第１の検出部１０３ｂで検出されたＨＰＤ信号がＨレベルである場合、ＤＤＣライン２０３を介して、外部装置３００に外部装置３００のＥＤＩＤを取得するための要求を送信し、外部装置３００のＥＤＩＤを取得する。第１の検出部１０３ｂで検出されたＨＰＤ信号がＬレベルである場合、ＥＤＩＤ取得部１０３ｃは、ＤＤＣライン２０３を介して外部装置３００に外部装置３００のＥＤＩＤを取得するための要求を送信せず、外部装置３００のＥＤＩＤを取得しない。
【００４４】
データ送信部１０３ｄは、撮像部１０４により生成された画像データや記録部１０５により記録媒体１０５ａから読み出された画像データをＴＭＤＳライン２０４を介して外部装置３００に送信する。また、データ送信部１０３ｄは、不図示のマイクロフォン部により生成された音声データや記録部１０５により記録媒体１０５ａから読み出された音声データもＴＭＤＳライン２０４を介して外部装置３００に送信する。また、データ送信部１０３ｄは、画像データを外部装置３００に表示させるための補助データや音声データを外部装置３００のスピーカから出力させるための補助データ等も外部装置３００にＴＭＤＳライン２０４を介して送信する。
【００４５】
データ送信部１０３ｄによって外部装置３００に送信される画像データ及び音声データは、外部装置３００から取得した外部装置３００のＥＤＩＤに応じて生成されたデータである。
【００４６】
第２の検出部１０３ｅは、通信装置１００がＴＭＤＳライン２０４を介して外部装置３００の終端抵抗に接続されているか否かを検出する。
【００４７】
第２の検出部１０３ｅは、通信装置１００がＴＭＤＳライン２０４を介して外部装置３００の終端抵抗に接続されていることを検出した場合、その旨を制御部１０１に通知する。第２の検出部１０３ｅは、通信装置１００がＴＭＤＳライン２０４を介して外部装置３００の終端抵抗に接続されていないことを検出した場合、その旨を制御部１０１に通知する。
【００４８】
コマンド処理部１０３ｆは、外部装置３００に送信するＣＥＣコマンドを格納するための送信バッファメモリ１０３ｈ及び外部装置３００から受信したＣＥＣコマンドを格納するための受信バッファメモリ１０３ｉを有する。外部装置３００からＣＥＣライン２０５を介して受信されたＣＥＣコマンドは、受信バッファメモリ１０３ｉに格納される。コマンド処理部１０３ｆは、受信バッファメモリ１０３ｉに格納されたＣＥＣコマンドを解析する。コマンド処理部１０３ｆは、コマンドの解析結果を制御部１０１に供給する。この場合、制御部１０１は、コマンド処理部１０３ｆから供給されたコマンドの解析結果に応じて、通信装置１００を制御する。
【００４９】
また、コマンド処理部１０３ｆは、送信バッファメモリ１０３ｈに格納された外部装置３００を制御するためのＣＥＣコマンドをＣＥＣライン２０５を介して外部装置３００に送信する。なお、外部装置３００を制御するためのＣＥＣコマンドは、制御部１０１によって生成され、送信バッファメモリ１０３ｈに格納される。コマンド処理部１０３ｆは、外部装置３００を制御するためのＣＥＣコマンドをＣＥＣライン２０５を介して外部装置３００に送信した場合に、外部装置３００から供給される通信装置１００への応答を受信する。なお、外部装置３００から供給される通信装置１００への応答として、肯定の応答を示すＡｃｋ信号と、否定の応答を示すＮａｃｋ信号とがある。
【００５０】
第３の検出部１０３ｇは、ＣＥＣライン２０５を介した通信に関するエラーが発生したか否かを検出する。例えば、第３の検出部１０３ｇは、ＣＥＣライン２０５を介して伝送される信号のパルス幅を検出し、検出されたパルス幅に応じて、ＣＥＣライン２０５を介した通信に関するエラーが発生したか否かを検出する。検出されたパルス幅がＣＥＣコマンドを送信するための閾値に満たない場合、つまり、検出されたパルス幅が異常である場合は、第３の検出部１０３ｇは、エラーが発生した旨を制御部１０１に通知する。
【００５１】
また、例えば、第３の検出部１０３ｇは、ＣＥＣライン２０５上の電位を監視することにより、ＣＥＣライン２０５上にノイズが発生したか否かを検出してもよい。この場合、第３の検出部１０３ｇは、ＣＥＣライン２０５上にノイズが発生したことが検出された場合、ＣＥＣライン２０５を介した通信に関するエラーが発生したと検出する。また、第３の検出部１０３ｇは、ＣＥＣライン２０５上にノイズが発生していないことが検出された場合、ＣＥＣライン２０５を介した通信に関するエラーが発生していないと検出する。なお、第３の検出部１０３ｇは、上記以外の方法でＣＥＣライン２０５を介した通信に関するエラーを検出することができるものであれば、良いものとする。なお、ＣＥＣライン２０５を介した通信に関するエラーを以下「所定のエラー」と呼ぶものとする。
【００５２】
撮像部１０４は、通信装置１００の動作モードが撮影モードである場合は、被写体を撮影し、当該被写体の光学像から画像データを生成する。また、撮像部１０４は、被写体を撮影するためのＣＣＤセンサやＣＭＯＳセンサ等の撮像素子を有する。撮像部１０４で生成される画像データは、動画データ、静止画データのいずれでもよい。撮像部１０４で生成された画像データは、撮像部１０４からデータ送信部１０３ｄ、記録部１０５及び表示部１０６に供給される。
【００５３】
撮像部１０４が動画データを生成する場合、不図示のマイクロフォン部は音声データを生成する。マイクロフォン部で生成された音声データは、マイクロフォン部からデータ送信部１０３ｄ、記録部１０５及び不図示のスピーカ部に供給される。撮像部１０４は、通信装置１００の動作モードが再生モードである場合は、被写体の撮影を停止し、当該被写体の光学像からの画像データの生成を停止する。
【００５４】
記録部１０５は、通信装置１００の動作モードが撮影モードである場合は、撮像部１０４で生成された画像データと、マイクロフォン部で生成された音声データとを記録媒体１０５ａに記録する。撮像部１０４及びマイクロフォン部で生成された画像データ及び音声データの記録媒体１０５ａへの記録は、操作部１０７を介して入力されたユーザの指示に従って、制御部１０１が制御する。制御部１０１は、撮像部１０４及びマイクロフォン部で生成された画像データ及び音声データの記録媒体１０５ａへの記録を、外部装置３００から受信したＣＥＣコマンドに従って制御することもできる。
【００５５】
また、記録部１０５は、通信装置１００の動作モードが再生モードである場合、記録媒体１０５ａに記録されている画像データや音声データを読み出し、データ送信部１０３ｄ及び表示部１０６に供給する。なお、記録部１０５が記録媒体１０５ａに記録する画像データや音声データは、撮像部１０４で生成された画像データであってもいい。また、記録部１０５は、通信装置１００の動作モードが撮影モードである場合は、画像データや音声データの読み出しを停止する。
【００５６】
なお、記録媒体１０５ａは、通信装置１００に内蔵されたものであっても、通信装置１００から取り外し可能なものであってもよい。また、記録媒体１０５ａに記録されるデータは、静止画データや動画データ等であってもよく、画像データと音声データとが別々に記録されるものであってもよい。
【００５７】
表示部１０６は、液晶ディスプレイなどの表示器により構成される。通信装置１００の動作モードが撮影モードである場合、表示部１０６は、撮像部１０４から供給される画像データを表示する。通信装置１００の動作モードが再生モードである場合、表示部１０６は、記録部１０５が記録媒体１０５ａから再生した画像データを表示する。
【００５８】
操作部１０７は、通信装置１００を操作するためのユーザインターフェースを提供する。操作部１０７は、通信装置１００を操作するための複数のボタンを有する。操作部１０７に含まれる各ボタンは、スイッチ、タッチパネル等により構成される。
【００５９】
電源供給部１０８は、ＡＣ電源またはバッテリから供給される電源を通信装置１００の各部に供給する。ＡＣ電源とは、例えば、交流電源を直流電源に変換するＡＣアダプタ等の電源装置である。バッテリは、例えば、リチウムイオンバッテリである。
【００６０】
通信装置１００の電源がオン状態である場合は、電源供給部１０８から通信装置１００全体に必要な電源が供給される。
【００６１】
ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）１０９は、制御部１０１によって実行される通信装置１００を制御するためのプログラムが記録されている。また、ＲＯＭ１０９には、通信装置１００で行われる処理や動作に対する閾値や通信装置１００で行われる処理や動作に関するパラメータ等が記録されている。なお、ＲＯＭ１０９は、ハードディスク装置等の記憶装置であってもよい。
【００６２】
＜外部装置３００＞
次に、図１を参照して、外部装置３００の構成の一例について説明を行う。
【００６３】
外部装置３００は、図１に示すように、制御部３０１、チューナ部３０２、通信部３０３、表示部３０４、操作部３０５、メモリ３０６、電源供給部３０７及びＲＯＭ３０８を有する。
【００６４】
制御部３０１は、ＲＯＭ３０８に格納されているプログラムに従って外部装置３００を制御する。また、制御部３０１は電源供給部３０７から各部に電源を供給するように制御したり、電源の供給を停止するように制御する。制御部３０１は、ＣＰＵやＭＰＵを含む。
【００６５】
チューナ部３０２は、ユーザによって選択されたテレビジョンチャンネルのテレビジョン放送を受信する。テレビジョンチャンネルの選択は、操作部３０５または不図示のリモートコントローラ（以下、「リモコン」と呼ぶ）を用いて行う。
【００６６】
メモリ３０６は、外部装置３００のバッファとして機能するメモリであり、通信部３０３によって取得された画像データ、音声データ及び補助データ等を一時的に記録することもできる。なお、メモリ３０６は、ＲＡＭに限られるものではなく、ハードディスク装置等の外部記憶装置であってもよい。
【００６７】
通信部３０３は、不図示の複数のコネクタ、電源検出部３０３ａ、ＨＰＤ出力部３０３ｂ、ＥＤＩＤ出力部３０３ｃ、データ受信部３０３ｄ及びコマンド処理部３０３ｅを有する。
【００６８】
不図示の複数のコネクタは、ケーブル２００のようなケーブルを複数接続するために用いられる。
【００６９】
電源検出部３０３ａは、所定の電源を電源伝送ライン２０１を介して通信装置１００から供給される。また、電源検出部３０３ａは、電源伝送ライン２０１を介して通信装置１００から所定の電源が供給されているか否かを検出する。
【００７０】
ＨＰＤ出力部３０３ｂは、ＨＰＤ信号をＨＰＤライン２０２を介して通信装置１００に送信する。電源検出部３０３ａにより電源伝送ライン２０１を介して通信装置１００から所定の電源が供給されていると検出された場合、ＨＰＤ出力部３０３ｂは、ＨレベルのＨＰＤ信号又はＬレベルのＨＰＤ信号を通信装置１００にＨＰＤライン２０２を介して送信する。
【００７１】
電源検出部３０３ａによって電源伝送ライン２０１を介して所定の電源が供給されていると検出された場合、ＨＰＤ出力部３０３ｂは、メモリ３０６に格納されているＥＤＩＤを通信装置１００にＤＤＣライン２０３を介して送信できるか否かを判定する。メモリ３０６には、ケーブル２００を接続するための各コネクタに対応する外部装置３００のＥＤＩＤが別々に格納されている。通信装置１００が接続されているコネクタに対応するＥＤＩＤに含まれる情報が変更されていない場合、ＨＰＤ出力部３０３ｂは、通信装置１００が接続されているコネクタに対応する外部装置３００のＥＤＩＤを通信装置１００に送信できると判定する。この場合、通信装置１００からのＥＤＩＤの要求により通信装置１００に外部装置３００のＥＤＩＤを送信できることを通信装置１００に通知するため、ＨＰＤ出力部３０３ｂは、ＨレベルのＨＰＤ信号をＨＰＤライン２０２を介して通信装置１００に送信する。なお、ＥＤＩＤの要求とは、外部装置３００のＥＤＩＤを取得するための要求である。
【００７２】
通信装置１００が接続されているコネクタに対応するＥＤＩＤに含まれる情報が変更された場合、ＨＰＤ出力部３０３ｂは、通信装置１００が接続されているコネクタに対応する外部装置３００のＥＤＩＤを通信装置１００に送信できないと判定する。この場合、通信装置１００からのＥＤＩＤの要求により通信装置１００に外部装置３００のＥＤＩＤを送信できないことを通信装置１００に通知するため、ＨＰＤ出力部３０３ｂは、ＬレベルのＨＰＤ信号をＨＰＤライン２０２を介して通信装置１００に送信する。
【００７３】
また、電源検出部３０３ａによって電源伝送ライン２０１を介して通信装置１００から所定の電源が供給されていないと検出された場合、ＨＰＤ出力部３０３ｂは、ＬレベルのＨＰＤ信号をＨＰＤライン２０２を介して通信装置１００に送信する。
【００７４】
ＥＤＩＤ出力部３０３ｃは、ＨＰＤ出力部３０３ｂによってＨＰＤライン２０２を介して通信装置１００に送信されるＨＰＤ信号がＨレベルである場合、ＤＤＣライン２０３を介して通信装置１００からＥＤＩＤの要求を受信したか否かを判定する。ＨＰＤ出力部３０３ｂから通信装置１００に送信されるＨＰＤ信号がＨレベルで、通信装置１００からＥＤＩＤの要求を受信した場合、ＥＤＩＤ出力部３０３ｃは、外部装置３００のＥＤＩＤをＤＤＣライン２０３を介して通信装置１００に送信する。
【００７５】
通信装置１００が接続されているコネクタが選択されている場合、通信装置１００は、ＴＭＤＳライン２０４を介して外部装置３００の終端抵抗に接続される。この場合、データ受信部３０３ｄは、通信装置１００から送信される画像データ、音声データ及び補助データの少なくとも一つをＴＭＤＳライン２０４を介して受信する。この場合、通信装置１００からデータ受信部３０３ｄがＴＭＤＳライン２０４を介して受信した画像データは、メモリ３０６に記録され、表示部３０４に表示される。さらに、この場合、データ受信部３０３ｄがＴＭＤＳライン２０４を介して通信装置１００から受信した音声データは、メモリ３０６に記録され、不図示のスピーカ部から出力される。さらに、この場合、データ受信部３０３ｄがＴＭＤＳライン２０４を介して通信装置１００から受信した補助データは、制御部３０１に供給される。制御部３０１は、通信装置１００から受信した補助データに従って外部装置３００を制御する。
【００７６】
通信装置１００が接続されているコネクタが選択されていない場合、通信装置１００は、ＴＭＤＳライン２０４を介して外部装置３００の終端抵抗に接続されない。この場合、データ受信部３０３は、通信装置１００から送信される画像データ、音声データ及び補助データの少なくとも一つＴＭＤＳライン２０４を介して受信しない。
【００７７】
コマンド処理部３０３ｅは、通信装置１００から送信されたＣＥＣコマンドをＣＥＣライン２０５を介して受信する。コマンド処理部３０３ｅは、通信装置１００から受信したＣＥＣコマンドを、制御部３０１に供給し、制御部３０１は、通信装置１００からコマンド処理部３０３ｅが受信したＣＥＣコマンドに従って外部装置３００を制御する。
【００７８】
また、コマンド処理部３０３ｅは、通信装置１００から受信したＣＥＣコマンドに応じて、Ａｃｋ信号またはＮａｃｋ信号をＣＥＣライン２０５を介して通信装置１００に供給する。また、コマンド処理部３０３ｅは、通信装置１００を制御するためのＣＥＣコマンドをＣＥＣライン２０５を介して通信装置１００に送信する。なお、通信装置１００を制御するためのＣＥＣコマンドは、制御部３０１で生成され、制御部３０１からコマンド処理部３０３ｅに供給される。
【００７９】
なお、通信部３０３が有する複数のコネクタの数は外部装置３００によって任意であり、２つ以上であってもよい。また、外部装置３００は、コネクタの数だけ通信装置１００以外のソース装置を接続することができる。通信部３０３が有するコネクタの数は、１つであってもよいものとする。
【００８０】
表示部３０４は、液晶ディスプレイ等の表示器により構成される。表示部３０４は、チューナ部３０２及びデータ受信部３０３ｄの少なくとも一つから供給された画像データを表示する。データ受信部３０３ｄによって通信装置１００から受信された画像データが供給された場合、表示部３０４は、通信装置１００から受信した画像データを表示する。
【００８１】
操作部３０５は、外部装置３００を操作するためのユーザインターフェースを提供する。操作部３０５は、外部装置３００を操作するための複数のボタンを有し、制御部３０１は、操作部３０５を介して入力されたユーザの指示に従って外部装置３００を制御する。操作部３０５に含まれる各ボタンは、スイッチ、タッチパネル等により構成される。操作部３０５は外部装置３００を操作するための電源ボタン、チャンネル選択ボタン、外部入力ボタンなどを有する。
【００８２】
電源供給部３０７は、ＡＣ電源等から外部装置３００の各部に必要な電源を供給する。
【００８３】
ＲＯＭ３０８は、制御部３０１によって実行される外部装置３００を制御するためのプログラムが記録されている。また、ＲＯＭ３０８には、外部装置３００で行われる処理や動作に対する閾値や外部装置３００で行われる処理や動作に関するパラメータ等が記録されている。なお、ＲＯＭ３０８は、ハードディスク装置等の記憶装置であってもよい。
【００８４】
（コマンド受信処理）
次に、図２のフローチャートを参照し、実施例１に係る通信装置１００によって行われるコマンド受信処理について説明を行う。
【００８５】
図２に示すコマンド受信処理は、制御部１０１がＲＯＭ１０９に記録されているプログラムを実行することによって、通信装置１００によって行われる処理である。なお、制御部１０１は、サーバやＯＳを介してメモリ１０２や不図示の制御部１０１のメモリに供給されたプログラムを実行することによって、図２に示すコマンド送信処理を行ってもよいものとする。なお、図２のコマンド受信処理は、通信装置１００と外部装置３００とがケーブル２００を介して接続されている場合に、通信装置１００の電源がオンにされたときに、制御部１０１によって行われるものとする。
【００８６】
Ｓ２０１において、制御部１０１は、通信装置１００と外部装置３００との間で、ＣＥＣコマンドの伝送を行えるようにするために、論理アドレスを取得するための処理を行う。論理アドレスを取得するための処理とは、例えば、＜Ｐｏｌｌｉｎｇ  Ｍｅｓｓａｇｅ＞を用いて、通信装置１００に対応する論理アドレスを取得するための処理である。通信装置１００に対応する論理アドレスが取得された場合、制御部１０１は、通信装置１００と外部装置３００との間で、ＣＥＣライン２０５を介した通信が確立されたと判定する。また、通信装置１００に対応する論理アドレスが取得されていない場合、制御部１０１は、通信装置１００と外部装置３００との間で、ＣＥＣライン２０５を介した通信が確立されていないと判定する。通信装置１００に対応する論理アドレスが取得された後、制御部１０１は、通信装置１００に対応する論理アドレスをメモリ１０２に格納し、本フローチャートは、Ｓ２０２に進む。
【００８７】
Ｓ２０２において、制御部１０１は、コマンド受信部１０３ｆが外部装置３００から送信されるＣＥＣコマンドに含まれるスタートビットを受信したか否かを判定する。制御部１０１は、外部装置３００からＣＥＣコマンドが送信されたか否かを判定するために、コマンド受信部１０３ｆがスタートビットを受信したか否かを判定する。コマンド受信部１０３ｆがスタートビットを受信した場合（Ｓ２０２でＹｅｓ）、制御部１０１は、外部装置３００からＣＥＣコマンドの送信が行われたと判定し、本フローチャートは、Ｓ２０３に進む。コマンド受信部１０３ｆがスタートビットを受信していない場合（Ｓ２０２でＮｏ）、制御部１０１は、外部装置３００からＣＥＣコマンドの送信が行われていないと判定し、本フローチャートは、Ｓ２０２に戻る。
【００８８】
Ｓ２０３において、制御部１０１は、第３の検出部１０３ｇにおいて所定のエラーの発生が検出されたか否かを判定する。第３の検出部１０３ｇにおいて所定のエラーの発生が検出された場合（Ｓ２０３でＹｅｓ）、本フローチャートはＳ２１２に進む。所定のエラーの発生が検出された場合（Ｓ２０３でＹｅｓ）、制御部１０１は、外部装置３００から送信されるＣＥＣコマンドの受信が正常に行われなかったことを外部装置３００に通知するためにＮａｃｋ信号をコマンド処理部１０３ｆに送信させる。
【００８９】
第３の検出部１０３ｇにおいて所定のエラーの発生が検出されていない場合（Ｓ２０３でＮｏ）、本フローチャートは、Ｓ２０４に進む。
【００９０】
Ｓ２０４において、制御部１０１は、外部装置３００から送信されるＣＥＣコマンドに含まれるＨｅａｄｅｒ  Ｂｌｏｃｋの受信を開始するようにコマンド受信部１０３ｆを制御する。この場合、本フローチャートは、Ｓ２０５に進む。Ｈｅａｄｅｒ  Ｂｌｏｃｋには、送信元である装置の論理アドレスを示す情報及び送信先である装置の論理アドレスを示す情報が含まれる。
【００９１】
Ｓ２０５において、制御部１０１は、第３の検出部１０３ｇにおいて所定のエラーの発生が検出されたか否かを判定する。第３の検出部１０３ｇにおいて所定のエラーの発生が検出された場合（Ｓ２０５でＹｅｓ）、本フローチャートはＳ２１２に進む。所定のエラーの発生が検出された場合（Ｓ２０５でＹｅｓ）、制御部１０１は、外部装置３００から送信されるＣＥＣコマンドの受信が正常に行われなかったことを外部装置３００に通知するためにＮａｃｋ信号をコマンド処理部１０３ｆに送信させる。
【００９２】
第３の検出部１０３ｇにおいて所定のエラーの発生が検出されていない場合（Ｓ２０５でＮｏ）、本フローチャートは、Ｓ２０６に進む。
【００９３】
Ｓ２０６において、制御部１０１は、コマンド処理部１０３ｆが受信したＨｅａｄｅｒ  Ｂｌｏｃｋに基づいて、外部装置３００から送信されるＣＥＣコマンドが通信装置１００以外の装置へのコマンドであるか否かを判定する。外部装置３００から送信されるＣＥＣコマンドが通信装置１００以外の装置へのコマンドである場合（Ｓ２０６でＹｅｓ）、Ｓ２０２に戻る。外部装置３００から送信されるＣＥＣコマンドが通信装置１００以外の装置へのコマンドでない場合（Ｓ２０６でＮｏ）、制御部１０１は、外部装置３００から送信されるＣＥＣコマンドが通信装置１００へのコマンドであると判定する。この場合（Ｓ２０６でＮｏ）、本フローチャートはＳ２０７に進む。
【００９４】
Ｓ２０７において、制御部１０１は、外部装置３００から送信されるＣＥＣコマンドに含まれるデータブロックの受信を開始するようにコマンド受信部１０３ｆを制御する。この場合、本フローチャートは、Ｓ２０８に進む。データブロックには、外部装置３００から送信されるＣＥＣコマンドに対応する動作を示す情報及びＣＥＣコマンドに対応する動作に関連するパラメータが含まれている。
【００９５】
Ｓ２０８において、制御部１０１は、第３の検出部１０３ｇにおいて所定のエラーの発生が検出されたか否かを判定する。第３の検出部１０３ｇにおいて所定のエラーの発生が検出された場合（Ｓ２０８でＹｅｓ）、本フローチャートは、Ｓ２１２に進む。所定のエラーの発生が検出された場合（Ｓ２０８でＹｅｓ）、制御部１０１は、外部装置３００から送信されるＣＥＣコマンドの受信が正常に行われなかったことを外部装置３００に通知するためにＮａｃｋ信号をコマンド処理部１０３ｆに送信させる。
【００９６】
第３の検出部１０３ｇにおいて所定のエラーの発生が検出されていない場合（Ｓ２０８でＮｏ）、本フローチャートは、Ｓ２０９に進む。
【００９７】
Ｓ２０９において、制御部１０１は、コマンド処理部１０３ｆによる外部装置３００からのＣＥＣコマンドの受信が終了したか否かを判定する。例えば、制御部１０１は、外部装置３００から受信されたＣＥＣコマンドのＥＯＭ（Ｅｎｄ  Ｏｆ  Ｍｅｓｓａｇｅ）のビットを確認することで、コマンド処理部１０３ｆによる外部装置３００からのＣＥＣコマンドの受信が終了したか否かを判定する。コマンド処理部１０３ｆによるＣＥＣコマンドの受信が終了した場合（Ｓ２０９でＹｅｓ）、本フローチャートはＳ２１０に進む。コマンド処理部１０３ｆによって受信が完了したＣＥＣコマンドは、受信バッファメモリ１０３ｉに格納される。コマンド処理部１０３ｆによるＣＥＣコマンドの受信が終了していない場合（Ｓ２０９でＮｏ）、本フローチャートはＳ２０７に戻り、制御部１０１は、データブロックの受信を継続してコマンド処理部１０３ｆに行わせる。
【００９８】
Ｓ２１０において、制御部１０１は、受信バッファメモリ１０３ｉに格納されたＣＥＣコマンドを解析する。その後、本フローチャートは、Ｓ２１１に進む。
【００９９】
Ｓ２１１において、制御部１０１は、Ｓ２１０において得られたＣＥＣの解析結果に基づいて、コマンド処理部１０３ｆが外部装置３００から受信したＣＥＣコマンドが異常であるか否かを判定する。例えば、コマンド処理部１０３ｆが外部装置３００から受信したＣＥＣコマンドがＣＥＣプロトコルに規定されるフォーマットを満たしていない場合、制御部１０１は、コマンド処理部１０３ｆが外部装置３００から受信したＣＥＣコマンドが異常と判定する。また、コマンド処理部１０３ｆが外部装置３００から受信したＣＥＣコマンドがＣＥＣプロトコルに規定されるフォーマットを満たしている場合、制御部１０１は、コマンド処理部１０３ｆが外部装置３００から受信したＣＥＣコマンドが異常でないと判定する。
【０１００】
また、例えば、コマンド処理部１０３ｆが外部装置３００から受信したＣＥＣコマンドに異常な値が含まれている場合、制御部１０１は、コマンド処理部１０３ｆが外部装置３００から受信したＣＥＣコマンドが異常と判定する。また、コマンド処理部１０３ｆが外部装置３００から受信したＣＥＣコマンドに異常な値が含まれていない場合、制御部１０１は、コマンド処理部１０３ｆが外部装置３００から受信したＣＥＣコマンドが異常でないと判定する。
【０１０１】
コマンド処理部１０３ｆが外部装置３００から受信したＣＥＣコマンドが異常である場合（Ｓ２１１でＹｅｓ）、本フローチャートはＳ２１５に進む。コマンド処理部１０３ｆが外部装置３００から受信したＣＥＣコマンドが異常でない場合（Ｓ２１１でＮｏ）、本フローチャートは終了する。
【０１０２】
Ｓ２１２において、制御部１０１は、所定のエラーが検出されたことを外部装置３００に通知するために、例えば、＜Ｆｅａｔｕｒｅ  Ａｂｏｒｔ＞を外部装置３００に送信するようにコマンド処理部１０３ｆを制御する。その後、本フローチャートは、Ｓ２１３に進む。なお、Ｓ２１２において、制御部１０１は、＜Ｆｅａｔｕｒｅ  Ａｂｏｒｔ＞以外のコマンドを用いて、所定のエラーが検出されたことを外部装置３００に通知するようにしても良い。
【０１０３】
Ｓ２１３において、制御部１０１は、受信バッファメモリ１０３ｉに格納されているデータやＣＥＣコマンドをリセットする。その後、本フローチャートは、Ｓ２１４に進む。
【０１０４】
Ｓ２１４において、制御部１０１は、受信バッファメモリ１０３ｉに格納されているデータやＣＥＣコマンドがリセットされてから経過した時間をタイマー１０１ａに計測させる。さらに、制御部１０１は、タイマー１０１ａによって計測された時間が所定の時間に達したか否かを判定する。タイマー１０１ａによって計測された時間が所定の時間に達した場合、本フローチャートは、Ｓ２０２に戻る。タイマー１０１ａによって計測された時間が所定の時間に達していない場合、タイマー１０１ａによって計測された時間が所定の時間に達するまで、制御部１０１は、待機する。所定の時間は、予めメモリ１０２に格納されている時間であってもよい。また、所定の時間は、例えば、ＤＤＣライン２０３がＨレベルになるまでのかかる時間に応じて設定されるものであってもよい。
【０１０５】
Ｓ２１５において、制御部１０１は、Ｓ２１２と同様に、所定のエラーが検出されたことを外部装置３００に通知するコマンドを送信するようにコマンド処理部１０３ｆを制御する。その後、本フローチャートは、Ｓ２１６に進む。
【０１０６】
Ｓ２１６において、制御部１０１は、Ｓ２１３と同様に受信バッファメモリ１０３ｉに格納されているデータやＣＥＣコマンドをリセットする。その後、本フローチャートは、Ｓ２０２に戻る。
【０１０７】
このように、実施例１に係る通信装置１００は、ＣＥＣコマンドを受信している間において、第３の検出部１０３ｇを用いて所定のエラーが発生したか否かを判定するようにした。さらに、通信装置１００は、ＣＥＣコマンドに含まれるスタートビット、Ｈｅａｄｅｒ  Ｂｌｏｃｋ、データブロックの少なくとも一つが受信されている場合、所定のエラーを検出したことに応じて、所定のエラーを外部装置３００に通知するようにした。これにより、通信装置１００は、外部装置３００からのＣＥＣコマンドの受信が終了する前に、通信装置１００と外部装置３００との間のＣＥＣライン２０５を介した通信にエラーが発生していることを検知し、外部装置３００にこれを通知することができる。
【０１０８】
これにより、通信装置１００は、所定のエラーの通知に応じて、通信装置１００と外部装置３００との間におけるＣＥＣコマンドの伝送が正常に行われていないと正確に外部装置３００に判定させることができる。
【０１０９】
なお、実施例１において、制御部１０１は、Ｓ２１４またはＳ２１６が行われた後に、Ｓ２０２を行うようにしたが、これに限られないものとする。例えば、実施例１において、制御部１０１は、Ｓ２１４またはＳ２１６が行われた後に、通信装置１００がＩＤＬＥ状態になるように制御してもよい。
【０１１０】
Ｓ２０５でＹｅｓの場合、制御部１０１は、ＣＥＣライン２０５の電位をＬレベルに変更することで、所定のエラーが検出されたタイミングで外部装置３００から受信していたＣＥＣコマンドを通信装置１００に再送するように外部装置３００に要求しても良い。
【０１１１】
［実施例２］
実施例２において、実施例１において説明された処理や構成と共通する箇所は説明を省略し、実施例１において説明された処理や構成と異なる箇所については、説明を行うものとする。
【０１１２】
実施例１において、制御部１０１は、所定のエラーが検出された後（Ｓ２０３でＹｅｓ、Ｓ２０５でＹｅｓ及びＳ２０８でＹｅｓの少なくとも一つ場合）、所定のエラーの発生を外部装置３００に通知するようにした（Ｓ２１２）。しかし、実施例２では、制御部１０１は、所定のエラーが検出された後（Ｓ２０３でＹｅｓ、Ｓ２０５でＹｅｓ及びＳ２０８でＹｅｓの少なくとも一つ場合）、所定のエラーが検出されたタイミングで受信したＣＥＣコマンドの種類を検出する。その後、制御部１０１は、検出結果に応じて、所定のエラーが検出されたタイミングで受信したＣＥＣコマンドを要求するためのコマンドを外部装置３００に送信するか否かを制御する。
【０１１３】
（コマンド送信処理）
次に、図３のフローチャートを参照し、実施例２に係る通信装置１００によって行われるコマンド送信処理について説明を行う。
【０１１４】
図３に示すコマンド送信処理は、制御部１０１がＲＯＭ１０９に記録されているプログラムを実行することによって、通信装置１００によって行われる処理である。なお、制御部１０１は、サーバやＯＳを介してメモリ１０２や不図示の制御部１０１のメモリに供給されたプログラムを実行することによって、図３に示すコマンド受信処理を行ってもよいものとする。なお、図３のコマンド受信処理は、通信装置１００と外部装置３００とがケーブル２００を介して接続されている場合に、通信装置１００の電源がオンにされたときに、制御部１０１によって行われるものとする。
【０１１５】
なお、図３におけるＳ２０１〜Ｓ２１６は、図２におけるＳ２０１〜Ｓ２１６と共通する処理であるため、説明を省略する。
【０１１６】
所定のエラーの発生が検出された場合（Ｓ２０３でＹｅｓ）、本フローチャートは、Ｓ３０１に進む。所定のエラーの発生が検出された場合（Ｓ２０５でＹｅｓ）、本フローチャートは、Ｓ３０１に進む。所定のエラーの発生が検出された場合（Ｓ２０８でＹｅｓ）、本フローチャートは、Ｓ３０１に進む。
【０１１７】
Ｓ３０１において、制御部１０１は、所定のエラーが検出されたタイミングでコマンド処理部１０３ｆによって受信されていたＣＥＣコマンドが応答コマンドであるか否かを判定する。応答コマンドとは、通信装置１００が外部装置３００に送信した要求コマンドを用いて要求した特定のデータを含むＣＥＣコマンドである。要求コマンドとは、特定のデータを外部装置３００に要求するためのＣＥＣコマンドである。要求コマンドとは、例えば、＜Ｇｉｖｅ  Ｄｅｖｉｃｅ  Ｐｏｗｅｒ  Ｓｔａｔｕｓ＞である。
【０１１８】
所定のエラーが検出されたタイミングでコマンド処理部１０３ｆによって受信されていたＣＥＣコマンドが応答コマンドである場合（Ｓ３０１でＹｅｓ）、本フローチャートは、Ｓ３０２に進む。所定のエラーが検出されたタイミングでコマンド処理部１０３ｆによって送信されていたＣＥＣコマンドが応答コマンドでない場合（Ｓ３０１でＮｏ）、本フローチャートはＳ２１２に進む。この場合（Ｓ３０１でＮｏ）、制御部１０１は、所定のエラーが検出されたタイミングでコマンド処理部１０３ｆによって受信されていたＣＥＣコマンドが応答コマンドと異なるコマンドであると判定する。
【０１１９】
Ｓ３０２において、制御部１０１は、外部装置３００に対して所定のエラーが検出されたタイミングでコマンド処理部１０３ｆによって受信されていた応答コマンドに対応する要求コマンドを送信するようにコマンド処理部１０３ｆを制御する。その後、本フローチャートは、終了する。
【０１２０】
このように実施例２に係る通信装置１００は、所定のエラーが発生したタイミングで受信されていたＣＥＣコマンドの種類に応じて、再び同じＣＥＣコマンドを外部装置３００に要求するか否かを制御するようにした。
【０１２１】
実施例２において、通信装置１００は、所定のエラーが発生したタイミングで受信されていたＣＥＣコマンドが応答コマンドである場合（Ｓ３０１でＹｅｓ）、ＣＥＣコマンドの要求を外部装置３００に行うようにした。さらに、通信装置１００は、所定のエラーが発生したタイミングで受信されていたＣＥＣコマンドが応答コマンドでない場合（Ｓ３０１でＮｏ）、ＣＥＣコマンドの要求を外部装置３００に送信しないようにした。
【０１２２】
なお、実施例２において、所定のエラーが発生したタイミングで受信されていたＣＥＣコマンドが応答コマンドであるか否かに応じて、再び同じＣＥＣコマンドの要求を外部装置３００に対して行うか否かを制御するようにした。しかし、これに限られないものとする。例えば、所定のエラーが発生したタイミングで受信されていたＣＥＣコマンドが要求コマンドであるか否かに応じて、再び同じＣＥＣコマンドの送信の要求を外部装置３００に行うか否かを制御するようにしたてもよい。
【０１２３】
なお、実施例２に係る通信装置１００は、実施例１と共通する処理や構成については、実施例１と同様の効果を有するものとする。
【０１２４】
（他の実施例）
本発明に係る通信装置１００は、実施例１及び２で説明した通信装置１００に限定されるものではない。例えば、本発明に係る通信装置１００は、複数の装置から構成されるシステムにより実現することも可能である。
【０１２５】
また、実施例１及び２で説明した様々な処理及び機能は、プログラムにより実現することも可能である。この場合、本発明に係るプログラムは、コンピュータ（ＣＰＵ等を含む）で実行可能であり、実施例１及び２で説明した様々な機能を実現することになる。
【０１２６】
本発明に係るコンピュータプログラムは、コンピュータ上で稼動しているＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）などを利用して、実施例１及び２で説明した様々な処理及び機能を実現してもよいことは言うまでもない。
【０１２７】
本発明に係るプログラムは、コンピュータで読取可能な記録媒体から読み出され、コンピュータで実行されることになる。コンピュータで読取可能な記録媒体には、ハードディスク装置、光ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、メモリカード、ＲＯＭ等を用いることができる。また、本発明に係るログラムは、通信インターフェースを介してコンピュータに提供され、当該コンピュータで実行されるようにしてもよい。
【符号の説明】
【０１２８】
１００  通信装置
３００  外部装置
【図１】
2015119342.tif 000003
【図２】
2015119342.tif 000004
【図３】
2015119342.tif 000005