Forum: Compiler & IDEs Interrupt bei ATmega16


von Thorsten Stahl (Gast)


Angehängte Dateien:

Lesenswert?

Hallo zusammen.

Ich hab ein Problem mit den Interruptvektoren. Wenn ich das Programm in
AVRStudio debugge, lande es zwar im richtigen I-Vector (0x0C) aber dann
springe es nicht in SIGNAL (SIG_OUTPUT_COMPARE1A).

Hab ich irgendwas vergessen?

Danke
Gruß Thorsten

von Joern G. (Gast)


Lesenswert?

Hatte gerade dasselbe Problem.
Dem Compiler ist es merkwürdigerweise egal, was in den Klammern hinter
SIGNAL() steht, ich hatte also dort einen Schreibfehler (USART statt
UART) und daher ging nix. Der Compiler hat es aber trotzdem compiliert
gehabt.
Bei dir sieht es richtig aus. Hast du den AVR richtig ausgewählt im
makefile?

Vielleicht gehört die SIGNAL Funktion nach vorne vor main() - weiß ich
jedoch nicht - nur 'ne Vermutung.

jörn

von Thorsten Stahl (Gast)


Lesenswert?

Hallo jörn,

danke für die Antwort.
Compilieren tu ich mit:
# avr-gcc -mmcu=atmega16 -Wall -gdwarf-2  -c -o int.o int.c
Das ganze habe ich nicht mit WinAvr, sondern mit den GccTools unter
Windows.
Ich weiß immer noch nicht, worans liegt, wahrscheinlich hab ich
irgendeine Compilereinstellung vergessen.

Thorsten

von Joern G. (Gast)


Lesenswert?

Wieso nimmst du nicht winavr?
Ist doch alles sehr gut, problemlos und einfach. Und vermutlich hast du
dann auch nicht Probleme dieser Art.

avr-gcc ruft doch kein Mensch ohne makefile auf.

Und da hat Jörg wirklich mit mfile usw. gute Arbeit geleistet, denn
makefile-Krams einfach zu gestalten.

jörn

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.