ADC im Mega32 gibt immer 0x00 aus

Gast #1816007
Lesenswert?

Hallo zusammen,

ich habe ein Problem mit dem ADC im Mega32 (DIL40-Gehäuse).
Ich möchte an Port A6 (=ADC6) eine Spannung von 0...5V messen, die ich 
mit einem 2k2 Poti vorgebe. Also sehr einfach. 8-bit reichen mir, ich 
nutze den Modus mit "Left-Adjust". Der Wandler soll im Free-Running-Mode 
laufen, ich will dann vom Programm aus zu beliebigem Zeitpunkt spontan 
auf das Datenregister ADCH zugreifen wenn ich den Messwert brauche.

Mein Problem: die Spannung liegt mit dem Multimeter messbar am Pin PA6 
des Mega32 an, aber im Register ADCH steht immer nur 0x00. Auch die Pins 
AVCC und AREF liegen wie gewünscht messbar auf 5V.

Den ADC initialisiere ich so:

ADMUX =0x66; //Vref = AVCC, Left-Adjust, Channel=ADC6 single ended
SFIOR =0x00; //freerunning mode
ADCSRA=0x7F; //ADC enabled, ADC start,Auto Trigger, Int 
off,Prescaler=128

im Programm greife ich dann spontan auf das Register ADCH zu:

unsigned char variable;

variable=ADCH;


Sieht jemand einen Fehler? Eigentlich kann man doch da nicht viel falsch 
machen...

vielen Dank für alle Tips!!

Paul

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