Seite wählen
4,712 Rezensionen

Embedded C++: Object-Oriented Programming for Microcontrollers with C++/EC++ and UML

 

Master the challenges in software development for hard real-time systems: Modern embedded systems with complex microcontroller and processor architectures incorporate more and more software that has to be planned and implemented faster than ever. In many cases, requirements need to be met which are subject to standards and safety-critical aspects. Real-time capability, reusability, adjustability to changing basic conditions and readability are key factors in software.

Introduction: Object Oriented Programming Basics

  • Class and object
  • Attribute, operation, method
  • Encapsulation
  • Relation between classes
  • Benefits of the object-oriented approach using a hardware driver as an example
Object-oriented Programming in C
  • Classes, attributes, operations and objects
  • Encapsulation in C
  • Association, aggregation, composition and inheritance
  • Practical tips with proven implementation approaches
Introduction: The Programming Language C++ (EC++)
  • Migration from object-oriented C-programming to C++/EC++
  • Classes, attributes, operations and objects
  • Encapsulation in C
  • Constructors, destructor, overload
  • Modifier for data, operations and objects
  • Memory management for objects
  • Object initialization
  • Namespaces
  • Templates
  • C++ new style casts
  • Further C++ specific mechanisms and constructs
  • Assembler analysis of C++ constructs
  • Memory and runtime oriented assessment and optimization
  • Comparison with C
  • Enhancing quality features like maintainability and reusability
  • Identifying risks and avoiding pitfalls
  • Practical exercise: Implementing, instantiating and testing a class
Relations between Classes / Programming Classes in C++
  • Association
  • Aggregation
  • Composition
  • Inheritance
  • Dependency
  • Selecting the suitable relation in your design
  • Implementation variants in C++
  • Assembler analysis of C++ constructs
  • Memory and runtime oriented assessment and optimization
  • Enhancing quality features like maintainability and reusability
  • Practical exercise: Implementing the relations association, inheritance and composition in the application and when using the builder pattern
Virtual Methods and Interfaces in C++
  • Overwriting functions / operations
  • Dynamic (late) binding
  • Strictly virtual functions/ operations
  • Polymorphism
  • From the abstract class to the interface class
  • Software architecture with interfaces
  • Benefit, advantages and disadvantages of interface classes
  • Implementation with C++
  • Assembler analysis of C++ constructs
  • Memory and runtime oriented assessment and optimization
  • Enhancing quality features like maintainability and reusability
  • Practical exercise: Programming an interface class with strictly virtual functions, implementing and accessing this class
C++ Class Libraries
  • Statistical versus dynamic class libraries
  • Generation and inclusion of class libraries
  • Advantages and disadvantages of using class libraries in embedded software
  • Demonstration of an example
State Machines in C++
  • Basic implementation approaches
  • Introduction: Table-based state machine processing
  • State pattern and object-oriented state pattern
  • Demonstration of an example
Callback Structures
  • Typical embedded SW architectures and their modeling (layer model, interfaces)
  • Architecture guidelines
  • Communication between architecture elements
  • Object-oriented callback structures with callback objects
  • Demonstration of an example
  • Practical exercise: Programming a callback structure with callback object registration in the hands-on application
Hardware Drivers and Interrupts in C++
  • Driver and interrupt guidelines
  • Hardware drivers with peripheral register access object-oriented in C++
  • Interrupt concepts and interrupt service routines object-oriented in C++
  • Enhancing quality features like maintainability and reusability
  • Practical exercise: Applying an object-oriented timer driver along with a timer interrupt in your exercise application
Overview: Embedded Software Test
  • Software implementation and test
  • Test process
  • Checklist for testing object oriented software
  • Demonstration of an example with GoogleTest™
Basic Notations with UML (Unified Modeling Language)
  • Modeling classes, objects and relations with UML
  • Use case, sequence, activity and state diagrams
  • Demonstration of the exercise in the UML model, with a focus on diagrams
From Project Planning to Implementation
  • Software development process
  • Quality of embedded software systems
  • Efficient modeling of an embedded application with UML
  • Demonstration of the exercise in the UML model, with a focus on model generation and setup
Outlook
  • History and further development of C++
  • Overview of advanced C++ mechanisms
  • Embedded and generic C++ coding guidelines
  • Interesting web links
  • C++ idioms
  • Clean code development
Practical Exercises in the Workshop
  • Throughout the exercise (watch application), you will use the STM Arm microcontroller development kit along with a simulated hardware, based on an Arm Cortex®-M3 or M7 microcontroller respectively a suitable simulator. The exercise comprises both the program code and the related UML model.
MicroConsult Plus:
  • All participants have the following options to further use their exercises and the solutions developed by MicroConsult from this workshop:
  • You take the files with you on a free USB stick provided by MicroConsult, or …
  • You e-mail the files to your account, or …
  • You get access to file download on request.
  • You get all examples for C and C++ in electronic format and can easily adjust them to your development environment.
  • You moreover get a tool and software component overview for developing embedded software.
  • You get helpful notation overviews for UML (Unified Modeling Language) and SysML (Systems Modeling Language).

