Lösung: Arduino UNO Blink

C-Quelltext:

#define F_CPU 16000000UL
		
#include <avr/io.h>
#include <util/delay.h>


int main(void)
{
    DDRB |= 0b00100000;		// Interne LED an PB5
    while (1) 
    {
	PORTB |= 0b00100000;	// PB5 an
	_delay_ms(2000);
	PORTB &= ~0b00100000;	// PB5 aus
	_delay_ms(1000);
    }
}

Quelltext: Erklärung

Compiler-Direktiven

#define

#define F_CPU 16000000UL: Festlegen der CPU-Arbeitsfrequenz auf 16 Mhz

#include

#include <avr/io.h>: AVR-I/O Bibliothek einbinden

#include <util/delay.h>: Delay Bibliothek einbinden

main() Funktion

Da am PortB auch Sonderfunktionen möglich sind, empfiehlt es sich mit Bitmasken zu arbeiten.