Books & Videos

Table of Contents

  1. Chapter 1 Introduction

    1. Compilers, Languages, and Object-Oriented Programming

    2. Embedded System Development

    3. Further Reading

  2. Chapter 2 Creating a System Architecture

    1. Creating System Diagrams

    2. From Diagram to Architecture

    3. A Sandbox to Play In

    4. Further Reading

  3. Chapter 3 Getting Your Hands on the Hardware

    1. Hardware/Software Integration

    2. Reading a Datasheet

    3. Your Processor Is a Language

    4. Reading a Schematic

    5. Having a Debugging Toolbox (and a Fire Extinguisher)

    6. Testing the Hardware (and Software)

    7. Dealing with Errors

    8. Further Reading

  4. Chapter 4 Outputs, Inputs, and Timers

    1. Toggling an Output

    2. Separating the Hardware from the Action

    3. The Input in I/O

    4. Momentary Button Press

    5. Runtime Uncertainty

    6. Using a Timer

    7. Using Pulse-Width Modulation

    8. Shipping the Product

    9. Further Reading

  5. Chapter 5 Managing the Flow of Activity

    1. Scheduling and Operating System Basics

    2. State Machines

    3. Interrupts

    4. How Not to Use Interrupts

    5. Watchdog

    6. Further Reading

  6. Chapter 6 Communicating with Peripherals

    1. The Wide Reach of Peripherals

    2. So Many Ways of Communicating

    3. Putting Peripherals and Communication Together

    4. Further Reading

  7. Chapter 7 Updating Code

    1. Onboard Bootloader

    2. Build Your Own Updater

    3. Brick Loader

    4. Security

    5. Linker Scripts

    6. Summary

  8. Chapter 8 Doing More with Less

    1. Code Space

    2. RAM

    3. Speed

    4. Summary

    5. Further Reading

  9. Chapter 9 Math

    1. Identifying Fast and Slow Operations

    2. Use an Existing Algorithm

    3. Designing and Modifying Algorithms

    4. Fake Floating-Point Numbers

    5. Further Reading

  10. Chapter 10 Reducing Power Consumption

    1. Understanding Power Consumption

    2. Turn Off the Light When You Leave the Room

    3. Putting the Processor to Sleep

    4. Further Reading

  1. Colophon