12. Reset and clock control (RCC)

12.1 Introduction

The reset and clock control (RCC) manages the different kind of reset and generates all clocks for the bus and peripherals.

12.2 RCC pins and internal signals

Table 101 lists the RCC inputs and output signals connected to package pins or balls.

Table 101. RCC input/output signals connected to package pins or balls

Signal nameSignal typeDescription
NRSTI/OSystem reset, can be used to provide reset to external devices
OSC32_INI32 kHz oscillator input
OSC32_OUTO32 kHz oscillator output
OSC_INISystem oscillator input
OSC_OUTOSystem oscillator output
MCOOOutput clock for external devices
LSCOOLow-speed output clock for external devices
AUDIOCLKIExternal kernel clock input for SAI1
AUDIOSYNCIBluetooth audio synchronization

12.3 RCC reset functional description

The following types of reset exist:

12.3.1 Power reset

A power reset is generated when one of the following events occurs:

A BOR sets all registers to their reset values. Five BOR threshold levels can be selected by user option bytes. The Backup domain is always reset on the \( V_{BOR0} \) threshold, as is the power-on reset.

When exiting Standby mode, all registers in the Core domain are set to their reset value. Registers outside the Core domain (RTC, TAMP, WKUP, IWDG and Standby modes control) are not impacted.

12.3.2 System reset

A system reset sets all registers to their reset values except the reset flags in RCC control/status register (RCC_CSR) and the registers in the Backup domain.

A system reset is generated when one of the following events occurs:

The reset source can be identified by checking the reset flags in RCC control/status register (RCC_CSR) .

The device internal reset sources (such as BOR, WWDG, IWDG) act on the NRST pin, always kept low during the delay phase. The internal reset signal is output on the NRST pin. The pulse generator guarantees a minimum reset pulse duration of \( t_{O(RST)} \) (see the datasheet) for each internal reset source.

In case of an external reset, the reset pulse is generated while the NRST pin is asserted low. In case of an internal reset, the internal pull-up \( R_{PU} \) is deactivated to save the power consumption through the pull-up resistor.

Figure 35. Simplified diagram of the reset circuit

Simplified diagram of the reset circuit. The diagram shows the NRST pin connected to an external reset source and an internal pull-up resistor (Rpu) connected to VDD. The NRST signal is processed through a filter and a pulse generator. The filter output is connected to an OR gate that generates the System reset signal. The pulse generator output is connected to another OR gate that generates the Backup domain reset (BDRST) signal. The BDRST signal is also connected to an OR gate that generates the Power-on reset signal. The Power-on reset signal is connected to an OR gate that generates the BOR0 power-on reset signal. The BOR0 power-on reset signal is connected to an OR gate that generates the BORx reset (x = 1 to 4) signal. The BORx reset signal is connected to an OR gate that generates the WWDG reset signal. The WWDG reset signal is connected to an OR gate that generates the IWDG reset signal. The IWDG reset signal is connected to an OR gate that generates the Software reset signal. The Software reset signal is connected to an OR gate that generates the Low-power manager reset signal. The Low-power manager reset signal is connected to an OR gate that generates the Option byte loader reset signal.
Simplified diagram of the reset circuit. The diagram shows the NRST pin connected to an external reset source and an internal pull-up resistor (Rpu) connected to VDD. The NRST signal is processed through a filter and a pulse generator. The filter output is connected to an OR gate that generates the System reset signal. The pulse generator output is connected to another OR gate that generates the Backup domain reset (BDRST) signal. The BDRST signal is also connected to an OR gate that generates the Power-on reset signal. The Power-on reset signal is connected to an OR gate that generates the BOR0 power-on reset signal. The BOR0 power-on reset signal is connected to an OR gate that generates the BORx reset (x = 1 to 4) signal. The BORx reset signal is connected to an OR gate that generates the WWDG reset signal. The WWDG reset signal is connected to an OR gate that generates the IWDG reset signal. The IWDG reset signal is connected to an OR gate that generates the Software reset signal. The Software reset signal is connected to an OR gate that generates the Low-power manager reset signal. The Low-power manager reset signal is connected to an OR gate that generates the Option byte loader reset signal.

Software reset

The SYSRESETREQ bit in core application interrupt and reset control register must be set to force a software reset on the device.

Low-power mode security reset

To avoid that critical applications mistakenly enter a low-power mode, low-power mode security resets are available. If enabled in option bytes, a reset is generated in any of the following conditions:

For further information on the user option bytes, refer to Section 7.4.1: Option bytes description .

Option byte loader reset

The option byte loader reset is generated when the OBL_LAUNCH bit is set in the FLASH_CR register. This bit is used to launch by software the option byte loading.

12.3.3 Backup domain reset

The Backup domain has two specific resets.

A Backup domain reset is generated when one of the following events occurs:

A Backup domain reset only affects the LSE oscillator, the RTC, TAMP and the backup registers and the RCC_BDCRx registers.

12.3.4 Individual peripheral reset

Individual peripherals can be reset by software with their reset register bit in the RCC.

12.3.5 CPU reset

The CPU reset vector is selected via the boot option bytes.

12.4 RCC clocks functional description

The following clock sources can be used to drive the system clock (SYSCLK):

The HSI16 is used as system clock source after startup from reset, configured at 16 MHz.

The device has the following additional clock sources:

Each clock source can be switched on or off independently when it is not used, to optimize power consumption.

The AHB1, AHB2, the APB1, APB2 and APB7 frequencies are derived from the SYSCLK and are provided with several prescalers to configure them. The maximum frequency of these AHB and APB domains is 100 MHz.

The AHB5 frequency is also derived from the SYSCLK and is provided with a prescaler, which enables to configure it. The maximum frequency of this AHB domains is 32 MHz.

Most peripheral kernel clocks are derived from their bus clock (hclk1, hclk5, pclk1, pclk2 or pclk7). In addition, some peripherals receive an independent kernel clock. For these peripherals the kernel clock can be selected by software between several sources, thanks to RCC_CCIPRx registers (x = 1, 2, 3):

The RCC feeds the CPU system timer (SysTick) clock with the AHB clock (hclk1) divided by 8, or LSE or LSI or HSI16 divided by 4. The SysTick can work with this clock or directly with the CPU bus clock (hclk1), configurable in the CPU SysTick control and status register.

FCLK acts as CPU free-running clock.

Figure 36. Clock tree

Figure 36. Clock tree diagram showing the internal clock distribution and sources for the microcontroller. It details the HSE32, LSI, and PLL1 clock sources and their respective dividers and outputs to various system components like CPU, RAM, flash, and peripherals.

The diagram illustrates the internal clock tree of the microcontroller. It shows the following clock sources and their distribution:

Figure 36. Clock tree diagram showing the internal clock distribution and sources for the microcontroller. It details the HSE32, LSI, and PLL1 clock sources and their respective dividers and outputs to various system components like CPU, RAM, flash, and peripherals.

MSV75645V3

12.4.1 HSE32 clock with trimming

The HSE32 32 MHz external oscillator has the advantage of producing a very accurate rate on the main clock, and provides on-chip trimming capability in RCC_ECSCR1. The HSE32 must be used for any 2.4 GHz RADIO transmission and reception.

The high-speed external clock signal (HSE32) can be generated from the following clock sources:

The clock source must be placed as close as possible to the oscillator pins to minimize output distortion and startup stabilization time.

HSE32 is controlled from the CPU and from the 2.4 GHz RADIO.

HSE32 can be switched on and off using the HSEON bit in the RCC clock control register (RCC_CR) . HSE32 must be enabled with the HSEON bit when used for the CPU.

The HSERDY flag in the RCC clock control register (RCC_CR) indicates if the HSE32 oscillator is stable and forwarded or not for use by the CPU. At startup, the clock is not released until this bit is set by hardware. An interrupt can be generated if enabled in the RCC clock interrupt enable register (RCC_CIER) . See data sheet for HSE32 stabilization ready time.

When waking up from a sleep timer event, the 2.4 GHz RADIO enables HSE32 for its own purpose with STRADIOCLKON, independently of the HSEON bit. To use the 2.4 GHz RADIO outside a sleep timer event, software must enable HSE32 with HSEON.

External crystal (HSE32 crystal)

The associated hardware configuration is shown in Figure 37 . Refer to the electrical characteristics section of the datasheet for more details.

Frequency trimming

When using HSE32 with external crystal, the load capacitors are provided by the integrated capacitor banks, these can be trimmed. The HSE32 load capacitor trimming allows a compensation of device manufacturing process variations, used crystal and PCB design. The HSE32 frequency can be tuned in the application via the RCC_ECSCR1 register.

The HSE32 frequency can be measured by outputting the HSE32 clock on the MCO when in Run or Sleep mode.

External clock (HSE32 external)

The associated hardware configuration is shown in Figure 37 . Refer to the electrical characteristics section of the datasheet for more details.

Figure 37. HSE 32 clock sources

Diagram of external clock configuration. An external source is connected to the OSC_IN pin. The OSC_OUT pin is shown as 'Not connected'. Diagram of crystal configuration. A crystal is connected between OSC_IN and OSC_OUT pins. Tunable load capacitors C_LIN and C_LOUT are connected to each pin. C_LIN is connected to OSC_IN and ground. C_LOUT is connected to OSC_OUT and ground.
Clock sourceHardware configuration
External clock
Crystal
Diagram of external clock configuration. An external source is connected to the OSC_IN pin. The OSC_OUT pin is shown as 'Not connected'. Diagram of crystal configuration. A crystal is connected between OSC_IN and OSC_OUT pins. Tunable load capacitors C_LIN and C_LOUT are connected to each pin. C_LIN is connected to OSC_IN and ground. C_LOUT is connected to OSC_OUT and ground.

12.4.2 HSI16 clock

The HSI16 clock signal is generated from an internal 16 MHz RC oscillator.

The HSI16 RC oscillator has the advantage of providing a clock source at low cost. It also has a faster startup time than the HSE32 crystal oscillator. However, even with calibration, the frequency is less accurate than an external crystal oscillator.

The HSI16 clock is used as system clock after reset and wake-up from Stop and Standby modes. It can also be used as a backup clock source (auxiliary clock) for the CPU if the HSE32 crystal oscillator fails. Refer to Section 12.4.8 .

The HSI16 RC oscillator status is indicated by the HSI16 Ready (HSIRDY) flag in the RCC clock control register (RCC_CR) . At startup, the HSI16 RC output clock is not released until this bit is set by hardware.

The HSI16 RC can be switched on and off using the HSION bit in the RCC clock control register (RCC_CR) .

Calibration

The RC oscillator frequencies can vary from one chip to another due to manufacturing process variations, this is why each device is factory calibrated by ST for 1 % accuracy at \( T_A = 25^\circ\text{C} \) .

After reset, the factory calibration value is loaded in the HSICAL bits in the RCC internal clock sources calibration register 3 (RCC_ICSCR3) .

If the application is subject to voltage or temperature variations this may affect the RC oscillator speed. The HSI16 frequency can be trimmed in the application using the HSITRIM in the RCC internal clock sources calibration register 3 (RCC_ICSCR3) .

For more details on how to measure the HSI16 frequency variation, refer to Section 12.4.19 .

12.4.3 PLL1

The RCC features one PLL1 that is generally used to provide clocks to the CPU and to some peripherals. The PLL1 must be enabled only in range 1. Before entering range 2 the PLL must be disabled.

The PLL1 integrated into the RCC offers the following features:

The PLL1 is controlled via the registers RCC_PLL1DIVR, RCC_PLL1FRACR, RCC_PLL1CFGR and RCC_CR.

The frequency of the reference clock provided to the PLL1 (ref_ck) must range between 4 and 16 MHz. The user application must program properly the PLL1M dividers in the RCC PLL1 configuration register (RCC_PLL1CFGR) in order to match this condition. In addition, PLL1RGE must be set according to the reference input frequency to guarantee an optimal performance of the PLL1.

To reduce the power consumption, it is recommended to configure the VCO output to the lowest possible frequency.

PLL1N loop divider must be programmed to achieve the expected frequency at VCO output. In addition, the VCO output range (128 to 544 MHz) must be respected.

The PLL1 operates in integer mode when PLL1FRACEN is 0 and the PLL is enabled with PLL1ON. At any time fractional mode can be enabled by setting PLL1FRACN to the required value and subsequently setting PLLFRACEN from 0 to 1. The \( \Sigma\Delta \) modulator is designed to minimize the jitter impact while allowing very small step frequency adjustments. To update the fractional value, first set PLL1FRACEN to 0 before updating the PLL1FRACN value, and subsequently set PLL1FRACEN to 1. The old PLL1FRACN value is used until the new value is activated by setting PLL1FRACEN from 0 to 1. PLL1FRACN can be updated by software only when PLL1FRACEN is 0.

The PLL1 can be enabled by setting PLL1ON to 1 in the RCC clock control register (RCC_CR) . The PLL1RDY bit indicates that the PLL1 is ready (meaning locked).

Note: Before enabling the PLL1, make sure that the reference frequency (ref_ck) provided to the PLL1 is stable.

The hardware prevents writing PLL1ON to 0 if the PLL1 is currently used to deliver the system clock.

The following PLL1 parameters cannot be changed once the PLL1 is enabled: PLL1M, PLL1SRC, PLL1N, PLL1RGE, PLL1P, PLL1Q, and PLL1R.

To insure an optimal behavior of the PLL1 when one of the post-dividers (PLL1P, PLL1Q, or PLL1R) is not used, the application must set the enable bit (PLL1PEN, PLL1QEN, or PLL1REN), and, preferably, also the corresponding post-divider field (PLL1P, PLL1Q, or PLL1R) to 0.

If the above rules are not respected, the PLL1 output frequency is not guaranteed.

Output frequency computation

When the PLL1 is operated in integer mode, the VCO frequency ( \( F_{VCO} \) ) is given by

\[ F_{VCO} = F_{ref\_ck} \times PLL1N \]

When the PLL1 is operated in fractional mode, it is possible to change the value of the PLL1FRACN on-the-fly without disturbing the PLL1 output. This feature can be used either to generate a specific frequency from any crystal value with a good accuracy, or to fine-tune the frequency on-the-fly.

For PLL1, the VCO frequency is given by the following formula:

\[ F_{VCO} = F_{ref\_ck} \times (PLL1N + PLL1FRACN / 2^{13}) \]

For both integer and fractional mode, the PLL1 output frequency is given by

\[ F_{pll(y)clk} = F_{VCO} / (PLL1(y) + 1), \text{ with } y = P, Q, \text{ or } R. \]

The PLL1 is disabled by hardware when:

The fractional information used by the PLL is reset when disabling the PLL.

PLL1 initialization phase

Here below the recommended PLL1 initialization sequence in integer and fractional mode (PLL1 is supposed to be disabled at the start of the sequence):

  1. 1. Initialize the PLL1 registers according to the required frequency.
    • – For integer mode, set PLL1FRACEN to 0.
    • – For fractional mode, set PLL1FRACN to the required initial value and then set PLL1FRACEN to 1.
  2. 2. Once the PLL1ON bit is set to 1, the application must wait till PLL1RDY bit goes to 1. As long as PLL1RDY = 0, the PLL1FRACEN bit must not be altered.
  3. 3. When the PLL1RDY bit goes to 1, the PLL1 is ready to be used.
  4. 4. If the application intends to tune the PLL1 frequency on-the-fly
    1. a) PLL1FRACEN must be set to 0. This allows to update the PLL1FRACN value while keeping the PLL running.
    2. b) A new value can be uploaded into PLL1FRACN.
    3. c) PLL1FRACEN must be set to 1 to activate the new programmed value in PLL1FRACN and to have it taken into account by the PLL.

Note: When the PLL1RDY goes to 1, it means that the difference between the PLL1 output frequency and the target value is lower than \( \pm 2\% \) .

12.4.4 LSE clock

The LSE crystal is a 32.768 kHz low-speed external crystal or ceramic resonator. It provides a low-power but highly accurate clock source to the real-time clock peripheral (RTC) for clock/calendar, the 2.4 GHz RADIO sleep timer or other timing functions.

The LSE crystal is switched on and off using the LSEON bit in RCC Backup domain control register (RCC_BDCR1) . If the LSE is used by other peripherals or functions than RTC and

TAMP, the LSESYSEN bit must be also be set in the RCC Backup domain control register (RCC_BDCR1) (refer to LSE when used by peripherals other than RTC/TAMP and RCC functions ).

The crystal oscillator driving strength can be changed at runtime using the LSEDRV[1:0] bits to obtain the best compromise between robustness and short start-up time on one side and low-power-consumption on the other side. The LSE drive can be decreased to a lower drive capability when the LSE is ON. However, once LSEDRV is selected, the drive capability can not be increased if LSEON = 1.

The LSERDY flag in the RCC Backup domain control register (RCC_BDCR1) indicates whether the LSE crystal is stable or not. At startup, the LSE crystal output clock signal is not released until this bit is set by hardware. An interrupt can be generated if enabled in the RCC clock interrupt enable register (RCC_CIER) .

In addition glitches on LSE can be filtered by setting LSEGON. LSEGON must be written when the LSE is disabled (LSEON = 0 and LSERDY = 0).

The LSE oscillator can be trimmed using the LSETRIM trimming bits in RCC Backup domain control register (RCC_BDCR1) . After BOR0 reset and OBL_LAUNCH when SBF is cleared the factory trimmed values are loaded in the LSETRIM bits, which can subsequently be modified by the application software.

External source (LSE bypass)

In this mode, an external clock source must be provided. It can have a frequency of up to 1 MHz. This mode is selected by setting the LSEBYP bits in the RCC Backup domain control register (RCC_BDCR1) . The external clock signal (square) with ~50 % duty cycle, must drive the OSC32_IN pin while the OSC32_OUT pin can be used as GPIO (see Figure 38 ).

Figure 38. LSE 32 clock sources

Diagram of external clock configuration. An external square wave signal is connected to the OSC_IN pin. The OSC_OUT pin is connected to a GPIO pin. Both pins are represented by small squares. Diagram of crystal/ceramic resonator configuration. A crystal resonator is connected between the OSC_IN and OSC_OUT pins. Each pin is also connected to ground through a load capacitor, labeled CL1 and CL2 respectively. The capacitors are represented by two parallel lines.
Clock sourceHardware configuration
External clock
Crystal/ceramic resonators
Diagram of external clock configuration. An external square wave signal is connected to the OSC_IN pin. The OSC_OUT pin is connected to a GPIO pin. Both pins are represented by small squares. Diagram of crystal/ceramic resonator configuration. A crystal resonator is connected between the OSC_IN and OSC_OUT pins. Each pin is also connected to ground through a load capacitor, labeled CL1 and CL2 respectively. The capacitors are represented by two parallel lines.

LSE when used by peripherals other than RTC/TAMP and RCC functions

By default, when enabled by LSEON, the LSE is sent only to RTC and TAMP (assuming that RTCSEL = 01).

If the LSE is needed for other peripherals (such as peripheral clock or trigger source), or if the LSE is used by a RCC function (such as LSCO or MCO), the Lsesys clock must be enabled with LSESYSEN according to the sequence below:

  1. 1. Wait till LSE clock is ready and LSEON bit is set and LSERDY bit goes to 1 in RCC Backup domain control register (RCC_BDCR1) .
  2. 2. Set the LSESYSEN bit in RCC_BDCR1.
  3. 3. Wait till LSESYS clock is ready (LSESYSRDY = 1 in RCC_BDCR1).

The LSE power consumption is increased when LSESYSEN = 1.

12.4.5 LSI clock

The low-power clock LSI can be kept running in Stop and Standby modes for the IWDG, RTC, and TAMP and 2.4 GHz RADIO sleep timer. The LSI clock can be generated from two sources:

Selection between LSI1 or LSI2 is done by the LSI2ON bit. Whenever LSI2 is enabled (LSI2ON = 1) and LSI2 is ready (LSY2RDY = 1) the LSI clock is generated by LSI2. Else LSI1 is selected as LSI clock source.

Table 102. LSI clock selection

LSI1ON / LSI1RDYLSI2ON / LSI2RDYLSI clock
0 / 00 / 0No clock
1 / 10 / 0LSI1 RC source
0 / 01 / 1LSI2 RC source
1 / 11 / 1

When the IWDG is started the LSI clock is forced on and cannot be disabled. When both the LSI1 and LSI2 are disabled LSI1 is forced on. When LSI select LSI2 RC source, the LSI1 RC source can be disabled.

LSI1 low-power

Caution: The LSI1 must not be used for the 2.4 GHz RADIO sleep timer.

The LSI1 RC can be switched on and off using the LSI1ON bit in the RCC Backup domain control register (RCC_BDCR1) .

The LSI1RDY flag in the RCC Backup domain control register (RCC_BDCR1) indicates if the LSI1 oscillator is stable or not. At startup, the clock is not released until this bit goes to 1 by hardware. An interrupt can be generated if enabled in the RCC clock interrupt enable register (RCC_CIER) . After LSI1 ready, there is an additional delay of up to seven clock cycles before clocking a peripheral.

The clock frequency is either ~32 kHz or ~250 Hz, depending on the LSI1PREDIV bit in RCC Backup domain control register (RCC_BDCR1) . Setting this bit results in a lower consumption (refer to the electrical characteristics section of the datasheet for more details).

Note: When the IWDG is enabled or when the RTC or TAMP is clocked by the LSI, the LSI1PREDIV cannot be changed anymore.

LSI2 low-drift

The LSI2 RC can be switched on and off using the LSI2ON bit in the RCC Backup domain control register (RCC_BDCR1) .

The LSI2RDY flag in the RCC Backup domain control register (RCC_BDCR1) indicates if the LSI2 oscillator is stable or not. At startup, the clock is not released until this bit goes to 1 by hardware. An interrupt can be generated if enabled in the RCC clock interrupt enable register (RCC_CIER) . After LSI2 ready, there is an additional delay of up to six clock cycles before clocking a peripheral.

The LSI2 makes possible trimming using the LSI2CFG and LSI2MODE in RCC Backup domain control register (RCC_BDCR2) .

12.4.6 System clock (SYSCLK) selection

Different clock sources can be used to drive the system clock (SYSCLK):

The system clock maximum frequency is 100 MHz. After a system reset, the HSI16 oscillator at 16 MHz, is selected as system clock. When a clock source is used directly or through the PLL1 as a system clock, it is not possible to stop it.

A switch from one clock source to another occurs only if the target clock source is ready (e.g. clock stable after startup delay or PLL1 locked). If a clock source that is not yet ready is selected, the switch occurs when the clock source becomes ready. Status bits in the RCC clock configuration register 1 (RCC_CFGR1) indicate which clocks are ready and which clock is currently used as a system clock.

Table 103 gives the different bus frequencies depending on the product voltage range.

Table 103. SYSCLK and bus maximum frequency

Product voltageSYSCLK / AHB1 / AHB2 / AHB4 / APB1 / APB2 / APB7AHB5
Range 1100 MHz32 MHz
Range 216 MHz12 MHz

Note: After reset voltage scaling range 2 is used with SYSCLK at 16 MHz, hclk5 at 8 MHz and 1 wait state on FLASH, SRAM1, and SRAM2.

System clock frequency change and hclk5

When increasing the SYSCLK frequency above 32 MHz, the hclk5 division ratio in HPRE5 must be adapted to keep the hclk5 frequency below or equal to 32 MHz.


Warning: The AHB5 clock frequency must never exceed 32 MHz. When this is not respected device operation cannot be guaranteed.


For this purpose HPRE5 must be written by software with the divider value corresponding to the \( f_{PLL1RCLK} \) frequency, before switching the system clock to the PLL1 source in SW. The written HPRE5 value is used by the hardware to divide the SYSCLK, at the same time as the SYSCLK clock switch to the PLL1 source.

  1. 1. Lock PLL1 with pll1rclk at required frequency
  2. 2. Optional: select PLL1RCLKPRE to divide
  3. 3. Set HPRE5 value to be used with \( f_{PLL1RCLK} \) frequency
  4. 4. Switch SYSCLK source to pll1rclk in SW
  5. 5. Wait for SYSCLK switch to be completed in SWS ( \( hclk5 = f_{PLL1RCLK} / HPRE5 \) )

