Hi,

welche Compiler Version benutzt du?

Ich habe es gerade mit WinAVR-20071221 compiliert und ich bekomme nur diese Warnung:

../interrupts.c: In function `long_delay':
../interrupts.c:16: warning: statement with no effect

Die kommt daher, dass in der for-Schleife nur i; und nicht i = 0; steht.

Zitat Zitat von Ceos
../interrupts.c:16: warning: statement with no effect

das inkrementierender variable b , bzw. die variable b in dem kontext hat keine wirkung , nimm sie einfach raus
Das stimmt so nicht, ich stimme zwar zu, dass b keine Wrikung hier hat, aber diese Zeile produziert keine Warnung... (Die Nummerierung stimmt nicht mit dem geposteten Code überein...)

Ich bekomme allerdings bei Optimierung O0 den Hinweis, dass die delay-Funktionen nur richtig funktionieren ab O1 ! (und dass man util/delay.h benutzen soll).

Irgendwie erkennt er bei dir ISR nicht richtig an. Er denkt dies wäre eine Funktion mit dem Namen ISR....

EDIT: Vielleicht hast du eine falsche/alte interrupt.h, und darin gibt es kein ISR(...)