Skip to content

This textbook gives students an understanding of the most important topics in embedded systems design using a coherent, compelling and hands-on approach.

License

Notifications You must be signed in to change notification settings

arm-university/Embedded-Systems-Fundamentals

Repository files navigation

Embedded Systems Fundamentals with Arm Cortex-M based Microcontrollers

This textbook by author Alexander G. Dean gives students an understanding of the most important topics in embedded systems design using a coherent, compelling and hands-on approach. (available as PDF)

About the 1st Edition

This textbook introduces students to creating embedded systems using the Arm® Cortex®-M0+ CPU-based Kinetis® KL25 MCU. Topics covered include the CPU, interrupt system, peripherals, and programming. C is used as the programming language throughout the text. The concurrent operation of the CPU and peripherals is highlighted throughout as critical to creating cost-effective embedded systems. This book gives an early introduction to practical multitasking on the CPU, with the goals of improving responsiveness and software modularity while reducing CPU overhead. The interplay of interrupts, peripherals and schedulers is examined. For use in ECE, EE, and CS departments. The book targets the low-cost FRDM-KL25Z MCU development board.

About the 2nd Edition

Now in its 2nd edition, this textbook has been updated on a new development board from STMicroelectronics – the Arm Cortex-M0+ based Nucleo-F091RC. Designed to be used in a one- or two-semester introductory course on embedded systems, the textbook covers fundamental topics including the CPU, interrupt systems, peripherals, serial communication and multi-tasking. Software examples in this textbook are written in C and the free version of Arm’s Keil MDK-ARM integrated development environment is used throughout the materials.

Table of Contents:

  1. Introduction
  2. General-Purpose Input/Output
  3. Basics of Software Concurrency
  4. Arm Cortex-M0 Processor Core and Interrupts
  5. C in Assembly Language
  6. Analog Interfacing
  7. Timers
  8. Serial Communications
  9. Direct Memory Access

License

You are free to fork, clone or download this book in PDF format for personal, non-commercial use only. You may reprint or republish portions of the text for non-commercial, educational or research purposes but only if there is an attribution to Arm Education. This book and the individual contributions contained in it are protected under copyright by the Publisher (other than as may be noted herein). Nothing in this license grants you any right to modify the whole, or portions of, this book.

Inclusive Language Commitment

Arm is committed to making the language we use inclusive, meaningful, and respectful. Our goal is to remove and replace non-inclusive language from our vocabulary to reflect our values and represent our global ecosystem.

Arm is working actively with our partners, standards bodies, and the wider ecosystem to adopt a consistent approach to the use of inclusive language and to eradicate and replace offensive terms. We recognise that this will take time. This book may contain references to non-inclusive language; it will be updated with newer terms as those terms are agreed and ratified with the wider community.

Contact us at [email protected] with questions or comments about this course. You can also report non-inclusive and offensive terminology usage in Arm content at [email protected].

About

This textbook gives students an understanding of the most important topics in embedded systems design using a coherent, compelling and hands-on approach.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published