SSブログ

ArduinoでCMOSカメラと通信してみる [Arduino]

前回,ArduinoとCMOSカメラを接続しようと思ったのだが,電圧があわなくて接続できず動作させるとことができなかった.

というわけで,レベル変換ICだが,今回は,秋月電子通商の「I2Cバス用双方向電圧レベル変換モジュール(PCA9306)」を購入してみた.

で,こいつの電源だが,Aruduino側は5VなのでArduino側からもらってくればいいんだけど,OV7670側のI2C(厳密にはSCCB)は2.8Vだ.2.8VなんてArduino側にはない.

どうしようか迷ったが,CMOSカメラモジュール内で2.8Vを作ってるので,そこから引き出すことにした.回路図と,CMOSカメラモジュールを見比べながら,2.8Vが引き出せそうなところを探した.
で,下の写真はレンズを外したCMOSカメラモジュールで,赤矢印のところから2.8Vが引き出せる.ここに線材を半田づけして引き出した.

2.8V.jpg

ここまでくれば,あとはCMOSカメラとArduinoを接続するだけだ.とりあえず通信できるかどうか確認するために,I2C(SCCB)に必要なところだけつないでみる.

回路図をfritzingで書いてみた.使いこなせてない&回路図書くことなんて滅多にないので,図が微妙かもしれないが.
Untitled.jpg

で,つないでみた.
接続.jpg


あとは,実際に通信してみるのだが,スケッチは,トランジスタ技術SPECIALの「カメラ・モジュールの動かし方と応用製作」にのってるのを使わせてもらった.詳細は本を参照してくださいな.

で,とりあえず,OV7670のレジスタマップを見ながらアドレス0AのProduct IDを読み出してみたら,ちゃんと76が返ってきた.ほかにもレジスタを読み出してみたが,どうやら通信はうまくできているようだ.

よし,次は,画像の取得だ.
ちなみに,画像データはFIFOモジュールと通信することになるのだが,こっちはFIFOの電源電圧が3.3Vだ.ここでもまたレベル変換ICが必要になる.
これについてはまた次回.

nice!(2)  トラックバック(0) 
共通テーマ:日記・雑感

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。