ARM Cortex-M3 Software Design is a 4-day comprehensive class that introduces the ARM Cortex™-M3 architecture and the ARM development systems.
In the second part of the course, the emphasis is on the development and debugging of ARM software code for ARM based systems.
The class familiarises the delegates with the ARM Cortex-M3 architecture, as well as the corresponding Thumb-2 command set. Examples will be used to explain how to write exception handlers (e.g. interrupt handlers) and ROM code.
Comprehensive workshops have been specially developed by Doulos to re-inforce and challenge the extent of learning. Both RVDS and MDK toolsets are supported.
Who should attend? Software developers who wish to develop system and application software for ARM Cortex-M3 processor based systems.
What will you learn? Introduction to the Cortex-M3 processor architecture and infrastructure Thumb-2 instruction sets RealView Developer Suite (RVDS) Embedded software development using RVDS Exception handling Compiler hints and tips Embedded core debug Exercises using a Cortex-M3 simulation model
Pre-requisites An in-depth knowledge of microprocessors is not essential, but would be advantageous. However, all participants must be computer literate and should have a basic understanding of the programming language C.
Training materials The training materials for this class are based on ARM®'s own material, with the added value of Doulos developed workshops. A dedicated workbook is available for delegates who wish to use the MDK tool set, rather than RVDS, during the workshops.
Structure and Content
Day 1 * ARM Corporate Introduction * Cortex-M3 Introduction * RealView Development Suite Overview * RVDS Introductory Workbook * Cortex-M3 Processor Core Day 2 * Thumb-2 Instruction Set * Migrating Legacy ARM/Thumb Code to Cortex-M3 (Thumb-2) * Cortex-M3 Interrupts Day 3 * Cortex-M3 Exceptions * Cortex-M3 Memory Types * Cortex-M3 Memory Protection Unit Day 4 * Cortex-M3 Debug * Embedded Software Development * Embedded Software Development Practical * Compiler Hints and Tips