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
