Zunächst mal muss der ADC initialisiert werden.
z.B. so:
Im ADMUX-Register wird hier die interne Spannungs-Referenz ausgewählt und Kanal 0 (auf PA0) eingestellt. Im ADCSRA-Register wird der ADC enabled und der Teiler für die Sample-Rate des ADC eingestellt.Code:void AdcInit() { ADMUX = 0xC0; ADCSR = 0x86; }
Dann musst Du den ADC starten und das Ergebnis einlesen:
Gruß,Code:unsigned short GetADC(void) { unsigned short result; ADCSR |= 0x40; //Wandlung starten while (ADCSR & 0x40) ; //warten bis ADC fertig ist result = (ADCH << 8) + ADCL; //Ergebnis einlesen return result }
askazo
Lesezeichen