Forum: Mikrocontroller und Digitale Elektronik Attiny26_ADC-Wandler


von MC (Gast)


Lesenswert?

Hallo,

ich wollte den ADSCR Register initialisieren.. Und zwar der ADC Wandler 
benötigt einen eigenen Takt, dieser soll laut Datenblatt zwischen 50 und 
200 kHz liegen. Der Takt wird bestimmt indem der CPU-Takt durch den 
Vorteiler (Teilungsfaktor) geteilt wird.
Die Frage hierbei ist, wie lautet der CPU-Takt (Systemtakt) ? Wo steht 
es im Datenblatt?

Mfg

von Paul B. (paul_baumann)


Lesenswert?

MC schrieb:
> Wo steht
> es im Datenblatt?

Das steht ab Seite 32 im Datenblatt. Ausgeliefert wird er mit dem 
internenen RC-Oszillator und 1MHz. Man kann das über die Fuse-Bits CKSEL 
3-0 auf 2, 4 oder 8MHz ändern.

MfG Paul

von MC (Gast)


Lesenswert?

Ist Taktfrequenz zwischen null und 16 MHz?

von S. K. (hauspapa)


Lesenswert?


von MC (Gast)


Lesenswert?

Also die Taktfequenz ist 1 MHz und was ist die Frequenz :0 - 16 MHz?

von Paul B. (paul_baumann)


Lesenswert?

MC schrieb:
> Also die Taktfequenz ist 1 MHz und was ist die Frequenz :0 - 16 MHz?

Ich verstehe die Frage nicht. In welchem Zusammenhang hast Du von den 
0-16MHz gelesen?

MfG Paul

von MC (Gast)


Lesenswert?

Aus Datenblatt habe ich diesen Wert.

Speed Grades
– 0 - 8 MHz for ATtiny26L
– 0 - 16 MHz for ATtiny26

Ich habe dann eine Person gefragt, die meinte die 16 Mhz wäre die 
Taktfrequenz..


Mfg

von Paul B. (paul_baumann)


Lesenswert?

MC schrieb:
> Ich habe dann eine Person gefragt, die meinte die 16 Mhz wäre die
> Taktfrequenz..

Ach so. Die 16MHz sind die maximale Taktfrequenz. Die sind allerdings 
nicht mit dem internen RC-Oszillator zu erreichen -dafür mußt Du draußen 
einen Quarz oder Resonator dranmachen oder einen separaten Generator.

MfG Paul

von MC (Gast)


Lesenswert?

Danke

von MC (Gast)


Lesenswert?

Ich hätte da nur noch eine Frage. Undzwar in diesem Code wurde erst die 
Voreinstellungen gemacht und dann das ADSC Bit auf 1 gesetzt. Kann ich 
eigentlich schon in der Initialisierung das ADSC Bit auf eins setzen??

 ADC initialisieren: ADC0, Vcc als Referenz, Single Conversion, 
Vorteiler 128

    ldi     temp1, (1<<REFS0)                   ; Kanal 0, interne 
Referenzspannung 5V
    out     ADMUX, temp1
    ldi     temp1, (1<<ADEN) | (1<<ADPS2) | (1<<ADPS1) | (1<<ADPS0)
    out     ADCSRA, temp1
.
......
......
......
sample_adc:
    sbi     ADCSRA, ADSC        ; den ADC starten

wait_adc:
    sbic    ADCSRA, ADSC        ; wenn der ADC fertig ist, wird dieses 
Bit gelöscht
    rjmp    wait_adc


Quelle:http://www.mikrocontroller.net/articles/AVR-Tutorial:_ADC

von Paul B. (paul_baumann)


Lesenswert?

MC schrieb:
> Kann ich
> eigentlich schon in der Initialisierung das ADSC Bit auf eins setzen??

So, wie es in dem Quelltextstück aussieht, macht der ADC nur eine 
Umsetzung, danach wird das Bit ADSC im Register ADCSRA gelöscht und dann 
hat's Ruhe mit dem AD wandeln, bis Du wieder das Bit setzt.

MfG Paul

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.