stm32h747/stm32h747i-disco/CM7/Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_cortex.c File Reference

CORTEX HAL module driver. This file provides firmware functions to manage the following functionalities of the CORTEX: More...

#include "stm32h7xx_hal.h"
Include dependency graph for stm32h747/stm32h747i-disco/CM7/Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_cortex.c:

Go to the source code of this file.

Detailed Description

CORTEX HAL module driver. This file provides firmware functions to manage the following functionalities of the CORTEX:

Author
MCD Application Team
  • Initialization and de-initialization functions
  • Peripheral Control functions
==============================================================================
                      ##### How to use this driver #####
==============================================================================

  [..]
  *** How to configure Interrupts using CORTEX HAL driver ***
  ===========================================================
  [..]
  This section provides functions allowing to configure the NVIC interrupts (IRQ).
  The Cortex-M exceptions are managed by CMSIS functions.

  (#) Configure the NVIC Priority Grouping using HAL_NVIC_SetPriorityGrouping()
      function according to the following table.
  (#) Configure the priority of the selected IRQ Channels using HAL_NVIC_SetPriority().
  (#) Enable the selected IRQ Channels using HAL_NVIC_EnableIRQ().
  (#) please refer to programming manual for details in how to configure priority.

   -@- When the NVIC_PRIORITYGROUP_0 is selected, IRQ preemption is no more possible.
       The pending IRQ priority will be managed only by the sub priority.

   -@- IRQ priority order (sorted by highest to lowest priority):
      (+@) Lowest preemption priority
      (+@) Lowest sub priority
      (+@) Lowest hardware priority (IRQ number)

  [..]
  *** How to configure Systick using CORTEX HAL driver ***
  ========================================================
  [..]
  Setup SysTick Timer for time base.

 (+) The HAL_SYSTICK_Config() function calls the SysTick_Config() function which
     is a CMSIS function that:
      (++) Configures the SysTick Reload register with value passed as function parameter.
      (++) Configures the SysTick IRQ priority to the lowest value (0x0F).
      (++) Resets the SysTick Counter register.
      (++) Configures the SysTick Counter clock source to be Core Clock Source (HCLK).
      (++) Enables the SysTick Interrupt.
      (++) Starts the SysTick Counter.

 (+) You can change the SysTick Clock source to be HCLK_Div8 by calling the macro
     HAL_SYSTICK_CLKSourceConfig(SYSTICK_CLKSOURCE_HCLK_DIV8) just after the
     HAL_SYSTICK_Config() function call. The HAL_SYSTICK_CLKSourceConfig() macro is defined
     inside the stm32h7xx_hal_cortex.h file.

 (+) You can change the SysTick IRQ priority by calling the
     HAL_NVIC_SetPriority(SysTick_IRQn,...) function just after the HAL_SYSTICK_Config() function
     call. The HAL_NVIC_SetPriority() call the NVIC_SetPriority() function which is a CMSIS function.

 (+) To adjust the SysTick time base, use the following formula:

     Reload Value = SysTick Counter Clock (Hz) x  Desired Time base (s)
     (++) Reload Value is the parameter to be passed for HAL_SYSTICK_Config() function
     (++) Reload Value should not exceed 0xFFFFFF
Attention

© COPYRIGHT(c) 2017 STMicroelectronics. All rights reserved.

This software component is licensed by ST under BSD 3-Clause license, the "License"; You may not use this file except in compliance with the License. You may obtain a copy of the License at: opensource.org/licenses/BSD-3-Clause

Definition in file stm32h747/stm32h747i-disco/CM7/Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_cortex.c.



picovoice_driver
Author(s):
autogenerated on Fri Apr 1 2022 02:15:03