ST STM32U5
Contents
The ST STM32U5 series are 32-bit ultra low power microcontrollers based on the ARM Cortex-M33 processor.
Device family
The STM32U5 device family consists of several subfamilies: STM32U57xxx, STM32U58xxx, STM32U59xxx and STM32U5Axxx.
STM32U57xxx | STM32U58xxx | STM32U59xxx | STM32U5Axxx |
---|---|---|---|
STM32U575AI | STM32U585AI | STM32U595ZJ | STM32U5A5ZJ |
STM32U575CI | STM32U585CI | STM32U599BJ | STM32U5A9BJ |
STM32U575OI | STM32U585OI | STM32U599NJ | STM32U5A9NJ |
STM32U575QI | STM32U585QI | ||
STM32U575RI | STM32U585RI | ||
STM32U575VI | STM32U585VI | ||
STM32U575ZI | STM32U585ZI | ||
STM32U575AG | STM32U585AG | ||
STM32U575CG | STM32U585CG | ||
STM32U575OG | STM32U585OG | ||
STM32U575QG | STM32U585QG | ||
STM32U575RG | STM32U585RG | ||
STM32U575VG | STM32U585VG | ||
STM32U575ZG | STM32U585ZG |
On-Chip Memory Regions
The internal flash consists of up to 4MiB of memory.
Device | Flash size (MiB) | Start address | End address |
---|---|---|---|
STM32U5xxxG | 1 | 0x08000000 | 0x080FFFFF |
STM32U5xxxI | 2 | 0x08000000 | 0x081FFFFF |
STM32U5xxxJ | 4 | 0x08000000 | 0x083FFFFF |
QSPI support
The ST STM32U5xxx device series comes with a OCTASPI controller which allows memory mapped read accesses to any (Q)SPI flash, connected to the Octa-SPI interface of the MCU. This allows the J-Link DLL to support flash programming through the Octa-SPI interface. Unfortunately, there is no generic way how to implement flash programming because the pins used to connect the SPI flash are not defined. Different pins can be used for the same OCTASPI alternate function and therefore, for each configuration, a slightly different RAMCode (different pin initialization / flash size) is required. Our flash algorithms are based on the pin configurations used on the official evaluation boards. For pin configuration, different from the one used in the example flash algorithm, please get in touch with SEGGER directly via our support system: https://www.segger.com/ticket/.
For further information regarding this as well as the flash algorithm, please refer to the following pages:
- STM32U5xx: STM32U585 Discovery
Reset
No special reset is required.
TrustZone
Flash programming with TrustZone enabled (TZEN = 1) is supported.
RDP level 0 and 0.5 is also supported. The RAMCode is only usable with RDP level 0, for RDP level 0.5 a RAMless flashloader has to be used. This is a technical limitation. The J-Link software is not able to decide at runtime when to use the RAMCode or RAMless flashloader. If you want to use the RAMless flashloader for RDP 0.5, you have to add "_RAMLess" to the device name, e.g. use "STM32U599NJ_RAMLess" instead of "STM32U599NJ". Please note that a significantly lower programming speed has to be expected with the RAMless flashloader.
Example Application
The following example project was created with the SEGGER Embedded Studio project wizard and should run out-of-the-box on any ST STM32U5xxxx device. It is a simple for loop incrementing the integer i. The application is linked into the internal flash.
SETUP
- J-Link software: V6.99a
- Embedded Studio: V5.34 (or later)
- Hardware: Socket board with ST STM32U5 mounted
- Link: File:ST STM32U5xxxx TestProject ES V534.zip