PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : SIG Aufruf/Bezeichnung



Mauro
20.05.2010, 11:52
Hallo zusammen,

ich arbeite mit dem AVR Studio und einem ATmega324P-20AU.

Wenn ich jetzt die Interrupts programmiere kommen folgende Fehlermeldungen:

../uart.c:171: warning: 'USART0_RXC' appears to be a misspelled signal handler
../uart.c:278: warning: 'USART1_RXC_vect' appears to be a misspelled signal handler

Wie man sieht habe ich zwei Schreibweisen versucht, einmal mit und einmal ohne _vect. Was ist den da los?

Hier die Zeile im CODE:

ISR(USART0_RXC)
{....}

Vielen Dank für Eure Hinweise.
Grüße,
eMm

Jaecko
20.05.2010, 12:03
Heissen die Vektoren nicht anders?
USART0_RX_vect bzw. SIG_USART0_RECV?

Ansonsten: Ganzen Code zeigen. Es wäre noch eine andere Stelle als Ursache möglich. Obs die ist, ist aber so nur Raterei.

Den anderen identischen Beitrag kannst übrigens wieder löschen:
https://www.roboternetz.de/phpBB2/zeigebeitrag.php?t=54379&highlight=

oberallgeier
20.05.2010, 13:01
... . 'USART1_RXC_vect' appears to be a misspelled signal handler ...
... Wie man sieht habe ich zwei Schreibweisen versucht, einmal mit und einmal ohne _vect ...Versuch macht nicht immer kluch - manchmal hilft ein bisschen nachforschen. In der directory (hier nur Beispiel, die aktuelle WinAVR-Version heisst anders) ...\WinAVR-20090313\avr\include\avr findet man mit der Suchfunktion unter "*324*" die iom324.h. In der steht ziemlich oben: #include <avr/iomxx4.h>. Also weiter in der iomxx4.h nachsehen. Und da findet man dann endlich das:
#define USART0_RX_vect........_VECTOR(20). Mit dieser Taufe ist der Name der Routine eben festgeschrieben *ggg*.

Ein sinngemäss ähnliches Vorgehen macht sich bei Compilerwarnungen öfters bezahlt.

Mauro
20.05.2010, 15:02
Hallo!
Danke für die Mithilfe.
Genau das habe ich rausgefunden und meinen Beitrag mit Lösung ergänzt, nur gespeichert hat er das wohl nicht :-)
Dann weiß die Nachwelt nun Bescheid...
Grüße,
emm