Das mit den MUX Bits kann man sich ganz einfach merken. Vergiss die
Bitnamen und sieh die 5 MUX-Bitstellen einfach als Binärzahl an. Die
Binärzahl ist die Nummer des Kanals. Sind die 5 Stellen also eine binäre
0, dann wandelt der ADC vom Kanal 0, welcher eben am PA0 hängt.
Sind diese 5 Bits eine binäre 1 (also 00001), dann hängt der ADC am PA1.
Steht in den 5 Bits eine binäre 2, dann hängt der ADC an PA2, etc. etc.
D.h. im Grunde ist diese Schreibweise
1 | ADMUX |= (1 << REFS0) | (1 << REFS1) | (1 << ADLAR) | (Kanal & 0x1F);
|
besser, wobei Kanal dann einfach nur eine Zahl von 0 bis 31 ist. Eben
genau die Kanalnummer, die der Tabelle im Datenblatt entspricht. Im
Speziellen heisst das, dass zb mit einem Wert von zb 5 in Kanal, der ADC
von PA5 wegwandelt. D.h. bei den wichtigen single ended Modi hast du
eine direkte Entsprechung der Zahlen von 0 bis 7 zu den entsprechenden
Pins am Port A.