Overview
Save Big on Coursera Plus. 7,000+ courses at $160 off. Limited Time Only!
Explore C++14 implementation in embedded "SuperLoop" firmware through this CppCon 2022 conference talk. Delve into the execution environment of embedded systems, understanding their limitations and capabilities. Learn about specific design paradigms and guidelines for programming in C++14 within this constrained environment. Discover how to leverage C++14 language and library features effectively while working around common limitations. Gain insights into valuable C++17 and C++20 features for various embedded environments. Benefit from the speaker's extensive experience in embedded firmware development for drones and other devices.
Syllabus
Introduction
Primary Drone
Outline
Firmware
Types of Firmware
Hardware Environment
Limitations
Missing Features
Eliminate Runtime Errors
Undefined Behavior
Whats left
What is this system like
System assumptions
ISR
Memory
Boot Sequence
Build Environment
Data Structures
State Machines
Bulk Transfer
Language Restrictions
Loop Bounds
pointers
exceptions
Heap withdrawal
Recommendations
Basic Types
Transport Addresses
References
Peripherals
C name spacing
Keep names simple
Use previrtual functions
Keep it simple
Instantiation
Inline
Const
Taught by
CppCon