OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 9869|回复: 5

关于STM32F407摄像头采集保存SD卡的问题,请各位大神和原子哥指点一下

[复制链接]

3

主题

7

帖子

0

精华

新手上路

积分
39
金钱
39
注册时间
2015-8-6
在线时间
0 小时
发表于 2015-8-6 20:18:00 | 显示全部楼层 |阅读模式
5金钱
原子哥,我在做STM32F4摄像头采集然后WIFI传输的~我们是分工的然后现在我做摄像头采集部分,我们现在是摄像头采集了显示在LCD上,然后把LCD写到SD卡上。 

因为老师说大概10fps就可以,所以我是想一秒在SD卡上存10张图片,然后我同学读再传这样。 

但现在我遇到的问题是,我用TIM定时器设置定时,然后到时间就disable DCMI然后保存一张再ENABLE DCMI capture这样。但我如果把定时设置成0.1秒的话它实际并没有存10张,但我如果设置成1s,10s,这样就可以。是不是这种方法达不到这个速度啊? 

我用的是SDIO传到SD卡的,我感觉也不是SDIO速度的问题啊~

最佳答案

查看完整内容[请看2#楼]

回复【3楼】njpanyi: --------------------------------- 存bmp没戏了。。。 其他都不需要回答了。
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165536
金钱
165536
注册时间
2010-12-1
在线时间
2117 小时
发表于 2015-8-6 20:18:01 | 显示全部楼层
回复【3楼】njpanyi:
---------------------------------
存bmp没戏了。。。
其他都不需要回答了。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165536
金钱
165536
注册时间
2010-12-1
在线时间
2117 小时
发表于 2015-8-6 21:09:24 | 显示全部楼层
你这样不靠谱的,直接采集摄像头数据(用JPEG数据),然后存sd卡,这样也许可以达到10帧。如果你读TFT的方式,那是不行的。。。
另外,你另外一个同学读SD卡,你们不是同一个单片机么?
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

3

主题

7

帖子

0

精华

新手上路

积分
39
金钱
39
注册时间
2015-8-6
在线时间
0 小时
 楼主| 发表于 2015-8-6 21:21:32 | 显示全部楼层
回复【2楼】正点原子:
---------------------------------
是同一个型号的,不过大家分开做的。。。
ov9655好像只能存BMP的~我用的320*240 16位的~
我如果直接采摄像头数据的话,是不是就把下面那段的这两句换成:
DMA_InitStructure.DMA_Memory0BaseAddr = FSMC_LCD_ADDRESS;这句换成一个buffer
DMA_InitStructure.DMA_MemoryInc = DMA_MemoryInc_Disable; 然后这个enable这样?

其实用LCD主要是因为我还有另一个同学采集温度湿度,然后显示在LCD上的话,可以和图像一起传输这样子。
然后想请问读LCD的话不靠谱是因为受到什么的影响呢?原因在哪里?
不好意思问题有点多谢谢原子哥回答哦~~~



  DMA_InitStructure.DMA_Channel = DMA_Channel_1;  
  DMA_InitStructure.DMA_PeripheralBaseAddr = DCMI_DR_ADDRESS;
  DMA_InitStructure.DMA_Memory0BaseAddr = FSMC_LCD_ADDRESS;
  DMA_InitStructure.DMA_DIR = DMA_DIR_PeripheralToMemory;
  DMA_InitStructure.DMA_BufferSize = 1;
  DMA_InitStructure.DMA_PeripheralInc = DMA_PeripheralInc_Disable;
  DMA_InitStructure.DMA_MemoryInc = DMA_MemoryInc_Disable;
  DMA_InitStructure.DMA_PeripheralDataSize = DMA_PeripheralDataSize_Word;
  DMA_InitStructure.DMA_MemoryDataSize = DMA_MemoryDataSize_HalfWord;
  DMA_InitStructure.DMA_Mode = DMA_Mode_Circular;
  DMA_InitStructure.DMA_Priority = DMA_Priority_High;
  DMA_InitStructure.DMA_FIFOMode = DMA_FIFOMode_Enable;         
  DMA_InitStructure.DMA_FIFOThreshold = DMA_FIFOThreshold_Full;
  DMA_InitStructure.DMA_MemoryBurst = DMA_MemoryBurst_Single;
  DMA_InitStructure.DMA_PeripheralBurst = DMA_PeripheralBurst_Single;
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165536
金钱
165536
注册时间
2010-12-1
在线时间
2117 小时
发表于 2015-8-6 23:12:58 | 显示全部楼层
150KB一张图片,1秒钟10帧,就是1.5M/S,STM32完全达不到这个速度来写SD卡。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

3

主题

7

帖子

0

精华

新手上路

积分
39
金钱
39
注册时间
2015-8-6
在线时间
0 小时
 楼主| 发表于 2015-8-7 03:21:35 | 显示全部楼层
回复【5楼】正点原子:
---------------------------------
好的,谢谢原子哥的回答。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-9 10:32

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表