命途多舛的摄像头输出jpeg数据

2019-07-20 08:42发布

本帖最后由 学习stm32f4 于 2018-4-7 21:49 编辑

大家好。
以我手头的探索板为例,在例程42中,有2个问题,第一个是ov2640_jpg_photo()函数的 u16 i 应该定义成 u32 i
否则,程序将死在该函数的for中出不来了:
[mw_shl_code=c,true]for(i=0;i<jpeg_data_len*4;i++)//查找0XFF,0XD8
{
       if((pbuf==0XFF)&&(pbuf[i+1]==0XD8))break;
}[/mw_shl_code]

第二个问题是,即使将 u16 i 改成 u32 i 后,也不会在pbuf[]中找到0xff,0xd8(硬件仿真发现的),故按下key1后,LCD上显示“写入文件错误!”。
引起第二个问题的原因,是OV2640产生的jpeg数据流有误,没有产生jpeg起始数据0xff,0xd8。

总之,第一个问题和第二个问题其实是同一个问题,即OV2640产生的jpeg数据流有误。
目前没有找到原因。

视频里是如此轻松的拍摄jpeg图片,难道是我用的摄像头模块,和视频讲解中的摄像头模块不一样吗?

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
6条回答
正点原子
1楼-- · 2019-07-20 14:39
 精彩回答 2  元偷偷看……
学习stm32f4
2楼-- · 2019-07-20 15:51
本帖最后由 学习stm32f4 于 2018-4-8 08:47 编辑
正点原子 发表于 2018-4-8 02:17
一样的,你下载我们标准例程-寄存器版本,照相机实验, 拍照,看下,能成功么?  不要改我们的代码,直接下 ...

原子哥好。
下载标准例程寄存器版本的照相机实验后,同库函数的一样,按下key1后,程序死在for循环中了。

正点原子
3楼-- · 2019-07-20 19:42
学习stm32f4 发表于 2018-4-8 07:29
原子哥好。
下载标准例程寄存器版本的照相机实验后,同库函数的一样,按下key1后,程序死在for循环中了 ...

探索者开发板+我们的OV2640摄像头,拍照死机?不拍照正常?
有没有换过SD卡试试?
另外,下载USB读卡器实验,看看能否正常操作SD卡。
学习stm32f4
4楼-- · 2019-07-21 00:37
 精彩回答 2  元偷偷看……
学习stm32f4
5楼-- · 2019-07-21 05:41
 精彩回答 2  元偷偷看……
正点原子
6楼-- · 2019-07-21 05:43
学习stm32f4 发表于 2018-4-9 11:48
多谢原子哥及其团队,已发现是OV2640摄像头模块有缺陷,原子哥团队同意调换个经过仔细测试后的新模块啦

好的,能解决就好,耽搁您的使用,不好意思啊。

一周热门 更多>