When decreasing the SYSCLK frequency from a frequency above 32 MHz from PLL1 source to the HSE32 or HSE16 source, the hclk5 is set to not divided by hardware.

  1. 6. Switch SYSCLK source away from PLL1
  2. 7. Wait for SYSCLK switch to be completed in SWS (SYSCLK = HSI16 or HSE32, \( hclk5 = SYSCLK / HDIV5 \) )

The software written HPRE5 value takes effect only when the SYSCLK has been switched to PLL1 in SWS.

When SW = PLL1 and SWS = not PLL1, writes to HPRE5 are ignored.

Note: The HPRE5 divider is not used when SYSCLK source is HSE32, HSE32 divided by 2 or HSI16 (SWS = not PLL1).

In range 2 the hclk5 frequency must be kept below or equal to 8 MHz. Before entering in range 2 HDIV5 must select divide by 2.

When going from range 1 to range 2:

  1. 1. Set HDIV5 to divide by 2
  2. 2. Switch SYSCLK source to HSE32 divided by 2 or HSI16
  3. 3. Wait for SYSCLK switch to be completed in SWS
  4. 4. Select range 2 in VOS in PWR_VOSR.
  5. 5. Optionally, wait until the ACTVOS in PWR_SVMR = VOS in PWR_VOSR and ACTVOSRDY flag is set in PWR_SVMR.

When going from range 2 to range 1:

  1. 1. Select range 1 in VOS in PWR_VOSR
  2. 2. Wait until VOSRDY flag is set in PWR_VOSR
  3. 3. Optionally clear HDIV5 to no longer divide by 2

Note: When entering in Stop 1 and Stop 2 mode hardware set hclk5 frequency to divider by 2 in HDIV5.

Note: The HDIV5 divider is not used when SYSCLK source is PLL1 (SWS = PLL1).

Note: When 2.4 GHz RADIO is active, the device must be in range 1 and hclk5 must be \( \geq 16 \) MHz and HDIV5 must be cleared.

12.4.7 Clock source frequency versus voltage scaling

Table 104. Clock source maximum frequency

Product voltageHSI16HSE32PLL1 outputs (VCO min to max)
Range 1AllowedAllowed100 MHz (128 to 544 MHz)
Range 2AllowedAllowed (divided by 2)Not allowed

12.4.8 HSE32 clock security system (HSECSS)

The HSECSS can be activated by software with the HSECSSON. In this case, the clock detector is enabled after the HSE32 oscillator wake-up time and disabled when this oscillator is stopped.

Thanks to the HSECSS it is possible to detect the absence of a clock. See the datasheet for more information.

If a failure is detected on the HSE32 clock, the HSE32 oscillator is automatically disabled. A clock failure event is sent to some timers break input and an interrupt is generated to inform the software about the failure (clock security system interrupt HSECSSI). This allows the MCU to perform rescue operations. The HSECSSI is linked to the core NMI (non-maskable interrupt) exception vector.

Once the HSECSS is enabled and if the HSE32 clock fails, the HSECSSI occurs and a NMI is automatically generated. The NMI is executed indefinitely unless the HSECSSI pending bit is cleared. As a consequence, in the NMI ISR, the user must clear the HSECSSI by setting the HSECSSC bit in the RCC clock interrupt clear register (RCC_CICR) .

If the HSE32 oscillator is used directly or indirectly as the system clock (indirectly means: it is used as PLL1 input clock and the PLL1 clock is used as system clock), a detected failure causes a switch of the system clock to the HSI16 oscillator and the disabling of the HSE32 oscillator. If the HSE32 clock (divided or not) is the clock entry of the PLL1 used as system clock when the failure occurs, the PLL1 is disabled too.

12.4.9 LSE clock security system on (LSECSS)

A clock security system on LSE can be activated by software writing the LSECSSON bit in the RCC Backup domain control register (RCC_BDCR1) . This bit can be disabled only by a hardware reset or RTC software reset, or after a failure detection on LSE. LSECSSON must be written after LSE is enabled (LSEON enabled) and ready (LSERDY set by hardware) and after the RTC clock has been selected by RTCSEL.

The LSECSS is working in all modes, also under system reset (excluding power-on reset and BDRST).

The clock security system on LSE detects when the LSE disappears or in case of over frequency. In addition, the glitches on LSE can be filtered by setting LSEGFON. LSEGFON must be written when LSE is disabled (LSEON = 0 and LSERDY = 0).

If a failure is detected on the external 32 kHz oscillator, the LSE clock is no longer supplied and no hardware action is made to register settings.

In case of an LSECSS detection event (LSECSSD = 1 in the RCC_BDCR1), the software must disable the LSECSSON bit, stop the defective 32 kHz oscillator (disabling LSEON), change the low-power clock source (no clock or LSI or HSE32), or take any required action to secure the application.

The LSECSS detection event is connected to the internal tamper 3 of the TAMP peripheral. The internal tamper 3 must be enabled (ITAMP3E = 1 in TAMP_CR1 register) and the associated interrupt enabled (ITAMP3IE in TAMP_IER) to enable wake-up from the low-power modes.

An LSECSS detection event erases also the TAMP backup registers and backup SRAM unless ITAMP3POM = 1 in TAMP_CR3, see Section 38: Tamper and backup registers (TAMP) for more details.

Refer to the datasheet for LSECSS electrical characteristics.

12.4.10 ADC kernel clock

The ADC kernel clock source is selected thanks to ADCSEL in the RCC peripherals independent clock configuration register 3 (RCC_CCIPR3) .

If the application requires that the ADC is precisely triggered by a (LP)TIM without any uncertainty, the hclk must be selected as ADC kernel clock source. The other clock sources are asynchronous to (LP)TIM therefore an uncertainty of the trigger instant is added by the resynchronization between the two clock domains.

12.4.11 RTC and TAMP kernel clock

The RTC kernel clock source is used by RTC and TAMP and can be either the HSE32 / 32, LSE or LSI clock. It is selected by programming the RTCSEL bits in the RCC Backup domain control register (RCC_BDCR1) . This selection cannot be modified without resetting the Backup domain. For a proper operation of the RTC the RTC bus clock pclk must always be configured to get a frequency greater or equal compared to the RTC kernel clock.

The TAMP does not require any kernel clock if only the backup registers are used, with tamper in edge detection mode. All other tamper detection modes require a kernel clock. Refer to Section 38: Tamper and backup registers (TAMP) for more details.

The LSE and the LSI clocks are in the Backup domain, whereas the HSE32 clock is not. Consequently:

When the RTC and TAMP clock is LSE or LSI, the RTC and TAMP remain clocked and functional under system reset.

If the LSE is needed only for the RTC or TAMP, LSESYSEN must be kept at reset value to get the lowest consumption.

12.4.12 2.4 GHz RADIO bus clock

The 2.4 GHz RADIO bus clock can be enabled by software with RADIOEN and RADIOSMEN bits, and by hardware on a sleep timer wake-up event by STRADIOCLKON. Before accessing the 2.4 GHz RADIO sleep timer registers the bus clock must be ready, indicated by RADIOCLKRDY register bit.

Table 105. 2.4 GHz RADIO bus clock control

Device stateCPU stateRADIOENRADIOSMENSTRADIOCLKON2.4 GHz RADIO state2.4 GHz RADIO bus clock
XX0X0XOff
RunRUN1XXXOn
XX1XOn
SleepSLEEP100XOff
110ACTIVEOn
XX1SLEEP/DEEPSLEEPOff
Stop 0DEEPSLEEP100XOff
110ACTIVEOn
XX1SLEEP/DEEPSLEEPOff
Stop 1 (1)DEEPSLEEPXX0SLEEP/DEEPSLEEPOff
Stop 2 (1)(2)XX0DEEPSLEEPOff
Standby (1)(2)RESETXX0DEEPSLEEPOff

1. When 2.4 GHz RADIO state is ACTIVE or STRADIOCLKON is 1, the device does not enter Stop 1, Stop 2, or Standby modes.

2. When 2.4 GHz RADIO state is SLEEP the device does not enter Stop 2 and Standby modes.

When exiting from low-power mode and the 2.4 GHz RADIO bus clock has been stopped, the RADIOCLKRDY must be rechecked before accessing the 2.4 GHz RADIO registers.

The 2.4 GHz RADIO bus clock is kept active only in low-power modes, when STRADIOCLKON is set and/or RADIOEN and RADIOSMEN are set and the 2.4 GHz RADIO is active.

12.4.13 2.4 GHz RADIO kernel clocks

The 2.4 GHz RADIO has different kernel clocks

The 2.4 GHz RADIO baseband kernel clock is enabled by register bit BBCLKEN. This clock has the HSE32 as clock source. For this purpose the HSE32 oscillator is enabled by hardware on a 2.4 GHz RADIO sleep timer wake-up event setting the STRADIOCLKON register bit or by software setting HSEON register bit. When the 2.4 GHz RADIO no longer needs the HSE32 and bus clocks, software must clear the BBCLKEN, STRADIOCLKON, and if HSE32 is not used by any other function, the HSEON bits.

Figure 39. Radio control

Figure 39. Radio control block diagram showing clock sources and control logic for the 2.4 GHz RADIO.

The diagram shows the clock distribution for the 2.4 GHz RADIO. - **Clock Sources**: OSC HSI16 (16 MHz) and HSE32 OSC (32 MHz). - **Logic**: - A multiplexer selects between HSI16 and 'others' to generate 'sysclk'. - 'sysclk' feeds into an 'EN' (Enable) block controlled by an OR gate combining 'STRADIOCLKON' and 'RADIOEN'. The output passes through an 'HPRE5' prescaler to become 'to 2.4 GHz RADIO (hclk5)'. - 'HSE32' from the 32 MHz oscillator feeds into an 'EN' block controlled by an OR gate combining 'STRADIOCLKON', 'HSEON', and 'BBCLKEN'. The output is the 'to 2.4 GHz RADIO kernel clock'. - 'HSE_RF' from the oscillator feeds an 'EN' block to become 'to 2.4 GHz RADIO RF clock'. - 'sysclk' also goes to 'to CPU hclk'. - 'HSE32' also goes 'to sysclk mux'. - **Control Bits**: STRADIOCLKON, RADIOEN, HSEON, and BBCLKEN are shown as control inputs to the logic gates.

Figure 39. Radio control block diagram showing clock sources and control logic for the 2.4 GHz RADIO.

When in range 2, the 2.4 GHz RADIO baseband kernel clock is divided by 4 by hardware. The 2.4 GHz RADIO baseband kernel clock must be enabled to access the 2.4 GHz RADIO RXTX RAM or sequence RAM.

The 2.4 GHz RADIO bus clock (hclk5) too is enabled by hardware via the STRADIOCLKON, independently from RADIOEN and RADIOSMEN bits. When the 2.4 GHz RADIO no longer needs its bus clock, software must clear the STRADIOCLKON bit. The STRADIOCLKON bit keeps the 2.4 GHz RADIO bus clock and baseband kernel clock active when entering low power modes.

Outside any scheduled radio activity, when in Run mode, software can enable the 2.4 GHz RADIO bus clock by the RADIOEN and RADIOSMEN register bits. In this case the RADIOSMEN allows to keep the 2.4 GHz RADIO bus clock and baseband kernel clock active when entering low power modes.

The 2.4 GHz RADIO sleep timer kernel clock source can be either the HSE32 / 1000, or LSE or LSI clock. LSI must be used only when its source is LSI2. It is selected by programming the RADIOSTSEL bits in the RCC Backup domain control register (RCC_BDCR1) .

12.4.14 Timer kernel clock

The timer (TIM) kernel clock frequency is derived from the bus clock pclk. The frequency is automatically defined by hardware:

12.4.15 Independent watchdog kernel clock

The independent watchdog uses the LSI as kernel clock.

If the independent watchdog (IWDG) is started by either user option or software and the LSI clock is disabled (LSI1ON and LSI2ON are cleared to 0), the LSI1 oscillator is forced on. After the LSI oscillator ready delay, the LSI clock is provided to the IWDG.

12.4.16 USB OTG_HS clock

The USB OTG_HS kernel clock is generated by the USB OTG_HS PHY. This USB OTG_HS PHY can accept only frequencies of following list (16, 19.2, 20, 24, 26 or 32 MHz), with an accuracy of \( \pm 400 \) ppm. Those frequencies can be achieved using HSE32, HSE32/2, pll1pclk, or pll1pclk/2, selected by the OTGHSEL multiplexer.

12.4.17 SysTick calibration value register

The Cortex-M33 with TrustZone security extension embeds two SysTick timers.

When TrustZone is activated, the following SysTick timers are available:

When TrustZone is disabled, only one SysTick timer is available.

The Cortex-M33 SysTick timer calibration value (STCALIB) is 0x2710. It gives a reference time base of 10 ms based on a SysTick clock frequency of 1 MHz. In order to match the 10 ms time base for an application running at a given frequency, the SysTick reload value must be programmed as follows in the Cortex-M33 SYST_RVR register:

Example: SysTick clock source is CPU clock hclk1 of 100 MHz, to match a time base of 1 ms: SysTick reload value = \( (100 \times STCALIB) - 1 = 0x3E8 \)

Note: When using debug Stop mode (DBG_STOP), before the CPU enters deep sleep, it is recommended to disable the SysTick by software.

12.4.18 Clock-out capability

• MCO

The microcontroller clock output (MCO) capability allows the clock to be output onto the external MCO pin. One of the following clock signals can be selected as MCO clock.

The selection is controlled by the MCOSEL bits in the RCC clock configuration register 1 (RCC_CFGR1) . The selected clock can be divided with the MCOPRE field in the RCC clock configuration register 1 (RCC_CFGR1) .

The MCO clock output requires the corresponding GPIO pin alternate function to select MCO.

Slow clock output (LSCO) allows one of the low-speed clocks to be output onto the external LSCO pin:

This output remains available in all Run, Sleep, Stop and Standby modes. The selection is controlled by the LSCOSEL bit and enabled with the LSCOEN in the RCC Backup domain control register (RCC_BDCR1) .

12.4.19 Internal/external clock measurement

The HSI16 and LSI frequency can indirectly be measured by mean of the TIM16 or TIM17 channel 1 input capture and LPTIM1 or LPTIM2 channel 2 input capture.

HSI16 calibration using LSE

The primary purpose of connecting the LSE to the channel 1 input capture of TIM16 and TIM17 and to the channel 2 input capture of LPTIM1, is to be able to precisely measure the HSI16 frequency. When using TIM16 or TIM17 for this purpose the HSI16 must be used as system clock source.

The number of HSI16 clock counts between two edges of the LSE signal provides a measure of the internal clock period. Taking advantage of the high precision of LSE crystal (typically a few hundred ppm), the internal clock frequency can be determined with the similar resolution depending on the measurement time. The HSI16 can be trimmed to compensate the process, temperature and/or voltage related frequency deviations.

The basic concept consists in providing a relative measurement (such as the HSI16/LSE ratio). The precision is therefore closely related to the ratio between the two clock sources, the higher the ratio, the better the measurement.

The HSI16 oscillator has dedicated user-accessible calibration bits (HSITRIM) for this purpose.

HSI16 calibration using HSE32

The HSE32 must be used as system clock and the timer input capture must be connected to HSI16/256. TIM16 and 17 channel 1 input capture, as well and the LPTIM2 input capture 2, are connected to the divided oscillator only when TIMICSEL is different from 0b0xx in the RCC peripherals independent clock configuration register 1 (RCC_CCIPR1) .

LSI calibration using HSE32

The calibration of the LSI follows the same principle as the HSI16 calibration, but changing the reference clock. The LSI clock must be connected to the channel 1 input capture of the TIM16 or TIM17, or to the channel 2 input capture of the LPTIM1. Then defining the HSE32 as system clock source. The number of HSE32 clock counts between edges of the LSI signal, provides a measure of the internal low-speed clock period.

The basic concept consists in providing a relative measurement (such as the HSE32/LSI ratio). The precision is therefore closely related to the ratio between the two clock sources, the higher the ratio, the better the measurement.

12.4.20 Audio synchronization

The audio synchronization system is used provide capture compare information between the Bluetooth radio packet timing and audio clock.

Before enabling the audio synchronization counter the auto-reload, clock prescaler, and capture prescaler must be provided.

A capture value of the counter and the capture prescaler value are updated on the first audio synchronization trigger event in the capture period. Subsequent audio trigger synchronization events during this capture period are discarded. When enabled, an associated capture event interrupt can be generated.

After enabling the audio synchronization counter in CEN, the capture prescaler starts counting the capture period only after having received a first synchronization from a Bluetooth radio packet.

A capture error flag is set when no audio trigger synchronization event occurs during the capture period. When enabled an associated capture error interrupt event can be generated.

The compare can be used to generate an interrupt when the counter reaches the compare value.

Refer to Figure 40 for the block diagram.

Figure 40. Audio synchronization counter block diagram

Figure 40. Audio synchronization counter block diagram. The diagram shows a block containing a Clock prescaler, a Counter, a Capture prescaler, a Capture unit, a Compare unit, and an Interrupt unit. Inputs include AHB, audiosync_ker_ck, and audiosync_itr. The Counter is connected to the Clock prescaler and receives input from the Auto-reload register. The Capture unit receives input from the Capture prescaler and the Counter. The Compare unit receives input from the Counter and the Compare register. The Interrupt unit receives input from the Capture and Compare units and outputs audiosync_it. MS56532V1 is noted on the right side.
Figure 40. Audio synchronization counter block diagram. The diagram shows a block containing a Clock prescaler, a Counter, a Capture prescaler, a Capture unit, a Compare unit, and an Interrupt unit. Inputs include AHB, audiosync_ker_ck, and audiosync_itr. The Counter is connected to the Clock prescaler and receives input from the Auto-reload register. The Capture unit receives input from the Capture prescaler and the Counter. The Compare unit receives input from the Counter and the Compare register. The Interrupt unit receives input from the Capture and Compare units and outputs audiosync_it. MS56532V1 is noted on the right side.

How to use the audio synchronization counter

In the example below the following parameters have been used:

Figure 41. Audio synchronization timing example

Figure 41. Audio synchronization timing example. This timing diagram shows the relationship between audiosync_itr, counter, capture prescaler, capture, audiosync_it, and ENC signals. The counter sequence includes R0, N, C, R0, x, C, R0, R0, x, C, R0, M, C, R. The capture prescaler sequence includes 0, 1, TP, 0. The capture sequence includes 0, N, 0, M. The audiosync_it sequence shows pulses corresponding to capture and compare events. The ENC signal is shown as a low-active enable. MS56533V1 is noted on the right side.
Figure 41. Audio synchronization timing example. This timing diagram shows the relationship between audiosync_itr, counter, capture prescaler, capture, audiosync_it, and ENC signals. The counter sequence includes R0, N, C, R0, x, C, R0, R0, x, C, R0, M, C, R. The capture prescaler sequence includes 0, 1, TP, 0. The capture sequence includes 0, N, 0, M. The audiosync_it sequence shows pulses corresponding to capture and compare events. The ENC signal is shown as a low-active enable. MS56533V1 is noted on the right side.

The capture value is updated only the first audiosync_itr event in the capture period. In the first capture period counter value N and capture prescaler value 0 are captured. The capture period counting is only started after the very first audiosync_itr event after enabling the audio synchronization counter with ENC. The other audiosync_itr events during this capture period are discarded. In the next capture period counter value M and capture prescaler value 0 are captured.

The counter drift is calculated by software as follows:

\[ \text{Drift} = 10^6 \times (N - M) / (R \times TP) \quad (\text{ppm}) \]

The trigger event may be delayed due to missing received packets at the 2.4 GHz RADIO. This delay must be compensated for in the calculation.

Error handling

When no audiosync_itr event has been received during the capture period a capture error interrupt will be generated when enabled.

12.4.21 Peripherals clock gating and autonomous mode

Peripherals clock gating in Run mode

Each peripheral clock can be enabled by the corresponding EN bit in the RCC_AHBxENR and RCC_APBxENR registers.

When the peripheral clock is not active, read or write accesses to the peripheral registers are not supported.

The enable bit has a synchronization mechanism to create a glitch-free clock for the peripheral. After the enable bit is set, the clock is active after two cycles of the peripheral bus clock.

Caution: Just after enabling the peripheral clock, the software must wait for these two clock cycles before accessing the peripheral registers.

Peripherals clock gating in Sleep and Stop modes

When a peripheral is enabled in RCC_AHBxENR or RCC_APBxENR registers, its bus and kernel clocks can be automatically gated off when the device is in Sleep and Stop modes, by clearing the peripheral SMEN bit in the RCC_AHBxSMENR or RCC_APBxSMENR registers. Both peripheralEN and peripheralSMEN bit of the peripheral must be set to keep the peripheral bus and kernel clocks on in Sleep and Stop modes. In Stop modes, the peripheral bus and kernel clocks are further more active only upon the peripheral clock requests. Except for the 2.4 GHz RADIO, which requests its bus clock independently from the setting in the RADIOEN and RADIOSMEN register bits.

For the 2.4 GHz RADIO the bus clock runs only in Sleep and Stop modes when the STRADIOCLKON is set, or when the 2.4 GHz RADIO is active and RADIOEN and RADIOSMEN are set.

Caution: All peripherals on the same bus, with its peripheralSMEN bit set, will get a clock when an autonomous peripheral on this same bus request its clock. Peripherals that are not supposed to be clocked in Stop mode must have their peripheralSMEN bit cleared.

Caution: The peripheralSMEN bit of the peripheral must be set to allow the generation of an interrupt capable to wake up the device from Sleep and Stop mode. This is not necessary when the peripheral wake-up interrupt is generated though the EXTI (GPIO, COMP and PVD).

Peripherals clock gating and autonomous mode in Stop 0/1 modes

Some peripherals support autonomous mode (refer to Table 106: Autonomous peripherals ). These peripherals are able to generate a kernel clock request and a AHB/APB bus clock request when they need, in order to operate and update their status register even in Stop mode. Depending on the peripheral configuration, either a DMA request or an interrupt can be associated to the peripheral event.

When the system enters low-power mode (Stop and Standby) and an autonomous peripheral bus clock request is active or upon an autonomous peripheral bus clock request during Stop mode, Stop 0 mode is entered and the HSI16 oscillator is kept active or woken

up and selected as SYSCLK and the bus clocks for all peripherals, with their clock enabled in peripheralEN and peripheralSMEN, are activated.

Note: As soon as the CPU enters deep sleep, the system enter Stop mode and the autonomous mode operation peripheral bus clock and SYSCLK is switched to HSI16 at 16 MHz. If autonomous peripheral operation with higher bus clock frequencies is needed, the CPU must enter Sleep and keep the system in Run with the configured Run mode SYSCLK clock frequency.

If the autonomous peripheral is configured with DMA requests enabled, a data transfer is performed thanks to the peripheral bus clock. The bus clocks as well as the oscillator (HSI16) are automatically switched off as soon as the transfer is finished, and no other peripheral requests its bus clock.

If the autonomous peripheral is configured with interrupt enabled, the interrupt wakes up the device into Run mode.

The autonomous peripherals are autonomous in Stop 0 with the GPDMA1 and SRAM1, SRAM2 and are autonomous in Stop 1 and Stop 2 modes on their kernel clock.

Table 106 shows the list of peripherals with autonomous mode capability.

Table 106. Autonomous peripherals

DomainPeripheralAutonomous in Stop 0 modeAssociated DMAAssociated SRAM
AHB1, APB1, APB2U(S)ARTx (x = 1, 2, 3)Yes (1)GPDMA1SRAM1,
SRAM2
SPIx (x = 1, 2)
I2Cx (x = 1, 2, and 4)
LPTIM2
AHB4, APB7LPUART1
SPI3
I2C3
LPTIM1
ADC4
AHB52.4 GHz RADIO + RXTXRAMYes (2)--

1. Enabled when both peripheralEN and peripheralSMEN bits of the peripheral are set.

2. Enabled when the 2.4 GHz RADIO bit STRADIOCLKON and BBCLKEN bits are set and the 2.4 GHz RADIO is active. Available only in Stop 0 range 1.

For peripherals the autonomous mode is enabled in Stop 0, Stop 1 and Stop 2 modes if both peripheralEN and peripheralSMEN bits of the peripheral are set.

For the 2.4 GHz RADIO sleep timer it is operational down to standby with retention mode. Waking up from the sleep timer puts the system in Run mode and enables the 2.4 GHz RADIO bus clock. The 2.4 GHz RADIO active mode is enabled by software when in addition BBCLKEN bit is set, and allows autonomous operation in Stop 0 range 1 mode.

