(57)【要約】【課題】電子機器において、外部機器との通信時におけるホストコントローラの処理負荷を軽減するとともに、通信機能の追加にも柔軟に対応可能にする。【解決手段】電子機器の通信制御装置は、ホストマイコンと通信し（ＳＴ１１）、発行されたコマンドを受信すると、先頭バイトの識別情報を判別する（ＳＴ１２）。先頭バイトの値が「０７ｈ」以外であれば、通信制御装置であらかじめ処理のシーケンスが決められているので、先頭バイトの値に応じた通信シーケンスが通信制御装置内で生成され（ＳＴ１３）、その通信シーケンスにしたがってバッテリパックとの通信処理が実行される（ＳＴ１４）。一方、先頭バイトの値が「０７ｈ」であれば、通信制御装置ではあらかじめ処理のシーケンスが決められていないので、コマンドのデータ領域のデータがバッテリパックに対してそのまま送信される（ＳＴ１４）。【選択図】図７
2008205609.tif 000002
【特許請求の範囲】
【請求項１】
通信機能を備えた外部機器との間で通信を行う電子機器において、
制御情報を発行して、前記外部機器との間の通信処理を指示するホストコントローラと、
前記ホストコントローラからの前記制御情報を受信し、前記制御情報に応じた前記外部機器との間の通信処理を実行する通信制御回路と、
を有し、
前記通信制御回路は、
前記外部機器との間で、あらかじめ決められた１つ以上の通信処理手順を実行する第１の通信処理手段と、
前記ホストコントローラからの前記制御情報のデータ領域に格納されたデータをそのまま前記外部機器に送信し、その応答データを前記外部機器から受信する第２の通信処理手段と、
前記ホストコントローラからの前記制御情報に基づいて、前記制御情報により指定される１つの前記通信処理手順を前記第１の通信処理手段に実行させるか、あるいは前記第２の通信処理手段の処理を実行させるかを制御する実行制御手段と、
を備えたことを特徴とする電子機器。
【請求項２】
前記実行制御手段は、前記制御情報に含まれる識別情報に基づいて、いずれかの前記通信処理手順を前記第１の通信処理手段に実行させるか、あるいは前記第２の通信処理手段の処理を実行させるかを判別することを特徴とする請求項１記載の電子機器。
【請求項３】
前記識別情報は、実行すべき前記通信処理手順を指定するための情報と兼用されることを特徴とする請求項２記載の電子機器。
【請求項４】
前記ホストコントローラは、前記識別情報を前記制御情報の先頭領域に挿入して発行することを特徴とする請求項２記載の電子機器。
【請求項５】
前記第２の通信処理手段は、前記制御情報の前記データ領域に格納されたデータを、そのままの状態で一回の送信処理により前記外部機器に送信することを特徴とする請求項１記載の電子機器。
【請求項６】
前記第１の通信処理手段によって前記各通信処理手順が実行されることにより、前記ホストコントローラと前記外部機器との間の通信プロトコルが変換されることを特徴とする請求項１記載の電子機器。
【請求項７】
前記通信処理手順のうちの１つは、あらかじめ決められた１つ以上の情報の送信を前記外部機器に対して順次要求し、その要求ごとに情報を受信する処理を含むことを特徴とする請求項１記載の電子機器。
【請求項８】
前記通信処理手順のうちの１つは、前記制御情報の前記データ領域に含まれる１つ以上のデータを、前記外部機器に対して順次送信する処理を含むことを特徴とする請求項１記載の電子機器。
【請求項９】
通信インタフェースを通じて外部機器と通信するための通信制御装置において、
前記外部機器との間で、あらかじめ決められた１つ以上の通信処理手順を実行する第１の通信処理手段と、
ホストコントローラからの制御情報のデータ領域に格納されたデータをそのまま前記外部機器に送信し、その応答データを前記外部機器から受信する第２の通信処理手段と、
前記ホストコントローラから送信された前記制御情報に基づいて、前記制御情報により指定される１つの前記通信処理手順を前記第１の通信処理手段に実行させるか、あるいは前記第２の通信処理手段の処理を実行させるかを制御する実行制御手段と、
を備えたことを特徴とする通信制御装置。
【請求項１０】
通信インタフェースを通じて外部機器と通信するための通信制御方法において、
実行制御手段が、ホストコントローラから送信された制御情報に基づいて、前記制御情報に応じた所定の通信処理手順を第１の通信処理手段に実行させるか、あるいは第２の通信処理手段の処理を実行させるかを判定し、
前記第１の通信処理手段が、前記実行制御手段の判定結果に基づき、あらかじめ決められた１つ以上の前記通信処理手順のうち、前記ホストコントローラからの前記制御情報により指定される１つの前記通信処理手順を実行し、
前記第２の通信処理手段が、前記実行制御手段の判定結果に基づき、前記ホストコントローラからの前記制御情報をそのまま前記外部機器に送信し、その応答データを前記外部機器から受信する、
ことを特徴とする通信制御方法。
【請求項１１】
通信インタフェースを通じて外部機器と通信するための通信制御プログラムにおいて、
コンピュータを、
前記外部機器との間で、あらかじめ決められた１つ以上の通信処理手順を実行する第１の通信処理手段、
ホストコントローラからの制御情報のデータ領域に格納されたデータをそのまま前記外部機器に送信し、その応答データを前記外部機器から受信する第２の通信処理手段、
前記ホストコントローラから送信された前記制御情報に基づいて、前記制御情報により指定される１つの前記通信処理手順を前記第１の通信処理手段に実行させるか、あるいは前記第２の通信処理手段の処理を実行させるかを制御する実行制御手段、
として機能させることを特徴とする通信制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信機能を備えた外部機器との間で通信を行う電子機器、その機器に設けられる通信制御装置、方法およびプログラムに関する。
【背景技術】
【０００２】
従来、ビデオカメラやデジタルスチルカメラのような撮像装置、携帯用電話機、あるいはパーソナルコンピュータなどの電子機器には、電源としてリチウムイオン電池、ニッケルカドミウム（ＮｉＣｄ）電池、ニッケル水素電池などの２次電池を内蔵したバッテリパックが広く使用されている。今日では、マイクロコンピュータ（以下、マイコンと略称する）の低価格化や集積回路化が進み、こうしたバッテリパックにマイコンを内蔵して、電子機器との間で通信を行うようにしたものが普及している。
【０００３】
この種のバッテリパックでは、内蔵したマイコンにより充放電電圧の検出や充電回数の管理などを行い、電子機器側のホストマイコンに対して必要なバッテリ情報を送信するものがある。電子機器側では、内部のマイコンの処理により、通信インタフェースを介してバッテリパックにバッテリ情報を要求し、それに応じて取得したバッテリ情報を基に、バッテリ残量を液晶パネルなどに表示できるようになる（たとえば、特許文献１参照）。
【０００４】
なお、このような電子機器に内蔵された通信インタフェースは、内部のマイコンとバッテリパックとの間での通信プロトコル変換機能を備えているものがある。ここで、特許文献２にはプロトコル変換装置の発明が記載されている。ここでは、無線通信機能を有しない装置であっても、パーソナルコンピュータを利用することなく、無線通信を可能にするとともに、複数の異なる有線または赤外線の通信プロトコルを識別して無線通信プロトコルに変換できる。さらに、特許文献３にはプロトコル変換装置およびプロトコル変換方法の記載があり、ここでは、複数の端末間のデータに対し、それぞれの端末または通信網に最適な端末プロトコルを選択し、端末間でのプロトコルの整合を行うようにしている。
【特許文献１】特開２００５−３４５３６９号公報（段落番号［００２１］〜［００３０］、図１）
【特許文献２】特開２００５−３３２９６号公報（段落番号［０００９］〜［００４５］、図１）
【特許文献３】国際公開第０１／０６１９６３号公報（第９頁〜第１１頁、図１）
【発明の開示】
【発明が解決しようとする課題】
【０００５】
ところで、一般にバッテリパックなどの外部機器との接続シーケンスを作成するためのシーケンス処理プログラムは、電子機器側のホストマイコンに備えられている。そして、上述したプロトコル変換装置では、ホストマイコンで作成された通信プロトコルに対応する接続シーケンスを受け取って、バッテリ通信に対応する所定のプロトコル変換を行うようにしていた。
【０００６】
ところが、従来の撮像装置などに備えられているホストマイコンは、バッテリパックとの通信制御以外に、撮像装置自体の動作をコントロールするために使用されている。そのため、ホストマイコンで管理すべきタスクは多岐にわたるので、ホストマイコンでの処理負荷が増大し、処理されるタスクとしてのバッテリ残量表示やバッテリパックの認証処理などを迅速に行えないおそれがあった。また、ホストマイコン側でのソフトウェアのコードサイズが大きくなり、ホストマイコン側のソフト開発工数が多くなるという問題もあった。
【０００７】
また、撮像装置内のホストマイコンや通信インタフェースについては、撮像装置とバッテリパックとの間の新たな処理機能の追加など、製品の仕様変更にも、開発コストを増大させることなく柔軟に対応できることが望まれていた。
【０００８】
本発明はこのような点に鑑みてなされたものであり、外部機器との通信時におけるホストコントローラの処理負荷が軽減されるとともに、通信機能の追加にも柔軟に対応可能な電子機器、この電子機器における通信制御装置、方法およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明では、上記問題を解決するために、通信機能を備えた外部機器との間で通信を行う電子機器において、制御情報を発行して、前記外部機器との間の通信処理を指示するホストコントローラと、前記ホストコントローラからの前記制御情報を受信し、前記制御情報に応じた前記外部機器との間の通信処理を実行する通信制御回路とを有し、前記通信制御回路は、前記外部機器との間で、あらかじめ決められた１つ以上の通信処理手順を実行する第１の通信処理手段と、前記ホストコントローラからの前記制御情報のデータ領域に格納されたデータをそのまま前記外部機器に送信し、その応答データを前記外部機器から受信する第２の通信処理手段と、前記ホストコントローラからの前記制御情報に基づいて、前記制御情報により指定される１つの前記通信処理手順を前記第１の通信処理手段に実行させるか、あるいは前記第２の通信処理手段の処理を実行させるかを制御する実行制御手段とを備えたことを特徴とする電子機器が提供される。
【００１０】
このような電子機器では、ホストコントローラから発行される制御情報に応じて、通信制御回路での外部機器との間の通信処理が制御される。通信制御回路において、第１の通信処理手段は、実行制御手段による判定結果に応じて、外部機器との間で、あらかじめ決められた１つ以上の通信処理手順を実行する。また、第２の通信処理手段は、実行制御手段による判定結果に応じて、ホストコントローラからの制御情報のデータ領域に格納されたデータをそのまま外部機器に送信し、その応答データを外部機器から受信する。そして、実行制御手段は、ホストコントローラからの制御情報に基づいて、この制御情報により指定される１つの通信処理手順を第１の通信処理手段に実行させるか、あるいは第２の通信処理手段の処理を実行させるかを判定して、その判定結果に応じて、第１あるいは第２の通信処理手段を制御する。
【発明の効果】
【００１１】
本発明によれば、第１の通信処理手段により、外部機器との間で、あらかじめ決められた１つ以上の通信処理手順が実行されることで、ホストコントローラの処理負荷を軽減できる。また、新たな通信処理機能を追加する場合には、第２の通信処理手段により、ホストコントローラからの制御情報のデータ領域のデータがそのまま外部機器に送信されるようにしたので、通信制御回路の仕様を変更せずに機能追加に対応でき、システムの拡張性が高まる。
【発明を実施するための最良の形態】
【００１２】
以下、本発明の実施の形態の電子機器について、デジタルスチルカメラあるいはデジタルビデオカメラなどとして実現される撮像装置に適用した場合を例にして、図面を参照しながら説明する。
【００１３】
図１は、実施の形態に係る撮像装置およびバッテリパックの構成を示すブロック図である。
図１において、撮像装置１は、バッテリパック２から供給される電源によって駆動される装置であり、電源供給を受けるための正極端子１１および負極端子１２、通信端子１３、ホストコントローラとしてのマイクロコンピュータ（以下、ホストマイコンという。）１４、レギュレータ１５、撮像・記録処理部１６、表示部１７、通信制御装置１８などを備えている。また、この撮像装置１に対して着脱可能に接続されるバッテリパック２は、撮像装置１との通信機能を備えている。このバッテリパック２は、電源供給用の正極端子２１および負極端子２２、通信端子２３、バッテリセル２４、マイクロコンピュータ（以下、バッテリマイコンという。）２５、通信インタフェース２６、ならびに電流検出抵抗２７などを備えている。
【００１４】
撮像装置１にバッテリパック２が装着されると、バッテリパック２の正極端子２１、負極端子２２および通信端子２３が、それぞれ撮像装置１の正極端子１１、負極端子１２および通信端子１３に接続される。そして、正極端子１１および負極端子１２を通じてバッテリパック２から撮像装置１に電源が供給される。
【００１５】
撮像装置１のホストマイコン１４は、撮像装置１の動作を統括的に制御する制御部である。このホストマイコン１４は、通信制御装置１８に対してコマンドを送信することで、バッテリパック２側と通信して、バッテリパック２から所望のデータを受信することが可能になっている。そして、たとえば、受信したデータを利用して、バッテリ残量を表示するための表示情報を生成して、表示部１７に出力する。
【００１６】
通信制御装置１８は、バッテリパック２側と通信するための電気的なインタフェース回路と、その通信手順を制御するための制御回路とが一体化された回路であり、ＩＣ（Integrated Circuit）などとして実現される。この通信制御装置１８は、ホストマイコン１４からのコマンドに応じて、バッテリパック２側と通信端子１３を介して通信する。
【００１７】
レギュレータ１５は、正極端子１１および負極端子１２に印加された電源電圧を所定の電圧に安定化して、装置内部に供給する。撮像・記録処理部１６は、画像の撮像や、撮像により得られた画像データの記録媒体への記録、撮像中の画像や記録された画像の表示データ生成などの処理を行うブロックである。表示部１７は、たとえばＬＣＤ（Liquid Crystal Display）などを備え、撮像・記録処理部１６およびホストマイコン１４において生成された表示データを受けて画像を表示する。
【００１８】
一方、バッテリパック２は、バッテリセル２４が発生する電圧を正極端子２１および負極端子２２を通じて撮像装置１に供給する。バッテリセル２４としては、たとえばリチウムイオン型などの二次電池を用いることができる。なお、リチウムイオン二次電池のように、放電電圧が比較的緩やかでかつ直線的に低下する放電特性を有する二次電池を用いることにより、撮像装置１側でバッテリ残量を高精度に検出して、たとえば使用可能な残り時間としてバッテリ残量を表示することが可能となる。
【００１９】
バッテリマイコン２５は、通信インタフェース２６および通信端子２３を介して、撮像装置１の通信制御装置１８と通信する。また、バッテリセル２４の電圧やこれに流れる電流を検出する機能や、撮像装置１側から送信される認証情報を処理して応答する機能なども備えている。
【００２０】
通信インタフェース２６は、撮像装置１側と通信するための電気的なインタフェース回路であり、通信端子２３を介して撮像装置１側と信号を送受信する。
ここで、撮像装置１とバッテリパック２との間で通信する目的は、主に、バッテリ残量を撮像装置１側で表示すること、接続されたバッテリパック２が正しい通信相手であることを確認（認証処理）すること、およびバッテリパック２に使用履歴を書き込むことなどである。
【００２１】
バッテリ残量の表示は、以下のように行われる。バッテリマイコン２５では、バッテリマイコン２５が、バッテリセル２４の電圧および放電電流（または充電電流、または充放電電流でもよい）を、内蔵するＡＤコンバータを介して測定する。なお、放電電流は、電流検出抵抗２７の両端電圧を基に測定できる。バッテリマイコン２５は、これらの電圧および放電電流の測定情報から、撮像装置１に送信すべき情報を計算する。たとえば、放電流を一定周期で積算した積算値を計算する。
【００２２】
バッテリマイコン２５は、これらの情報を、撮像装置１からの要求に応じて送信する。撮像装置１では、ホストマイコン１４が、撮像装置１での消費電力などの情報をあらかじめ保持しており、この保持している情報と、バッテリパック２から供給された情報とから、たとえばバッテリセル２４を使用可能な残り時間などの残量情報を計算する。そして、計算結果に応じた残量表示画像が表示部１７に表示される。
【００２３】
また、バッテリパック２に対する認証処理では、たとえば、ホストマイコン１４とバッテリマイコン２５の双方が複数個の固有のデータを持っていて、バッテリマイコン２５が通信インタフェース２６、通信端子２３、通信端子１３を介して通信制御装置１８と複数回の通信を実行する。ホストマイコン１４は、通信制御装置１８を通じて供給された、バッテリマイコン２５側の固有のデータを鍵情報で解読した後、自身が持つ固有のデータと比較して、バッテリパック２が正しい通信相手であることを確認する。ホストマイコン１４では、通信相手のバッテリパック２が正規のものではないと判定した場合、撮像装置１を電源オフの状態に移行させて、不正なバッテリパック２を使用できないように制御する。
【００２４】
また、バッテリパック２に使用履歴を書き込むには、ホストマイコン１４から、バッテリパック２を使用した記録データを、通信制御装置１８、通信端子１３、通信端子２３、通信インタフェース２６を介して、バッテリマイコン２５へ通知し、バッテリマイコン２５は、そのデータを保存する。バッテリマイコン２５に保存されたデータは、たとえば、バッテリパック２が充電器などに挿されたとき、「撮像装置１に挿入された場合に使用可能な時間」として充電器で表示するために読み出される。
【００２５】
つぎに、通信制御装置１８の構成および動作について、具体的に説明する。ここではまず、２通りのインタフェース変換装置３０，４０について説明し、その後に本実施の形態に係る通信制御装置１８の構成および動作について説明する。なお、これらのインタフェース変換装置３０，４０は、通信インタフェースを通じて外部機器と通信する機能を備えている点で、本実施の形態に係る通信制御装置１８と共通するものである。
【００２６】
図２は、インタフェース変換装置の一例を示すブロック回路図である。
インタフェース変換装置３０は、プルアップ抵抗３１、プルアップダイオード３２、およびＮチャネル電界効果型トランジスタ（以下、Ｎｃｈ−ＦＥＴと記す）３３によって構成されている。プルアップ抵抗３１の一端はＶＤＤ（電源電圧）端子３４と接続されている。また、Ｎｃｈ−ＦＥＴ３３のソース端子はＧＮＤ（接地電圧）端子３５に接続され、そのドレイン端子はプルアップダイオード３２を介してプルアップ抵抗３１の他端に接続されている。
【００２７】
インタフェース変換装置３０は、ホストマイコン１４側の２つの端子３６および３７に接続され、信号ＲｘがＮｃｈ−ＦＥＴ３３のドレイン端子とプルアップダイオード３２の接続点３８の電位によって決定されている。そして、端子３７からは信号ＴｘをＮｃｈ−ＦＥＴ３３のゲート端子に供給して、Ｎｃｈ−ＦＥＴ３３をオン／オフしている。また、インタフェース変換装置３０の通信端子１３は接続点３８と接続され、バッテリパック２との間で信号を送受信するように構成されている。
【００２８】
非通信時には、インタフェース変換装置３０に対してホストマイコン１４側の端子３７からＨｉｇｈレベルの信号Ｔｘが出力され、通信端子１３がＬｏｗレベルに維持される。ホストマイコン１４からの信号送信時には、ホストマイコン１４側の端子３７の信号ＴｘをＨｉｇｈ／Ｌｏｗに切換えてＮｃｈ−ＦＥＴ３３をオン／オフすることで、Ｌｏｗ／Ｈｉｇｈに変化する送信信号が通信端子１３から送信される。受信時には、バッテリパック２から通信端子１３に供給される信号電圧が、ホストマイコン１４側の端子３６で信号Ｒｘとして受信される。
【００２９】
図３は、別のインタフェース変換装置の例を示すブロック回路図である。
インタフェース変換装置４０は、プルアップ抵抗４１、プルアップダイオード４２、およびＮｃｈ−ＦＥＴ４３からなるインタフェース回路に対して、サブマイコン４９が追加された構成を有している。また、ホストマイコン１４側の２つの端子４６および端子４７がサブマイコン４９と接続され、インタフェース変換装置４０の間でそれぞれ信号ＴｘおよびＲｘを送受信している。
【００３０】
ここで、プルアップ抵抗４１、プルアップダイオード４２、Ｎｃｈ−ＦＥＴ４３はＶＤＤ（電源電圧）端子４４とＧＮＤ（接地電圧）端子４５の間で、図２で説明したインタフェース変換装置３０の場合と同様に接続されている。すなわち、非通信時には、サブマイコン４９からＨｉｇｈレベルの信号ｔｘが出力され、通信端子１３がＬｏｗレベルに維持される。サブマイコン４９からバッテリパック２への信号送信時には、サブマイコン４９が信号ｔｘをＨｉｇｈ／Ｌｏｗに切換えてＮｃｈ−ＦＥＴ４３をオン／オフすることで、Ｌｏｗ／Ｈｉｇｈに変化する送信信号が通信端子１３から送信される。受信時には、バッテリパック２から通信端子１３に供給される信号電圧が、サブマイコン４９によって信号ｒｘとして受信される。
【００３１】
また、サブマイコン４９は、ホストマイコン１４側と送受信する信号と、バッテリパック２側と送受信する信号との通信プロトコルを変換する処理を行う。たとえば、サブマイコン４９は、ホストマイコン１４から送信されるコマンドなどの制御情報により指定される所定の通信シーケンスを生成して、その通信シーケンスにしたがった通信処理をバッテリパック２との間で実行する機能を備えている。
【００３２】
このように、ホストマイコン１４から制御情報をサブマイコン４９に通知するだけで、サブマイコン４９において独自に通信シーケンスを生成して通信処理を実行する構成とすることで、バッテリパック２との通信処理時の処理負荷が分散されて、ホストマイコン１４における処理負荷が軽減され、撮像装置１内部に対する制御処理など、他の処理を高速化できるようになる。
【００３３】
ところで、この図３のように、サブマイコン４９において通信プロトコル変換を行う構成とした場合には、サブマイコン４９において生成される通信シーケンスはあらかじめ決められており、ホストマイコン１４は、あらかじめ決められた制御情報によりこれらの通信シーケンスの選択を指示することしかできない。このため、バッテリパック２との間で、新たな情報の送受信や動作指示などを実行できるようにするためには、ホストマイコン１４側から送信する制御情報を追加するなど、ホストマイコン１４の制御手順を変更するだけでなく、サブマイコン４９が保持する通信処理プログラムを書き換えるなど、サブマイコン４９の機能や構成をも変更する必要があり、拡張性が損なわれるという問題があった。
【００３４】
一方、図２の構成では、ホストマイコン１４とバッテリパック２との間では、インタフェース変換装置３０を介してデータがそのまま送受信されるのみであるので、新たな通信処理を行う場合でも、このインタフェース変換装置３０自体の機能や構成を変更する必要はない。しかし、上述したように、ホストマイコン１４での処理負荷は増大してしまう。
【００３５】
そこで、本実施の形態における撮像装置１内の通信制御装置１８では、図３に示すインタフェース変換装置４０と同じハードウェア構成を有しながらも、図２のような構成で可能であった通信手順も実行可能にして、処理負荷の分散と拡張性の向上とを両立させる。
【００３６】
図４は、通信制御装置を介した第１の通信手順を示すシーケンス図である。
この図４に示す通信手順は、図２に示したインタフェース変換装置３０を用いて実施可能であった通信手順に対応している。ホストマイコン１４では、通信端子１３と通信端子２３との間の通信プロトコルにしたがって送受信データが生成される。通信制御装置１８では、ホストマイコン１４からのデータをそのままバッテリパック２側に送信し、バッテリパック２側からのデータをそのままホストマイコン１４に送信する。すなわち、図４において、ホストマイコン１４と通信制御装置１８との間で送受信される通信データＡ１〜Ａ５は、それらに応じて通信制御装置１８とバッテリパック２との間で送受信される通信データａ１〜ａ５とそれぞれ同一となる。
【００３７】
図５は、通信制御装置を介した第２の通信手順を示すシーケンス図である。
この図５に示す通信手順は、通信制御装置１８内のサブマイコン（図３のサブマイコン４９に対応）において通信プロトコルを変換する場合の通信手順である。ホストマイコン１４は、通信制御装置１８に対してその通信端子１３から送受信される通信データを指定するためのコマンドデータＡｃ、およびサブマイコン４９で処理されたレスポンスデータＡｒだけが送受信される。なお、通信制御装置１８およびホストマイコン１４は、たとえばコマンドデータＡｃ、レスポンスデータＡｒをそれぞれ受信したときに、その受信通知を相手側に返信してもよい。
【００３８】
通信制御装置１８では、バッテリパック２と通信するための制御プロトコルにしたがった接続シーケンス自体を生成して、バッテリパック２との間で通信データａ１〜ａ５の送受信処理を行う。すなわち、通信制御装置１８は、コマンドデータＡｃを受信すると、通信データａ１〜ａ５の送受信処理からなる一連の通信処理を実行する。そして、一連の通信処理の実行が終了すると、その実行結果に応じたレスポンスデータＡｒを、ホストマイコン１４に送信する。ここで、通信制御装置１８は、コマンドデータＡｃから、指定された通信シーケンスを判別して、その通信シーケンスにしたがって通信処理を実行することができる。
【００３９】
本実施の形態における通信制御装置１８は、こうした第１および第２の通信手順の両方に対応できるように構成されている。
図６は、ホストマイコンと通信制御装置との通信プロトコルの例を示す図である。
【００４０】
ここでは、図６（Ａ）〜（Ｄ）に示す４種類の通信プロトコルについて説明する。これらのうち、図６（Ａ）〜（Ｃ）は上記の第２の通信手順に対応し、（Ｄ）は上記の第１の通信手順に対応する。
【００４１】
図６（Ａ）には、バッテリセル２４の残量を撮像装置１などで表示するための通信プロトコルが示されている。この通信プロトコルは、バッテリ残量の表示のためのコマンドＣ１とバッテリパック２のレスポンスＲ１からなり、それぞれ先頭の０バイトに識別情報「０１ｈ」あるいは「０２ｈ」を含んでいる。そして、コマンドＣ１およびレスポンスＲ１のそれぞれが、上記の識別情報と、ｎバイトの送信データＴ１−１〜Ｔ１−ｎあるいは受信データＲ１−１〜Ｒ１−ｎと、１バイトのチェックコードからなる（ｎ＋２）バイトで構成されている。
【００４２】
通信制御装置１８では、ホストマイコン１４からこのようなデータが送信されて、バッテリパック２との通信が要求されると、受け取った識別情報「０１ｈ」がサブマイコン４９で判別され、コマンドＣ１に応じた通信シーケンスにしたがった処理が実行される。コマンドＣ１内の送信データＴ１−１〜Ｔ１−ｎには、たとえばバッテリパック２に送信すべきデータなどが格納され、サブマイコン４９は、受信した送信データＴ１−１〜Ｔ１−ｎを基にバッテリパック２への送信データを構築し、通信シーケンスごとにあらかじめ決められた手順でこれらの送信データを順次バッテリパック２に送信する。
【００４３】
そして、各送信データに応じた受信データを受信した後、それらの受信データを基にレスポンスＲ１を生成する。このレスポンスＲ１には、識別情報「０２ｈ」とチェックコードとが付加されて、ホストマイコン１４に対して送信される。なお、この例では、バッテリパック２からの受信データとして、たとえば、バッテリセル２４の電圧、放電電流、充電電流などが順次受信される。
【００４４】
図６（Ｂ）には、バッテリパック２が正しい通信相手であることを確認するための通信プロトコルが、同図（Ｃ）は、バッテリパック２に使用履歴を書き込むための通信プロトコルが示されている。
【００４５】
すなわち、バッテリパック２の認証を要求するコマンドＣ２は、先頭バイトの識別情報「０３ｈ」、ｎバイトの送信データＴ２−１〜Ｔ２−ｎ、１バイトのチェックコードから構成されている。また、コマンドＣ２に対するレスポンスＲ２は、先頭バイトの識別情報「０４ｈ」、ｎバイトの受信データＲ２−１〜Ｒ２−ｎ、１バイトのチェックコードから構成されている。
【００４６】
また、バッテリパック２の使用履歴の書き込み要求のためのコマンドＣ３は、先頭バイトの識別情報「０５ｈ」、ｎバイトの送信データＴ３−１〜Ｔ３−ｎ、１バイトのチェックコードから構成されている。また、コマンドＣ３に対するレスポンスＲ３は、先頭バイトの識別情報「０６ｈ」、ｎバイトの受信データＲ３−１〜Ｒ３−ｎ、１バイトのチェックコードから構成されている。
【００４７】
コマンドＣ１の場合と同様に、通信制御装置１８のサブマイコン４９は、コマンドＣ２およびＣ３の先頭バイトの識別情報を基に、指定された通信シーケンスを判別し、コマンド内の送信データを基にバッテリパック２への送信データを構築して、指定された通信シーケンスにしたがった処理を実行する。そして、バッテリパック２からの受信データを基に、対応するレスポンスＲ２あるいはＲ３を生成して、ホストマイコン１４に送信する。
【００４８】
なお、通信制御装置１８のサブマイコン４９は、コマンドＣ２に対応する一連の処理として、たとえば、バッテリパック２側が保持する複数個の固有データのそれぞれの送信要求および受信処理を実行する。これにより、受信したデータがホストマイコン１４に転送され、ホストマイコン１４がそのデータを解析して、バッテリパック２が正しい通信相手か否かを判別できるようになる。
【００４９】
また、コマンドＣ３に対応する一連の処理としては、たとえば、バッテリパック２への使用履歴の書き込み要求処理、ホストマイコン１４から受信した、バッテリパック２の使用記録データを、バッテリパック２に送信する処理などが実行され、それぞれの処理による応答データがバッテリパック２から受信される。
【００５０】
一方、図６（Ｄ）には、上述した第１の通信手順のようにバッテリ通信を行うための通信プロトコルが示されている。コマンドＣ４は、先頭バイトの識別情報「０７ｈ」、ｎバイトの送信データＴ４−１〜Ｔ４−ｎ、１バイトのチェックコードから構成されている。また、コマンドＣ４に対するレスポンスＲ４は、先頭バイトの識別情報「０８ｈ」、ｎバイトの受信データＲ４−１〜Ｒ４−ｎ、１バイトのチェックコードから構成されている。
【００５１】
通信制御装置１８のサブマイコン４９は、受信したコマンドＣ４の識別情報「０７ｈ」に基づき、送信データをそのまま転送するように要求する“スルーコマンド”であることを識別する。これにより、送信データＴ４−１〜Ｔ４−ｎが抽出されて、そのままの状態で１回の通信により連続的にバッテリパック２に送信される。そして、バッテリパック２から返信されたデータが、レスポンスＲ４の受信データＲ４−１〜Ｒ４−ｎに格納されて、このレスポンスＲ４がホストマイコン１４に送信される（スルーレスポンス）。
【００５２】
なお、この例では、コマンドＣ４を受信したとき、そのデータ領域のデータ（送信データＴ４−１〜Ｔ４−ｎ）のみを抽出してバッテリパック２に転送しているが、これに限らず、たとえば、コマンドＣ４内のすべてのデータをバッテリパック２に転送してもよい。この場合、バッテリパック２からの応答データをそのままレスポンスＲ４として、ホストマイコン１４に送信してもよい。ただし、この場合には、バッテリパック２において、応答データに識別情報が付加される必要がある。このような場合には、コマンドＣ４を用いることで、通信プロトコルをまったく変換することなく、ホストマイコン１４とバッテリパック２との間で通信を行うことが可能になる。
【００５３】
また、上記の例では、識別情報を先頭バイトに配置するものとしているが、その配置位置は必ずしも先頭領域である必要はない。
図７は、通信制御プログラムを実行するサブマイコンによる識別情報の処理手順を示すフローチャートである。
【００５４】
サブマイコン４９は、ホストマイコン１４と通信をして（ステップＳＴ１１）、発行されたコマンドデータを受け取り、コマンドの先頭バイトから識別情報を判別する（ステップＳＴ１２）。このとき、先頭バイトの値が「０７ｈ」以外（ここでは「０１ｈ」，「０３ｈ」，あるいは「０５ｈ」のいずれか）であれば、サブマイコン４９であらかじめ通信処理のシーケンスが決められているので、サブマイコン４９は、発行されたコマンドに対応する通信シーケンスを生成して、それにしたがった処理を実行する（ステップＳＴ１３）。この結果、バッテリパック２との間でデータが送受信される（ステップＳＴ１４）。
【００５５】
しかし、先頭バイトの値が「０７ｈ」であれば、サブマイコン４９ではあらかじめ処理のシーケンスが決められていないので、サブマイコン４９は、バッテリパック２に対して、コマンド内のデータ領域のデータをそのまま送信し、それに応じたデータを受信する（ステップＳＴ１４）。
【００５６】
このように、通信制御装置１８において、撮像装置１のホストマイコン１４から受信したコマンドごとに通信シーケンスを生成して、バッテリパック２との通信処理をホストマイコン１４から独立して実行することで、ホストマイコン１４の処理負荷を軽減できる。
【００５７】
また、撮像装置１にバッテリパック２との間で、たとえばバッテリ製造年月日を撮像装置１で表示させるといった新たな処理機能を追加する場合、ホストマイコン１４からの送信データそのものをバッテリパック２に送信するようにしたので、サブマイコン４９のプログラムの書き換えなど、通信制御装置１８を設計しなおさずに、ホストマイコン１４のプログラム変更だけで対応できる。すなわち、通信制御装置１８で生成できない、独自の通信シーケンスをホストマイコン１４で新たに生成して、バッテリパック２との間で通信できるようになる。
【００５８】
さらに、通信制御装置１８の設計時に、ホストマイコン１４との間での処理分担を最適化しておくことで、全体のコードサイズやソフト開発のための工数、処理時間などが最適なシステムを構成できる。
【００５９】
なお、本発明は撮像装置だけでなく、携帯用電話機、あるいはパーソナルコンピュータなど、通信機能を備えた電子機器に広く適用できる。
また、上記の通信制御装置１８の通信制御処理機能は、コンピュータによって実現することができる。その場合、上記処理機能の内容を記述したプログラムが提供される。そして、そのプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、磁気記録装置、光ディスク、光磁気ディスク、半導体メモリなどがある。
【００６０】
プログラムを流通させる場合には、たとえば、そのプログラムが記録された光ディスクや半導体メモリなどの可搬型記録媒体が販売される。また、プログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することもできる。
【００６１】
プログラムを実行するコンピュータは、たとえば、可搬型記録媒体に記録されたプログラムまたはサーバコンピュータから転送されたプログラムを、自己の記憶装置に格納する。そして、コンピュータは、自己の記憶装置からプログラムを読み取り、プログラムにしたがった処理を実行する。なお、コンピュータは、可搬型記録媒体から直接プログラムを読み取り、そのプログラムにしたがった処理を実行することもできる。また、コンピュータは、サーバコンピュータからプログラムが転送されるごとに、逐次、受け取ったプログラムにしたがった処理を実行することもできる。
【図面の簡単な説明】
【００６２】
【図１】実施の形態に係る撮像装置およびバッテリパックの構成を示すブロック図である。
【図２】インタフェース変換装置の一例を示すブロック回路図である。
【図３】別のインタフェース変換装置の例を示すブロック回路図である。
【図４】通信制御装置を介した第１の通信手順を示すシーケンス図である。
【図５】通信制御装置を介した第２の通信手順を示すシーケンス図である。
【図６】ホストマイコンと通信制御装置との通信プロトコルの例を示す図である。
【図７】通信制御プログラムを実行するサブマイコンによる識別情報の処理手順を示すフローチャートである。
【符号の説明】
【００６３】
１……撮像装置、２……バッテリパック、１１，２１……正極端子、１２，２２……負極端子、１３，２３……通信端子、１４……ホストマイコン、１５……レギュレータ、１６……撮像・記録処理部、１７……表示部、１８……通信制御装置、２４……バッテリセル、２５……バッテリマイコン、２６……通信インタフェース、２７……電流検出抵抗、３０，４０……インタフェース変換装置、３１，４１……プルアップ抵抗、３２，４２……プルアップダイオード、３３，４３……Ｎチャネル電界効果型トランジスタ（Ｎｃｈ−ＦＥＴ）、３４，４４……ＶＤＤ（電源電圧）端子、３５，４５……ＧＮＤ（接地電圧）端子、３６，３７，４６，４７……端子、４９……サブマイコン
【図１】
2008205609.tif 000003
【図２】
2008205609.tif 000004
【図３】
2008205609.tif 000005
【図４】
2008205609.tif 000006
【図５】
2008205609.tif 000007
【図６】
2008205609.tif 000008
【図７】
2008205609.tif 000009