ATmega88 ADC prescaler Einstellungen

#2067399
Lesenswert?

Hallo,

ich habe ein Verständniss Problem wie genau der prescaler anhand der 3 
BITs funktioniert

http://www.atmel.com/dyn/resources/prod_documents/doc2545.pdf
Seite 246 , bzw. "23.4 Prescaling and Conversion Timing"

Durch setzen von ADPS[0-2] in ADCSRA kann ich den prescaler einstellen.
Laut Bild im PDF kann ich 7 verschiedene prescaler einstellen

Mit folgendem C-Code setze ich den prescaler auf ck/8
1
ADCSRA = (1<<ADPS1) | (1<<ADPS0);

Nach meinem Verständniss müsste das allerdings ck/16 sein
1
ADPS2  ADPS1  ADPS0
2
0      0      0    ck/2
3
0      0      1    ck/4
4
0      1      0    ck/8
5
0      1      1    ck/16
6
1      0      0    ck/32
7
1      0      1    ck/64
8
1      1      1    ck/128

Könnte mir da wer auf die Sprünge helfen ?

mfg

Alex
#2067417
Lesenswert?

Alexander S. schrieb:
> Mit folgendem C-Code setze ich den prescaler auf ck/8
>
1
ADCSRA = (1<<ADPS1) | (1<<ADPS0);

Ja.

>
> Nach meinem Verständniss müsste das allerdings ck/16 sein

Nein. Schau dir die Tabelle nochmal an, zumindest in meinem Datenblatt 
schaut die so aus:
1
ADPS2  ADPS1  ADPS0
2
0      0      0    ck/2
3
0      0      1    ck/2
4
0      1      0    ck/4
5
0      1      1    ck/8
6
1      0      0    ck/16
7
1      0      1    ck/32
8
1      1      0    ck/64
9
1      1      1    ck/128

Nachtrag: das verlinkte Datenblatt stimmt mit meinem überein.

Gruß
David
#2297385
Lesenswert?

David Madl schrieb:
> Nein. Schau dir die Tabelle nochmal an, zumindest in meinem Datenblatt
> schaut die so aus:
> ADPS2  ADPS1  ADPS0
> 0      0      0    ck/2
> 0      0      1    ck/2
> 0      1      0    ck/4
> 0      1      1    ck/8
> 1      0      0    ck/16
> 1      0      1    ck/32
> 1      1      0    ck/64
> 1      1      1    ck/128

Bei mir auch. Aber stimmt es tatsachlich, daß 0 und 1 beide den 
Prescaler auf 2 setzten, oder ist das ein Fehler im Datenblatt?
#2297404
Lesenswert?

Was dafür spricht, daß es kein Fehler ist:
1
By default, the successive approximation circuitry requires an input clock
2
frequency between 50 kHz and 200 kHz to get maximum resolution.
und
1
The ADC module contains a prescaler, which generates an acceptable ADC clock
2
frequency from any CPU frequency above 100 kHz.

Ein Prescaler 1 ist bei der Spezifikation nicht nötig.

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