Application note

Introduction to memory protection unit management on STM32 MCUs

Rev 11 - March 2026

Introduction

This application note describes how to manage the memory protection unit (MPU) in the STM32 products.

The MPU is an optional component for the memory protection. Including the MPU in the STM32 microcontrollers (MCUs) makes them more robust and reliable. The MPU must be programmed and enabled before using it. If the MPU is not enabled, there is no change in the memory system behavior.

This application note concerns all the STM32 products listed in Table 1 that include the Cortex®-M0+/M3/M4/M7 and Cortex®-M33/M55 design that supports the MPU.

For more details about the MPU, refer to the following documents available on www.st.com

  • Programming manual STM32F7 series and STM32H7 series Cortex®-M7 processor (PM0253)
  • Programming manual STM32F10xxx/20xxx/21xxx/L1xxxx Cortex®-M3 (PM0056)
  • Programming manual STM32 Cortex®-M0+ MCUs programming manual (PM0223)
  • Programming manual STM32 Cortex®-M4 MCUs and MPUs (PM0214)
  • Programming manual STM32 Cortex®-M33 MCUs (PM0264)
  • Programming manual STM32 Cortex®-M55 MCUs (PM0273)
Table 1. Applicable products
TypeProduct series
Microcontrollers
  • STM32C0 series, STM32C5 series
  • STM32F1 series, STM32F2 series, STM32F3 series, STM32F4 series, STM32F7 series
  • STM32G0 series, STM32G4 series
  • STM32H5 series, STM32H7 series
  • STM32L0 series, STM32L1 series, STM32L4 series, STM32L4+ series, STM32L5 series
  • STM32U0 series, STM32U3 series, STM32U5 series
  • STM32WB series, STM32WB0 series
  • STM32N6 series

General information

This application note applies to STM32 microcontrollers Arm®-based devices.

Note: Arm is a registered trademark of Arm Limited (or its subsidiaries) in the US and/or elsewhere.