Part 2

Chapter 04: C Programming for Embedded Systems

C is a commonly-used programming language for implementing algorithms in embedded systems.

 
One of the main causes of the fall of the Roman Empire was that, lacking zero, they had no way to indicate successful termination of their C programs.
— Robert Firth.
Step 00: Chapter 04 Pre-Assessment (click here to show/hide).

Step 01: Chapter 04 Things to Think About (click here to show/hide).

(The audio for the first half of this livestream is unfortunately corrupted though still usable.)

Step 02:

Read and annotate the chapter. Use ctrl +  to zoom in, ctrl -  to zoom out, and ctrl 0  to zoom back to initial size. You can highlight and annotate content in the document by selecting any text and clicking on the "Annotate" and "Highlight" tools that pop up. More information on how to use the site's annotation tools.

Step 03:
Chapter 04 Basic Concepts of Low-Level C Language Internals Self-Assessment (click here to show/hide).
Chapter 04 More Basic Concepts of Low-Level C Self-Assessment (click here to show/hide).
Chapter 04 Compiling C Programs from the Command Line Self-Assessment (click here to show/hide).
Chapter 04 Four Example C Programs Self-Assessment (click here to show/hide).
Chapter 04 Memory Sections Self-Assessment (click here to show/hide).
Chapter 04 Debugging, Memory-Mapped I/O, Mixing C and Assembler Self-Assessment (click here to show/hide).
Chapter 04 Object Files and Libraries Self-Assessment (click here to show/hide).

Step 04: Chapter 04 Muddiest Point (click here to show/hide).