Hallo !
Wenn du mit Adcsrb.mux5 = 1 umschaltetst, darfst du nicht wieder mit GetAdc(10) die Daten holen !
sondern mit GetAdc(0) für ADC8, usw. !
Der max. Wert für GetADC ist 7 !
Also entweder MUX5 = 0 dann bekommt man mit GetADC(0) den ADC0-wert eingelesen, oder mit MUX5 = 1 dann bekommt man mit GetAdc(0) den ADC8-Wert eingelesen.
Die andern Bitsetzereien, die Du gemacht hast, kannst mal weglassen, da es ja vorher ansonsten auch geklappt hat !
Code:
getadc(x) | Mux5 = 0 | Mux5 = 1
----------+-------------+-----------
0 | 0 | 8
1 | 1 | 9
2 | 2 | 10
3 | 3 | 11
4 | 4 | 12
5 | 5 | 13
6 | 6 | 14
7 | 7 | 15
Aber trotzdem ohne Gewähr, hab mein ASM noch nicht angeworfen 
Edit:
Adcsrb.acme ist für den Analog Comparator, das können wir hier nicht brauchen ! [-X
Noch einer:
Adcsrb.aden gibts garnicht, deswegen hats nicht geschadet
Lesezeichen