你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

【MCU实战经验】+F407驱动130W摄像头(MT9M111和ov9655)

[复制链接]
智空小子 提问时间:2014-4-4 11:24 /
 在以前的项目中有一个开门影像功能,即开门时拍照把开门者记录下来。在这开发过程中遇到了不少问题。
1、怎么将一帧1280x1024图像保存到我的SD卡当中?那么我们需要一个buffer进行缓冲。这个Buffer需要多大1280x1024x2(RGB565格式)==  2 621 440Bit == 2.5M字节。大于板载2M SRAM ,资源不满足,只能降低图像尺寸了,最后选择了1024x768大小的图像可以满足需求。摄像头初始化好了,DCMI配置中DCMI_CaptureMode要配置成快照模式CMI_InitStructure.DCMI_CaptureMode = DCMI_CaptureMode_SnapShot,这样每完成一帧图像的获取,摄像头就停止捕获数据了,要想它再次捕获数据只需要执行DCMI_CaptureCmd(ENABLE)就可以了。
          DCMI_InitStructure.DCMI_CaptureMode = DCMI_CaptureMode_SnapShot;
          DCMI_InitStructure.DCMI_SynchroMode = DCMI_SynchroMode_Hardware;
          DCMI_InitStructure.DCMI_PCKPolarity = DCMI_PCKPolarity_Rising ;
       // 水平极性和垂直极性与摄像头相关
          DCMI_InitStructure.DCMI_VSPolarity = DCMI_VSPolarity_Low;
          DCMI_InitStructure.DCMI_HSPolarity = DCMI_HSPolarity_Low;
          DCMI_InitStructure.DCMI_CaptureRate = DCMI_CaptureRate_All_Frame;
          DCMI_InitStructure.DCMI_ExtendedDataMode = DCMI_ExtendedDataMode_8b;
          DCMI_Init(&DCMI_InitStructure);
配置DMA传输数据有个特别注意的是,        DMA_InitStructure.DMA_BufferSize 这个DMA_BufferSize 最大为65535,如果配置如下:        DMA_InitStructure.DMA_PeripheralDataSize = DMA_PeripheralDataSize_Word;
        DMA_InitStructure.DMA_MemoryDataSize = DMA_MemoryDataSize_HalfWord;
那么一次DMA最大为65535*4 == 262140个字节,我们一帧图像是1024*768*2 ==1572864 ,一次DMA不能传完,所以配置  DMA_InitStructure.DMA_Mode 为 DMA_Mode_Circular模式;进行多次DMA传输。
那我们要配置:传输完成中断
        NVIC_InitStructure.NVIC_IRQChannel = DMA2_Stream1_IRQn;
        NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0;
        NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0;
        NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;
        NVIC_Init(&NVIC_InitStructure);
并在DMA2_Stream1_IRQHandler() 中断程序中重新配置DMA传输中的目标地址,也就是        DMA_InitStructure.DMA_Memory0BaseAddr  ,并初始化。
最后将保存在SRAM中的数据以.BMP格式保存在SD卡中。文件大小为1.5M,显然文件太大需要进行文件压缩,采用JPEG压缩算法,文件大小问175k左右。
MT9M111和OV9655比较;
OV9655价格优势,MT9M111夜晚拍照效果要好。
收藏 1 评论7 发布时间:2014-4-4 11:24

举报

7个回答
zhenyuan0304 回答时间:2014-11-7 14:22:54
大神,求源程序啊,求教程啊
zhenyuan0304 回答时间:2014-11-7 14:24:39
大神,你看到的话,请回复一下啊
zyt1253305386 回答时间:2014-11-7 22:57:52
感谢分享啊,顺便来求一个程序哈哈哈
w329406564 回答时间:2014-11-8 09:34:10
老早就想自己弄个摄像头玩玩了,改天试试看,哈哈
6874577 回答时间:2014-12-6 15:47:30
看看不知道接口怎么搞
漫步云端-345339 回答时间:2015-10-22 14:20:13
大神可以把这个 代码放出来吗?
123玄风夕韵 回答时间:2016-3-4 10:15:24
本帖最后由 123玄风夕韵 于 2016-3-5 11:26 编辑

打扰了,看过您最近发的【MCU实战经验】+F407驱动130W摄像头(MT9M111和ov9655)帖子,请问您有源程序吗,我最近在做一个类似的项目,想参考下,谢谢。


所属标签

相似问题

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32Cube扩展软件包
意法半导体边缘AI套件
ST - 理想汽车豪华SUV案例
ST意法半导体智能家居案例
STM32 ARM Cortex 32位微控制器
关注我们
st-img 微信公众号
st-img 手机版