The Designer's Guide to the Cortex-M Microcontrollers gives you an easy-to-understand introduction to the concepts required to develop programs in C with a Cortex-M based microcontroller. The book begins with an overview of the Cortex-M family, giving architectural descriptions supported with practical examples, enabling you to easily develop basic C programs to run on the Cortex-M0/M0+/M3 and M4 and M7. It then examines the more advanced features of the Cortex architecture such as memory protection, operating modes, and dual stack operation.
Once a firm grounding in the Cortex-M processor has been established the book introduces the use of a small footprint RTOS and the CMSIS-DSP library. The book also examines techniques for software testing and code reuse specific to Cortex-M microcontrollers. With this book you will learn: the key differences between the Cortex-M0/M0+/M3 and M4 and M7; how to write C programs to run on Cortex-M based processors; how to make the best use of the CoreSight debug system; the Cortex-M operating modes and memory protection; advanced software techniques that can be used on Cortex-M microcontrollers; how to use a Real Time Operating System with Cortex-M devices; how to optimize DSP code for the Cortex-M4; and how to build real time DSP systems.
- Includes an update to the latest version (5) of MDK-ARM, which introduces the concept of using software device packs and software components
- Includes overviews of the new CMSIS specifications
- Covers developing software with CMSIS-RTOS showing how to use RTOS in a real world design
- Provides a new chapter on the Cortex-M7 architecture covering all the new features
- Includes a new chapter covering test driven development for Cortex-M microcontrollers
- Features a new chapter on creating software components with CMSIS-Pack and device abstraction with CMSIS-Driver
- Features a new chapter providing an overview of the ARMv8-M architecture including the TrustZone hardware security model
1. Introduction to the Cortex-M processor family 2. Developing software for the Cortex-M family 3. Cortex-M Architecture 4. Cortex Microcontroller Software Interface Standard 5. Advanced Architectural features 6. Cortex-M7 Architecture 7. Debugging with CoreSight 8. Practical DSP for the Cortex-M4 9. Developing with CMSIS-RTOS 10. Practical RTOS Techniques 11. Test Driven Development 12. Designing Software Components 13. Closing Thoughts
Trevor Martin graduated from Brunel University in 1988 with an Honors degree in Electrical and Electronic Engineering. In the same year he began work as a Junior Hardware engineer at Philips Medical Systems. He joined Hitex in 1992 as a Technical specialist for 8 Bit Microcontroller development tools. This included the 8051,68HC11\05\08 microcontrollers. He also gained experience with networking protocols such as CAN,USB and TCP/IP. Since 2000 he has been supporting ARM based microcontrollers, initially ARM7 and ARM9 CPU then moving to Cortex-M processor. To promote these devices he has worked closely with both NXP and ST and also TI and Freescale to a lesser extent. Since 2005 he has written a number of "Insiders Guide? Books which are introductory tutorials to ARM based microcontroller families such as LPC2000, STR9 and STM32. He also runs regular training courses, a general Cortex Microcontroller workshop and also device specific courses.