JP2022167300A - 電子機器およびアクセサリ - Google Patents

電子機器およびアクセサリ Download PDF

Info

Publication number
JP2022167300A
JP2022167300A JP2021073024A JP2021073024A JP2022167300A JP 2022167300 A JP2022167300 A JP 2022167300A JP 2021073024 A JP2021073024 A JP 2021073024A JP 2021073024 A JP2021073024 A JP 2021073024A JP 2022167300 A JP2022167300 A JP 2022167300A
Authority
JP
Japan
Prior art keywords
accessory
communication
communication method
control circuit
information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2021073024A
Other languages
English (en)
Inventor
淳司 ▲高▼井
Junji Takai
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2021073024A priority Critical patent/JP2022167300A/ja
Priority to US17/715,124 priority patent/US20220342286A1/en
Priority to EP22167763.6A priority patent/EP4080278A1/en
Priority to CN202210424614.7A priority patent/CN115242960A/zh
Publication of JP2022167300A publication Critical patent/JP2022167300A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G03PHOTOGRAPHY; CINEMATOGRAPHY; ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ELECTROGRAPHY; HOLOGRAPHY
    • G03BAPPARATUS OR ARRANGEMENTS FOR TAKING PHOTOGRAPHS OR FOR PROJECTING OR VIEWING THEM; APPARATUS OR ARRANGEMENTS EMPLOYING ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ACCESSORIES THEREFOR
    • G03B17/00Details of cameras or camera bodies; Accessories therefor
    • G03B17/02Bodies
    • G03B17/12Bodies with means for supporting objectives, supplementary lenses, filters, masks, or turrets
    • G03B17/14Bodies with means for supporting objectives, supplementary lenses, filters, masks, or turrets interchangeably
    • GPHYSICS
    • G03PHOTOGRAPHY; CINEMATOGRAPHY; ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ELECTROGRAPHY; HOLOGRAPHY
    • G03BAPPARATUS OR ARRANGEMENTS FOR TAKING PHOTOGRAPHS OR FOR PROJECTING OR VIEWING THEM; APPARATUS OR ARRANGEMENTS EMPLOYING ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ACCESSORIES THEREFOR
    • G03B17/00Details of cameras or camera bodies; Accessories therefor
    • G03B17/56Accessories
    • G03B17/566Accessory clips, holders, shoes to attach accessories to camera
    • GPHYSICS
    • G03PHOTOGRAPHY; CINEMATOGRAPHY; ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ELECTROGRAPHY; HOLOGRAPHY
    • G03BAPPARATUS OR ARRANGEMENTS FOR TAKING PHOTOGRAPHS OR FOR PROJECTING OR VIEWING THEM; APPARATUS OR ARRANGEMENTS EMPLOYING ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ACCESSORIES THEREFOR
    • G03B15/00Special procedures for taking photographs; Apparatus therefor
    • G03B15/02Illuminating scene
    • G03B15/03Combinations of cameras with lighting apparatus; Flash units
    • G03B15/05Combinations of cameras with electronic flash apparatus; Electronic flash units
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0045Arrangements at the receiver end
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0061Error detection codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems
    • H04L1/1829Arrangements specially adapted for the receiver end
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems
    • H04L1/1829Arrangements specially adapted for the receiver end
    • H04L1/1864ARQ related signaling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems
    • H04L1/1867Arrangements specially adapted for the transmitter end
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/63Control of cameras or camera modules by using electronic viewfinders
    • H04N23/633Control of cameras or camera modules by using electronic viewfinders for displaying additional information relating to control or operation of the camera
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/65Control of camera operation in relation to power supply
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/66Remote control of cameras or camera parts, e.g. by remote control devices
    • H04N23/663Remote control of cameras or camera parts, e.g. by remote control devices for controlling interchangeable camera parts based on electronic image sensor signals
    • GPHYSICS
    • G03PHOTOGRAPHY; CINEMATOGRAPHY; ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ELECTROGRAPHY; HOLOGRAPHY
    • G03BAPPARATUS OR ARRANGEMENTS FOR TAKING PHOTOGRAPHS OR FOR PROJECTING OR VIEWING THEM; APPARATUS OR ARRANGEMENTS EMPLOYING ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ACCESSORIES THEREFOR
    • G03B17/00Details of cameras or camera bodies; Accessories therefor
    • G03B17/56Accessories
    • G03B17/565Optical accessories, e.g. converters for close-up photography, tele-convertors, wide-angle convertors
    • GPHYSICS
    • G03PHOTOGRAPHY; CINEMATOGRAPHY; ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ELECTROGRAPHY; HOLOGRAPHY
    • G03BAPPARATUS OR ARRANGEMENTS FOR TAKING PHOTOGRAPHS OR FOR PROJECTING OR VIEWING THEM; APPARATUS OR ARRANGEMENTS EMPLOYING ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ACCESSORIES THEREFOR
    • G03B2206/00Systems for exchange of information between different pieces of apparatus, e.g. for exchanging trimming information, for photo finishing

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Multimedia (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Studio Devices (AREA)
  • Structure And Mechanism Of Cameras (AREA)
  • Accessories Of Cameras (AREA)
  • Stroboscope Apparatuses (AREA)
  • Exposure Control For Cameras (AREA)

Abstract

【課題】アクセサリと電子機器との間で応答性のよいデータ通信を行う。【解決手段】アクセサリ200は、電子機器100に対して着脱可能および通信可能に装着される。アクセサリは、電子機器に対して通信要求を行い、該通信要求の要因に関する情報を送信するアクセサリ処理手段201を有する。アクセサリ処理手段は、第1の通信方式と該第1の通信方式とは異なる第2の通信方式のうち要因に関する情報の通信に用いる使用通信方式に対応する情報を、第1の通信方式で電子機器に通知する。【選択図】図1

Description

本発明は、アクセサリの装着が可能な撮像装置等の電子機器に関する。
撮像装置(カメラ)にアクセサリの装着が可能なカメラシステムでは、カメラとアクセサリとが通信を介して相互にデータをやり取りする。このようなカメラシステムが、アクセサリに対するユーザ操作に応じて制御される際には、シャッタチャンスを逃さないように、カメラとアクセサリ間でリアルタイム性が高いデータ通信を行う必要がある。
特許文献1には、カメラと交換レンズとの間にアダプタが装着され、アダプタによる光学パラメータの変化を補正する場合に、カメラ、交換レンズおよびアクセサリ間の一対多通信を行ってデータ通信のリアルタイム性を向上させたカメラシステムが開示されている。
特開2018-205711号公報
しかしながら、特許文献1のカメラシステムでは、データ通信量が多くなって多対多通信を行う場合にデータ通信のリアルタイム性の向上が十分に望めない。
本発明は、応答性のよいデータ通信を行えるアクセサリと電子機器を提供する。
本発明の一側面としてのアクセサリは、電子機器に対して着脱可能および通信可能に装着される。該アクセサリは、電子機器に対して通信要求を行い、該通信要求の要因に関する情報を送信するアクセサリ処理手段を有する。アクセサリ処理手段は、第1の通信方式と該第1の通信方式とは異なる第2の通信方式のうち要因に関する情報の通信に用いる使用通信方式に対応する情報を、第1の通信方式で電子機器に通知することを特徴とする。
また、本発明の他の一側面としての電子機器は、アクセサリが着脱可能および通信可能に装着される。該電子機器は、アクセサリからの通信要求を受け付けるとともに、第1の通信方式でアクセサリとの通信が可能な第1の処理手段と、第1の通信方式とは異なる第2の通信方式でアクセサリとの通信が可能な第2の処理手段とを有する。第1の処理手段は、第1の通信方式で、アクセサリから第1および第2の通信方式のうち通信要求の要因に関する情報の通信に用いる使用通信方式の通知を受ける。第1および第2の処理手段のうち通知された使用通信方式で通信可能な処理手段が、該使用通信方式でアクセサリから上記要因に関する情報を受信することを特徴とする。なお、上記電子機器と上記アクセサリとを有するシステムも、本発明の他の一側面を構成する。
また、本発明の他の一側面としての制御方法は、電子機器に対して着脱可能および通信可能なアクセサリに適用される。該制御方法は、電子機器に対して通信要求を行うステップと、通信要求の要因に関する情報を送信するステップと、第1の通信方式と該第1の通信方式とは異なる第2の通信方式のうち、要因に関する情報の通信に用いる使用通信方式に対応する情報を第1の通信方式で電子機器に通知するステップとを有することを特徴とする。
さらに本発明の他の一側面としての制御方法は、アクセサリが着脱可能および通信可能に装着され、アクセサリからの通信要求を受け付けるとともに、第1の通信方式でアクセサリとの通信が可能な第1の処理手段と、第1の通信方式とは異なる第2の通信方式でアクセサリとの通信が可能な第2の処理手段とを有する電子機器に適用される。該制御方法は、第1の処理手段に、第1の通信方式で、アクセサリから第1および第2の通信方式のうち通信要求の要因に関する情報の通信に用いる使用通信方式の通知を受けさせるステップと、第1および第2の処理手段のうち通知された使用通信方式で通信可能な処理手段に、該使用通信方式でアクセサリから上記要因に関する情報を受信させるステップとを有することを特徴とする。なお、上記アクセサリまたは電子機器のコンピュータに、上記制御方法に従う処理を実行させるプログラムも、本発明の他の一側面を構成する。
本発明によれば、アクセサリと電子機器との間で応答性のよいデータ通信を行うことができる。
実施例1におけるカメラシステム(カメラ、レンズユニットおよびアクセサリ)の構成を示す図。 実施例1におけるSPI通信のプロトコルを示す図。 実施例1におけるカメラとアクセサリが行う処理を示すフローチャート。 実施例1におけるSPI通信での通信データを示す図。 実施例1におけるアクセサリ情報を示す図。 実施例1におけるカメラシステムの処理シーケンスを示す図。 実施例1におけるアクセサリ種別情報を示す図。 実施例1における通信要求の発生要因を示す図。 実施例1におけるSPI通信での通信間隔を示す図。 実施例1においてカメラ(カメラ制御回路A)が行う起動処理を示すフローチャート。 実施例1においてカメラ(カメラ制御回路B)が行う起動処理を示すフローチャート。 実施例1においてアクセサリが行う処理を示すフローチャート。 実施例1においてカメラが通信要求信号を取得したときに行う処理を示すフローチャート。 実施例においてカメラが通信要求信号を取得したときに行う制御の例を示す図。 I2C通信波形の一例を示す図。 実施例1においてカメラからアクセサリへNバイトのデータを送信する場合にカメラが行う処理を示す図。 実施例1においてカメラがアクセサリからNバイトのデータを受信する場合にカメラが行う処理を示す図。 実施例1においてカメラとアクセサリとでNバイトのデータを送受信する場合にアクセサリが行う処理を示す図。
以下、本発明の実施例について図面を参照しながら説明する。
図1は、本発明の実施例1である電子機器である撮像装置(以下、カメラという)100とこれに着脱可能に装着されるアクセサリ200からなる撮像システムの電気的構成を示している。アクセサリ200は、例えば、マイク機器や照明(ストロボ又はフラッシュ)機器であり、カメラ100に装着可能な各種機器を含む。カメラ100とアクセサリ200は、カメラ100に設けられたカメラ接続部141の複数の接点(端子)TC01~TC21とアクセサリ200に設けられたアクセサリ接続部211の複数の接点TA01~TA21とがそれぞれ一対一で接触することで電気的に接続される。なお、アクセサリ200は複数の接点TA01~TA21の一部を有していなくてもよい。
カメラ100は、電池111から電力を供給される。電池111はカメラ100に対して着脱が可能である。カメラ100における第1の処理手段および受信手段としてのカメラ制御回路A101および第2の処理手段としてのカメラ制御回路B102は、カメラ100全体を制御する回路であり、CPU等のプロセッサ(マイクロコンピュータ)により構成される。カメラ制御回路A101およびカメラ制御回路B102は、コンピュータプログラムに従って各種制御や処理を実行する。
カメラ制御回路A101は、不図示のカメラ操作のためのスイッチ等の操作を監視したり、ユーザの操作に応じてシステム電源の制御を行ったりする。カメラ制御回路A101は、カメラ100が待機状態としての低消費電力モード(第2の電力状態)にあっても動作可能な低電力タイプのプロセッサにより構成されている。一方、カメラ制御回路B102は、撮像センサ122や表示回路127等の制御を担っている。カメラ制御回路B102は、低消費電力モードにおいては動作を停止し、通常動作モード(第1の電力状態)において動作するプロセッサにより構成されている。
なお、本実施例では、カメラ制御回路A101とカメラ制御回路B102を別々のプロセッサにより構成する場合について説明しているが、これらを単一のプロセッサ内に設けてもよい。
システム電源回路112は、カメラ100の各回路に供給される電源を生成する回路であり、DC/DCコンバータ回路、LDO(Low Drop Out)およびチャージポンプ回路等により構成される。カメラ制御回路A101には、電池111からの電力供給を受けたシステム電源回路112で生成された電圧1.8Vがカメラマイコン電源VMCU_Cとして常時供給される。また、カメラ制御回路B102にも、システム電源回路112で生成された数種類の電圧がカメラマイコン電源VMCU2_Cとして、任意のタイミングで供給される。カメラ制御回路A101は、システム電源回路112を制御することで、カメラ100の各回路への電源供給のオン・オフ制御を行う。
光学レンズ121は、カメラ100に着脱可能である。光学レンズ121を介して入射した被写体からの光は、CMOSセンサやCCDセンサ等からなる撮像センサ122上に結像する。なお、光学レンズ121とカメラ100とが一体の構成であってもよい。撮像センサ122上に結像された被写体像は、デジタル撮像信号に符号化される。画像処理回路123は、デジタル撮像信号に対して、ノイズリダクション処理やホワイトバランス処理等の画像処理を行って画像データを生成し、該画像データを記録用メモリ126に記録するためにJPEG形式等の画像ファイルに変換する。また画像処理回路123は、画像データから表示回路127に表示するためのVRAM画像データを生成する。
メモリ制御回路124は、画像処理回路123等で生成される画像データや他のデータの送受を制御する。揮発性メモリ125は、DDR3SDRAM等の高速な読み出しと書き込みが可能なメモリであり、画像処理回路123で行われる画像処理のワークスペース等に使用される。記録用メモリ126は、不図示の接続部を介してカメラ100に着脱可能なSDカードやCFexpressカード等の読み書き可能な記録メディアである。表示回路127は、カメラ100の背面に配置されたディスプレイであり、LCDパネルや有機ELディスプレイパネル等により構成される。バックライト回路128は、表示回路127のバックライトの光量を変更することで表示回路127の明るさを調整する。
アクセサリ用電源回路A131とアクセサリ用電源回路B132はそれぞれ、システム電源回路112から供給された電圧を所定の電圧に変換する電圧変換回路であり、本実施例ではアクセサリ電源VACCとして3.3Vを生成する。なお、その他の電圧に変換する構成でもよい。
アクセサリ用電源回路A131は、LDO等で構成される自己消費電力が小さい電源回路である。アクセサリ用電源回路B132は、DC/DCコンバータ回路等で構成され、アクセサリ用電源回路A131よりも大きな電流を流すことができる回路である。なお、アクセサリ用電源回路B132の自己消費電力は、アクセサリ用電源回路A131よりも大きい。このため、負荷電流が小さいときにはアクセサリ用電源回路A131の方がアクセサリ用電源回路B132よりも効率が良く、負荷電流が大きいときにはアクセサリ用電源回路B132の方がアクセサリ用電源回路A131よりも効率が良くなる。カメラ制御回路A101は、アクセサリ200の動作状態に応じてアクセサリ用電源回路A131とアクセサリ用電源回路B132の電圧出力のオン・オフを制御する。
保護回路133は、電流ヒューズ素子、ポリスイッチ素子または抵抗とアンプとスイッチ素子を組み合わせた電子ヒューズ回路等により構成されている。保護回路133は、アクセサリ用電源回路A131とアクセサリ用電源回路B132からアクセサリ200に供給される電源電流値が所定値を超えて過大(異常)になったときに過電流検知信号DET_OVCを出力する。本実施例では、保護回路133は、電子ヒューズ回路であり、1A以上の電流が流れた場合にカメラ制御回路A101に対して過電流検知信号DET_OVCにて通知を行う。過電流検知信号DET_OVCは、Hiレベルによって過電流であることを示す。なお、所定値が1Aと異なる構成であってもよい。
カメラ接続部141は、一列に配列された21個の接点TC01~TC21を介してアクセサリ200と電気的な接続を行うためのコネクタである。接点TC01~TC21は、これらの配列方向の一端から他端にこの順で配置されている。
TC01はグラウンド(GND)に接続されており、基準電位の接点としてだけではなく、差動信号D1Nと差動信号D1Pの配線インピーダンスをコントロールする接点としての用途も兼ねている。TC01は第3のグラウンド接点に相当する。
TC02に接続された差動信号D1NとTC03に接続された差動信号D1Pは、ペアとなってデータ通信を行う差動データ通信信号であり、カメラ制御回路B102に接続されている。TC02、TC03、後述するTC07~TCA10、TC12~TC17、TC19およびTC20は通信接点である。
第1のグラウンド接点としてのTC04は、GNDに接続されており、カメラ100とアクセサリ200の基準電位の接点となる。TC04は、次に説明するTC05よりも接点の配列方向における外側に配置されている。
電源接点としてのTC05には、保護回路133を介してアクセサリ用電源回路A131,B132で生成されたアクセサリ電源VACCが接続されている。
装着検出接点としてのTC06には、アクセサリ装着検出信号/ACC_DETが接続されている。アクセサリ装着検出信号/ACC_DETは、抵抗素子Rp134(例えば10kΩ)を介してカメラマイコン電源VMCU_Cにプルアップされている。カメラ制御回路A101は、アクセサリ装着検出信号/ACC_DETの信号レベルを読み出すことでアクセサリ200の装着の有無を検出することが可能である。アクセサリ装着検出信号/ACC_DETの信号レベル(電位)がHiレベル(所定電位)であればアクセサリ200が未装着と検出され、アクティブ電位としてのLoレベル(GND電位)であればアクセサリ200が装着されたことが検出される。
カメラ100の電源ON時にアクセサリ装着検出信号/ACC_DETの信号レベル(電位)がHiレベルからLoレベルになることがトリガーとなり、カメラ100とアクセサリ200との間で接点を介した各種伝達が行われる。
カメラ制御回路101は、アクセサリ200が装着状態になったことを検出することに応じて、電源接点としてのTC05を介してアクセサリ200に対して電源供給を行う。
通信接点であるTC07に接続されたSCLK、TC08に接続されたMOSI、TC09に接続されたMISOおよびTC10に接続されたCSは、カメラ制御回路B102が通信マスターとなって第2の通信方式であるSPI(Serial Peripheral Interface)通信方式による通信(以下、SPI通信という)を行うための信号である。SCLKはクロック信号、MOSIは送信信号、MISOは受信信号、CS(チップ・セレクト)は通信選択信号であり、通信相手を選択する信号である。本実施例では、SPI通信の通信クロック周波数は1MHz、データ長は8ビット(1バイト)、ビットオーダーはMSBファースト、全二重通信方式である。
本実施例では、カメラ100とアクセサリ200は、SPI通信方式として2種類の通信プロトコルに対応可能である。通信プロトコルAは、カメラ100が、アクセサリ200が通信可能状態であるかをSCLKを出力する前に確認しない通信方式であり、以下の説明ではSPIプロトコルAと称する。図2(a)は、SPIプロトコルAの通信波形の概略を示している。図では、CSをLoアクティブとする。
カメラ制御回路B102は、タイミングA1でCSをLoレベル(アクティブ)に変化させてアクセサリ制御回路201に対してSPI通信の要求を行う。
タイミングA1から所定の時間T_CS後のタイミングA2において、カメラ制御回路B102はSCLKとMOSIの出力を開始する。また、アクセサリ制御回路201は、SCLKの立下り変化を検出すると、MISOの出力を開始する。
カメラ制御回路B102は、1バイト分のSCLKの出力が完了したタイミングA3においてSCLKの出力を停止する。
さらにカメラ制御回路B102は、タイミングA3から所定時間T_INTERVALが経過するまでの間、SCLKの出力を停止し、T_INTERVALを経過したタイミングA4でSCLKの出力を再開して次の1バイトの通信を行う。
図3(a)のフローチャートは、SPIプロトコルAにおいてカメラ制御回路B102が行う処理を示している。Sはステップを意味する。
S101では、カメラ制御回路B102は、内部変数Nに通信するバイト数を示す数値を格納する。例えば、3バイト通信する場合は3を格納する。
S102では、カメラ制御回路B102は、CSをLoレベルに変化させてSPI通信の要求を行う。
S103では、カメラ制御回路B102は、CSをLoレベルに変化させてから、所定時間T_CS経過するまでウェイト処理を行う。所定時間T_CS経過後にS104に進む。
S104では、カメラ制御回路B102は、1バイトデータの通信を行うため、SCLKの出力制御を行うとともに、MOSIデータの出力制御とMISOデータの入力制御を行う。
S105では、カメラ制御回路B102は、通信バイト数を示す内部変数Nが0であるか否かを確認する。内部変数Nが0の場合はS106に進み、内部変数Nが0以外の場合はS107に進む。
S107では、カメラ制御回路B102は、通信バイト数を示す内部変数Nの数値を1だけ減じた値を新たな内部変数Nとして格納する。
S108では、カメラ制御回路B102は、S104で1バイトデータの通信が完了してから所定時間T_INTERVAL経過するまでウェイト処理を行う。そして所定時間T_INTERVAL経過後にS104の処理に戻り、再び同じ処理を実行する。
S106では、カメラ制御回路B102は、CSをHiレベルに変化させて、一連のSPI通信を終了する。
図3(b)のフローチャートは、SPIプロトコルAにおいてアクセサリ制御回路201が行う処理を示している。
S201では、アクセサリ制御回路201は、CSがLoに変化しているか否かを確認する。CSがLoに変化している場合はS202に進み、CSがLoに変化していない場合はS211に戻る。
S202では、アクセサリ制御回路201は、SCLK信号の入力に応じてMOSIデータの入力制御とMISOデータの出力制御を行って1バイトデータの通信を行う。
S203では、アクセサリ制御回路201は、CSがHiに変化しているか否かを確認する。CSがHiに変化している場合はSPI通信が終了したと判断し、CSがHiに変化していない場合は次の1バイト通信を行うためにS202に戻る。
また、SPI通信方式における通信プロトコルBは、カメラ100が、アクセサリ200が通信可能状態であるかをSCLKを出力する前に確認する通信方式であり、以下の説明ではSPIプロトコルBと称する。図2(b)は、SPIプロトコルBの通信波形の概略を示している。
カメラ制御回路B102は、タイミングB1でCSをLoレベルに変化させて、アクセサリ制御回路201に対してSPI通信の要求を行う。また、カメラ制御回路B102は、通信の要求と併せてMISOの電位を確認する。MISOがHiレベルならばアクセサリ制御回路201が通信可能な状態であると判断し、Loレベルならばアクセサリ制御回路201が通信不可能な状態であると判断する。
一方、アクセサリ制御回路201は、タイミングB2でCSの立下りを検出すると、SPI通信可能な状態であればMISOをHiレベルに制御し、通信不可能な状態であればMISOをLoレベルに制御する。
さらにカメラ制御回路B102は、タイミングB3でMISOがHiレベルにあることを確認すると、SCLKとMOSIの出力を開始する。またアクセサリ制御回路201は、SCLKの立下り変化を検出すると、MISOの出力を開始する。
カメラ制御回路B102は、タイミングB4で1バイト分のSCLK出力が完了すると、SCLKの出力を停止する。
アクセサリ制御回路201は、1バイトのデータ送受を行った後に、タイミングB5とタイミングB6に示すように、SPI通信可能な状態であればMISOをHiレベルに制御し、SPI通信不可能な状態であればMISOをLoレベルに制御する。
カメラ制御回路B102は、タイミングB7でMISOの電位を確認する。MISOがHiレベルならばアクセサリ制御回路201が通信可能な状態であると判断し、Loレベルならばアクセサリ制御回路201が通信不可能な状態であると判断する。
図3(c)のフローチャートは、SPIプロトコルBにおいてカメラ制御回路B102が行う処理を示している。
S111では、カメラ制御回路B102は、内部変数Nに通信するバイト数を示す数値を格納する。例えば、3バイト通信する場合は3を格納する。
S112では、カメラ制御回路B102は、CSをLoレベルに変化させてSPI通信の要求を行う。
S113では、カメラ制御回路B102は、MISOがHiレベルに変化しているかの確認を行う。MISOがHiレベルの場合はS114に進み、MISOがHiレベルになっていない場合はS113に戻る。
S114では、カメラ制御回路B102は、1バイトデータの通信を行うため、SCLKの出力制御を行うとともに、MOSIデータの出力制御とMISOデータの入力制御を行う。
S115では、カメラ制御回路B102は、全データの通信が完了した(通信バイト数を示す内部変数Nが0である)か否かを確認する。内部変数Nが0の場合はS116に進み、内部変数Nが0以外の場合はS117に進む。
S117では、カメラ制御回路B102は、通信バイト数を示す内部変数Nの数値を1だけ減じた値を新たな内部変数Nとして格納する。
S118では、カメラ制御回路B102は、MISOがHiレベルに変化しているか否かを確認する。MISOがHiレベルの場合はS114に進み、MISOがHiレベルになっていない場合はS118に戻る。
S116では、カメラ制御回路B102は、CSをHiレベルに変化させて、一連のSPI通信を終了する。
図3(d)のフローチャートは、SPIプロトコルBにおいてアクセサリ制御回路201が行う処理を示している。
S211では、アクセサリ制御回路201は、CSがLoに変化しているか否かを確認する。CSがLoに変化している場合はS212に進み、CSがLoに変化していない場合はS211に戻る。
S212では、アクセサリ制御回路201は、SPI通信可能な状態であるか否かを確認する。SPI通信を可能な場合はS213に進み、SPI通信を可能ではない場合はS214に進む。
S213では、アクセサリ制御回路201は、MISOをHiレベルに制御してS215に進む。
S214では、アクセサリ制御回路201は、MISOをLoレベルに制御してS212に戻る。
S215では、アクセサリ制御回路201は、SCLK信号入力に応じてMOSIデータの入力制御とMISOデータの出力制御を行って1バイトデータの通信を行う。
S216では、アクセサリ制御回路201は、CSがHiに変化しているか否かを確認する。CSがHiに変化している場合はSPI通信が終了したと判断し、CSがHiに変化していない場合は次の1バイト通信を行うためにS212に戻る。
図4は、本実施例においてSPI通信にてカメラ100からアクセサリ200への動作実行命令(コマンド)を通知する際の通信内容を示している。
カメラ制御回路B102は、最初の1バイト目の通信において、MOSIデータとして、コマンド番号を示す情報CMDをアクセサリ制御回路201に送信する。アクセサリ制御回路201は、MISOデータとして、通信可能状態であることを示す情報である0xA5の値をカメラ制御回路B102に送信する。アクセサリ制御回路201は、1バイト目の通信処理を実行できない場合には、MISOデータとして、0xA5以外の値をカメラ制御回路B102に送信する。
カメラ制御回路B102は、2バイト目の通信において、コマンド番号CMDに対応した引数MOSI_DATA1をアクセサリ制御回路201に送信する。そして3バイト目から(N-2)バイト目以降も同様に、コマンド番号CMDに対応した引数MOSI_DATA2~MOSI_DATA[N-3]をアクセサリ制御回路201に送信する。
アクセサリ制御回路201は、2バイト目の通信において、MISOデータとして、1バイト目に受信したコマンド番号CMDをカメラ制御回路B102に送信する。これにより、カメラ制御回路B102が、アクセサリ制御回路201がMOSIデータを正しく受信できていることを判別できるようにしている。
さらにアクセサリ制御回路201は、3バイト目の通信において、MISOデータとしてコマンド番号CMDに対応した戻り値MISO_DATA1をカメラ制御回路B102に送信する。そして4バイト目から(N-2)バイト目以降も同様に、コマンド番号CMDに対応した引数MISO_DATA2~MISO_DATA[N-4]をカメラ制御回路B102に送信する。
なお、引数及び戻り値の数は、コマンド番号毎にあらかじめ決められているものとする。また、引数と戻り値のどちらか一方または両方がなくてもよい。
カメラ制御回路B102は、(N-1)バイト目の通信において、MOSIデータとして、チェックサムデータCheckSum_Cをアクセサリ制御回路201に送信する。チェックサムデータCheckSum_Cは、下記式で算出される値である。
CheckSum_C=EXOR(AND( SUM(CMD, MOSI_DATA1, …, MOSI_DATA[N-3]), 0xFF ), 0xFF )
また、アクセサリ制御回路201は、MISOデータとして、0x00を送信する。
次に、カメラ制御回路B102は、Nバイト目の通信において、MOSIデータとして、0x00をアクセサリ制御回路201に送信する。
また、アクセサリ制御回路201は、MISOデータとして、チェックサムデータCheckSum_Aを送信する。チェックサムデータCheckSum_Aは、(N-1)バイト目の通信でカメラ制御回路B102が受信したCheckSum_Cの値とカメラ制御回路B102が算出したCheckSum_Cの値とが一致している場合は、下記式で算出される。
CheckSum_A=EXOR(AND(SUM(0xA5, CMD,MIS0_DATA1,…, MOSI_DATA[N-4]), 0xFF ), 0xFF )
一方、(N-1)バイト目の通信でカメラ制御回路B102が受信したCheckSum_Cの値とカメラ制御回路B102が算出したCheckSum_Cの値とが一致していない場合は、下記式で算出される。
CheckSum_A=AND(SUM(0xA5, CMD, MIS0_DATA1, …, MOSI_DATA[N-4] ), 0xFF )
図1に示した信号接点(通信要求接点)であるTC11には、アクセサリ200からカメラ100(カメラ制御回路A101)に対して通信を要求するための通信要求信号(第2の入力信号)/WAKEが接続されている。通信要求信号/WAKEは、抵抗を介してカメラマイコン電源VMCU_Cにプルアップされている。カメラ制御回路A101は、通信要求信号/WAKEの変化(立下りエッジ)を検出することでアクセサリ200からの通信要求を検出することができる。
通信接点であるTC12に接続されたSDAおよびTC13に接続されたSCLは、カメラ制御回路A101が通信マスターとなって第1の通信方式であるI2C(Inter-Integrated Circuit)通信方式による通信(以下、I2C通信という)を行うための信号である。SDAはデータ信号、SCLはクロック信号である。SDAとSCLは、カメラマイコン電源VMCU_Cにプルアップされたオープンドレイン通信であり、本実施例では通信周波数は100kbpsとする。
I2C通信では、SDAを介してカメラ100からのデータ送信、アクセサリ200からのデータ送信の双方が行われる。SPI通信とI2C通信を比較すると、I2C通信は、SPI通信に比べて通信速度が低速である。また、SPI通信のほうがI2C通信よりも通信速度が高速であるためデータ量の多い情報の通信に適している。そのため、本実施例のカメラ100とアクセサリ200との通信においては、データ量の多い情報はSPI通信を用いて通信し、データ量の少ない情報はI2C通信を用いて通信する。例えば、まずI2C通信を用いてデータを通信し、このデータに基づいてSPI通信が実行可能である場合やSPI通信を実行する必要がある場合には、更にSPI通信を実行するように制御することができる。
図15(a)、(b)は、I2C通信波形の一例を示した図である。図15(a)はカメラがアクセサリにNバイト分のデータ(DATA[1]~DATA[N])を送信する場合の波形例を示し、図15(b)はカメラがアクセサリからNバイト分のデータ(DATA[1]~DATA[N])を受信する場合の波形例を示している。図15(a)と図15(b)において、上段の波形はSCLで、下段の波形はSDAである。
SDA波形の下には各タイミングにおける信号が示す意味と、SDA信号の出力レベルを制御している制御回路がカメラ制御回路A101であるか、アクセサリ制御回路201であるかを示している。また、通信データは1バイト単位のデータと応答を示す1ビットの情報で構成されている。図の上部には、通信開始から何バイト目のデータであるかを示している。
通信内容の詳細については図16~18を用いて後述するため、図15(a)と図15(b)では概略を説明する。
図15(a)において、1バイト目と2バイト目の通信では、カメラ制御回路A101からアクセサリ制御回路201に対して、送信するデータの格納アドレス情報を通知する。3バイト目から(N+2)バイト目の通信では、カメラ制御回路A101はNバイト分のデータ(DATA[ADDRESS]~DATA[ADDRESS+N])をアクセサリ制御回路201に送信する。
図15(b)において、1バイト目と2バイト目の通信では、カメラ制御回路A101からアクセサリ制御回路201に対して、受信するデータの格納アドレス情報を通知する。3バイト目から(N+3)バイト目の通信で、カメラ制御回路A101はNバイト分のデータ(DATA[ADDRESS]~DATA[ADDRESS+N])をアクセサリ制御回路201から受信する。
図16のフローチャートは、カメラ制御回路A101からアクセサリ制御回路201へNバイトのデータを送信する場合にカメラ制御回路A101が行う処理を示している。
S3001では、カメラ制御回路A101は、内部変数Nに送信するバイト数を示す数値を格納する。例えば、3バイト送信する場合は3を格納する。本実施例では3を格納するものとする。
S3002では、カメラ制御回路A101は、SCLがHiレベルの間に、SDAをLoレベルに変化させる(STARTコンディション)。これによりアクセサリ制御回路201に対して通信の開始を通知する。
S3003では、カメラ制御回路A101は、アクセサリ制御回路201のスレーブアドレスを示すスレーブアドレス情報を送信データの上位7ビットにセットする。本実施例では、アクセサリ制御回路201のスレーブアドレスは2進数で1010000であるとする。
S3004では、カメラ制御回路A101は、WRITE通信であることを示す情報を送信データの下位1ビットにセットする。本ビットに0をセットするとWRITE通信を意味する。
S3005では、カメラ制御回路A101は、S3003とS3004で送信データとしてセットされたデータ(2進数で10100000、16進数で0xA0)をアクセサリ制御回路201に対して送信する。
S3006では、カメラ制御回路A101は、1バイトのデータ送信後にSCLを1クロック分出力するとともに、SDAの信号レベルを確認する。SDAの信号レベルがLoの場合はアクセサリ制御回路201からのデータ受信通知(ACK)と判断してS3007に進む。一方、SDAの信号レベルがHiの場合はアクセサリ制御回路201がデータを正常に受信できていないと判断してS3014に進む。
S3007では、カメラ制御回路A101は、アクセサリ制御回路201に送信するデータの格納アドレスの情報(開始アドレス情報)を送信データとしてセットする。本実施例では開始アドレス情報のサイズは1バイトで、値は0x00であるとする。
S3008では、カメラ制御回路A101は、アクセサリ制御回路201に対してセットされた1バイトの開始アドレス情報(値0x00)を送信する。
S3009では、カメラ制御回路A101は、1バイトの開始アドレス情報データ送信後にSCLを1クロック分出力するとともに、SDAの信号レベルを確認する。SDAの信号レベルがLoの場合はアクセサリ制御回路201からのデータ受信通知(ACK)と判断してS3010に進む。一方、SDAの信号レベルがHiの場合はアクセサリ制御回路201がデータを正常に受信できていないと判断してS3014に進む。
S3010では、カメラ制御回路A101は、内部変数Mに1を格納する。内部変数Mは送信データ数をカウントするための変数である。
S3011では、カメラ制御回路A101は、SCLを1バイト分出力するとともに、SCLがLoの間にSDAを所望の信号レベルに変化させることで、アクセサリ制御回路201に対して1バイトのデータを送信する。ここでは、開始アドレス情報は0x00、内部変数Mは1であるので、アドレス0x00に対応する1バイトのデータを送信する。
S3012では、カメラ制御回路A101は、1バイトのデータ送信後にSCLを1クロック分出力するとともに、SDAの信号レベルを確認する。SDAの信号レベルがLoの場合はアクセサリ制御回路201からのデータ受信通知(ACK)と判断してS3013に進む。一方、SDAの信号レベルがHiの場合はアクセサリ制御回路201がデータを正常に受信できていないと判断してS3014に進む。
S3013では、カメラ制御回路A101は、内部変数Mが内部変数Nと同じ値であるかを確認する。内部変数Mが内部変数Nと同じ値である場合は全データの送信が完了したと判断してS3014に進む。内部変数Mが内部変数Nと同じ値でない場合は送信データがまだ残っていると判断してS3015に進む。
S3015では、カメラ制御回路A101は、内部変数Mに1を加算しS3011に戻る。
このようにして、S3011に戻った後に、カメラ制御回路A101は、送信するデータのアドレスを順次インクリメントし、それぞれのアドレスに対応する1バイトデータを送信する。このようにS3013の処理で内部変数Mと内部変数Nが同じ値になるまで繰り返し1バイトのデータを送信することで、カメラ制御回路A101はアクセサリ制御回路201に対してNバイト分のデータを送信する。本実施例のように内部変数Nを3とした場合は、3バイトのデータ送信が行える。
S3014では、カメラ制御回路A101は、SCLがHiレベルの間に、SDAをHiレベルに変化させる(STOPコンディション)。これによりアクセサリ制御回路201に対して通信の終了を通知する。
図17のフローチャートは、カメラ制御回路A101がアクセサリ制御回路201からNバイトのデータを受信する場合にカメラ制御回路A101が行う処理を示している。
S3101では、カメラ制御回路A101は、内部変数Nに受信するバイト数を示す数値を格納する。例えば、3バイト受信する場合は3を格納する。本実施例では3を格納するものとする。
S3102~S3106では、カメラ制御回路A101は、それぞれS3002~S3006と同じ処理を行っているため説明を省略する。
S3107では、カメラ制御回路A101は、アクセサリ制御回路201から受信するデータの格納アドレスの情報(開始アドレス情報)を送信データとしてセットする。本実施例では開始アドレス情報のサイズは1バイトで、値は0x00であるとする。
S3108では、カメラ制御回路A101は、アクセサリ制御回路201に対してセットされた1バイトの開始アドレス情報(値0x00)を送信する。
S3109では、カメラ制御回路A101は、1バイトの開始アドレス情報データ送信後にSCLを1クロック分出力するとともに、SDAの信号レベルを確認する。SDAの信号レベルがLoの場合はアクセサリ制御回路201からのデータ受信通知(ACK)と判断してS3110に進む。一方、SDAの信号レベルがHiの場合はアクセサリ制御回路201がデータを正常に受信できていないと判断してS3122に進む。
S3110では、カメラ制御回路A101は、S3102と同様にSCLがHiレベルの間に、SDAをLoレベルに変化させ、アクセサリ制御回路201にSTARTコンディションを通知する。
S3111では、カメラ制御回路A101は、アクセサリ制御回路201のスレーブアドレスを示すスレーブアドレス情報を送信データの上位7ビットにセットする。本実施例では、アクセサリ制御回路201のスレーブアドレスは2進数で1010000であるとする。
S3112では、カメラ制御回路A101は、READ通信であることを示す情報を送信データの下位1ビットにセットする。本ビットに1をセットするとREAD通信を意味する。
S3113では、カメラ制御回路A101は、S3003とS3004で送信データとしてセットされたデータ(2進数で10100001、16進数で0xA1)をアクセサリ制御回路201に対して送信する。
S3114では、カメラ制御回路A101は、1バイトのデータ送信後にSCLを1クロック分出力するとともに、SDAの信号レベルを確認する。SDAの信号レベルがLoの場合はアクセサリ制御回路201からのデータ受信通知(ACK)と判断してS3115に進む。一方、SDAの信号レベルがHiの場合はアクセサリ制御回路201がデータを正常に受信できていないと判断してS3122に進む。
S3115では、カメラ制御回路A101は、内部変数Mに1を格納する。内部変数Mは受信データ数をカウントするための変数である。
S3116では、カメラ制御回路A101は、SCLを1バイト分出力するとともに、SCLがLoからHiに変化したタイミングのSDAの信号レベルを読み出す。これにより、アクセサリ制御回路201から1バイト分のデータを受信することが可能となっている。受信した1バイトデータはアドレス0x00に対応するデータとして、揮発性メモリ125に記憶したり、所定の処理に用いたりすることができる。
S3117では、カメラ制御回路A101は、1バイトのデータを正常に受信できているか判別する。正常に受信できている場合はS3118に進む。正常に受信できていない場合はS3119に進む。
S3118では、カメラ制御回路A101は、内部変数Mが内部変数Nと同じ値であるかを確認する。内部変数Mが内部変数Nと同じ値である場合は全データの受信が完了したと判断してS3119に進む。内部変数Mが内部変数Nと同じ値でない場合は受信データがまだ残っていると判断してS3120に進む。
S3120では、カメラ制御回路A101は、SCLを1バイト分出力するとともに、SDAをLoレベルに制御することで、アクセサリ制御回路201に対してデータ受信通知(ACK)を行い、引き続きデータ通信を行うことを通知する。
S3121では、カメラ制御回路A101は、カメラ制御回路A101は、内部変数Mに1を加算してS3116に戻る。
このようにして、S3116に戻った後に、カメラ制御回路A101は、受信するデータのアドレスを順次インクリメントし、それぞれのアドレスに対応する1バイトデータを受信する。このようにS3118の処理で内部変数Mと内部変数Nが同じ値になるまで繰り返し1バイトのデータを受信することで、カメラ制御回路A101はアクセサリ制御回路201からNバイト分のデータを受信する。本実施例のように内部変数Nを3とした場合は、3バイトのデータ受信が行える。
S3119では、カメラ制御回路A101は、SCLを1バイト分出力するとともに、SDAをHiレベルに制御することで、アクセサリ制御回路201に対してデータ通信を完了したことを通知する(NACK)。
S3122では、カメラ制御回路A101は、SCLがHiレベルの間に、SDAをHiレベルに変化させる(STOPコンディション)。これによりアクセサリ制御回路201に対して通信の終了を通知する。
図18のフローチャートは、カメラ制御回路A101からアクセサリ制御回路201へNバイトのデータを送信する場合およびカメラ制御回路A101がアクセサリ制御回路201からNバイトのデータを受信する場合にアクセサリ制御回路201が行う処理を示している。
S3201では、アクセサリ制御回路201は、SCLがHiレベルの間に、SDAがLoレベルに変化する(STARTコンディション)のを待つ。アクセサリ制御回路201は、STARTコンディションを検出したらS3202に進む。
S3202では、アクセサリ制御回路201は、内部変数Mに0を格納する。内部変数Mは送信及び受信データ数をカウントするための変数である。
S3203では、アクセサリ制御回路201は、カメラ制御回路A101から送信された1バイトのデータを受信する。
S3204では、アクセサリ制御回路201は、S3203で受信した1バイトデータの上位7ビットのデータが、アクセサリ制御回路201のスレーブアドレス(本実施例では0x50)と一致しているかを判別する。アクセサリ制御回路201のスレーブアドレスと一致している場合はS3205に進む。アクセサリ制御回路201のスレーブアドレスと一致していない場合はS3221に進む。
S3205では、アクセサリ制御回路201は、1バイト受信後の次のSCLクロック出力に対してSDAをLoレベルに制御することで、カメラ制御回路A101に対してデータ受信通知(ACK)を行う。
S3206では、アクセサリ制御回路201は、S3203で受信した1バイトデータの下位1ビットのデータによって、次に行う1バイト通信のデータの種類を判別する。下位1ビットのデータが0の場合は、次に行う1バイト通信のデータはカメラ制御回路A101からアクセサリ制御回路201に対する開始アドレス情報であると判別してS3207に進む。下位1ビットのデータが1の場合は、次に行う1バイト通信のデータはアクセサリ制御回路201からカメラ制御回路A101への送信データであると判別しS3209に進む。
S3207では、アクセサリ制御回路201は、カメラ制御回路A101から送信された1バイトのデータを受信する。受信した1バイトのデータは、以降の通信で送信・受信するデータが格納されているアドレスを示す情報である。本実施例では、図16と図17で説明したように、開始アドレス情報は0x00であるとする。
一方、S3209では、アクセサリ制御回路201は、開始アドレス情報はあらかじめアクセサリ制御回路201が記憶しているアドレス情報あるいは先にあらかじめカメラ制御回路A101から通知されたアドレス情報が用いられる。
S3208では、アクセサリ制御回路201は、1バイトのデータを正常に受信できたと判断した場合には、S3210に進む。1バイトのデータを正常に受信できていないと判断した場合には、S3221に進む。
S3210では、アクセサリ制御回路201は、1バイトのデータ受信後の次のSCLクロック出力に対してSDAをLoレベルに制御することで、カメラ制御回路A101に対してデータ受信通知(ACK)を行う。
S3211では、アクセサリ制御回路201は、SCLがHiレベルの間に、SDAがLoレベルに変化(STARTコンディション)したかを確認する。STARTコンディションを検出した場合は、アクセサリ制御回路201は、次に通信する1バイトのデータは、カメラ制御回路A101からアクセサリ制御回路201に対して送信するデータであり、スレーブアドレスと通信種類を示すデータであると判断してS3212に進む。STARTコンディションを検出しなかった場合は、アクセサリ制御回路201は次に通信する1バイトのデータは、アクセサリ制御回路201がカメラ制御回路A101から受信するデータ情報であると判断してS3216に進む。
S3212では、アクセサリ制御回路201は、カメラ制御回路A101から送信された1バイトのデータを受信する。
S3213では、アクセサリ制御回路201は、S3212で受信した1バイトデータの上位7ビットのデータが、アクセサリ制御回路201のスレーブアドレス(本実施例では0x50)と一致しているかを判別する。アクセサリ制御回路201のスレーブアドレスと一致している場合はS3214に進む。アクセサリ制御回路201のスレーブアドレスと一致していない場合はS3221に進む。
S3214では、アクセサリ制御回路201は、S3203で受信した1バイトデータの下位1ビットのデータによって、次に行う1バイト通信のデータの種類を判別する。下位1ビットのデータが0の場合は、S3221に進む。下位1ビットのデータが1の場合は、次に行う1バイト通信のデータはアクセサリ制御回路201からカメラ制御回路A101への送信データであると判別してS3215に進む。
S3215では、アクセサリ制御回路201は、1バイト受信後の次のSCLクロック出力に対してSDAをLoレベルに制御することで、カメラ制御回路A101に対してデータ受信通知(ACK)を行う。
S3222では、アクセサリ制御回路201は、S3207でカメラ制御回路A101から受信した開始アドレス情報またはS3209で決定した開始アドレス情報に対応する1バイトのデータをカメラ制御回路A101に送信する。
S3223では、アクセサリ制御回路201は、内部変数Mに1を加算してS3224に進む。
S3224では、アクセサリ制御回路201は、1バイトのデータ送信後にSDAの信号レベルを確認する。SDAの信号レベルがHiの場合はカメラ制御回路A101がすべてのデータを受信完了した通知(NACK)であると判断してS3225に進む。一方、SDAの信号レベルがHiの場合はカメラ制御回路A101が引き続きアクセサリ制御回路201からのデータ送信を要求していると判断してS3222に戻る。このようにして、S3222に戻った後に、アクセサリ制御回路201は、送信するデータのアドレスを順次インクリメントし、それぞれのアドレスに対応する1バイトデータを送信する。このようにS3224の処理でカメラ制御回路A101からNACKが通知されるまで繰り返し1バイトのデータを送信することで、アクセサリ制御回路201はカメラ制御回路A101に対してNバイト分のデータを送信する。
S3225では、アクセサリ制御回路201は、SCLがHiレベルの間にSDAがHiレベルに変化するSTOPコンディションを待つ。アクセサリ制御回路201は、STOPコンディションを検出すると通信を終了する。
一方、S3216では、アクセサリ制御回路201は、1バイト分のデータを受信し、その1バイトデータはS3207でカメラ制御回路A101から受信した開始アドレス情報に対応するデータとして不図示の不揮発性メモリ等に記憶したり、所定の処理に用いたりする。
S3217では、アクセサリ制御回路201は、内部変数Mに1を加算してS3218に進む。
S3218では、アクセサリ制御回路201は、1バイトのデータを正常に受信できたと判断した場合には、S3219に進む。1バイトのデータを正常に受信できていないと判断した場合には、S3221に進む。
S3219では、アクセサリ制御回路201は、1バイト受信後の次のSCLクロック出力に対してSDAをLoレベルに制御することで、カメラ制御回路A101に対してデータ受信通知(ACK)を行う。
S3230では、アクセサリ制御回路201は、SCLがHiレベルの間にSDAがHiレベルに変化するSTOPコンディションを検出したかを確認する。アクセサリ制御回路201は、STOPコンディションを検出すると通信を終了する。一方、アクセサリ制御回路201は、STOPコンディションを検出しなかった場合には、カメラ制御回路A101から引き続きアクセサリ制御回路201にデータ送信を行ってくると判断してS3216に戻る。
このようにして、S3216に戻った後に、アクセサリ制御回路201は、受信するデータのアドレスを順次インクリメントし、それぞれのアドレスに対応する1バイトデータを受信する。このようにS3220でSTOPコンディションが通知されるまで繰り返し1バイトのデータを受信することで、アクセサリ制御回路201はカメラ制御回路A101からNバイト分のデータを受信する。
このように、カメラ接続部141は、I2C通信方式のデータ信号用の接点TC12と該データ信号用の接点に対して一方の側に配置された(一方の側にて隣り合う)I2C通信方式のクロック信号用の接点TC13を含む。さらにデータ信号用の接点TC12に対して他方の側に(他方の側にて隣り合う位置から順に)配置された、第2の入力信号用の接点TC11、SPI通信方式の入力選択信号用の接点TC10、SPI通信方式の受信用の接点TC09、SPI通信方式の送信用の接点TC08、SPI通信方式のクロック信号用の接点TC07、第1の入力信号用の接点TC06および出力信号用の接点TC05を含む。
アクセサリ200は、不図示の不揮発性メモリ内にアクセサリ情報を格納している。アクセサリ情報は、カメラ100にアクセサリ200の種類や通信および動作(機能)に関する仕様を識別させるための情報である。図5は、アクセサリ情報の例を示している。アクセサリ情報は、アドレス0x00~0x0Fのメモリ空間にマッピングされており、I2C通信によりアクセサリ200からアクセサリ情報を読み出すことが可能である。アクセサリ情報の詳細については後述する。なお、本実施例のI2C通信においては、読み出したデータに対するチェックサム値を通信の最終データとして付加する。
図1に示した通信接点であるTC14に接続されたFNC1信号、TC15に接続されたFNC2信号、TC16に接続されたFNC3信号およびTC17に接続されたFNC4信号は、装着されたアクセサリ200の種類に応じて機能を変更できる機能信号である。例えば、アクセサリ200がマイク機器である場合はTC15を介して通信される信号は音声データに関する信号として、またアクセサリ200がストロボ機器である場合はTC14を介して通信される信号は発光タイミングを通知する信号となる。
なお、装着されたアクセサリの種別によって、同じ接点を介して異なる機能を実現する信号が通信されるようにしてもよい。例えばアクセサリ200が照明以外のアクセサリである場合に、TC14を介して発光タイミングとは異なるタイミングを制御するための同期信号が通信されるようにしてもよい。TC14~TC17は機能信号接点に相当する。機能信号接点の少なくともいずれかを用いた通信を機能信号通信とも称する。機能信号通信は、I2C通信・SPI通信と並行して、I2C通信・SPI通信に依存しないタイミングで通信を実行することができる。
ここでいうアクセサリ種別とは、上述のマイク機器、照明機器等である。性能が異なる照明同士のように、同じ目的の機能を実現するアクセサリは同じ種別のアクセサリである。マイク機器と照明機器のように、異なる目的の機能を実現するアクセサリは異なる種別のアクセサリである。機能信号通信は、I2C通信またはSPI通信によって取得された情報に基づいて実行される。
第2のグラウンド接点としてのTC18もGNDに接続されており、TC04と同様に、カメラ100とアクセサリ200の基準電位となる接点である。TC19に接続された差動信号D2NおよびTC20に接続された差動信号D2Pは、それらがペアとなってデータ通信を行うデータ通信信号であり、カメラ制御回路B102と接続されている。TC19とTC20とを介して、例えばUSB通信を行うことが可能である。
TC21はGNDに接続されており、基準電位の接点としてだけではなく、差動信号D2Nと差動信号D2Pの配線インピーダンスをコントロールする接点としての用途も兼ねる。TC21は第4のグラウンド接点に相当する。接点TC01、TC04、TC06、TC18、TC21は、例えば、フレキシブル基板のGND部に接続されていて、フレキシブル基板のGND部がカメラ100のGNDレベルとなる金属性の部材とビス等で固定される。GNDレベルとなる金属性の部材は例えば、アクセサリシュー部においてアクセサリ200と係合する係合部材、カメラ100内部の不図示のベースプレート等がある。
本実施例では、クロック信号であるSCLK(第1のクロック信号)を伝達する接点(第1のクロック接点)TC07の隣に、アクセサリ装着検出信号/ACC_DETが接続されている装着検出接点TC06を配置している。一般に、クロック信号の接点に隣接した接点には、クロック信号の電位変動に伴うノイズ(クロックノイズ)が伝わり、これが誤動作の要因となり得る。特に、本実施例のように接点数が多く、接点間の距離が短い構成においては、その影響がより大きくなる。そこで、SCLK接点TC07の隣に、装着検出接点TC06を配置することで、クロックノイズの影響を抑えることができる。
アクセサリ装着検出信号/ACC_DETは、アクセサリ装着前はプルアップされているが、アクセサリ装着後はGND電位に設定される。一方、クロック信号を伝達するSCLK接点TC07は、アクセサリ装着前はクロック信号を伝達しないので、電位の変動がなく、アクセサリ装着後にのみクロック信号を伝達するために電位が変動する。
SCLK接点TC07がクロック信号を伝達する際に、装着検出接点TC06はGND電位になっている。このため、装着検出接点TC06がクロックノイズを受けても、カメラ100やアクセサリ200の制御回路の電位は変動しにくいため、誤動作を防ぐことができる。また、装着検出接点TC06よりも離れた位置へクロックノイズが伝わるのを抑制することができる。その結果、GND端子を配置せずに済むので、接点数を増やさずにクロックノイズの影響を抑制することができる。
また、接点(第2のクロック接点)TC13にもクロック信号としてのSCL(第2のクロック信号)が伝達される。しかし、SCLK接点TC07に伝達されるSCLKの方がSCLよりも周波数が高く、SCLK接点TC07からの方がSCL接点TC13からに比べてクロックノイズをより多く発生する。このため、装着検出接点TC06を、SCL接点TC13の隣ではなく、SCLK接点TC07の隣に配置する方が、クロックノイズによる誤動作を防ぐ効果が大きい。
さらに、周波数の違いだけでなく、SCL接点TC13で伝達されるSCLは、I2C通信規格のクロック信号であり、信号線の電圧の変動はオープンドレイン接続で駆動される。一方、SCLK接点TC07で伝達されるSCLKは、SPI通信規格のクロック信号であり、信号線の電圧の変動はCMOS出力で駆動される。このため、SCL接点TC13の方がSCLK接点TC07に比べて電圧の変動のエッジが緩やかになりやすく、クロックノイズが発生しにくい。したがって、装着検出接点TC06を、SCL接点TC13の隣ではなくSCLK接点TC07の隣に配置する方がクロックノイズによる誤動作を防ぐ効果が大きい。
また、第1および第2の差動信号接点TC19、TC20にもペアで差動信号D1N、D1Pを伝達して、クロック信号を伝達する場合がある。その際、SCLK接点TC07やSCL接点TC13よりも周波数が高いクロック信号(第3のクロック信号)を伝達することがある。しかし、差動信号D1N、D1Pはペア信号であるために、シングルエンド信号を伝達するSCLK接点TC07やSCL接点TC13よりもクロックノイズの放射は少ない。このため、装着検出接点TC06を、第1および第2の差動信号接点TC19、TC20の隣ではなく、SCLK接点TC07の隣に配置する方が、クロックノイズによる誤動作を防ぐ効果が大きい。
なお、SCLK接点TC07の装着検出接点TC06とは反対側の隣に配置された接点(第1のデータ接点)TC08は、MOSI(第1のデータ信号)を伝達する。MOSIはデータ信号であるので、クロックノイズの影響を受けやすいように見える。しかし、MOSIは、SCLK接点TC07で伝達されるクロック信号と同一のSPI通信規格のデータ信号であるため、電位の変動タイミングがクロック信号と同期しており、クロックノイズの影響を受けにくい。このため、接点TC08をGND電位に固定しなくてよく、MOSI接点として用いることができる。
アクセサリ200は、電池205を有し、該電池205からの電力供給を受けるとともに、カメラ接続部141とアクセサリ接続部211を介してカメラ100からの電力供給も受ける。アクセサリ200におけるアクセサリ処理手段としてのアクセサリ制御回路201は、アクセサリ200全体を制御する回路であり、CPU等のプロセッサ(マイクロコンピュータ)により構成されている。アクセサリ制御回路201は、コンピュータプログラムに従って各種制御や処理を実行する。
アクセサリ電源回路202は、アクセサリ200の各回路に供給するための電源を生成する回路であり、DC/DCコンバータ回路やLDOやチャージポンプ回路等で構成されている。アクセサリ制御回路201には、アクセサリ電源回路202で生成された電圧1.8Vがアクセサリマイコン電源VMCU_Aとして常時供給される。なお、アクセサリ電源回路202で生成される電圧が1.8Vと異なる値である構成であってもよい。アクセサリ電源回路202を制御することで、アクセサリ200の各回路への電源供給のオン・オフ制御が行われる。
充電回路204は、カメラ100から供給された電力を用いて電池205を充電するための回路である。アクセサリ制御回路201は、充電動作を行うのに十分な電力をカメラ100から供給されていると判断できる場合には、充電回路204を制御して電池205への充電を行う。なお、本実施例ではアクセサリ200に電池205が装着される場合について説明するが、電池205が装着されずにカメラ100からの給電のみでアクセサリ200が動作してもよい。この場合、充電回路204は不要となる。
差動通信回路207は、カメラ100と差動通信を行うための回路であり、カメラ100との間でデータの送受信を行うことができる。外部通信IF回路208は、不図示の外部機器とデータ通信を行うためのIF回路であり、Ethernet通信IF、無線LAN通信IFおよび公衆ネットワーク通信IF等である。アクセサリ制御回路201は、差動通信回路207および外部通信IF回路208を制御することで、カメラ100から受信したデータを外部機器に送信したり外部機器から受信したデータをカメラ100に送信したりすることができる。
機能回路206は、アクセサリ200の種類に応じて異なる機能を有する回路である。機能回路206は、例えば、アクセサリ200がストロボ機器の場合には、発光回路、充電回路等である。また、アクセサリ200がマイク機器の場合には、音声コーデック回路やマイク回路等である。
外部接続端子209は、外部機器と接続するためのコネクタ端子であり、本実施例ではUSB TYPE-Cコネクタである。接続検出回路210は、外部接続端子209に外部機器が接続されたことを検出するための回路である。アクセサリ制御回路201は、接続検出回路210の出力信号を受信することで、外部接続端子209への外部機器接続を検出することができる。
電源スイッチ203は、アクセサリ200の電源(つまりは動作)をオン・オフするためにユーザにより操作されるスイッチである。アクセサリ制御回路201は、電源スイッチ203が接続された端子の信号レベルを読み出すことでオンポジション/オフポジションを検出することができる。
操作スイッチ212は、アクセサリ200に各種指示を与えたり各種設定を行ったりするためにユーザにより操作されるスイッチであり、ボタン、十字キー、スライドスイッチ、ダイヤルスイッチ、タッチセンサ等を含む。操作スイッチ212が操作されると、アクセサリ制御回路201は操作を検出して、該操作に応じた所定の処理を実行する。
アクセサリ接続部211は、一列に配列された21個の接点TA01~TA21を介してカメラ100と電気的な接続を行うためのコネクタである。接点TA01~TA21は、これらの配列方向の一端から他端にこの順で配置されている。
TA01は、GNDに接続されており、基準電位の接点としてだけではなく、差動信号D1Nと差動信号D1Pの配線インピーダンスをコントロールする接点としての用途も兼ねる。TA01は第3のグラウンド接点に相当する。
TA02に接続された差動信号D1NとTA03に接続された差動信号D1Pは、それらがペアとなってデータ通信を行うデータ通信信号であり、差動通信回路207と接続されている。TA02、TA03、後述するTA07~TA10、TA12~TA17、TA19およびTA20は通信接点である。
第1のグラウンド接点としてのTA04は、GNDに接続されており、カメラ100とアクセサリ200の基準電位の接点となる。TA04は、次に説明するTA05よりも接点の配列方向における外側に配置されている。
電源接点としてのTA05には、アクセサリ電源回路202と充電回路204が接続されており、カメラ100から供給されるアクセサリ電源VACCが接続される。
装着検出接点としてのTA06は、GNDに直接接続されている。アクセサリ200がカメラ100に装着されたときに、アクセサリ制御回路201は前述したアクセサリ装着検出信号/ACC_DETをアクティブ電位としてのLoレベル(GND電位)にする。これにより、カメラ100にアクセサリ200の装着を検出させる。
通信接点であるTA07に接続されたSCLK、TA08に接続されたMOSI、TA09に接続されたMISOおよびTA10に接続されたCSは、アクセサリ制御回路201が通信スレーブとなってSPI通信を行うための信号である。
信号接点(通信要求接点)であるTA11には、アクセサリ制御回路201からカメラ100に対して通信を要求するための通信要求信号/WAKEが接続されている。アクセサリ制御回路201は、カメラ100との通信が必要と判断した場合に、通信要求信号/WAKEをHiレベルからLoレベルに変化させることで、カメラ100に対して通信要求を行う。
アクセサリ200が装着状態であることを検出することに応じてカメラ制御回路101からアクセサリ200に対してTC5を介した電源供給がなされると、アクセサリ制御回路201は通信要求信号/WAKEの信号レベル(電位)をHiレベルからLoレベルに変化させることで、電源供給を受けた旨をカメラ制御回路101に通知する。
アクセサリ制御回路201は、カメラからの要求がなくとも通信要求信号/WAKEの信号レベル(電位)をHiレベルからLoレベルに変化させることで、アクセサリ200がカメラ100と通信すべき要因が発生したことを通知することができる。この構成により、カメラ制御回路101はアクセサリ200に通信すべき要因が発生したか否かを、ポーリングすることよって周期的に確認する動作を省略することができる。また、アクセサリ200は通信すべき要因が発生した場合にその旨をリアルタイムにカメラ100に通信することが可能である。
通信接点であるTA12に接続されたSDAおよびTA13に接続されたSCLは、アクセサリ制御回路201が通信スレーブとなってI2C通信を行うための信号である。
このように、アクセサリ接続部211は、I2C通信方式のデータ信号用の接点TA12と該データ信号用の接点に対して一方の側に配置された(一方の側にて隣り合う)I2C通信方式のクロック信号用の接点TA13を含む。さらにデータ信号用の接点TAB12に対して他方の側に(他方の側にて隣り合う位置から順に)配置された、第2の入力信号用の接点TA11、SPI通信方式の入力選択信号用の接点TA10、SPI通信方式の送信用の接点TA09、SPI通信方式の受信用の接点TA08、SPI通信方式のクロック信号用の接点TA07、第1の入力信号用の接点TA06および出力信号用の接点TA06を含む。
通信接点(機能信号接点)であるTA14に接続されたFNC1信号、TA15に接続されたFNC2信号、TA16に接続されたFNC3信号およびTA17に接続されたFNC4信号は、アクセサリ200の種類に応じて機能を変更できる機能信号である。例えば、アクセサリ200がマイク機器である場合は音声データに関する信号として、またアクセサリ200がストロボ機器である場合は発光タイミングを通知する信号となる。
第2のグラウンド接点としてのTA18もGNDに接続されており、TA04と同様に、カメラ100とアクセサリ200の基準電位の接点となる。TA19に接続された差動信号D2NとTA20に接続された差動信号D2Pは、それらがペアとなってデータ通信を行うデータ通信信号であり、外部接続端子209と接続されている。
TA21はGNDに接続されており、基準電位の接点としてだけではなく、差動信号D2Nと差動信号D2Pの配線インピーダンスをコントロールする端子としての用途も兼ねる。TA21は第4のグラウンド接点に相当する。
接点TA01、TA04、TA06、TA18、TA21は、例えば、フレキシブル基板のGND部に接続されていて、フレキシブル基板のGND部がアクセサリ200のGNDレベルとなる金属性の部材と不図示のビス等で固定される。GNDレベルとなる金属性の部材は例えば、カメラ100のアクセサリシュー部と係合するシュー取付脚やアクセサリ200内部の不図示のベースプレート等がある。
図6は、アクセサリ200がカメラ100に装着されたときに行われる処理のシーケンスを示している。ここでは、カメラ100(カメラ制御回路A101、B102)とアクセサリ200(アクセサリ制御回路201)のそれぞれの処理の概要を説明し、詳細は後述する。
アクセサリ200がカメラ100に装着されると、アクセサリ装着検出信号/ACC_DETがLoレベルとなる。これにより、カメラ制御回路A101は、カメラ100にアクセサリ200が装着されたものと判定する。アクセサリ200が装着されたと判定したカメラ制御回路A101は、アクセサリ用電源回路A131の出力をオンするために、電源制御信号CNT_VACC1をHiレベルにする。アクセサリ用電源回路A131は、電源制御信号CNT_VACC1がHiになることに応じてアクセサリ電源VACCを出力する。
VACCを受電したアクセサリ電源回路202は、アクセサリ制御回路201のための電源VMCU_Aを生成する。これにより、アクセサリ制御回路201が起動する。起動したアクセサリ制御回路201は、アクセサリ200内の各ブロックの初期化を行う。その後、アクセサリ制御回路201は、カメラ100との通信が可能な状態になると、通信要求信号/WAKEをLoレベルとする。
カメラ制御回路A101は、通信要求信号/WAKEがLoレベルとなることで、アクセサリ200が通信可能な状態になったことを検出する。カメラ制御回路A101は、I2C通信によってアクセサリ200に対してアクセサリ情報の通信を要求する。アクセサリ情報要求を受信したアクセサリ制御回路201は、カメラ制御回路A101にアクセサリ情報を送信する。アクセサリ情報を送信したアクセサリ制御回路201は、通信要求信号/WAKEをHiレベルとする。
カメラ制御回路A101は、受信したアクセサリ情報に基づいて、装着されたアクセサリの制御が可能か否か等を判定する。また、アクセサリ用電源回路B132をオンにする。そしてカメラ制御回路A101は、カメラ100の種々の設定を行い、これが完了すると、カメラ制御回路B102に対してアクセサリ情報を通知する。
カメラ制御回路B102は、通知されたアクセサリ情報に基づいて、SPI通信によってアクセサリ200に対する制御コマンドの通知(アクセサリ制御通信)を行ったり機能信号に対応する制御(機能信号制御)を行ったりする。すなわち、SPI通信によってアクセサリ200を制御する。
アクセサリ制御回路201は、カメラ100からのSPI通信による制御コマンドに対して応答するとともに、機能信号に応じた動作を行う。
ここで、図5に例示したアクセサリ情報について説明する。アドレス(address)0x00のD7-D0データは、アクセサリの種類を示す情報(以下、アクセサリ種別情報という)である。図7は、アクセサリ種別情報の例を示している。例えば、0x81はストロボ機器、0x82はインタフェース変換アダプタ機器、0x83はマイク機器、0x84は複数のアクセサリ機器をカメラ100に装着するためのマルチアクセサリ接続アダプタ機器を示している。
アダプタ機器は、カメラ100とストロボ機器やマイク機器等のアクセサリとの間に装着される中間アクセサリである。インタフェース変換アダプタ機器は、カメラ100のインタフェースとアクセサリのインタフェースが異なる場合に、カメラ100とアクサセリとの間に互換性を持たせるためにインタフェースを変換するアダプタ機器である。マルチアクセサリ接続アダプタ機器は、複数のアクセサリを装着可能なアダプタ機器である。
図5におけるアドレス0x01のD7-D0データは、アクセサリ200の機種(型式)を示す情報である。先に説明したアクセサリ種別情報と本情報とによって、アクセサリの種類と機種を識別することが可能である。
アドレス0x02のD7-D0データは、アクセサリ200のファームウェアのバージョンを示す情報である。
アドレス0x03のD7-D6データは、カメラ100が不図示の電源スイッチをオフした状態において、アクセサリ200へのアクセサリ電源VACC供給を要求するか否かを示す仕様情報である。本情報が0の場合には給電不要を示し、1の場合にはアクセサリ用電源回路A131による給電要求を示す。また、2の場合にはアクセサリ用電源回路B132による給電要求を示す。
アドレス0x03のD5-D4データは、カメラ100がオートパワーオフ機能によって省電力状態(以下、オートパワーオフ状態という)になったときにアクセサリ200へのアクセサリ電源VACCの供給を要求するか否かを示す仕様情報(以下、オートパワーオフ給電要否情報という)である。カメラ100は、消費電力を抑えるために、何の操作もされない無操作状態が所定時間継続すると、自動的に電源をオフにするオートパワーオフ機能を有する。本情報が0の場合には給電不要を示し、1の場合にはアクセサリ用電源回路A131による給電要求を示し、2の場合にはアクセサリ用電源回路B132による給電要求を示す。
アドレス0x03のD3-D2データは、アクセサリ200が電池205を備えているか否かを示す仕様情報である。本情報が0の場合には電池を備えていないことを示し、1の場合には電池を備えていることを示す。
アドレス0x03のD1-D0データは、アクセサリ200が電池205への充電機能を備えているか否かを示す仕様情報である。本情報が0の場合には充電機能を備えていないことを示し、1の場合には充電機能を備えていることを示す。
アドレス0x04のD7-D0データは、アクセサリ200がカメラ100から給電されるアクセサリ電源VACCに対する要求電力を示す仕様情報である。例えば、本情報を10倍した値が電流値を示し、本情報が10の場合には100mAを、本情報が100の場合には1Aを示す。また、本情報の情報量を削減する方法として、本情報を電流値に関連付けた簡易な情報としてもよい。例えば、本情報が0の場合には100mAを示し、本情報が1の場合には300mAを示し、本情報が3の場合には450mAを示し、本情報が4の場合には600mAを示すとしてもよい。
アドレス0x05のD7データは、アクセサリ200がファームアップモードか否かを示す仕様情報である。本情報が0の場合にはファームアップモードではないことを示し、1の場合にはファームアップモードであることを示す。
アドレス0x05のD6データは、アクセサリ200がファームアップ機能を備えているか否かを示す仕様情報である。本情報が0の場合にはファームアップ機能を備えていないことを示し、1の場合にはファームアップ機能を備えていることを示す。
アドレス0x05のD5-D4データは、アクセサリ200が中間接続アクセサリに装着された場合の動作を許可するか否かを示す仕様情報である。本情報が0の場合には動作を許可しないことを示し、1の場合には動作を許可することを示す。
アドレス0x05のD3-D2データは、アクセサリ200がカメラ100が起動するときにカメラ100による中間接続アクセサリの装着の確認を必要とするか否かを示す仕様情報である。本情報が0の場合には確認が不要であることを示し、1の場合には確認が必要であることを示す。
アドレス0x05のD1-D0データは、アクセサリ200がI2C通信によるコマンド通知に対応しているか否かを示す仕様情報である。本情報が0の場合にはコマンド通知に非対応であることを示し、1の場合にはコマンド通知に対応していることを示す。
アドレス0x06のD5-D4データは、アクセサリ200が通信要求信号/WAKEをカメラ100に通知した後にカメラ100に通信要求の発生要因の通知に使用可能な通信方式である通信要求要因取得方式(使用通信方式:以下、要因取得方式という)を示す仕様情報である。本情報が0の場合にはI2C通信方式が要因取得方式であることを示し、1の場合にはSPI通信方式が要因取得方式であることを示し、2の場合にはI2C通信方式とSPI通信方式の両方が要因取得方式であることを示す。
アドレス0x06のD3-D0データは、アクセサリ200がFNC1信号(機能信号1)、FNC2信号(機能信号2)、FNC3信号(機能信号3)およびFNC4信号(機能信号4)に対応する機能を備えているか否かを示す仕様情報である。D0データはFNC1信号、D1データはFNC2信号、D2データはFNC3信号、D3データはFNC4信号にそれぞれ対応し、それぞれの値が0の場合には該機能を備えていないことを示し、1の場合には該機能を備えていることを示す。
アドレス0x0AのD7データは、アクセサリ200が通信要求信号/WAKEをカメラ100に通知した際にカメラ100に対して起動を要求するか否かを示す仕様情報である。本情報が0の場合には起動を要求することを示し、1の場合には起動を要求しないことを示す。
アドレス0x0AのD6-D0データは、アクセサリ200がカメラ100に対して通知した通信要求信号/WAKEの発生要因を示す情報である。
図8は、通信要求信号/WAKEの発生要因(以下、通信要求要因ともいう)の例を示している。ここでは、アクセサリ200がマイク機器である場合の例を示している。例えば、要因番号0x00は、操作スイッチ212のうちメニュー呼び出しスイッチが操作(押下)されたことを示す番号である。要因番号0x01は、アクセサリ200が音声信号の出力制御を完了したことを示す番号である。要因番号0x02は、アクセサリ200が音声信号のミュート処理を完了した(ミュートを解除した)ことを示す番号である。このように、本実施例では、通信要求信号/WAKEの発生要因に関する情報としての通信要求要因(番号)の情報をアクセサリ情報の1つとしてアクセサリ200からカメラ100に通知(送信)できるようにしている。
図5において、アドレス0x0CのD1データは、アクセサリ200が対応しているSPI通信プロトコルを示す仕様情報であり、本情報が0の場合はSPIプロトコルAに対応していることを示し、1の場合にはSPIプロトコルBに対応していることを示す。
アドレス0x0CのD0データは、アクセサリ200が対応しているSPI通信のCSの制御論理を示す仕様情報であり、本情報が0の場合はCSがLoアクティブ論理であることを示し、1の場合はCSがHiアクティブ論理であることを示す。
アドレス0x0DのD7-D0データは、アクセサリ200がSPIプロトコルAで通信を行い、かつアドレス0x05のD7データが0の場合、すなわちアクセサリ200がファームアップモードではない場合の通信バイト間隔として必要な時間を示す仕様情報である。
アドレス0x0EのD7-D0データは、アクセサリ200がSPIプロトコルAで通信を行い、かつアドレス0x05D7データが1の場合、すなわちアクセサリ200がファームアップモードである場合の通信バイト間隔として必要な時間を示す仕様情報である。
図9(a)、(b)は、アドレス0x0Dとアドレス0x0Eのデータ(0~7)に対応する通信バイト間隔の時間(通信間隔)を示している。図9(a)はアドレス0x0Dのデータの情報に対する通信間隔を示し、図8(b)はアドレス0x0Eのデータに対する通信間隔を示している。
図5において、アドレス0x0Fのデータは、アドレス0x00から0x0Eまでの総和を示すチェックサム値のデータである。
図10は、アクセサリ200がカメラ100に装着されてアクセサリ200の機能を有効にするまでにカメラ制御回路A101が実行する起動処理を示している。
S401では、カメラ制御回路A101は、アクセサリ装着検出信号/ACC_DETの信号レベルをモニタし、アクセサリ200が装着されているか否かを判断(検出)する。カメラ制御回路A101は、/ACC_DETの信号レベルがHiであればアクセサリ200は未装着であると判断してS401に戻り、再び装着を判断する。信号レベルがLoであればアクセサリ200が装着されたと判断してS402に進む。
S402では、カメラ制御回路A101は、アクセサリ用電源回路A131の出力をオンするために、電源制御信号CNT_VACC1をHiレベルに制御する。そしてS403に進む。アクセサリ用電源回路A131は、電源制御信号CNT_VACC1がHiレベルになると、アクセサリ電源VACCを出力する。
S403では、カメラ制御回路A101は、過電流検知信号DET_OVCの信号レベルをモニタし、過電流が流れていないかを判断する。カメラ制御回路A101は、DET_OVCの信号レベルがLoであれば過電流は流れていないと判断してS404に進み、信号レベルがHiであれば過電流が流れたと判断してS405に進み、エラー処理を行う。
S404では、カメラ制御回路A101は、アクセサリ200からの通知信号である通信要求信号/WAKEの信号レベルをモニタし、アクセサリ200の初期化が完了しているか否かを判断する。カメラ制御回路A101は、/WAKEの信号レベルがLoレベル(アクティブ)であれば初期化が完了していると判断してS406に進み、信号レベルがHiレベルであれば初期化が完了していない判断してS404に戻り、再び初期化の完了を判断する。
S406では、カメラ制御回路A101は、アクセサリ200に対して初期通信としてI2C通信を行い、15バイトのアクセサリ情報を読み出す。そしてS407に進む。
S407では、カメラ制御回路A101は、S406で読み出したアクセサリ情報に基づいて、装着されたアクセサリ200がカメラ100に対応する機器(対応アクセサリ)であるか否かを判断する。カメラ制御回路A101は、装着されたアクセサリ200が対応アクセサリであると判断するとS408に進み、対応アクセサリでないと判断するとS409に進んでエラー処理を行う。
S408では、カメラ制御回路A101は、アクセサリ用電源回路B132の出力をオンするために、電源制御信号CNT_VACC2をHiレベルに制御する。そしてS410に進む。アクセサリ用電源回路B132は、電源制御信号CNT_VACC2がHiレベルになると、アクセサリ電源VACCを出力する。本実施例においては、電源制御信号CNT_VACC1と電源制御信号CNT_VACC2の両方がHiレベルになると、アクセサリ用電源回路B132による出力がアクセサリ電源VACCに供給される。
S410では、カメラ制御回路A101は、カメラ制御回路B102に対して、S406で読み出したアクセサリ情報を通知する。これにより、アクセサリ200の装着に伴うカメラ100での起動処理を完了する。
図11のフローチャートは、アクセサリ200がカメラ100に装着されてアクセサリ200の機能を有効にするまでにカメラ制御回路B102が実行する有効化処理を示している。
S501では、カメラ制御回路B102は、カメラ制御回路A101からアクセサリ情報が通知されたか否かを判断する。カメラ制御回路B102は、アクセサリ情報が通知されていなければS501に戻って再び通知を判断し、アクセサリ情報が通知されていればS502に進む。
S502では、カメラ制御回路B102は、カメラ制御回路A101から通知されたアクセサリ情報に基づいて、機能信号であるFNC1~FNC4に対する設定を行う。例えば、アクセサリ200がマイク機器であると通知された場合には、FNC1が音声データクロック信号BCLKとして、FNC2が音声データチャンネル信号LRCLKとして、FNC3が音声データ信号SDATAとしてそれぞれ機能するように設定する。また別の例として、アクセサリ200がストロボ機器であると通知された場合には、FNC4がストロボ発光同期信号XOUTとして機能するように設定する。なお、アクセサリ200に対して制御が不要な機能信号についても、カメラ100とアクセサリ200の動作に支障が生じないように所定の設定を行う。
S503では、カメラ制御回路B102は、カメラ制御回路A101から通知されたアクセサリ情報に基づいて、SPI通信におけるCSの制御論理の設定を行う。
S504では、カメラ制御回路B102は、アクセサリ200に対する所定のイベントが発生しているか否かを判断する。カメラ制御回路B102は、イベントが発生していなければS504に戻って再びイベントの発生を判断し、イベントが発生していればS505に進む。
S505では、カメラ制御回路B102は、S504で発生したイベントがアクセサリ200とのSPI通信を要するイベントであるかを判断する。カメラ制御回路B102は、イベントがSPI通信を要するものであればS506に進み、そうでなければS507に進む。
S507では、カメラ制御回路B102は、S504で発生したイベントが機能信号を用いたアクセサリ200の制御が必要なイベントであるか否かを判断する。カメラ制御回路B102は、イベントが機能信号を用いた制御を要するものであればS508に進み、そうでなければS509に進む。
S506では、カメラ制御回路B102は、アクセサリ200に対してSPI通信を行う。ここで行われるSPI通信としては、例えば、アクセサリ200がマイク機器である場合はマイク動作をオンさせる指示の通信、マイク動作をオフさせる指示の通信、マイクの集音指向性を切り替える指示の通信およびマイクのイコライザ機能を切り替える指示の通信等がある。また、アクセサリ200がストロボ機器である場合は、該ストロボ機器の設定情報を読み出す通信やストロボ機器に対して設定情報を通知する通信等がある。カメラ制御回路B102は、S506でのSPI通信が完了すると、S504に戻って再びイベントの発生を判断する。
S508では、カメラ制御回路B102は、アクセサリ200に対して機能信号を用いた制御を行う。例えば、アクセサリ200がマイク機器である場合は、FNC1の音声データクロック信号BCLKとFNC2の音声データチャンネル信号LRCLKを出力するとともに、FNC3の音声データ信号SDATAを取り込む。これにより、カメラ100はマイク機器からの音声データを取得可能となる。また、アクセサリ200がストロボ機器である場合は、FNC4のストロボ発光同期信号XOUTを所定のタイミングで出力する。これにより、カメラ100はストロボ機器に発光を指示することができる。こうして記機能信号を用いた制御が完了すると、カメラ制御回路B102は、S504に戻って再びイベントの発生を判断する。
また、S509では、カメラ制御回路B102は、S504で発生したイベントに応じて所定のカメラ内制御を行う。カメラ内制御としては、例えば、アクセサリ200がマイク機器である場合は、記録用メモリ126への音声データの記録を開始または終了する制御や、音声データに対するイコライザ処理を行う制御等がある。また、アクセサリ200がストロボ機器である場合は、ストロボ機器が発光した光を撮像センサ122で蓄積取得する測光制御や、ストロボ機器の発光量の指示値を演算する制御等がある。こうしてカメラ内制御が完了すると、カメラ制御回路B102は、S504に戻って再びイベントの発生を判断する。
以上説明したカメラ制御回路A101による起動処理およびカメラ制御回路B102による有効化処理によって、カメラ100が装着されたアクセサリ200に対する制御を行うことが可能となる。
図12のフローチャートは、アクセサリ200がカメラ100に装着されてからアクセサリ200の各種機能動作が可能になるまでにアクセサリ制御回路201が実行する処理を示している。
S601では、アクセサリ制御回路201は、カメラ100からのアクセサリ電源VACCがオンになるのを待つ。アクセサリ200が電池205を備えていない場合は、アクセサリ制御回路201へ電源が供給されてアクセサリ制御回路201自身が動作を開始したことでアクセサリ電源VACCがオンしたことを検出することができる。アクセサリ200が電池205を備える場合は、アクセサリ制御回路201がアクセサリ電源VACCの電圧値をモニタするようにしてアクセサリ電源VACCがオンしたことを検出してもよい。
S602では、アクセサリ制御回路201は、所定の初期設定を行う。例えば、マイコンの動作周波数の設定、マイコンの入出力制御ポートの設定、マイコンのタイマー機能の初期化設定およびマイコンの割り込み機能の初期化設定を行う。
S602での初期設定が完了すると、S603において、アクセサリ制御回路201は、通信要求信号/WAKEをLoレベルに制御する。これにより、カメラ100に対して初期設定が完了したことを通知する。
S604では、アクセサリ制御回路201は、カメラ100からのI2C通信に対して応答して、初期通信として15バイトのアクセサリ情報をカメラ100に送信する。アクセサリ情報には、図5で示した種々の情報が含まれる。
S604の初期通信が完了すると、S605において、アクセサリ制御回路201は、通信要求信号/WAKEをHiレベルに制御する。
S606では、アクセサリ制御回路201は、所定のイベントが発生しているか否かを判断する。アクセサリ制御回路201は、イベントが発生していなければS606に戻って再びイベントの発生を判断し、イベントが発生していればS607に進む。
S607では、アクセサリ制御回路201は、S606で発生したイベントがカメラ100とのSPI通信を要するイベントであるか否かを判断する。アクセサリ制御回路201は、イベントがSPI通信を要するものであればS608に進み、そうでなければS609に進む。
S609では、アクセサリ制御回路201は、S606で発生したイベントがカメラ100とのI2C通信を要するイベントであるか否かを判断する。アクセサリ制御回路201は、イベントがI2C通信を要するものであればS610に進み、そうでなければS611に進む。
S611では、アクセサリ制御回路201は、S606で発生したイベントが機能信号を用いた制御を行うイベントであるか否かを判断する。アクセサリ制御回路201は、イベントが機能信号を用いた制御を要するものであればS612に進み、そうでなければS613に進む。
S613では、アクセサリ制御回路201は、S606で発生したイベントが通信要求信号/WAKEによるカメラ100への通知を行うイベントであるか否かを判断する。アクセサリ制御回路201は、イベントが通信要求信号/WAKEによるカメラ100への通知を要するものであればS614に進み、そうでなければS615に進む。
S608では、アクセサリ制御回路201は、カメラ100とのSPI通信を行う。SPI通信の実行時に通信要求信号/WAKEがLoレベルになっている場合は、SPI通信後に通信要求信号/WAKEをHiレベルに制御する。ここで行われるSPI通信としては、例えば、アクセサリ200がマイク機器である場合は、カメラ100からのマイク動作をオンさせる指示の通信、マイク動作をオフさせる指示の通信、マイクの集音指向性を切り替える指示の通信がある。さらに、マイクのイコライザ機能を切り替える指示の通信等もある。また、アクセサリ200がストロボ機器である場合は、ストロボ機器の設定情報を読み出す通信や、ストロボ機器に対して設定情報を通知する通信等がある。S608での所定のSPI通信が完了すると、アクセサリ制御回路201は、S606に戻って再びイベントの発生を判断する。
S610では、アクセサリ制御回路201は、カメラ100とのI2C通信を行う。I2C通信の実行時に通信要求信号/WAKEがLoレベルになっている場合は、I2C通信後に通信要求信号/WAKEをHiレベルに制御する。ここで行われるI2C通信としては、例えば、アクセサリ制御回路201からカメラ100に対して通知した通信要求信号/WAKEに対する通信要求要因(番号)を読み出すための通信がある。S610でのI2C通信が完了すると、アクセサリ制御回路201は、S606に戻って再びイベントの発生を判断する。
S612では、アクセサリ制御回路201は、カメラ100に対して機能信号を用いた制御を行う。ここで行われる制御としては、例えば、アクセサリ200がマイク機器である場合は、カメラ100から出力されるFNC1の音声データクロック信号BCLKとFNC2の音声データチャンネル信号LRCLKの受信の制御がある。さらに、これらの信号に同期したFNC3の音声データ信号SDATAの出力の制御もある。また、アクセサリ200がストロボ機器である場合は、FNC4のストロボ発光同期信号XOUTの受信する制御と、これに応じたストロボ発光の制御がある。S612での機能信号を用いた制御が完了すると、アクセサリ制御回路201は、S606に戻って再びイベントの発生を判断する。
S614では、アクセサリ制御回路201は、S606で発生したイベントに応じたカメラ100への通信要求要因番号をアクセサリ200の不図示の揮発性メモリに格納し、通信要求信号/WAKEをLoレベルに制御する。通信要求要因番号は、図8に示したように要因内容ごとに割り振られた固有の番号である。S614での通信要求信号/WAKEのLoレベル制御が完了すると、アクセサリ制御回路201は、S606に戻って再びイベントの発生を判断する。
S615では、アクセサリ制御回路201は、S606で発生したイベントに応じたアクセサリ内制御を行う。ここで行われるアクセサリ内制御としては、アクセサリ200が電池205を備える場合の電池残量を検出する制御や、操作スイッチ212の操作を検出する制御等がある。S615でのアクセサリ内制御が完了すると、アクセサリ制御回路201は、S606に戻って再びイベントの発生を判断する。
以上のアクセサリ制御回路201による処理により、アクセサリ200はカメラ100に装着された後に各種機能動作を行うことが可能となる。
図13のフローチャートは、カメラ100がアクセサリ200から通信要求信号を受信したときに、カメラ制御回路A101がカメラ制御回路B102にアクセサリ情報と通信を要するイベント(通信要求イベント)の発生を通知する処理を示している。
S701では、カメラ制御回路A101は、アクセサリ200からの通信要求信号/WAKEの信号レベルをモニタし、アクセサリ200からの通信要求が発生しているか否かを判断する。カメラ制御回路A101は、アクセサリ200からの通信要求信号/WAKEがLoレベルであれば通信要求が発生しているものと判断してS702に進み、Hiレベルであれば通信要求が発生していない判断してS701に戻って再び判断を行う。
S702では、カメラ制御回路A101は、図10のS406でのI2C通信により取得したアクセサリ情報内の要因取得方式がI2C通信方式であるか否かを判断する。カメラ制御回路A101は、要因取得方式がI2C通信方式である場合はS703に進み、そうでなければS704に進む。
S703では、カメラ制御回路A101は、アクセサリ200に対してI2C通信を行ってアドレス0x0AのD6-D0データである通信要求要因を読み出す。そしてS705に進む。
S704では、カメラ制御回路A101は、S406でのI2C通信で取得したアクセサリ情報の要因取得方式がI2C通信方式とSPI通信方式の両方であるか否かを判断する。カメラ制御回路A101は、要因取得方式が両方の通信方式である場合はS706に進み、そうでなければS707に進む。
S705では、カメラ制御回路A101は、カメラ制御回路B102に対してS406で取得したアクセサリ情報を通知するとともに、アクセサリ200においてI2C通信を要するイベント(I2C通信要求イベント)が発生したことを通知する。このときのアクセサリ情報は、S703で読み出した通信要求要因を更新したアクセサリ情報である。
S706では、カメラ制御回路A101は、I2C通信とSPI通信を同時に(並行して)行うか否かを判断する。カメラ制御回路A101は、I2C通信とSPI通信を同時に行う場合はS708に進み、これらを同時に行わない場合はS709に進む。
本実施例では、I2C通信とSPI通信を同時に行うか否かの情報として、アクセサリ情報のリザーブ領域であるアドレス0x0DのD0データに、同時に通信を行う場合は1を、同時に行わない場合は0を割り当てる。ただし、I2C通信とSPI通信を同時に行うか否かの情報を他のリザーブ領域に割り当ててもよい。また、予めSPI通信によりアクセサリ200から同時通信を行うか否かの情報を取得し、カメラ制御回路B102からその情報を取得するようにしてもよい。
S708では、カメラ制御回路A101は、カメラ制御回路B102に対してS406で読み出したアクセサリ情報を通知するとともに、アクセサリ200においてSPI通信を要するイベント(SPI通信要求イベント)が発生したことを通知する。これに応じて、カメラ制御回路B102は、アクセサリ200に対してSPI通信を行ってアドレス0x0AのD6-D0データのうちSPI通信で取得すべき通信要求要因を読み出す。
さらにS710では、カメラ制御回路A101は、アクセサリ200に対してI2C通信を行ってアドレス0x0AのD6-D0データのうちI2C通信で取得すべき通信要求要因を読み出す。そしてS711に進む。
S711では、カメラ制御回路A101は、カメラ制御回路B102に対してS406で読み出したアクセサリ情報を通知するとともに、アクセサリ200においてI2C通信を要するイベントが発生したことを通知する。このときのアクセサリ情報は、S710で読み出した通信要求要因を更新したアクセサリ情報である。
なお、S708のSPI通信要求イベントの通知に応じたカメラ制御回路B102によるSPI通信と、S710でのカメラ制御回路A101によるI2C通信は、有意な時間差なく並行して行われる。より具体的には、SPI通信が実行される時間とI2C通信が実行される時間の少なくとも一部同士が重複するように行われる。また、I2C通信とSPI通信のうち一方が終了してから所定時間が経過する前にI2C通信とSPI通信のうち他方を開始しても、所定時間が短ければ並行に行っているとみなしてよい。
S709では、カメラ制御回路A101は、アクセサリ200に対してI2C通信を行ってアドレス0x0AのD6-D0データである通信要求要因を読み出す。そして、S712に進む。
S712では、カメラ制御回路A101は、カメラ制御回路B102に対してS406で読み出したアクセサリ情報を通知するとともに、アクセサリ200からI2C通信とSPI通信の両方を要するイベント(I2C・SPI通信要求イベント)が発生したことを通知する。このときのアクセサリ情報は、S709で読み出した通信要求要因を更新したアクセサリ情報である。
S707では、カメラ制御回路A101は、S406のI2C通信で取得したアクセサリ情報内の要因取得方式がSPI通信方式であるか否かを判断する。カメラ制御回路A101は、要因取得方式がSPI通信方式である場合はS713に進み、SPI通信方式でない場合はS714に進んでエラー処理を行う。
S713では、カメラ制御回路A101は、カメラ制御回路B102に対してS406で読み出したアクセサリ情報を通知するとともに、アクセサリ200からSPI通信を要するイベントが発生したことを通知する。
以下、アクセサリ200からの通信要求によるカメラ100の制御の例について説明する。
[I2C通信を用いたカメラ100の制御例]
まず、アクセサリ200がマイク機器である場合におけるI2C通信を用いたカメラ100のメニュー表示制御について説明する。
(アクセサリ200側の処理)
図12のS604においてアクセサリ制御回路201は、カメラ制御回路A101からのI2C通信に対する応答として、15バイトのアクセサリ情報をカメラ制御回路A101に送信する。ここでは、アクセサリ情報内の要因取得方式は、I2C通信方式に設定されているものとする。
ユーザによってアクセサリ200における操作スイッチ212のメニュー呼び出しスイッチが押下されると、アクセサリ制御回路201はこれを検出してカメラ100に対するメニュー呼出しイベントを生成する。これにより、アクセサリ制御回路201は、S606においてメニュー呼出しイベントが発生したと判断し、S607→S609→S611を通過してS613に進む。
S613では、アクセサリ制御回路201は、S606で発生したと判断したイベントが通信要求信号/WAKEによるカメラ100への通知を行うイベントであると判断し、S614にて通信要求信号/WAKEをLoレベルに制御する。また、I2C通信でカメラ100に通知する通信要求要因のデータとして、図8に示した「メニュー呼出しSW押下」を示すデータを格納する。
次に、アクセサリ制御回路201は、S606に戻って再びイベントが発生したか否かを判断する。カメラ制御回路A101からのI2C通信が発生すると、アクセサリ制御回路201は、S607→S609→S610と進み、I2C通信で通信要求要因をカメラ制御回路B102に通知する。
(カメラ100側の処理)
図11のS504において、カメラ制御回路B102は、図13のS705にてカメラ制御回路A101からアクセサリ情報とI2C通信を要するイベントが通知されることでイベントが発生したと判断する。これにより、S505→S507を通過してS509に進む。
S509では、カメラ制御回路B102は、S504で発生を判断した「メニュー呼出しSW押下」のイベントに応じたカメラ内制御として、表示回路127に図14(a)に示すようなマイク機器用のメニュー表示を行わせる。
このように、カメラ制御回路B102は、アクセサリ200とSPI通信を行うことなくI2C通信を行うだけでメニュー表示の制御を完了することができる。このため、SPI通信に要する時間を削減することができ、データ通信のリアルタイム性が高い撮像システムを実現することができる。
[SPI通信を用いたカメラ100の制御例]
次に、アクセサリ200がストロボ機器である場合におけるSPI通信を用いたカメラ100のメニュー表示制御について説明する。
(アクセサリ200側の処理)
図12のS604において、アクセサリ制御回路201は、カメラ制御回路A101からのI2C通信に対する応答として、15バイトのアクセサリ情報をカメラ制御回路A101に送信する。ここでは、アクセサリ情報内の要因取得方式は、SPI通信方式に設定されているものとする。
ユーザによってアクセサリ200における操作スイッチ212のメニュー呼び出しスイッチが押下されると、アクセサリ制御回路201はこれを検出してカメラ100に対するメニュー呼出しイベントを生成する。これにより、アクセサリ制御回路201は、S606においてメニュー呼出しイベントが発生したと判断し、S607→S609→S611を通過してS613に進む。
S613では、アクセサリ制御回路201は、S606で発生を判断したイベントが通信要求信号/WAKEによるカメラ100への通知を行うイベントであると判断し、S614にて通信要求信号/WAKEをLoレベルに制御する。また、SPI通信でカメラ100に通知する通信要求要因のデータとして、図8に示した「メニュー呼出しSW押下」を示すデータを格納する。
次に、アクセサリ制御回路201は、S606に戻って再びイベントが発生したか否かを判断する。カメラ制御回路B102からのSPI通信が発生すると、アクセサリ制御回路201は、S607からS608に進み、SPI通信で通信要求要因をカメラ制御回路B102に通知する。
(カメラ100側の処理)
図11のS504において、カメラ制御回路B102は、図13のS705にてカメラ制御回路A101からアクセサリ情報とSPI通信を行うイベントの発生が通知されることでイベントが発生したと判断する。
これにより、カメラ制御回路B102は、S506においてSPI通信によりアクセサリ制御回路201から通信要求要因を取得し、さらにメニュー表示に必要なストロボ情報も取得する。そして、「メニュー呼出しSW押下」のイベントを設定して、SPI通信を終了する。
次に、カメラ制御回路B102は、S504に戻って再びイベントが発生したか否かを判断する。カメラ制御回路B102は、「メニュー呼出しSW押下」のイベントの発生を判断し、S505→S507を通過してS509に進む。
S509では、カメラ制御回路B102は、S504で判断した「メニュー呼出しSW押下」のイベントに応じたカメラ内制御として、表示回路127に図14(b)に示すようなストロボ機器用のメニュー表示を行わせる。
このように、カメラ制御回路B102は、ストロボ機器用のメニュー表示のように必要とする情報が多い場合はSPI通信を行う。このため、SPI通信よりも低速なI2C通信のみで多くのデータを通信する場合よりも、リアルタイム性の高い撮像システムを実現することができる。
[I2C通信とSPI通信の両方を用いたカメラ100の制御例]
次に、アクセサリ200がストロボ機器である場合において、I2C通信とSPI通信の両方を用いて、ストロボのバウンスを制御しながらカメラ100のメニュー表示を制御する場合について説明する。
(アクセサリ200側の処理)
図12のS604において、アクセサリ制御回路201は、カメラ制御回路A101からのI2C通信に対する応答として、15バイトのアクセサリ情報をカメラ制御回路A101に送信する。ここでは、アクセサリ情報内の要因取得方式は、I2C通信方式およびSPI通信方式の両方に設定されている。
ユーザによってアクセサリ200における操作スイッチ212のオートバウンススイッチとメニュー呼び出しスイッチが押下されると、アクセサリ制御回路201はこれらを検出して「オートバウンス駆動」のイベントとカメラ100に対する「メニュー呼出しSW押下」のイベントを生成する。これにより、アクセサリ制御回路201は、S606において「オートバウンス駆動」のイベントが発生したと判断し、S607→S609→S611→S613を通過してS615に進む。
S615では、アクセサリ制御回路201は、アクセサリ内制御として、「オートバウンス駆動」のイベントに応じたオートバウンス駆動制御を行う。
次にアクセサリ制御回路201は、S606に戻って「メニュー呼出しSW押下」のイベントが発生したと判断する。そして、S607→S609→S611を通過して、S613にて、S606で発生を判断したイベントが通信要求信号/WAKEによるカメラ100への通知を行うイベントであると判断し、S614にて通信要求信号/WAKEをLoベルに制御する。また、アクセサリ制御回路201は、I2C通信でカメラ100に通知する通信要求要因のデータとして、「オートバウンス駆動」(第1の情報)のデータを図8の0x03のアドレスに格納する。本実施例では、通信要求要因として、リザーブ領域であるアドレス0x03データに「オートバウンス駆動」を割り当てる。また、アクセサリ制御回路201は、SPI通信でカメラ100に通知する通信要求要因のデータとして、「メニュー呼出しSW押下」(第2の情報)のデータを格納する。
さらにアクセサリ制御回路201は、S606に戻ってイベントの発生を判断し、カメラ制御回路A101からのI2C通信が発生すると、S607→S609→S610と進み、I2C通信でカメラ制御回路B102に通信要求要因を通知する。また、カメラ制御回路B102からのSPI通信が発生すると、アクセサリ制御回路201は、S607からS608に進み、SPI通信で通信要求要因をカメラ制御回路B102に通知する。
なお、ここではI2C通信とSPI通信をこの順で行う場合について説明したが、順番は逆でもよいし同時でもよい。
(カメラ100側の処理)
図11のS504において、カメラ制御回路B102は、図13のS705にてカメラ制御回路A101からアクセサリ情報が通知されるとともに、I2CおよびSPI通信でのイベントの発生が通知されることでイベントが発生したと判断する。まず、I2C通信でのイベントを処理するために、カメラ制御回路B102は、S505→S507を通過してS509に進む。
S509では、カメラ制御回路B102は、S504で発生を判断した「オートバウンス駆動」のイベントに応じたカメラ内制御として、オートバウンスの最適角度を計算し、オートバウンス駆動要求イベントを生成する。
次に、カメラ制御回路B102は、S504に戻って、SPI通信でのイベントを処理する。S506では、SPI通信で通信要求要因を取得し、さらにメニュー表示に必要なストロボ情報も取得し、「メニュー呼出しSW押下」のイベントを設定して、SPI通信を終了する。
続いて、カメラ制御回路B102は、S504に再び戻って「メニュー呼出しSW押下」のイベントを検出し、S505→S507を通過してS509に進む。S509では、カメラ制御回路B102は、S504で検出した「メニュー呼出しSW押下」のイベントに応じたカメラ内制御として、表示回路127に図14(b)に示すようなストロボ機器用のメニュー表示を行わせる。
このように、カメラ制御回路B102は、I2C通信とSPI通信で取得したイベントに対する制御を同時に行うため、リアルタイム性の高いデータ通信が可能な撮像システムを実現することができる。
なお、I2C通信とSPI通信を同時行わない場合の制御については、上述した制御の組み合わせで実現されるため、説明を省略する。
上記各実施例では、第1の通信方式がI2C通信方式で第2の通信方式がSPI通信方式である場合について説明したが、第1および第2の通信方式はI2CおよびSPI通信方式以外の通信方式であってもよい。
また、上記各実施例では、アクセサリが第1の通信方式および第2の通信方式の両方の通信が可能な場合について説明したが、アクセサリは第1の通信方式での通信は可能であるが第2の通信方式での通信はできなくてもよい。このようなアクセサリにおいても、通信要求の要因に関する情報の通信に用いる使用通信方式に対応する情報をアクセサリが送信することで、カメラからアクセサリへの問い合わせを削減でき応答性のよいデータ通信を行うことができる。
また、上記各実施例では、電子機器として撮像装置について説明したが、本発明にいう電子機器には撮像装置以外の様々な電子機器も含まれる。
また、上記実施例ではアクセサリ200がカメラ100に直接装着される場合について説明したが、他の装着形態であってもよい。例えば、アクセサリ200に相当するメインアクセサリおよびカメラ100が装着されたアダプタ機器等の中間アクセサリを介してカメラ100とメインアクセサリとが通信を行ってもよい。この場合は、上記実施例で説明したアクセサリ200で実行される通信制御やカメラ100で実行される通信制御の少なくとも一部と同様の通信制御を中間アクセサリで実行してもよい。また、該アクセサリがカメラ100から入力した情報に対応する情報をメインアクセサリに出力し、メインアクセサリから入力した情報に対応する情報をカメラ100に出力する、といった情報の伝達経路として中間アクセサリを機能させてもよい。このように本発明の実施例としてのアクセサリには、マイク機器、照明機器、アダプタ機器等、様々なアクセサリが含まれる。さらに、アダプタ機器は電子機器にも含まれ得る。
(その他の実施例)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
以上説明した各実施例は代表的な例にすぎず、本発明の実施に際しては、各実施例に対して種々の変形や変更が可能である。
100 カメラ
101 カメラ制御回路A
102 カメラ制御回路B
200 アクセサリ
201 アクセサリ制御回路

Claims (27)

  1. 電子機器に対して着脱可能および通信可能に装着されるアクセサリであって、
    前記電子機器に対して通信要求を行い、該通信要求の要因に関する情報を送信するアクセサリ処理手段を有し、
    前記アクセサリ処理手段は、
    第1の通信方式と該第1の通信方式とは異なる第2の通信方式のうち前記要因に関する情報の通信に用いる使用通信方式に対応する情報を、前記第1の通信方式で前記電子機器に通知することを特徴とするアクセサリ。
  2. 前記アクセサリ処理手段は、
    前記第1の通信方式と前記第2の通信方式で前記電子機器との通信が可能であることを特徴とする請求項1に記載のアクセサリ。
  3. 前記第1の通信方式での情報の送信に用いる接点は、前記第2の通信方式での情報の送信に用いる接点と異なる接点であることを特徴とする請求項2に記載のアクセサリ。
  4. 前記通信要求に用いる接点は、前記第1の通信方式での情報の通信に用いる接点および前記第2の通信方式での情報の通信に用いる接点と異なる接点であることを特徴とする請求項3に記載のアクセサリ。
  5. 前記アクセサリ処理手段は、
    前記電子機器に対して、通知した前記使用通信方式で前記要因に関する情報を送信することを特徴とする請求項1から4のいずれか一項に記載のアクセサリ。
  6. 前記第1の通信方式は、前記第2の通信方式に比べて低速な通信方式であることを特徴とする請求項1から5のいずれか一項に記載のアクセサリ。
  7. 前記第1の通信方式はI2C通信方式であり、前記第2の通信方式はSPI通信方式であることを特徴とする請求項1から6のいずれか一項に記載のアクセサリ。
  8. 前記使用通信方式が、前記第1および第2の通信方式のうち一方であることを特徴とする請求項1から7のいずれか一項に記載のアクセサリ。
  9. 前記使用通信方式が、前記第1および第2の通信方式の両方であることを特徴とする請求項1から7のいずれか一項に記載のアクセサリ。
  10. 前記要因に関する情報として第1の情報と第2の情報とがある場合において、
    前記アクセサリ処理手段は、前記電子機器に対して、前記第1の通信方式で前記第1の情報を送信し、前記第2の通信方式で前記第2の情報を送信することを特徴とする請求項9に記載のアクセサリ。
  11. 前記アクセサリ処理手段は、前記第1の通信方式での前記第1の情報の送信と前記第2の通信方式での前記第2の情報の送信を並行して行うことを特徴とする請求項10に記載のアクセサリ。
  12. 前記アクセサリ処理手段は、前記電子機器に入力する通信要求信号のレベルを変化させることで前記通信要求を行うことを特徴とする請求項1から11のいずれか一項に記載のアクセサリ。
  13. 請求項1から12のいずれか一項に記載のアクセサリと、
    該アクセサリが着脱可能および通信可能に装着される電子機器とを有することを特徴とするシステム。
  14. アクセサリが着脱可能および通信可能に装着される電子機器であって、
    前記アクセサリからの通信要求を受け付けるとともに、第1の通信方式で前記アクセサリとの通信が可能な第1の処理手段と、
    前記第1の通信方式とは異なる第2の通信方式で前記アクセサリとの通信が可能な第2の処理手段とを有し、
    前記第1の処理手段は、前記第1の通信方式で、前記アクセサリから前記第1および第2の通信方式のうち前記通信要求の要因に関する情報の通信に用いる使用通信方式の通知を受け、
    前記第1および第2の処理手段のうち通知された前記使用通信方式で通信可能な処理手段が、該使用通信方式で前記アクセサリから前記要因に関する情報を受信することを特徴とする電子機器。
  15. 前記第1の処理手段は、前記アクセサリから通知された前記使用通信方式を前記第2の処理手段に通知することを特徴とする請求項14に記載の電子機器。
  16. 前記第1の通信方式は、前記第2の通信方式に比べて低速な通信方式であることを特徴とする請求項14または15に記載の電子機器。
  17. 前記第1の通信方式はI2C通信方式であり、前記第2の通信方式はSPI通信方式であることを特徴とする請求項14から16のいずれか一項に記載の電子機器。
  18. 前記使用通信方式が前記第1および第2の通信方式のうち両方であり、前記アクセサリにおいて前記要因に関する情報として第1の情報と第2の情報とがある場合において、前記第1の処理手段が前記第1の通信方式で前記第1の情報を受信し、前記第2の処理手段が前記第2の通信方式で前記第2の情報を受信することを特徴とする請求項14から17のいずれか一項に記載の電子機器。
  19. 前記第1および第2の処理手段は、前記第1の通信方式での前記第1の情報の送信と前記第2の通信方式での前記第2の情報の送信を並行して行うことを特徴とする請求項18に記載の電子機器。
  20. 前記第1の処理手段は、前記アクセサリから入力される通信要求信号のレベルが変化することで前記通信要求を受けることを特徴とする請求項14から19のいずれか一項に記載の電子機器。
  21. アクセサリが着脱可能および通信可能に装着される電子機器であって、
    前記アクセサリからの通信要求と、
    前記アクセサリからの第1の通信方式と該第1の通信方式とは異なる第2の通信方式のうち前記通信要求の要因に関する情報の通信に用いる使用通信方式に対応する情報と、
    を受信する受信手段を有することを特徴とする電子機器。
  22. 請求項14から21のいずれか一項に記載の電子機器と、
    該電子機器に着脱可能および通信可能に装着されるアクセサリとを有することを特徴とするシステム。
  23. 電子機器に対して着脱可能および通信可能なアクセサリの制御方法であって、
    前記電子機器に対して通信要求を行うステップと、
    前記通信要求の要因に関する情報を送信するステップと、
    第1の通信方式と該第1の通信方式とは異なる第2の通信方式のうち前記要因に関する情報の通信に用いる使用通信方式に対応する情報を、前記第1の通信方式で前記電子機器に通知するステップとを有することを特徴とする制御方法。
  24. アクセサリが着脱可能および通信可能に装着され、前記アクセサリからの通信要求を受け付けるとともに、第1の通信方式で前記アクセサリとの通信が可能な第1の処理手段と、前記第1の通信方式とは異なる第2の通信方式で前記アクセサリとの通信が可能な第2の処理手段とを有する電子機器の制御方法であって、
    前記第1の処理手段に、前記第1の通信方式で、前記アクセサリから前記第1および第2の通信方式のうち前記通信要求の要因に関する情報の通信に用いる使用通信方式の通知を受けさせるステップと、
    前記第1および第2の処理手段のうち通知された前記使用通信方式で通信可能な処理手段に、該使用通信方式で前記アクセサリから前記要因に関する情報を受信させるステップとを有することを特徴とする制御方法。
  25. アクセサリが着脱可能および通信可能に装着される電子機器の制御方法であって、
    前記アクセサリからの通信要求を受信するステップと、
    前記アクセサリからの第1の通信方式と該第1の通信方式とは異なる第2の通信方式のうち前記通信要求の要因に関する情報の通信に用いる使用通信方式に対応する情報を受信するステップとを有することを特徴とする制御方法。
  26. 電子機器に着脱可能および通信可能に装着されるアクセサリのコンピュータに、請求項23に記載の制御方法に従う処理を実行させることを特徴とするプログラム。
  27. アクセサリが着脱可能および通信可能に装着される電子機器のコンピュータに、請求項24または25に記載の制御方法に従う処理を実行させることを特徴とするプログラム。
JP2021073024A 2021-04-23 2021-04-23 電子機器およびアクセサリ Pending JP2022167300A (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2021073024A JP2022167300A (ja) 2021-04-23 2021-04-23 電子機器およびアクセサリ
US17/715,124 US20220342286A1 (en) 2021-04-23 2022-04-07 Electronic apparatus and its control method, and accessory and its control method
EP22167763.6A EP4080278A1 (en) 2021-04-23 2022-04-12 Electronic apparatus and its control method, and accessory and its control method
CN202210424614.7A CN115242960A (zh) 2021-04-23 2022-04-21 电子设备及其控制方法和配件及其控制方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2021073024A JP2022167300A (ja) 2021-04-23 2021-04-23 電子機器およびアクセサリ

Publications (1)

Publication Number Publication Date
JP2022167300A true JP2022167300A (ja) 2022-11-04

Family

ID=81579427

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021073024A Pending JP2022167300A (ja) 2021-04-23 2021-04-23 電子機器およびアクセサリ

Country Status (4)

Country Link
US (1) US20220342286A1 (ja)
EP (1) EP4080278A1 (ja)
JP (1) JP2022167300A (ja)
CN (1) CN115242960A (ja)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8224170B2 (en) * 2009-06-28 2012-07-17 Kevin James King Photographic control system, devices and method
JP6577153B2 (ja) * 2017-01-27 2019-09-18 富士フイルム株式会社 カメラシステム、カメラ、レンズ、アクセサリー、及び、カメラシステムのアクセサリー検出方法
RU2714847C2 (ru) * 2017-05-31 2020-02-19 Кэнон Кабусики Кайся Устройство захвата изображения и аксессуары
JP6818716B2 (ja) 2017-05-31 2021-01-20 キヤノン株式会社 アクセサリ装置および撮像装置
EP3633972B1 (en) * 2017-05-31 2023-04-19 Canon Kabushiki Kaisha Camera, accessory device, communication control method, computer program, and camera system

Also Published As

Publication number Publication date
US20220342286A1 (en) 2022-10-27
CN115242960A (zh) 2022-10-25
EP4080278A1 (en) 2022-10-26

Similar Documents

Publication Publication Date Title
JP2022192068A (ja) 電子機器およびアクセサリ
JP7155337B1 (ja) 電子機器およびアクセサリ
JP7192028B2 (ja) 電子機器およびアクセサリ
JP2022167300A (ja) 電子機器およびアクセサリ
JP2022167340A (ja) 電子機器およびアクセサリ
EP4080872A1 (en) Image pickup apparatus, accessory, control method of image pickup apparatus, control method of accessory, and program
JP2022167592A (ja) 電子機器
JP2022167455A (ja) 撮像装置およびアクセサリ
JP2022167259A (ja) アクセサリ、電子機器、及び表示システム
JP2022171085A (ja) アクセサリ、電子機器、及び撮像システム
JP2022167594A (ja) 電子機器、アクセサリ、アクセサリ接続装置およびアクセサリ制御方法
JP2022167330A (ja) 電子機器およびアクセサリ
JP2022167758A (ja) 電子機器及びアクセサリとその制御方法、通信システム、プログラム
JP2022167593A (ja) 電子機器及びアクセサリとその制御方法、通信システム、プログラム
JP2022188367A (ja) 撮像装置、アクセサリ、撮像装置の制御方法、アクセサリの制御方法、およびプログラム
US20240080541A1 (en) Image pickup apparatus, accessory, image pickup system, control method for image pickup apparatus, control method for accessory, and storage medium

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20240405