まずは起動直後のレジスタ値を読んでみた。
0x00, 0x01, 0x2B, 0x2D, 0x32, 0x33, 0x34, 0x36, 0x37の値がデータシートと異なっているが、これらがどういうレジスタなのかは現時点では不明。
次にいよいよ撮像確認だが、このカメラのフレームレートは30fpsであるため例えディスプレイ出力をVGAモードにしたとしてもカメラのデータをスルーして出力することは出来ない。フレームバッファを介する必要がある。現状まだSDRAMコントローラの実装はしていないため、FPGAの内部RAMをフレームバッファとして使うことにした。容量の制約から128x110分とし、カメラの撮像データを切り出して格納・表示するようにした。
←撮影対象
撮像データのフォーマットはRGB565、CODEはNormalにしている。
撮影対象の写真と比べると色が薄いというか白っぽい。
レジスタで調整できるのかなぁ?
それっぽい名前のレジスタの設定を色々変えてみようか。
YUV422も試してみよう。
現状のレジスタ設定はデータフォーマットや出力コード設定等のみで、
画質に関わるようなレジスタは触っていない。
現在の設定
main()
{
fpga_open();
reg_wrt(0x02,0x40,0);//FPS:30fps, ACF:60Hz, DCLKP:NORMAL, ACFDET:AUTO
reg_wrt(0x03,0x02,0);//DOUTSW:ON, DATA:OUT, PICSIZ:VGA,
PICFMT:RGB565, CM:COLOR
reg_wrt(0x1e,0x68,0);//D_MASK:01, CODESW:OUT, CODESEL:NORMAL,
// HSYNCSEL:NORMAL, TESPIC:Not out, PICSEL:Colorbar
fpga_close();
}
0 件のコメント:
コメントを投稿