Ich habe angefangen einen Mega32 mit AVR Studio (mit GCC), AVRISP mkII und Pollinboard zu programmieren.

Jetzt möchte ich erstmal eine LED blinken lassen.
Die LED geht an, kurze Zeit später wieder aus und dann passiert nix mehr.

So sieht mein Programm aus:
Code:
#include <avr/io.h>
#ifndef F_CPU
#define F_CPU 16000000UL
#endif
#include <util/delay.h>

int main (void) {

	DDRD = 0x00;
	DDRD = (1 << DDD5) | (1 << DDD6) | (1 << DDD7);
	PORTD |= (1<<DDD2) | (1 << DDD3) | (1 << DDD4);

	PORTD |= (1<<PD5);
	_delay_ms(16);


	PORTD &= (1<<PD5);
	_delay_ms(16);


	return 0;
}
Wo ist der fehler?
Sollte es nicht durch das return zurückspringen?
Oder muss ich dafür eine Schleife und einen Timer nehmen?

LG
Teri