Attiny ADC auswerten 8bit

OP #5494698
Lesenswert?

Huhu,
hab da ne Umrechnungsfrage.

Und zwar steht ja hier bei µC im Artikel dass der ADC wert sich wie 
folgt berechnet :

Spannung = Maximalwert / 1024 * ADC-Wert.

Soweit ganz klar, für 10 bit.

Im 8 Bit Modus rechne ich doch dann einfach

Spannung = Maximalwert(Uref) /255 * ADC-Wert, oder nicht ?
heisst für mich beim Attiny 13A mit interner Ref ->
Spannung = 1,1V /255 * ADC-Wert.

Irgendwie zeigt er mir nämlich falsche Werte an.

Ich habe ausgerechnet dass ich bei meinem Spannungsteiler aus
3,3k ---- adc --- 510R bei 6,3V circa 0,84V und einen ADC wert von 
folglich 200 haben muss.

Die Werte stimmen auch, habe ich nachgemessen.

Allerdings führt das Programm eine Routine aus, die bei <= 195 ADC Wert 
ausgeführt werden soll.

Hat jemand da eine Idee ?

Edit:
Auslesen geschieht bei mir folgendermassen :

void voltage()
  {
    ADCSRA |= (1<< ADEN) | (1<<ADSC);
    while (ADCSRA & (1<<ADSC));
    ADCSRA |= (1<<ADSC);
    while (ADCSRA & (1<<ADSC));
    vol = ADCH;
    ADCSRA &= ~(1<<ADEN);

  }

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