Real-Time C++: Efficient Object-Oriented and Template Microcontroller Programming

This document was uploaded by one of our users. The uploader already confirmed that they had the permission to publish it. If you are author/publisher or own the copyright of this documents, please report to us by using this DMCA report form.

Simply click on the Download Book button.

Yes, Book downloads on Ebookily are 100% Free.

Sometimes the book is free on Amazon As well, so go ahead and hit "Search on Amazon"

The C++ language has powerful object-oriented and template features that can improve software design and portability while simultaneously reducing code complexity and the risk of error. Furthermore, C++ compiles highly efficient native code. This unique and effective combination makes C++ well-suited for programming microcontroller systems that require compact size, high performance and safety-critical reliability.

With this book, Chris Kormanyos delivers a highly practical guide to programming real-time embedded microcontroller systems in C++. It is divided into three parts plus several appendices. Part I provides a foundation for real-time C++ by covering language technologies, including object-oriented methods, template programming and optimization. Next, part II presents detailed descriptions of a variety of C++ components that are widely used in microcontroller programming. It details some of C++’s most powerful language elements, such as class types, templates and the STL, to develop components for microcontroller register access, low-level drivers, custom memory management, embedded containers, multitasking, etc. Finally, part III describes mathematical methods and generic utilities that can be employed to solve recurring problems in real-time C++. The appendices include a brief C++ language tutorial, information on the real-time C++ development environment and instructions for building GNU GCC cross-compilers and a microcontroller circuit.

The most recent specification of C++11 in ISO/IEC 14882:2011 is used throughout the text. To facilitate portability, no libraries other than those specified in the language standard itself are used. Efficiency is always in focus and numerous examples are backed up with real-time performance measurements and size analyses that quantify the true costs of the code down to the very last byte and microsecond.

The target audience of this book mainly consists of students and professionals interested in real-time C++. Readers should be familiar with C or another programming language and will benefit most if they have had some previous experience with microcontroller electronics and the performance and size issues prevalent in embedded systems programming.

Author(s): Christopher Michael Kormanyos (auth.)
Edition: 1
Publisher: Springer-Verlag Berlin Heidelberg
Year: 2013

Language: English
Pages: 360
Tags: Special Purpose and Application-Based Systems; System Performance and Evaluation; Computer System Implementation; Software Engineering; Control Structures and Microprogramming

Front Matter....Pages i-xxiii
Front Matter....Pages 1-1
Getting Started with Real-Time C++....Pages 3-18
Working with a Real-Time C++ Program on a Board....Pages 19-31
An Easy Jump-Start in Real-Time C++....Pages 33-45
Object-Oriented Techniques for Microcontrollers....Pages 47-70
C++ Templates for Microcontrollers....Pages 71-95
Optimized C++ Programming for Microcontrollers....Pages 97-123
Front Matter....Pages 125-125
Accessing Microcontroller Registers....Pages 127-136
The Right Start....Pages 137-150
Low-Level Hardware Drivers in C++....Pages 151-171
Custom Memory Management....Pages 173-185
C++ Multitasking....Pages 187-198
Front Matter....Pages 199-199
Floating-Point Mathematics....Pages 201-224
Fixed-Point Mathematics....Pages 225-246
High-Performance Digital Filters....Pages 247-263
C++ Utilities....Pages 265-279
Extending the C++ Standard Library and the STL....Pages 281-295
Additional Reading....Pages 297-299
Back Matter....Pages 301-357