ARM GAS /tmp/ccyARiVe.s page 1 1 .cpu cortex-m4 2 .eabi_attribute 27, 1 3 .eabi_attribute 28, 1 4 .eabi_attribute 20, 1 5 .eabi_attribute 21, 1 6 .eabi_attribute 23, 3 7 .eabi_attribute 24, 1 8 .eabi_attribute 25, 1 9 .eabi_attribute 26, 1 10 .eabi_attribute 30, 1 11 .eabi_attribute 34, 1 12 .eabi_attribute 18, 4 13 .file "stm32f4xx_hal.c" 14 .text 15 .Ltext0: 16 .cfi_sections .debug_frame 17 .section .text.HAL_MspInit,"ax",%progbits 18 .align 1 19 .weak HAL_MspInit 20 .syntax unified 21 .thumb 22 .thumb_func 23 .fpu fpv4-sp-d16 25 HAL_MspInit: 26 .LFB132: 27 .file 1 "Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c" 1:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** /** 2:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** ****************************************************************************** 3:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @file stm32f4xx_hal.c 4:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @author MCD Application Team 5:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @brief HAL module driver. 6:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * This is the common part of the HAL initialization 7:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * 8:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** @verbatim 9:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** ============================================================================== 10:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** ##### How to use this driver ##### 11:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** ============================================================================== 12:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** [..] 13:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** The common HAL driver contains a set of generic and common APIs that can be 14:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** used by the PPP peripheral drivers and the user to start using the HAL. 15:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** [..] 16:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** The HAL contains two APIs' categories: 17:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** (+) Common HAL APIs 18:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** (+) Services HAL APIs 19:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 20:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** @endverbatim 21:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** ****************************************************************************** 22:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @attention 23:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * 24:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** *

© Copyright (c) 2017 STMicroelectronics. 25:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * All rights reserved.

26:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * 27:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * This software component is licensed by ST under BSD 3-Clause license, 28:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * the "License"; You may not use this file except in compliance with the 29:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * License. You may obtain a copy of the License at: 30:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * opensource.org/licenses/BSD-3-Clause 31:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * ARM GAS /tmp/ccyARiVe.s page 2 32:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** ****************************************************************************** 33:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** */ 34:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 35:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** /* Includes ------------------------------------------------------------------*/ 36:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** #include "stm32f4xx_hal.h" 37:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 38:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** /** @addtogroup STM32F4xx_HAL_Driver 39:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @{ 40:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** */ 41:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 42:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** /** @defgroup HAL HAL 43:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @brief HAL module driver. 44:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @{ 45:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** */ 46:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 47:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** /* Private typedef -----------------------------------------------------------*/ 48:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** /* Private define ------------------------------------------------------------*/ 49:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** /** @addtogroup HAL_Private_Constants 50:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @{ 51:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** */ 52:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** /** 53:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @brief STM32F4xx HAL Driver version number V1.7.5 54:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** */ 55:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** #define __STM32F4xx_HAL_VERSION_MAIN (0x01U) /*!< [31:24] main version */ 56:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** #define __STM32F4xx_HAL_VERSION_SUB1 (0x07U) /*!< [23:16] sub1 version */ 57:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** #define __STM32F4xx_HAL_VERSION_SUB2 (0x05U) /*!< [15:8] sub2 version */ 58:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** #define __STM32F4xx_HAL_VERSION_RC (0x00U) /*!< [7:0] release candidate */ 59:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** #define __STM32F4xx_HAL_VERSION ((__STM32F4xx_HAL_VERSION_MAIN << 24U)\ 60:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** |(__STM32F4xx_HAL_VERSION_SUB1 << 16U)\ 61:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** |(__STM32F4xx_HAL_VERSION_SUB2 << 8U )\ 62:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** |(__STM32F4xx_HAL_VERSION_RC)) 63:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 64:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** #define IDCODE_DEVID_MASK 0x00000FFFU 65:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 66:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** /* ------------ RCC registers bit address in the alias region ----------- */ 67:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** #define SYSCFG_OFFSET (SYSCFG_BASE - PERIPH_BASE) 68:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** /* --- MEMRMP Register ---*/ 69:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** /* Alias word address of UFB_MODE bit */ 70:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** #define MEMRMP_OFFSET SYSCFG_OFFSET 71:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** #define UFB_MODE_BIT_NUMBER SYSCFG_MEMRMP_UFB_MODE_Pos 72:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** #define UFB_MODE_BB (uint32_t)(PERIPH_BB_BASE + (MEMRMP_OFFSET * 32U) + (UFB_MODE_BIT 73:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 74:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** /* --- CMPCR Register ---*/ 75:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** /* Alias word address of CMP_PD bit */ 76:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** #define CMPCR_OFFSET (SYSCFG_OFFSET + 0x20U) 77:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** #define CMP_PD_BIT_NUMBER SYSCFG_CMPCR_CMP_PD_Pos 78:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** #define CMPCR_CMP_PD_BB (uint32_t)(PERIPH_BB_BASE + (CMPCR_OFFSET * 32U) + (CMP_PD_BIT_NU 79:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 80:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** /* --- MCHDLYCR Register ---*/ 81:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** /* Alias word address of BSCKSEL bit */ 82:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** #define MCHDLYCR_OFFSET (SYSCFG_OFFSET + 0x30U) 83:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** #define BSCKSEL_BIT_NUMBER SYSCFG_MCHDLYCR_BSCKSEL_Pos 84:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** #define MCHDLYCR_BSCKSEL_BB (uint32_t)(PERIPH_BB_BASE + (MCHDLYCR_OFFSET * 32U) + (BSCKSEL_B 85:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** /** 86:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @} 87:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** */ 88:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** ARM GAS /tmp/ccyARiVe.s page 3 89:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** /* Private macro -------------------------------------------------------------*/ 90:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** /* Private variables ---------------------------------------------------------*/ 91:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** /** @addtogroup HAL_Private_Variables 92:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @{ 93:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** */ 94:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** __IO uint32_t uwTick; 95:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** uint32_t uwTickPrio = (1UL << __NVIC_PRIO_BITS); /* Invalid PRIO */ 96:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** HAL_TickFreqTypeDef uwTickFreq = HAL_TICK_FREQ_DEFAULT; /* 1KHz */ 97:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** /** 98:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @} 99:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** */ 100:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** /* Private function prototypes -----------------------------------------------*/ 101:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** /* Private functions ---------------------------------------------------------*/ 102:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 103:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** /** @defgroup HAL_Exported_Functions HAL Exported Functions 104:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @{ 105:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** */ 106:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 107:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** /** @defgroup HAL_Exported_Functions_Group1 Initialization and de-initialization Functions 108:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @brief Initialization and de-initialization functions 109:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * 110:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** @verbatim 111:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** =============================================================================== 112:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** ##### Initialization and Configuration functions ##### 113:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** =============================================================================== 114:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** [..] This section provides functions allowing to: 115:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** (+) Initializes the Flash interface the NVIC allocation and initial clock 116:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** configuration. It initializes the systick also when timeout is needed 117:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** and the backup domain when enabled. 118:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** (+) De-Initializes common part of the HAL. 119:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** (+) Configure the time base source to have 1ms time base with a dedicated 120:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** Tick interrupt priority. 121:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** (++) SysTick timer is used by default as source of time base, but user 122:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** can eventually implement his proper time base source (a general purpose 123:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** timer for example or other time source), keeping in mind that Time base 124:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** duration should be kept 1ms since PPP_TIMEOUT_VALUEs are defined and 125:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** handled in milliseconds basis. 126:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** (++) Time base configuration function (HAL_InitTick ()) is called automatically 127:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** at the beginning of the program after reset by HAL_Init() or at any time 128:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** when clock is configured, by HAL_RCC_ClockConfig(). 129:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** (++) Source of time base is configured to generate interrupts at regular 130:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** time intervals. Care must be taken if HAL_Delay() is called from a 131:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** peripheral ISR process, the Tick interrupt line must have higher priority 132:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** (numerically lower) than the peripheral interrupt. Otherwise the caller 133:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** ISR process will be blocked. 134:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** (++) functions affecting time base configurations are declared as __weak 135:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** to make override possible in case of other implementations in user file. 136:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** @endverbatim 137:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @{ 138:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** */ 139:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 140:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** /** 141:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @brief This function is used to initialize the HAL Library; it must be the first 142:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * instruction to be executed in the main program (before to call any other 143:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * HAL function), it performs the following: 144:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * Configure the Flash prefetch, instruction and Data caches. 145:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * Configures the SysTick to generate an interrupt each 1 millisecond, ARM GAS /tmp/ccyARiVe.s page 4 146:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * which is clocked by the HSI (at this stage, the clock is not yet 147:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * configured and thus the system is running from the internal HSI at 16 MHz). 148:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * Set NVIC Group Priority to 4. 149:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * Calls the HAL_MspInit() callback function defined in user file 150:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * "stm32f4xx_hal_msp.c" to do the global low level hardware initialization 151:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * 152:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @note SysTick is used as time base for the HAL_Delay() function, the application 153:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * need to ensure that the SysTick time base is always set to 1 millisecond 154:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * to have correct HAL operation. 155:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @retval HAL status 156:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** */ 157:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** HAL_StatusTypeDef HAL_Init(void) 158:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** { 159:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** /* Configure Flash prefetch, Instruction cache, Data cache */ 160:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** #if (INSTRUCTION_CACHE_ENABLE != 0U) 161:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** __HAL_FLASH_INSTRUCTION_CACHE_ENABLE(); 162:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** #endif /* INSTRUCTION_CACHE_ENABLE */ 163:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 164:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** #if (DATA_CACHE_ENABLE != 0U) 165:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** __HAL_FLASH_DATA_CACHE_ENABLE(); 166:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** #endif /* DATA_CACHE_ENABLE */ 167:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 168:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** #if (PREFETCH_ENABLE != 0U) 169:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** __HAL_FLASH_PREFETCH_BUFFER_ENABLE(); 170:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** #endif /* PREFETCH_ENABLE */ 171:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 172:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** /* Set Interrupt Group Priority */ 173:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** HAL_NVIC_SetPriorityGrouping(NVIC_PRIORITYGROUP_4); 174:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 175:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** /* Use systick as time base source and configure 1ms tick (default clock after Reset is HSI) */ 176:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** HAL_InitTick(TICK_INT_PRIORITY); 177:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 178:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** /* Init the low level hardware */ 179:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** HAL_MspInit(); 180:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 181:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** /* Return function status */ 182:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** return HAL_OK; 183:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** } 184:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 185:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** /** 186:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @brief This function de-Initializes common part of the HAL and stops the systick. 187:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * This function is optional. 188:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @retval HAL status 189:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** */ 190:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** HAL_StatusTypeDef HAL_DeInit(void) 191:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** { 192:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** /* Reset of all peripherals */ 193:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** __HAL_RCC_APB1_FORCE_RESET(); 194:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** __HAL_RCC_APB1_RELEASE_RESET(); 195:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 196:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** __HAL_RCC_APB2_FORCE_RESET(); 197:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** __HAL_RCC_APB2_RELEASE_RESET(); 198:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 199:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** __HAL_RCC_AHB1_FORCE_RESET(); 200:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** __HAL_RCC_AHB1_RELEASE_RESET(); 201:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 202:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** __HAL_RCC_AHB2_FORCE_RESET(); ARM GAS /tmp/ccyARiVe.s page 5 203:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** __HAL_RCC_AHB2_RELEASE_RESET(); 204:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 205:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** __HAL_RCC_AHB3_FORCE_RESET(); 206:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** __HAL_RCC_AHB3_RELEASE_RESET(); 207:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 208:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** /* De-Init the low level hardware */ 209:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** HAL_MspDeInit(); 210:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 211:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** /* Return function status */ 212:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** return HAL_OK; 213:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** } 214:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 215:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** /** 216:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @brief Initialize the MSP. 217:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @retval None 218:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** */ 219:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** __weak void HAL_MspInit(void) 220:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** { 28 .loc 1 220 0 29 .cfi_startproc 30 @ args = 0, pretend = 0, frame = 0 31 @ frame_needed = 0, uses_anonymous_args = 0 32 @ link register save eliminated. 33 0000 7047 bx lr 34 .cfi_endproc 35 .LFE132: 37 .section .text.HAL_MspDeInit,"ax",%progbits 38 .align 1 39 .weak HAL_MspDeInit 40 .syntax unified 41 .thumb 42 .thumb_func 43 .fpu fpv4-sp-d16 45 HAL_MspDeInit: 46 .LFB133: 221:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** /* NOTE : This function should not be modified, when the callback is needed, 222:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** the HAL_MspInit could be implemented in the user file 223:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** */ 224:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** } 225:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 226:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** /** 227:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @brief DeInitializes the MSP. 228:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @retval None 229:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** */ 230:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** __weak void HAL_MspDeInit(void) 231:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** { 47 .loc 1 231 0 48 .cfi_startproc 49 @ args = 0, pretend = 0, frame = 0 50 @ frame_needed = 0, uses_anonymous_args = 0 51 @ link register save eliminated. 52 0000 7047 bx lr 53 .cfi_endproc 54 .LFE133: 56 .section .text.HAL_DeInit,"ax",%progbits 57 .align 1 58 .global HAL_DeInit ARM GAS /tmp/ccyARiVe.s page 6 59 .syntax unified 60 .thumb 61 .thumb_func 62 .fpu fpv4-sp-d16 64 HAL_DeInit: 65 .LFB131: 191:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** /* Reset of all peripherals */ 66 .loc 1 191 0 67 .cfi_startproc 68 @ args = 0, pretend = 0, frame = 0 69 @ frame_needed = 0, uses_anonymous_args = 0 191:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** /* Reset of all peripherals */ 70 .loc 1 191 0 71 0000 10B5 push {r4, lr} 72 .LCFI0: 73 .cfi_def_cfa_offset 8 74 .cfi_offset 4, -8 75 .cfi_offset 14, -4 193:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** __HAL_RCC_APB1_RELEASE_RESET(); 76 .loc 1 193 0 77 0002 094B ldr r3, .L5 78 0004 4FF0FF32 mov r2, #-1 79 0008 1A62 str r2, [r3, #32] 194:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 80 .loc 1 194 0 81 000a 0024 movs r4, #0 82 000c 1C62 str r4, [r3, #32] 196:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** __HAL_RCC_APB2_RELEASE_RESET(); 83 .loc 1 196 0 84 000e 5A62 str r2, [r3, #36] 197:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 85 .loc 1 197 0 86 0010 5C62 str r4, [r3, #36] 199:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** __HAL_RCC_AHB1_RELEASE_RESET(); 87 .loc 1 199 0 88 0012 1A61 str r2, [r3, #16] 200:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 89 .loc 1 200 0 90 0014 1C61 str r4, [r3, #16] 202:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** __HAL_RCC_AHB2_RELEASE_RESET(); 91 .loc 1 202 0 92 0016 5A61 str r2, [r3, #20] 203:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 93 .loc 1 203 0 94 0018 5C61 str r4, [r3, #20] 205:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** __HAL_RCC_AHB3_RELEASE_RESET(); 95 .loc 1 205 0 96 001a 9A61 str r2, [r3, #24] 206:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 97 .loc 1 206 0 98 001c 9C61 str r4, [r3, #24] 209:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 99 .loc 1 209 0 100 001e FFF7FEFF bl HAL_MspDeInit 101 .LVL0: 213:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 102 .loc 1 213 0 ARM GAS /tmp/ccyARiVe.s page 7 103 0022 2046 mov r0, r4 104 0024 10BD pop {r4, pc} 105 .L6: 106 0026 00BF .align 2 107 .L5: 108 0028 00380240 .word 1073887232 109 .cfi_endproc 110 .LFE131: 112 .section .text.HAL_InitTick,"ax",%progbits 113 .align 1 114 .weak HAL_InitTick 115 .syntax unified 116 .thumb 117 .thumb_func 118 .fpu fpv4-sp-d16 120 HAL_InitTick: 121 .LFB134: 232:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** /* NOTE : This function should not be modified, when the callback is needed, 233:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** the HAL_MspDeInit could be implemented in the user file 234:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** */ 235:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** } 236:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 237:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** /** 238:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @brief This function configures the source of the time base. 239:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * The time source is configured to have 1ms time base with a dedicated 240:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * Tick interrupt priority. 241:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @note This function is called automatically at the beginning of program after 242:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * reset by HAL_Init() or at any time when clock is reconfigured by HAL_RCC_ClockConfig(). 243:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @note In the default implementation, SysTick timer is the source of time base. 244:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * It is used to generate interrupts at regular time intervals. 245:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * Care must be taken if HAL_Delay() is called from a peripheral ISR process, 246:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * The SysTick interrupt must have higher priority (numerically lower) 247:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * than the peripheral interrupt. Otherwise the caller ISR process will be blocked. 248:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * The function is declared as __weak to be overwritten in case of other 249:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * implementation in user file. 250:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @param TickPriority Tick interrupt priority. 251:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @retval HAL status 252:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** */ 253:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** __weak HAL_StatusTypeDef HAL_InitTick(uint32_t TickPriority) 254:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** { 122 .loc 1 254 0 123 .cfi_startproc 124 @ args = 0, pretend = 0, frame = 0 125 @ frame_needed = 0, uses_anonymous_args = 0 126 .LVL1: 127 0000 10B5 push {r4, lr} 128 .LCFI1: 129 .cfi_def_cfa_offset 8 130 .cfi_offset 4, -8 131 .cfi_offset 14, -4 132 0002 0446 mov r4, r0 255:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** /* Configure the SysTick to have interrupt in 1ms time basis*/ 256:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** if (HAL_SYSTICK_Config(SystemCoreClock / (1000U / uwTickFreq)) > 0U) 133 .loc 1 256 0 134 0004 0E4B ldr r3, .L13 135 0006 1878 ldrb r0, [r3] @ zero_extendqisi2 136 .LVL2: ARM GAS /tmp/ccyARiVe.s page 8 137 0008 4FF47A73 mov r3, #1000 138 000c B3FBF0F3 udiv r3, r3, r0 139 0010 0C4A ldr r2, .L13+4 140 0012 1068 ldr r0, [r2] 141 0014 B0FBF3F0 udiv r0, r0, r3 142 0018 FFF7FEFF bl HAL_SYSTICK_Config 143 .LVL3: 144 001c 68B9 cbnz r0, .L9 257:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** { 258:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** return HAL_ERROR; 259:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** } 260:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 261:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** /* Configure the SysTick IRQ priority */ 262:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** if (TickPriority < (1UL << __NVIC_PRIO_BITS)) 145 .loc 1 262 0 146 001e 0F2C cmp r4, #15 147 0020 01D9 bls .L12 263:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** { 264:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** HAL_NVIC_SetPriority(SysTick_IRQn, TickPriority, 0U); 265:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** uwTickPrio = TickPriority; 266:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** } 267:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** else 268:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** { 269:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** return HAL_ERROR; 148 .loc 1 269 0 149 0022 0120 movs r0, #1 270:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** } 271:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 272:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** /* Return function status */ 273:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** return HAL_OK; 274:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** } 150 .loc 1 274 0 151 0024 10BD pop {r4, pc} 152 .LVL4: 153 .L12: 264:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** uwTickPrio = TickPriority; 154 .loc 1 264 0 155 0026 0022 movs r2, #0 156 0028 2146 mov r1, r4 157 002a 4FF0FF30 mov r0, #-1 158 002e FFF7FEFF bl HAL_NVIC_SetPriority 159 .LVL5: 265:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** } 160 .loc 1 265 0 161 0032 054B ldr r3, .L13+8 162 0034 1C60 str r4, [r3] 273:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** } 163 .loc 1 273 0 164 0036 0020 movs r0, #0 165 0038 10BD pop {r4, pc} 166 .LVL6: 167 .L9: 258:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** } 168 .loc 1 258 0 169 003a 0120 movs r0, #1 170 003c 10BD pop {r4, pc} 171 .LVL7: ARM GAS /tmp/ccyARiVe.s page 9 172 .L14: 173 003e 00BF .align 2 174 .L13: 175 0040 00000000 .word .LANCHOR0 176 0044 00000000 .word SystemCoreClock 177 0048 00000000 .word .LANCHOR1 178 .cfi_endproc 179 .LFE134: 181 .section .text.HAL_Init,"ax",%progbits 182 .align 1 183 .global HAL_Init 184 .syntax unified 185 .thumb 186 .thumb_func 187 .fpu fpv4-sp-d16 189 HAL_Init: 190 .LFB130: 158:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** /* Configure Flash prefetch, Instruction cache, Data cache */ 191 .loc 1 158 0 192 .cfi_startproc 193 @ args = 0, pretend = 0, frame = 0 194 @ frame_needed = 0, uses_anonymous_args = 0 195 0000 08B5 push {r3, lr} 196 .LCFI2: 197 .cfi_def_cfa_offset 8 198 .cfi_offset 3, -8 199 .cfi_offset 14, -4 161:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** #endif /* INSTRUCTION_CACHE_ENABLE */ 200 .loc 1 161 0 201 0002 0B4B ldr r3, .L17 202 0004 1A68 ldr r2, [r3] 203 0006 42F40072 orr r2, r2, #512 204 000a 1A60 str r2, [r3] 165:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** #endif /* DATA_CACHE_ENABLE */ 205 .loc 1 165 0 206 000c 1A68 ldr r2, [r3] 207 000e 42F48062 orr r2, r2, #1024 208 0012 1A60 str r2, [r3] 169:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** #endif /* PREFETCH_ENABLE */ 209 .loc 1 169 0 210 0014 1A68 ldr r2, [r3] 211 0016 42F48072 orr r2, r2, #256 212 001a 1A60 str r2, [r3] 173:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 213 .loc 1 173 0 214 001c 0320 movs r0, #3 215 001e FFF7FEFF bl HAL_NVIC_SetPriorityGrouping 216 .LVL8: 176:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 217 .loc 1 176 0 218 0022 0020 movs r0, #0 219 0024 FFF7FEFF bl HAL_InitTick 220 .LVL9: 179:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 221 .loc 1 179 0 222 0028 FFF7FEFF bl HAL_MspInit 223 .LVL10: ARM GAS /tmp/ccyARiVe.s page 10 183:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 224 .loc 1 183 0 225 002c 0020 movs r0, #0 226 002e 08BD pop {r3, pc} 227 .L18: 228 .align 2 229 .L17: 230 0030 003C0240 .word 1073888256 231 .cfi_endproc 232 .LFE130: 234 .section .text.HAL_IncTick,"ax",%progbits 235 .align 1 236 .weak HAL_IncTick 237 .syntax unified 238 .thumb 239 .thumb_func 240 .fpu fpv4-sp-d16 242 HAL_IncTick: 243 .LFB135: 275:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 276:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** /** 277:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @} 278:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** */ 279:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 280:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** /** @defgroup HAL_Exported_Functions_Group2 HAL Control functions 281:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @brief HAL Control functions 282:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * 283:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** @verbatim 284:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** =============================================================================== 285:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** ##### HAL Control functions ##### 286:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** =============================================================================== 287:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** [..] This section provides functions allowing to: 288:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** (+) Provide a tick value in millisecond 289:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** (+) Provide a blocking delay in millisecond 290:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** (+) Suspend the time base source interrupt 291:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** (+) Resume the time base source interrupt 292:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** (+) Get the HAL API driver version 293:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** (+) Get the device identifier 294:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** (+) Get the device revision identifier 295:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** (+) Enable/Disable Debug module during SLEEP mode 296:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** (+) Enable/Disable Debug module during STOP mode 297:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** (+) Enable/Disable Debug module during STANDBY mode 298:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 299:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** @endverbatim 300:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @{ 301:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** */ 302:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 303:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** /** 304:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @brief This function is called to increment a global variable "uwTick" 305:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * used as application time base. 306:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @note In the default implementation, this variable is incremented each 1ms 307:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * in SysTick ISR. 308:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @note This function is declared as __weak to be overwritten in case of other 309:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * implementations in user file. 310:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @retval None 311:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** */ 312:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** __weak void HAL_IncTick(void) ARM GAS /tmp/ccyARiVe.s page 11 313:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** { 244 .loc 1 313 0 245 .cfi_startproc 246 @ args = 0, pretend = 0, frame = 0 247 @ frame_needed = 0, uses_anonymous_args = 0 248 @ link register save eliminated. 314:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** uwTick += uwTickFreq; 249 .loc 1 314 0 250 0000 034A ldr r2, .L20 251 0002 1168 ldr r1, [r2] 252 0004 034B ldr r3, .L20+4 253 0006 1B78 ldrb r3, [r3] @ zero_extendqisi2 254 0008 0B44 add r3, r3, r1 255 000a 1360 str r3, [r2] 256 000c 7047 bx lr 257 .L21: 258 000e 00BF .align 2 259 .L20: 260 0010 00000000 .word uwTick 261 0014 00000000 .word .LANCHOR0 262 .cfi_endproc 263 .LFE135: 265 .section .text.HAL_GetTick,"ax",%progbits 266 .align 1 267 .weak HAL_GetTick 268 .syntax unified 269 .thumb 270 .thumb_func 271 .fpu fpv4-sp-d16 273 HAL_GetTick: 274 .LFB136: 315:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** } 316:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 317:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** /** 318:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @brief Provides a tick value in millisecond. 319:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @note This function is declared as __weak to be overwritten in case of other 320:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * implementations in user file. 321:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @retval tick value 322:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** */ 323:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** __weak uint32_t HAL_GetTick(void) 324:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** { 275 .loc 1 324 0 276 .cfi_startproc 277 @ args = 0, pretend = 0, frame = 0 278 @ frame_needed = 0, uses_anonymous_args = 0 279 @ link register save eliminated. 325:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** return uwTick; 280 .loc 1 325 0 281 0000 014B ldr r3, .L23 282 0002 1868 ldr r0, [r3] 326:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** } 283 .loc 1 326 0 284 0004 7047 bx lr 285 .L24: 286 0006 00BF .align 2 287 .L23: 288 0008 00000000 .word uwTick ARM GAS /tmp/ccyARiVe.s page 12 289 .cfi_endproc 290 .LFE136: 292 .section .text.HAL_GetTickPrio,"ax",%progbits 293 .align 1 294 .global HAL_GetTickPrio 295 .syntax unified 296 .thumb 297 .thumb_func 298 .fpu fpv4-sp-d16 300 HAL_GetTickPrio: 301 .LFB137: 327:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 328:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** /** 329:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @brief This function returns a tick priority. 330:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @retval tick priority 331:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** */ 332:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** uint32_t HAL_GetTickPrio(void) 333:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** { 302 .loc 1 333 0 303 .cfi_startproc 304 @ args = 0, pretend = 0, frame = 0 305 @ frame_needed = 0, uses_anonymous_args = 0 306 @ link register save eliminated. 334:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** return uwTickPrio; 335:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** } 307 .loc 1 335 0 308 0000 014B ldr r3, .L26 309 0002 1868 ldr r0, [r3] 310 0004 7047 bx lr 311 .L27: 312 0006 00BF .align 2 313 .L26: 314 0008 00000000 .word .LANCHOR1 315 .cfi_endproc 316 .LFE137: 318 .section .text.HAL_SetTickFreq,"ax",%progbits 319 .align 1 320 .global HAL_SetTickFreq 321 .syntax unified 322 .thumb 323 .thumb_func 324 .fpu fpv4-sp-d16 326 HAL_SetTickFreq: 327 .LFB138: 336:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 337:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** /** 338:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @brief Set new tick Freq. 339:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @retval Status 340:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** */ 341:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** HAL_StatusTypeDef HAL_SetTickFreq(HAL_TickFreqTypeDef Freq) 342:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** { 328 .loc 1 342 0 329 .cfi_startproc 330 @ args = 0, pretend = 0, frame = 0 331 @ frame_needed = 0, uses_anonymous_args = 0 332 .LVL11: 333 0000 08B5 push {r3, lr} ARM GAS /tmp/ccyARiVe.s page 13 334 .LCFI3: 335 .cfi_def_cfa_offset 8 336 .cfi_offset 3, -8 337 .cfi_offset 14, -4 338 .LVL12: 343:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** HAL_StatusTypeDef status = HAL_OK; 344:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** assert_param(IS_TICKFREQ(Freq)); 345:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 346:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** if (uwTickFreq != Freq) 339 .loc 1 346 0 340 0002 064B ldr r3, .L32 341 0004 1B78 ldrb r3, [r3] @ zero_extendqisi2 342 0006 8342 cmp r3, r0 343 0008 06D0 beq .L30 347:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** { 348:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** uwTickFreq = Freq; 344 .loc 1 348 0 345 000a 044B ldr r3, .L32 346 000c 1870 strb r0, [r3] 349:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 350:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** /* Apply the new tick Freq */ 351:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** status = HAL_InitTick(uwTickPrio); 347 .loc 1 351 0 348 000e 044B ldr r3, .L32+4 349 0010 1868 ldr r0, [r3] 350 .LVL13: 351 0012 FFF7FEFF bl HAL_InitTick 352 .LVL14: 353 0016 08BD pop {r3, pc} 354 .LVL15: 355 .L30: 343:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** assert_param(IS_TICKFREQ(Freq)); 356 .loc 1 343 0 357 0018 0020 movs r0, #0 358 .LVL16: 352:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** } 353:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 354:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** return status; 355:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** } 359 .loc 1 355 0 360 001a 08BD pop {r3, pc} 361 .L33: 362 .align 2 363 .L32: 364 001c 00000000 .word .LANCHOR0 365 0020 00000000 .word .LANCHOR1 366 .cfi_endproc 367 .LFE138: 369 .section .text.HAL_GetTickFreq,"ax",%progbits 370 .align 1 371 .global HAL_GetTickFreq 372 .syntax unified 373 .thumb 374 .thumb_func 375 .fpu fpv4-sp-d16 377 HAL_GetTickFreq: 378 .LFB139: ARM GAS /tmp/ccyARiVe.s page 14 356:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 357:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** /** 358:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @brief Return tick frequency. 359:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @retval tick period in Hz 360:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** */ 361:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** HAL_TickFreqTypeDef HAL_GetTickFreq(void) 362:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** { 379 .loc 1 362 0 380 .cfi_startproc 381 @ args = 0, pretend = 0, frame = 0 382 @ frame_needed = 0, uses_anonymous_args = 0 383 @ link register save eliminated. 363:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** return uwTickFreq; 364:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** } 384 .loc 1 364 0 385 0000 014B ldr r3, .L35 386 0002 1878 ldrb r0, [r3] @ zero_extendqisi2 387 0004 7047 bx lr 388 .L36: 389 0006 00BF .align 2 390 .L35: 391 0008 00000000 .word .LANCHOR0 392 .cfi_endproc 393 .LFE139: 395 .section .text.HAL_Delay,"ax",%progbits 396 .align 1 397 .weak HAL_Delay 398 .syntax unified 399 .thumb 400 .thumb_func 401 .fpu fpv4-sp-d16 403 HAL_Delay: 404 .LFB140: 365:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 366:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** /** 367:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @brief This function provides minimum delay (in milliseconds) based 368:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * on variable incremented. 369:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @note In the default implementation , SysTick timer is the source of time base. 370:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * It is used to generate interrupts at regular time intervals where uwTick 371:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * is incremented. 372:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @note This function is declared as __weak to be overwritten in case of other 373:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * implementations in user file. 374:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @param Delay specifies the delay time length, in milliseconds. 375:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @retval None 376:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** */ 377:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** __weak void HAL_Delay(uint32_t Delay) 378:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** { 405 .loc 1 378 0 406 .cfi_startproc 407 @ args = 0, pretend = 0, frame = 0 408 @ frame_needed = 0, uses_anonymous_args = 0 409 .LVL17: 410 0000 38B5 push {r3, r4, r5, lr} 411 .LCFI4: 412 .cfi_def_cfa_offset 16 413 .cfi_offset 3, -16 414 .cfi_offset 4, -12 ARM GAS /tmp/ccyARiVe.s page 15 415 .cfi_offset 5, -8 416 .cfi_offset 14, -4 417 0002 0446 mov r4, r0 379:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** uint32_t tickstart = HAL_GetTick(); 418 .loc 1 379 0 419 0004 FFF7FEFF bl HAL_GetTick 420 .LVL18: 421 0008 0546 mov r5, r0 422 .LVL19: 380:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** uint32_t wait = Delay; 381:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 382:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** /* Add a freq to guarantee minimum wait */ 383:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** if (wait < HAL_MAX_DELAY) 423 .loc 1 383 0 424 000a B4F1FF3F cmp r4, #-1 425 000e 02D0 beq .L39 384:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** { 385:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** wait += (uint32_t)(uwTickFreq); 426 .loc 1 385 0 427 0010 044B ldr r3, .L41 428 0012 1B78 ldrb r3, [r3] @ zero_extendqisi2 429 0014 1C44 add r4, r4, r3 430 .LVL20: 431 .L39: 386:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** } 387:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 388:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** while((HAL_GetTick() - tickstart) < wait) 432 .loc 1 388 0 discriminator 1 433 0016 FFF7FEFF bl HAL_GetTick 434 .LVL21: 435 001a 401B subs r0, r0, r5 436 001c 8442 cmp r4, r0 437 001e FAD8 bhi .L39 389:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** { 390:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** } 391:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** } 438 .loc 1 391 0 439 0020 38BD pop {r3, r4, r5, pc} 440 .LVL22: 441 .L42: 442 0022 00BF .align 2 443 .L41: 444 0024 00000000 .word .LANCHOR0 445 .cfi_endproc 446 .LFE140: 448 .section .text.HAL_SuspendTick,"ax",%progbits 449 .align 1 450 .weak HAL_SuspendTick 451 .syntax unified 452 .thumb 453 .thumb_func 454 .fpu fpv4-sp-d16 456 HAL_SuspendTick: 457 .LFB141: 392:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 393:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** /** 394:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @brief Suspend Tick increment. ARM GAS /tmp/ccyARiVe.s page 16 395:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @note In the default implementation , SysTick timer is the source of time base. It is 396:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * used to generate interrupts at regular time intervals. Once HAL_SuspendTick() 397:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * is called, the SysTick interrupt will be disabled and so Tick increment 398:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * is suspended. 399:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @note This function is declared as __weak to be overwritten in case of other 400:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * implementations in user file. 401:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @retval None 402:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** */ 403:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** __weak void HAL_SuspendTick(void) 404:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** { 458 .loc 1 404 0 459 .cfi_startproc 460 @ args = 0, pretend = 0, frame = 0 461 @ frame_needed = 0, uses_anonymous_args = 0 462 @ link register save eliminated. 405:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** /* Disable SysTick Interrupt */ 406:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** SysTick->CTRL &= ~SysTick_CTRL_TICKINT_Msk; 463 .loc 1 406 0 464 0000 024A ldr r2, .L44 465 0002 1368 ldr r3, [r2] 466 0004 23F00203 bic r3, r3, #2 467 0008 1360 str r3, [r2] 468 000a 7047 bx lr 469 .L45: 470 .align 2 471 .L44: 472 000c 10E000E0 .word -536813552 473 .cfi_endproc 474 .LFE141: 476 .section .text.HAL_ResumeTick,"ax",%progbits 477 .align 1 478 .weak HAL_ResumeTick 479 .syntax unified 480 .thumb 481 .thumb_func 482 .fpu fpv4-sp-d16 484 HAL_ResumeTick: 485 .LFB142: 407:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** } 408:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 409:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** /** 410:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @brief Resume Tick increment. 411:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @note In the default implementation , SysTick timer is the source of time base. It is 412:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * used to generate interrupts at regular time intervals. Once HAL_ResumeTick() 413:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * is called, the SysTick interrupt will be enabled and so Tick increment 414:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * is resumed. 415:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @note This function is declared as __weak to be overwritten in case of other 416:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * implementations in user file. 417:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @retval None 418:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** */ 419:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** __weak void HAL_ResumeTick(void) 420:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** { 486 .loc 1 420 0 487 .cfi_startproc 488 @ args = 0, pretend = 0, frame = 0 489 @ frame_needed = 0, uses_anonymous_args = 0 490 @ link register save eliminated. ARM GAS /tmp/ccyARiVe.s page 17 421:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** /* Enable SysTick Interrupt */ 422:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** SysTick->CTRL |= SysTick_CTRL_TICKINT_Msk; 491 .loc 1 422 0 492 0000 024A ldr r2, .L47 493 0002 1368 ldr r3, [r2] 494 0004 43F00203 orr r3, r3, #2 495 0008 1360 str r3, [r2] 496 000a 7047 bx lr 497 .L48: 498 .align 2 499 .L47: 500 000c 10E000E0 .word -536813552 501 .cfi_endproc 502 .LFE142: 504 .section .text.HAL_GetHalVersion,"ax",%progbits 505 .align 1 506 .global HAL_GetHalVersion 507 .syntax unified 508 .thumb 509 .thumb_func 510 .fpu fpv4-sp-d16 512 HAL_GetHalVersion: 513 .LFB143: 423:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** } 424:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 425:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** /** 426:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @brief Returns the HAL revision 427:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @retval version : 0xXYZR (8bits for each decimal, R for RC) 428:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** */ 429:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** uint32_t HAL_GetHalVersion(void) 430:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** { 514 .loc 1 430 0 515 .cfi_startproc 516 @ args = 0, pretend = 0, frame = 0 517 @ frame_needed = 0, uses_anonymous_args = 0 518 @ link register save eliminated. 431:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** return __STM32F4xx_HAL_VERSION; 432:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** } 519 .loc 1 432 0 520 0000 0048 ldr r0, .L50 521 0002 7047 bx lr 522 .L51: 523 .align 2 524 .L50: 525 0004 00050701 .word 17237248 526 .cfi_endproc 527 .LFE143: 529 .section .text.HAL_GetREVID,"ax",%progbits 530 .align 1 531 .global HAL_GetREVID 532 .syntax unified 533 .thumb 534 .thumb_func 535 .fpu fpv4-sp-d16 537 HAL_GetREVID: 538 .LFB144: 433:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** ARM GAS /tmp/ccyARiVe.s page 18 434:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** /** 435:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @brief Returns the device revision identifier. 436:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @retval Device revision identifier 437:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** */ 438:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** uint32_t HAL_GetREVID(void) 439:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** { 539 .loc 1 439 0 540 .cfi_startproc 541 @ args = 0, pretend = 0, frame = 0 542 @ frame_needed = 0, uses_anonymous_args = 0 543 @ link register save eliminated. 440:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** return((DBGMCU->IDCODE) >> 16U); 544 .loc 1 440 0 545 0000 014B ldr r3, .L53 546 0002 1868 ldr r0, [r3] 441:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** } 547 .loc 1 441 0 548 0004 000C lsrs r0, r0, #16 549 0006 7047 bx lr 550 .L54: 551 .align 2 552 .L53: 553 0008 002004E0 .word -536600576 554 .cfi_endproc 555 .LFE144: 557 .section .text.HAL_GetDEVID,"ax",%progbits 558 .align 1 559 .global HAL_GetDEVID 560 .syntax unified 561 .thumb 562 .thumb_func 563 .fpu fpv4-sp-d16 565 HAL_GetDEVID: 566 .LFB145: 442:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 443:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** /** 444:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @brief Returns the device identifier. 445:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @retval Device identifier 446:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** */ 447:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** uint32_t HAL_GetDEVID(void) 448:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** { 567 .loc 1 448 0 568 .cfi_startproc 569 @ args = 0, pretend = 0, frame = 0 570 @ frame_needed = 0, uses_anonymous_args = 0 571 @ link register save eliminated. 449:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** return((DBGMCU->IDCODE) & IDCODE_DEVID_MASK); 572 .loc 1 449 0 573 0000 024B ldr r3, .L56 574 0002 1868 ldr r0, [r3] 450:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** } 575 .loc 1 450 0 576 0004 C0F30B00 ubfx r0, r0, #0, #12 577 0008 7047 bx lr 578 .L57: 579 000a 00BF .align 2 580 .L56: ARM GAS /tmp/ccyARiVe.s page 19 581 000c 002004E0 .word -536600576 582 .cfi_endproc 583 .LFE145: 585 .section .text.HAL_DBGMCU_EnableDBGSleepMode,"ax",%progbits 586 .align 1 587 .global HAL_DBGMCU_EnableDBGSleepMode 588 .syntax unified 589 .thumb 590 .thumb_func 591 .fpu fpv4-sp-d16 593 HAL_DBGMCU_EnableDBGSleepMode: 594 .LFB146: 451:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 452:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** /** 453:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @brief Enable the Debug Module during SLEEP mode 454:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @retval None 455:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** */ 456:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** void HAL_DBGMCU_EnableDBGSleepMode(void) 457:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** { 595 .loc 1 457 0 596 .cfi_startproc 597 @ args = 0, pretend = 0, frame = 0 598 @ frame_needed = 0, uses_anonymous_args = 0 599 @ link register save eliminated. 458:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_SLEEP); 600 .loc 1 458 0 601 0000 024A ldr r2, .L59 602 0002 5368 ldr r3, [r2, #4] 603 0004 43F00103 orr r3, r3, #1 604 0008 5360 str r3, [r2, #4] 605 000a 7047 bx lr 606 .L60: 607 .align 2 608 .L59: 609 000c 002004E0 .word -536600576 610 .cfi_endproc 611 .LFE146: 613 .section .text.HAL_DBGMCU_DisableDBGSleepMode,"ax",%progbits 614 .align 1 615 .global HAL_DBGMCU_DisableDBGSleepMode 616 .syntax unified 617 .thumb 618 .thumb_func 619 .fpu fpv4-sp-d16 621 HAL_DBGMCU_DisableDBGSleepMode: 622 .LFB147: 459:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** } 460:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 461:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** /** 462:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @brief Disable the Debug Module during SLEEP mode 463:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @retval None 464:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** */ 465:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** void HAL_DBGMCU_DisableDBGSleepMode(void) 466:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** { 623 .loc 1 466 0 624 .cfi_startproc 625 @ args = 0, pretend = 0, frame = 0 ARM GAS /tmp/ccyARiVe.s page 20 626 @ frame_needed = 0, uses_anonymous_args = 0 627 @ link register save eliminated. 467:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_SLEEP); 628 .loc 1 467 0 629 0000 024A ldr r2, .L62 630 0002 5368 ldr r3, [r2, #4] 631 0004 23F00103 bic r3, r3, #1 632 0008 5360 str r3, [r2, #4] 633 000a 7047 bx lr 634 .L63: 635 .align 2 636 .L62: 637 000c 002004E0 .word -536600576 638 .cfi_endproc 639 .LFE147: 641 .section .text.HAL_DBGMCU_EnableDBGStopMode,"ax",%progbits 642 .align 1 643 .global HAL_DBGMCU_EnableDBGStopMode 644 .syntax unified 645 .thumb 646 .thumb_func 647 .fpu fpv4-sp-d16 649 HAL_DBGMCU_EnableDBGStopMode: 650 .LFB148: 468:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** } 469:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 470:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** /** 471:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @brief Enable the Debug Module during STOP mode 472:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @retval None 473:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** */ 474:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** void HAL_DBGMCU_EnableDBGStopMode(void) 475:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** { 651 .loc 1 475 0 652 .cfi_startproc 653 @ args = 0, pretend = 0, frame = 0 654 @ frame_needed = 0, uses_anonymous_args = 0 655 @ link register save eliminated. 476:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_STOP); 656 .loc 1 476 0 657 0000 024A ldr r2, .L65 658 0002 5368 ldr r3, [r2, #4] 659 0004 43F00203 orr r3, r3, #2 660 0008 5360 str r3, [r2, #4] 661 000a 7047 bx lr 662 .L66: 663 .align 2 664 .L65: 665 000c 002004E0 .word -536600576 666 .cfi_endproc 667 .LFE148: 669 .section .text.HAL_DBGMCU_DisableDBGStopMode,"ax",%progbits 670 .align 1 671 .global HAL_DBGMCU_DisableDBGStopMode 672 .syntax unified 673 .thumb 674 .thumb_func 675 .fpu fpv4-sp-d16 ARM GAS /tmp/ccyARiVe.s page 21 677 HAL_DBGMCU_DisableDBGStopMode: 678 .LFB149: 477:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** } 478:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 479:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** /** 480:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @brief Disable the Debug Module during STOP mode 481:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @retval None 482:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** */ 483:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** void HAL_DBGMCU_DisableDBGStopMode(void) 484:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** { 679 .loc 1 484 0 680 .cfi_startproc 681 @ args = 0, pretend = 0, frame = 0 682 @ frame_needed = 0, uses_anonymous_args = 0 683 @ link register save eliminated. 485:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_STOP); 684 .loc 1 485 0 685 0000 024A ldr r2, .L68 686 0002 5368 ldr r3, [r2, #4] 687 0004 23F00203 bic r3, r3, #2 688 0008 5360 str r3, [r2, #4] 689 000a 7047 bx lr 690 .L69: 691 .align 2 692 .L68: 693 000c 002004E0 .word -536600576 694 .cfi_endproc 695 .LFE149: 697 .section .text.HAL_DBGMCU_EnableDBGStandbyMode,"ax",%progbits 698 .align 1 699 .global HAL_DBGMCU_EnableDBGStandbyMode 700 .syntax unified 701 .thumb 702 .thumb_func 703 .fpu fpv4-sp-d16 705 HAL_DBGMCU_EnableDBGStandbyMode: 706 .LFB150: 486:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** } 487:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 488:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** /** 489:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @brief Enable the Debug Module during STANDBY mode 490:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @retval None 491:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** */ 492:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** void HAL_DBGMCU_EnableDBGStandbyMode(void) 493:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** { 707 .loc 1 493 0 708 .cfi_startproc 709 @ args = 0, pretend = 0, frame = 0 710 @ frame_needed = 0, uses_anonymous_args = 0 711 @ link register save eliminated. 494:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_STANDBY); 712 .loc 1 494 0 713 0000 024A ldr r2, .L71 714 0002 5368 ldr r3, [r2, #4] 715 0004 43F00403 orr r3, r3, #4 716 0008 5360 str r3, [r2, #4] 717 000a 7047 bx lr ARM GAS /tmp/ccyARiVe.s page 22 718 .L72: 719 .align 2 720 .L71: 721 000c 002004E0 .word -536600576 722 .cfi_endproc 723 .LFE150: 725 .section .text.HAL_DBGMCU_DisableDBGStandbyMode,"ax",%progbits 726 .align 1 727 .global HAL_DBGMCU_DisableDBGStandbyMode 728 .syntax unified 729 .thumb 730 .thumb_func 731 .fpu fpv4-sp-d16 733 HAL_DBGMCU_DisableDBGStandbyMode: 734 .LFB151: 495:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** } 496:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 497:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** /** 498:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @brief Disable the Debug Module during STANDBY mode 499:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @retval None 500:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** */ 501:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** void HAL_DBGMCU_DisableDBGStandbyMode(void) 502:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** { 735 .loc 1 502 0 736 .cfi_startproc 737 @ args = 0, pretend = 0, frame = 0 738 @ frame_needed = 0, uses_anonymous_args = 0 739 @ link register save eliminated. 503:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_STANDBY); 740 .loc 1 503 0 741 0000 024A ldr r2, .L74 742 0002 5368 ldr r3, [r2, #4] 743 0004 23F00403 bic r3, r3, #4 744 0008 5360 str r3, [r2, #4] 745 000a 7047 bx lr 746 .L75: 747 .align 2 748 .L74: 749 000c 002004E0 .word -536600576 750 .cfi_endproc 751 .LFE151: 753 .section .text.HAL_EnableCompensationCell,"ax",%progbits 754 .align 1 755 .global HAL_EnableCompensationCell 756 .syntax unified 757 .thumb 758 .thumb_func 759 .fpu fpv4-sp-d16 761 HAL_EnableCompensationCell: 762 .LFB152: 504:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** } 505:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 506:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** /** 507:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @brief Enables the I/O Compensation Cell. 508:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @note The I/O compensation cell can be used only when the device supply 509:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * voltage ranges from 2.4 to 3.6 V. 510:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @retval None ARM GAS /tmp/ccyARiVe.s page 23 511:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** */ 512:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** void HAL_EnableCompensationCell(void) 513:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** { 763 .loc 1 513 0 764 .cfi_startproc 765 @ args = 0, pretend = 0, frame = 0 766 @ frame_needed = 0, uses_anonymous_args = 0 767 @ link register save eliminated. 514:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** *(__IO uint32_t *)CMPCR_CMP_PD_BB = (uint32_t)ENABLE; 768 .loc 1 514 0 769 0000 0122 movs r2, #1 770 0002 014B ldr r3, .L77 771 0004 1A60 str r2, [r3] 772 0006 7047 bx lr 773 .L78: 774 .align 2 775 .L77: 776 0008 00042742 .word 1109853184 777 .cfi_endproc 778 .LFE152: 780 .section .text.HAL_DisableCompensationCell,"ax",%progbits 781 .align 1 782 .global HAL_DisableCompensationCell 783 .syntax unified 784 .thumb 785 .thumb_func 786 .fpu fpv4-sp-d16 788 HAL_DisableCompensationCell: 789 .LFB153: 515:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** } 516:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 517:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** /** 518:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @brief Power-down the I/O Compensation Cell. 519:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @note The I/O compensation cell can be used only when the device supply 520:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * voltage ranges from 2.4 to 3.6 V. 521:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @retval None 522:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** */ 523:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** void HAL_DisableCompensationCell(void) 524:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** { 790 .loc 1 524 0 791 .cfi_startproc 792 @ args = 0, pretend = 0, frame = 0 793 @ frame_needed = 0, uses_anonymous_args = 0 794 @ link register save eliminated. 525:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** *(__IO uint32_t *)CMPCR_CMP_PD_BB = (uint32_t)DISABLE; 795 .loc 1 525 0 796 0000 0022 movs r2, #0 797 0002 014B ldr r3, .L80 798 0004 1A60 str r2, [r3] 799 0006 7047 bx lr 800 .L81: 801 .align 2 802 .L80: 803 0008 00042742 .word 1109853184 804 .cfi_endproc 805 .LFE153: 807 .section .text.HAL_GetUIDw0,"ax",%progbits ARM GAS /tmp/ccyARiVe.s page 24 808 .align 1 809 .global HAL_GetUIDw0 810 .syntax unified 811 .thumb 812 .thumb_func 813 .fpu fpv4-sp-d16 815 HAL_GetUIDw0: 816 .LFB154: 526:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** } 527:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 528:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** /** 529:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @brief Returns first word of the unique device identifier (UID based on 96 bits) 530:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @retval Device identifier 531:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** */ 532:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** uint32_t HAL_GetUIDw0(void) 533:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** { 817 .loc 1 533 0 818 .cfi_startproc 819 @ args = 0, pretend = 0, frame = 0 820 @ frame_needed = 0, uses_anonymous_args = 0 821 @ link register save eliminated. 534:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** return (READ_REG(*((uint32_t *)UID_BASE))); 535:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** } 822 .loc 1 535 0 823 0000 014B ldr r3, .L83 824 0002 1868 ldr r0, [r3] 825 0004 7047 bx lr 826 .L84: 827 0006 00BF .align 2 828 .L83: 829 0008 107AFF1F .word 536836624 830 .cfi_endproc 831 .LFE154: 833 .section .text.HAL_GetUIDw1,"ax",%progbits 834 .align 1 835 .global HAL_GetUIDw1 836 .syntax unified 837 .thumb 838 .thumb_func 839 .fpu fpv4-sp-d16 841 HAL_GetUIDw1: 842 .LFB155: 536:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 537:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** /** 538:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @brief Returns second word of the unique device identifier (UID based on 96 bits) 539:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @retval Device identifier 540:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** */ 541:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** uint32_t HAL_GetUIDw1(void) 542:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** { 843 .loc 1 542 0 844 .cfi_startproc 845 @ args = 0, pretend = 0, frame = 0 846 @ frame_needed = 0, uses_anonymous_args = 0 847 @ link register save eliminated. 543:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** return (READ_REG(*((uint32_t *)(UID_BASE + 4U)))); 544:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** } 848 .loc 1 544 0 ARM GAS /tmp/ccyARiVe.s page 25 849 0000 014B ldr r3, .L86 850 0002 1868 ldr r0, [r3] 851 0004 7047 bx lr 852 .L87: 853 0006 00BF .align 2 854 .L86: 855 0008 147AFF1F .word 536836628 856 .cfi_endproc 857 .LFE155: 859 .section .text.HAL_GetUIDw2,"ax",%progbits 860 .align 1 861 .global HAL_GetUIDw2 862 .syntax unified 863 .thumb 864 .thumb_func 865 .fpu fpv4-sp-d16 867 HAL_GetUIDw2: 868 .LFB156: 545:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 546:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** /** 547:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @brief Returns third word of the unique device identifier (UID based on 96 bits) 548:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * @retval Device identifier 549:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** */ 550:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** uint32_t HAL_GetUIDw2(void) 551:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** { 869 .loc 1 551 0 870 .cfi_startproc 871 @ args = 0, pretend = 0, frame = 0 872 @ frame_needed = 0, uses_anonymous_args = 0 873 @ link register save eliminated. 552:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** return (READ_REG(*((uint32_t *)(UID_BASE + 8U)))); 553:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** } 874 .loc 1 553 0 875 0000 014B ldr r3, .L89 876 0002 1868 ldr r0, [r3] 877 0004 7047 bx lr 878 .L90: 879 0006 00BF .align 2 880 .L89: 881 0008 187AFF1F .word 536836632 882 .cfi_endproc 883 .LFE156: 885 .global uwTickFreq 886 .global uwTickPrio 887 .comm uwTick,4,4 888 .section .data.uwTickFreq,"aw",%progbits 889 .set .LANCHOR0,. + 0 892 uwTickFreq: 893 0000 01 .byte 1 894 .section .data.uwTickPrio,"aw",%progbits 895 .align 2 896 .set .LANCHOR1,. + 0 899 uwTickPrio: 900 0000 10000000 .word 16 901 .text 902 .Letext0: 903 .file 2 "/usr/include/newlib/machine/_default_types.h" ARM GAS /tmp/ccyARiVe.s page 26 904 .file 3 "/usr/include/newlib/sys/_stdint.h" 905 .file 4 "Drivers/CMSIS/Include/core_cm4.h" 906 .file 5 "Drivers/CMSIS/Device/ST/STM32F4xx/Include/system_stm32f4xx.h" 907 .file 6 "Drivers/CMSIS/Device/ST/STM32F4xx/Include/stm32f407xx.h" 908 .file 7 "Drivers/CMSIS/Device/ST/STM32F4xx/Include/stm32f4xx.h" 909 .file 8 "Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_def.h" 910 .file 9 "Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal.h" 911 .file 10 "Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_cortex.h" ARM GAS /tmp/ccyARiVe.s page 27 DEFINED SYMBOLS *ABS*:0000000000000000 stm32f4xx_hal.c /tmp/ccyARiVe.s:18 .text.HAL_MspInit:0000000000000000 $t /tmp/ccyARiVe.s:25 .text.HAL_MspInit:0000000000000000 HAL_MspInit /tmp/ccyARiVe.s:38 .text.HAL_MspDeInit:0000000000000000 $t /tmp/ccyARiVe.s:45 .text.HAL_MspDeInit:0000000000000000 HAL_MspDeInit /tmp/ccyARiVe.s:57 .text.HAL_DeInit:0000000000000000 $t /tmp/ccyARiVe.s:64 .text.HAL_DeInit:0000000000000000 HAL_DeInit /tmp/ccyARiVe.s:108 .text.HAL_DeInit:0000000000000028 $d /tmp/ccyARiVe.s:113 .text.HAL_InitTick:0000000000000000 $t /tmp/ccyARiVe.s:120 .text.HAL_InitTick:0000000000000000 HAL_InitTick /tmp/ccyARiVe.s:175 .text.HAL_InitTick:0000000000000040 $d /tmp/ccyARiVe.s:182 .text.HAL_Init:0000000000000000 $t /tmp/ccyARiVe.s:189 .text.HAL_Init:0000000000000000 HAL_Init /tmp/ccyARiVe.s:230 .text.HAL_Init:0000000000000030 $d /tmp/ccyARiVe.s:235 .text.HAL_IncTick:0000000000000000 $t /tmp/ccyARiVe.s:242 .text.HAL_IncTick:0000000000000000 HAL_IncTick /tmp/ccyARiVe.s:260 .text.HAL_IncTick:0000000000000010 $d *COM*:0000000000000004 uwTick /tmp/ccyARiVe.s:266 .text.HAL_GetTick:0000000000000000 $t /tmp/ccyARiVe.s:273 .text.HAL_GetTick:0000000000000000 HAL_GetTick /tmp/ccyARiVe.s:288 .text.HAL_GetTick:0000000000000008 $d /tmp/ccyARiVe.s:293 .text.HAL_GetTickPrio:0000000000000000 $t /tmp/ccyARiVe.s:300 .text.HAL_GetTickPrio:0000000000000000 HAL_GetTickPrio /tmp/ccyARiVe.s:314 .text.HAL_GetTickPrio:0000000000000008 $d /tmp/ccyARiVe.s:319 .text.HAL_SetTickFreq:0000000000000000 $t /tmp/ccyARiVe.s:326 .text.HAL_SetTickFreq:0000000000000000 HAL_SetTickFreq /tmp/ccyARiVe.s:364 .text.HAL_SetTickFreq:000000000000001c $d /tmp/ccyARiVe.s:370 .text.HAL_GetTickFreq:0000000000000000 $t /tmp/ccyARiVe.s:377 .text.HAL_GetTickFreq:0000000000000000 HAL_GetTickFreq /tmp/ccyARiVe.s:391 .text.HAL_GetTickFreq:0000000000000008 $d /tmp/ccyARiVe.s:396 .text.HAL_Delay:0000000000000000 $t /tmp/ccyARiVe.s:403 .text.HAL_Delay:0000000000000000 HAL_Delay /tmp/ccyARiVe.s:444 .text.HAL_Delay:0000000000000024 $d /tmp/ccyARiVe.s:449 .text.HAL_SuspendTick:0000000000000000 $t /tmp/ccyARiVe.s:456 .text.HAL_SuspendTick:0000000000000000 HAL_SuspendTick /tmp/ccyARiVe.s:472 .text.HAL_SuspendTick:000000000000000c $d /tmp/ccyARiVe.s:477 .text.HAL_ResumeTick:0000000000000000 $t /tmp/ccyARiVe.s:484 .text.HAL_ResumeTick:0000000000000000 HAL_ResumeTick /tmp/ccyARiVe.s:500 .text.HAL_ResumeTick:000000000000000c $d /tmp/ccyARiVe.s:505 .text.HAL_GetHalVersion:0000000000000000 $t /tmp/ccyARiVe.s:512 .text.HAL_GetHalVersion:0000000000000000 HAL_GetHalVersion /tmp/ccyARiVe.s:525 .text.HAL_GetHalVersion:0000000000000004 $d /tmp/ccyARiVe.s:530 .text.HAL_GetREVID:0000000000000000 $t /tmp/ccyARiVe.s:537 .text.HAL_GetREVID:0000000000000000 HAL_GetREVID /tmp/ccyARiVe.s:553 .text.HAL_GetREVID:0000000000000008 $d /tmp/ccyARiVe.s:558 .text.HAL_GetDEVID:0000000000000000 $t /tmp/ccyARiVe.s:565 .text.HAL_GetDEVID:0000000000000000 HAL_GetDEVID /tmp/ccyARiVe.s:581 .text.HAL_GetDEVID:000000000000000c $d /tmp/ccyARiVe.s:586 .text.HAL_DBGMCU_EnableDBGSleepMode:0000000000000000 $t /tmp/ccyARiVe.s:593 .text.HAL_DBGMCU_EnableDBGSleepMode:0000000000000000 HAL_DBGMCU_EnableDBGSleepMode /tmp/ccyARiVe.s:609 .text.HAL_DBGMCU_EnableDBGSleepMode:000000000000000c $d /tmp/ccyARiVe.s:614 .text.HAL_DBGMCU_DisableDBGSleepMode:0000000000000000 $t /tmp/ccyARiVe.s:621 .text.HAL_DBGMCU_DisableDBGSleepMode:0000000000000000 HAL_DBGMCU_DisableDBGSleepMode /tmp/ccyARiVe.s:637 .text.HAL_DBGMCU_DisableDBGSleepMode:000000000000000c $d /tmp/ccyARiVe.s:642 .text.HAL_DBGMCU_EnableDBGStopMode:0000000000000000 $t /tmp/ccyARiVe.s:649 .text.HAL_DBGMCU_EnableDBGStopMode:0000000000000000 HAL_DBGMCU_EnableDBGStopMode ARM GAS /tmp/ccyARiVe.s page 28 /tmp/ccyARiVe.s:665 .text.HAL_DBGMCU_EnableDBGStopMode:000000000000000c $d /tmp/ccyARiVe.s:670 .text.HAL_DBGMCU_DisableDBGStopMode:0000000000000000 $t /tmp/ccyARiVe.s:677 .text.HAL_DBGMCU_DisableDBGStopMode:0000000000000000 HAL_DBGMCU_DisableDBGStopMode /tmp/ccyARiVe.s:693 .text.HAL_DBGMCU_DisableDBGStopMode:000000000000000c $d /tmp/ccyARiVe.s:698 .text.HAL_DBGMCU_EnableDBGStandbyMode:0000000000000000 $t /tmp/ccyARiVe.s:705 .text.HAL_DBGMCU_EnableDBGStandbyMode:0000000000000000 HAL_DBGMCU_EnableDBGStandbyMode /tmp/ccyARiVe.s:721 .text.HAL_DBGMCU_EnableDBGStandbyMode:000000000000000c $d /tmp/ccyARiVe.s:726 .text.HAL_DBGMCU_DisableDBGStandbyMode:0000000000000000 $t /tmp/ccyARiVe.s:733 .text.HAL_DBGMCU_DisableDBGStandbyMode:0000000000000000 HAL_DBGMCU_DisableDBGStandbyMode /tmp/ccyARiVe.s:749 .text.HAL_DBGMCU_DisableDBGStandbyMode:000000000000000c $d /tmp/ccyARiVe.s:754 .text.HAL_EnableCompensationCell:0000000000000000 $t /tmp/ccyARiVe.s:761 .text.HAL_EnableCompensationCell:0000000000000000 HAL_EnableCompensationCell /tmp/ccyARiVe.s:776 .text.HAL_EnableCompensationCell:0000000000000008 $d /tmp/ccyARiVe.s:781 .text.HAL_DisableCompensationCell:0000000000000000 $t /tmp/ccyARiVe.s:788 .text.HAL_DisableCompensationCell:0000000000000000 HAL_DisableCompensationCell /tmp/ccyARiVe.s:803 .text.HAL_DisableCompensationCell:0000000000000008 $d /tmp/ccyARiVe.s:808 .text.HAL_GetUIDw0:0000000000000000 $t /tmp/ccyARiVe.s:815 .text.HAL_GetUIDw0:0000000000000000 HAL_GetUIDw0 /tmp/ccyARiVe.s:829 .text.HAL_GetUIDw0:0000000000000008 $d /tmp/ccyARiVe.s:834 .text.HAL_GetUIDw1:0000000000000000 $t /tmp/ccyARiVe.s:841 .text.HAL_GetUIDw1:0000000000000000 HAL_GetUIDw1 /tmp/ccyARiVe.s:855 .text.HAL_GetUIDw1:0000000000000008 $d /tmp/ccyARiVe.s:860 .text.HAL_GetUIDw2:0000000000000000 $t /tmp/ccyARiVe.s:867 .text.HAL_GetUIDw2:0000000000000000 HAL_GetUIDw2 /tmp/ccyARiVe.s:881 .text.HAL_GetUIDw2:0000000000000008 $d /tmp/ccyARiVe.s:892 .data.uwTickFreq:0000000000000000 uwTickFreq /tmp/ccyARiVe.s:899 .data.uwTickPrio:0000000000000000 uwTickPrio /tmp/ccyARiVe.s:895 .data.uwTickPrio:0000000000000000 $d .debug_frame:0000000000000010 $d UNDEFINED SYMBOLS HAL_SYSTICK_Config HAL_NVIC_SetPriority SystemCoreClock HAL_NVIC_SetPriorityGrouping