embedded and real time systems training and consultancy

Introduction to ARM Cortex-M C++ Programming

Duration: 5 Days

Course Background

Duration: 5 Days

Intended Audience

The course is aimed at embedded systems programmers who have a good working knowledge of embedded C programming, but who are about to embark on a new project which will makes extensive use of C++. Some knowledge of Object Oriented analysis and design techniques would be useful, however, any necessary concepts will be introduced during the course.

Course Overview

This 5 day course is aimed at embedded systems developers embarking on their first ARM Cortex embedded C++ project. The course will use the latest version of the IAR C++ compiler for the ARM Cortex family. As well as covering the essential aspects of C++ programming the course will cover the foundations of UML analysis and design as it applies to embedded systems application developers, and the design and implementation of classes that will provide the essential interfaces to the various on chip peripherals such as UARTs, AtoD, I2C, SPI, Timers and GPIO.

Course Benefits and Objectives

The course aims to


The core topics covered will include
At the end of the course student will know

Course Contents

  • Overview of C++
  • Classes Functions and Operators in C++
  • Mapping, Intialisation and Removal of objects
  • Collections of objects
  • Inheritance, classification and class hierarchies
  • Templates - creating families of classes and functions parameterised by data type
  • Mapping objects onto tasks - the foundations
  • Hardware interface classes - design and implementation
  • Object-oriented approaches to RTOS programming - the basics