Cortex-M Software Development Fundamentals
Offered By: Arm Education via Coursera
Course Description
Overview
This course delves into software development topics such as working with Arm C/C++ compilers and Arm debug tools to optimize your software, whether it's for performance or code size. This course also looks more closely at the Common Microcontroller Software Interface Standard and how it helps ensure that software targeted at Cortex-M devices can be written using a consistent approach.
Syllabus
- Course Introduction
- This course delves into software development topics such as working with Arm C/C++ compilers and Arm debug tools to optimize your software, whether it's for performance or code size. This course also looks more closely at the Common Microcontroller Software Interface Standard and how it helps ensure that software targeted at Cortex-M devices can be written using a consistent approach.This module describes the essential compiler and linker options required in order to develop applications targeted at different Arm embedded systems. The presentation includes information about Arm Compiler for Embedded and the GNU toolchain.
- Compiler & Linker Fundamentals
- Debug & Trace
- This module describes the debug and trace features available in the Armv8-M Mainline architecture.
- Booting & Initialisation
- The Booting and Initialization module takes you through essential startup code that can ensure that the processor and system are configured and initialised appropriately before the 'main' function is reached in the C program.
- Cortex-M Walkthrough
- This module introduces Tarmac trace from Fast Models, and uses that to walk through everything a Cortex-M3 device would do if used with CMSIS code from Reset to the main() function, to triggering an interrupt using the NVIC. Although the module is related to a Cortex-M3 device, the details presented also apply to any Armv7-M / Armv8-M device, acting as a recap of all the content covered in this M-profile course.
Taught by
Yang Song, Shirley Zou, Edmund Player, Walker Huang, Salman Arif and Nick Tompkins
Related Courses
Adding Electronics to Rapid PrototypesArizona State University via Coursera Advanced Armv8-M Features
Arm Education via Coursera Arduino y algunas aplicaciones
Universidad Nacional Autónoma de México via Coursera Arm Cortex-M Processors Overview
Arm Education via Coursera Intro C/C++ Prog Micoroctl
Cabrillo College via California Community Colleges System