IT Tools

Real-time Embedded C++ Programming

Learn how to use C++ language for real-time and embedded applications. C++'s flexibility, modelling power, support for OOP/generic programming, and extensive tool set make it attractive for embedded projects, but some developers worry about code bloat and hidden performance penalties. Begin your course by confronting those issues directly. Move on to how C++ can improve the correctness, readability, and efficiency of embedded software, in some cases accomplishing what is impossible in C. Cover C++ to real-time systems focusing on concurrency/threading issues. Perform hands-on embedded programming, on target hardware in practical exercises. Each participant receives his/her own hardware platform and will leave with completed code for individual use.

Who Should Attend:
  • Designers and developers of real-time embedded systems.
Topics Include:
  • Language Technologies for Real-Time C++
    • Getting started with real-time C++
    • Working with a real-time C++ program on a board
    • An easy jump-start in real-time C++
    • Object-oriented techniques for microcontrollers
    • C++ templates for microcontrollers
    • Optimized C++ programming for microcontrollers
  • Components for Real-Time C++
    • Accessing microcontroller registers
    • The right start
    • Low-level hardware drivers in C++
    • Custom memory management
    • C++ multitasking
  • Guidelines for Code Size
    • Object initialization
    • Inline specifier
    • Temporary objects for return values
    • Operators new and delete
    • Initialization of global objects
  • Guidelines for Speed
    • New and delete for array of class objects
    • Object declaration in loops
  • Guidelines for ROMable code
    • Const objects in ROM

Experience with a programming language such as C.

Available Sessions