ADC_DMA for an High Speed DAQ (data acquisition system) ESP32

rudyrim
Posts: 1
Joined: Wed Jun 29, 2022 4:01 pm

ADC_DMA for an High Speed DAQ (data acquisition system) ESP32

Postby rudyrim » Wed Jun 29, 2022 4:30 pm

Hello community, I have a few questions.
1)
Is it possible to capture the ADC's continuous values directly to an SD card via the ADC1's 8-channel DMA at or above 200 ksps per channel, and if so, how exactly?
I am trying to make a data acquisition system at this speed with the example “adc_dma_example_main.c” from the ESP-IDF.
I see that the ESP32 datasheet indicates yes thanks to the DIG controller but in practice I am lost.

https://www.espressif.com/sites/default ... et_en.pdf
Table 9: ADC Characteristics page 33/68

2)
I modified the example to write to an SD card and I end up with this :

Code: Select all

	 FILE *f = fopen(file_hello, "w");
		...
            adc_digi_output_data_t *p = (void*)&result[i];
            fprintf( f, "%x\n",   p->type1.data);

Is it possible to select a particular channel in order to have the result of all the channels in a single line.
there is an instruction similar to “fprintf” faster to write on the SD card

3)
How in the example would it be possible to “fix” an acquisition frequency or to measure it?

Who is online

Users browsing this forum: Google [Bot] and 134 guests