2016-11-12 06:42 AM
hi.
I drive ov2640 camera with stm32f407 by DCMI and DMA. I can get image with 160*120 resolution, so I shoud use uint16_t buff[19200] for this resolution.
The problem is if I want to use higher resolution for example 640*480 my stm32 should have 307200*2 byte for storing the image receiving from dma to the buffer. but there is no such space in stm32f407. could you please guide me? is there any way to get the image data in a smaller part!?
#stm32f407 #ov2640 #buffer-size2016-11-12 09:26 AM
So what exactly do you want to do with data that a) takes more space than you have available, and b) comes at you quicker than you can process?
You could manage the DMA stream using a circular buffer, and managing portions of the data in the HT and TC interrupts. If you capture the image over multiple frames it is likely to tear. Consider using a chip with enough external memory to hold the entire frame, and has enough horsepower to process and dispatch the data at the rates desired.2016-11-14 04:07 AM
Is there any way to use nand flash in DMA ?
2016-11-14 09:51 AM
NAND typically expects you to write a word and wait, and it is not fast, I don't see DMA from a synchronous source being workable.