Select Page
4,712 reviews

Embedded C++: Objektorientierte Programmierung für Mikrocontroller mit C++/EC++ und UML

 

Meistern Sie die Herausforderung bei der Softwareentwicklung für Hard-Realtime-Systeme: Die heutigen Embedded-Systeme mit komplexen Mikrocontroller- und Prozessorarchitekturen enthalten immer mehr Software, die aber in immer kürzerer Zeit geplant und realisiert werden muss. Häufig sind Vorgaben zu erfüllen, in denen Normen und sicherheitskritische Aspekte berücksichtigt werden müssen. Echtzeitfähigkeit, Wiederverwendbarkeit, Anpassbarkeit an veränderte Rahmenbedingungen und leichte Lesbarkeit der Software spielen eine immer größere Rolle.

Einführung in die objektorientierte Begriffswelt

  • Klasse und Objekt
  • Attribut, Operation, Methode
  • Kapselung
  • Relation (Beziehung) zwischen Klassen
  • Nutzen und Vorteile der objektorientierten Softwareentwicklung
  • Demonstration des objektorientierten Ansatzes an einem Hardwaretreiber-Beispiel
Objektorientiertes Programmieren in C
  • Klassen, Attribute, Operationen und Objekte
  • Möglichkeiten der Kapselung in C
  • Assoziation, Aggregation, Komposition und Vererbung
  • Praxistipps mit bewährten Umsetzungsmöglichkeiten
Einführung in die Programmiersprache C++ (EC++)
  • Migration von objektorientierter Programmierung mit C zu C++/EC++
  • Klasse, Attribute, Operationen und Objekte
  • Möglichkeiten der Kapselung in C++
  • Konstruktoren, Destruktor, Überladen
  • Modifizierer für Daten, Operationen und Objekte
  • Speichermanagement für Objekte
  • Objekt-Initialisierung
  • Namespaces
  • Templates
  • C++ New Style Casts
  • Weitere C++ spezifische Mechanismen und Konstrukte
  • Assembleranalysen von C++ Konstrukten
  • Speicher- und laufzeitorientierte Einschätzung und Optimierung
  • Vergleich zu C
  • Verbesserung von Qualitätsmerkmalen wie Wartbarkeit und Wiederverwendbarkeit
  • Risiken erkennen, Stolpersteine vermeiden
  • Übung: Sie implementieren, instanziieren und testen eine Klasse
Relationen zwischen Klassen und deren Programmierung mit C++
  • Assoziation
  • Aggregation
  • Komposition
  • Vererbung
  • Dependency
  • Richtige Relationsauswahl im Design treffen
  • Varianten der Implementierung mit C++
  • Assembleranalysen von C++ Konstrukten
  • Speicher- und laufzeitorientierte Einschätzung und Optimierung
  • Verbesserung von Qualitätsmerkmalen wie Wartbarkeit und Wiederverwendbarkeit
  • Übung: Sie implementieren die Relationen Assoziation, Vererbung und Komposition in der Applikation und bei der Anwendung des Builder-Patterns
Virtuelle Methoden und Interfaces mit C++
  • Überschreiben von Funktionen / Operationen
  • Dynamische (späte) Bindung
  • Rein virtuelle Funktionen/ Operationen
  • Polymorphismus
  • Von der abstrakten Klasse zur Interface-Klasse
  • Software-Architektur mit Interfaces
  • Nutzen, Vorteile und Nachteile von Interface-Klassen
  • Implementierung mit C++
  • Assembleranalysen von C++ Konstrukten
  • Speicher- und laufzeitorientierte Einschätzung und Optimierung
  • Verbesserung von Qualitätsmerkmalen wie Wartbarkeit und Wiederverwendbarkeit
  • Übung: Sie programmieren eine Interface-Klasse mit rein virtuellen Funktionen, implementieren diese und greifen darauf zu
C++ Klassenbibliotheken
  • Statische versus dynamische Klassenbibliotheken
  • Erzeugung und Einbindung von Klassenbibliotheken
  • Vor- und Nachteile bei der Verwendung in Embedded-Software
  • Demonstration eines Beispiels
Zustandsautomaten mit C++
  • Prinzipielle Möglichkeiten der Implementierung
  • Vorstellung der Tabellen-basierten Abarbeitung von Zustandsautomaten
  • State-Pattern und objektorientiertes State-Pattern
  • Demonstration eines Beispiels
Callback-Strukturen
  • Typische Embedded-SW-Architekturen und deren Darstellung (Schichtenmodell, Interfaces)
  • Architekturrichtlinien
  • Kommunikationsmöglichkeiten zwischen Architekturelementen
  • Objektorientiere Callback-Strukturen mit Callback-Objekten
  • Demonstration eines Beispiels
  • Übung: Sie programmieren eine Callback-Struktur mit Callback-Objekt-Registrierung in der Übungsapplikation
