The DMA reads the camera data as it's coming in - it has to be as fast
the data.
I'm not sure what you mean by the time being longer than expected - how
are you timing this? If you are using the PC application, I wouldn't
use that as any indication of speed - who knows what delays lurk in
Windows. The only real delay in the mx21 code is where the code pauses
to look for the start of image:
while((CSI_CSISR & 0x00010000) == 0); //wait until start of image
You might also verify that the number of bytes being read in is correct.
Dan
--
Daniel Foisy
Virtual Cogs Embedded Systems Inc.
Unit 4, 5694 Highway 7 East, Suite 311
Markham, Ontario, Canada L3P 1B4
www.virtualcogs.com
416-238-2231
"Your future is modular"
Yes that's what I thought with the DMA, so I am trying to verify the clock
(PERCLK4) and the MCLK divider (CSICR1-MCLKDIV) settings
<thinking out loud>
I assume this means the it is supposed to run the peripheral at 44.33Mhz
which is close enough to the max of 48Mz
CRM_PCDR1=0x05070705; //PERCLK clock divider settings (44.33MHz)
And I assume is MCLKDIV
CSI_CSICR1=0x00183b12;
So the 3 in there is the MCLKDIV which converts to a scaling factor of 8.
That's about right, 575ms ( I get now ) / 8 = 71ms.. pretty much spot on.
Ok.. I will try changing that and let you know.
Cheers,
James