Hallo
Verodern mit 0 kann man sich uebrigens sparen.
Da der Kompiler die Veroderungen eh als berechnete Konstante ablegt ist es egal, wie man es formuliert. Bei (Dummy-)-Nullen im Grundgerüst für verschiedene Einstellungen kann man die jeweiligen Bits setzen ohne zuvor lange im Datenblatt zu stöbern und läuft keine Gefahr, irgendwelche wichtigen Bits zu vergessen. Als Beispiel mein "Grundgerüst" in der Einstellung für maximale Samplerate:
Code:
// ADC interne Referenz 2,56V, Ergebniss linksbündig, Kanal ADC4 (E_INT1)
ADMUX = (1<<REFS1) | (1<<REFS0) | (1<<ADLAR) | 4;
// setze free running triggern
SFIOR = (0<<ADTS2) | (0<<ADTS1) | (0<<ADTS0);
// kein interupt, Wandler einschalten, prescaler /2
ADCSRA = (0<<ADIE) | (1<<ADEN) | (0<<ADPS2) | (0<<ADPS1) | (1<<ADPS0);
// Autotriggern bedeutet jetzt free running aktivieren, altes Flag löschen
ADCSRA |= (1<<ADATE) | (1<<ADIF);
// Initialisierung starten
ADCSRA |= (1<<ADSC);
// und noch die wohl eher unnötige Initiallesung
while (!(ADCSRA & (1<<ADIF)));
ADCSRA |= (1<<ADIF);
Gruß
mic
Lesezeichen