The Stm32 Cortex-M0 Processor; Programmers Model; Processor Modes; Stacks - ST STM32F0 Series Programming Manual

Hide thumbs Also See for STM32F0 Series:
Table of Contents

Advertisement

PM0215
2

The STM32 Cortex-M0 processor

2.1

Programmers model

This section describes the Cortex-M0 programmers model. In addition to the individual core
register descriptions, it contains information about the processor modes and stacks.
2.1.1

Processor modes

The processor modes are:
Thread mode: Used to execute application software.
Handler mode: Used to handle exceptions.
The Cortex-M0 does not support multiple privilege levels. It can always use all instructions
and access all resources.
2.1.2

Stacks

The processor uses a full descending stack. This means the stack pointer indicates the last
stacked item on the stack memory. When the processor pushes a new item onto the stack, it
decrements the stack pointer and then writes the item to the new memory location.
The processor implements two stacks, with independent copies of the stack pointer,( see
Stack pointer (SP) register R13 on page
the main stack and
the process stack,
In Thread mode, the CONTROL register controls whether the processor uses the main
stack or the process stack, see
In Handler mode, the processor always uses the main stack.
The options for processor operations are:
Table 2.
Processor mode
Thread
Handler
1. See
Control register on page
The processor enters Thread mode when it comes out of reset.
The processor returns to Thread mode when it has finished exception
processing.
Control register on page
Summary of processor mode and stack usage
Applications
Exception handlers
16.
Doc ID 022979 Rev 1
The STM32 Cortex-M0 processor
13):
Used to execute
16.
Stack used
Main stack or process stack
Main stack
(1)
11/91

Advertisement

Table of Contents
loading
Need help?

Need help?

Do you have a question about the STM32F0 Series and is the answer not in the manual?

Questions and answers

Subscribe to Our Youtube Channel

Table of Contents