If an autonomous peripheral requests its kernel clock in Stop mode, the internal oscillator (HSI16) is woken up if it was off and the kernel clock is propagated only to the peripheral requesting it and the peripheralEN and peripheralSMEN bits are set. When the peripheral

releases its kernel clock request, the HSI16 is switched off if no other peripheral requests it. Only the 2.4 GHz RADIO uses HSE32 as kernel clock which is woken-up if it was off by a 2.4 GHz RADIO each time it is woken up by the sleep timer.

If an autonomous peripheral requests its bus clock in Stop mode and the peripheral peripheralEN and peripheralSMEN bits are set, the internal oscillator (HSI16) is woken up if it was off and the system clock is propagated to all peripherals on the associated AHB bus configured with both peripheralEN and peripheralSMEN bits set.

Caution: The bus clock will propagate to all peripherals (autonomous peripherals and non-autonomous peripherals) on the same AHB bus which have both peripheralEN and peripheralSMEN bits set.

HSI16 can be forced to remain ON in Stop mode, by configuring HSIKERON in the RCC_CR. In this case, the oscillator is propagated only to the peripheral kernel clocks of the enabled autonomous peripherals which select this oscillator as kernel clock. This allows the peripheral baudrates or conversion rates increase, as there is no need to wait for the oscillator wake-up time when the peripheral requests its kernel clock.

The LSE or LSI selected as peripheral kernel clock remains always ON in Stop modes.

12.5 RCC security and privilege functional description

12.5.1 RCC TrustZone® security protection modes

TrustZone security is activated by the TZEN user option bit in the FLASH_OPTR. The RCC is able to secure RCC configuration and status bits from being modified by non-secure accesses.

This is configured through the RCC Backup domain control register (RCC_BDCR1) to prevent non-secure access to read or modify the following features:

If SPRIV is set in the RCC privilege configuration register (RCC_PRIVCFGGR) , the RCC_SECCFGR register can be written only by secure and privileged access. If SPRIV is cleared in RCC_PRIVCFGGR, RCC_SECCFGR can be written only by secure access, privileged or unprivileged.

RCC_SECCFGR can be read by secure, non-secure, privileged and unprivileged access.

When a peripheral is configured as secure, its related clock, reset, clock source selection and clock enable during low-power modes control bits, are also secure see Table 107 .

A peripheral is secure when:

Table 107 summarizes the RCC secured bits following the security configuration bit in the RCC_SECCFGR register.

When one security configuration bit is set, some configuration and status bits are secured. The RCC registers may contain secure and non-secure bits:

When the TrustZone security is disabled (TZEN = 0), all registers are non-secure. RCC_SECCFGR write accesses are ignored.

Table 107. RCC security configuration summary

Configuration bit in RCC_SECCFGRSecured bitsCorresponding register
HSISECHSION, HSIKERON, HSIRDYRCC_CR
HSICAL, HSITRIMRCC_ICSCR3
HSIRDYIERCC_CIER
HSIRDYIFRCC_CIFR
HSIRDYCRCC_CICR
HSESECHSEON, HSERDY, HSECSSON, HSEPRERCC_CR
HSERDYIERCC_CIER
HSERDYIF, HSECSSFRCC_CIFR
HSERDYC, HSECSSCRCC_CICR
HSETRIMRCC_ECSCR1
LSISECLSI1ON, LSI1RDY, LSI1PREDIV, LSI2ON, LSI2RDY, LSCOSEL, LSCOENRCC_BDCR1
LSI2MODE, LSI2CFGRCC_BDCR2
LSI1RDYIE, LSI2RDYIERCC_CIER
LSI1RDYIF, LSI2RDYIFRCC_CIFR
LSI1RDYC, LSI2RDYCRCC_CICR
LSESECLSECSSON, LSECSSD, LSEDRV, LSEBYP, LSERDY, LSEON, LSEGFON, LSESYSRDY, LSESYSEN, LSCOSEL, LSCOENRCC_BDCR1
LSERDYIERCC_CIER
LSERDYFRCC_CIFR
LSERDYCRCC_CICR

Table 107. RCC security configuration summary (continued)

Configuration bit in RCC_SECCFGRSecured bitsCorresponding register
SYSCLKSECSW, SWS, MCOSEL, MCOPRERCC_CFGR1
SYSTICKSELRCC_CCIPR1
VOSPWR_VOSR
PRESCSECHPRE, PPRE1, PPRE2RCC_CFGR2
PPRE7RCC_CFGR3
HPRE5, HDIV5RCC_CFGR4
PLL1SECPLL1SRC, PLL1RGE, PLL1FRACEN, PLL1M, PLL1PEN, PLL1QEN, PLL1REN, PLL1RCLKPRE, PLL1RCLKSTEP, PLL1RCLKPRERDYRCC_PLL1CFGR
PLL1N, PLL1P, PLL1Q, PLL1RRCC_PLL1DIVR
PLL1FRACNRCC_PLL1FRACR
PLL1RDY, PLL1ONRCC_CR
PLL1RDYIERCC_CIER
PLL1RDYFRCC_CIFR
PLL1RDYCRCC_CICR
RMVFSECRMVFRCC_CSR

12.5.2 RCC privilege protection modes

By default, after reset, all RCC registers can be read or written with both privileged and unprivileged access except RCC privilege configuration register (RCC_PRIVCFGR) that can be written only with privileged access. RCC_PRIVCFGR can be read by secure and non secure, privileged and unprivileged access.

The SPRIV bit in RCC_PRIVCFGR can be written only with secure privileged access. This bit configures the privileged access of all RCC secure functions (as defined by RCC Backup domain control register (RCC_BDCR1) or by the GTZC-TZSC for securable peripherals, or by the peripheral itself in case of TrustZone-aware peripherals).

When the SPRIV bit is set in RCC_PRIVCFGR:

The NSPRIV bit in RCC_PRIVCFGR can be written with privileged access only, secure or non-secure. This bit configures the privileged access of all RCC non-secure functions (as defined by RCC_SECCFGR, or by the GTZC-TZSC for securable peripherals, or by the peripheral itself in case of TrustZone-aware peripherals).

When the NSPRIV bit is set in RCC_PRIVCFGR:

12.6 RCC low-power modes

Stopping the system clock in Stop and Standby modes can be overridden for debugging by setting the DBG_STOP, and/or DBG_STANDBY. For more details, refer to Section 45.13.4: Low-power mode emulation .

Note: When using debug Stop mode (DBG_STOP) a SysTick event wakes up the device. It is recommended to disable the SysTick, before the CPU enters deep sleep.

When entering and exiting Stop modes, the system clock is HSI16, whose user trim is kept.

When leaving the Standby modes, the system clock is HSI16. The user trim is lost.

If a Flash memory programming operation is ongoing, Stop and Standby mode entry is delayed until the Flash memory interface access is finished. If an access to the APB domain is ongoing, Stop and Standby modes entry is delayed until the APB access is finished. If an autonomous peripheral bus clock request is active, Stop 0 mode is entered. If an other low-power mode (Stop 1, Stop 2 and Standby) is selected in LPMS, entry to the selected low-power mode is delayed until the autonomous peripheral bus clock request is released.

12.7 RCC interrupts

Table 108. Interrupt sources and control

Interrupt vectorInterrupt event flagDescriptionEnable control bitInterrupt clear methodExit from Sleep modeExit from Stop, Standby modes
RCCLSI1RDYFLSI1 readyLSI1RDYIE and LSISEC = 0Set LSI1RDYC to 1YesNo
LSI2RDYFLSI2 readyLSI2RDYIE and LSISEC = 0Set LSI2RDYC to 1
LSERDYFLSE readyLSERDYIE and LSESEC = 0Set LSERDYC to 1
HSIDRYFHSI16 readyHSIDRYIE and HSISEC = 0Set HSIRDYC to 1
HSERDYFHSE32 readyHSERDYIE and HSESEC = 0Set HSERDYC to 1
PLL1RDYFPLL1 readyPLL1RDYIE and PLL1SEC = 0Set PLL1RDYC to 1
RCC_S (1)LSI1RDYFLSI1 readyLSI1RDYIE and LSISEC = 1Set LSI1RDYC to 1YesNo
LSI2RDYFLSI2 readyLSI2RDYIE and LSISEC = 1Set LSI2RDYC to 1
LSERDYFLSE readyLSERDYIE and LSESEC = 1Set LSERDYC to 1
HSIDRYFHSI16 readyHSIDRYIE and HSISEC = 1Set HSIRDYC to 1
HSERDYFHSE32 readyHSERDYIE and HSESEC = 1Set HSERDYC to 1
PLL1RDYFPLL1 readyPLL1RDYIE and PLL1SEC = 1Set PLL1RDYC to 1
TAMPITAMP3F (2)LSECSS failureLSECSSON and ITAMP3E (2) and ITAMP3IE (2)Set CITAMP3F (2) to 1YesYes
NMIHSECSSFHSECSS failureHSECSSON (3)Set HSECSSC to 1YesNo
AUDIOSYNCCAFCapture eventCAIEWrite CAF to 0YesNo
COFCompare eventCOIEWrite COF to 0
CAEFCapture error eventCAEIEWrite CAEF to 0

1. The RCC secure interrupt vector is used only when TrustZone is enabled.

2. The LSECSS failure event (LSECSSD) is connected to TAMP internal tamper 3. In order to get the interrupt associated to this event, the internal tamper 3 must be enabled and the internal tamper 3 interrupt must be enabled. The ITAMP3F, ITAMP3E, ITAMP3IE and CITAMP3F bits are in the TAMP peripheral.

3. It is not possible to mask this interrupt when the security system feature is enabled (HSECSSON = 1).

12.8 RCC registers

12.8.1 RCC clock control register (RCC_CR)

Address offset: 0x000

Reset value: 0x0000 0500

Access: no wait state; word, half-word and byte access

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.PLL1
RDY
PLL1
ON
Res.Res.Res.HSE
PRE
HSECS
SON
Res.HSE
RDY
HSEON
rrwrwrsrrw
1514131211109876543210
Res.Res.Res.Res.Res.HSI
RDY
HSIKER
ON
HSIONRes.Res.Res.Res.Res.Res.Res.Res.
rrwrw

Bits 31:26 Reserved, must be kept at reset value.

Bit 25 PLL1RDY : PLL1 clock ready flag

Set by hardware to indicate that the PLL1 is locked.

Access to the bit can be secured by RCC PLL1SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: PLL1 unlocked

1: PLL1 locked (PLL1RDY remains set when PLL1 is selected as sysclk and PLL1 is disabled by HSECSS failure).

Bit 24 PLL1ON : PLL1 enable

Set and cleared by software to enable the main PLL.

Cleared by hardware when entering Stop or Standby modes and when PLL1 on HSE32 is selected as sysclk, on a HSECSS failure.

This bit cannot be reset if the PLL1 clock is used as the system clock.

Access to the bit can be secured by RCC PLL1SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: PLL1 off

1: PLL1 on

Bits 23:21 Reserved, must be kept at reset value.

Bit 20 HSEPRE : HSE32 clock for SYSCLK prescaler

Set and cleared by software to control the division factor of the HSE32 clock for SYSCLK.

Access to the bit can be secured by RCC HSESEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: HSE32 not divided, SYSCLK = HSE32

1: HSE32 divided, SYSCLK = HSE32/2

Bit 19 HSECSSON: HSE32 clock security system enable

Set by software to enable the HSE32 clock security system. When HSECSSON is set, the clock detector is enabled by hardware when the HSE32 oscillator is ready and disabled by hardware if a HSE32 clock failure is detected. This bit is set only and is cleared by reset.

Access to the bit can be secured by RCC HSESEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: HSE32 clock security system off (clock detector off)

1: HSE32 clock security system on (clock detector on if the HSE32 oscillator is stable, off if not).

Bit 18 Reserved, must be kept at reset value. Bit 17 HSERDY: HSE32 clock ready flag

Set by hardware to indicate that the HSE32 oscillator is stable. This bit is set both when HSE32 is enabled by software by setting HSEON and when requested as kernel clock by the 2.4 GHz RADIO.

Access to the bit can be secured by RCC HSESEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: HSE32 oscillator not ready

1: HSE32 oscillator ready to be used by the CPU

Bit 16 HSEON: HSE32 clock enable

Set and cleared by software.

Cleared by hardware to stop the HSE32 clock for the CPU when entering Stop and Standby modes and on a HSECSS failure.

When the HSE32 is used as 2.4 GHz RADIO kernel clock, enabled by RADIOEN and RADIOSMEN and the 2.4 GHz RADIO is active, HSEON is not cleared when entering low power mode. In this case only Stop 0 mode is entered as low power mode.

This bit cannot be reset if the HSE32 oscillator is used directly or indirectly as the system clock.

Access to the bit can be secured by RCC HSESEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: HSE32 oscillator not requested by the CPU.

1: HSE32 oscillator ON

Bits 15:11 Reserved, must be kept at reset value. Bit 10 HSIRDY: HSI16 clock ready flag

Set by hardware to indicate that HSI16 oscillator is stable. This bit is set only when HSI16 is enabled by software by setting HSION.

Access to the bit can be secured by RCC HSISEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: HSI16 oscillator not ready

1: HSI16 oscillator ready

Note: Once the HSION bit is cleared, HSIRDY goes low after six HSI16 clock cycles.

Bit 9 HSIKERON : HSI16 enable for some peripheral kernels

Set and cleared by software to force HSI16 oscillator on even in Stop modes.

Keeping the HSI16 oscillator on in Stop modes allows the communication speed not to be reduced by the HSI16 oscillator startup time. This bit has no effect on register bit HSION value.

Cleared by hardware when entering Standby modes.

Refer to Audio synchronization for more details.

Access to the bit can be secured by RCC HSISEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: No effect on HSI16 oscillator

1: HSI16 oscillator forced on even in Stop mode

Bit 8 HSION : HSI16 clock enable

Set and cleared by software.

Cleared by hardware when entering Stop and Standby modes.

Set by hardware to force the HSI16 oscillator on when exiting Stop and Standby modes.

Set by hardware to force the HSI16 oscillator on in case of clock security failure of the HSE32 crystal oscillator.

This bit is set by hardware if the HSI16 is used directly or indirectly as system clock.

Access to the bit can be secured by RCC HSISEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: HSI16 oscillator off

1: HSI16 oscillator on

Bits 7:0 Reserved, must be kept at reset value.

12.8.2 RCC internal clock sources calibration register 3 (RCC_ICSCR3)

Address offset: 0x010

Reset value: 0x0010 0XXX

X is factory-programmed.

Access: no wait state; word, half-word and byte access

Access to this register can be protected by RCC HSISEC and RCC SPRIV or RCC NSPRIV.

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.HSITRIM[4:0]
rwrwrwrwrw
1514131211109876543210
Res.Res.Res.Res.HSICAL[11:0]
rrrrrrrrrrrr

Bits 31:21 Reserved, must be kept at reset value.

Bits 20:16 HSITRIM[4:0] : HSI16 clock trimming

These bits provide an additional user-programmable trimming value that is added to the HSICAL[11:0] bits. It can be programmed to adjust to voltage and temperature variations that influence the frequency of the HSI16.

Bits 15:12 Reserved, must be kept at reset value.

Bits 11:0 HSICAL[11:0] : HSI16 clock calibration

These bits are initialized at startup with the factory-programmed HSI16 calibration value.

12.8.3 RCC clock configuration register 1 (RCC_CFGR1)

Address offset: 0x01C

Reset value: 0x0000 0000

Access: 0 ≤ wait state ≤ 2; word, half-word and byte access

One or two wait states are inserted only if the access occurs during clock source switch.

Access to this register can be protected by RCC SYSCLKSEC and RCC SPRIV or RCC NSPRIV.

31302928272625242322212019181716
Res.MCOPRE[2:0]MCOSEL[3:0]Res.Res.Res.Res.Res.Res.Res.Res.Res.
rwrwrwrwrwrwrw
1514131211109876543210
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.SWS[1:0]SW[1:0]
rrrwrw

Bit 31 Reserved, must be kept at reset value.

Bits 30:28 MCOPRE[2:0] : microcontroller clock output prescaler

Set and cleared by software.

It is highly recommended to change this prescaler before MCO output is enabled.

000: MCO divided by 1

001: MCO divided by 2

010: MCO divided by 4

011: MCO divided by 8

100: MCO divided by 16

others: not allowed

Bits 27:24 MCOSEL[3:0] : microcontroller clock output

Set and cleared by software.

0000: MCO output disabled, no clock on MCO

0001: sysclkpre system clock after PLL1RCLKPRE division selected

0010: reserved

0011: HSI16 clock selected

0100: HSE32 clock selected

0101: pll1rclk clock selected

0110: LSI clock selected

0111: LSE clock selected

1000: pll1pclk clock selected

1001: pll1qclk clock selected

1010: hclk5 clock selected

others: reserved

Note: This clock output may have some truncated cycles at startup or during MCO clock source switching.

Bits 23:4 Reserved, must be kept at reset value.

Bits 3:2 SWS[1:0] : system clock switch status

Set and cleared by hardware to indicate which clock source is used as system clock.

00: HS116 oscillator used as system clock

01: reserved

10: HSE32 or HSE32/2, as defined by HSEPRE, used as system clock

11: pll1rclk used as system clock

Bits 1:0 SW[1:0] : system clock switch

Set and cleared by software to select system clock source (SYSCLK).

Cleared by hardware when entering Stop and Standby modes

When selecting HSE32 directly or indirectly as system clock and HSE32 oscillator clock security fails, cleared by hardware.

00: HS116 selected as system clock

01: reserved

10: HSE32 or HSE32/2, as defined by HSEPRE, selected as system clock

11: pll1rclk selected as system clock

12.8.4 RCC clock configuration register 2 (RCC_CFGR2)

Address offset: 0x020

Reset value: 0x0000 0000

Access: word, half-word and byte access

From 0 to 15 wait states are inserted if the access occurs when the APB or AHB prescalers values update is on going.

Access to this register can be protected by RCC PRESCSEC and RCC SPRIV or RCC NSPRIV.

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.
1514131211109876543210
Res.Res.Res.Res.Res.PPRE2[2:0]Res.PPRE1[2:0]Res.HPRE[2:0]
rwrwrwrwrwrwrwrwrw

Bits 31:11 Reserved, must be kept at reset value.

Bits 10:8 PPRE2[2:0] : APB2 prescaler

Set and cleared by software to control the division factor of the APB2 clock (pclk2).

0xx: pclk2 = hclk1 not divided

100: pclk2 = hclk1 divided by 2

101: pclk2 = hclk1 divided by 4

110: pclk2 = hclk1 divided by 8

111: pclk2 = hclk1 divided by 16

Bit 7 Reserved, must be kept at reset value.

Bits 6:4 PPRE1[2:0] : APB1 prescaler

Set and cleared by software to control the division factor of the APB1 clock (pclk1).

0xx: pclk1 = hclk1 not divided

100: pclk1 = hclk1 divided by 2

101: pclk1 = hclk1 divided by 4

110: pclk1 = hclk1 divided by 8

111: pclk1 = hclk1 divided by 16

Bit 3 Reserved, must be kept at reset value.

Bits 2:0 HPRE[2:0] : AHB1, AHB2 and AHB4 prescaler

Set and cleared by software to control the division factor of the AHB1, AHB2 and AHB4 clock (hclk1).

Caution: The software must limit the incremental frequency step by setting these bits correctly to ensure that the hclk1 maximum incremental frequency step does not exceed the maximum allowed incremental frequency step (for more details, refer to Table 103 ). After a write operation to these bits and before decreasing the voltage range, this register must be read to be sure that the new value is taken into account.

0xx: hclk1 = SYSCLK not divided

100: hclk1 = SYSCLK divided by 2

101: hclk1 = SYSCLK divided by 4

110: hclk1 = SYSCLK divided by 8

111: hclk1 = SYSCLK divided by 16

12.8.5 RCC clock configuration register 3 (RCC_CFGR3)

Address offset: 0x024

Reset value: 0x0000 0000

Access: word, half-word and byte access

From 0 to 15 wait states are inserted if the access occurs when the APB or AHB prescalers values update is on going.

Access to this register can be protected by RCC PRESCSEC and RCC SPRIV or RCC NSPRIV.

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.
1514131211109876543210
Res.Res.Res.Res.Res.Res.Res.Res.Res.PPRE7[2:0]Res.Res.Res.Res.
rwrwrw

Bits 31:7 Reserved, must be kept at reset value.

Bits 6:4 PPRE7[2:0] : APB7 prescaler

Set and cleared by software to control the division factor of the APB7 clock (pclk7).

0xx: hclk1 not divided

100: hclk1 divided by 2

101: hclk1 divided by 4

110: hclk1 divided by 8

111: hclk1 divided by 16

Bits 3:0 Reserved, must be kept at reset value.

12.8.6 RCC PLL1 configuration register (RCC_PLL1CFGR)

Address offset: 0x028

Reset value: 0x0000 0000

Access: no wait state; word, half-word and byte access.

Access to this register can be protected by RCC PLL1SEC and RCC SPRIV or RCC NSPRIV.

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.PLL1RCLKPRERDYPLL1RCLKPRESTEPPLL1RCLKPRERes.PLL1RENPLL1QENPLL1PEN
rrwrwrwrwrw
1514131211109876543210
Res.Res.Res.Res.Res.PLL1M[2:0]Res.Res.Res.PLL1FRACENPLL1RGE[1:0]PLL1SRC[1:0]
rwrwrwrwrwrwrwrw

Bits 31:23 Reserved, must be kept at reset value.

Bit 22 PLL1RCLKPRERDY : pll1rclkpre not divided ready.

Set by hardware after PLL1RCLKPRE has been set from divided to not divide, to indicate that the pll1rclk not divided is available on sysclkpre.

0: pll1rclk divided

1: pll1rclk not divided ready

Bit 21 PLL1RCLKPRESTEP : pll1rclk clock for SYSCLK prescaler division step selection

Set and cleared by software to control the division step of the pll1rclk clock for SYSCLK.

0: pll1rclk 2-step division

1: pll1rclk 3-step division

Bit 20 PLL1RCLKPRE : pll1rclk clock for SYSCLK prescaler division enable

Set and cleared by software to control the division of the pll1rclk clock for SYSCLK.

0: pll1rclk not divided, sysclkpre = pll1rclk

1: pll1rclk divided, sysclkpre = pll1rclk divided

Bit 19 Reserved, must be kept at reset value.

Bit 18 PLL1REN : PLL1 DIVR divider output enable

Set and cleared by software to enable the pll1rclk output of the PLL1. This bit cannot be cleared when pll1rclk is used as system clock as indicated in SWS.

To save power, PLL1REN and PLL1R bits must be set to 0 when the pll1rclk is not used.

0: pll1rclk output disabled

1: pll1rclk output enabled

Bit 17 PLL1QEN : PLL1 DIVQ divider output enable

Set and reset by software to enable the pll1qclk output of the PLL1.

To save power, PLL1QEN and PLL1Q bits must be set to 0 when the pll1qclk is not used.

0: pll1qclk output disabled

1: pll1qclk output enabled

Bit 16 PLL1PEN : PLL1 DIVP divider output enable

Set and reset by software to enable the pll1pclck output of the PLL1.

To save power, PLL1PEN and PLL1P bits must be set to 0 when the pll1pclck is not used.

0: pll1pclck output disabled

1: pll1pclck output enabled

Bits 15:11 Reserved, must be kept at reset value.

Bits 10:8 PLL1M[2:0] : Prescaler for PLL1

Set and cleared by software to configure the prescaler of the PLL1. The VCO1 input frequency is PLL1 input clock frequency/PLL1M.

This field can be written only when the PLL1 is disabled (PLL1ON = 0 and PLL1RDY = 0).

000: division by 1 (bypass)

001: division by 2

010: division by 3

...

111: division by 8

Bits 7:5 Reserved, must be kept at reset value.

Bit 4 PLL1FRACEN : PLL1 fractional latch enable

Set and reset by software to latch the content of PLL1FRACN into the \( \Sigma\Delta \) modulator.