Hardwaretreiber und Interrupts mit C++
  • Treiber- und Interrupt-Richtlinien
  • Hardwaretreiber mit Peripherie-Registerzugriff objektorientiert in C++
  • Interrupt-Konzepte und Interrupt-Service Routinen objektorientiert mit C++
  • Verbesserung von Qualitätsmerkmalen wie Wartbarkeit und Wiederverwendbarkeit
  • Übung: Sie wenden einen objektorientierten Timer-Treiber zusammen mit einem Timer-Interrupt in Ihrer Übungsapplikation an
Übersicht Embedded-Software-Test
  • Software-Implementierung und -Test
  • Testprozess
  • Checkliste zum Test objektorientierter Software
  • Demonstration eines Beispiels mit GoogleTest™
Grundlegende Notationen mit der UML (Unified Modeling Language)
  • Darstellung von Klassen, Objekten und Relationen mit der UML
  • Use-Case-, Sequenz-, Aktivitäten- und Zustandsfolge-Diagramm
  • Demonstration der Übung im UML-Modell - Aspekt: Diagramme
Von der Projektplanung bis zur Implementierung
  • Software-Entwicklungsprozess
  • Qualität von Embedded-Softwaresystemen
  • Praxisgerechte Modellierung einer Embedded-Applikation mit der UML
  • Demonstration der Übung im UML-Modell - Aspekt: Modellentstehung und Aufbau
Ausblicke
  • Historie und Weiterentwicklung von C++
  • Übersicht zu fortgeschrittenen C++ Mechanismen
  • Embedded- und generische C++ Codierrichtlinien
  • Interessante Internet-Links
  • C++ Idiome
  • Clean Code Development
Praktische Übungen im Workshop
  • Für die durchgängige Übung (Uhrenapplikation) verwenden Sie das Arm Keil MDK (Microcontroller Development Kit) zusammen mit einer realen Hardware basierend auf einem Arm Cortex® M3 oder M7 Mikrocontroller bzw. einem entsprechenden Simulator. Die Übung besteht sowohl aus dem Programmcode als auch dem zugehörigen UML-Modell.
MicroConsult Plus:
  • Sie erhalten von uns Ihre Übungsverzeichnisse und Lösungsbeispiele für alle Übungsaufgaben.
  • Sie bekommen alle C- und C++ Beispiele in elektronischer Form und können diese sehr einfach für Ihr Entwicklungsenvironment anpassen.
  • Sie erhalten zudem eine Tool- und Software-Komponentenübersicht für die Entwicklung von Embedded-Software.
  • Sie bekommen hilfreiche Notationsübersichten für UML (Unified Modeling Language) und SysML (Systems Modeling Language).

Sie kennen nach dem EC++ Workshop die Möglichkeiten, die ein objektorientierter Ansatz bietet, um auch in der Embedded-Welt in kürzerer Zeit qualitativ hochwertige Software zu entwickeln.
Der vermittelte Überblick über den gesamten Entwicklungsprozess von Embedded-Realtime-Systemen - Software-Analyse, Software-Design, Software-Implementierung und Unit-Test - gibt Ihnen das Rüstzeug, um Projekte mit EC++ zu erstellen.
Sie wissen, wie Sie das Design von Software-Systemen mithilfe der UML und der Implementierung in der Programmiersprache C++ gestalten.
Damit verfügen Sie über die Wissensbasis zur Erfüllung besonderer Anforderungen an die Software-Qualität von Embedded-Systemen, z.B. im Hinblick auf Laufzeit und Codeeffizienz.
Ferner vermeiden Sie mithilfe von Programmierrichtlinien, z.B. dem MISRA-C++ Standard, frühzeitig Programmierfehler.
Sie entwickeln mit modernen objektorientierten Techniken qualitativ hochwertige und komplexe Softwaresysteme und sparen dabei Zeit und Geld.

Der EC++ Kurs richtet sich an Programmierer, Software-Entwickler, Software-Designer und Software-Architekten, die C++ für Embedded-Softwareapplikationen unter Verwendung objektorientierter Konzepte einsetzen.

Sie sollten über solide C-Programmierkenntnisse verfügen; Mikrocontroller-Grundkenntnisse sind von Vorteil.

Empty do not delete
Onsite training: Individual workshops – tailored precisely to your project

In tailor-made workshops, we combine your specific project tasks with our training offerings. We take your requirements regarding content, time, location, duration, technical environment, and delivery method into account.

We will be happy to answer your questions.

Contact

Coaching with added value - expert knowledge for your project success

Our coaching offers have the great advantage that our experts contribute their knowledge and experience directly to your solution process and thus directly contribute to your project success.

Coaching Overview

= Guaranteed to run
Date Location Language Price Duration
22.06. - 25.06.2026 Munich English 2.600,00 € 4 Days
07.09. - 10.09.2026 Live Online German 2.600,00 € 4 Days
07.12. - 10.12.2026 Munich German 2.600,00 € 4 Days

