ADC_init: ldi r16, 0x20 ;Externe Referenz, Ergebnis linksbündig, Kanal 0 0b00100000 out ADMUX, r16 ;Ausgabe ldi r16, 0x87 ;Enable ADC, Prescaler = 16 out ADCSRA, r16 ;Ausgabe ret ADC_Kanal0: push r16 ldi r16, 0x20 out ADMUX, r16 pop r16 ret ADC_Kanal1: push r16 ldi r16, 0x21 out ADMUX, r16 pop r16 ret ADC_Kanal2: push r16 ldi r16, 0x22 out ADMUX, r16 pop r16 ret ADC_Kanal3: push r16 ldi r16, 0x23 out ADMUX, r16 pop r16 ret DisableADC: cbi ADMUX, ADEN ret EnableADC: sbi ADMUX, ADEN ret EndADC: nop ret Stack_init: ldi r16, High(Ramend) out SPH, r16 ldi r16, Low(Ramend) out SPL, r16 rjmp Weiter StartADC: sbi ADCSRA, ADSC ;Starte ADC sbic ADCSRA, ADSC ;Warte bis Messung fertig ist ret