UART AT90CAN128 Senden

OP #2617669
Lesenswert?

Hallo Leute,

ich sitz grad vor einem Problem. Ich hatte eine UART Verbindung 
erfolgreich eingerichtet, und alles lief in meinem Programm. Jetzt hab 
ich noch weiter programmiert und komischerweise geht es nicht mehr über 
den Interrupt.

Damit ich Fehlerquellen einschränken kann, hab ich ein neues Programm 
mit der UART Schnittstelle geschrieben. Und siehe da, hier funktioniert 
es auch nicht mehr. Es geht übrigens ums senden der Daten über den 
Interrupt. Wenn ich direkt eine Zeichen schreibe, wird dieses auch auf 
dem PC dargestellt (Software: mttty).

Es hat ja auch schon funktioniert, vielleicht seh ich den Wald vor 
lauter Bäumen nicht mehr. Hab den Quellcode des Testprogrammes 
angehangen.

Programmieren tue ich über einen JTAGer (JTAG ICE) mit AVR4.19.

Compilieren über AVR5.

Chip: AT90CAN128


Hoffe jemand sieht den Fehler. Bin ratlos.

Kann eine falsche Fuse-Einstellung schuld sein. Ich werd gleich nochmal 
ein Bild davon machen.
Angehängte Dateien:
OP #2617697
Lesenswert?

Du meinst diese Zeile?

while ( !(UCSR0A & (1<< UDRE0)) );

hab ich jetzt noch davor gesetzt. Aber kommt das gleiche bei rum.

Durch das hinzufügen der Zeile, geht es wenigstens immer, das das richte 
Zeichen 'B' angezeigt wird.

Ein Testprogramm von der Homepage (OLIMEX) läuft auch einwandfrei, 
jedoch werden hier keine Interrupts benutzt. Also muss der Fehler ja 
dort liegen, aber ich seh einfach nicht wo.

Die ISR(....) müsste es wohl sein, aber da steht laut Internet das 
richtige drin und es lief ja auch schon alles mal.
OP #2617712
Lesenswert?

Ist ja nur nen Test gewesen, ich hab das aus der main schon entfernt, 
sollte nur verbildlichen, das es dort funktioniert und im ISR nicht.

Das muss ich mir eben mal im Datenblatt anschauen.

Komisch, dass das alles schon ging. Da hatte ich aber 
ISR(SIG_UART0_TRANS) benutzt.

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