Forum: Mikrocontroller und Digitale Elektronik ADC: kanalübersprechen vermeiden


von dunno.. (Gast)


Lesenswert?

hallo leute..

ich hab grad ne mehrstündige fehlersuche hinter mir:

auf einem ATmega48 tat sich nach dem wechsel von 8MHZ internem takt zu 
12MHZ takt über quartz das problem auf, das auf einmal ADC- messwerte 
von den zuständen der anderen kanäle (controller misst direkt 
hintereinander spannungsteiler an 3 kanälen, für RGB steuerung) 
beeinflusst wurden.

am ende bin ich darauf gekommen, den prescaler im ADCSRA mal von 4 auf 
16 zu erhöhen, und siehe da, die kanäle beeinträchtigen sich nicht mehr.

- die spannungsreferenz ist intern, mit einem 100nF kerko an AREF gegen 
gnd.


ich stell mir jetzt aber trotzdem die frage nach der ursache..

ist die jetzt wirklich schon in der physik/architektur zu suchen, also 
ist der controller bei den 12MHZ nicht mehr in der lage, seine hardware 
von elektronen zu befreien, bevor er die nächste messung machen soll, wo 
er es bei 8MHZ noch war?


dann stellt sich die frage, ob da evtl einfach nur meine beschaltung, 
mit teilweise mehrere cm langen leiterbahnen von den spannungsteilern 
her suboptimal ist..
- wie könnte man das ganze auf höhere sampleraten trimmen?

MfG

von Justus S. (jussa)


Lesenswert?

dunno.. schrieb:
> - wie könnte man das ganze auf höhere sampleraten trimmen?

das die ADC-Frequenz eigentlich zwische 50 und 200 kHz liegen soll 
weisst du?

von spess53 (Gast)


Lesenswert?

Hi

>ich stell mir jetzt aber trotzdem die frage nach der ursache..

Du hast das Datenblatt nicht gelesen:

By default, the successive approximation circuitry requires an input 
clock frequency between 50 kHz and 200 kHz.

Das erfordert schon bei 8MHz einen Prescaler von 64.

MfG Spess

von Ulrich (Gast)


Lesenswert?

Nach dem kanal-Wechsel muss der S&H Kondensator (ca. 15 pF) innerhalb 
von 1 oder 2 Perioden des AD-taktes geladen werden. Wenn der 
Spannungsteiler am Eingang relativ hochohmig ist, reicht die Zeit bei 
eine so hohen ADC takt einfach nicht mehr.  Als obere sinnvolle Grenze 
für den AD takt wird 1 MHz angegeben - da kann man dann aber schon keine 
10 Bit Auflösung mehr verlangen und muss ggf. auch etwas übersprechen in 
Kauf nehmen.

Was man machen kann, ist den Eingang niederohmiger (z.B. 1 k) zu machen, 
oder einen Kondensator von über 10 nF am Eingang (unter 5 nF ist schon 
eher kontraproduktiv).

von dunno.. (Gast)


Lesenswert?

@justus, spess:
vielen dank, ich bin schuldig im sinne der anklage.

@ulrich:
danke, genau so eine erklärung hatte ich mir erhofft.

okay, den spannungsteiler niederohmiger zu machen, bedeutet im zweifel, 
das ladungsträger sich schneller richtung masse verabschieden?


Ulrich schrieb:
> oder einen Kondensator von über 10 nF am Eingang (unter 5 nF ist schon
> eher kontraproduktiv).

kondensator...

direkt in die leitung rein?

quasi als hochpass dann?

mfg

von Hannes L. (hannes)


Lesenswert?

dunno.. schrieb:
> quasi als hochpass dann?

Nööö, eher als Tiefpass, also C zwischen Eingang und Masse...

...

von dunno.. (Gast)


Lesenswert?

ah, ich verstehe...

bin bisher davon ausgegangen, das die zeit zu knapp wird, um nach der 
messung den internen aufbaus des konverters wieder in ruhezustand zu 
versetzen..

aber tatsächlich muss bei beginn der messung der interne aufbau schnell 
aufgeladen werden.. - wenn ich ulrichs beitrag jetzt richtig versteh..

klar, das dabei ein C am eingang hilft.. - wie beim stützkondensator, 
oder?

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.