Problem mit Analog Comparator, arbeitet nicht atmega32,

OP #2288071
Lesenswert?

Hi,

ich programmiere erst seit einer Woche und stehe mal wieder vor einem 
Problem. Ich will ein kleines Programm schreiben um den Analog 
Comparator zu testen, benutze den Atmega32 und ein STK500 Board, habe 
ein Poti zwischen Pin19 (VTG) und PIN1 (GND) hängen mit dem 
Mittelabgriff an PIN27 (PB3/AIN1), mit dem ich meine IST-Spannung 
einstellen kann. Meine SOLL-Spannung ist die interne Referenzspannung 
(ca. 1,3V laut Datenblatt).
Das Programm habe ich als Anhang beigefügt.
Die LEDs gehen für 2s an, dann wieder aus, soweit ok. Nur bleiben sie 
dann aus und es passiert nichts mehr.
Wäre echt super wenn mir jemand helfen könnte.

Mfg

Benni
Angehängte Dateien:
Gast #2288082
Lesenswert?

Ohne jetzt ins Datenblatt geschaut zu haben, aber ich denke, du 
aktivierst den AC schon nicht richtig:

ACSR &= 0<<ACD;      //AC aktivieren

Im Tutorial zu lesen ist:
 x |= (1 << Bitnummer);  // Hiermit wird ein Bit in x gesetzt
 x &= ~(1 << Bitnummer); // Hiermit wird ein Bit in x geloescht

Es müsste daher heißen, um das ACD Bit in ACSR zu setzen:

ACSR |= (1 << ACD);

Auch die nächsten Zeilen sollten diesbezüglich überarbeitet werden.

Viele Grüße
Michael
Gast #2288102
Lesenswert?

Hi

>ACSR |= (1 << ACD);

Im Gegensatz zu anderen Bits schaltet diese Zeile den Comparator ab:

 ACD: Analog Comparator Disable

Mir kommen allerdings diese Zeilen komisch vor:

if (ACO == 0)
else if (ACO == 1)

ACO steht eigentlich nur für eine Bitposition. In dem Fall 5.

MfG Spess
OP #2288134
Lesenswert?

So habe nun den neuen Code angehängt. Programm funktioniert nun 
teilweise.
Habe die Abfrage geändert, frage nun das Register ACSR ab. Was ich nicht 
verstehe ist folgendes:
1. Wenn ich im laufenden Betrieb das Poti verändere, ändern sich die 
LEDs nicht. Dazu muss ich immer erst resetten.
2. Wenn eine Spannung zw. 0,4 und 2,3 Volt an AIN1 anliegt leuchtet gar 
keine LED, bei Werten unter 0,4V und über 2,3V funktioniert es.
Hat jemand eine Ahnung woran das liegt?
Angehängte Dateien:

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