Embedded Systems Fundamentals with Arm Cortex M Based Microcontrollers

Embedded Systems Fundamentals with Arm Cortex M Based Microcontrollers : A Practical Approach

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.

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 next: 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.

  • Format: Paperback | 300 pages
  • Dimensions: 188.98 x 246.13 x 16.76mm | 566.99g
  • Publication date: 28 Mar 2017
  • Publisher: ARM Education Media
  • Publication City/Country: Cambridge, United Kingdom
  • Language: English
  • Illustrations note: 275 tables, charts and images
  • ISBN10: 1911531034
  • ISBN13: 9781911531036
  • Bestsellers rank: 479,259

More Books:

Embedded Systems Fundamentals with Arm Cortex-M Based Microcontrollers
Language: en
Pages: 344
Authors: Alexander G Dean
Categories:
Type: BOOK - Published: 2021-02-10 - Publisher: Arm Education Media

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
Embedded Systems Fundamentals with ARM Cortex-M Based Microcontrollers
Language: en
Pages:
Authors: Alexander G. Dean
Categories:
Type: BOOK - Published: 2017 - Publisher:

Embedded Systems Fundamentals with ARM CortexM Based Microcontrollers
Language: en
Pages: 316
Authors: Alexander G. Dean
Categories:
Type: BOOK - Published: 2017 - Publisher:

Embedded System Design with ARM Cortex-M Microcontrollers
Language: en
Pages: 576
Authors: Cem Ünsalan
Categories: Technology & Engineering
Type: BOOK - Published: 2022-01-03 - Publisher: Springer Nature

This textbook introduces basic and advanced embedded system topics through Arm Cortex M microcontrollers, covering programmable microcontroller usage starting f
Embedded Systems with Arm Cortex-M Microcontrollers in Assembly Language and C: Third Edition
Language: en
Pages: 736
Authors: Yifeng Zhu
Categories: Computers
Type: BOOK - Published: 2017-07 - Publisher:

This book introduces basic programming of ARM Cortex chips in assembly language and the fundamentals of embedded system design. It presents data representations
Digital Signal Processing Using Arm Cortex-M Based Microcontrollers
Language: en
Pages: 354
Authors: Cem Ünsalan
Categories:
Type: BOOK - Published: 2018-12-12 - Publisher: Arm Education Media

This textbook introduces readers to digital signal processing fundamentals using Arm Cortex-M based microcontrollers as demonstrator platforms. It covers founda
Embedded Systems
Language: en
Pages: 366
Authors: Jonathan W. Valvano
Categories: Technology & Engineering
Type: BOOK - Published: 2012-01-01 - Publisher: Createspace Independent Pub

Embedded systems are a ubiquitous component of our everyday lives. We interact with hundreds of tiny computers every day that are embedded into our houses, our
Embedded Systems
Language: en
Pages: 570
Authors: Jonathan W. Valvano
Categories: Technology & Engineering
Type: BOOK - Published: 2011 - Publisher: CreateSpace

This fourth edition includes the new TM4C1294-based LaunchPad. Most of the code in the book is specific for the TM4C123-based LaunchPad. However ... This fourth
The Insider's Guide to Arm Cortex-M Development
Language: en
Pages: 276
Authors: Zachary Lasiuk
Categories: Computers
Type: BOOK - Published: 2022-10-27 - Publisher: Packt Publishing Ltd

Learn and implement the latest Arm Cortex-M microcontroller development concepts such as performance optimization, security, software reuse, machine learning, c
The Definitive Guide to ARM® Cortex®-M0 and Cortex-M0+ Processors
Language: en
Pages: 779
Authors: Joseph Yiu
Categories: Computers
Type: BOOK - Published: 2015-06-15 - Publisher: Academic Press

The Definitive Guide to the ARM® Cortex®-M0 and Cortex-M0+ Processors, Second Edition explains the architectures underneath ARM’s Cortex-M0 and Cortex-M0+ p