Hallo Sebastian!
Warum braucht der Compiler denn eine Leerzeile? ;o)die erste Warnung ist wohl klar, oder ?
Nagut, das ist jetzt geklärt!
Das ist von http://www.kreatives-chaos.com/index.php?seite=avr_b .und für die zweite,postest Du am besten Dein Programm.
Möchte der Compiler, dass ich dem Markierten (>>> unsigned char i; <<<) erst einen Wert zuweise, oder einfach nur, dass ich es hinter das Init(); stelle?
Code:#include <avr/io.h> #define SYSCLK 7372800 void init(void); void delay_ms(unsigned int ms); int main(void) { >>> unsigned char i; <<< init(); // Endlosschleife while (1) { PORTB = i; i++; delay_ms(1000); } return 0; } // Initialisierung void init(void) { DDRB = 0xff; // PortB als Ausgang deklarieren PORTB = 0x00; // Ports auf LOW schalten } // Delay Routine void delay_ms(unsigned int ms) { unsigned int zaehler; while (ms) { zaehler = SYSCLK / 5000; while (zaehler) { asm volatile ("nop"); zaehler--; } ms--; } }







Zitieren

Lesezeichen