Atmega168 ADC lässt sich nicht starten

Gast #2163865
Lesenswert?

Hallo,

ich hab da ein merkwürdiges Problem.
Ich möchte den ADC des Atmega168 über das Bit ADSC, aber leider wird bei 
meiner Programmierung nicht Bit6 sondern Bit1 (ADPS1) vom ADCSRA 
Register auf 1 gesetzt. Habs mir im Simulator (AVR Studio) angeschaut 
und kanns mir nicht erklären.

im temp steht 0x85, dann wird angeblich ADSC gesetzt, danach seht 0x87 
drin, sehr komisch

Hab auch spassenshalber mal Bit 1 gesetzt um zu Schauen ob es da 
umgedreht ist, aber da kommt auch 0x87, is ja uch richtig so.

;Initialisierung
ldi     temp, (1<<REFS0) | (1<<MUX1) | (1<<MUX2)
sts     ADMUX, temp
ldi     temp, (1<<ADEN) | (1<<ADPS2) | (1<<ADPS0)
sts     ADCSRA, temp

;ADC Starten
lds temp, ADCSRA
sbr temp, ADSC
sts ADCSRA, temp

sbi funktioniert nicht wegen der Out of range Geschichte.

Habt ihr ne Idee?

Gruß
Gast #2163995
Lesenswert?

Noch nen Frage zu den ADC Eingängen.

Ich benutze PC0-PC5 als digitale Eingänge und hab nun PC6 als ADC (was 
anderes kanner ja auch nicht) in Verwendung. Was geschieht wenn ich über 
"in temp, PINC" die Eingänge von PortC einlese?

Was steht in temp wenn an PC0-PC5 ne 1 ansteht am ADC nen Spannungn von 
5 V liegt. Beinflusst der ADC den Inhalt von PINC oder ist der ADC-Pin 
ausgeblendet?

Gruß
Gast #2164014
Lesenswert?

Hi

>Ich benutze PC0-PC5 als digitale Eingänge und hab nun PC6 als ADC (was
>anderes kanner ja auch nicht) in Verwendung. Was geschieht wenn ich über
>"in temp, PINC" die Eingänge von PortC einlese?

PC6 ist kein ADC-Eingang. Ohne gesetzte RSTDISBL-Fuse ist das der 
Reset-Eingang. ADC6/7 gibt es nur beim 32pol. TQFP/MLF-Gehäuse.

MfG Spess
Gast #2164040
Lesenswert?

>sADC6/7 gibt es nur beim 32pol. TQFP/MLF-Gehäuse.

Naja, was meinst Du warum ich danach frage. ;-)

Also, kann der Wert von PINC größer werden als 0x3F wenn an ADC6 oder 
ADC7 was dran ist oder nicht?

Gruß

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren