STM32 Sample&Hold

OP #4151727
Lesenswert?

Hallo,

ich habe einige Fragen zum Ablauf von ADC Messungen auf einem STM32 MC.

Folgendes Szenario:
Es sollen 6 anliegende Spannungen zum Zeitpunkt t=0 gemessen werden, 
also gleichzeitig.

Dies soll von ADC1 übernommen werden.
Die Spannungen sind mit ADC1_IN0 bis ADC1_IN5 verbunden.
1
ADC_InitStructure.ADC_NbrOfRegChannel = 6;
2
ADC_Init(ADC1, &ADC_InitStructure);
3
    
4
ADC_RegularChannelConfig(ADC1, ADC_Channel_0, 1, ADC_SampleTime_7Cycles5);
5
(..)
6
ADC_RegularChannelConfig(ADC1, ADC_Channel_5, 6, ADC_SampleTime_7Cycles5);

Zum Zeitpunkt t=0 wird ADC1 durch einen Timer getriggert.

Ist es richtig, dass genau bei t=0 Spannungen an ADC1_IN0..5 jeweils in 
6 Kondensatoren gespeichert werden, dann geht der ADC1 von Channel zu 
Channel und holt die gespeicherten Spannungen ab?
So, dass ich am Ende, nach 6 * Sample_Dauer, also zb bei STM32F4 nach (6 
* 1uS=) 6uS die 6 Spannungen zum Zeitpunkt t=0 erhalte?

Was genau sagt dann ADC_SampleTime_7Cycles5?

Hintergrund: Ich habe mehrere synchronisierte center aligned PWM Signale 
und die Spannungen sollen genau dann gemessen werden, wenn alle PWM 
Ausgänge LOW sind. PWM_Duty wird nie auf 100% gesetzt, damit es eine 1uS 
OFF_TIME zum Messen bleibt.
Deshalb die Frage, ob ich für 6 Messungen 1uS oder 6uS übrig lassen 
soll.

Gruß
Andreas
Gast #4151941
Lesenswert?

Da hätte ich auch mal ne Frage.

Wenn ich dann die Samplerate versechsfachen würde und der ADC in meinem 
Verständis ja eh nur einen Bruchteil der Zeit des Sampling fürs Laden 
der Kondensatoren benutzt müßte es doch möglich sein 6 Eingänge 
"gleichzeitig" zu samplen mit der Bedingung das es diese 
Phasenverschiebung gibt.
Aber theoretisch wäre es doch quasi-zeitgleich im Rahmen der Samplerate 
(*1).
Gast #4152104
Lesenswert?

Laut Datenblatt wandelt beim F4 jeder der drei ADCs mit max. 2,4 MSP/s. 
Das heißt, die ersten drei Messungen brauchen 420 ns. Auf die nächsten 
drei Kanäle weitergeschaltet, brauchen diese auch wieder 420 ns.
Benötigen Kanalumschaltung und Neustart nicht mehr als 160 ns, so ist 
die genannte Geschwindigkeit erreichbar.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren