Hallo
Also langsam stehts mir ja schon bis oben...
Wieso bringt mein Mega32 es eigentlich nicht fertig diesen Code korrekt auszuführen???
Code:
$regfile = "m32def.dat"
$crystal = 11059200
Ddrc = &B00000000
Ddrd = &B00111100
Do
If Pinc.2 = 1 Then
Portd.4 = 1
Waitms 3000
End If
Loop
End
Was ist denn daran bitte falsch???
Bei meinem Mega 8 habe ich einen äquivalenten Code gemacht, der hier zu sehen ist:
Code:
$regfile = "m8def.dat"
$crystal = 3686411
Ddrc = &B00000000
Ddrd = &B11110000
Do
If Pinc.1 = 1 Then
Portd.4 = 1
Waitms 500
End If
Loop
End
Bei meinem Mega8 funktioniert dieser Code wunderbar, wieso zickt dann mein Mega32 so rum?
Kurz zur Sachlage: Beide Megas erhalten von einem OP Amp ein Eingangssignal, das entweder 1 oder 0 ist. Der AVR soll daraufhin die If-Schleife ausführen. Wie gesagt, mein Mega8 hat damit kein Problem aber bei meinem Mega32 ist der Pin D4, der erst auf 1 gehen dürfte wenn Pin C2 auf 1 ist immer auf 1. Ganz egal wie man den Zustand an PC2 auch dreht und wendet. Wieso???
JTAG hab ich bereits deaktiviert.
Bei der 0 am Eingangspin PC2 messe ich zwar immer noch 0,66V aber man sagte mir dass der AVR das trotzdem als 0 erkennt. Nungut.
Die 1 ist sauber hochgezogen auf ca. 4,9V.
Lesezeichen