*Price per participant, in Euro plus VAT.
Training code: EC++

Empty do not delete

All inclusive!

The training price includes:
Lunch, soft drinks, tea and coffee, fruit, snacks,
training documentation and your MicroConsult training certificate.

Seminar location

In-person training:

MicroConsult Academy GmbH
Charles-de-Gaulle-Str. 6
81737 Munich, Germany
+49 89 450617-71

>> Directions and hotel information

Live online trainings:

Take place online via WebEx or Zoom.

Organizational details

Reservation / booking

You can make a non-binding training seat reservation at any time; we will keep the reservation for you for up to max. three weeks before the training starts.

To confirm your participation in a training, please submit a binding booking.

You can make the non-binding reservation as well as the binding booking online on the respective training page (button "Booking" or "Non-binding reservation").

Please also note our Bonus program when booking several trainings and/or participants at once.

Seminar location

MicroConsult Academy GmbH
Charles-de-Gaulle-Str. 6
81737 Munich, Germany
Phone: +49 89 450617-71 >> Directions

Training times (face-to-face training)

Please note:
Some trainings have different start/end times, so please take note of the times we send you with our order confirmation before the training.

One-day training: 08:30 – 17:00 h

Two-day training: Day 1: 9:30 – 17:30 h / Day 2: 8:30 – 17:00 h

Three-day training: Day 1: 9:30 – 17:30 h / Day 2-3: 8:30 – 17:00 h

Four-day training: Day 1: 9:30 – 17:30 h / Day 2-4: 8:30 – 17:00 h

4.5-day training: Day 1: 9:30 – 17:30 h / Day 2-4: 8:30 – 17:00 h / Last day: 8:30 – 13:00 h

Five-day training: Day 1: 9:30 – 17:30 h / Day 2-4: 8:30 – 17:00 h / Last day: 8:30 – 15:00 h

The structure of our live-online trainings is different to face-to-face trainings. Please refer to our registration confirmation for training times.

Training certificate

After the training, you will receive your MicroConsult Training Certificate to document the know-how you acquired.

Training documentation

High-quality, extensive training documentation is included in the training price.

Material

All you have to bring is thirst for knowledge and curiosity. Our seminar rooms are fully equipped with everything needed to run the training - including your training documentation and stationery.

Catering

Hospitality is important to us. That's why we invite you to lunch at a nearby restaurant. We've also taken care of your refreshments: hot and cold drinks are available all day, and so are snacks and fresh fruit.

Training environment

Our training rooms offer an open and friendly atmosphere and feature high-quality and modern training equipment.

Company Image Training Room New

Location

The MicroConsult training center is conveniently located and can be reached easily be public transport or by car. Several hotels are in close vicinity.

Click here for directions and hotel information.

 

Do you need assistance?

Please don't hesitate to contact us. For questions concerning the organization of face-to-face or online trainings, please contact our Service Office, phone +49 (0)89 450617-71. Or send an e-mail to training@microconsult.com.

Bonus program

The group advantage: Binding registration of a group for a training

Number of persons

Amount of the discount

2 to 3 people 5 %
4 to 5 people 10 %
from 6 people 15 % also when split into 2 dates
more than 8 people upon request

The training bonus: Binding registration of a person for several training courses

Number of training sessions

Amount of the discount

2 training sessions 5 %
3 training sessions 8 %
More than 3 training sessions upon request

What else is important

This bonus scheme applies exclusively to our open training sessions.

To take advantage of the special conditions, a closed, binding registration and the participation of all booked persons on the agreed dates are required. The basis for the calculation is the current price list on www.microconsult.de.

The individual discount models cannot be combined with one another. A date change by us or the participation of a substitute participant will not affect the terms and conditions.

Valid only for direct bookings through us; our bonus program does not apply to bookings through external training portals.

Please contact us, our Service Office is available at +49 (0)89 450617-71. Or you can also use the Contact form.

Together we will find the optimal solution for you!

Related trainings

Customer testimonials

Do need additional information?
Feel free to get in touch!

Nora Pohle

Sales

kontakt@microconsult.com

+49 89 450617 - 71

Your benefits at a glance:

  • 100 % practical: You will learn what really matters in everyday project work – with real tools and proven methods from experts from the real project world.
  • How and where you want: Choose between live online or face-to-face training, conducted in our training center or at your location.
  • Small groups, big impact: Maximum 12 participants – so there is room for your questions, your topics, your practice.
  • Understandable instead of intellectual: Complex content becomes tangible – with examples, interactive exercises and a clear thread.
  • Combinable: Ideal as an individual seminar or part of a training series.
  • Sustainable learning success: You will receive high-quality documents for further work.
  • Flexible participation: Cancel or rebook free of charge up to 3 weeks before the appointment – your booking remains transferable.