Lösung: Arduino UNO Zähler
C-Quelltext:
#define F_CPU 16000000UL
#include <avr/io.h>
#include <util/delay.h>
#include <stdint.h>
int main(void)
{
DDRD |= 0b11111111;
uint8_t zaehler=0;
while (1)
{
zaehler++;
PORTD = zaehler;
_delay_ms(500);
}
}
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
#include <util/delay.h>: Standard-Integer Bibliothek einbinden
main() Funktion
DDRD |= 0b11111111;
PortD als Ausgang definieren. Alle Pins sollen als Ausgang fungieren.
uint8_t zaehler=0;
Variable zaehler als uint8_t deklarieren und mit 0 initialisieren.
Hauptschleife
-
zaehler hochzählen
-
zaehler an PortD ausgeben
-
500 ms warten.
|