exStickとOV7670

今更ながら,aitendoで購入できるOV7670をexStickに接続しましたー,という話のラストです.

2012年10月にカメラはじめますとブログに書いた後,結局2013年8月くらいにexStickへの接続に着手し,FPGAマガジン No.3(なんと2013年11月1日発行)に記事を書かせていただいた内容です.

…本当に今更で,ごめんなさい.

ちなみに,イーツリーズが現在抱えているexStickの残り在庫は数個で,それらを購入していただいた後は,追加製造の都合上,納品が数ヶ月後になってしまうようです.ご利用を計画されている方がいらっしゃいましたら,お早めにご連絡ください.

これは何?

これは,OV7670で撮像されたイメージをexStickでキャプチャしながらライン毎にPCにUDPパケットにして飛ばすシステムの実装です.100Mbpsのイーサネット帯域を贅沢に使って非圧縮でVGA画像をホストPCに送りつけています.

リソース一式

アップデート版があります→をご参照ください

HDLコードを手元で合成するためには,exStick用のe7UDP/IP IPコアが必要です.IPコアはexStickをご購入いただいた方向けのサポートサイトよりダウンロードしていただけます.

使い方

手順は次の通りです.

  1. exStickとカメラを用意する.接続については下記を参照
  2. bitファイルをFPGAに書き込む
  3. 画像を受信/表示するPC(以下ホストPC)のIPアドレスを10.0.0.3にする
  4. exStickとホストPCをイーサネットで接続し,ping 10.0.0.1とかして到達を確認する.
  5. ruby registers.rb と実行してカメラのレジスタを設定する
  6. javac OV7670Client.java && java OV7670Client でクライアントソフトを起動

準備

exStickとカメラを用意します.

Exif_JPEG_PICTURE

次の表のように接続しました.

exstic_ov7670_pin.png

PCLKとの接続が二つあるのは間違いではなくて,ページ先頭のようにexStick拡張基板を使う都合上,物理的にPCLKがJ2-8(XC6SLX16CSG225のD13)に接続されてしまうものですが,このピンがDedicated Inputでないため,ジャンパでH1に飛ばしているから,です.HDLコードでD13には’Z’を出力します.

概略を図示すると,こんな感じ.

exstick_ov7670_assign_figure

謝辞

OV7670から動画像を取得するまでには,多数の先達のWebサイトや雑誌記事を参考にさせていただきました.以下は,参考にさせていただいた主なソースです.ありがとうございます.

シェアする

  • このエントリーをはてなブックマークに追加

フォローする