In order to latch the PLL1FRACN value into the \( \Sigma\Delta \) modulator, PLL1FRACEN must be set to 0, then set to 1: the transition 0 to 1 transfers the content of PLL1FRACN into the modulator (see PLL1 initialization phase for details).

Bits 3:2 PLL1RGE[1:0] : PLL1 input frequency range

Set and reset by software to select the proper reference frequency range used for PLL1.

This field can be written only when the PLL1 is disabled (PLL1ON = 0 and PLL1RDY = 0).

00-01-10: PLL1 input (ref_ck) clock range frequency between 4 and 8 MHz

11: PLL1 input (ref_ck) clock range frequency between 8 and 16 MHz

Bits 1:0 PLL1SRC[1:0] : PLL1 entry clock source

Set and cleared by software to select PLL1 clock source. This field can be written only when the PLL1 is disabled (PLL1ON = 0 and PLL1RDY = 0).

Cleared by hardware when entering Stop or Standby modes.

00: no clock sent to PLL1

01: reserved

10: HS116 clock selected as PLL1 clock entry

11: HSE32 clock after HSEPRE divider selected as PLL1 clock entry

Note: In order to save power, when no PLL1 clock is used, the value of PLL1SRC must be 0.

12.8.7 RCC PLL1 dividers register (RCC_PLL1DIVR)

Address offset: 0x034

Reset value: 0x0101 0280

Access: no wait state; word, half-word and byte access.

Access to this register can be protected by RCC PLL1SEC and RCC SPRIV or RCC NSPRIV.

31302928272625242322212019181716
Res.PLL1R[6:0]Res.PLL1Q[6:0]
rwrwrwrwrwrwrwrwrwrwrwrwrwrw
1514131211109876543210
PLL1P[6:0]PLL1N[8:0]
rwrwrwrwrwrwrwrwrwrwrwrwrwrwrwrw

Bit 31 Reserved, must be kept at reset value.

Bits 30:24 PLL1R[6:0] : PLL1 DIVR division factor

