cancel
Showing results for 
Search instead for 
Did you mean: 

Clarification Needed on SYSCFG Register Map for STM32F411RE

Leo-A
Associate

Hello everyone,

I’m working on writing a driver for the STM32F411RE microcontroller and have a question regarding the SYSCFG register map. I’ve been referring to the STM32F411 Reference Manual (RM0383)

https://www.st.com/resource/en/reference_manual/rm0383-stm32f411xce-advanced-armbased-32bit-mcus-stmicroelectronics.pdf

, specifically the SYSCFG section, and I’m a bit confused about the reserved spaces in the register map. 

typedef struct {
    volatile uint32_t MEMRMP;       // 0x00 - Memory remap register
    volatile uint32_t PMC;          // 0x04 - Peripheral mode configuration register
    volatile uint32_t EXTICR[4];    // 0x08 to 0x14 - External interrupt configuration registers
// 8 bytes reserved? please reassure me stating a reason volatile uint32_t CMPCR; // 0x20 - Compensation cell control register } SYSCFG_RegDef_t;

 on Table 22. SYSCFG register map and reset values, it does not explicitly state that there are 8 bytes reserved? I’ve carefully reviewed the manual, but I’m still unsure about the reserved space. unlike other maps which it clearly states the reserved spaces.

 

1 ACCEPTED SOLUTION

Accepted Solutions
TDK
Guru

The offsets of the registers are shown. There is an 8-byte gap in the offsets, so those addresses are not specified and therefore reserved.

TDK_0-1740329922809.png

 

It may not explicitly state reserved bytes, but it explicitly states the offsets, which implies a gap between registers. Yes, it should probably explicitly be in there.

 

The SYSCFG_RegDef_t typedef doesn't show up in any of ST's current github repos. Maybe an older file. Definitely needs a gap in there to be valid.

If you feel a post has answered your question, please click "Accept as Solution".

View solution in original post

1 REPLY 1
TDK
Guru

The offsets of the registers are shown. There is an 8-byte gap in the offsets, so those addresses are not specified and therefore reserved.

TDK_0-1740329922809.png

 

It may not explicitly state reserved bytes, but it explicitly states the offsets, which implies a gap between registers. Yes, it should probably explicitly be in there.

 

The SYSCFG_RegDef_t typedef doesn't show up in any of ST's current github repos. Maybe an older file. Definitely needs a gap in there to be valid.

If you feel a post has answered your question, please click "Accept as Solution".