mbed library sources

Dependents:   Encrypted my_mbed lklk CyaSSL_DTLS_Cellular ... more

Superseded

This library was superseded by mbed-dev - https://os.mbed.com/users/mbed_official/code/mbed-dev/.

Development branch of the mbed library sources. This library is kept in synch with the latest changes from the mbed SDK and it is not guaranteed to work.

If you are looking for a stable and tested release, please import one of the official mbed library releases:

Import librarymbed

The official Mbed 2 C/C++ SDK provides the software platform and libraries to build your applications.

Committer:
mbed_official
Date:
Thu Aug 20 10:45:13 2015 +0100
Revision:
613:bc40b8d2aec4
Parent:
532:fe11edbda85c
Synchronized with git revision 92ca8c7b60a283b6bb60eb65b183dac1599f0ade

Full URL: https://github.com/mbedmicro/mbed/commit/92ca8c7b60a283b6bb60eb65b183dac1599f0ade/

Nordic: update application start address in GCC linker script

Who changed what in which revision?

UserRevisionLine numberNew contents of line
mbed_official 235:685d5f11838f 1 /**
mbed_official 235:685d5f11838f 2 ******************************************************************************
mbed_official 235:685d5f11838f 3 * @file stm32f4xx_hal_cortex.h
mbed_official 235:685d5f11838f 4 * @author MCD Application Team
mbed_official 613:bc40b8d2aec4 5 * @version V1.3.2
mbed_official 613:bc40b8d2aec4 6 * @date 26-June-2015
mbed_official 235:685d5f11838f 7 * @brief Header file of CORTEX HAL module.
mbed_official 235:685d5f11838f 8 ******************************************************************************
mbed_official 235:685d5f11838f 9 * @attention
mbed_official 235:685d5f11838f 10 *
mbed_official 532:fe11edbda85c 11 * <h2><center>&copy; COPYRIGHT(c) 2015 STMicroelectronics</center></h2>
mbed_official 235:685d5f11838f 12 *
mbed_official 235:685d5f11838f 13 * Redistribution and use in source and binary forms, with or without modification,
mbed_official 235:685d5f11838f 14 * are permitted provided that the following conditions are met:
mbed_official 235:685d5f11838f 15 * 1. Redistributions of source code must retain the above copyright notice,
mbed_official 235:685d5f11838f 16 * this list of conditions and the following disclaimer.
mbed_official 235:685d5f11838f 17 * 2. Redistributions in binary form must reproduce the above copyright notice,
mbed_official 235:685d5f11838f 18 * this list of conditions and the following disclaimer in the documentation
mbed_official 235:685d5f11838f 19 * and/or other materials provided with the distribution.
mbed_official 235:685d5f11838f 20 * 3. Neither the name of STMicroelectronics nor the names of its contributors
mbed_official 235:685d5f11838f 21 * may be used to endorse or promote products derived from this software
mbed_official 235:685d5f11838f 22 * without specific prior written permission.
mbed_official 235:685d5f11838f 23 *
mbed_official 235:685d5f11838f 24 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
mbed_official 235:685d5f11838f 25 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
mbed_official 235:685d5f11838f 26 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
mbed_official 235:685d5f11838f 27 * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
mbed_official 235:685d5f11838f 28 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
mbed_official 235:685d5f11838f 29 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
mbed_official 235:685d5f11838f 30 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
mbed_official 235:685d5f11838f 31 * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
mbed_official 235:685d5f11838f 32 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
mbed_official 235:685d5f11838f 33 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
mbed_official 235:685d5f11838f 34 *
mbed_official 235:685d5f11838f 35 ******************************************************************************
mbed_official 235:685d5f11838f 36 */
mbed_official 235:685d5f11838f 37
mbed_official 235:685d5f11838f 38 /* Define to prevent recursive inclusion -------------------------------------*/
mbed_official 235:685d5f11838f 39 #ifndef __STM32F4xx_HAL_CORTEX_H
mbed_official 235:685d5f11838f 40 #define __STM32F4xx_HAL_CORTEX_H
mbed_official 235:685d5f11838f 41
mbed_official 235:685d5f11838f 42 #ifdef __cplusplus
mbed_official 235:685d5f11838f 43 extern "C" {
mbed_official 235:685d5f11838f 44 #endif
mbed_official 235:685d5f11838f 45
mbed_official 235:685d5f11838f 46 /* Includes ------------------------------------------------------------------*/
mbed_official 235:685d5f11838f 47 #include "stm32f4xx_hal_def.h"
mbed_official 235:685d5f11838f 48
mbed_official 235:685d5f11838f 49 /** @addtogroup STM32F4xx_HAL_Driver
mbed_official 235:685d5f11838f 50 * @{
mbed_official 235:685d5f11838f 51 */
mbed_official 235:685d5f11838f 52
mbed_official 235:685d5f11838f 53 /** @addtogroup CORTEX
mbed_official 235:685d5f11838f 54 * @{
mbed_official 235:685d5f11838f 55 */
mbed_official 235:685d5f11838f 56 /* Exported types ------------------------------------------------------------*/
mbed_official 235:685d5f11838f 57 /* Exported constants --------------------------------------------------------*/
mbed_official 235:685d5f11838f 58
mbed_official 532:fe11edbda85c 59 /** @defgroup CORTEX_Exported_Constants CORTEX Exported Constants
mbed_official 235:685d5f11838f 60 * @{
mbed_official 235:685d5f11838f 61 */
mbed_official 235:685d5f11838f 62
mbed_official 532:fe11edbda85c 63 /** @defgroup CORTEX_Preemption_Priority_Group CORTEX Preemption Priority Group
mbed_official 235:685d5f11838f 64 * @{
mbed_official 235:685d5f11838f 65 */
mbed_official 235:685d5f11838f 66 #define NVIC_PRIORITYGROUP_0 ((uint32_t)0x00000007) /*!< 0 bits for pre-emption priority
mbed_official 235:685d5f11838f 67 4 bits for subpriority */
mbed_official 235:685d5f11838f 68 #define NVIC_PRIORITYGROUP_1 ((uint32_t)0x00000006) /*!< 1 bits for pre-emption priority
mbed_official 235:685d5f11838f 69 3 bits for subpriority */
mbed_official 235:685d5f11838f 70 #define NVIC_PRIORITYGROUP_2 ((uint32_t)0x00000005) /*!< 2 bits for pre-emption priority
mbed_official 235:685d5f11838f 71 2 bits for subpriority */
mbed_official 235:685d5f11838f 72 #define NVIC_PRIORITYGROUP_3 ((uint32_t)0x00000004) /*!< 3 bits for pre-emption priority
mbed_official 235:685d5f11838f 73 1 bits for subpriority */
mbed_official 235:685d5f11838f 74 #define NVIC_PRIORITYGROUP_4 ((uint32_t)0x00000003) /*!< 4 bits for pre-emption priority
mbed_official 235:685d5f11838f 75 0 bits for subpriority */
mbed_official 532:fe11edbda85c 76 /**
mbed_official 532:fe11edbda85c 77 * @}
mbed_official 532:fe11edbda85c 78 */
mbed_official 235:685d5f11838f 79
mbed_official 532:fe11edbda85c 80 /** @defgroup CORTEX_SysTick_clock_source CORTEX _SysTick clock source
mbed_official 532:fe11edbda85c 81 * @{
mbed_official 532:fe11edbda85c 82 */
mbed_official 532:fe11edbda85c 83 #define SYSTICK_CLKSOURCE_HCLK_DIV8 ((uint32_t)0x00000000)
mbed_official 532:fe11edbda85c 84 #define SYSTICK_CLKSOURCE_HCLK ((uint32_t)0x00000004)
mbed_official 235:685d5f11838f 85
mbed_official 235:685d5f11838f 86 /**
mbed_official 235:685d5f11838f 87 * @}
mbed_official 235:685d5f11838f 88 */
mbed_official 235:685d5f11838f 89
mbed_official 235:685d5f11838f 90 /**
mbed_official 235:685d5f11838f 91 * @}
mbed_official 235:685d5f11838f 92 */
mbed_official 235:685d5f11838f 93
mbed_official 532:fe11edbda85c 94
mbed_official 235:685d5f11838f 95 /* Exported Macros -----------------------------------------------------------*/
mbed_official 532:fe11edbda85c 96 /** @defgroup CORTEX_Exported_Macros CORTEX Exported Macros
mbed_official 532:fe11edbda85c 97 * @{
mbed_official 532:fe11edbda85c 98 */
mbed_official 235:685d5f11838f 99
mbed_official 235:685d5f11838f 100 /** @brief Configures the SysTick clock source.
mbed_official 235:685d5f11838f 101 * @param __CLKSRC__: specifies the SysTick clock source.
mbed_official 235:685d5f11838f 102 * This parameter can be one of the following values:
mbed_official 235:685d5f11838f 103 * @arg SYSTICK_CLKSOURCE_HCLK_DIV8: AHB clock divided by 8 selected as SysTick clock source.
mbed_official 235:685d5f11838f 104 * @arg SYSTICK_CLKSOURCE_HCLK: AHB clock selected as SysTick clock source.
mbed_official 235:685d5f11838f 105 * @retval None
mbed_official 235:685d5f11838f 106 */
mbed_official 235:685d5f11838f 107 #define __HAL_CORTEX_SYSTICKCLK_CONFIG(__CLKSRC__) \
mbed_official 235:685d5f11838f 108 do { \
mbed_official 235:685d5f11838f 109 if ((__CLKSRC__) == SYSTICK_CLKSOURCE_HCLK) \
mbed_official 235:685d5f11838f 110 { \
mbed_official 235:685d5f11838f 111 SysTick->CTRL |= SYSTICK_CLKSOURCE_HCLK; \
mbed_official 235:685d5f11838f 112 } \
mbed_official 235:685d5f11838f 113 else \
mbed_official 235:685d5f11838f 114 SysTick->CTRL &= ~SYSTICK_CLKSOURCE_HCLK; \
mbed_official 235:685d5f11838f 115 } while(0)
mbed_official 235:685d5f11838f 116 /**
mbed_official 235:685d5f11838f 117 * @}
mbed_official 235:685d5f11838f 118 */
mbed_official 235:685d5f11838f 119
mbed_official 235:685d5f11838f 120 /* Exported functions --------------------------------------------------------*/
mbed_official 532:fe11edbda85c 121 /** @addtogroup CORTEX_Exported_Functions
mbed_official 532:fe11edbda85c 122 * @{
mbed_official 532:fe11edbda85c 123 */
mbed_official 532:fe11edbda85c 124
mbed_official 532:fe11edbda85c 125 /** @addtogroup CORTEX_Exported_Functions_Group1
mbed_official 532:fe11edbda85c 126 * @{
mbed_official 532:fe11edbda85c 127 */
mbed_official 532:fe11edbda85c 128 /* Initialization and de-initialization functions *****************************/
mbed_official 235:685d5f11838f 129 void HAL_NVIC_SetPriorityGrouping(uint32_t PriorityGroup);
mbed_official 235:685d5f11838f 130 void HAL_NVIC_SetPriority(IRQn_Type IRQn, uint32_t PreemptPriority, uint32_t SubPriority);
mbed_official 235:685d5f11838f 131 void HAL_NVIC_EnableIRQ(IRQn_Type IRQn);
mbed_official 235:685d5f11838f 132 void HAL_NVIC_DisableIRQ(IRQn_Type IRQn);
mbed_official 235:685d5f11838f 133 void HAL_NVIC_SystemReset(void);
mbed_official 235:685d5f11838f 134 uint32_t HAL_SYSTICK_Config(uint32_t TicksNumb);
mbed_official 532:fe11edbda85c 135 /**
mbed_official 532:fe11edbda85c 136 * @}
mbed_official 532:fe11edbda85c 137 */
mbed_official 235:685d5f11838f 138
mbed_official 532:fe11edbda85c 139 /** @addtogroup CORTEX_Exported_Functions_Group2
mbed_official 532:fe11edbda85c 140 * @{
mbed_official 532:fe11edbda85c 141 */
mbed_official 532:fe11edbda85c 142 /* Peripheral Control functions ***********************************************/
mbed_official 235:685d5f11838f 143 uint32_t HAL_NVIC_GetPriorityGrouping(void);
mbed_official 235:685d5f11838f 144 void HAL_NVIC_GetPriority(IRQn_Type IRQn, uint32_t PriorityGroup, uint32_t* pPreemptPriority, uint32_t* pSubPriority);
mbed_official 235:685d5f11838f 145 uint32_t HAL_NVIC_GetPendingIRQ(IRQn_Type IRQn);
mbed_official 235:685d5f11838f 146 void HAL_NVIC_SetPendingIRQ(IRQn_Type IRQn);
mbed_official 235:685d5f11838f 147 void HAL_NVIC_ClearPendingIRQ(IRQn_Type IRQn);
mbed_official 235:685d5f11838f 148 uint32_t HAL_NVIC_GetActive(IRQn_Type IRQn);
mbed_official 235:685d5f11838f 149 void HAL_SYSTICK_CLKSourceConfig(uint32_t CLKSource);
mbed_official 235:685d5f11838f 150 void HAL_SYSTICK_IRQHandler(void);
mbed_official 235:685d5f11838f 151 void HAL_SYSTICK_Callback(void);
mbed_official 532:fe11edbda85c 152 /**
mbed_official 532:fe11edbda85c 153 * @}
mbed_official 532:fe11edbda85c 154 */
mbed_official 532:fe11edbda85c 155
mbed_official 532:fe11edbda85c 156 /**
mbed_official 532:fe11edbda85c 157 * @}
mbed_official 532:fe11edbda85c 158 */
mbed_official 532:fe11edbda85c 159
mbed_official 532:fe11edbda85c 160 /* Private types -------------------------------------------------------------*/
mbed_official 532:fe11edbda85c 161 /* Private variables ---------------------------------------------------------*/
mbed_official 532:fe11edbda85c 162 /* Private constants ---------------------------------------------------------*/
mbed_official 532:fe11edbda85c 163 /* Private macros ------------------------------------------------------------*/
mbed_official 532:fe11edbda85c 164 /** @defgroup CORTEX_Private_Macros CORTEX Private Macros
mbed_official 532:fe11edbda85c 165 * @{
mbed_official 532:fe11edbda85c 166 */
mbed_official 532:fe11edbda85c 167 #define IS_NVIC_PRIORITY_GROUP(GROUP) (((GROUP) == NVIC_PRIORITYGROUP_0) || \
mbed_official 532:fe11edbda85c 168 ((GROUP) == NVIC_PRIORITYGROUP_1) || \
mbed_official 532:fe11edbda85c 169 ((GROUP) == NVIC_PRIORITYGROUP_2) || \
mbed_official 532:fe11edbda85c 170 ((GROUP) == NVIC_PRIORITYGROUP_3) || \
mbed_official 532:fe11edbda85c 171 ((GROUP) == NVIC_PRIORITYGROUP_4))
mbed_official 532:fe11edbda85c 172
mbed_official 532:fe11edbda85c 173 #define IS_NVIC_PREEMPTION_PRIORITY(PRIORITY) ((PRIORITY) < 0x10)
mbed_official 532:fe11edbda85c 174
mbed_official 532:fe11edbda85c 175 #define IS_NVIC_SUB_PRIORITY(PRIORITY) ((PRIORITY) < 0x10)
mbed_official 532:fe11edbda85c 176
mbed_official 532:fe11edbda85c 177 #define IS_NVIC_DEVICE_IRQ(IRQ) ((IRQ) >= 0x00)
mbed_official 532:fe11edbda85c 178
mbed_official 532:fe11edbda85c 179 #define IS_SYSTICK_CLK_SOURCE(SOURCE) (((SOURCE) == SYSTICK_CLKSOURCE_HCLK) || \
mbed_official 532:fe11edbda85c 180 ((SOURCE) == SYSTICK_CLKSOURCE_HCLK_DIV8))
mbed_official 532:fe11edbda85c 181 /**
mbed_official 532:fe11edbda85c 182 * @}
mbed_official 532:fe11edbda85c 183 */
mbed_official 235:685d5f11838f 184
mbed_official 235:685d5f11838f 185 /**
mbed_official 235:685d5f11838f 186 * @}
mbed_official 235:685d5f11838f 187 */
mbed_official 235:685d5f11838f 188
mbed_official 235:685d5f11838f 189 /**
mbed_official 235:685d5f11838f 190 * @}
mbed_official 235:685d5f11838f 191 */
mbed_official 235:685d5f11838f 192
mbed_official 235:685d5f11838f 193 #ifdef __cplusplus
mbed_official 235:685d5f11838f 194 }
mbed_official 235:685d5f11838f 195 #endif
mbed_official 235:685d5f11838f 196
mbed_official 235:685d5f11838f 197 #endif /* __STM32F4xx_HAL_CORTEX_H */
mbed_official 235:685d5f11838f 198
mbed_official 235:685d5f11838f 199
mbed_official 235:685d5f11838f 200 /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/