Keil
STM32U0xx_DFP
STMicroelectronics STM32U0 Series Device Support
https://www.keil.com/pack/
https://github.com/Open-CMSIS-Pack/STM32U0xx_DFP.git
LICENSE
Active development ...
Initial release of STM32U0 Device Family Pack
Devices Support:
- Internal flash loader support for STM32U0xx Family
- SVD files support for U031/73/83 lines
ST
Device Support
Device Family Package STMicroelectronics
STM32U0
STM32U0xx
High-performance STM32U0 MCUs with Arm Cortex-M0+ core, MPU, 1.3 DMIPS at 56 MHz.
Sequence("CheckID");
// Replication of Standard Functionality
Write32(0xE000EDF0, 0xA05F0001); // Enable Core Debug via DHCSR
// Device Specific Debug Setup
Write32(0x4002103C, Read32(0x4002103C) | 0x08000000); // Set RCC_APBENR1.DBGEN
Write32(0x40015804, DbgMCU_CR); // DBGMCU_CR: Configure MCU Debug
Write32(0x40015808, DbgMCU_APB1FZR); // DbgMCU_APB1FZR: Configure APB1 Freeze Behavior
Write32(0x4001580C, DbgMCU_APB2FZR); // DbgMCU_APB2FZR: Configure APB2 Freeze Behavior
__var pidr1 = 0;
__var pidr2 = 0;
__var jep106id = 0;
__var ROMTableBase = 0;
__ap = 0; // AHB-AP
ROMTableBase = ReadAP(0xF8) & ~0x3;
pidr1 = Read32(ROMTableBase + 0x0FE4);
pidr2 = Read32(ROMTableBase + 0x0FE8);
jep106id = ((pidr2 & 0x7) << 4 ) | ((pidr1 >> 4) & 0xF);
Query(0, "Not a genuine ST Device! Abort connection", 1);
Message(2, "Not a genuine ST Device! Abort connection.");
// Default values for variables in debug sequences are configured with a *.dbgconf file in the user project
__var DbgMCU_CR = 0x00000006; // DBGMCU_CR: DBGMCU configuration register
__var DbgMCU_APB1FZR = 0xC0001833; // DbgMCU_APB1FZR: Configure APB1 peripheral freeze behavior
__var DbgMCU_APB2FZR = 0x00070800; // DbgMCU_APB2FZR: Configure APB2 peripheral freeze behavior
// Default values for variables in debug sequences are configured with a *.dbgconf file in the user project
__var DbgMCU_CR = 0x00000006; // DBGMCU_CR: DBGMCU configuration register
__var DbgMCU_APB1FZR = 0xC0001833; // DbgMCU_APB1FZR: Configure APB1 peripheral freeze behavior
__var DbgMCU_APB2FZR = 0x00070800; // DbgMCU_APB2FZR: Configure APB2 peripheral freeze behavior
// Default values for variables in debug sequences are configured with a *.dbgconf file in the user project
__var DbgMCU_CR = 0x00000006; // DBGMCU_CR: DBGMCU configuration register
__var DbgMCU_APB1FZR = 0xC0001833; // DbgMCU_APB1FZR: Configure APB1 peripheral freeze behavior
__var DbgMCU_APB2FZR = 0x00070800; // DbgMCU_APB2FZR: Configure APB2 peripheral freeze behavior
STMicroelectronics STM32U0 Devices
STMicroelectronics STM32U0 Device and CMSIS-CORE
Configuration via STM32CubeMX
#define RTE_DEVICE_CUBE_MX
#define CMSIS_device_header "stm32u0xx.h"
Create a CubeMX basic solution with project