Login

Important information

This site uses cookies to store information on your computer. By continuing to use our site, you consent to our cookies.

ARM websites use two types of cookie: (1) those that enable the site to function and perform as required; and (2) analytical cookies which anonymously track visitors only while using the site. If you are not happy with this use of these cookies please review our Privacy Policy to learn how they can be disabled. By disabling cookies some features of the site will not work.

ARM Approved Training Center - Courses

MicroConsult GmbH

Languages Training Offered In: Presented in German and EnglishAreas of Training Expertise: Embedded system design (HW, SW) for ARM microcontroller architectures (e.g. STM32 Cortex-M4/M3/M1/M0, Cortex-R4, STR7/8 family, Atmel AT91 family, NXP LPC family, etc.).


MicroConsult GmbH


Cortex™-M4, M3, M1, M0 (ARM): Architecture and Embedded Programming

 

  • Course Type:  Hardware & Software
  • Course Length:  4 day(s)


Summary:

You know the Cortex™-M4, M3, M1, M0 architecture and can write software in C and Assembler. You can place the programs in memory and test them. You get the perfect introduction in developing Cortex™-M based systems.

Prerequisites:


A basic understanding of ANSI-C and microcontrollers.

Audience:


Hardware and software developers.

IMPORTANT NOTE: Please contact us to verify the training language for the individual dates (German or English): info@microconsult.de.

Modules:


Cortex™-M4, M3, M1, M0 (ARMv7-M) Processor Architecture
- Register organization, special purpose register
- Operation modes (handler/thread, privileged/unprivileged)
- Main stack, process stack
- Cortex™-M pipeline concept
- Cortex™-M memory map, system control block, bit banding

ARM Processor Cores - Overview
- Cortex M0, M1, M3, M4, R4, A8, A9
- ARM7/9/10/11

Cortex™-M4, M3, M1, M0 Instruction Set
- Thumb-2 instruction set
- Data processing instructions
- Branch and control flow instructions, subroutines
- Branch table, if ... then conditional blocks
- Data access instructions
- Assembler directives

Exception and Interrupt Handling
- Exception model
- Reset, NMI, faults, SysTick, debug, supervisor calls, external interrupts
- Tail chaining, late arriving
- Nested vector interrupt controller (NVIC)
- Interrupt configuration and status
- Interrupt prioritization, priority grouping

Reset Modes, Clock Generation, Power Management
- Clock generation
- Resets and Cortex™-M reset modes
- Power management
- System timer

Memory Interface
- Bus interfaces for: AMBA 3 bus, instruction/data memories,
system interface, external private peripherals

Memory Protection Unit MPU for Embedded Systems

Embedded Core Debugging
- Core and system debugging
- JTAG debug port
- 2-pin single wire debug port
- Trace port interface unit
- Embedded trace macrocell

Embedded Software Development
- Adjustment of library routines to hardware (retargeting)
- Placing code and data in memory (scatter loading)
- Linker description files
- Processor start-up, start-up file

Efficient C Programming for Cortex Architectures
- Compiler optimization, compiler options
- Interface C - Assembler
- Programming guidelines for Cortex compilers
- Optimized utilization of local and global data

Hardware-near C
- C statements and their execution in Assembler
- Access to peripherals in C
- Software architecture for embedded systems
- Structured description of peripherals
- Cortex Microcontroller Software Interface Standard (CMSIS)

Floating Point Unit, Digital Signal Processing

Practical Exercises with Keil µVision and ARM RealView Tools
- Exercises - key issues of the Cortex™-M4, M3, M1, M0 architecture
- Programs are tested on an evaluation board with a Cortex controller of the
NXP LPC1700 family or STMicroelectronics STM32 family
- Alternative tools can be used on request

EXTRA !!!
All participants get a FREE Nuvoton Cortex-M0 Development Kit
(NuMicro-SDK)!

[ Training Course list ]
ARM Connected
ARM Approved Training Center