Bare Metal C: Embedded Programming for the Real World

  • 4h 31m
  • Stephen Oualline
  • No Starch Press
  • 2022

Bare Metal C will teach you how to program embedded devices with the C programming language. For embedded system programmers who want precise and complete control over the system they are using, this book pulls back the curtain on what the compiler is doing for you so that you can see all the details of what's happening with your program.

The first part of the book teaches C basics with the aid of a low-cost, widely available bare metal system (the Nucleo Arm evaluation system), which gives you all the tools needed to perform basic embedded programming. As you progress through the book you’ll learn how to integrate serial input/output (I/O) and interrupts into your programs. You’ll also learn what the C compiler and linker do behind the scenes, so that you’ll be better able to write more efficient programs that maximize limited memory. Finally, you’ll learn how to use more complex, memory hungry C features like dynamic memory, file I/O, and floating-point numbers.

About the Author

Steve Oualline wrote his first program when he was 11. It was for an embedded system. He has been programming and designing methodologies for reliable programming ever since. He has a Master of Science from USC and has written many books for both No Starch Press and O’Reilly

In this Book

  • Introduction
  • Hello World
  • Introduction to the Integrated Development Environment
  • Programming the Microcontroller
  • Numbers and Variables
  • Decision and Control Statements
  • Arrays, Pointers, and Strings
  • Local Variables and Procedures
  • Complex Data Types
  • Serial Output on the STM
  • Interrupts
  • The Linker
  • The Preprocessor
  • Dynamic Memory
  • Buffered File I/O
  • Command Line Arguments and Raw I/O
  • Floating-Point Numbers
  • Modular Programming
  • Afterword
SHOW MORE
FREE ACCESS