Learn to write embedded software in the top programming language paying attention to what matters most in this field: size and energy consumption.
Overview
Syllabus
Introduction
- Getting started in embedded systems
- What you should know
- Using the exercise files
- Applications: OS vs. embedded
- Memory
- Storage
- Energy consumption
- Processing power
- Hardware awareness
- C vs. Embedded C
- Integral types
- Floating-point types
- A quick analysis of memory usage with Keil
- Checking memory usage with Arduino
- Masking
- Bit masking with Arduino
- Bit fields
- A bit field example with Keil
- The volatile qualifier
- The const qualifier
- Protect variables using volatile
- Don't let the optimizer remove your while loop
- Lookup tables
- Macro functions
- Inline functions
- LUT vs. function example in Arduino
- LUT vs. function example in Keil
- Inline function example in Keil
- Software implementation of float
- Fixed-point math
- Float-point vs. fixed-point example
- Float-point unit example in Keil
- Next steps
Taught by
Eduardo Corpeño