Überblick über die Arduino-Umgebung
Die Arduino-IDE vereinfacht den Beginn der MC-Programmierung deutlich. Man kommt recht schnell zu lauffähigen Programmen. Viele Low-Level-Arbeiten werden abstrahiert. Da ein Verständnis der Low-Level-Funktionalität aber bei bestimmten Problemen erforderlich ist, werden diese Schritt für Schritt im Laufe des Vorlesungsmoduls eingeführt, ohne am Anfang zu einer Überforderung zu führen.
Vorteile
- Arbeiten auf einen höheren Abstraktionslevel als bei einer traditionellen MC-Programmierung
- einheitliche Programmieroberfläche für verschiedene Plattformen
- Abstraktion des Workflows (Compilieren, Linken, Flashen)
- einheitliche Nutzung von Ressourcen bei verschiedenen MC-Boards (Pins, Schnittstellen, etc.)
- Abstraktion von Low-Level-Befehlen (Pins, Serielle Schnittstelle, Interrupts, etc.)
- Output-Modus:
DDRB |= _BV(DDB5);
→pinMode(LED_BUILTIN, OUTPUT);
- Pin setzen:
PORTB |= _BV(PORTB5;
⇨digitalWrite(LED_BUILTIN, HIGH);
- Output-Modus:
- große Anzahl an einsatzfertigen Bibliotheken und Ressourcen
- verschiedene MC-Boards mit angepasstem Bootloader und Programmierung über USB (kein Programmer zwingend notwendig)
- viele Erweiterungsboards für den UNO-Formfaktor verfügbar
- große Entwicklergemeinschaft
Nachteile
- IDE relativ spartanisch (es können aber alternative IDEs genutzt werden)
- Interna werden in manchen Anwendungsfällen zu stark abstrahiert
- für professionelle Entwicklungen eher ungeeignet, eher Proof of Concept
Verständnisfragen
- Was bedeutet Harvard-Architektur? Wie sind die verwendeten AVRs aufgebaut?
- Gibt es einen Multiplizierer und eine Gleitkommaverarbeitung im MC?
- Welche Einheiten sind neben der ALU in dem verwendeten MC vorhanden?
- Welchen Wert hat die maximale Taktfrequenz des verwendeten MCs?
- Was bedeutet “Fully Static Operation”?
- Wieviel Schreibzyklen und welche Zeitspanne des Datenerhalts werden für den internen Flash garantiert?
- Welche Möglichkeiten der Programmierung gibt es für den verwendeten MC?
- Was ist ein Bootloader?
- In welchem Bereich liegt die erlaubte Betriebsspannung?
Aufgaben
- Konfiguration der Arduino-IDE
- File –> Preferences –> Show verbose output –> jeweils einschalten
- Inbetriebnahme des Arduino
- Prüfen Sie anhand des Schaltplans zum verwendeten Board, ob die Stromversorgung verpolungssicher ist.
- Programm erstellen, welches pro Sekunde einen aufsteigenden Zahlenwert über die serielle Schnittstelle ausgibt
- Anzeige der empfangenen Daten über Button Serial Monitor (rechts oben)
- Ermitteln Sie den Port der eingebauten LED und lassen Sie diese periodisch blinken!
Ressourcen
Konfiguration der Linux-PCs
Schritte zur Konfiguration der Arduino-IDE im Labor
Optional
Es besteht auch die Möglichkeit, den Browser als IDE zu nutzen. Dann ist allerdings ein Hilfsprogramm notwendig.
Fehlerbehebung
Letzte Änderung: 13. June 2024 10:44