OV7670摄像头实验,任意窗口输出,灰度输出(战舰开发板)

2019-07-21 02:59发布

1.实验描述:  通过config_ov7670_OutPut(u16 xsta,u16 ysta,u16 width,u16 height,u8 ouput_mode)可以设置摄像头显示图片的位置,窗口的大小,显示的模式(彩 {MOD}还是灰度)。
2.说明:   灰度输出:将摄像头设置输出为YUV格式(YUYV输出,意思就是第一个字节是Y,第二个字节是U,第三个字节是Y,第四个字节是V轮流输出),取Y分量,去掉U,V,并将Y分量转换为RGB565就可以显示灰度图像了。
3.如何提高帧数:   a:提高摄像头输出的帧数   当ov_sta==2的时候们才开始显示图像。如果摄像头能输出30FPS,那么在液晶显示速度足够的情况下,最多只能显示15FPS,所以想要提高显示帧率可以提高摄像头输出的帧率。   这里有一个公式:1s=510*784*2*2*PCLK*摄像头输出帧数。(至于原理可以看下时序图) 。这里初始化的代码设置的像素输出时钟PCLK为48MHZ,所以我们只能输出30FPS,可以通过设置0x6b将PCLK的时钟设置为96MHZ(最高了,外部输入时钟为12MHZ 这了8倍频),那么就可以输出60FPS,就可以提高显示的帧率了。   b:送数据的显示速度,例如 用FSMC控制液晶,快速IO,移位等等。
4.如何调试: 利用usmart调试摄像头很方便的哦, 将函数config_ov7670_OutPut(u16 xsta,u16 ysta,u16 width,u16 height,u8 ouput_mode)和SCCB_WR_Reg(u8 reg,u8 data)添加到usmart_config.c文件就好了^_^
源码以及参考的文档见附件:
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
49条回答
foxglove
1楼-- · 2019-07-24 14:52
要的代码要的代码
20121749
2楼-- · 2019-07-24 20:35
楼主 你真的用ov7670显示出了那么清晰的图像吗?
Kowalski
3楼-- · 2019-07-24 23:20
 精彩回答 2  元偷偷看……
l692519765
4楼-- · 2019-07-25 01:54
 精彩回答 2  元偷偷看……
xiaoyan
5楼-- · 2019-07-25 02:57
回复【35楼】l692519765:
---------------------------------
就是战舰的哦。
l692519765
6楼-- · 2019-07-25 08:46
回复【36楼】xiaoyan:
---------------------------------
好的 谢谢。我刚试了下程序。。。初始化就失败了。。在找为啥呢。。。。有个oe端口 是干什么的。。。我买的摄像头就这个引脚不一样。。

一周热门 更多>