The EC++ workshop shows you how an object-oriented approach helps you develop higher-quality software in an embedded environment in a shorter time.
You get a compact overview of the entire development process of embedded real-time systems - software analysis, software design, software implementation and unit test - as a basis for you to implement projects with EC++.
You know how to design of software systems by using UML and implementation in the programming language C++.
You thus have the required knowledge base for meeting specific software quality requirements for embedded systems, e.g. regarding runtime and code efficiency.
Programming guidelines, such as the MISRA-C++ standard, moreover help you avoid programming errors at an early stage.
You can use state of the art object-oriented techniques to develop high-quality, complex software systems and, at the same time, save time and money.

The EC++ training addresses programmers, software developers, software designers and software architects who use C++ for embedded software applications based on object-oriented concepts.

A very good knowledge of C-programming is required; basic microcontroller knowledge of advantage.

Empty donot delete
Onsite-Training: Individuelle Workshops - exakt auf Ihr Projekt zugeschnitten

In maßgeschneiderten Workshops kombinieren wir Ihre konkreten Projektaufgaben mit unserem Trainingsangebot. Dabei berücksichtigen wir Ihre Anforderungen bezüglich Inhalt, Zeit, Ort, Dauer, technischem Umfeld und Vermittlungsmethodik.

Für Ihre Anfrage oder weiterführende Informationen stehen wir Ihnen gern zur Verfügung.

Kontakt

Coaching mit Mehrwert - Expertenwissen für Ihren Projekterfolg

Unsere Coaching-Angebote bieten den großen Vorteil, dass unsere Experten ihr Wissen und ihre Erfahrungen direkt in Ihren Lösungsprozess einbringen und damit unmittelbar zu Ihrem Projekterfolg beitragen.

Coaching Übersicht

= Mit Durchführungsgarantie
Termin Ort Sprache Preis Dauer
22.06. - 25.06.2026 München Englisch 2.600,00 € 4 Tage
07.09. - 10.09.2026 Live Online Deutsch 2.600,00 € 4 Tage
07.12. - 10.12.2026 München Deutsch 2.600,00 € 4 Tage

*Preis je Teilnehmer, in Euro zzgl. USt.
Anmeldecode: E-EC++

Empty donot delete

All inclusive!

Im Preis enthalten:
Mittagessen, Kalt- und Warmgetränke, frisches Obst, Snacks,
Trainingsunterlagen und Ihr MicroConsult-Zertifikat

Seminar-Ort

Präsenz-Trainings:

MicroConsult Academy GmbH
Charles-de-Gaulle-Str. 6
81737 München, Deutschland
+49 89 450617-71

>> Anfahrtsbeschreibung und Hotelinfo

Live-Online-Trainings:

Finden online über WebEx oder Zoom statt.

Organisatorisches

Reservierung / Anmeldung

Sie können sich jederzeit unverbindlich einen Platz in einem Training reservieren; diese Reservierung halten wir bis maximal drei Wochen vor Trainingsbeginn offen.

Für die sichere Teilnahme an einem Training senden Sie uns bitte eine verbindliche Anmeldung.

Beides können Sie online vornehmen – direkt von der jeweiligen Trainingsbeschreibung aus (Button „Unverbindlich Reservieren“ bzw. „Anmelden“).

Bitte beachten Sie auch unser Bonusprogramm bei der gleichzeitigen Buchung von mehreren Trainings und/oder Teilnehmenden.

Seminar-Ort

MicroConsult Academy GmbH
Charles-de-Gaulle-Str. 6
81737 München, Deutschland
Tel.: +49 89 450617-71  >> Anfahrtsbeschreibung

Trainingszeiten (Präsenz-Trainings)

HINWEIS:
Bei einigen Trainings weichen die Zeiten ab. Beachten Sie daher bitte in jedem Fall die Anfangs- und Endzeiten in der Anmeldebestätigung, die wir Ihnen vor Ihrem Training senden!

Eintägiges Training: 08:30 – 17:00 h

Zweitägiges Training: Tag 1: 09:30 – 17:30 h / Tag 2: 08:30 – 17:00 h

Dreitägiges Training: Tag 1: 09:30 – 17:30 h / Tag 2-3: 08:30 – 17:00 h

Viertägiges Training: Tag 1: 09:30 – 17:30 h / Tag 2-4: 08:30 – 17:00 h

4,5-tägiges Training: Tag 1: 09:30 – 17:30 h / Tag 2-4: 08:30 – 17:00 h / Letzter Tag: 08:30 – 13:00 h

Fünftägiges Training: Tag 1: 09:30 – 17:30 h / Tag 2-4: 08:30 – 17:00 h / Letzter Tag: 08:30 – 15:00 h

