Interrupt WinAVR Problem

Gast #263816
Lesenswert?

Hallo,

ich probiere gerade alle möglichen Interrupts des AT90s4433 mit WinAVR
aus. Leider klappts mit dem UART Rx Interrupt nicht.
Mein Programm soll ganz einfach sein:
Sobald ich mit einem Terminalprogramm eine Zahl sende, soll diese an
den Lampen des PORTBs ausgegeben werden. (Verwende das STK500.)

Folgendes habe ich gemacht:
PORTB auf Ausgabe gestellt (DDRB=0xFF).
RXIE, RXCIE, TXCIE im UCSRB Register angeschaltet.
Die Baudrate auf 38000 in UBRR eingestellt.
Die globalen Interrupts mittels sei() freigeschaltet.
Als Interruptvektor habe ich SIG_UART_RECV gewählt.

Leider funktioniert es nicht.
Könnte mir jemand vielleicht sagen, was ich falsch gemacht habe bzw.
vergessen?

Vielen Dank
Angehängte Dateien:
Gast #263818
Lesenswert?

Das ich 38000 geschrieben habe, war ein versehen, es ist natürlich
38400.
Das alle Lampen leuchten weiß ich, ist ja soweit egal. Sobald eine Zahl
gesendet wird ändert sich ja was an den Lampen.

Habe die Baudrate jetzt zuerst eingestellt, leider ohne Veränderung am
Problem.
Gast #263819
Lesenswert?

Hey, jetzt klappts doch. War ein kleiner Fehler beim Aufspielen des
Programms.

Eine Frage hätte ich allerdings noch.

Ich weiß wofür SIG_UART_RECV und SIG_UART_TRANS vorhanden ist. Aber bei
SIG_UART_DATA....wofür ist das? Andere Programme, z.B. Codevision
verwenden auch nur 2 Typen Interrupt.

Danke

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