Hallo,
diese beiden Zeilen machen nicht das wie es gemeint war:
die erste Zuweisung löscht alle anderen Bits,Code:ADCSRA = (1<<ADIF); // delete ADIF, cause it could trigger ISR ADCSRA &= (1<<ADEN); // deactivating ADC
sodass die 2. eigentlich nix mehr zu tun hat.
Dann würde ich nicht jedesmal den ganzen ADC deaktivieren, dann gehts beim 2. mal etwas schneller.
Wie schnell Taktet der AVR, hast Du den Prescaler richtig berechnet?
Wie ist der ADC extern beschaltet, also AVCC/VRef usw. bei interner Ref muss da aussen was mit Kondensator anders sein ?
Welchen Wert übergibts Du der Funktion bei pin ?
Welchen AVR hast Du ?







Zitieren
Lesezeichen