We may earn an affiliate commission when you visit our partners.

Embedded Systems Fundamentals with Arm Cortex-M Based Microcontrollers

Alexander G Dean

Microcontrollers are embedded into larger systems to provide benefits such as better performance, more features, better efficiency, lower costs and better dependability. This textbook introduces students to creating microcontroller-based embedded systems featuring an ARM Cortex-M CPU core. All source code is available on Github at alexander-g-dean/ESF .

Chapter 1 introduces students to the concepts of MCU-based embedded systems, and how they differ from general-purpose computers. It then introduces the ARM Cortex-M0+ CPU, the Kinetis KL25Z MCU, and the low cost FRDM-KL25Z MCU development board.

Chapter 2 presents the general purpose I/O peripheral to provide an early, hands-on experience with reading switches and lighting LEDs using C code. It also introduces the CMSIS hardware abstraction layer, which simplifies software access to peripherals.

Chapter 3 introduces multitasking on the CPU, with the goals of improving responsiveness and software modularity while reducing CPU overhead. The interplay of interrupts, peripherals and schedulers (both cooperative and preemptive) is examined.

Chapter 4 presents the ARM Cortex-M0+ processor core, including organization, registers, memory, and instruction set. It then discusses interrupts and exceptions, including CPU response and hardware configuration. Designing software for a system with interrupts is discussed, including program design (including partitioning work), interrupt configuration, writing handlers in C, and sharing data safely given preemption.

Chapter 5 first gives an overview of tool-chain which translates a program from C source code to executable object code. It then shows side-by-side the source code and the object code the tool-chain has generated to implement it. Topics covered include functions, arguments, return values, activation records, exception handlers, control flow constructs for loops and selection, memory allocation and use, and accessing data in memory.

Chapter 6 presents analog interfacing, starting with theory and ending with practical implementations. Quantization and sampling are presented as a foundation for digital to analog conversion, and analog to digital conversion. The DAC, ADC and analog comparator peripherals are presented and used.

Chapter 7 presents timer peripherals and their use for generating a periodic interrupt or a pulse-width modulated signal, or for measuring elapsed time or a signal's frequency. Watchdog timers, used to detect and reset an out-of-control program, are also discussed. The SysTick, PIT, TPM and COP timers are examined.

Chapter 8 discusses serial communications, starting with the fundamentals of data serialization, framing, error detection, media access control and addressing. Software queues are introduced to show how to buffer data between communication ISRs and other parts of the program. Three protocols and their supporting peripherals are investigated SPI, asynchronous serial (UART) and I2C. UART communication is demonstrated using the FRDM-KL25Z's debug MCU as a serial port bridge over USB to the PC. I2C communication is demonstrated using the FRDM-KL25Z's built-in 3 axis accelerometer with I2C interface.

Chapter 9 introduces the direct memory access peripheral and its ability to transfer data autonomously, offloading work from the CPU and offering dramatically improved performance. Examples include using DMA for bulk data copying, and for DAC-based analog waveform generation with precise timing.

An appendix covers how to measure the power and energy use on the FRDM-KL25Z board, including disconnecting the debug MCU to reduce power. Energy measurement using an ultracapacitor is also presented.

For use in ECE, EE, and CS departments.

Save this book

Create your own learning path. Save this book to your list so you can find it easily later.
Save

Share

Help others find this book page by sharing it with your friends and followers:

Amazon Buyer Protections & Purchase Guarantee

Protected by Amazon A-to-z Guarantee & generous return policies

Amazon A-to-z Guarantee
Buyer Protection

Amazon A-to-z Guarantee

Every book purchase is protected by the Amazon A-to-z Guarantee. This guarantee covers both the condition of your book and its timely delivery, providing full buyer protection whether you purchase directly from Amazon or from third-party marketplace sellers.

Return Policy

Generous 30-Day Returns & Free Shipping

Generous 30-day return policy on physical books. Amazon makes returns effortless with self-service return labels, drop-off at thousands of local locations (Kohl's, Whole Foods, UPS Stores), and free return shipping on eligible book purchases.

Savings & Discounts

Great Savings & Member Discounts

Maximize your savings with competitive pricing, deep discounts on new and used marketplace copies, bundled textbook rentals, and exclusive member savings through Amazon Prime with free fast delivery.

Formats & Programs

Kindle, Audible & Physical Formats

Read your way across versatile digital and physical formats: instant delivery via Kindle eBooks, unlimited reading with a Kindle Unlimited subscription, audiobook listening with Audible (often featuring a 30-day free trial), or traditional paperback and hardcover editions.

Amazon Purchase Protections & Benefits
Amazon A-to-z Guarantee covering third-party & direct purchases
Generous 30-day return policy with hassle-free drop-off options
Kindle eBook editions with instant delivery on any device
Kindle Unlimited program with access to over 4 million titles
Audible audiobooks with free trial eligibility
Competitive discounts across new, used, and rental copies
Amazon Affiliate Partner Protections Policy details last reviewed: 2026-10-22
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2025 OpenCourser