Hallo zusammen,
Ich möchte einen UART Interrupt für meinen rnmega2560 programmieren.
Ich habe bisher mit einem Atmega8 auf einem myAVR MK2 programmiert,
da funktioniert folgender Code ohne Probleme:
Nach einiger Recherche müsste der Code eigentlich so an den Atmega2560 angepasst werden:Code:$regfile = "m8def.dat" $crystal = 3686400 $baud = 19200 On Urxc Datenabruf Enable Urxc Enable Interrupts Config Pind.5 = Output Led Alias Portd.5 Dim B As String * 20 Wait 1 Print "Start" Do Print "test" Toggle Led Waitms 500 Loop End Datenabruf: Input B Waitms 200 Print B Return
Jetzt hab ich ich schon "On Urxc" mit verschiedenen Zahlen ausprobiert, brachte aber kein Ergebnis.Code:$regfile = "m2560def.dat" $crystal = 16000000 $baud = 19200 On Urxc2 Datenabruf Enable Urxc2 Enable Interrupts Config Pind.5 = Output Led Alias Portd.5 Config Com2 = 19200 , Synchrone = 0 , Parity = None , Stopbits = 1 , Databits = 8 , Clockpol = 0 Open "com2:" For Binary As #2 Dim B As String * 20 Wait 1 Print #2 , "Start" Do Print #2 , "test" Toggle Led Waitms 500 Loop End Datenabruf: Input #2 , B Waitms 200 Print #2 , B Return
Wenn ich in die Hauptschleife ein "Waitkey(#2)" einfüge, empfängt der µC auch die Daten springt aber nicht
in die Interrupt Routine. Für das eigentliche Programm brauche ich aber die Interrupt Routine.
Die Verbindung an sich funktioniert also, Senden und Empfangen funktioniert. Daher schließe ich einen
Hardware Fehler eigentlich aus.
Hat einer vlt. ne Idee was ich falsch mache oder wo ich einen Fehler gemacht habe?
Danke schon mal für eure Hilfe
Gruß
Curzon161







Zitieren

Lesezeichen