Hallo
"Admux = &B01100000 'Bits7+6=01: Aref ist intern verbunden
? 'Bit5=1: LeftAdjust, nur 8 Bit in ADCH „WAS muss ich hier..."
Bit 5 (ADLAR) muss 0 sein. Dann wird das Ergebniss der Wandlung in den Bits 0 bis 9 gespeichert. Beschreibung von Bit5 im Datenblatt:
• Bit 5 – ADLAR: ADC Left Adjust Result
The ADLAR bit affects the presentation of the ADC conversion result in the ADC Data
Register. Write one to ADLAR to left adjust the result. Otherwise, the result is right
adjusted. Changing the ADLAR bit will affect the ADC Data Register immediately,
regardless of any ongoing conversions. For a complete description of this bit, see “The
ADC Data Register – ADCL and ADCH” on page 208.
Aber möglicherweise habe ich deine Frage falsch verstanden:
"Aber ich bekomme immer nur eine zweistellige hex raus."
Mehr kann auch in ADCH nicht drinstehen. Die drei Hexstellen sind auf ADCH und ADCL verteilt. Eine Hexziffer representiert genau 4 Bits, auch ein Nibble genannt. Die Bits 0-3 sind das Lownibble, Bits 4-7 das Highnibble. Beide zusammen bilden das Byte welches jeweils in ADCH und ADCL gespeichert werden kann. ADCH und ADCL zusammen bilden dann die 16 Bits in die das Ergebniss der Wandlung gespeichert wird. Mit ADLAR = 0 wird das Ergebniss rechtsbündig in die Bits 0-9 in ADC (=ADCH und ADCL zusammen) kopiert, bei ADLAR = 1 in die Bits 6 bis 15 von ADC:
Code:
1111 11
5432 1098 7654 3210
HHHH HHHH LLLL LLLL | ADC
xxxx xx98 7654 3210 | ADLAR = 0
9876 5432 10xx xxxx | ADLAR = 1
Gruß
mic
Lesezeichen