Struktur und Ablauf unserer Live-Online-Angebote unterscheiden sich von den Präsenztrainings. Die genauen Trainingszeiten entnehmen Sie bitte unserer Anmeldebestätigung.

Trainingszertifikat

Nach Abschluss Ihres Trainings erhalten Sie das MicroConsult-Zertifikat als Beleg über Ihr neu erworbenes Wissen.

Trainingsunterlagen

Hochwertige Lehrmaterialien und ausführliche Unterlagen sind im Preis inbegriffen.

Mitbringen

Neben viel Neugierde und Wissensdurst benötigen Sie nichts weiter. Unsere Räume sind mit allem ausgestattet, was zur Durchführung des Trainings nötig ist, und Ihre Trainingsunterlagen und Schreibmaterial warten bereits auf Sie.

Verpflegung

Gastfreundschaft ist uns wichtig. Deshalb laden wir Sie zum Mittagessen in ein nahegelegenes Restaurant ein. Auch für Ihre Erfrischung ist gesorgt: Kalt- und Warmgetränke stehen Ihnen den ganzen Tag zur Verfügung, ebenso wie Snacks und frisches Obst.

Räumlichkeiten

Bei unseren Schulungsräumen legen wir besonderen Wert auf eine offene und freundliche Atmosphäre und eine hochwertige und moderne technische Ausstattung.

Unternehmen-Bild-Schulungsraum neu

Lage

Unser Trainingszentrum ist verkehrstechnisch günstig gelegen. Mehrere Hotels befinden sich in unmittelbarer Nähe.

Zur Anfahrtsbeschreibung und den Hotel-Informationen

 

Haben Sie Fragen?

Wir helfen Ihnen gerne weiter. Alle Fragen rund um die Organisation unserer Trainings beantwortet Ihnen unser Service Office unter Tel. +49 (0)89 450617-71. Oder senden Sie eine Mail an training@microconsult.com.

Bonusprogramm

Der Gruppen-Vorteil: Verbindliche Anmeldung einer Gruppe für ein Training

Anzahl der Personen

Höhe des Rabatts

2 bis 3 Personen 5 %
4 bis 5 Personen 10 %
ab 6 Personen 15 % auch bei Verteilung auf 2 Termine
mehr als 8 Personen auf Anfrage

Der Ausbildungsbonus: Verbindliche Anmeldung einer Person zu mehreren Trainings

Anzahl Trainings

Höhe des Rabatts

2 Trainings 5 %
3 Trainings 8 %
Mehr als 3 Trainings auf Anfrage

Was sonst noch wichtig ist

Dieses Bonusschema gilt ausschließlich für unsere offenen Trainings.

Erforderlich für die Inanspruchnahme der Sonderkonditionen ist eine geschlossene, verbindliche Anmeldung und die Teilnahme aller gebuchten Personen zu den vereinbarten Terminen. Grundlage für die Berechnung ist die aktuelle Preisliste auf www.microconsult.de.

Die einzelnen Rabattmodelle sind nicht miteinander kombinierbar. Eine Terminverschiebung durch uns oder die Teilnahme einer Ersatzperson bleiben ohne Einfluss auf die Konditionen.

Gültig nur bei Direktbuchung über uns; bei Buchung über externe Weiterbildungsportale findet unser Bonusprogramm keine Anwendung.

Sprechen Sie uns an, unser Service Office steht Ihnen unter Tel. +49 (0)89 450617-71 zur Verfügung. Oder verwenden Sie auch gerne das Kontaktformular.

Gemeinsam finden wir die optimale Lösung für Sie!

Verwandte Trainings

Kundenstimmen

Sie haben Fragen?
Gerne helfen wir Ihnen!

Nora Pohle

Vertrieb

kontakt@microconsult.com

+49 89 450617 - 71

Ihre Vorteile auf einen Blick:

  • 100 % praxisnah: Sie lernen, was im Projektalltag wirklich zählt – mit echten Tools und erprobten Methoden von Expertinnen und Experten aus der realen Projektwelt.
  • Wie und wo Sie wollen: Wählen Sie zwischen Live-Online- oder Präsenz-Training, durchgeführt in unserem Training Center oder bei Ihnen vor Ort.
  • Kleine Gruppen, große Wirkung: Maximal 12 Teilnehmende – so bleibt Raum für Ihre Fragen, Ihre Themen, Ihre Praxis.
  • Verständlich statt verkopft: Komplexe Inhalte werden greifbar – mit Beispielen, interaktiven Übungen und einem klaren roten Faden.
  • Kombinierbar: Ideal als Einzelseminar oder Teil einer Weiterbildungsreihe.
  • Nachhaltiger Lernerfolg: Sie erhalten hochwertige Unterlagen zum Nacharbeiten.
  • Flexible Teilnahme: Bis 3 Wochen vor dem Termin kostenlos stornieren oder umbuchen – Ihre Buchung bleibt übertragbar.