Tiny13 ADC - Verzweiflung

OP #1482423
Lesenswert?

Hallo

Es gibt ja schon Zahlreiche ADC-Beiträge für den Tiny13. Dort konnte ich 
aber meine Lösung nicht finden.

Problem ist, dass der ADC immer den gleichen in etwa Wert ausliest, egal 
welche Spannung anliegt.

Ich sehe leider den Fehler nicht, könnt ihr mir helfen?

Danke

Michael
OP #1482518
Lesenswert?

Jetzt funktioniert's. Vielleicht liegt es daran, dass ich nur den 8 bit 
Mode verwenden wollte.

Der neue Code:

void adc_init(){
  ADMUX=(0<<REFS0)|(1<<MUX0);
  ADCSRA=(1<<ADEN)+(1<<ADSC)+(0<<ADPS2)+(0<<ADPS1)+(0<<ADPS0);
}

uint_fast16_t adc_shoot(){
  ADCSRA|=(1<<ADSC);
  while(!(ADCSRA &&(1<<ADSC)));
  unsigned char read_first;
  read_first=ADCL;
  return (ADCH<<8)+read_first;
}

Hoffe, das hilft wenn jemand das gleiche Problem hat...

Michael
Gast #1482813
Lesenswert?

Kann es sein, dass du nur 8 bit auslesen wolltest?

Wenn ich mich recht erinnere muss man auch im "8-bit modus" immer 16 bit 
lesen, ob man sie nun verwendet oder nicht.

Vielleicht wars ja sogar das hier...

Felix

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