STM32L443xx HAL User Manual
Defines | Functions
stm32l4xx_hal_rcc.c File Reference

RCC HAL module driver. This file provides firmware functions to manage the following functionalities of the Reset and Clock Control (RCC) peripheral: + Initialization and de-initialization functions + Peripheral Control functions. More...

#include "stm32l4xx_hal.h"

Go to the source code of this file.

Defines

#define HSE_TIMEOUT_VALUE   HSE_STARTUP_TIMEOUT
#define HSI_TIMEOUT_VALUE   2U /* 2 ms (minimum Tick + 1) */
#define MSI_TIMEOUT_VALUE   2U /* 2 ms (minimum Tick + 1) */
#define LSI_TIMEOUT_VALUE   2U /* 2 ms (minimum Tick + 1) */
#define HSI48_TIMEOUT_VALUE   2U /* 2 ms (minimum Tick + 1) */
#define PLL_TIMEOUT_VALUE   2U /* 2 ms (minimum Tick + 1) */
#define CLOCKSWITCH_TIMEOUT_VALUE   5000U /* 5 s */
#define __MCO1_CLK_ENABLE()   __HAL_RCC_GPIOA_CLK_ENABLE()
#define MCO1_GPIO_PORT   GPIOA
#define MCO1_PIN   GPIO_PIN_8
#define RCC_PLL_OSCSOURCE_CONFIG(__HAL_RCC_PLLSOURCE__)   (MODIFY_REG(RCC->PLLCFGR, RCC_PLLCFGR_PLLSRC, (__HAL_RCC_PLLSOURCE__)))

Functions

static HAL_StatusTypeDef RCC_SetFlashLatencyFromMSIRange (uint32_t msirange)
 Update number of Flash wait states in line with MSI range and current voltage range.
HAL_StatusTypeDef HAL_RCC_DeInit (void)
 Reset the RCC clock configuration to the default reset state.
HAL_StatusTypeDef HAL_RCC_OscConfig (RCC_OscInitTypeDef *RCC_OscInitStruct)
 Initialize the RCC Oscillators according to the specified parameters in the RCC_OscInitTypeDef.
HAL_StatusTypeDef HAL_RCC_ClockConfig (RCC_ClkInitTypeDef *RCC_ClkInitStruct, uint32_t FLatency)
 Initialize the CPU, AHB and APB busses clocks according to the specified parameters in the RCC_ClkInitStruct.
void HAL_RCC_MCOConfig (uint32_t RCC_MCOx, uint32_t RCC_MCOSource, uint32_t RCC_MCODiv)
 Select the clock source to output on MCO pin(PA8).
uint32_t HAL_RCC_GetSysClockFreq (void)
 Return the SYSCLK frequency.
uint32_t HAL_RCC_GetHCLKFreq (void)
 Return the HCLK frequency.
uint32_t HAL_RCC_GetPCLK1Freq (void)
 Return the PCLK1 frequency.
uint32_t HAL_RCC_GetPCLK2Freq (void)
 Return the PCLK2 frequency.
void HAL_RCC_GetOscConfig (RCC_OscInitTypeDef *RCC_OscInitStruct)
 Configure the RCC_OscInitStruct according to the internal RCC configuration registers.
void HAL_RCC_GetClockConfig (RCC_ClkInitTypeDef *RCC_ClkInitStruct, uint32_t *pFLatency)
 Configure the RCC_ClkInitStruct according to the internal RCC configuration registers.
void HAL_RCC_EnableCSS (void)
 Enable the Clock Security System.
void HAL_RCC_NMI_IRQHandler (void)
 Handle the RCC Clock Security System interrupt request.
__weak void HAL_RCC_CSSCallback (void)
 RCC Clock Security System interrupt callback.
uint32_t HAL_RCC_GetResetSource (void)
 Get and clear reset flags.

Detailed Description

RCC HAL module driver. This file provides firmware functions to manage the following functionalities of the Reset and Clock Control (RCC) peripheral: + Initialization and de-initialization functions + Peripheral Control functions.

Author:
MCD Application Team
  ==============================================================================
                      ##### RCC specific features #####
  ==============================================================================
    [..]
      After reset the device is running from Multiple Speed Internal oscillator
      (4 MHz) with Flash 0 wait state. Flash prefetch buffer, D-Cache
      and I-Cache are disabled, and all peripherals are off except internal
      SRAM, Flash and JTAG.

      (+) There is no prescaler on High speed (AHBs) and Low speed (APBs) busses:
          all peripherals mapped on these busses are running at MSI speed.
      (+) The clock for all peripherals is switched off, except the SRAM and FLASH.
      (+) All GPIOs are in analog mode, except the JTAG pins which
          are assigned to be used for debug purpose.

    [..]
      Once the device started from reset, the user application has to:
      (+) Configure the clock source to be used to drive the System clock
          (if the application needs higher frequency/performance)
      (+) Configure the System clock frequency and Flash settings
      (+) Configure the AHB and APB busses prescalers
      (+) Enable the clock for the peripheral(s) to be used
      (+) Configure the clock source(s) for peripherals which clocks are not
          derived from the System clock (SAIx, RTC, ADC, USB OTG FS/SDMMC1/RNG)

  
Attention:

Copyright (c) 2017 STMicroelectronics. All rights reserved.

This software is licensed under terms that can be found in the LICENSE file in the root directory of this software component. If no LICENSE file comes with this software, it is provided AS-IS.

Definition in file stm32l4xx_hal_rcc.c.