Zum Hauptinhalt springen

Besonderheiten der C++-Embedded-Programmierung

Zielgruppe

Softwareentwickler/innen, die ihre allgemeinen C++-Kenntnisse dahingehend erweitern wollen, dass sie ressourcenschonende und hardwarenahe Anwendungen für Embedded-Systeme entwickeln können.

Vorkenntnisse

Gute Allgemeinkenntnisse der Programmiersprache C++ (C++98/03), wie sie z.B. im Kurs „Objektorientierte Embedded-Programmierung mit C++“ vermittelt werden.

Dauer

2 Tage (mit praktischen Übungen)

Kursziel

Entwickler/innen von Embedded-Software haben typischerweise weniger Speicherplatz- und Laufzeitressourcen zur Verfügung, als das sonst der Fall ist und müssen deshalb sorgsam damit umgehen. Aus diesem Grund geht dieser Kurs sehr genau darauf ein, welche Auswirkungen die objektorientierten Sprachkonstrukte von C++ auf den Ressourcenbedarf eines Programms haben. Die zweite typische Herausforderung für Embedded-Programmierer ist der Umgang mit Hardwarebausteinen. Der Kurs erläutert deshalb, wie Hardwarebausteine grundsätzlich funktionieren und zeigt wie man sie objektorientiert in eine Applikation einbinden und verwenden kann. Die praktischen Übungen dazu werden bei Präsenzkursen auf einer ARM-basierenden Target-Hardware, bei Onlinekursen mithilfe eines entsprechenden Softwareemulators durchgeführt.

Inhalt

Analyse der Sprachmittel

  • Objektmodell
  • Erzeugung und Zerstörung von Objekten
  • Temporäre Objekte
  • Vererbung
  • Virtuelle Funktionen
  • Dynamische Speicherverwaltung

Objektorientierte Abbildung von Hardwarebausteinen

  • Memory mapped I/O / Port mapped I/O
  • Traditionelle Arten des Registerzugriffs
  • Polling und volatile
  • Register als Datenelemente einer Klasse
  • Register als Elemente einer pointeraddressierten Datenstruktur
  • Registerzugriff über Datenelement-Pointer oder -Referenz
  • Interrupts
  • Aufruf einer Interrupt Service Routine (ISR)
  • Interrupt Controller
  • Implementierung und Installation einer ISR
  • Bausteine mit mehreren Interrupt-Quellen
  • Interruptbehandlung bei mehreren Bausteinen derselben Art

Praktische Übungen

Setzten Sie das Gelernte direkt in die Praxis um.

Der Kursinhalt entspricht nicht ganz dem, was Sie suchen?


Das sagen Kunden:

"Didaktisch gut aufbereitet, absolut sicher in der Ausführung!"
"Hervorragende Kursleitung!"
"Angenehm ruhig, kompetent, offen für Fragen."
"Sehr gut fand ich die Erklärung der Hintergründe."
"Mit 'Design Patterns für Embedded Systeme' hat Herr Nieratschker ein sehr lehrreiches, interaktives und spannendes Training entwickelt. Durch die aufeinander aufbauenden Rätselfragen fühlt sich der Kurs an, wie eine gedankliche Schnitzeljagd: der Da Vinci Code für Programmierer."
"Noch nie einen so perfekt strukturierten Kurs besucht!!! SKT++."
"Gute bildliche Erklärungen, viel Geduld bei praktischen Anwendungen."
"Ein Muss für jeden objektorientierten Programmierer!"
"Sehr guter Ansatz zum Herleiten der Patterns."
"Alle Teilnehmer wurden 'abgeholt', da der Wissensstand sehr unterschiedlich ist."
"Hat mich richtig vorwärts gebracht."
"Sehr gute, praxisnahe Beispiele."
"Der Dozent beherrscht es, die Kursteilnehmer mitzunehmen."
"Komplexe Themen super verständlich hergeleitet."
"Knowledge of the instructor far above the trained theme!"
"The thing I liked most was the instructor's teaching skills!"
"The things I liked most were the teacher's clarity both in presentation and spoken English."
"Examples from real world, not like e.g. wikipedia."
"We were 'forced' to think ... Our attention was up all the time, which was great."
"What I liked in particular was the deep knowledge of the instructor and the sense of humor."
"What I liked in particular was the way we discovered patterns."
"Didaktisch gut aufbereitet, absolut sicher in der Ausführung!"
"Hervorragende Kursleitung!"
"Angenehm ruhig, kompetent, offen für Fragen."
"Sehr gut fand ich die Erklärung der Hintergründe."
"Mit 'Design Patterns für Embedded Systeme' hat Herr Nieratschker ein sehr lehrreiches, interaktives und spannendes Training entwickelt. Durch die aufeinander aufbauenden Rätselfragen fühlt sich der Kurs an, wie eine gedankliche Schnitzeljagd: der Da Vinci Code für Programmierer."
"Noch nie einen so perfekt strukturierten Kurs besucht!!! SKT++."
"Gute bildliche Erklärungen, viel Geduld bei praktischen Anwendungen."
"Ein Muss für jeden objektorientierten Programmierer!"
"Sehr guter Ansatz zum Herleiten der Patterns."
"Alle Teilnehmer wurden 'abgeholt', da der Wissensstand sehr unterschiedlich ist."
"Hat mich richtig vorwärts gebracht."
"Sehr gute, praxisnahe Beispiele."
"Der Dozent beherrscht es, die Kursteilnehmer mitzunehmen."
"Komplexe Themen super verständlich hergeleitet."
"Knowledge of the instructor far above the trained theme!"
"The thing I liked most was the instructor's teaching skills!"
"The things I liked most were the teacher's clarity both in presentation and spoken English."
"Examples from real world, not like e.g. wikipedia."
"We were 'forced' to think ... Our attention was up all the time, which was great."
"What I liked in particular was the deep knowledge of the instructor and the sense of humor."
"What I liked in particular was the way we discovered patterns."

SKT Nieratschker · Karl Nieratschker · Joseph-Maria-Lutz-Str. 7 · D-85293 Reichertshausen · Tel. +49 (0) 8441 490210 · office@skt-nieratschker.com