error wegen interrupt-routine

Gast #359905
Lesenswert?

Hallo,

nachdem ich hier schon soviele meiner Probleme gelöst bekommen habe,
möchte ichs auch diesmal probieren.

Ich schreibe gerade an einem sehr einfachen Programm für einen
at90s2313 und habe mit der Routine:

31  ISR(TIMER0_OVF0_vect)
32  {
33    i++;
34  }

den Überlauf des TIMER0 gezählt.

Jetzt das seltsame:
Das Programm lief bereits, bis ich die gesammte Routine für den
externen Intrrup0 raus gelöscht habe. Sonst nichts.
Jetzt sag mein compiler allerdings :

main.c:31: error: two or more data types in declaration of
`__vector_6'

ich habe leider keine Idee woran das liegen kann.

Wäre wirklich super wenn mir jemand weiterhelfen könnte.

Vielen Dank im vorraus,
Ignaz
Gast #359909
Lesenswert?

@inoffizieller WM-Rahul:
Der Vektor ist schon richtig geschrieben. Hatte mich da auch schon mal
gewundert, aber die erstaunliche 0 hinter dem OVF steht tatsächlich so
in der Header-Datei.

@Ignaz:
Wenn Du hier schon öfter Hilfe bekommen hast, müsstest Du eigentlich
wissen, dass Dir ohne einen einigermaßen kompletten Code i.d.R. nicht
geholfen werden kann! Ich vermute nämlich eher, dass der eigentliche
Fehler nicht in der besagten Zeile liegt, sondern davor, weil Du auch
sagst, Du hättest was gelöscht.
Gast #359910
Lesenswert?

Dank für di schnell antwort.

@ WM-Rahul

Den Namen habe ich aus der Headerdatei raus kopiert.(io2313.h):


/* Timer/Counter1 Overflow */
#define TIMER1_OVF1_vect    _VECTOR(5)
#define SIG_OVERFLOW1      _VECTOR(5)

/* Timer/Counter0 Overflow */
#define TIMER0_OVF0_vect    _VECTOR(6)
#define SIG_OVERFLOW0      _VECTOR(6)

/* UART, Rx Complete */
#define UART_RX_vect      _VECTOR(7)
#define SIG_UART_RECV      _VECTOR(7)

Außerdem hat das programm ja schon mit dieser Codestelle funktioniert
und auch wunderbar gezählt, ich habe ledigleích code entfernt den ich
eh "aus-kommentiert" hatte

Ignaz

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