Embedded C: Programmiermethoden und -tools für Embedded-Anwendungen (Seminar)
Datum:
20.07.2026 - 23.07.2026
Veranstaltungsort:
München, MicroConsult Academy
Beschreibung:
MicroConsult Academy GmbH
Einführung
ANSI-C
Embedded-Systeme und ihre Eigenheiten
Software-Toolkette
Software-Architektur
Debug-Features und Bugs
Programmiersprache C für Embedded
Hardwarenahes Programmieren
Datentypen
Pointer, Funktionspointer
Strukturen, verkettete Listen
Ringpuffer (circular buffer), Warteschlange (queue), FIFO, LIFO
Programmierregeln und -richtlinien
Fallstricke und Stolpersteine in C
Treiberprogrammierung
Auswahl einer geeigneten SW-Architektur
HW-Abstraktion, objektbasiertes Programmieren
Zugriff auf Hardewareregister aus "C"
Interfaces, Callback Interfaces, Queues
Interrupt-Behandlung/-Serviceroutine, Callback-Funktion
Übungen: Timer-Hardwareabstraktion plus Callback
Anwendung von Pointern, Funktionspointern und verketteten Listen
Programmbeispiel eines Schedulers
Taskverwaltung mit verketteten Listen
Übungen: Programmierung einer Taskverwaltung
Real-Time Operating Systeme (RTOS) im Überblick
Typen, Funktionen, Auswahlkriterien
Arbeitsweise und Programmierung eines Schedulers
Übung: Taskwechsel
Bibliotheksmanagement
Anpassung von Standard-Bibliotheksfunktionen an die Hardware
Generierung und Verwaltung von User-Bibliotheken
Übung: Kreieren und Einbinden einer Bibliothek
Lokatieren von Code und Daten im (µC-) Speicher (Flash-, RAM-Adressraum)
Logische Sektionen (.text, .data, .bss) im Buildprozess
Lade,- und Ausführungsadressen
Steuern des Linkers über Kommandodateien
Zustandsautomaten (Finite State Machines, FSM)
Beschreibung und Darstellungsvarianten
Philosophie und Realisierung einer FSM in C
Übungen: Programmieren einer Ampelsteuerung
Verschiedene Aspekte des Embedded Software Engineering
Software-Qualitätskriterien
Software-Entwicklungsprozessmodelle (Wasserfall, V, agil)
Funktionale Sicherheit
Anforderungsmanagement (Requirements Engineering)
Verifikation und Test
Reifegradmodelle
Ausblick OOP-Techniken
Vorteile und Herausforderungen der objektorientierten Programmierung
UML-Diagramme
Kodierrichtlinien
Sinn und Zweck
MISRA-C Direktiven und Regeln
MicroConsult Plus: Umfangreiche Übungen auf einer Zielhardware
Die Übungen werden mit der Keil µVision IDE und Arm-Compiler auf einer M0-basierten 32-Bit Hardwareplattform ausgeführt und getestet.
HINWEIS: Die Kursunterlagen sind auf Englisch