Training » Embedded C++: Object Oriented Programming for Microcontrollers with C++/EC++

 
 
 

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

Training Objectives

Modern embedded systems with complex 16 and 32 bit microcontroller architectures incorporate more and more software which, however, 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. Reusability, adjustability to changing frame conditions and readability are key factors. In this training, you will see how object oriented techniques help you create higher-quality software for embedded applications in a shorter time. You get a compact overview of the whole development process - software analysis, design, implementation and test, with a focus on software system design using UML and implementation in C++. Specific software quality requirements for embedded systems are another key issue, e.g. regarding runtime and code efficiency, as well as identifying and thus avoiding programming errors by using programming guidelines, such as offered by the MISRA C++ standard.

Required Knowledge

Very good knowledge of (embedded) C-programming. Basic microcontroller knowledge of advantage.

Target Group

Software architects, software developers.

Contents

Introduction: Object-Oriented Programming Basics
   - Objects, classes, attributes, operations, encapsulation
   - Relations
   - Object oriented software development: benefits

Object Oriented Programming in C
   - Classes and encapsulation in C
   - Association, aggregation, composition and inheritance
   - From a structure to a class

The Programming Language C++ (EC++)
   - Migration from object-oriented C-programming to C++/EC++
   - Class, constructor, destructor, overload, etc.
   - Association, aggregation, composition and inheritance
   - Polymorphism, virtual operations and interfaces

C++ for Embedded Applications
   - Class libraries
   - Typical embedded SW architectures, visualization (layer model, interfaces)
   - Hardware drivers, interrupts, callback structures
   - State machine programming
   - Assembler analysis of C++ constructs
   - Memory and runtime oriented assessment and optimization
   - Increasing maintainability and reusability

RTOS Mechanisms
   - Terminology
   - Process, thread and task management
   - Interrupt management
   - Synchronization and communication
   - Resource management
   - Time management
   - Important design notes and selection criteria

Basic Notations with UML (Unified Modeling Language)
   - Visualization of classes, objects and relations with UML
   - Use case, sequence, activity and state diagrams

From Project Planning to Implementation
   - Software development process
   - Quality of embedded software systems
   - Modeling an embedded application with UML

Practical Exercise
   - C++ programming in the OOP context
   - Programming of classes, objects and relations
   - Programming of interfaces, callback structures and drivers
   - Using an embedded target

 

Dates

Price plus VAT

Short Code

Duration

ON REQUEST

2,150 €

E-EC++

4.5 days

 

The Training Price Includes:

Lunch, drinks, training documentation and traning certificate.

 

Location:

All open trainings take part at MicroConsult GmbH in Munich, unless a different location is indicated for the respective training.

 

Training Registration:

To register for this training, please download our
Training Registration Form

[back to top]