Gast
#5646642
Hallo zusammen, ich verwende in dem STM32F411 ein ADC mit DMA Transfer (2 Kanäle). Alle Einstellungen konfiguriere ich in dem CubeMX. Das CPU (HCLK) lauft mit 96MHz Taktfrequenz. Der PCLK2 (an dem hängt ADC) wird mit gleiche Frequenz von 96MHz getaktet. Das ADC clock ist PCLK2/4 = 24MHz, ADC Auflösung 12 Bit, Sampling rate 480 Das Quellcode lauft wunderbar und ich kriege vom ADC gemessene Werte. Leider die berechnete Wandlungszeit stimmt nicht mit tatsächliche überein! Laut Datenblatt Wandlungszeit = 2*(12+480)*(1/24MHz) = 41us. (2 steht für zwei ADC Kanäle). Ich habe auch die tatsächliche ADC Wandlungszeit mit einem flackernden LED in DMA2_Stream0_IRQHandler gemessen. Zur meiner Überraschung lag der Wandlungszeit bei 82us !!! In dem CubeMX gibt es ein Check box "Use Fifo" (sehen Sie bitte angehängte Bildern). Ich habe den gesetzt gehabt. Mit Verdacht, dass daran die Ursache liegt, habe ich den gelöscht. Sobald ich den Check box lösche erhöht sich der Wandlungszeit auf 20,5us. Somit habe ich einmal das Doppelte Wandlungszeit von 82us, oder die Hälfte (20,6us), aber nie das berechnete ?! Was mache ich mit Berechnungen falsch ? Im voraus - Danke für eure Tipps!