Set and reset by software to control the frequency of the pll1rclk clock. Division factors are forbidden if VCO frequency / (2 x (TRUNC(division factor / 2)) > pll1rclk maximum frequency.

These bits can be written only when the PLL1 is disabled (PLL1ON = 0 and PLL1RDY = 0).

0000000: pll1rclk = VCO output frequency

0000001: pll1rclk = VCO output frequency / 2 (default after reset)

0000010: pll1rclk = VCO output frequency / 3

0000011: pll1rclk = VCO output frequency / 4

...

1111111: pll1rclk = VCO output frequency / 128

Bit 23 Reserved, must be kept at reset value.

Bits 22:16 PLL1Q[6:0] : PLL1 DIVQ division factor

Set and reset by software to control the frequency of the pll1qclk clock. Division factors are forbidden if VCO frequency / (2 x (TRUNC(division factor / 2)) > pll1qclk maximum frequency.

These bits can be written only when the PLL1 is disabled (PLL1ON = 0 and PLL1RDY = 0).

0000000: pll1qclk = VCO output frequency

0000001: pll1qclk = VCO output frequency / 2 (default after reset)

0000010: pll1qclk = VCO output frequency / 3

0000011: pll1qclk = VCO output frequency / 4

...

1111111: pll1qclk = VCO output frequency / 128

Bits 15:9 PLL1P[6:0] : PLL1 DIVP division factor

Set and reset by software to control the frequency of the pll1pclk clock. Division factors are forbidden if VCO frequency / (2 x (TRUNC(division factor / 2)) > pll1pclk maximum frequency.

These bits can be written only when the PLL1 is disabled (PLL1ON = 0 and PLL1RDY = 0).

0000000: pll1pclk = VCO output frequency

0000001: pll1pclk = VCO output frequency / 2 (default after reset)

0000010: pll1pclk = VCO output frequency / 3

0000011: pll1pclk = VCO output frequency / 4

...

1111111: pll1pclk = VCO output frequency / 128

Bits 8:0 PLL1N[8:0] : Multiplication factor for PLL1 VCO

Set and reset by software to control the multiplication factor of the VCO.

These bits can be written only when the PLL1 is disabled (PLL1ON = 0 and PLL1RDY = 0).

0x003: multiplication factor for PLL1 VCO = 4

0x004: multiplication factor for PLL1 VCO = 5

0x005: multiplication factor for PLL1 VCO = 6

...

0x080: multiplication factor for PLL1 VCO = 129 (default after reset)

...

0x1FF: multiplication factor for PLL1 VCO = 512

others: reserved

VCO output frequency = \( F_{ref\_ck} \times \) multiplication factor for PLL1 VCO, when fractional value 0 has been loaded into PLL1FRACN, with:

12.8.8 RCC PLL1 fractional divider register (RCC_PLL1FRACR)

Address offset: 0x038

Reset value: 0x0000 0000

Access: no wait state; word, half-word and byte access.

Access to this register can be protected by RCC PLL1SEC and RCC SPRIV or RCC NSPRIV.

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.
1514131211109876543210
PLL1FRACN[12:0]Res.Res.Res.
rwrwrwrwrwrwrwrwrwrwrwrwrw

Bits 31:16 Reserved, must be kept at reset value.

Bits 15:3 PLL1FRACN[12:0] : Fractional part of the multiplication factor for PLL1 VCO

Set and reset by software to control the fractional part of the multiplication factor of the VCO.

These bits can be written at any time, allowing dynamic fine-tuning of the PLL1 VCO.

VCO output frequency = \( F_{ref\_ck} \times \) [multiplication factor for PLL1 VCO + (PLL1FRACN / \( 2^{13} \) )], with:

To change the used fractional value on-the-fly even if the PLL1 is enabled, the application must proceed as follows:

Bits 2:0 Reserved, must be kept at reset value.

12.8.9 RCC clock interrupt enable register (RCC_CIER)

Address offset: 0x050

Reset value: 0x0000 0000

Access: no wait state; word, half-word and byte access

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.LSI2
RDYIE
rw
1514131211109876543210
Res.Res.Res.Res.Res.Res.Res.Res.Res.PLL1
RDYIE
Res.HSE
RDYIE
HSI
RDYIE
Res.LSE
RDYIE
LSI1
RDYIE
rwrwrwrwrw

Bits 31:17 Reserved, must be kept at reset value.

Bit 16 LSI2RDYIE : LSI2 ready interrupt enable

Set and cleared by software to enable/disable interrupt caused by the LSI2 oscillator stabilization.

Access can be secured by RCC LSISEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: LSI2 ready interrupt disabled

1: LSI2 ready interrupt enabled

Note: If the LSI2 is ready (LSI2RDY in RCC_BDCR1 is 1) before enabling LSI2RDYIE, the LSI2RDYF in RCC_CIFR does not set, and no interrupt is generated.

Bits 15:7 Reserved, must be kept at reset value.

Bit 6 PLL1RDYIE : PLL1 ready interrupt enable

Set and cleared by software to enable/disable interrupt caused by PLL1 lock.

Access to the bit can be secured by RCC PLL1SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: PLL1 lock interrupt disabled

1: PLL1 lock interrupt enabled

Note: If the PLL1 is ready (PLL1RDY in RCC_CR is 1) before enabling PLL1RDYIE, the PLL1RDYF in RCC_CIFR does not set, and no interrupt is generated.

Bit 5 Reserved, must be kept at reset value.

Bit 4 HSERDYIE : HSE32 ready interrupt enable

Set and cleared by software to enable/disable interrupt caused by the HSE32 oscillator stabilization.

Access to the bit can be secured by RCC HSESEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: HSE32 ready interrupt disabled

1: HSE32 ready interrupt enabled

Note: If the HSE is ready (HSERDY in RCC_CR is 1) before enabling HSERDYIE, the HSERDYF in RCC_CIFR does not set, and no interrupt is generated.

Bit 3 HSIRDYIE : HSI16 ready interrupt enable

Set and cleared by software to enable/disable interrupt caused by the HSI16 oscillator stabilization.

Access to the bit can be secured by RCC HSISEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: HSI16 ready interrupt disabled

1: HSI16 ready interrupt enabled

Note: If the HSI16 is ready (HSIRDY in RCC_CR is 1) before enabling HSIRDYIE, the HSIRDYF in RCC_CIFR does not set, and no interrupt is generated.

Bit 2 Reserved, must be kept at reset value.

Bit 1 LSERDYIE : LSE ready interrupt enable

Set and cleared by software to enable/disable interrupt caused by the LSE oscillator stabilization.

Access to the bit can be secured by RCC LSESEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: LSE ready interrupt disabled

1: LSE ready interrupt enabled

Note: If the LSE is ready (LSERDY in RCC_BDCR1 is 1) before enabling LSERDYIE, the LSERDYF in RCC_CIFR does not set, and no interrupt is generated.

Bit 0 LSI1RDYIE : LSI1 ready interrupt enable

Set and cleared by software to enable/disable interrupt caused by the LSI1 oscillator stabilization.

Access to the bit can be secured by RCC LSISEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: LSI1 ready interrupt disabled

1: LSI1 ready interrupt enabled

Note: If the LSI1 is ready (LSI1RDY in RCC_BDCR1 is 1) before enabling LSI1RDYIE, the LSI1RDYF in RCC_CIFR does not set, and no interrupt is generated.

12.8.10 RCC clock interrupt flag register (RCC_CIFR)

Address offset: 0x054

Reset value: 0x0000 0000

Access: no wait state, word; half-word and byte access

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.LSI2
RDYF
r
1514131211109876543210
Res.Res.Res.Res.Res.HSE
CSSF
Res.Res.Res.PLL1
RDYF
Res.HSE
RDYF
HSI
RDYF
Res.LSE
RDYF
LSI1
RDYF
rrrrrr

Bits 31:17 Reserved, must be kept at reset value.

Bit 16 LSI2RDYF : LSI2 ready interrupt flag

Set by hardware when the LSI2 clock becomes stable and LSI2RDYIE is set.

Cleared by software setting the LSI2RDYC bit.

Access to the bit can be secured by RCC LSISEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: no clock ready interrupt caused by the LSI2 oscillator

1: clock ready interrupt caused by the LSI2 oscillator

Bits 15:11 Reserved, must be kept at reset value.

Bit 10 HSECSSF : HSE32 clock security system interrupt flag

Set by hardware when a clock security failure is detected in the HSE32 oscillator.

Cleared by software setting the HSECSSC bit.

Access to the bit can be secured by RCC HSESEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: no clock security interrupt caused by HSE32 clock failure

1: clock security interrupt caused by HSE32 clock failure

Bits 9:7 Reserved, must be kept at reset value.

Bit 6 PLL1RDYF : PLL1 ready interrupt flag

Set by hardware when the PLL1 locks and PLL1RDYIE is set.

Cleared by software setting the PLL1RDYC bit.

Access to the bit can be secured by RCC PLL1SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: no clock ready interrupt caused by PLL1 lock

1: clock ready interrupt caused by PLL1 lock

Bit 5 Reserved, must be kept at reset value.

Bit 4 HSERDYF : HSE32 ready interrupt flag

Set by hardware when the HSE32 clock becomes stable and HSERDYIE is set.

Cleared by software setting the HSERDYC bit.

Access to the bit can be secured by RCC HSESEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: no clock ready interrupt caused by the HSE32 oscillator

1: clock ready interrupt caused by the HSE32 oscillator

Bit 3 HSIRDYF : HSI16 ready interrupt flag

Set by hardware when the HSI16 clock becomes stable and HSIRDYIE is set in a response to setting the HSION (see RCC_CR). When HSION is not set but the HSI16 oscillator is enabled by the peripheral through a clock request, this bit is not set and no interrupt is generated.

Access to the bit can be secured by RCC HSISEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

Cleared by software setting the HSIRDYC bit.

0: no clock ready interrupt caused by the HSI16 oscillator

1: clock ready interrupt caused by the HSI16 oscillator

Bit 2 Reserved, must be kept at reset value.

Bit 1 LSERDYF : LSE ready interrupt flag

Set by hardware when the LSE clock becomes stable and LSERDYIE is set.

Cleared by software setting the LSERDYC bit.

Access to the bit can be secured by RCC LSESEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: no clock ready interrupt caused by the LSE oscillator

1: clock ready interrupt caused by the LSE oscillator

Bit 0 LSI1RDYF : LSI1 ready interrupt flag

Set by hardware when the LSI1 clock becomes stable and LSI1RDYIE is set.

Cleared by software setting the LSI1RDYC bit.

Access to the bit can be secured by RCC LSISEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: no clock ready interrupt caused by the LSI1 oscillator

1: clock ready interrupt caused by the LSI1 oscillator

12.8.11 RCC clock interrupt clear register (RCC_CICR)

Address offset: 0x058

Reset value: 0x0000 0000

Access: no wait state; word, half-word and byte access

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.LSI2
RDYC
w
1514131211109876543210
Res.Res.Res.Res.Res.HSE
CSSC
Res.Res.Res.PLL1
RDYC
Res.HSE
RDYC
HSI
RDYC
Res.LSE
RDYC
LSI1
RDYC
wwwwww

Bits 31:17 Reserved, must be kept at reset value.

Bit 16 LSI2RDYC : LSI2 ready interrupt clear

Writing this bit to 1 clears the LSI2RDYF flag. Writing 0 has no effect.

Access to the bit can be secured by RCC LSISEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

Bits 15:11 Reserved, must be kept at reset value.

Bit 10 HSECSSC : High speed external clock security system interrupt clear

Writing this bit to 1 clears the HSECSSF flag. Writing 0 has no effect.

Access to the bit can be secured by RCC HSESEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

Bits 9:7 Reserved, must be kept at reset value.

Bit 6 PLL1RDYC : PLL1 ready interrupt clear

Writing this bit to 1 clears the PLL1RDYF flag. Writing 0 has no effect.

Access to the bit can be secured by RCC PLL1SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

Bit 5 Reserved, must be kept at reset value.

Bit 4 HSERDYC : HSE32 ready interrupt clear

Writing this bit to 1 clears the HSERDYF flag. Writing 0 has no effect.

Access to the bit can be secured by RCC HSESEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

Bit 3 HSIRDYC : HS116 ready interrupt clear

Writing this bit to 1 clears the HSIRDYF flag. Writing 0 has no effect.

Access to the bit can be secured by RCC HSISEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

Bit 2 Reserved, must be kept at reset value.

Bit 1 LSERDYC : LSE ready interrupt clear

Writing this bit to 1 clears the LSERDYF flag. Writing 0 has no effect.

Access to the bit can be secured by RCC LSESEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

Bit 0 LSI1RDYC : LSI1 ready interrupt clear

Writing this bit to 1 clears the LSI1RDYF flag. Writing 0 has no effect.

Access to the bit can be secured by RCC LSISEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

12.8.12 RCC AHB1 peripheral reset register (RCC_AHB1RSTR)

Address offset: 0x060

Reset value: 0x0000 0000

Access: no wait state; word, half-word and byte access

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.TSC
RST
1514131211109876543210
Res.Res.Res.CRC
RST
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.GP
DMA1
RST
rwrw

Bits 31:17 Reserved, must be kept at reset value.

Bit 16 TSCRST : TSC reset

Set and cleared by software.

Access can be secured by GTZC_TZSC TSCSEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: No effect

1: Reset TSC

Bits 15:13 Reserved, must be kept at reset value.

Bit 12 CRCCRST : CRC reset

Set and cleared by software.

Access can be secured by GTZC_TZSC CRCSEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: No effect

1: Reset CRC

Bits 11:1 Reserved, must be kept at reset value.

Bit 0 GPDMA1RST : GPDMA1 reset

Set and cleared by software.

Access can be secured by GPDMA1 SECx. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: No effect

1: Reset GPDMA1

12.8.13 RCC AHB2 peripheral reset register (RCC_AHB2RSTR)

Address offset: 0x064

Reset value: 0x0000 0000

Access: no wait state; word, half-word and byte access

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.PKA
RST
HSEM
RST
SAES
RST
RNG
RST
HASH
RST
AES
RST
rwrwrwrwrwrw
1514131211109876543210
Res.OTGR
ST
Res.Res.Res.Res.Res.Res.GPIOH
RST
GPIOG
RST
Res.GPIOE
RST
GPIO D
RST
GPIOC
RST
GPIOB
RST
GPIOA
RST
rwrwrwrwrwrwrwrw

Bits 31:22 Reserved, must be kept at reset value.

Bit 21 PKARST: PKA reset

Set and cleared by software.

Access can be secured by GTZC_TZSC PKASEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: No effect

1: Reset PKA

Bit 20 HSEMRST: HSEM reset

Set and cleared by software.

Can only be accessed secure when one or more features in the HSEM is secure. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: No effect

1: Reset HSEM

Bit 19 SAESRST: SAES hardware accelerator reset

Set and cleared by software.

Access can be secured by GTZC_TZSC SAESSEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: No effect

1: Reset SAES

Bit 18 RNGRST: Random number generator reset

Set and cleared by software.

Access can be secured by GTZC_TZSC RNGSEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: No effect

1: Reset RNG

Bit 17 HASHRST: Hash reset

Set and cleared by software.

Access can be secured by GTZC_TZSC HASHSEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: No effect

1: Reset HASH

Bit 16 AESRST : AES hardware accelerator reset

Set and cleared by software.

Access can be secured by GTZC_TZSC AESSEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: No effect

1: Reset AES

Bit 15 Reserved, must be kept at reset value.

Bit 14 OTGRST : USB OTG_HS reset

Set and cleared by software.

Access can be secured by GTZC_TZSC OTGSEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: No effect

1: Reset USB OTG_HS and USB OTG_HS PHY

Note: This bit is reserved on STM32WBA63xx devices.

Bits 13:8 Reserved, must be kept at reset value.

Bit 7 GPIOHRST : IO port H reset

Set and cleared by software.

Access can be secured by GPIOH SECx. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: No effect

1: Reset IO port H

Bit 6 GPIOGRST : IO port G reset

Set and cleared by software.

Access can be secured by GPIOG SECx. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: No effect

1: Reset IO port G

Note: This bit is reserved on STM32WBA63/64xx devices.

Bit 5 Reserved, must be kept at reset value.

Bit 4 GPIOERST : IO port E reset

Set and cleared by software.

Access can be secured by GPIOE SECx. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: No effect

1: Reset IO port E

Note: This bit is reserved on STM32WBA63/64xx devices.

Bit 3 GPIODRST : IO port D reset

Set and cleared by software.

Access can be secured by GPIOSECx. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: No effect

1: Reset IO port D

Note: This bit is reserved on STM32WBA63xx devices.

Bit 2 GPIOCRST : IO port C reset

Set and cleared by software.

Access can be secured by GPIOSECx. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: No effect

1: Reset IO port C

Bit 1 GPIOBRST : IO port B reset

Set and cleared by software.

Access can be secured by GPIOSECx. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: No effect

1: Reset IO port B

Bit 0 GPIOARST : IO port A reset

Set and cleared by software.

Access can be secured by GPIOSECx. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: No effect

1: Reset IO port A

12.8.14 RCC AHB4 peripheral reset register (RCC_AHB4RSTR)

Address offset: 0x06C

Reset value: 0x0000 0000

Access: no wait state; word, half-word and byte access

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.
1514131211109876543210
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.ADC4
RST
Res.Res.Res.Res.Res.
rw

Bits 31:6 Reserved, must be kept at reset value.

Bit 5 ADC4RST : ADC4 reset

Set and cleared by software.

Access can be secured by GTZC_TZSC ADC4SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: No effect

1: Reset ADC4 interface

Bits 4:0 Reserved, must be kept at reset value.

12.8.15 RCC AHB5 peripheral reset register (RCC_AHB5RSTR)

Address offset: 0x070

Reset value: 0x0000 0000

Access: no wait state; word, half-word and byte access

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.
1514131211109876543210
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.PTA
CONV
RST
RADIO
RST
rwrw

Bits 31:2 Reserved, must be kept at reset value.

Bit 1 PTACONVRST : PTACONV reset

Set and cleared by software.

Access can be secured by GTZC_TZSC PTACONVSEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: No effect

1: Reset PTACONV

Bit 0 RADIORST : 2.4 GHz RADIO reset

Set and cleared by software.

Access can be secured by GTZC_TZSC RADIOSEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: No effect

1: Reset 2.4 GHz RADIO

12.8.16 RCC APB1 peripheral reset register 1 (RCC_APB1RSTR1)

Address offset: 0x074

Reset value: 0x0000 0000

Access: no wait state; word; half-word and byte access

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.I2C2
RST
I2C1
RST
Res.Res.USART3
RST
USART2
RST
Res.
1514131211109876543210
Res.SPI2
RST
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.TIM4
RST
TIM3
RST
TIM2
RST
rwrwrwrw

Bits 31:23 Reserved, must be kept at reset value.

Bit 22 I2C2RST: I2C2 reset

Set and cleared by software.

Access can be secured by GTZC_TZSC I2C2SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: No effect

1: Reset I2C2

Note: This bit is reserved on STM32WBA63xx devices.

Bit 21 I2C1RST: I2C1 reset

Set and cleared by software.

Access can be secured by GTZC_TZSC I2C1SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: No effect

1: Reset I2C1

Bits 20:19 Reserved, must be kept at reset value.

Bit 18 USART3RST: USART3 reset

Set and cleared by software.

Access can be secured by GTZC_TZSC UART3SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: No effect

1: Reset USART3

Note: This bit is reserved on STM32WBA63xx devices.

Bit 17 USART2RST: USART2 reset

Set and cleared by software.

Access can be secured by GTZC_TZSC UART2SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: No effect

1: Reset USART2

Bits 16:15 Reserved, must be kept at reset value.

Bit 14 SPI2RST : SPI2 reset

Set and cleared by software.

Access can be secured by GTZC_TZSC SPI2SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: No effect

1: Reset SPI2

Note: This bit is reserved on STM32WBA63xx devices.

Bits 13:3 Reserved, must be kept at reset value.

Bit 2 TIM4RST : TIM4 reset

Set and cleared by software.

Access can be secured by GTZC_TZSC TIM4SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: No effect

1: Reset TIM4

Note: This bit is reserved on STM32WBA63xx devices.

Bit 1 TIM3RST : TIM3 reset

Set and cleared by software.

Access can be secured by GTZC_TZSC TIM3SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: No effect

1: Reset TIM3

Bit 0 TIM2RST : TIM2 reset

Set and cleared by software.

Access can be secured by GTZC_TZSC TIM2SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: No effect

1: Reset TIM2

12.8.17 RCC APB1 peripheral reset register 2 (RCC_APB1RSTR2)

Address offset: 0x078

Reset value: 0x0000 0000

Access: no wait state; word, half-word and byte access

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.
1514131211109876543210
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.LPTIM2
RST
Res.Res.Res.I2C4
RST
Res.
rwrw

Bits 31:6 Reserved, must be kept at reset value.

Bit 5 LPTIM2RST : LPTIM2 reset

Set and cleared by software.

Access can be secured by GTZC_TZSC LPTIM2SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: No effect

1: Reset LPTIM2

Bits 4:2 Reserved, must be kept at reset value.

Bit 1 I2C4RST : I2C4 reset

Set and cleared by software.

Access can be secured by GTZC_TZSC I2C4SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: No effect

1: Reset I2C4

Note: This bit is reserved on STM32WBA63xx devices.

Bit 0 Reserved, must be kept at reset value.

12.8.18 RCC APB2 peripheral reset register (RCC_APB2RSTR)

Address offset: 0x07C

Reset value: 0x0000 0000

Access: no wait state; word, half-word and byte access

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.SAI1
RST
Res.Res.TIM17
RST
TIM16
RST
Res.
rwrwrw
1514131211109876543210
Res.USART1
RST
Res.SPI1
RST
TIM1
RST
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.
rwrwrw

Bits 31:22 Reserved, must be kept at reset value.

Bit 21 SAI1RST : SAI1 reset

Set and cleared by software.

Access can be secured by GTZC_TZSC SAI1SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: No effect

1: Reset SAI1

Bits 20:19 Reserved, must be kept at reset value.

Bit 18 TIM17RST : TIM17 reset

Set and cleared by software.

Access can be secured by GTZC_TZSC TIM17SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: No effect

1: Reset TIM17

Bit 17 TIM16RST : TIM16 reset

Set and cleared by software.

Access can be secured by GTZC_TZSC TIM16SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: No effect

1: Reset TIM16

Bits 16:15 Reserved, must be kept at reset value.

Bit 14 USART1RST : USART1 reset

Set and cleared by software.

Access can be secured by GTZC_TZSC USART1SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: No effect

1: Reset USART1

Bit 13 Reserved, must be kept at reset value.

Bit 12 SPI1RST : SPI1 reset

Set and cleared by software.

Access can be secured by GTZC_TZSC SPI1SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: No effect

1: Reset SPI1

Bit 11 TIM1RST : TIM1 reset

Set and cleared by software.

Access can be secured by GTZC_TZSC TIM1SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: No effect

1: Reset TIM1

Bits 10:0 Reserved, must be kept at reset value.

12.8.19 RCC APB7 peripheral reset register (RCC_APB7RSTR)

Address offset: 0x080

Reset value: 0x0000 0000

Access: no wait state; word, half-word and byte access

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.VREF
RST
Res.Res.Res.Res.
rw
1514131211109876543210
COMP
RST
Res.Res.Res.LPTIM1
RST
Res.Res.Res.I2C3
RST
LPUART1
RST
SPI3
RST
Res.Res.Res.SYSCFG
RST
Res.
rwrwrwrwrwrw

Bits 31:21 Reserved, must be kept at reset value.

Bit 20 VREFRST : VREFBUF reset

Set and cleared by software.

Access can be secured by GTZC_TZSC VREFBUFSEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: No effect

1: Reset VREFBUF

Note: This bit is reserved on STM32WBA63/64xx devices.

Bits 19:16 Reserved, must be kept at reset value.

Bit 15 COMPRST : COMP reset

Set and cleared by software.

Access can be secured by GTZC_TZSC COMPSEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: No effect

1: Reset COMP

Bits 14:12 Reserved, must be kept at reset value.

Bit 11 LPTIM1RST : LPTIM1 reset

Set and cleared by software.

Access can be secured by GTZC_TZSC LPTIM1SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: No effect

1: Reset LPTIM1

Bits 10:8 Reserved, must be kept at reset value.

Bit 7 I2C3RST : I2C3 reset

Set and cleared by software.

Access can be secured by GTZC_TZSC I2C3SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: No effect

1: Reset I2C3

Bit 6 LPUART1RST : LPUART1 reset

Set and cleared by software.

Access can be secured by GTZC_TZSC LPUART1SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: No effect

1: Reset LPUART1

Bit 5 SPI3RST : SPI3 reset

Set and cleared by software.

Access can be secured by GTZC_TZSC SPI3SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: No effect

1: Reset SPI3

Bits 4:2 Reserved, must be kept at reset value.

Bit 1 SYSCFGRST : SYSCFG reset

Set and cleared by software.

Access can be secured by SYSCFG SYSCFGSEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: No effect

1: Reset SYSCFG

Bit 0 Reserved, must be kept at reset value.

12.8.20 RCC AHB1 peripheral clock enable register (RCC_AHB1ENR)

Address offset: 0x088

Reset value: 0x8000 0100

Access: no wait state; word, half-word and byte access

Note: When the peripheral clock is not active, the peripheral registers read or write access is not supported.

31302928272625242322212019181716
SRAM1 ENRes.Res.Res.Res.Res.Res.GTZC1 ENRes.Res.Res.Res.Res.Res.RAM CFG ENTSC EN
rwrwrwrw
1514131211109876543210
Res.Res.Res.CRC ENRes.Res.Res.FLASH ENRes.Res.Res.Res.Res.Res.Res.GP DMA1 EN
rwrwrw

Bit 31 SRAM1EN : SRAM1 bus clock enable

Set and reset by software.

Access can be secured by GTZC_MPCBB1 SECx, INVSECSTATE. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: SRAM1 bus clock disabled

1: SRAM1 bus clock enabled

Bits 30:25 Reserved, must be kept at reset value.

Bit 24 GTZC1EN : GTZC1 bus clock enable

Set and reset by software.

Can only be accessed secure when device is secure (TZEN = 1). When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: GTZC1 bus clock disabled

1: GTZC1 bus clock enabled

Bits 23:18 Reserved, must be kept at reset value.

Bit 17 RAMCFGEN : RAMCFG bus clock enable

Set and cleared by software.

Access can be secured by GTZC_TZSC RAMCFGSEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: RAMCFG bus clock disabled

1: RAMCFG bus clock enabled

Bit 16 TSCEN : Touch sensing controller bus clock enable

Set and cleared by software.

Access can be secured by GTZC_TZSC TSCSEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: TSC bus clock disabled

1: TSC bus clock enabled

Bits 15:13 Reserved, must be kept at reset value.

Bit 12 CRCEN : CRC bus clock enable

Set and cleared by software.

Access can be secured by GTZC_TZSC CRCSEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: CRC bus clock disabled

1: CRC bus clock enabled

Bits 11:9 Reserved, must be kept at reset value.

Bit 8 FLASHEN : FLASH bus clock enable

Set and cleared by software. This bit can be disabled only when the Flash memory is in power down mode.

Can only be accessed secured when the Flash security state is secure. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: FLASH bus clock disabled

1: FLASH bus clock enabled

Bits 7:1 Reserved, must be kept at reset value.

Bit 0 GPDMA1EN : GPDMA1 bus clock enable

Set and cleared by software.

Access can be secured by GPDMA1 SECx. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: GPDMA1 bus clock disabled

1: GPDMA1 bus clock enabled

12.8.21 RCC AHB2 peripheral clock enable register (RCC_AHB2ENR)

Address offset: 0x08C

Reset value: 0x4000 0000

Access: no wait state, word, half-word and byte access

Note: When the peripheral clock is not active, the peripheral registers read or write access is not supported.

31302928272625242322212019181716
Res.SRAM2 ENRes.Res.Res.Res.Res.Res.Res.Res.PKA ENHSEM ENSAES ENRNG ENHASH ENAES EN
rwrwrwrwrwrwrw
1514131211109876543210
OTG HSPHY ENOTG ENRes.Res.Res.Res.Res.Res.GPIOH ENGPIOG ENRes.GPIOE ENGPIO D ENGPIO C ENGPIO B ENGPIO A EN
rwrwrwrwrwrwrwrwrw

Bit 31 Reserved, must be kept at reset value.

Bit 30 SRAM2EN : SRAM2 bus clock enable

Set and cleared by software.

Access can be secured by GTZC_MPCBB2 SECx, INVSECSTATE. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: SRAM2 bus clock disabled

1: SRAM2 bus clock enabled

Bits 29:22 Reserved, must be kept at reset value.

Bit 21 PKAEN: PKA bus clock enable

Set and cleared by software.

Access can be secured by GTZC_TZSC PKASEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: PKA bus clock disabled

1: PKA bus clock enabled

Bit 20 HSEMEN: HSEM bus clock enable

Set and cleared by software.

Can only be accessed secure when one or more features in the HSEM is secure. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: HSEM bus clock disabled

1: HSEM bus clock enabled

Bit 19 SAESEN: SAES bus clock enable

Set and cleared by software.

Access can be secured by GTZC_TZSC SAESSEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: SAES bus clock disabled

1: SAES bus clock enabled

Bit 18 RNGEN: RNG bus and kernel clocks enable

Set and cleared by software.

Access can be secured by GTZC_TZSC RNGSEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: RNG bus and kernel clocks disabled

1: RNG bus and kernel clocks enabled

Bit 17 HASHEN: HASH bus clock enable

Set and cleared by software.

Access can be secured by GTZC_TZSC HASHSEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: HASH bus clock disabled

1: HASH bus clock enabled

Bit 16 AESEN: AES bus clock enable

Set and cleared by software.

Access can be secured by GTZC_TZSC AESSEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: AES bus clock disabled

1: AES bus clock enabled

Bit 15 OTGHSPHYEN: USB OTG_HS PHY kernel clock enable

This bit is set and cleared by software.

Access can be secured by GTZC_TZSC OTGSEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: USB OTG_HS PHY kernel clock disabled

1: USB OTG_HS PHY kernel clock enabled

Note: This bit is reserved on STM32WBA63xx devices.

Bit 14 OTGEN: USB OTG_HS bus and kernel clock enable

This bit is set and cleared by software.

Access can be secured by GTZC_TZSC OTGSEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: USB OTG_HS bus and kernel clock disabled

1: USB OTG_HS bus and kernel clock enabled

Note: This bit is reserved on STM32WBA63xx devices.

Bits 13:8 Reserved, must be kept at reset value.

Bit 7 GPIOHEN: IO port H bus clock enable

Set and cleared by software.

Access can be secured by GPIOH SECx. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: IO port H bus clock disabled

1: IO port H bus clock enabled

Bit 6 GPIOGEN: IO port G bus clock enable

Set and cleared by software.

Access can be secured by GPIOG SECx. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: IO port G bus clock disabled

1: IO port G bus clock enabled

Note: This bit is reserved on STM32WBA63/64xx devices.

Bit 5 Reserved, must be kept at reset value.

Bit 4 GPIOEEN: IO port E bus clock enable

Set and cleared by software.

Access can be secured by GPIOE SECx. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: IO port E bus clock disabled

1: IO port E bus clock enabled

Note: This bit is reserved on STM32WBA63/64xx devices.

Bit 3 GPIODEN : IO port D bus clock enable

Set and cleared by software.

Access can be secured by GPIOSECx. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: IO port D bus clock disabled

1: IO port D bus clock enabled

Note: This bit is reserved on STM32WBA63xx devices.

Bit 2 GPIOCEN : IO port C bus clock enable

Set and cleared by software.

Access can be secured by GPIOSECx. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: IO port C bus clock disabled

1: IO port C bus clock enabled

Bit 1 GPIOBEN : IO port B bus clock enable

Set and cleared by software.

Access can be secured by GPIOSECx. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: IO port B bus clock disabled

1: IO port B bus clock enabled

Bit 0 GPIOAEN : IO port A bus clock enable

Set and cleared by software.

Access can be secured by GPIOSECx. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: IO port A bus clock disabled

1: IO port A bus clock enabled

12.8.22 RCC AHB4 peripheral clock enable register (RCC_AHB4ENR)

Address offset: 0x094

Reset value: 0x0000 0000

Access: no wait state, word, half-word and byte access

Note: When the peripheral clock is not active, the peripheral registers read or write access is not supported.

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.
1514131211109876543210
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.ADC4
EN
rw
Res.Res.PWR
EN
rw
Res.Res.

Bits 31:6 Reserved, must be kept at reset value.

Bit 5 ADC4EN : ADC4 bus and kernel clocks enable

Set and cleared by software.

Access can be secured by GTZC_TZSC ADC4SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: ADC4 bus and kernel clocks disabled

1: ADC4 bus and kernel clocks enabled

Bits 4:3 Reserved, must be kept at reset value.

Bit 2 PWREN : PWR bus clock enable

Set and cleared by software.

Can only be accessed secure when one or more features in the PWR is/are secure. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: PWR bus clock disabled

1: PWR bus clock enabled

Bits 1:0 Reserved, must be kept at reset value.

12.8.23 RCC AHB5 peripheral clock enable register (RCC_AHB5ENR)

Address offset: 0x098

Reset value: 0x0000 0000

Access: no wait state, word, half-word and byte access

Note: When the peripheral clock is not active, the peripheral registers read or write access is not supported.

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.
1514131211109876543210
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.PTA
CONV
EN
RADIO
EN
rwrw

Bits 31:2 Reserved, must be kept at reset value.

Bit 1 PTACONVEN : PTACONV bus clock enable

Set and cleared by software.

Access can be secured by GTZC_TZSC PTACONVSEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: PTACONV bus clock disabled

1: PTACONV bus clock enabled

Bit 0 RADIOEN : 2.4 GHz RADIO bus clock enable

Set and cleared by software.

Access can be secured by GTZC_TZSC RADIOSEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: 2.4 GHz RADIO bus clock disabled (The 2.4 GHz RADIO bus clock may still be enabled by STRADIOCLKON)

1: 2.4 GHz RADIO bus clock enabled

Note: Before accessing the 2.4 GHz RADIO sleep timers registers the RADIOCLKRDY bit must be checked.

When RADIOSMEN and STRADIOCLKON are both cleared, RADIOCLKRDY bit must be re-checked when exiting low-power modes (Sleep and Stop).

12.8.24 RCC APB1 peripheral clock enable register 1 (RCC_APB1ENR1)

Address offset: 0x09C

Reset value: 0x0000 0000

Access: no wait state, word, half-word and byte access

Note: When the peripheral clock is not active, the peripheral registers read or write access is not supported.

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.I2C2 ENI2C1 ENRes.Res.USART3 ENUSART2 ENRes.
rwrwrwrw

1514131211109876543210
Res.SPI2 ENRes.Res.WWDG ENRes.Res.Res.Res.Res.Res.Res.Res.TIM4 ENTIM3 ENTIM2 EN
rwrsrwrwrw

Bits 31:23 Reserved, must be kept at reset value.

Bit 22 I2C2EN : I2C2 bus and kernel clocks enable

Set and cleared by software.

Access can be secured by GTZC_TZSC I2C2SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: I2C2 bus and kernel clocks disabled

1: I2C2 bus and kernel clocks enabled

Note: This bit is reserved on STM32WBA63xx devices.

Bit 21 I2C1EN : I2C1 bus and kernel clocks enable

Set and cleared by software.

Access can be secured by GTZC_TZSC I2C1SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: I2C1 bus and kernel clocks disabled

1: I2C1 bus and kernel clocks enabled

Bits 20:19 Reserved, must be kept at reset value.

Bit 18 USART3EN : USART3 bus and kernel clocks enable

Set and cleared by software.

Access can be secured by GTZC_TZSC USART3SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV..

0: USART3 bus and kernel clocks disabled

1: USART3 bus and kernel clocks enabled

Note: This bit is reserved on STM32WBA63xx devices.

Bit 17 USART2EN : USART2 bus and kernel clocks enable

Set and cleared by software.

Access can be secured by GTZC_TZSC USART2SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV..

0: USART2 bus and kernel clocks disabled

1: USART2 bus and kernel clocks enabled

Bits 16:15 Reserved, must be kept at reset value.

Bit 14 SPI2EN : SPI2 bus and kernel clocks enable

Set and cleared by software.

Access can be secured by GTZC_TZSC SPI2SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: SPI2 bus and kernel clocks disabled

1: SPI2 bus and kernel clocks enabled

Note: This bit is reserved on STM32WBA63xx devices.

Bits 13:12 Reserved, must be kept at reset value.

Bit 11 WWDGEN : WWDG bus clock enable

Set by software to enable the window watchdog bus clock. Reset by hardware system reset.

This bit can also be set by hardware if the WWDG_SW option bit is reset.

Access can be secured by GTZC_TZSC WWDGSEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: WWDG bus clock disabled

1: WWDG bus clock enabled

Bits 10:3 Reserved, must be kept at reset value.

Bit 2 TIM4EN : TIM4 bus and kernel clocks enable

Set and cleared by software.

Access can be secured by GTZC_TZSC TIM4SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: TIM4 bus and kernel clocks disabled

1: TIM4 bus and kernel clocks enabled

Note: This bit is reserved on STM32WBA63xx devices.

Bit 1 TIM3EN : TIM3 bus and kernel clocks enable

Set and cleared by software.

Access can be secured by GTZC_TZSC TIM3SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: TIM3 bus and kernel clocks disabled

1: TIM3 bus and kernel clocks enabled

Bit 0 TIM2EN : TIM2 bus and kernel clocks enable

Set and cleared by software.

Access can be secured by GTZC_TZSC TIM2SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: TIM2 bus and kernel clocks disabled

1: TIM2 bus and kernel clocks enabled

12.8.25 RCC APB1 peripheral clock enable register 2 (RCC_APB1ENR2)

Address offset: 0x0A0

Reset value: 0x0000 0000

Access: no wait state; word, half-word and byte access

Note: When the peripheral clock is not active, the peripheral registers read or write access is not supported.

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.
1514131211109876543210
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.LPTIM2
EN
Res.Res.Res.I2C4
EN
Res.
rwrw

Bits 31:6 Reserved, must be kept at reset value.

Bit 5 LPTIM2EN : LPTIM2 bus and kernel clocks enable

Set and cleared by software.

Access can be secured by GTZC_TZSC LPTIM2SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: LPTIM2 bus and kernel clocks disabled

1: LPTIM2 bus and kernel clocks enabled

Bits 4:2 Reserved, must be kept at reset value.

Bit 1 I2C4EN : I2C4 bus and kernel clocks enable

Set and cleared by software.

Access can be secured by GTZC_TZSC I2C4SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: I2C4 bus and kernel clocks disabled

1: I2C4 bus and kernel clocks enabled

Note: This bit is reserved on STM32WBA63xx devices.

Bit 0 Reserved, must be kept at reset value.

12.8.26 RCC APB2 peripheral clock enable register (RCC_APB2ENR)

Address offset: 0x0A4

Reset value: 0x0000 0000

Access: word, half-word and byte access

Note: When the peripheral clock is not active, the peripheral registers read or write access is not supported.

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.SAI1
EN
Res.Res.TIM17
EN
TIM16
EN
Res.
1514131211109876543210
Res.USART1
EN
Res.SPI1
EN
TIM1
EN
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.
rwrwrw

Bits 31:22 Reserved, must be kept at reset value.

Bit 21 SAI1EN : SAI1 bus and kernel clocks enable

Set and cleared by software.

Access can be secured by GTZC_TZSC SAI1SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: SAI1 bus and kernel clocks disabled

1: SAI1 bus and kernel clocks enabled

Bits 20:19 Reserved, must be kept at reset value.

Bit 18 TIM17EN : TIM17 bus and kernel clocks enable

Set and cleared by software.

Access can be secured by GTZC_TZSC TIM17SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: TIM17 bus and kernel clocks disabled

1: TIM17 bus and kernel clocks enabled

Bit 17 TIM16EN : TIM16 bus and kernel clocks enable

Set and cleared by software.

Access can be secured by GTZC_TZSC TIM16SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: TIM16 bus and kernel clocks disabled

1: TIM16 bus and kernel clocks enabled

Bits 16:15 Reserved, must be kept at reset value.

Bit 14 USART1EN : USART1bus and kernel clocks enable

Set and cleared by software.

Access can be secured by GTZC_TZSC USART1SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: USART1 bus and kernel clocks disabled

1: USART1 bus and kernel clocks enabled

Bit 13 Reserved, must be kept at reset value.

Bit 12 SPI1EN : SPI1 bus and kernel clocks enable

Set and cleared by software.

Access can be secured by GTZC_TZSC SPI1SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: SPI1 bus and kernel clocks disabled

1: SPI1 bus and kernel clocks enabled

Bit 11 TIM1EN : TIM1 bus and kernel clocks enable

Set and cleared by software.

Access can be secured by GTZC_TZSC TIM1SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: TIM1 bus and kernel clocks disabled

1: TIM1 bus and kernel clocks enabled

Bits 10:0 Reserved, must be kept at reset value.

12.8.27 RCC APB7 peripheral clock enable register (RCC_APB7ENR)

Address offset: 0x0A8

Reset value: 0x0000 0000

Access: no wait state; word, half-word and byte access

Note: When the peripheral clock is not active, the peripheral registers read or write access is not supported.

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.RTCAPB ENVREF ENRes.Res.Res.Res.
rwrw
1514131211109876543210
COMP ENRes.Res.Res.LPTIM1 ENRes.Res.Res.I2C3 ENLPUART1 ENSPI3 ENRes.Res.Res.SYSCFG ENRes.
rwrwrwrwrwrw

Bits 31:22 Reserved, must be kept at reset value.

Bit 21 RTCAPBEN : RTC and TAMP bus clock enable

Set and cleared by software.

Can only be accessed secure when one or more features in the RTC or TAMP is/are secure. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: RTC bus clock disabled

1: RTC bus clock enabled

Bit 20 VREFEN : VREFBUF bus clock enable

Set and cleared by software.

Access can be secured by GTZC_TZSC VREFBUFSEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: VREFBUF bus clock disabled

1: VREFBUS bus clock enabled

Note: This bit is reserved on STM32WBA63/64xx devices.

Bits 19:16 Reserved, must be kept at reset value.

Bit 15 COMPEN : COMP bus clock enable

Set and cleared by software.

Access can be secured by GTZC_TZSC COMPSEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: COMP bus clock disabled

1: COMP bus clock enabled

Bits 14:12 Reserved, must be kept at reset value.

Bit 11 LPTIM1EN : LPTIM1 bus and kernel clocks enable

Set and cleared by software.

Access can be secured by GTZC_TZSC LPTIM1SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: LPTIM1 bus and kernel clocks disabled

1: LPTIM1 bus and kernel clocks enabled

Bits 10:8 Reserved, must be kept at reset value.

Bit 7 I2C3EN : I2C3 bus and kernel clocks enable

Set and cleared by software.

Access can be secured by GTZC_TZSC I2C3SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: I2C3 bus and kernel clocks disabled

1: I2C3 bus and kernel clocks enabled

Bit 6 LPUART1EN : LPUART1 bus and kernel clocks enable

Set and cleared by software.

Access can be secured by GTZC_TZSC LPUART1SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: LPUART1 bus and kernel clocks disabled

1: LPUART1 bus and kernel clocks enabled

Bit 5 SPI3EN : SPI3 bus and kernel clocks enable

Set and cleared by software.

Access can be secured by GTZC_TZSC SPI3SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: SPI3 bus and kernel clocks disabled

1: SPI3 bus and kernel clocks enabled

Bits 4:2 Reserved, must be kept at reset value.

Bit 1 SYSCFGEN : SYSCFG bus clock enable

Set and cleared by software.

Access can be secured by SYSCFG SYSCFGSEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: SYSCFG bus clock disabled

1: SYSCFG bus clock enabled

Bit 0 Reserved, must be kept at reset value.

12.8.28 RCC AHB1 peripheral clocks enable in Sleep and Stop modes register (RCC_AHB1SMENR)

Address offset: 0x0B0

Reset value: 0xFFFF FFFF

Access: no wait state, word, half-word and byte access

This register configures the clock gating only when the corresponding RCC_AHB1ENR.peripheralEN bit is set.

31302928272625242322212019181716
SRAM1SMENRes.ICACHESMENRes.Res.Res.Res.GTZC1SMENRes.Res.Res.Res.Res.Res.RAMCFGSMENTSCSMEN
r/wr/wr/wr/wr/w
1514131211109876543210
Res.Res.Res.CRCSMENRes.Res.Res.FLASHSMENRes.Res.Res.Res.Res.Res.Res.GPDMA1SMEN
r/wr/wr/w

Bit 31 SRAM1SMEN : SRAM1 bus clock enable during Sleep and Stop modes

Set and cleared by software.

Access can be secured by GTZC_MPCBB1 SECx, INVSECSTATE. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: SRAM1 bus clock disabled by the clock gating during Sleep and Stop modes

1: SRAM1 bus clock enabled by the clock gating during Sleep and Stop modes

Bit 30 Reserved, must be kept at reset value.

Bit 29 ICACHESMEN : ICACHE bus clock enable during Sleep and Stop modes

Set and cleared by software.

Access can be secured by GTZC_TZSC ICACHE_REGSEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV..

0: ICACHE bus clock disabled by the clock gating during Sleep and Stop modes

1: ICACHE bus clock enabled by the clock gating during Sleep and Stop modes

Bits 28:25 Reserved, must be kept at reset value.

Bit 24 GTZC1SMEN : GTZC1 bus clock enable during Sleep and Stop modes

Set and cleared by software.

Can only be accessed secure when one device is secure (TZEN = 1). When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: GTZC1 bus clock disabled by the clock gating during Sleep and Stop modes

1: GTZC1 bus clock enabled by the clock gating during Sleep and Stop modes

Bits 23:18 Reserved, must be kept at reset value.

Bit 17 RAMCFGSMEN : RAMCFG bus clock enable during Sleep and Stop modes

Set and cleared by software.

Access can be secured by GTZC_TZSC RAMCFGSEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: RAMCFG bus clock disabled by the clock gating during Sleep and Stop modes

1: RAMCFG bus clock enabled by the clock gating during Sleep and Stop modes

Bit 16 TSCSMEN : TSC bus clock enable during Sleep and Stop modes

Set and cleared by software.

Access can be secured by GTZC_TZSC TSCSEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV..

0: TSC bus clock disabled by the clock gating during Sleep and Stop modes

1: TSC bus clock enabled by the clock gating during Sleep and Stop modes

Bits 15:13 Reserved, must be kept at reset value.

Bit 12 CRCSMEN : CRC bus clock enable during Sleep and Stop modes

Set and cleared by software.

Access can be secured by GTZC_TZSC CRCSEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: CRC bus clock disabled by the clock gating during Sleep and Stop modes

1: CRC bus clock enabled by the clock gating during Sleep and Stop modes

Bits 11:9 Reserved, must be kept at reset value.

Bit 8 FLASHSMEN : FLASH bus clock enable during Sleep and Stop modes

Set and cleared by software.

Can only be accessed secured when the Flash security state is secure. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: FLASH bus clock disabled by the clock gating during Sleep and Stop modes

1: FLASH bus clock enabled by the clock gating during Sleep and Stop modes

Bits 7:1 Reserved, must be kept at reset value.

Bit 0 GPDMA1SMEN : GPDMA1 bus clock enable during Sleep and Stop modes

Set and cleared by software.

Access can be secured by GPDMA1 SECx. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: GPDMA1 bus clock disabled by the clock gating during Sleep and Stop modes

1: GPDMA1 bus clock enabled by the clock gating during Sleep and Stop modes

Note: This bit must be set to allow the peripheral to wake up from Stop modes.

12.8.29 RCC AHB2 peripheral clocks enable in Sleep and Stop modes register (RCC_AHB2SMENR)

Address offset: 0x0B4

Reset value: 0xFFFF FFFF

Access: no wait state; word, half-word and byte access

This register configures the clock gating only when the corresponding RCC_AHB2ENR.peripheralEN bit is set.

31302928272625242322212019181716
Res.SRAM2 SMENRes.Res.Res.Res.Res.Res.Res.Res.PKA SMENRes.SAES SMENRNG SMENHASH SMENAES SMEN
rwrwrwrwrwrw
1514131211109876543210
OTGH SPHY SMENOTG SMENRes.Res.Res.Res.Res.Res.GPIOH SMENGPIOG SMENRes.GPIOE SMENGPIO D SMENGPIO C SMENGPIO B SMENGPIO A SMEN
rwrwrwrwrwrwrwrwrw

Bit 31 Reserved, must be kept at reset value.

Bit 30 SRAM2SMEN : SRAM2 bus clock enable during Sleep and Stop modes

Set and cleared by software.

Access can be secured by GTZC_MPCBB2 SECx, INVSECSTATE. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: SRAM2 bus clock disabled by the clock gating during Sleep and Stop modes

1: SRAM2 bus clock enabled by the clock gating during Sleep and Stop modes

Bits 29:22 Reserved, must be kept at reset value.

Bit 21 PKASMEN : PKA bus clock enable during Sleep and Stop modes

Set and cleared by software.

Access can be secured by GTZC_TZSC PKASEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: PKA bus clock disabled by the clock gating during Sleep and Stop modes

1: PKA bus clock enabled by the clock gating during Sleep and Stop modes

Bit 20 Reserved, must be kept at reset value.

Bit 19 SAESSMEN : SAES accelerator bus clock enable during Sleep and Stop modes

Set and cleared by software.

Access can be secured by GTZC_TZSC SAESSEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: SAES bus clock disabled by the clock gating during Sleep and Stop modes

1: SAES bus clock enabled by the clock gating during Sleep and Stop modes

Bit 18 RNGSMEN : Random number generator (RNG) bus and kernel clocks enable during Sleep and Stop modes

Set and cleared by software.

Access can be secured by GTZC_TZSC RNGSEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: RNG bus and kernel clocks disabled by the clock gating during Sleep and Stop modes

1: RNG bus and kernel clocks enabled by the clock gating during Sleep and Stop modes

Bit 17 HASHSMEN: HASH bus clock enable during Sleep and Stop modes

Set and cleared by software.

Access can be secured by GTZC_TZSC HASHSEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: HASH bus clock disabled by the clock gating during Sleep and Stop modes

1: HASH bus clock enabled by the clock gating during Sleep and Stop modes

Bit 16 AESSMEN: AES bus clock enable during Sleep and Stop modes

Set and cleared by software.

Access can be secured by GTZC_TZSC AESSEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: AES bus clock disabled by the clock gating during Sleep and Stop modes

1: AES bus clock enabled by the clock gating during Sleep and Stop modes

Bit 15 OTGHSPHYSMEN: USB OTG_HS PHY kernel clock enable during Sleep and Stop modes

This bit is set and cleared by software

Access can be secured by GTZC_TZSC OTGSEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: USB OTG_HS PHY kernel clock disabled by the clock gating during Sleep and Stop modes

1: USB OTG_HS PHY kernel clock enabled by the clock gating during Sleep and Stop modes

Note: This bit is reserved on STM32WBA63xx devices.

Bit 14 OTGSMEN: USB OTG_HS bus and kernel clocks enable during Sleep and Stop modes

This bit is set and cleared by software.

Access can be secured by GTZC_TZSC OTGSEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: USB OTG_HS bus and kernel clocks disabled by the clock gating during Sleep and Stop modes

1: USB OTG_HS bus and kernel clocks enabled by the clock gating during Sleep and Stop modes

Note: This bit is reserved on STM32WBA63xx devices.

Bits 13:8 Reserved, must be kept at reset value.

Bit 7 GPIOHSMEN: IO port H bus clock enable during Sleep and Stop modes

Set and cleared by software.

Access can be secured by GPIOH SECx. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: IO port H bus clock disabled by the clock gating during Sleep and Stop modes

1: IO port H bus clock enabled by the clock gating during Sleep and Stop modes

Bit 6 GPIOGSMEN : IO port G bus clock enable during Sleep and Stop modes

Set and cleared by software.

Access can be secured by GPIOG SECx. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: IO port G bus clock disabled by the clock gating during Sleep and Stop modes

1: IO port G bus clock enabled by the clock gating during Sleep and Stop modes

Note: This bit is reserved on all STM32WBA63/64xx devices.

Bit 5 Reserved, must be kept at reset value.

Bit 4 GPIOESMEN : IO port E bus clock enable during Sleep and Stop modes

Set and cleared by software.

Access can be secured by GPIOE SECx. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: IO port E bus clock disabled by the clock gating during Sleep and Stop modes

1: IO port E bus clock enabled by the clock gating during Sleep and Stop modes

Note: This bit is reserved on STM32WBA63/64xx devices.

Bit 3 GPIODSMEN : IO port D bus clock enable during Sleep and Stop modes

Set and cleared by software.

Access can be secured by GPIOD SECx. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: IO port D bus clock disabled by the clock gating during Sleep and Stop modes

1: IO port D bus clock enabled by the clock gating during Sleep and Stop modes

Note: This bit is reserved on STM32WBA63xx devices.

Bit 2 GPIOCSMEN : IO port C bus clock enable during Sleep and Stop modes

Set and cleared by software.

Access can be secured by GPIOC SECx. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: IO port C bus clock disabled by the clock gating during Sleep and Stop modes

1: IO port C bus clock enabled by the clock gating during Sleep and Stop modes

Bit 1 GPIOBSMEN : IO port B bus clock enable during Sleep and Stop modes

Set and cleared by software.

Access can be secured by GPIOB SECx. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: IO port B bus clock disabled by the clock gating during Sleep and Stop modes

1: IO port B bus clock enabled by the clock gating during Sleep and Stop modes

Bit 0 GPIOASMEN : IO port A bus clock enable during Sleep and Stop modes

Set and cleared by software.

Access can be secured by GPIOA SECx. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: IO port A bus clock disabled by the clock gating during Sleep and Stop modes

1: IO port A bus clock enabled by the clock gating during Sleep and Stop modes

12.8.30 RCC AHB4 peripheral clocks enable in Sleep and Stop modes register (RCC_AHB4SMENR)

Address offset: 0x0BC

Reset value: 0xFFFF FFFF

Access: no wait state; word, half-word and byte access

This register configures the clock gating only when the corresponding RCC_AHB4ENR.peripheralEN bit is set.

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.
1514131211109876543210
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.ADC4SMENRes.Res.PWRSMENRes.Res.
rwrw

Bits 31:6 Reserved, must be kept at reset value.

Bit 5 ADC4SMEN : ADC4 bus and kernel clocks enable during Sleep and Stop modes

Set and cleared by software.

Access can be secured by GTZC_TZSC ADC4SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: ADC4 bus and kernel clocks disabled by the clock gating during Sleep and Stop modes

1: ADC4 bus and kernel clocks enabled by the clock gating during Sleep and Stop modes

Note: This bit must be set to allow the peripheral to wake up from Stop modes.

Bits 4:3 Reserved, must be kept at reset value.

Bit 2 PWRSMEN : PWR bus clock enable during Sleep and Stop modes

Set and cleared by software.

Can only be accessed secure when one or more features in the PWR is/are secure. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: PWR bus clock disabled by the clock gating during Sleep and Stop modes

1: PWR bus clock enabled by the clock gating during Sleep and Stop modes

Bits 1:0 Reserved, must be kept at reset value.

12.8.31 RCC AHB5 peripheral clocks enable in Sleep and Stop modes register (RCC_AHB5SMENR)

Address offset: 0x0C0

Reset value: 0xFFFF FFFF

Access: no wait state; word, half-word and byte access

This register configures the clock gating only when the corresponding RCC_AHB5ENR.peripheralEN bit is set.

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.
1514131211109876543210
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.PTACONVSMENRADIO SMEN
nwrw

Bits 31:2 Reserved, must be kept at reset value.

Bit 1 PTACONVSMEN : PTACONV bus clock enable during Sleep and Stop modes

Set and cleared by software.

Access can be secured by GTZC_TZSC PTACONVSEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: PTACONV bus clock disabled by the clock gating during Sleep and Stop modes

1: PTACONV bus clock enabled by the clock gating during Sleep and Stop modes

Bit 0 RADIO SMEN : 2.4 GHz RADIO bus clock enable during Sleep and Stop modes when the 2.4 GHz RADIO is active.

Set and cleared by software.

Access can be secured by GTZC_TZSC RADIOSEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: 2.4 GHz RADIO bus clock disabled by the clock gating during Sleep and Stop modes (The 2.4 GHz RADIO bus clock may still be enabled by STRADIOCLKON)

1: 2.4 GHz RADIO bus clock enabled by the clock gating during Sleep and Stop modes when the 2.4 GHz RADIO is active

12.8.32 RCC APB1 peripheral clocks enable in Sleep and Stop modes register 1 (RCC_APB1SMENR1)

Address offset: 0x0C4

Reset value: 0xFFFF FFFF

Access: no wait state; word, half-word and byte access

This register configures the clock gating only when the corresponding RCC_APB1ENR1.peripheralEN bit is set.

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.I2C2SMENI2C1SMENRes.Res.USART3SMENUSART2SMENRes.
rwrwrwrw
1514131211109876543210
Res.SPI2SMENRes.Res.WWDGSMENRes.Res.Res.Res.Res.Res.Res.Res.TIM4SMENTIM3SMENTIM2SMEN
rwrwrwrwrw

Bits 31:23 Reserved, must be kept at reset value.

Bit 22 I2C2SMEN : I2C2 bus and kernel clocks enable during Sleep and Stop modes

Set and cleared by software.

Access can be secured by GTZC_TZSC I2C2SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: I2C2 bus and kernel clocks disabled by the clock gating during Sleep and Stop modes

1: I2C2 bus and kernel clocks enabled by the clock gating during Sleep and Stop modes

Note: This bit must be set to allow the peripheral to wake up from Stop modes.

Note: This bit is reserved on STM32WBA63xx devices.

Bit 21 I2C1SMEN : I2C1 bus and kernel clocks enable during Sleep and Stop modes

Set and cleared by software.

Access can be secured by GTZC_TZSC I2C1SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: I2C1 bus and kernel clocks disabled by the clock gating during Sleep and Stop modes

1: I2C1 bus and kernel clocks enabled by the clock gating during Sleep and Stop modes

Note: This bit must be set to allow the peripheral to wake up from Stop modes.

Bits 20:19 Reserved, must be kept at reset value.

Bit 18 USART3SMEN : USART3 bus and kernel clocks enable during Sleep and Stop modes

Set and cleared by software.

Access can be secured by GTZC_TZSC USART3SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: USART3 bus and kernel clocks disabled by the clock gating during Sleep and Stop modes

1: USART3 bus and kernel clocks enabled by the clock gating during Sleep and Stop modes

Note: This bit must be set to allow the peripheral to wake up from Stop modes.

Note: This bit is reserved on STM32WBA63xx devices.

Bit 17 USART2SMEN : USART2 bus and kernel clocks enable during Sleep and Stop modes

Set and cleared by software.

Access can be secured by GTZC_TZSC USART2SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: USART2 bus and kernel clocks disabled by the clock gating during Sleep and Stop modes

1: USART2 bus and kernel clocks enabled by the clock gating during Sleep and Stop modes

Note: This bit must be set to allow the peripheral to wake up from Stop modes.

Bits 16:15 Reserved, must be kept at reset value.

Bit 14 SPI2SMEN : SPI2 bus and kernel clocks enable during Sleep and Stop modes

Set and cleared by software.

Access can be secured by GTZC_TZSC SPI2SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: SPI2 bus and kernel clocks disabled by the clock gating during Sleep and Stop modes

1: SPI2 bus and kernel clocks enabled by the clock gating during Sleep and Stop modes

Note: This bit must be set to allow the peripheral to wake up from Stop modes.

Note: This bit is reserved on STM32WBA63xx devices.

Bits 13:12 Reserved, must be kept at reset value.

Bit 11 WWDGSMEN : Window watchdog bus clock enable during Sleep and Stop modes

Set and cleared by software. This bit is forced to 1 by hardware when the hardware WWDG option is activated.

Access can be secured by GTZC_TZSC WWDGSEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: WWDG bus clock disabled by the clock gating during Sleep mode

1: WWDG bus clock enabled by the clock gating during Sleep mode

Bits 10:3 Reserved, must be kept at reset value.

Bit 2 TIM4SMEN : TIM4 bus and kernel clocks enable during Sleep and Stop modes

Set and cleared by software.

Access can be secured by GTZC_TZSC TIM4SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: TIM4 bus and kernel clocks disabled by the clock gating during Sleep and Stop modes

1: TIM4 bus and kernel clocks enabled by the clock gating during Sleep and Stop modes

Note: This bit is reserved on STM32WBA63xx devices.

Bit 1 TIM3SMEN : TIM3 bus and kernel clocks enable during Sleep and Stop modes

Set and cleared by software.

Access can be secured by GTZC_TZSC TIM3SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: TIM3 bus and kernel clocks disabled by the clock gating during Sleep and Stop modes

1: TIM3 bus and kernel clocks enabled by the clock gating during Sleep and Stop modes

Bit 0 TIM2SMEN : TIM2 bus and kernel clocks enable during Sleep and Stop modes

Set and cleared by software.

Access can be secured by GTZC_TZSC TIM2SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: TIM2 bus and kernel clocks disabled by the clock gating during Sleep and Stop modes

1: TIM2 bus and kernel clocks enabled by the clock gating during Sleep and Stop modes

12.8.33 RCC APB1 peripheral clocks enable in Sleep and Stop modes register 2 (RCC_APB1SMENR2)

Address offset: 0x0C8

Reset value: 0xFFFF FFFF

Access: no wait state; word, half-word and byte access

This register configures the clock gating only when the corresponding RCC_APB1ENR2.peripheralEN bit is set.

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.
1514131211109876543210
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.LPTIM2SMENRes.Res.Res.I2C4SMENRes.
rwrw

Bits 31:6 Reserved, must be kept at reset value.

Bit 5 LPTIM2SMEN : LPTIM2 bus and kernel clocks enable during Sleep and Stop modes

Set and cleared by software.

Access can be secured by GTZC_TZSC LPTIM2SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: LPTIM2 bus and kernel clocks disabled by the clock gating during Sleep and Stop modes

1: LPTIM2 bus and kernel clocks enabled by the clock gating during Sleep and Stop modes

Note: This bit must be set to allow the peripheral to wake up from Stop modes.

Bits 4:2 Reserved, must be kept at reset value.

Bit 1 I2C4SMEN : I2C4 bus and kernel clocks enable during Sleep and Stop modes

Set and cleared by software.

Access can be secured by GTZC_TZSC I2C4SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: I2C4 bus and kernel clocks disabled by the clock gating during Sleep and Stop modes

1: I2C4 bus and kernel clocks enabled by the clock gating during Sleep and Stop modes

Note: This bit must be set to allow the peripheral to wake up from Stop modes.

Note: This bit is reserved on STM32WBA63xx devices.

Bit 0 Reserved, must be kept at reset value.

12.8.34 RCC APB2 peripheral clocks enable in Sleep and Stop modes register (RCC_APB2SMENR)

Address offset: 0x0CC

Reset value: 0xFFFF FFFF

Access: word, half-word and byte access

This register configures the clock gating only when the corresponding RCC_APB2ENR.peripheralEN bit is set.

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.SAI1SMENRes.Res.TIM17SMENTIM16SMENRes.
1514131211109876543210
Res.USART1SMENRes.SPI1SMENTIM1SMENRes.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.
nwnwnw

Bits 31:22 Reserved, must be kept at reset value.

Bit 21 SAI1SMEN : SAI1 bus and kernel clocks enable during Sleep and Stop modes

Set and cleared by software.

Access can be secured by GTZC_TZSC SAI1SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: SAI1 bus and kernel clocks disabled by the clock gating during Sleep and Stop modes

1: SAI1 bus and kernel clocks enabled by the clock gating during Sleep and Stop modes

Bits 20:19 Reserved, must be kept at reset value.

Bit 18 TIM17SMEN : TIM17 bus and kernel clocks enable during Sleep and Stop modes

Set and cleared by software.

Access can be secured by GTZC_TZSC TIM17SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: TIM17 bus and kernel clocks disabled by the clock gating during Sleep and Stop modes

1: TIM17 bus and kernel clocks enabled by the clock gating during Sleep and Stop modes

Bit 17 TIM16SMEN : TIM16 bus and kernel clocks enable during Sleep and Stop modes

Set and cleared by software.

Access can be secured by GTZC_TZSC TIM16SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: TIM16 bus and kernel clocks disabled by the clock gating during Sleep and Stop modes

1: TIM16 bus and kernel clocks enabled by the clock gating during Sleep and Stop modes

Bits 16:15 Reserved, must be kept at reset value.

Bit 14 USART1SMEN : USART1 bus and kernel clocks enable during Sleep and Stop modes

Set and cleared by software.

Access can be secured by GTZC_TZSC USART1SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: USART1 bus and kernel clocks disabled by the clock gating during Sleep and Stop modes

1: USART1 bus and kernel clocks enabled by the clock gating during Sleep and Stop modes

Note: This bit must be set to allow the peripheral to wake up from Stop modes.

Bit 13 Reserved, must be kept at reset value.

Bit 12 SPI1SMEN : SPI1 bus and kernel clocks enable during Sleep and Stop modes

Set and cleared by software.

Access can be secured by GTZC_TZSC SPI1SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: SPI1 bus and kernel clocks disabled by the clock gating during Sleep and Stop modes

1: SPI1 bus and kernel clocks enabled by the clock gating during Sleep and Stop modes

Note: This bit must be set to allow the peripheral to wake up from Stop modes.

Bit 11 TIM1SMEN : TIM1 bus and kernel clocks enable during Sleep and Stop modes

Set and cleared by software.

Access can be secured by GTZC_TZSC TIM1SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: TIM1 bus and kernel clocks disabled by the clock gating during Sleep and Stop modes

1: TIM1 bus and kernel clocks enabled by the clock gating during Sleep and Stop modes

Bits 10:0 Reserved, must be kept at reset value.

12.8.35 RCC APB7 peripheral clock enable in Sleep and Stop modes register (RCC_APB7SMENR)

Address offset: 0x0D0

Reset value: 0xFFFF FFFF

Access: no wait state; word, half-word and byte access

This register configures the clock gating only when the corresponding RCC_APB7ENR.peripheralEN bit is set.

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.RTCAPBSMENVREFSMENRes.Res.Res.Res.
rwrw

1514131211109876543210
COMPSMENRes.Res.Res.LPTIM1SMENRes.Res.Res.I2C3SMENLPUART1SMENSP3ISMENRes.Res.Res.SYSCFGSMENRes.
rwrwrwrwrwrw

Bits 31:22 Reserved, must be kept at reset value.

Bit 21 RTCAPBSMEN : RTC and TAMP APB clock enable during Sleep and Stop modes

Set and cleared by software.

Can only be accessed secure when one or more features in the RTC or TAMP is/are secure. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: RTC and TAMP APB clock disabled by the clock gating during Sleep and Stop modes

1: RTC and TAMP APB clock enabled by the clock gating during Sleep and Stop modes

Note: This bit must be set to allow the peripheral to wake up from Stop modes.

Bit 20 VREFSMEN : VREFBUF bus clock enable during Sleep and Stop modes

Set and cleared by software.

Access can be secured by GTZC_TZSC VREFBUFSEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: VREFBUF bus clock disabled by the clock gating during Sleep and Stop modes

1: VREFBUF bus clock enabled by the clock gating during Sleep and Stop modes

Note: This bit is reserved on STM32WBA63/64xx devices.

Bits 19:16 Reserved, must be kept at reset value.

Bit 15 COMPSMEN : COMP bus clock enable during Sleep and Stop modes

Set and cleared by software.

Access can be secured by GTZC_TZSC COMPSEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: COMP bus clock disabled by the clock gating during Sleep and Stop modes

1: COMP bus clock enabled by the clock gating during Sleep and Stop modes

Bits 14:12 Reserved, must be kept at reset value.

Bit 11 LPTIM1SMEN : LPTIM1 bus and kernel clocks enable during Sleep and Stop modes

Set and cleared by software.

Access can be secured by GTZC_TZSC LPTIM1SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: LPTIM1 bus and kernel clocks disabled by the clock gating during Sleep and Stop modes

1: LPTIM1 bus and kernel clocks enabled by the clock gating during Sleep and Stop modes

Note: This bit must be set to allow the peripheral to wake up from Stop modes.

Bits 10:8 Reserved, must be kept at reset value.

Bit 7 I2C3SMEN : I2C3 bus and kernel clocks enable during Sleep and Stop modes

Set and cleared by software.

Access can be secured by GTZC_TZSC I2C3SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: I2C3 bus and kernel clocks disabled by the clock gating during Sleep and Stop modes

1: I2C3 bus and kernel clocks enabled by the clock gating during Sleep and Stop modes

Note: This bit must be set to allow the peripheral to wake up from Stop modes.

Bit 6 LPUART1SMEN : LPUART1 bus and kernel clocks enable during Sleep and Stop modes

Set and cleared by software.

Access can be secured by GTZC_TZSC LPUART1SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: LPUART1 bus and kernel clocks disabled by the clock gating during Sleep and Stop modes

1: LPUART1 bus and kernel clocks enabled by the clock gating during Sleep and Stop modes

Note: This bit must be set to allow the peripheral to wake up from Stop modes.

Bit 5 SPI3SMEN : SPI3 bus and kernel clocks enable during Sleep and Stop modes

Set and cleared by software.

Access can be secured by GTZC_TZSC SPI3SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: SPI3 bus and kernel clocks disabled by the clock gating during Sleep and Stop modes

1: SPI3 bus and kernel clocks enabled by the clock gating during Sleep and Stop modes

Note: This bit must be set to allow the peripheral to wake up from Stop modes.

Bits 4:2 Reserved, must be kept at reset value.

Bit 1 SYSCFGSMEN : SYSCFG bus clock enable during Sleep and Stop modes

Set and cleared by software.

Access can be secured by SYSCFG SYSCFGSEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: SYSCFG bus clock disabled by the clock gating during Sleep and Stop modes

1: SYSCFG bus clock enabled by the clock gating during Sleep and Stop modes

Bit 0 Reserved, must be kept at reset value.

12.8.36 RCC peripherals independent clock configuration register 1 (RCC_CCIPR1)

Address offset: 0x0E0

Reset value: 0x0000 0000

Access: no wait states; word, half-word and byte access

31302928272625242322212019181716
TIMICSELRes.Res.Res.Res.Res.Res.Res.SYSTICKSEL [1:0]SPI1SEL[1:0]LPTIM2SEL[1:0]SPI2SEL[1:0]
rwrwrwrwrwrwrwrwrw
1514131211109876543210
I2C4SEL[1:0]I2C2SEL[1:0]I2C1SEL[1:0]Res.Res.Res.Res.USART3SEL [1:0]USART2SEL [1:0]USART1SEL [1:0]
rwrwrwrwrwrwrwrwrwrwrwrw

Bit 31 TIMICSEL : Clocks sources for TIM16,TIM17 and LPTIM2 internal input capture

When the TIMICSEL bit is set, the TIM16, TIM17 and LPTIM2 internal input capture can be connected to HSI16/256.

When TIMICSEL is cleared, the HSI16, clock sources cannot be selected as TIM16, TIM17 or LPTIM2 internal input capture.

Access can be secured by GTZC_TZSC TIM16SEC, TIM17SEC, or LPTIM2SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: HSI16 divider disabled

1: HSI16/256 generated and can be selected by TIM16, TIM17 and LPTIM2 as internal input capture

Note: The clock division must be disabled (TIMICSEL configured to 0) before selecting or changing a clock sources division.

Bits 30:24 Reserved, must be kept at reset value.

Bits 23:22 SYSTICKSEL[1:0] : SysTick clock source selection

These bits are used to select the SysTick clock source.

Access can be secured by RCC SYSCLKSEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

00: hclk1 divided by 8 selected

01: LSI selected

10: LSE selected

11: HSI16 divided by 4 selected

Note: When HSI16, LSE or LSI is selected, the AHB frequency must be at least four times higher than the SysTick clock frequency. In addition, a jitter up to one hclk1 cycle is introduced, due to the sampling with hclk1 in the SysTick circuitry.

Bits 21:20 SPI1SEL[1:0]: SPI1 kernel clock source selection

These bits are used to select the SPI1 kernel clock source.

Access can be secured by GTZC_TZSC SPI1SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

00: pclk2 selected

01: SYSCLK selected

10: HSI16 selected

11: reserved

Note: The SPI1 is functional in Stop 0 and Stop 1 mode only when the kernel clock is HSI16.

Bits 19:18 LPTIM2SEL[1:0]: Low-power timer 2 kernel clock source selection

These bits are used to select the LPTIM2 kernel clock source.

Access can be secured by GTZC_TZSC LPTIM2SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

00: pclk1 selected

01: LSI selected

10: HSI16 selected

11: LSE selected

Note: The LPTIM2 is functional in Stop 0 and Stop 1 mode only when the kernel clock is LSI, LSE or HSI16 if HSIKERON = 1.

Bits 17:16 SPI2SEL[1:0]: SPI2 kernel clock source selection

These bits are used to select the SPI1 kernel clock source.

Access can be secured by GTZC_TZSC SPI2SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

00: pclk1 selected

01: SYSCLK selected

10: HSI16 selected

11: reserved

Note: The SPI2 is functional in Stop 0 and Stop 1 mode only when the kernel clock is HSI16

Note: This bit is reserved on STM32WBA63xx devices..

Bits 15:14 I2C4SEL[1:0]: I2C4 kernel clock source selection

These bits are used to select the I2C4 kernel clock source.

Access can be secured by GTZC_TZSC I2C4SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

00: pclk1 selected

01: SYSCLK selected

10: HSI16 selected

11: reserved

Note: The I2C4 is functional in Stop 0 and Stop 1 mode only when the kernel clock is HSI16.

Note: This bit is reserved on STM32WBA63xx devices.

Bits 13:12 I2C2SEL[1:0]: I2C2 kernel clock source selection

These bits are used to select the I2C2 kernel clock source.

Access can be secured by GTZC_TZSC I2C2SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

00: pclk1 selected

01: SYSCLK selected

10: HSI16 selected

11: reserved

Note: The I2C2 is functional in Stop 0 and Stop 1 mode only when the kernel clock is HSI16.

Note: This bit is reserved on STM32WBA63xx devices.

Bits 11:10 I2C1SEL[1:0]: I2C1 kernel clock source selection

These bits are used to select the I2C1 kernel clock source.

Access can be secured by GTZC_TZSC I2C1SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

00: pclk1 selected

01: SYSCLK selected

10: HSI16 selected

11: reserved

Note: The I2C1 is functional in Stop 0 and Stop 1 mode only when the kernel clock is HSI16.

Bits 9:6 Reserved, must be kept at reset value.

Bits 5:4 USART3SEL[1:0]: USART3 kernel clock source selection

These bits are used to select the USART3 kernel clock source.

Access can be secured by GTZC_TZSC USART3SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

00: pclk1 selected

01: SYSCLK selected

10: HSI16 selected

11: LSE selected

Note: The USART3 is functional in Stop 0 and Stop 1 mode only when the kernel clock is HSI16 or LSE.

Note: This bit is reserved on STM32WBA63xx devices.

Bits 3:2 USART2SEL[1:0]: USART2 kernel clock source selection

These bits are used to select the USART2 kernel clock source.

Access can be secured by GTZC_TZSC USART2SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

00: pclk1 selected

01: SYSCLK selected

10: HSI16 selected

11: LSE selected

Note: The USART2 is functional in Stop 0 and Stop 1 mode only when the kernel clock is HSI16 or LSE.

Bits 1:0 USART1SEL[1:0] : USART1 kernel clock source selection

This bits are used to select the USART1 kernel clock source.

Access can be secured by GTZC_TZSC USART1SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

00: pclk2 selected

01: SYSCLK selected

10: HSI16 selected

11: LSE selected

Note: The USART1 is functional in Stop 0 and Stop 1 mode only when the kernel clock is HSI16 or LSE.

12.8.37 RCC peripherals independent clock configuration register 2 (RCC_CCIPR2)

Address offset: 0x0E4

Reset value: 0x0000 0000

Access: no wait state; word, half-word and byte access

31302928272625242322212019181716
Res.ASSELOTGHSSSEL [1:0]Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.
rwrwrw
1514131211109876543210
Res.Res.RNGSEL[1:0]Res.Res.Res.Res.SAI1SEL[2:0]Res.Res.Res.Res.Res.
rwrwrwrwrw

Bit 31 Reserved, must be kept at reset value.

Bit 30 ASSEL : RCC audio synchronization kernel clock source selection

This bit allow to select the audio synchronization kernel clock source.

Access can be secured by GTZC_TZSC SAI1SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: pll1pclk selected

1: pll1qclk selected

Bits 29:28 OTGHSSSEL[1:0] : USB OTG_HS PHY kernel clock source selection

These bits are used to select the USB OTG_HS PHY kernel clock source.

Access can be secured by GTZC_TZSC OTGSEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

00: HSE32 selected

01: pll1pclk selected,

10: HSE32 divided by 2 selected

11: pll1pclk divided by 2 selected

Note: This bit is reserved on STM32WBA63xx devices.

Bits 27:14 Reserved, must be kept at reset value.

Bits 13:12 RNGSEL[1:0] : RNGSEL kernel clock source selection

These bits allow to select the RNG kernel clock source.

Access can be secured by GTZC_TZSC RNGSEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

00: LSE selected

01: LSI selected

10: HSI16 selected

11: pll1qclk divide by 2 selected

Bits 11:8 Reserved, must be kept at reset value.

Bits 7:5 SAI1SEL[2:0] : SAI1 kernel clock source selection

These bits are used to select the SAI1 kernel clock source.

Access can be secured by GTZC_TZSC SAI1SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

000: pll1pclk selected

001: pll1qclk selected

010: SYSCLK selected

011: input pin AUDIOCLK selected

100: HSI16 clock selected

Note: If the selected clock is the external AUDIOCLK and this clock is stopped, a switch to another source is impossible.

Bits 4:0 Reserved, must be kept at reset value.

12.8.38 RCC peripherals independent clock configuration register 3 (RCC_CCIPR3)

Address offset: 0x0E8

Reset value: 0x0000 0000

Access: no wait state; word, half-word and byte access

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.
1514131211109876543210
Res.ADCSEL [2:0]LPTIM1SEL [1:0]Res.Res.I2C3SEL [1:0]Res.SPI3SEL [1:0]Res.LPUART1SEL [1:0]
rwrwrwrwrwrwrwrwrwrwrw

Bits 31:15 Reserved, must be kept at reset value.

Bits 14:12 ADCSEL[2:0] : ADC4 kernel clock source selection

These bits are used to select the ADC4 kernel clock source.

Access can be secured by GTZC_TZSC ADC4SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

000: hclk1 clock selected

001: SYSCLK selected

010: pll1pclk selected

011: HSE32 clock selected

100: HSI16 clock selected

others: reserved

Note: The ADC4 is functional in Stop 0 and Stop 1 modes only when the kernel clock is HSI16.

Bits 11:10 LPTIM1SEL[1:0] : LPTIM1 kernel clock source selection

These bits are used to select the LPTIM1 kernel clock source.

Access can be secured by GTZC_TZSC LPTIM1SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

00: pclk7 selected.

01: LSI selected

10: HSI16 selected

11: LSE selected

Note: The LPTIM1 is functional in Stop modes only when the kernel clock is LSI, LSE, HSI16 with HSIKERON = 1.

Bits 9:8 Reserved, must be kept at reset value.

Bits 7:6 I2C3SEL[1:0] : I2C3 kernel clock source selection

These bits are used to select the I2C3 kernel clock source.

Access can be secured by GTZC_TZSC I2C3SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

00: pclk7 selected

01: SYSCLK selected

10: HSI16 selected

11: reserved

Note: The I2C3 is functional in Stop modes only when the kernel clock is HSI16

Bit 5 Reserved, must be kept at reset value.

Bits 4:3 SPI3SEL[1:0] : SPI3 kernel clock source selection

These bits are used to select the SPI3 kernel clock source.

Access can be secured by GTZC_TZSC SPI3SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

00: pclk7 selected

01: SYSCLK selected

10: HSI16 selected

11: reserved

Note: The SPI3 is functional in Stop modes only when the kernel clock is HSI16.

Bit 2 Reserved, must be kept at reset value.

Bits 1:0 LPUART1SEL[1:0] : LPUART1 kernel clock source selection

These bits are used to select the LPUART1 kernel clock source.

Access can be secured by GTZC_TZSC LPUART1SEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

00: pclk7 selected

01: SYSCLK selected

10: HSI16 selected

11: LSE selected

Note: The LPUART1 is functional in Stop modes only when the kernel clock is HSI16 or LSE.

12.8.39 RCC Backup domain control register (RCC_BDCR1)

Address offset: 0x0F0

Backup domain reset value: 0b0000 0000 0000 0000 0XX0 0000 0000 1000

Where X (LSETRIM) is loaded with factory-programmed value at BOR0 reset and OBL_LAUNCH when SBF is cleared.

Fields LSCOSEL, LSCOEN and BDRST are reset only by Backup domain power-on reset (BOR0), and not by a BDRST reset.

Reset value not affected by exit Standby mode, nor by system reset or BORx (x = 1 to 4).

Access: 0 ≤ wait state ≤ 3; word, half-word and byte access

Wait states are inserted in case of successive accesses to this register.

Note: The bits of this register (except BDRST) are outside Core domain: as a result, after reset, they are write-protected and the DBP bit in the PWR disable Backup domain register (PWR_DBPR) must be set before they can be modified (see Section 11: Power control (PWR) for further information).

31302928272625242322212019181716
Res.LSI2 RDYLSI2 ONLSI1 PREDIVLSI1 RDYLSI1 ONLSCO SELLSCO ENRes.Res.Res.Res.RADIOSTSEL [1:0]Res.Res.BDRST
rrwrwrrwrwrwrw
1514131211109876543210
Res.LSETRIM[1:0]LSE GFONLSE SYS RDYRes.RTCSEL[1:0]LSE SYSENLSE CSSDLSE CSSONLSEDRV[1:0]LSE BYPLSE RDYLSE ON
rwrwrwrrwrwrwrrwrwrwrwrrw

Bit 31 Reserved, must be kept at reset value.

Bit 30 LSI2RDY : LSI2 oscillator ready

Set and cleared by hardware to indicate when the LSI2 oscillator is stable. After the LSI2ON bit is cleared, LSI2RDY goes low after three internal low-speed oscillator clock cycles.

Access can be secured by RCC LSISEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: LSI2 oscillator not ready

1: LSI2 oscillator ready

Bit 29 LSI2ON: LSI2 oscillator enable

Set and cleared by software.

Access can be secured by RCC LSISEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: LSI2 oscillator off

1: LSI2 oscillator on

Bit 28 LSI1PREDIV: LSI1 Low-speed clock divider configuration

Set and cleared by software to enable the LSI1 division. This bit can be written only when the LSI1 is disabled (LSI1ON = 0 and LSI1RDY = 0). The LSI1PREDIV cannot be changed if the LSI1 is used by the IWDG or by the RTC.

Access can be secured by RCC LSISEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: LSI1 not divided

1: LSI1 divided by 128

Bit 27 LSI1RDY: LSI1 oscillator ready

Set and cleared by hardware to indicate when the LSI1 oscillator is stable. After the LSI1ON bit is cleared, LSI1RDY goes low after three internal low-speed oscillator clock cycles. This bit is set when the LSI1 is used by IWDG or RTC, even if LSI1ON = 0.

Access can be secured by RCC LSISEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: LSI1 oscillator not ready

1: LSI1 oscillator ready

Bit 26 LSI1ON: LSI1 oscillator enable

Set and cleared by software.

Access can be secured by RCC LSISEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: LSI1 oscillator off

1: LSI1 oscillator on

Bit 25 LSCOSEL: Low-speed clock output selection

Set and cleared by software.

Access can be secured by RCC LSISEC and/or RCC LSESEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: LSI clock selected

1: LSE clock selected

Bit 24 LSCOEN: Low-speed clock output (LSCO) enable

Set and cleared by software.

Access can be secured by RCC LSISEC and/or RCC LSESEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: LSCO disabled

1: LSCO enabled

Bits 23:20 Reserved, must be kept at reset value.

Bits 19:18 RADIOSTSEL[1:0] : 2.4 GHz RADIO sleep timer kernel clock enable and selection

Set and cleared by software.

Access can be secured by GTZC_TZSC RADIOSEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

00: no clock selected, 2.4 GHz RADIO sleep timer kernel clock disabled

01: LSE oscillator clock selected

10: LSI oscillator clock selected

11: HSE32 oscillator clock divided by 1000 selected

Bit 17 Reserved, must be kept at reset value.

Bit 16 BDRST : Backup domain software reset

Set and cleared by software.

A Backup domain reset is generated only when the domain protection is disabled.

Can only be accessed secure when one or more features in the RTC or TAMP are secure. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: Reset not activated

1: Reset the entire Backup domain when the protection is disabled

Bit 15 Reserved, must be kept at reset value.

Bits 14:13 LSETRIM[1:0] : LSE trimming

These bits are initialized at startup and after OBL_LAUNCH with SBF cleared with the factory-programmed LSE calibration value.

Set and cleared by software. These bits must be modified only once after a BOR reset or an OBL_LAUNCH and before enabling LSE with LSEON (when both LSEON = 0 and LSERDY = 0).

Access can be secured by RCC LSESEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

00: current source resistance \( 5/4 \times R \)

01: current source resistance \( R \)

10: current source resistance \( 3/4 \times R \)

11: current source resistance \( 2/3 \times R \)

Note: OBL_LAUNCH of this field occurs only when SBF is cleared and must then only be started by software when LSE oscillator is disabled, LSEON = 0 and LSERDY = 0.

Bit 12 LSEGFON : LSE clock glitch filter enable

Set and cleared by hardware to enable the LSE glitch filter. This bit can be written only when the LSE is disabled (LSEON = 0 and LSERDY = 0).

Access can be secured by RCC LSESEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: LSE glitch filter disabled

1: LSE glitch filter enabled

Bit 11 LSESYSDY: LSE system clock (LSESYS) ready

Set and cleared by hardware to indicate when the LSE system clock is stable. When the LSESYSEN bit is set, the LSESYSDY flag is set after two LSE clock cycles.

The LSE clock must be already enabled and stable (LSEON and LSERDY are set).

When the LSEON bit is cleared, LSERDY goes low after six external low-speed oscillator clock cycles.

Access can be secured by RCC LSESEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: LSESYS clock not ready

1: LSESYS clock ready

Bit 10 Reserved, must be kept at reset value. Bits 9:8 RTCSEL[1:0]: RTC and TAMP kernel clock source enable and selection

Set by software to enable and select the clock source for the RTC.

Can only be accessed secure when one or more features in the RTC or TAMP is/are secure.

When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

00: no clock selected, RTC and TAMP kernel clock disabled

01: LSE oscillator clock selected, and enabled

10: LSI oscillator clock selected, and enabled

11: HSE32 oscillator clock divided by 32 selected, and enabled

Bit 7 LSESYSEN: LSE system clock (LSESYS) enable

Set by software to enable the LSE system clock generated by RCC. The Lsesys clock is used for peripherals (USART, LPUART, LPTIM, RNG, 2.4 GHz RADIO) and functions (LSCO, MCO, TIM triggers, LPTIM trigger) excluding the RTC, TAMP and LSECSS.

Access can be secured by RCC LSESEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: LSESYS clock disabled

1: LSESYS clock enabled

Bit 6 LSECSSD: Low speed external clock security, LSE failure Detection

Set by hardware to indicate when a failure is detected by the LSECCS on the external 32 kHz oscillator.

Reset when LSCSSON bit is cleared.

Access can be secured by RCC LSESEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: no failure detected on LSE

1: failure detected on LSE

Bit 5 LSECSSON: Low speed external clock security enable

Set by software to enable the LSECSS. LSECSSON must be enabled after the LSE oscillator is enabled (LSEON bit enabled) and ready (LSERDY flag set by hardware) and after the RTCSEL bit is selected.

Once enabled, this bit cannot be disabled, except after a LSE failure detection (LSECSSD = 1). In that case, the software must disable the LSECSSON bit.

Access can be secured by RCC LSESEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: LSECSS disabled off

1: LSECSS enabled on

Bits 4:3 LSEDRV[1:0]: LSE oscillator drive capability

Set by software to modulate the drive capability of the LSE oscillator. LSEDRV must be programmed to a different value than 0 before enabling the LSE oscillator in 'Xtal' mode.

Access can be secured by RCC LSESEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

00: reserved

01: 'Xtal mode' medium-low driving capability

10: 'Xtal mode' medium-high driving capability

11: 'Xtal mode' higher driving capability

Note: The oscillator is in 'Xtal mode' when it is not in bypass mode.

Bit 2 LSEBYP: LSE oscillator bypass

Set and cleared by software to bypass oscillator. This bit can be written only when the external 32 kHz oscillator is disabled (LSEON = 0 and LSERDY = 0).

Access can be secured by RCC LSESEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: LSE oscillator 'Xtal' mode

1: LSE oscillator bypassed

Bit 1 LSERDY: LSE oscillator ready

Set and cleared by hardware to indicate when the external 32 kHz oscillator is stable. After the LSEON bit is cleared, LSERDY goes low after six external low-speed oscillator clock cycles.

Access can be secured by RCC LSESEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: LSE oscillator not ready

1: LSE oscillator ready

Bit 0 LSEON: LSE oscillator enable

Set and cleared by software.

Access can be secured by RCC LSESEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: LSE oscillator off

1: LSE oscillator on

12.8.40 RCC control/status register (RCC_CSR)

Address offset: 0x0F4

Reset value: 0x0C00 0000

Reset flags are only reset by BOR0 power reset.

Access: 0 ≤ wait state ≤ 3; word, half-word and byte access

Wait states are inserted in case of successive accesses to this register.

31302928272625242322212019181716
LPWR
RSTF
WWDG
RSTF
IWDG
RSTF
SFT
RSTF
BOR
RSTF
PIN
RSTF
OBL
RSTF
Res.RMVFRes.Res.Res.Res.Res.Res.Res.
rrrrrrrrw
1514131211109876543210
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.

Bit 31 LPWRRSTF : Low-power reset flag

Set by hardware when a reset occurs due to illegal Stop and Standby modes entry.

Cleared by writing to the RMVF bit.

0: no illegal mode reset occurred

1: illegal mode reset occurred

Bit 30 WWDGRSTF : Window watchdog reset flag

Set by hardware when a window watchdog reset occurs.

Cleared by writing to the RMVF bit.

0: no window watchdog reset occurred

1: window watchdog reset occurred

Bit 29 IWDGRSTF : Independent watchdog reset flag

Set by hardware when an independent watchdog reset domain occurs.

Cleared by writing to the RMVF bit.

0: no independent watchdog reset occurred

1: independent watchdog reset occurred

Bit 28 SFTRSTF : Software reset flag

Set by hardware when a software reset occurs.

Cleared by writing to the RMVF bit.

0: no software reset occurred

1: software reset occurred

Bit 27 BORRSTF : BOR flag

Set by hardware when a BOR occurs.

Cleared by writing to the RMVF bit.

0: no BOR occurred

1: BOR occurred

Bit 26 PINRSTF : NRST pin reset flag

Set by hardware when a reset from the NRST pin occurs.

Cleared by writing to the RMVF bit.

0: No reset from NRST pin occurred

1: Reset from NRST pin occurred

Bit 25 OBLRSTF : Option byte loader reset flag

Set by hardware when a reset from the option byte loading occurs.

Cleared by writing to the RMVF bit.

0: No reset from option byte loading occurred

1: Reset from option byte loading occurred

Bit 24 Reserved, must be kept at reset value.

Bit 23 RMVF : Remove reset flag

Set by software to clear the reset flags.

Access can be secured by RCC RMVFSEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0: No effect

1: Clear the reset flags (once set by software bit is cleared automatically by hardware)

Bits 22:0 Reserved, must be kept at reset value.

12.8.41 RCC Backup domain control register (RCC_BDCR2)

Address offset: 0x0F8

Backup domain reset value: 0x0000 0000

(reset value not effected by exit Standby mode, nor by system reset or BORx (x = 1 to 4)).

Access: 0 ≤ wait state ≤ 3; word, half-word and byte access

Wait states are inserted in case of successive accesses to this register.

Note: The bits of this register are outside the Core domain. As a result, after reset, they are write-protected and the DBP bit in the PWR disable Backup domain register (PWR_DBPR) must be set before they can be modified (see Section 11: Power control (PWR) for further information).

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.
1514131211109876543210
Res.Res.Res.Res.Res.Res.Res.Res.LSI2CFG[3:0]Res.LSI2MODE[2:0]
rwrwrwrwrwrwrw

Bits 31:8 Reserved, must be kept at reset value.

Bits 7:4 LSI2CFG[3:0] : LSI2 oscillator configuration

Set and cleared by software to control the temperature at which the frequency temperature sensitivity is close to 0.

Access can be secured by RCC LSISEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0x0: LSI2 frequency temperature sensitivity is close to 0 at +80 °C

0x1: LSI2 frequency temperature sensitivity is close to 0 at +50 °C

0x2: LSI2 frequency temperature sensitivity is close to 0 at +20 °C

others reserved

Bit 3 Reserved, must be kept at reset value.

Bits 2:0 LSI2MODE[2:0] : LSI2 oscillator operating mode configuration

Set and cleared by software to select operating mode of power consumption versus accuracy.

Access can be secured by RCC LSISEC. When secure, a non-secure read/write access is RAZ/WI. It does not generate an illegal access interrupt. This bit can be protected against unprivileged access when secure with RCC SPRIV or when non-secure with RCC NSPRIV.

0b000: nominal-power, high accuracy

0b001: low-power, medium accuracy

0b010: ultra-low-power, low accuracy

others reserved

12.8.42 RCC secure configuration register (RCC_SECCFGR)

Address offset: 0x110

Reset value: 0x0000 0000

Access: no wait state; word, half-word and byte access

When the system is secure (TZEN = 1), this register can be written only by a secure privileged access if RCC SPRIV = 1 and by a secure privileged or unprivileged access if RCC SPRIV = 0. A non-secure write access generates an illegal access event and data are not written. This register can be read by secure or non-secure, privileged or unprivileged access.

When the system is not secure (TZEN = 0), this register is read as 0 and the register write is ignored.

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.
1514131211109876543210
Res.Res.Res.RMVFSECRes.Res.Res.Res.PLL1SECPRESCSECSYSCLKSECLSESECLSISECRes.HSESECHSISEC
rwrwrwrwrwrwrwrw

Bits 31:13 Reserved, must be kept at reset value.

Bit 12 RMVFSEC : Remove reset flag security

Set and reset by software.

0: Non secure

1: Secure

Bits 11:8 Reserved, must be kept at reset value.

Bit 7 PLL1SEC : PLL1 clock configuration and status bits security

Set and reset by software.

0: Non secure

1: Secure

12.8.43 RCC privilege configuration register (RCC_PRIVCFGR)

Address offset: 0x114

Reset value: 0x0000 0000

Access: no wait state; word, half-word and byte access

This register can be written only by a privileged access. It can be read by privileged or unprivileged access.

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.
1514131211109876543210
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.NSPRIVSPRIV
rwrw

Bits 31:2 Reserved, must be kept at reset value.

Bit 1 NSPRIV : RCC non-secure functions privilege configuration

Set and reset by software.

This bit can be written only by privileged access, secure or non-secure.

0: Read and write to RCC non-secure functions can be done by privileged or unprivileged access.

1: Read and write to RCC non-secure functions can be done by privileged access only.

Bit 0 SPRIV : RCC secure functions privilege configuration

Set and reset by software.

This bit can be written only by a secure privileged access.

0: Read and write to RCC secure functions can be done by privileged or unprivileged access.

1: Read and write to RCC secure functions can be done by privileged access only.

12.8.44 RCC audio synchronization control register (RCC_ASCR)

Address offset: 0x1C0

Reset value: 0x0000 4000

Access to this register can be protected by GTZC_TZSC_SAI1SEC and RCC SPRIV or RCC NSPRIV.

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.CPS[6:0]
rwrwrwrwrwrwrw
1514131211109876543210
Res.PSC[6:0]Res.Res.Res.Res.Res.Res.Res.CEN
rwrwrwrwrwrwrwrw

Bits 31:23 Reserved, must be kept at reset value.

Bits 22:16 CPS[6:0] : Capture prescaler

This field is set and cleared by software.

Capture period in number of counter periods. Capture period = counter period * (TPS + 1).

Bit 15 Reserved, must be kept at reset value.

Bits 14:8 PSC[6:0] : Clock prescaler

This field is set and cleared by software.

Counter clock frequency = \( f_{\text{audiosync\_ker\_ck}} / (\text{PSC} + 1) \) .

Bits 7:1 Reserved, must be kept at reset value.

Bit 0 CEN : Counter enable

This bit is set and cleared by software.

Clearing this bit will reset the audio synchronization counter and capture prescaler and all associated registers ASCR, ASIER, ASSR, ASCNTR, ASARR, ASCAR, and ASCOR.

0: Audio synchronization counter and kernel clock disabled

1: Audio synchronization counter and kernel clock enabled

12.8.45 RCC audio synchronization interrupt enable register (RCC_ASIER)

Address offset: 0x1C4

Reset value: 0x0000 0000

Access to this register can be protected by GTZC_TZSC SAI1SEC and RCC SPRIV or RCC NSPRIV.

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.
1514131211109876543210
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.CAEIECOIECAIE
rwrwrw

Bits 31:3 Reserved, must be kept at reset value.

Bit 2 CAEIE : Capture error interrupt enable

This bit is set and cleared by software.

0: Capture error interrupt disabled and flag masked

1: Capture error interrupt and flag enabled

Bit 1 COIE : Comparator interrupt enable

This bit is set and cleared by software.

0: Compare interrupt disabled and flag masked

1: Compare interrupt and flag enabled

Bit 0 CAIE : Capture trigger interrupt enable

This bit is set and cleared by software.

0: Capture trigger interrupt disabled and flag masked

1: Capture trigger interrupt and flag enabled

12.8.46 RCC audio synchronization status register (RCC_ASR)

Address offset: 0x1C8

Reset value: 0x0000 0000

Access to this register can be protected by GTZC_TZSC SAI1SEC and RCC SPRIV or RCC NSPRIV.

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.
1514131211109876543210
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.CAEFCOFCAF
rc_w0rc_w0rc_w0

Bits 31:3 Reserved, must be kept at reset value.

Bit 2 CAEF : Capture error interrupt flag

This bit is set by hardware, only when CAEIE is enabled. This bit is cleared by software by writing it to '0' or masked when CAEIE is '0'.

0: No capture error has been detected

1: A capture error has been detected

Bit 1 COF : Comparator interrupt flag

This field is set by hardware, only when COIE is enabled. This bit is cleared by software by writing it to '0' or masked when COIE is '0'.

0: No counter compare occurred

1: A counter compare has occurred

Bit 0 CAF : Capture trigger interrupt flag

This field is set by hardware, only when CAIE is enabled. This bit is cleared by software by writing it to '0' or masked when CAIE is '0'.

0: No capture update occurred

1: A capture update has occurred

12.8.47 RCC audio synchronization counter register (RCC_ASCNTR)

Address offset: 0x1CC

Reset value: 0x0000 0000

Access to this register can be protected by GTZC_TZSC SAI1SEC and RCC SPRIV or RCC NSPRIV.

31302928272625242322212019181716
ResResResResResResResResResResResResCNT[19:16]
rrrr
1514131211109876543210
CNT[15:0]
rrrrrrrrrrrrrrrr

Bits 31:20 Reserved, must be kept at reset value.

Bits 19:0 CNT[19:0] : Counter value

This field is set by hardware.

CNT[19:0] is the counter value at the time this register is read.

12.8.48 RCC audio synchronization auto-reload register (RCC_ASARR)

Address offset: 0x1D0

Reset value: 0x0008 0000

Access to this register can be protected by GTZC_TZSC SAI1SEC and RCC SPRIV or RCC NSPRIV.

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.AR[19:16]
rwrwrwrw
1514131211109876543210
AR[15:0]
rwrwrwrwrwrwrwrwrwrwrwrwrwrwrwrw

Bits 31:20 Reserved, must be kept at reset value.

Bits 19:0 AR[19:0] : Auto-reload value

This field is set by software.

CA[19:0] is the counter auto-reload value at which to restart the audio synchronization counter from value 0. It defines the counter period.

12.8.49 RCC audio synchronization capture register (RCC_ASCAR)

Address offset: 0x1D4

Reset value: 0x0000 0000

Access to this register can be protected by GTZC_TZSC SAI1SEC and RCC SPRIV or RCC NSPRIV.

31302928272625242322212019181716
Res.Res.Res.Res.Res.CA[26:16]
rrrrrrrrrrr
1514131211109876543210
CA[15:0]
rrrrrrrrrrrrrrrr

Bits 31:27 Reserved, must be kept at reset value.

Bits 26:0 CA[26:0] : Capture value

This field is set by hardware.

CA[26:20] is the capture period counter value loaded on the trigger event.

CA[19:0] is the audio synchronization counter value loaded on the trigger event.

12.8.50 RCC audio synchronization compare register (RCC_ASCOR)

Address offset: 0x1D8

Reset value: 0x0000 0000

Access to this register can be protected by GTZC_TZSC SAI1SEC and RCC SPRIV or RCC NSPRIV.

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.CO[19:16]
rwrwrwrw
1514131211109876543210
CO[15:0]
rwrwrwrwrwrwrwrwrwrwrwrwrwrwrwrw

Bits 31:20 Reserved, must be kept at reset value.

Bits 19:0 CO[19:0] : Compare value

This field is set by software.

CO[19:0] is the value to be compared to the audio synchronization counter to generate an compare interrupt event.

12.8.51 RCC clock configuration register 2 (RCC_CFGR4)

Address offset: 0x200

Reset value: 0x0000 0010

Access: word, half-word and byte access

1 or 2 wait states are inserted only if the access occurs during clock source switch.

Access to this register can be protected by RCC PRECSEC and RCC SPRIV or RCC NSPRIV.

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.
1514131211109876543210
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.HDIV5Res.HPRE5[2:0]
rwrwrwrw

Bits 31:5 Reserved, must be kept at reset value.

Bit 4 HDIV5 : AHB5 divider when SWS select HSI16 or HSE32

Set and reset by software.

Set to 1 by hardware when entering Stop 1 and Stop 2 mode.

Caution: Depending on the device voltage range, the software must set this bit correctly to ensure that the AHB5 frequency does not exceed the maximum allowed frequency (for more details refer to Table 103 ). After a write operation to this bit and before decreasing the voltage range, this register must be read to be sure that the new value is taken into account.

0: hclk5 = SYSCLK not divided

1: hclk5 = SYSCLK divided by 2

Bit 3 Reserved, must be kept at reset value.

Bits 2:0 HPRE5[2:0] : AHB5 prescaler when SWS select PLL1

Set and cleared by software to control the division factor of the AHB5 clock (hclk5).

Must not be changed when SYSCLK source indicated by SWS is PLL1.

Caution: Depending on the device voltage range, the software must set these bits correctly to ensure that the AHB5 frequency does not exceed the maximum allowed frequency (for more details refer to Table 103 ). After a write operation to these bits and before decreasing the voltage range, this register must be read to be sure that the new value is taken into account.

0xx: hclk5 = SYSCLK not divided

100: hclk5 = SYSCLK divided by 2

101: hclk5 = SYSCLK divided by 3

110: hclk5 = SYSCLK divided by 4

111: hclk5 = SYSCLK divided by 6

12.8.52 RCC RADIO peripheral clock enable register (RCC_RADIOENR)

Address offset: 0x208

Reset value: 0x0000 0000

Access: no wait state, word, half-word and byte access

Access to this register can be protected by GTZC_TZSC RADIOSEC and RCC SPRIV or NSPRIV.

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.RADIOCLKRDYSTRADIOCLKON
rrc_w0
1514131211109876543210
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.BBCLKENRes.
rw

Bits 31:18 Reserved, must be kept at reset value.

Bit 17 RADIOCLKRDY : 2.4 GHz RADIO bus clock ready.

Set and cleared by hardware to indicate that the 2.4 GHz RADIO bus clock is ready and the 2.4 GHz RADIO registers can be accessed.

0: 2.4 GHz RADIO bus clock not ready

1: 2.4 GHz RADIO bus clock ready

Note: Once both RADIOEN and STRADIOCLKON are cleared, RADIOCLKRDY goes low after three hclk5 clock cycles.

Bit 16 STRADIOCLKON : 2.4 GHz RADIO bus clock enable and HSE32 oscillator enable by 2.4 GHz RADIO sleep timer wake-up event

Set by hardware on a 2.4 GHz RADIO sleep timer wake-up event.

Cleared by software writing 0 to this bit.

0: 2.4 GHz RADIO bus clock and HSE32 oscillator not requested by 2.4 GHz RADIO sleep timer wake-up event.

1: 2.4 GHz RADIO bus clock and HSE32 oscillator enabled by 2.4 GHz RADIO sleep timer wake-up event

Note: Before accessing the 2.4 GHz RADIO registers the RADIOCLKRDY bit must be checked.

Bits 15:2 Reserved, must be kept at reset value.

Bit 1 BBCLKEN : 2.4 GHz RADIO baseband kernel clock (aclk) enable

Set and cleared by software.

0: 2.4 GHz RADIO baseband kernel clock disabled

1: 2.4 GHz RADIO baseband kernel clock enabled

Note: The HSE32 oscillator needs to be enabled by either HSEON or STRADIOCLKON.

Bit 0 Reserved, must be kept at reset value.

12.8.53 RCC external clock sources calibration register 1(RCC_ECSCR1)

Address offset: 0x210

Power-on reset value: 0x0020 0000

Reset value not effected by exit Standby mode, nor reset from system reset and BORx (x = 1 to 4).

Access: no wait state; word, half-word and byte access

Access to this register can be protected by RCC HSESEC and RCC SPRIV or RCC NSPRIV.

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.HSETRIM[5:0]
rwrwrwrwrwrw
1514131211109876543210
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.

Bits 31:22 Reserved, must be kept at reset value.

Bits 21:16 HSETRIM[5:0] : HSE32 clock trimming

These bits provide user-programmable capacitor trimming value. It can be programmed to adjust the HSE32 oscillator frequency.

Bits 15:0 Reserved, must be kept at reset value.

12.8.54 RCC register map

Table 109. RCC register map and reset values

OffsetRegister name313029282726252423222120191817161514131211109876543210
0x000RCC_CRRes.Res.Res.Res.Res.Res.PLL1RDYPLL1ONRes.Res.Res.HSEPREHSECGSONRes.HSERDYHSEONRes.Res.Res.Res.Res.HSIRDYHSIKERONHSIONRes.Res.Res.Res.Res.Res.Res.Res.
Reset value000000000
0x004 to 0x00CReservedReserved
0x010RCC_ICSCR3Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.HSITRIM[4:0]Res.Res.Res.Res.Res.HSICAL[11:0]
Reset value10000XXXXXXXXXXXX
0x014 to 0x018ReservedReserved
0x01CRCC_CFGR1Res.MCOPRE [2:0]MCOSEL[3:0]Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.SWS[1:0]SW [1:0]
Reset value00000000000
0x020RCC_CFGR2Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.PPRE2 [2:0]PPRE1 [2:0]Res.Res.Res.Res.Res.HPRE [2:0]
Reset value00000000000
0x024RCC_CFGR3Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.PPRE7 [2:0]Res.Res.Res.Res.Res.Res.Res.Res.Res.
Reset value000
0x028RCC_PLL1CFGRRes.Res.Res.Res.Res.Res.Res.Res.PLL1RCLKPRERDYPLL1RCLKPRESTEPPLL1RCLKPRERes.PLL1RENPLL1QENPLL1PENRes.Res.Res.Res.Res.PLL1M[2:0]Res.Res.Res.PLL1FRACENPLL1RGE[1:0]PLL1SRC[1:0]
Reset value00000000000000
0x02C to 0x030ReservedReserved
0x034RCC_PLL1DIVRRes.PLL1R[6:0]Res.PLL1Q[6:0]PLL1P[6:0]PLL1N[8:0]
Reset value00100010000010000000101000000
0x038RCC_PLL1FRACRRes.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.PLL1FRACN[12:0]Res.Res.Res.Res.
Reset value00000000000000
0x03C to 0x04CReservedReserved
0x050RCC_CIERRes.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.LSI2RDYIERes.Res.Res.Res.Res.Res.Res.Res.Res.PLL1RDYIERes.HSERDYIEHSIRDYIERes.LSERDYIELSI1RDYIE
Reset value000000
0x054RCC_CIFRRes.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.LSI2RDYIFRes.Res.Res.Res.Res.HSECGSFRes.Res.Res.PLL1RDYIFRes.HSERDYIFHSIRDYIFRes.LSERDYIFLSI1RDYIF
Reset value0000000

Table 109. RCC register map and reset values (continued)

OffsetRegister name313029282726252423222120191817161514131211109876543210
0x058RCC_CICRResResResResResResResResResResResResResResResLSI2RDYCResResResResResHSECSSCResResResPLL1RDYCResResHSERDYCResLSERDYCLSI1RDYC
Reset value000000
0x05CReservedReserved
0x060RCC_AHB1RSTRResResResResResResResResResResResResResResTSCRSTResResResResCRCRSTResResResResResResResResResResResGPDMA1RST
Reset value000
0x064RCC_AHB2RSTRResResResResResResResResResResPKARSTHSEMRSTSAESRSTRNGRSTHASHRSTAESRSTResOTGRST (1)ResResResResResResGPIOHRSTGPIOGRST (2)ResGPIOERST (3)GPIDRST (1)GPIOCRSTGPIOBRSTGPIOARST
Reset value00000000000000
0x068ReservedReserved
0x06CRCC_AHB4RSTRResResResResResResResResResResResResResResResResResResResResResResResResResADC4RSTResResResResResRes
Reset value0
0x070RCC_AHB5RSTRResResResResResResResResResResResResResResResResResResResResResResResResResResResResResResPTACONVRSTRADIOIRST
Reset value00
0x074RCC_APB1RSTR1ResResResResResResResResResResI2C2RST (1)I2C1IRSTResUSART3RST (1)USART2RSTResResResResResResResResResResResResResResResResTIM4RST (1)
Reset value000000
0x078RCC_APB1RSTR2ResResResResResResResResResResResResResResResResResResResResResResResResResResLPTIM2RSTResResResResI2C4RST (1)
Reset value00
0x07CRCC_APB2RSTRResResResResResResResResResResSA1IRSTResResTIM17RSTTIM16RSTResResResResUSART1IRSTResSPI1IRSTTIM1IRSTResResResResResResResResRes
Reset value000000
0x080RCC_APB7RSTRResResResResResResResResResResResVREFRST (3)ResResResCOMPRSTResResResResResLPTIM1IRSTResResResI2C3RSTLPUART1IRSTSPI3RSTResResResSYSCFGIRST
Reset value0000000
0x084ReservedReserved

Table 109. RCC register map and reset values (continued)

OffsetRegister name313029282726252423222120191817161514131211109876543210
0x088RCC_AHB1ENRSRAM1ENRes.Res.Res.Res.Res.Res.GTZC1ENRes.Res.Res.Res.Res.Res.RAMCFGENTSCENRes.Res.Res.CRCENRes.Res.Res.FLASHENRes.Res.Res.Res.Res.Res.Res.Res.
Reset value1000010
0x08CRCC_AHB2ENRRes.SRAM2ENRes.Res.Res.Res.Res.Res.Res.Res.PKAENHSEMENSAESENRNGENHASHENAESENOTGHSPHYEN (1)OTGEN (1)Res.Res.Res.Res.Res.Res.GPIOHENGPIOGEN (2)GPIOEEN (3)GPIOEN (1)GPIOCENGPIOBENRes.Res.
Reset value1000000000000000
0x090ReservedReserved
0x094RCC_AHB4ENRRes.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.ADC4ENRes.Res.Res.Res.Res.
Reset value00
0x098RCC_AHB5ENRRes.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.
Reset value00
0x09CRCC_APB1ENR1Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.
Reset value00000000
0x0A0RCC_APB1ENR2Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.
Reset value00
0x0A4RCC_APB2ENRRes.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.
Reset value000000
0x0A8RCC_APB7ENRRes.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.
Reset value00000000
0x0ACReservedReserved
0x0B0RCC_AHB1SMENRSRAM1SMENRes.ICACHESMENRes.Res.Res.Res.GTZC1SMENRes.Res.Res.Res.Res.Res.RAMCFGENTSCSMENRes.Res.Res.CRCSMENRes.Res.Res.FLASHSMENRes.Res.Res.Res.Res.Res.Res.Res.
Reset value11111111

Table 109. RCC register map and reset values (continued)

OffsetRegister name313029282726252423222120191817161514131211109876543210
0x0B4RCC_
AHB2SMENR
Res.SRAM2SMENRes.Res.Res.Res.Res.Res.Res.Res.PKASMENRes.SAESSMENRNGSMENHASHSMENAESSMENOTGSPHYSMEN (1)OTGSMEN (1)Res.Res.Res.Res.Res.Res.GPIOHSMENGPIOGSMEN (2)Res.GPIOESMEN (3)GPIODSMEN (1)GPIOCSMENGPIOBSMENGPIOASMEN
111111111111111
0x0B8ReservedReserved
0x0BCRCC_
AHB4SMENR
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.ADC4SMENRes.Res.Res.PWRSMENRes.
11
0x0C0RCC_
AHB5SMENR
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.PTACONVSMENRes.RADIOSMEN
11
0x0C4RCC_
APB1SMENR1
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.I2C2SMEN (1)I2C1SMENRes.USART3SMEN (1)USART2SMENRes.Res.SPI2SMEN (1)Res.Res.WWDGSMENRes.Res.Res.Res.Res.Res.Res.Res.TIM4SMEN (1)TIM3SMENTIM2SMEN
111111111
0x0C8RCC_
APB1SMENR2
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.LPTIM2SMENRes.Res.Res.I2C4SMEN (1)Res.
11
0x0CCRCC_
APB2SMENR
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.SAI1SMENRes.TIM17SMENTIM16SMENRes.Res.USART1SMENRes.SPI1SMENTIM1SMENRes.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.
111111
0x0D0RCC_
APB7SMENR
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.RTCAPBSMENVREFSMEN (3)Res.Res.Res.Res.COMPSMENRes.Res.LPTIM1SMENRes.Res.Res.Res.I2C3SMENLPUART1SMENSPI3SMENRes.Res.Res.SYSCFGSMENRes.
11111111
0x0D4 to 0x0DCReservedReserved
0x0E0RCC_
CCIPR1
TIMICSELRes.Res.Res.Res.Res.SYSTICKSEL [1:0]SPI1SEL [1:0]LPTIM2SEL [1:0]SPI2SEL [1:0] (1)I2C4SEL [1:0] (1)I2C2SEL [1:0] (1)I2C1SEL [1:0]Res.Res.Res.Res.USART3SEL [1:0] (1)LPUART1SEL [1:0]USART2SEL [1:0]USART1SEL [1:0]
00000000000000000000000

Table 109. RCC register map and reset values (continued)

OffsetRegister name313029282726252423222120191817161514131211109876543210
0x0E4RCC_CCIPR2Res.ASSELOTGHSEL[1:0] (1)Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.RNGSEL[1:0]Res.Res.Res.Res.Res.Res.SAI1SEL[2:0]Res.Res.Res.
Reset value00000000
0x0E8RCC_CCIPR3Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.ADCSEL[2:0]Res.LPTIM1SEL[1:0]Res.Res.Res.I2C3SEL[1:0]Res.SPI3SEL[2:0]Res.LPUART1SEL[1:0]
Reset value000000000000
0x0F0RCC_BDCR1Res.LSI2RDYLSI2ONLSI1PREDIVLSI1RDYLSI1ONLSCOSELLSCOENRes.Res.Res.Res.RADIOSEL[1:0]Res.Res.BDRSTRes.Res.LSETRIM[1:0]LSEGFRDYLSESYSRDYRes.Res.Res.RTCSEL[1:0]LSESYSENLSECSSDLSECSSONLSEDRV[1:0]LSEBYPLSERDYLSEON
Reset value000000000000000000000000
0x0F4RCC_CSRLPWRRSTFWWDGRSTFIWDGRSTFSFTRSTFBORRSTFPINRSTFOBLRSTFRes.RMVFRes.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.
Reset value00001100
0x0F8RCC_BDCR2Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.LSI2CFG[3:0]Res.Res.Res.LSI2MODE[2:0]
Reset value0000000
0x0FC to 0x10CReservedReserved
0x110RCC_SECCFGRRes.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.RMVFSECRes.Res.Res.Res.PLL1SECPRESCSECSYSCLKSECLSESECLSISECRes.HSESECHSISEC
Reset value00000000
0x114RCC_PRIVCFGRRes.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.NSPRIVSPRIV
Reset value00
0x118 to 0x1BCReservedReserved
0x1C0RCC_ASCRRes.Res.Res.Res.Res.Res.Res.Res.TPS[6:0]Res.PSC[6:0]Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.CEN
Reset value000000010000000
0x1C4RCC_ASIERRes.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.CAEIECOIECAIE
Reset value000
0x1C8RCC_ASSRRes.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.CAEFCOFCAF
Reset value000

Table 109. RCC register map and reset values (continued)

OffsetRegister name313029282726252423222120191817161514131211109876543210
0x1CCRCC_ASCNTRRes.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.CNT[19:0]
Reset value0000000000000000000
0x1D0RCC_ASARRRes.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.AR[19:0]
Reset value1000000000000000000
0x1D4RCC_ASCARRes.Res.Res.Res.Res.CA[26:0]
Reset value00000000000000000000000000
0x1D8RCC_ASCORRes.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.CO[19:0]
Reset value000000000000000000
0x1DC to 0x1FCReservedReserved
0x200RCC_CFGR4Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res. 3Res. 3HPRE5 [2:0]
Reset value10
0x204ReservedReserved
0x208RCC_RADIOENRRes.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.RADIOCLKRDYSTRADIOCLKONRes.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.BBCLKEN
Reset value000
0x20CReservedReserved
0x210RCC_ECSCR1Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.HSETRIM[5:0]Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.
Reset value100000
0x214 to 0x3FCReservedReserved

1. Bit only available on STM32WBA62/64/65xx devices.

2. Bit reserved on STM32WBA63/64xx devices.

3. Bit only available on STM32WBA62/65xx devices.

Refer to Section 2.3: Memory organization for the register boundary addresses.