ATtiny861 ADC

OP #1295417
Hallo,

Ich habe eine Merkwürdigkeit mit dem ADC des ATtiny861:
Ich initialisiere den ADC im free running mode und aktiviere den 
interrupt und möchte den ADC wert im interrupt auslesen.
Das Problem dabei ist, das er nur ein einziges mal eine Wandlung 
durchführt. Diese ist zwar korrekt, aber er wandelt nicht kontinuierlich 
weiter.

hier mal meine Initialisierungsfunktion:
1
void adc_init(void)
2
{
3
  ADMUX = FADER_PIN;          // select channel
4
                    // VCC as reference voltage
5
  ADCSRA  = (1<<ADIE);        // enable interrupt
6
  ADCSRA |= (1<<ADPS2) | (1<<ADPS1);  // frequency devider of 64 (8Mhz/64 = 125Khz)
7
  ADCSRA |= (1<<ADEN);        // enable adc
8
  ADCSRA |= (1<<ADSC);        // start converting
9
}

und meine ISR:
1
ISR(ADC_vect)
2
{
3
  out.bit.adc = ADCW;
4
}

mein derzeitiges workaround ist es den wandlungsvorgang in der ISR mit
1
ADCSRA |= (1<<ADSC);
nocheinmal zu starten. Das geht auch soweit, ist aber irgendwie ja nicht 
der Sinn der Sache.

Mir sieht das ganz danach aus, als läuft der ADC im single conversion 
mode.
Im Datenblatt steht aber eindeutig:
ADCSRB
ADTS2 = 0; ADTS1 = 0; ADTS0 = 0; =>Free Running mode
Also setze ich keines der Bits.

Hat jemand eine Idee?
(ich hab jetzt nicht den ganzen code angehängt, da das auslesen an sich 
ja geht, und ich sonst nirgents was an den ADC registern rumfummle)

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 17 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.