Hallo i_make_it,
wenn gewollt dann kann ich auch noch die Quellen angeben, wo ich diese codes gefunden habe.
Blinken, ist bereits mit den sek. der Uhr abgestimmt, der code ist con hier
	Code:
	#define F_CPU 1000000UL		
#include <avr/io.h>
#include <util/delay.h>
int main(void) {
	DDRD = (1 << PD5);
	// Endlosschleife
	for (;;) {
		PORTD |= (1 << PD5);  // bit im Portregister auf 1 setzen => LED leuchtet
		_delay_ms(1034);    // eine halbe Sekunde warten
		PORTD &= ~(1 << PD5); // bit im Portregister auf 0 setzen => LED aus
		_delay_ms(1034);    // eine halbe Sekunde warten
	}
		}
 das anschalten der LED hatte ich bereis auf einen taster reduziert. der code kommt von hier
	Code:
	#include <avr/io.h>
int main(void) {
  DDRD  = 0b01100000;
  PORTD = 0x00;
  short led1 = 0;
  while(1) {
		if(PIND & ((1 << PD2))) {
		// irgendein Taster gedrückt
        if(PIND & (1 << PD2)) {
          // Taster 1 gedrückt → LED1 in Warteschlange setzen
          led1 = 1;
        }
      
    }
    else {
      // kein Taster gedrückt → Warteschlange abarbeiten
      if(led1 == 1) {         // LED1 in Warteschlange
        led1 = 0;             // LED1 aus Warteschlange herausnehmen
        PORTD ^= (1 << PD5);  // XOR an PD5 anwenden: 1 wenn bisher 0, 0 wenn bisher 1
     // }
    }
  }
  }
  return 0;
}
 ich hoffe das hilft weiter
						
					
Lesezeichen