Header Background
 
 
 
Alle Hersteller anzeigen
 
 

Firmware-Entwicklung für Hardware Entwickler

Seminardauer: 4 Tage

Ziele der Schulung

In dieser 4-tägigen Schulung "Firmware-Entwicklung für Hardware Entwickler" lernen Sie Konzepte modernen Software-Engineerings. Sie sind in der Lage, gut les- und wartbaren Code zu schreiben. Sie können mit Versionierungssystemen umgehen und gute commit messages schreiben. Sie verstehen die grundlegenden Bausteine eines Mikrocontrollers sowie die Besonderheiten in der Firmware-Entwicklung und können Firmware für Mikrocontroller in C programmieren und debuggen.

Zielgruppe Seminar

  • Hardware-Entwickler

Voraussetzungen

  • Erfahrungen in der Hardware-Entwicklung
  • Grundlagen Programmierung

Lernmethodik

Die Schulung bietet Ihnen eine ausgewogene Mischung aus Theorie und Praxis in einer erstklassigen Lernumgebung. Profitieren Sie vom direkten Austausch mit unseren projekterfahrenen Trainern und anderen Teilnehmern, um Ihren Lernerfolg zu maximieren.

Der Kurs startet mit einem Theorieteil zu Grundlagen der Software-Entwicklung. Die folgenden Teile des Kurses werden durch laufende Übungen begleitet, in welchen die TeilnehmerInnen das gelernte Wissen in der Praxis vertiefen können. Grundlage ist dabei ein STM32F4 Mikrocontroller.

Seminarinhalt

Grundlagen Software-Entwicklung

  • Abstraktion
  • Data & Implementation Hiding
  • APIs
  • Clean code
  • Firmware-Testing
    • Unit Tests
    • Hardware in the loop tests
    • CI/CD
    • Testdriven development
  • Grundlagen der Software-Architektur
  • Grundlagen Versionierung und Repositories

Die Programmiersprache C

  • Grundlagen
  • Besonderheiten im Embedded Bereich
  • Übungen am PC

Grundlagen Mikrocontroller

  • Was ist ein Mikrocontroller?
  • Adressraum eines Mikrocontrollers & memory mapped peripherals
  • GPIOs
  • SWD / JTAG und Kontroller flashen

Übung Board bring up und LED blinken lassen

  • Mikrocontroller Dokumentation: Was findet sich wo?
  • Clean code Praktiken in der Anwendung
  • STM32CubeIDE & STM32CubeMX
  • Firmware debuggen
  • Bin, hex & elf Dateien: Was ist was und Unterschiede

Versionierungssystem benutzen und Schreiben guter commit messages

  • Grundkonzepte von Versionierungssystemen
  • Gängige Versionierungssysteme und ihre Unterschiede
  • Schreiben guter commit messages
  • Praktische Übung: LED dimmen via PWM
    Es wird eine kleine Firmware geschrieben, welche eine LED via PWM dimmt.
    Dabei werden fortwährend Anforderungsänderungen eingebracht, anhand derer
    die Verwendung eines Versionierungssystems geübt werden kann.

Ein C Modul entwickeln mit sauberer Abstraktion

  • Theorieteil
    • Data- & Implementation hiding in C
    • API Design
    • Dependency injection
  • Praktische Übung: Logging über UART
    Es wird ein Modul geschrieben, welches Log-Nachrichten über eine UART
    Schnittstelle versenden kann. Dabei wird das gelernte aus dem Theorieteil
    angewendet und vertieft.

Objektorientierte Programmierung in C

  • Theorieteil
    • Objektorientiert Programmieren in einer nicht-objektorientierten Sprache: Geht das?
    • Interface & Implementation Inheritance mit Funktionszeigern
    • Mögliche Probleme bei objektorientierter Programmierung in C
  • Praktische Übung: externen Bausteine via SPI oder I2C anbinden
    Das Gelernte wird vertieft, in dem ein Treiber für einen externen Baustein
    geschrieben wird, der sowohl über SPI als auch über I2C angesprochen werden
    kann.

ADC, DAC & DMA

  • Theorieteil
    • Welche unterschiedlichen Möglichkeiten gibt es auf ADC & DAC zuzugreifen?
    • Welche Vor- und Nachteile gibt es dabei?
    • Interrupts und reentrance Probleme
    • Stolpersteine bei der Verwendung von DMA
  • Praktische Übung: Soundeffekt
    Das Gelernte wird vertieft, in dem eine kleine Firmware geschrieben wird,
    die über das Mikrofon des Evalboards eine Sprachnotiz aufnimmt und
    mit Effekt wiedergibt.

Theorie: Daten persistent in EEPROM / FLASH speichern

  • Welche Daten (Kundenparameter, Produktionsparameter, Firmware) sollten wo abgespeichert werden?
  • Welche Patterns und Probleme gibt es dabei?
  • Kleine Einführung in das Thema Bootloader

Firmware Architecture Grundlagen: bare metal vs. RTOS

  • Grundkonzepte von RTOS
  • Übersicht und Vergleich gängiger RTOS
  • Vorteile und Nachteile beider Varianten
  • Wann empfiehlt sich bare metal, wann RTOS

Advanced debugging

  • Logging, asseertions & co
  • Timing-Verhalten debuggen
  • Exceptions debuggen
  • Stack overflows
  • Linker map file als Hilfe beim debuggen & optimieren
  • Assembly lesen

Open Badge für dieses Seminar - Ihr digitaler Kompetenznachweis

Digital Skills Open Badges

Durch die erfolgreiche Teilnahme an einem Kurs bei IT-Schulungen.com erhalten Sie zusätzlich zu Ihrem Teilnehmerzertifikat ein digitales Open Badge (Zertifikat) – Ihren modernen Nachweis für erworbene Kompetenzen.

Ihr Open Badge ist jederzeit in Ihrem persönlichen und kostenfreien Mein IT-Schulungen.com-Konto verfügbar. Mit wenigen Klicks können Sie diesen digitalen Nachweis in sozialen Netzwerken teilen, um Ihre Expertise sichtbar zu machen und Ihr berufliches Profil gezielt zu stärken.

Übersicht: Embedded Systems Schulungen Portfolio

Mehr zu den Vorteilen von Badges

Seminare kurz vor der Durchführung

       
27.04. - 30.04.2026 Hamburg Anfragen
05.05. - 08.05.2026 Köln Anfragen
09.06. - 12.06.2026 Köln Anfragen
20.07. - 23.07.2026 Nürnberg Anfragen
 
1.) Wählen Sie den Seminartyp:


2.) Wählen Sie Ort und Datum:
2.295,00 € Preis pro Personspacing line2.731,05 € inkl. 19% MwSt
all incl.
zzgl. Verpflegung 30,00 €/Tag bei Präsenz

Anfragen Buchen Merkzettel
 
Diese Seite weiterempfehlen:
0
Merkzettel öffnen
0
Besuchsverlauf ansehen
IT-Schulungen.com Control Panel