Forum: Mikrocontroller und Digitale Elektronik STM32F411 falsche ADC Wandlungszeit wird eingestellt


von Andrey (Gast)


Angehängte Dateien:

Lesenswert?

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!

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.