The STM32 Cortex-M4 instruction set PM0214
182/262 PM0214 Rev 9
3.11.2 CPS
Change processor state.
Syntax
CPSeffect iflags
Where:
• ‘effect’ is one of:
IE: Clears the special purpose register.
ID: Sets the special purpose register.
• ‘iflags’ is a sequence of one or more flags:
i: Set or clear PRIMASK.
f: Set or clear FAULTMASK.
Operation
CPS changes the PRIMASK and FAULTMASK special register values. See Exception mask
registers on page 23 for more information about these registers.
Restrictions
The restrictions are:
• Use CPS only from privileged software, it has no effect if used in unprivileged software
• CPS cannot be conditional and so must not be used inside an IT block.
Condition flags
This instruction does not change the condition flags.
Examples
CPSID i ; Disable interrupts and configurable fault handlers (set PRIMASK)
CPSID f ; Disable interrupts and all fault handlers (set FAULTMASK)
CPSIE i ; Enable interrupts and configurable fault handlers(clear PRIMASK)
CPSIE f ; Enable interrupts and fault handlers (clear FAULTMASK)