fast consecutive ADC Sampling for large chunk of data
Hi Everyone, in my previous posts i pretty much beat the bush around this subject and i did get some good support
but i keep getting stuck with this issue.
im using STM32H743ZI2 Evaluation board set to 32Mhz
the ADC is 16 bits and running on "fast channel" so therefore should be 1.2Mhz according to AN5354
What i need to accomplish is to sample a large ammount of data (around 1MB, but i can settle for 100kb at this point)
at a speed of atleast 1MSPS
and store it reliably in internal RAM or some other external Memory device via DMA
my issues are:
* RAM is limited and even though im supposed to have 1MB to my disposal i'm only managing to build the code for an array of about 220k half words
uint16_t adc_buffer[220000]
* now even when im using this "small" buffer when using DMA with it im only filling the first 65535 values.
and the rest are set to 0, according to the DMA Documentation im limited to 65535 requests.
* also i forgot to mention, i tested my sampling rate and it doesnt seem to be going above 23ksps for some reason, im testing it via toggling a GPIO and testing with a 200MHZ scope
it makes no sense to me that a device that can sample with up to 3.6Mhz (at the right packages)
and even up to 10.8Mhz combining all of it's 3 ADCs doesnt have an interface to properly save a large amount of data.
is there any way to acheive that? i prefer not to add external RAM if possible, as most of myu GPIOs are already in use and i cant make any changes in favor of the "FMC".
is there a way to chain multiple DMA Streams together so that when one stops the other continues "Without" losing any data in between?
Any help is greatly appreciated! :)


