以下、この発明の実施の形態について図面を参照して詳細に説明する。図1は、この実施の形態で説明するヘッド分離型カメラの全体的な信号処理系を示している。すなわち、このヘッド分離型カメラは、カメラヘッド11とそれを制御するCCU12とをカメラケーブル13で接続する構成となされている。
このうち、カメラヘッド11は、撮像レンズ14を備えている。そして、この撮像レンズ14を介して入射された被写体の光学像が、例えばCMOSセンサ等でなる固体撮像素子15の受光面に結像される。この固体撮像素子15は、駆動制御部16の制御に基づいて、その受光面に結像された光学像を、それに対応した映像信号に変換して信号処理部17に出力している。
この信号処理部17は、入力された映像信号に対して、例えばサンプルホールド処理や映像同期信号生成処理等の所定の信号処理を施した後、その映像信号及び映像同期信号を出力端子18に供給している。この出力端子18に供給された映像信号及び映像同期信号は、上記カメラケーブル13を構成する信号バスライン19を介して、上記CCU12の入力端子20に供給される。
このCCU12では、その入力端子20に供給された映像信号及び映像同期信号を映像信号処理部21に供給して、予め設定された所定の信号処理を施している。そして、この映像信号処理部21から出力された映像信号及び映像同期信号が、出力端子22を介して図示しないモニタ等に出力されることにより映像表示に供される。
また、上記CCU12は、MPU(micro processing unit)23を備えている。このMPU23は、入力端子24を介して外部から供給されたユーザによる操作情報を受け、それが反映されるように映像信号処理部21を制御するとともに、上記カメラヘッド11に対する制御信号を生成し制御端子25に供給している。
この制御端子25に供給された制御信号は、上記カメラケーブル13を構成する制御信号バスライン26を介して、上記カメラヘッド11の制御端子27に供給される。このカメラヘッド11では、その制御端子27に供給された制御信号を上記駆動制御部16に供給している。
この駆動制御部16は、入力された制御信号に基づいて固体撮像素子15に対する各種の処理動作を制御するための駆動制御信号を生成し、固体撮像素子15に供給している。また、この駆動制御部16は、固体撮像素子15に対する各種の設定情報等が格納されるメモリ部28を備えており、必要に応じてメモリ部28の情報も利用して固体撮像素子15の駆動制御を行なっている。
また、この駆動制御部16は、上記CCU12のMPU23と情報通信を行なう通信部29を備えている。そして、駆動制御部16は、この通信部29を介して、MPU23からの制御信号を受信するとともに、MPU23からの要求に基づいてカメラヘッド11内の各種の情報(例えばメモリ部28の記憶内容等)をMPU23に送信するように機能している。
ここで、この実施の形態においては、カメラヘッド11の高機能化及び高性能化のために、カメラヘッド11を構成する固体撮像素子15、駆動制御部16、信号処理部17、メモリ部28及び通信部29等の各種の被制御デバイスの数が増加しても、カメラケーブル13を構成する制御信号バスライン29のライン数を増加させることなく、カメラヘッド11を制御することができるようにしている。
図2は、3つのCMOSセンサ30a,30b,30cと3つのEEPROM(electrically erasable and programmable read only memory)30d,30e,30fとを被制御デバイスとして含むカメラヘッド11に対し、CCU12のMPU23がこれら6つの被制御デバイスを3線式シリアルバス制御方式で制御する場合の一例を示している。
各CMOSセンサ30a〜30cには、それぞれ、リセット信号RSTの入力端、チップセレクト信号CSの入力端、シリアルクロックSCLKの入力端、シリアルデータSIDの入力端が設けられている。また、各EEPROM30d〜30fには、それぞれ、チップセレクト信号CSの入力端、シリアルクロックSCLKの入力端、シリアル入力データSIDの入力端、シリアル出力データSODの出力端が設けられている。
さらに、カメラヘッド11には、チップセレクト信号CSの入力端30g、シリアルクロックSCLKの入力端30h、シリアル入力データSIDの入力端30i、シリアル出力データSODの出力端30jが設けられている。これらの各入力端30g〜30i及び出力端30jは、それぞれ、カメラケーブル13を構成する制御信号バスライン26を介してCCU12のMPU23に接続され、情報通信可能となっている。
このうち、チップセレクト信号CSの入力端30g、シリアルクロックSCLKの入力端30h、シリアル入力データSIDの入力端30iは、DAC(digital to analog converter)30kに接続されている。このDAC30kは、第1の出力端1〜第7の出力端7を備え、その第1の出力端1から各CMOSセンサ30a〜30cに共通に供給するリセット信号RSTが出力される。
また、このDAC30kは、その第2の出力端2からCMOSセンサ30aに与えるチップセレクト信号CSを出力し、その第3の出力端3からCMOSセンサ30bに与えるチップセレクト信号CSを出力し、その第4の出力端4からCMOSセンサ30cに与えるチップセレクト信号CSを出力している。
さらに、このDAC30kは、その第5の出力端5からEEPROM30dに与えるチップセレクト信号CSを出力し、その第6の出力端6からEEPROM30eに与えるチップセレクト信号CSを出力し、その第7の出力端7からEEPROM30fに与えるチップセレクト信号CSを出力している。
また、上記入力端30hに供給されたシリアルクロックSCLKは、入力端30gに供給されたチップセレクト信号CSに基づいて開閉制御されるゲート部30lを介して、各CMOSセンサ30a〜30c及び各EEPROM30d〜30fに共通に供給される。さらに、上記入力端30iに供給されたシリアル入力データSIDは、入力端30gに供給されたチップセレクト信号CSに基づいて開閉制御されるゲート部30mを介して、各CMOSセンサ30a〜30c及び各EEPROM30d〜30fに共通に供給される。
また、EEPROM30dからのシリアル出力データSODは、DAC30kの第5の出力端5から出力されるチップセレクト信号CSに基づいて開閉制御されるゲート部30nを介して出力端30jから導出される。
さらに、EEPROM30eからのシリアル出力データSODは、DAC30kの第6の出力端6から出力されるチップセレクト信号CSに基づいて開閉制御されるゲート部30oを介して出力端30jから導出される。
また、EEPROM30fからのシリアル出力データSODは、DAC30kの第7の出力端7から出力されるチップセレクト信号CSに基づいて開閉制御されるゲート部30pを介して出力端30jから導出される。
ここで、上記した各CMOSセンサ30a〜30c、各EEPROM30d〜30f及びDAC30kは、それぞれが被制御デバイスであり、図3に示すように、チップセレクト信号CSがアクティブ、つまり、H(high)レベルからL(low)レベルに反転することによって選択される。そして、この選択されている状態で、シリアルクロックSCLKに同期してシリアル入力データSIDの入力や、EEPROM30d〜30fについてはシリアル出力データSODの出力が行なわれる。
図2に示した構成のカメラヘッド11において、以下、図4に示すタイミング図を参照して、MPU23がCMOSセンサ30cにシリアル入力データSIDを入力させる動作を説明する。図4において、符号(a)はDAC30kに入力されるチップセレクト信号CS、シリアルクロックSCLK、シリアル入力データSIDを示し、符号(b)はCMOSセンサ30cに入力されるチップセレクト信号CS、シリアルクロックSCLK、シリアル入力データSIDを示している。
まず、MPU23は、図4(a)に示すように、時刻T1でDAC30kに入力されるチップセレクト信号CSをアクティブ(Lレベル)にする。すると、DAC30kが選択され、DAC30kは、MPU23から供給されるシリアルクロックSCLKに同期して、シリアル入力データSIDを入力する。DAC30kへのシリアル入力データSIDの入力後、MPU23は、DAC30kに入力されるチップセレクト信号CSを非アクティブ(Hレベル)にする。
この場合、DAC30kに入力されたシリアル入力データSIDには、CMOSセンサ30cに与えるチップセレクト信号CSのみをアクティブ(Lレベル)にするようにDAC30kを制御する指令が記述されている。このため、DAC30kは、図4(b)に示すように、時刻T2で、その第4の出力端4からLレベルの信号を出力する。つまり、CMOSセンサ30cに与えるチップセレクト信号CSのみがアクティブ(Lレベル)となり、CMOSセンサ30cが選択される。
このとき、MPU23は、図4(a)に示すように、チップセレクト信号CSを非アクティブ(Hレベル)にしているため、各ゲート部30j,30mが共に開状態となっている。このように、CMOSセンサ30cが選択され、各ゲート部30j,30mが共に開かれた状態で、MPU23は、シリアルクロックSCLKとシリアル入力データSIDとを出力する。
これにより、図4(b)に示すように、選択されたCMOSセンサ30cに、MPU23から出力されたシリアルクロックSCLKとシリアル入力データSIDとが入力され、CMOSセンサ30cに対してシリアルクロックSCLKに同期したシリアル入力データSIDの入力が行なわれる。
このようにして、CMOSセンサ30cに対するシリアル入力データSIDの入力が完了すると、MPU23は、図4(a)に示すように、時刻T3でDAC30kに入力されるチップセレクト信号CSを再びアクティブ(Lレベル)にする。すると、DAC30kが選択され、DAC30kは、MPU23から供給されるシリアルクロックSCLKに同期して、シリアル入力データSIDを入力する。
この場合、DAC30kに入力されたシリアル入力データSIDには、CMOSセンサ30cに与えるチップセレクト信号CSを非アクティブ(Hレベル)にするようにDAC30kを制御する指令が記述されている。このため、DAC30kは、図4(b)に示すように、時刻T4で、その第4の出力端4からHレベルの信号を出力する。つまり、CMOSセンサ30cに与えるチップセレクト信号CSが非アクティブ(Hレベル)となり、CMOSセンサ30cの選択が解除される。
なお、他のCMOSセンサ30a,39b及び各EEPROM30d〜30fに対するシリアル入力データSIDの入力やシリアル出力データSODの出力についても、上記と同様に、MPU23がDAC30kを制御して被制御デバイスを選択させることにより、容易に実現することができる。
ただし、各EEPROM30d〜30fからのシリアル出力データSODを開閉するゲート部30n〜30pについては、それぞれ、DAC30kの第5〜第7の出力端5〜7から出力されるチップセレクト信号CSがアクティブ(Lレベル)のとき開状態となるものとする。
図2に示した構成のカメラヘッド11によれば、MPU23がチップセレクト信号CSによりDAC30kを選択し、シリアル入力データSIDによっていずれのCMOSセンサ30a〜30c及びEEPROM30d〜30fを選択させるかを指定するようにしている。このため、被制御デバイスの数が増加しても、チップセレクト信号CSを送信する制御信号ライン数を増加させることがなくなり、カメラヘッド11の小型化を効果的に促進させることが可能となる。
また、DAC30kは、被制御デバイスである各CMOSセンサ30a〜30c及び各EEPROM30d〜30fの入出力レベルがそれぞれ異なっていても対応することが可能である。例えば、各CMOSセンサ30a〜30cのHレベルが2.5VでLレベルが0Vであり、各EEPROM30d〜30fのHレベルが3.3VでLレベルが0Vであるとすると、各CMOSセンサ30a〜30cに対しては2.5VのHレベルを供給することができ、各EEPROM30d〜30fに対しては3.3VのHレベルを供給することができる。この場合、DAC30k自体のHレベルが3.3Vであれば好適である。
なお、複数の被制御デバイスのHレベルがそれぞれ異なっている場合には、それぞれの被制御デバイスのHレベルに対応させて、入力されるシリアルクロックSCLKやシリアル入力データSIDのレベルを変換するためのバッファを設けることが必要となる。
図5は、図2に示したカメラヘッド11の変形例を示している。図5において、図2と同一部分には同一符号を付して説明すると、DAC30kに第8の出力端8を設け、この第8の出力端8から予め設定された直流レベル、例えばHレベル(3.3V)を出力端30qからCCU12に出力させる。
CCU12には、図6に示すように、MPU23からカメラヘッド11に対してチップセレクト信号CS、シリアルクロックSCLK及びシリアル入力データSIDを出力するための各出力端31a,31b,31cと、カメラヘッド11から出力されるシリアル出力データSODをMPU23に入力するための入力端31dと、カメラヘッド11から出力される直流レベルHを入力するための入力端31eとを備えている。
このうち、入力端31eに入力された直流レベルHは、ADC(analog to digital converter)31fに供給され、その直流レベルHに対応したデジタルデータに変換されてMPU23に供給される。そして、MPU23では、入力されたデジタルデータに基づいて、DAC30kから出力された直流レベルHが、入力端31eに入力された時点でどれだけ低下したかを判断することにより、カメラケーブル13のケーブル長を測定することができる。この場合、当然のことながら、直流レベルHの低下しているほど、ケーブル長が長いことになる。
すなわち、ヘッド分離型カメラの場合、カメラヘッド11とCCU12との間で伝送されるデータの遅延量を管理するために、カメラケーブル13の長さを検出することが必要になっている。カメラヘッド11側のDAC30kから出力された直流レベルHをCCU12で検出することにより、カメラケーブル13の長さを容易に測定することが可能となる。
図7は、3つの被制御デバイス32a,32b,32cを含むカメラヘッド11に対して、CCU12のMPU23がこれら3つの被制御デバイス32a〜32cを3線式シリアルバス制御方式で制御する場合の他の例を示している。
各被制御デバイス32a〜32cには、それぞれ、チップセレクト信号CSの入力端、シリアルクロックSCLKの入力端、シリアル入力データSIDの入力端、シリアル出力データSODの出力端が設けられている。
また、カメラヘッド11には、チップセレクト信号CSの入力端32d、シリアルクロックSCLKの入力端32e、シリアル入力データSIDの入力端32f、シリアル出力データSODの出力端32gが設けられている。これらの各入力端32d〜32f及び出力端32gは、それぞれ、カメラケーブル13を構成する制御信号バスライン26を介してCCU12のMPU23に接続され、情報通信可能となっている。
そして、これらの各入力端32d〜32f及び出力端32gは、切替器33を介して各被制御デバイス32a〜32cと接続されている。すなわち、各入力端32d〜32fに供給されたチップセレクト信号CS、シリアルクロックSCLK及びシリアル入力データSIDは、切替器33を構成するデコーダ33aに供給されている。
また、各入力端32d〜32fに供給されたチップセレクト信号CS、シリアルクロックSCLK及びシリアル入力データSIDは、それぞれ、デコーダ33aの出力に基づいて開閉制御されるゲート部33b,33c,33dを介して、被制御デバイス32aに供給可能になっている。
さらに、各入力端32d〜32fに供給されたチップセレクト信号CS、シリアルクロックSCLK及びシリアル入力データSIDは、それぞれ、デコーダ33aの出力に基づいて開閉制御されるゲート部33e,33f,33gを介して、被制御デバイス32bに供給可能になっている。
また、各入力端32d〜32fに供給されたチップセレクト信号CS、シリアルクロックSCLK及びシリアル入力データSIDは、それぞれ、デコーダ33aの出力に基づいて開閉制御されるゲート部33h,33i,33jを介して、被制御デバイス32cに供給可能になっている。
さらに、被制御デバイス32aからのシリアル出力データSODは、上記ゲート部33bから出力されるチップセレクト信号CSに基づいて開閉制御されるゲート部33kを介して出力端32gから導出される。
また、被制御デバイス32bからのシリアル出力データSODは、上記ゲート部33eから出力されるチップセレクト信号CSに基づいて開閉制御されるゲート部33lを介して出力端32gから導出される。
さらに、被制御デバイス32cからのシリアル出力データSODは、上記ゲート部33hから出力されるチップセレクト信号CSに基づいて開閉制御されるゲート部33mを介して出力端32gから導出される。
ここで、上記した各被制御デバイス32a〜32cは、図3に示したように、チップセレクト信号CSがアクティブ、つまり、HレベルからLレベルに反転することによって選択される。そして、この選択されている状態で、シリアルクロックSCLKに同期してシリアル入力データSIDの入力やシリアル出力データSODの出力が行なわれる。
図7に示した構成のカメラヘッド11において、以下、図8に示すタイミング図を参照して、MPU23が被制御デバイス32bに対してシリアル入力データSIDを入力させる動作の一例を説明する。
まず、MPU23は、チップセレクト信号CSを非アクティブ(Hレベル)の状態にしたまま、時刻T1で、シリアル入力データSIDを変化させる。この場合、シリアル入力データSIDとしては、シリアルクロックSCLKの1.5周期分に対応するLレベル期間を先頭に配置し、以後、シリアルクロックSCLKの0.5周期分に対応するLレベル期間を論理値「0」とし、シリアルクロックSCLKの1周期分に対応するLレベル期間を論理値「1」とするデータが連続するパルス幅変調データとなっている。
図8では、シリアル入力データSIDがシリアルクロックSCLKの1.5周期分に対応するLレベル期間の後、論理値「0010」を示しており、この論理値「0010」が被制御デバイス32bを指定している。
一方、上記カメラヘッド11の切替部33を構成するデコーダ33aは、チップセレクト信号CSが非アクティブ(Hレベル)の状態でシリアル入力データSIDが変化されたとき、そのシリアル入力データSIDを、被制御デバイス32a〜32cを指定するためのコマンドと認識する。
この場合、シリアル入力データSIDは、論理値「0010」、つまり、被制御デバイス32bを指定するコマンドとなっている。このとき、デコーダ33aは、各入力端32d〜32fに供給されるチップセレクト信号CS、シリアルクロックSCLK、シリアル入力データSIDが、それぞれ被制御デバイス32bに供給されるように、各ゲート部33e〜33gを開状態に制御する。
このように、被制御デバイス32bに対応するゲート部33e〜33gを開状態に制御した後、MPU23は、時刻T2で、チップセレクト信号CSをアクティブ(Lレベル)にするとともに、シリアルクロックSCLKとそれに同期したシリアル入力データSIDとを出力する。これにより、被制御デバイス32bが選択され、被制御デバイス32bに対して、シリアルクロックSCLKに同期したシリアル入力データSIDの入力が行なわれる。
また、被制御デバイス32bからのシリアル出力データSODは、上記ゲート部33eから出力されるチップセレクト信号CSがアクティブ(Lレベル)のときに開状態に制御されるゲート部33lを介して出力端32gから導出される。
なお、他の被制御デバイス32a,32cに対するシリアル入力データSIDの入力やシリアル出力データSODの出力についても、上記と同様に、MPU23が切替器33を制御することにより、容易に実現することができる。
図7に示した構成のカメラヘッド11によれば、MPU23が、チップセレクト信号CSが非アクティブ(Lレベル)のときに、シリアル入力データSIDにより被制御デバイス32a〜32cを指定するためのコマンドを出力している。そして、デコーダ33aでは、チップセレクト信号CSが非アクティブ(Lレベル)のときに供給されたシリアル入力データSIDをコマンドと認識し、そのコマンドで指定された被制御デバイス32a〜32cに対してのみ、チップセレクト信号CS、シリアルクロックSCLK、シリアル入力データSIDの入力及びシリアル出力データSODの出力が行なえるように各ゲート部33b〜33mの開閉を制御している。このため、被制御デバイスの数が増加しても、チップセレクト信号CSを送信する制御信号ライン数を増加させることがなくなり、カメラヘッド11の小型化を効果的に促進させることが可能となる。
また、各被制御デバイス32a〜32cのHレベルがそれぞれ異なっている場合でも、各ゲート部33b〜33mに、それぞれの被制御デバイス32a〜32cのHレベルに対応させて、入出力データのレベルを変換するためのバッファ機能を設けることが可能となり構成上有利である。
図9は、図7に示した構成のカメラヘッド11において、MPU23が被制御デバイス32bを指定する他の例を示している。すなわち、MPU23は、チップセレクト信号CSを非アクティブ(Hレベル)の状態にしたまま、時刻T1で、シリアル入力データSIDを変化させる。
この場合、シリアル入力データSIDとしては、シリアルクロックSCLKの1周期分に対応するスタートビットS1を先頭に配置し、以後、シリアルクロックSCLKの1周期分に対応するLレベル期間を論理値「0」とし、シリアルクロックSCLKの1周期分に対応するHレベル期間を論理値「1」とするデータが連続し、最後にシリアルクロックSCLKの1周期分に対応するストップビットS2を配置するデータ構成となっている。図9では、スタートビットSとストップビットSとの間に論理値「0010」を示すデータが介挿されており、被制御デバイス32bが指定されている。
一方、上記デコーダ33aは、チップセレクト信号CSが非アクティブ(Hレベル)の状態で供給されたシリアル入力データSIDに基づいて、被制御デバイス32bが指定されたことを認識し、各入力端32d〜32fに供給されるチップセレクト信号CS、シリアルクロックSCLK、シリアル入力データSIDが、それぞれ被制御デバイス32bに供給されるように、各ゲート部33e〜33gを開状態に制御する。
このように、被制御デバイス32bに対応するゲート部33e〜33gを開状態に制御した後、MPU23は、時刻T2で、チップセレクト信号CSをアクティブ(Lレベル)にするとともに、シリアルクロックSCLKとそれに同期したシリアル入力データSIDとを出力する。これにより、被制御デバイス32bが選択され、シリアルクロックSCLKに同期してシリアル入力データSIDの入力が行なわれる。
また、被制御デバイス32bからのシリアル出力データSODは、上記ゲート部33eから出力されるチップセレクト信号CSがアクティブ(Lレベル)のときに開状態に制御されるゲート部33lを介して出力端32gから導出される。
なお、他の被制御デバイス32a,32cに対するシリアル入力データSIDの入力やシリアル出力データSODの出力についても、上記と同様に、MPU23が切替器33を制御することにより、容易に実現することができる。
図10は、図7に示した構成のカメラヘッド11において、MPU23が被制御デバイス32bを指定するさらに他の例を示している。すなわち、MPU23は、チップセレクト信号CSを非アクティブ(Hレベル)の状態にしたまま、時刻T1で、シリアルクロックSCLKを出力するとともに、このシリアルクロックSCLKに同期させてシリアル入力データSIDを変化させる。
この場合、シリアル入力データSIDとしては、シリアルクロックSCLKの1周期分に対応するLレベル期間を論理値「0」とし、シリアルクロックSCLKの1周期分に対応するHレベル期間を論理値「1」とするデータを連続させたデータ構成となっている。図10では、シリアル入力データSIDが論理値「0010」を示し、被制御デバイス32bが指定されている。
一方、上記デコーダ33aは、チップセレクト信号CSが非アクティブ(Hレベル)の状態で、シリアルクロックSCLKとともに供給されたシリアル入力データSIDに基づいて、被制御デバイス32bが指定されたことを認識し、各入力端32d〜32fに供給されるチップセレクト信号CS、シリアルクロックSCLK、シリアル入力データSIDが、それぞれ被制御デバイス32bに供給されるように、各ゲート部33e〜33gを開状態に制御する。
このように、被制御デバイス32bに対応するゲート部33e〜33gを開状態に制御した後、MPU23は、時刻T2で、チップセレクト信号CSをアクティブ(Lレベル)にするとともに、シリアルクロックSCLKとそれに同期したシリアル入力データSIDとを出力する。これにより、被制御デバイス32bが選択され、シリアルクロックSCLKに同期してシリアル入力データSIDの入力が行なわれる。
また、被制御デバイス32bからのシリアル出力データSODは、上記ゲート部33eから出力されるチップセレクト信号CSがアクティブ(Lレベル)のときに開状態に制御されるゲート部33lを介して出力端32gから導出される。
なお、他の被制御デバイス32a,32cに対するシリアル入力データSIDの入力やシリアル出力データSODの出力についても、上記と同様に、MPU23が切替器33を制御することにより、容易に実現することができる。
図11は、3つのCMOSセンサ34a,34b,34cを被制御デバイスとして含むカメラヘッド11に対し、CCU12のMPU23がこれら3つの被制御デバイスを2線式シリアルバス制御方式で制御する場合の一例を示している。
各CMOSセンサ34a〜34cには、それぞれ、リセット信号RSTの入力端、チップセレクト信号CSの入力端、シリアルクロックSCLKの入力端、シリアルデータSIDの入力端が設けられている。
このうち、各CMOSセンサ34a〜34cのチップセレクト信号CSの入力端は、それぞれ別個の信号ライン34d,34e,34fを介してマイクロコンピュータ34gに接続されている。
また、各CMOSセンサ34a〜34cのリセット信号RTSの入力端、シリアルクロックSCLKの入力端、シリアルデータSIDの入力端は、それぞれ共通の信号ライン34h,34i,34jを介してマイクロコンピュータ34gに接続されている。
このマイクロコンピュータ34gは、パラレルバス34kを介してROM34lに接続されている。そして、このROM34lは、マイクロコンピュータ34gの制御に基づいて、データの書き込みや読み出しが行なわれる。
また、カメラヘッド11には、CCU12のMPU23から出力されるデータを受信してマイクロコンピュータ34gに供給する入力端34mと、マイクロコンピュータ34gからMPU23に送信するデータを出力する出力端34nとが設けられている。この入力端34m及び出力端34nは、それぞれ、カメラケーブル13を構成する制御信号バスライン26を介してCCU12のMPU23に接続され、情報通信可能となっている。
ここで、上記ROM34lには、図12に示すように、MPU23からマイクロコンピュータ34gに出力される各種のコマンド1,2,……,nに対応したデータ列が格納されている。例えば、コマンド1に対応するデータ列は、複数のデータ1A,1B,……と終端コードとで構成され、コマンド2に対応するデータ列は、複数のデータ2A,2B,……と終端コードとで構成され、コマンドnに対応するデータ列は、複数のデータnA,nB,……と終端コードとで構成されている。
このうち、データ1Aは、図13に示すように、被制御デバイスを指定するためのデバイスID(identification)と主データとから構成されている。また、他のデータ1B,……、2A,2B,……、nA,nB,……についても同様に構成されている。なお、デバイスIDとしては、例えば4ビットで構成されており、「0000」がCMOSセンサ34aを指定し、「0001」がCMOSセンサ34bを指定し、「0010」がCMOSセンサ34cを指定している。
図11に示した構成のカメラヘッド11において、以下、図14に示すフローチャートを参照して、MPU23がいずれかのCMOSセンサ34a〜34cを指定してシリアル入力データSIDを入力させる動作の一例を説明する。
この動作は、カメラヘッド11に電源電力が投入されることにより開始(ステップS1)される。すると、マイクロコンピュータ34gは、ステップS2で、予め設定された所定の初期化処理を行なった後、ステップS3で、入力端34mにMPU23からコマンドが受信されたか否かを判別する。
そして、コマンドが受信されたと判断された場合(YES)、マイクロコンピュータ34gは、ステップS4で、受信したコマンドを解析し、ステップS5で、そのコマンドに対応したデータ列に含まれるいずれか1つのデータをROM34lから読み出した後、ステップS6で、終端コードであるか否かを判別する。
ここで、終端コードでないと判断された場合(NO)、マイクロコンピュータ34gは、ステップS7で、読み出したデータのデバイスIDを識別する。そして、デバイスIDがCMOSセンサ34aを指定していた場合、マイクロコンピュータ34gは、ステップS8で、CMOSセンサ34aに供給するチップセレクト信号CSをアクティブ(Lレベル)にし、読み出したデータの主データをシリアル入力データSIDとして出力する。これにより、指定されたCMOSセンサ34aへの主データの入力が行なわれることになる。その後、マイクロコンピュータ34gは、ステップS5の処理に戻されて、次のデータの読み出しが行なわれる。
また、上記ステップS7でデバイスIDがCMOSセンサ34bを指定していた場合、マイクロコンピュータ34gは、ステップS9で、CMOSセンサ34bに供給するチップセレクト信号CSをアクティブ(Lレベル)にし、読み出したデータの主データをシリアル入力データSIDとして出力する。これにより、指定されたCMOSセンサ34bへの主データの入力が行なわれることになる。その後、マイクロコンピュータ34gは、ステップS5の処理に戻されて、次のデータの読み出しが行なわれる。
さらに、上記ステップS7でデバイスIDがCMOSセンサ34cを指定していた場合、マイクロコンピュータ34gは、ステップS10で、CMOSセンサ34cに供給するチップセレクト信号CSをアクティブ(Lレベル)にし、読み出したデータの主データをシリアル入力データSIDとして出力する。これにより、指定されたCMOSセンサ34cへの主データの入力が行なわれることになる。その後、マイクロコンピュータ34gは、ステップS5の処理に戻されて、次のデータの読み出しが行なわれる。
また、上記ステップS6で終端コードであると判断された場合(YES)、マイクロコンピュータ34gは、ステップS11で、MPU23に対する返信データを生成し、ステップS12で、その返信データを、出力端34nを介してMPU23に送信して、ステップS3の処理に戻される。
MPU23では、返信データを受信することにより、カメラヘッド11のマイクロコンピュータ34gの処理が完了して、次のコマンドを受信可能な状態になったことを検出することができる。なお、この返信データも、図13に示したように、MPU23を指定するデバイスIDと主データとから構成されている。
図11に示した構成のカメラヘッド11によれば、MPU23が出力する各種のコマンドを受信するマイクロコンピュータ34gと、各種のコマンドに対応したデータ列を格納したROM34lとをカメラヘッド11に備える。そして、マイクロコンピュータ34gでは、MPU23からのコマンドに対応したデータ列をROM34lから読み出し、そのデータ列で指定されたCMOSセンサ34a〜34cに対してシリアル入力データSIDの入力を行なえるように制御している。このため、被制御デバイスの数が増加しても、チップセレクト信号CSを送信する制御信号ライン数を増加させることがなくなり、カメラヘッド11の小型化を効果的に促進させることが可能となる。
また、コマンドに対応するデータ列は、それぞれが被制御デバイスであるCMOSセンサ34a〜34cを指定するデバイスIDと、そのデバイスIDで指定した被制御デバイスに与える主データとを有する複数のデータを備えている。このため、MPU23から1つのコマンドを出力するだけで、複数の被制御デバイスに対してそれぞれ主データの入力を指示することができて便利である。
例えば、コマンド1が各CMOSセンサ34a〜34cのゲインを設定するためのコマンドである場合、各CMOSセンサ34a〜34cそれぞれについて、外部設定されたゲインに対して実際に得られるゲインの差分をデータ1A,1B,1Cとして格納する。すなわち、CMOSセンサ34aについて外部設定されたゲインと実際に得られるゲインとの差がない場合には、データ1Aに0が格納される。
また、CMOSセンサ34bについて外部設定されたゲインよりも実際に得られるゲインが+0.1dB高ければ、データ1Bに−0.1が格納される。さらに、CMOSセンサ34cについて外部設定されたゲインよりも実際に得られるゲインが−0.1dB低ければ、データ1Cに+0.1が格納される。
このようにすれば、各CMOSセンサ34a〜34cのゲインを6dBに設定することを要求するコマンド1がMPU23から出力された場合、そのコマンド1を受信したマイクロコンピュータ34gは、データ1Aに格納された値「0」に基づいてCMOSセンサ34aのゲインを6dBに設定する。
また、マイクロコンピュータ34gは、データ1Bに格納された値「−0.1」に基づいてCMOSセンサ34bのゲインを5.9dBに設定する。さらに、マイクロコンピュータ34gは、データ1Cに格納された値「+0.1」に基づいてCMOSセンサ34cのゲインを6.1dBに設定する。
すなわち、各CMOSセンサ34a〜34cのゲインを6dBに設定することを要求するコマンド1だけで、各CMOSセンサ34a〜34cのゲインを実質的に6dBに揃える処理が実行されることになる。つまり、複数の被制御デバイスに対して一斉に設定を変更するような要求に対して、被制御デバイスの数だけCCU12からカメラヘッド11にコマンドの送信を行なう必要がなくなり、非常に効果的である。
図15は、図11に示した構成のカメラヘッド11の変形例を示している。図15において、図11と同一部分に同一符号を付して説明すると、マイクロコンピュータ34gからMPU23に送信するデータを出力する出力端34nが削除されている。すなわち、マイクロコンピュータ34gからMPU23にデータを返信しないシステム、つまり、MPU23からマイクロコンピュータ34gに対して一方向の情報通信を行なうシステムであれば、図15に示す構成とすることができる。
図16は、図11に示した構成のカメラヘッド11の他の変形例を示している。すなわち、カメラヘッド11とCCU12とを接続する制御信号バスライン26を、双方向情報通信を行なう1本の制御信号ライン26aとしている。CCU12は、制御信号ライン26aが接続される入出力端35aを備えている。
そして、この入出力端35aを介して入力されたデータは、バッファ35bを介してMPU23に供給される。また、MPU23からカメラヘッド11のマイクロコンピュータ34gに出力されるデータは、被制御電極が入出力端35aに接続されたスイッチング素子35cの制御電極に供給される。さらに、入出力端35aは、抵抗35dを介して直流電圧+Bの印加された電源端子35eに接続されている。これにより、MPU23からカメラヘッド11のマイクロコンピュータ34gに出力されるデータは、反転した状態で制御信号ライン26aによって伝送される。
また、カメラヘッド11は、制御信号ライン26aが接続される入出力端35fを備えている。この入出力端35fを介して入力されたデータは、バッファ35gを介してマイクロコンピュータ34gに供給される。また、マイクロコンピュータ34gからCCU12のMPU23に出力されるデータは、被制御電極が入出力端35fに接続されたスイッチング素子35hの制御電極に供給される。これにより、マイクロコンピュータ34gからCCU12のMPU23に出力されるデータは、反転した状態で制御信号ライン26aによって伝送される。
図17(a)は、MPU23からスイッチング素子35cの制御電極に供給されるデータを示している。MPU23から出力されるデータは、先頭にスタートコードを有し、それに主データが続く構成となっている。図17(b)は、マイクロコンピュータ34gからスイッチング素子35hの制御電極に供給されるデータを示している。このデータも先頭にスタートコードを有し、それに主データが続く構成となっている。図17(c)は、制御信号ライン26aを伝送されるデータを示している。
図17(c)に示すように、MPU23とマイクロコンピュータ34gとの間で交互にデータ通信が行なわれている状態では、MPU23から出力されるデータが制御信号ライン26a上を反転した状態で伝送されている。また、マイクロコンピュータ34gから出力されるデータも、制御信号ライン26a上を反転した状態で伝送されている。
図16に示した構成のカメラヘッド11によれば、1本の制御信号ライン26aによって、MPU23とマイクロコンピュータ34gとの間でデータ通信を行なうことが可能となる。このため、被制御デバイスの数が増加しても、チップセレクト信号CSを送信する制御信号ライン数を増加させることがなくなり、カメラヘッド11の小型化を効果的に促進させることが可能となる。
ところで、図18(a)に示すようにMPU23から出力されたデータと、図18(b)に示すようにマイクロコンピュータ34gから出力されたデータとが、制御信号ライン26a上で競合すると、制御信号ライン26a上のデータは、図18(c)に示すように両データの論理和を反転させたものとなる。
このため、MPU23は、自己がスイッチング素子35cに出力したデータを、バッファ35bを介して受信し、出力データと受信データとが正確な反転関係でなくなった場合に、マイクロコンピュータ34gの出力データとの競合が発生したことを検出することができる。
また、マイクロコンピュータ34gも、自己がスイッチング素子35hに出力したデータを、バッファ35gを介して受信し、出力データと受信データとが正確な反転関係でなくなった場合に、MPU23の出力データとの競合が発生したことを検出することができる。
図19は、先に図2に示したカメラヘッド11の変形例を示している。すなわち、図19において、図2と同一部分に同一符号を付して説明すると、DAC30kに代えてI/O(input/output)エキスパンダ36を使用している。
すなわち、チップセレクト信号CSの入力端30g、シリアルクロックSCLKの入力端30h、シリアル入力データSIDの入力端30iは、I/Oエキスパンダ36に接続されている。このI/Oエキスパンダ36は、第1の出力端1〜第7の出力端7を備え、その第1の出力端1から各CMOSセンサ30a〜30cに共通に供給するリセット信号RSTが出力される。
また、このI/Oエキスパンダ36は、その第2の出力端2からCMOSセンサ30aに与えるチップセレクト信号CSを出力し、その第3の出力端3からCMOSセンサ30bに与えるチップセレクト信号CSを出力し、その第4の出力端4からCMOSセンサ30cに与えるチップセレクト信号CSを出力している。
さらに、このI/Oエキスパンダ36は、その第5の出力端5からEEPROM30dとゲート部30nに与えるチップセレクト信号CSを出力し、その第6の出力端6からEEPROM30eとゲート部30oに与えるチップセレクト信号CSを出力し、その第7の出力端7からEEPROM30fとゲート部30pに与えるチップセレクト信号CSを出力している。
このI/Oエキスパンダ36も、先に述べたDAC30kと同様に、MPU23がチップセレクト信号CSをアクティブ(Lレベル)にすることより選択される。その後、I/Oエキスパンダ36は、MPU23から供給されるシリアル入力データSIDによって指定された出力端をアクティブ(Lレベル)にすることにより、被制御デバイスを選択している。
その後、選択した被制御デバイスにシリアルクロックSCLKやシリアル入力データSIDを供給する動作、選択した被制御デバイスからシリアル出力データSODを出力させる動作、シリアルデータの入出力が終了したとき、MPU23が再びI/Oエキスパンダ36を選択して、被制御デバイスに対する選択を解除させる動作等は、DAC30kで説明した通りである。
なお、I/Oエキスパンダ36は、1種類のHレベルのみを出力し、DAC30kのように複数種類のHレベルを出力することは不可能である。このため、例えば、I/Oエキスパンダ36のHレベルが2.5VでLレベルが0Vであり、各CMOSセンサ30a〜30cのHレベルが2.5VでLレベルが0Vであり、各EEPROM30d〜30fのHレベルが3.3VでLレベルが0Vであるとすると、I/Oエキスパンダ36は、各CMOSセンサ30a〜30cに対してはそのまま2.5VのHレベルを供給することができるが、各EEPROM30d〜30fに対してはレベルを変換するためのバッファを介して3.3VのHレベルを供給する必要が生じる。
なお、複数の被制御デバイスのHレベルがそれぞれ異なっている場合には、それぞれの被制御デバイスのHレベルに対応させて、入力されるシリアルクロックSCLKやシリアル入力データSIDのレベルを変換するためのバッファを設けることが必要となる。
次に、図1に示したヘッド分離型カメラにおいて、CCU12がカメラヘッド11の接続を検出する処理動作について、図20に示すフローチャートを参照して説明する。この動作は、CCU12に電源電力が投入されることにより開始(ステップS13)される。すると、MPU23は、ステップS14で、制御信号バスライン26を介してカメラヘッド11の駆動制御部16にアクセスし、その初期状態が正常であるか否かを判別する。
そして、駆動制御部16の初期状態が正常であると判断された場合(YES)、MPU23は、ステップS15で、固体撮像素子15に対する各種の設定が正常に行なえたか否かを判別する。設定が正常に行なえたと判断された場合(YES)、MPU23は、ステップS16で、カメラヘッド11から信号バスライン19を介して映像同期信号が検出されたか否かを判別する。
映像同期信号が検出されたと判断された場合(YES)、MPU23は、ステップS17で、カメラヘッド11が正常に接続されていると判断して、ステップS16の処理に戻される。
また、上記ステップS14で駆動制御部16の初期状態が正常でないと判断された場合(NO)、上記ステップS15で固体撮像素子15に対する各種の設定が正常に行なえなかったと判断された場合(NO)、または、上記ステップS16で映像同期信号が検出されないと判断された場合(YES)、MPU23は、ステップS17で、カメラヘッド11が正常に接続されていないと判断して、ステップS14の処理に戻される。
上記したカメラヘッド11の接続検出手法によれば、従来のように、カメラヘッド11から映像同期信号が得られたか否かだけを検出する手法に比べて、格段に正確な検出を行なうことが可能となる。
なお、この発明は上記した実施の形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を種々変形して具体化することができる。また、上記した実施の形態に開示されている複数の構成要素を適宜に組み合わせることにより、種々の発明を形成することができる。例えば、実施の形態に示される全構成要素から幾つかの構成要素を削除しても良いものである。さらに、異なる実施の形態に係る構成要素を適宜組み合わせても良いものである。