ARM GAS /tmp/ccCNvmNi.s page 1 1 .cpu cortex-m4 2 .arch armv7e-m 3 .fpu fpv4-sp-d16 4 .eabi_attribute 27, 1 5 .eabi_attribute 28, 1 6 .eabi_attribute 20, 1 7 .eabi_attribute 21, 1 8 .eabi_attribute 23, 3 9 .eabi_attribute 24, 1 10 .eabi_attribute 25, 1 11 .eabi_attribute 26, 1 12 .eabi_attribute 30, 1 13 .eabi_attribute 34, 1 14 .eabi_attribute 18, 4 15 .file "stm32f4xx_hal.c" 16 .text 17 .Ltext0: 18 .cfi_sections .debug_frame 19 .section .text.HAL_MspInit,"ax",%progbits 20 .align 1 21 .weak HAL_MspInit 22 .syntax unified 23 .thumb 24 .thumb_func 26 HAL_MspInit: 27 .LFB132: 28 .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 ARM GAS /tmp/ccCNvmNi.s page 2 31:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * 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 **** */ ARM GAS /tmp/ccCNvmNi.s page 3 88:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 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. ARM GAS /tmp/ccCNvmNi.s page 4 145:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** * Configures the SysTick to generate an interrupt each 1 millisecond, 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 **** ARM GAS /tmp/ccCNvmNi.s page 5 202:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** __HAL_RCC_AHB2_FORCE_RESET(); 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 **** { 29 .loc 1 220 1 view -0 30 .cfi_startproc 31 @ args = 0, pretend = 0, frame = 0 32 @ frame_needed = 0, uses_anonymous_args = 0 33 @ link register save eliminated. 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 **** } 34 .loc 1 224 1 view .LVU1 35 0000 7047 bx lr 36 .cfi_endproc 37 .LFE132: 39 .section .text.HAL_MspDeInit,"ax",%progbits 40 .align 1 41 .weak HAL_MspDeInit 42 .syntax unified 43 .thumb 44 .thumb_func 46 HAL_MspDeInit: 47 .LFB133: 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 **** { 48 .loc 1 231 1 view -0 49 .cfi_startproc 50 @ args = 0, pretend = 0, frame = 0 51 @ frame_needed = 0, uses_anonymous_args = 0 52 @ link register save eliminated. 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 **** } 53 .loc 1 235 1 view .LVU3 ARM GAS /tmp/ccCNvmNi.s page 6 54 0000 7047 bx lr 55 .cfi_endproc 56 .LFE133: 58 .section .text.HAL_DeInit,"ax",%progbits 59 .align 1 60 .global HAL_DeInit 61 .syntax unified 62 .thumb 63 .thumb_func 65 HAL_DeInit: 66 .LFB131: 191:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** /* Reset of all peripherals */ 67 .loc 1 191 1 view -0 68 .cfi_startproc 69 @ args = 0, pretend = 0, frame = 0 70 @ frame_needed = 0, uses_anonymous_args = 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 3 view .LVU5 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 3 view .LVU6 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 3 view .LVU7 84 000e 5A62 str r2, [r3, #36] 197:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 85 .loc 1 197 3 view .LVU8 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 3 view .LVU9 88 0012 1A61 str r2, [r3, #16] 200:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 89 .loc 1 200 3 view .LVU10 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 3 view .LVU11 92 0016 5A61 str r2, [r3, #20] 203:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 93 .loc 1 203 3 view .LVU12 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 3 view .LVU13 96 001a 9A61 str r2, [r3, #24] 206:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 97 .loc 1 206 3 view .LVU14 98 001c 9C61 str r4, [r3, #24] 209:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 99 .loc 1 209 3 view .LVU15 100 001e FFF7FEFF bl HAL_MspDeInit ARM GAS /tmp/ccCNvmNi.s page 7 101 .LVL0: 212:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** } 102 .loc 1 212 3 view .LVU16 213:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 103 .loc 1 213 1 is_stmt 0 view .LVU17 104 0022 2046 mov r0, r4 105 0024 10BD pop {r4, pc} 106 .L6: 107 0026 00BF .align 2 108 .L5: 109 0028 00380240 .word 1073887232 110 .cfi_endproc 111 .LFE131: 113 .section .text.HAL_InitTick,"ax",%progbits 114 .align 1 115 .weak HAL_InitTick 116 .syntax unified 117 .thumb 118 .thumb_func 120 HAL_InitTick: 121 .LVL1: 122 .LFB134: 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 **** { 123 .loc 1 254 1 is_stmt 1 view -0 124 .cfi_startproc 125 @ args = 0, pretend = 0, frame = 0 126 @ frame_needed = 0, uses_anonymous_args = 0 127 .loc 1 254 1 is_stmt 0 view .LVU19 128 0000 10B5 push {r4, lr} 129 .LCFI1: 130 .cfi_def_cfa_offset 8 131 .cfi_offset 4, -8 132 .cfi_offset 14, -4 133 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) 134 .loc 1 256 3 is_stmt 1 view .LVU20 135 .loc 1 256 51 is_stmt 0 view .LVU21 136 0004 0E4B ldr r3, .L13 ARM GAS /tmp/ccCNvmNi.s page 8 137 0006 1878 ldrb r0, [r3] @ zero_extendqisi2 138 .LVL2: 139 .loc 1 256 51 view .LVU22 140 0008 4FF47A73 mov r3, #1000 141 000c B3FBF0F3 udiv r3, r3, r0 142 .loc 1 256 7 view .LVU23 143 0010 0C4A ldr r2, .L13+4 144 0012 1068 ldr r0, [r2] 145 0014 B0FBF3F0 udiv r0, r0, r3 146 0018 FFF7FEFF bl HAL_SYSTICK_Config 147 .LVL3: 148 .loc 1 256 6 view .LVU24 149 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)) 150 .loc 1 262 3 is_stmt 1 view .LVU25 151 .loc 1 262 6 is_stmt 0 view .LVU26 152 001e 0F2C cmp r4, #15 153 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; 154 .loc 1 269 12 view .LVU27 155 0022 0120 movs r0, #1 156 0024 0AE0 b .L8 157 .L12: 264:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** uwTickPrio = TickPriority; 158 .loc 1 264 5 is_stmt 1 view .LVU28 159 0026 0022 movs r2, #0 160 0028 2146 mov r1, r4 161 002a 4FF0FF30 mov r0, #-1 162 002e FFF7FEFF bl HAL_NVIC_SetPriority 163 .LVL4: 265:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** } 164 .loc 1 265 5 view .LVU29 265:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** } 165 .loc 1 265 16 is_stmt 0 view .LVU30 166 0032 054B ldr r3, .L13+8 167 0034 1C60 str r4, [r3] 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; 168 .loc 1 273 3 is_stmt 1 view .LVU31 169 .loc 1 273 10 is_stmt 0 view .LVU32 170 0036 0020 movs r0, #0 171 0038 00E0 b .L8 172 .L9: 258:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** } ARM GAS /tmp/ccCNvmNi.s page 9 173 .loc 1 258 12 view .LVU33 174 003a 0120 movs r0, #1 175 .L8: 274:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** } 176 .loc 1 274 1 view .LVU34 177 003c 10BD pop {r4, pc} 178 .LVL5: 179 .L14: 180 .loc 1 274 1 view .LVU35 181 003e 00BF .align 2 182 .L13: 183 0040 00000000 .word .LANCHOR0 184 0044 00000000 .word SystemCoreClock 185 0048 00000000 .word .LANCHOR1 186 .cfi_endproc 187 .LFE134: 189 .section .text.HAL_Init,"ax",%progbits 190 .align 1 191 .global HAL_Init 192 .syntax unified 193 .thumb 194 .thumb_func 196 HAL_Init: 197 .LFB130: 158:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** /* Configure Flash prefetch, Instruction cache, Data cache */ 198 .loc 1 158 1 is_stmt 1 view -0 199 .cfi_startproc 200 @ args = 0, pretend = 0, frame = 0 201 @ frame_needed = 0, uses_anonymous_args = 0 202 0000 08B5 push {r3, lr} 203 .LCFI2: 204 .cfi_def_cfa_offset 8 205 .cfi_offset 3, -8 206 .cfi_offset 14, -4 161:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** #endif /* INSTRUCTION_CACHE_ENABLE */ 207 .loc 1 161 3 view .LVU37 208 0002 0B4B ldr r3, .L17 209 0004 1A68 ldr r2, [r3] 210 0006 42F40072 orr r2, r2, #512 211 000a 1A60 str r2, [r3] 165:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** #endif /* DATA_CACHE_ENABLE */ 212 .loc 1 165 3 view .LVU38 213 000c 1A68 ldr r2, [r3] 214 000e 42F48062 orr r2, r2, #1024 215 0012 1A60 str r2, [r3] 169:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** #endif /* PREFETCH_ENABLE */ 216 .loc 1 169 3 view .LVU39 217 0014 1A68 ldr r2, [r3] 218 0016 42F48072 orr r2, r2, #256 219 001a 1A60 str r2, [r3] 173:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 220 .loc 1 173 3 view .LVU40 221 001c 0320 movs r0, #3 222 001e FFF7FEFF bl HAL_NVIC_SetPriorityGrouping 223 .LVL6: 176:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 224 .loc 1 176 3 view .LVU41 ARM GAS /tmp/ccCNvmNi.s page 10 225 0022 0020 movs r0, #0 226 0024 FFF7FEFF bl HAL_InitTick 227 .LVL7: 179:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 228 .loc 1 179 3 view .LVU42 229 0028 FFF7FEFF bl HAL_MspInit 230 .LVL8: 182:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** } 231 .loc 1 182 3 view .LVU43 183:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 232 .loc 1 183 1 is_stmt 0 view .LVU44 233 002c 0020 movs r0, #0 234 002e 08BD pop {r3, pc} 235 .L18: 236 .align 2 237 .L17: 238 0030 003C0240 .word 1073888256 239 .cfi_endproc 240 .LFE130: 242 .section .text.HAL_IncTick,"ax",%progbits 243 .align 1 244 .weak HAL_IncTick 245 .syntax unified 246 .thumb 247 .thumb_func 249 HAL_IncTick: 250 .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" ARM GAS /tmp/ccCNvmNi.s page 11 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) 313:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** { 251 .loc 1 313 1 is_stmt 1 view -0 252 .cfi_startproc 253 @ args = 0, pretend = 0, frame = 0 254 @ frame_needed = 0, uses_anonymous_args = 0 255 @ link register save eliminated. 314:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** uwTick += uwTickFreq; 256 .loc 1 314 3 view .LVU46 257 .loc 1 314 10 is_stmt 0 view .LVU47 258 0000 034A ldr r2, .L20 259 0002 1168 ldr r1, [r2] 260 0004 034B ldr r3, .L20+4 261 0006 1B78 ldrb r3, [r3] @ zero_extendqisi2 262 0008 0B44 add r3, r3, r1 263 000a 1360 str r3, [r2] 315:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** } 264 .loc 1 315 1 view .LVU48 265 000c 7047 bx lr 266 .L21: 267 000e 00BF .align 2 268 .L20: 269 0010 00000000 .word .LANCHOR2 270 0014 00000000 .word .LANCHOR0 271 .cfi_endproc 272 .LFE135: 274 .section .text.HAL_GetTick,"ax",%progbits 275 .align 1 276 .weak HAL_GetTick 277 .syntax unified 278 .thumb 279 .thumb_func 281 HAL_GetTick: 282 .LFB136: 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 **** { 283 .loc 1 324 1 is_stmt 1 view -0 284 .cfi_startproc 285 @ args = 0, pretend = 0, frame = 0 286 @ frame_needed = 0, uses_anonymous_args = 0 287 @ link register save eliminated. 325:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** return uwTick; 288 .loc 1 325 3 view .LVU50 ARM GAS /tmp/ccCNvmNi.s page 12 289 .loc 1 325 10 is_stmt 0 view .LVU51 290 0000 014B ldr r3, .L23 291 0002 1868 ldr r0, [r3] 326:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** } 292 .loc 1 326 1 view .LVU52 293 0004 7047 bx lr 294 .L24: 295 0006 00BF .align 2 296 .L23: 297 0008 00000000 .word .LANCHOR2 298 .cfi_endproc 299 .LFE136: 301 .section .text.HAL_GetTickPrio,"ax",%progbits 302 .align 1 303 .global HAL_GetTickPrio 304 .syntax unified 305 .thumb 306 .thumb_func 308 HAL_GetTickPrio: 309 .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 **** { 310 .loc 1 333 1 is_stmt 1 view -0 311 .cfi_startproc 312 @ args = 0, pretend = 0, frame = 0 313 @ frame_needed = 0, uses_anonymous_args = 0 314 @ link register save eliminated. 334:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** return uwTickPrio; 315 .loc 1 334 3 view .LVU54 335:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** } 316 .loc 1 335 1 is_stmt 0 view .LVU55 317 0000 014B ldr r3, .L26 318 0002 1868 ldr r0, [r3] 319 0004 7047 bx lr 320 .L27: 321 0006 00BF .align 2 322 .L26: 323 0008 00000000 .word .LANCHOR1 324 .cfi_endproc 325 .LFE137: 327 .section .text.HAL_SetTickFreq,"ax",%progbits 328 .align 1 329 .global HAL_SetTickFreq 330 .syntax unified 331 .thumb 332 .thumb_func 334 HAL_SetTickFreq: 335 .LVL9: 336 .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. ARM GAS /tmp/ccCNvmNi.s page 13 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 **** { 337 .loc 1 342 1 is_stmt 1 view -0 338 .cfi_startproc 339 @ args = 0, pretend = 0, frame = 0 340 @ frame_needed = 0, uses_anonymous_args = 0 341 .loc 1 342 1 is_stmt 0 view .LVU57 342 0000 08B5 push {r3, lr} 343 .LCFI3: 344 .cfi_def_cfa_offset 8 345 .cfi_offset 3, -8 346 .cfi_offset 14, -4 343:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** HAL_StatusTypeDef status = HAL_OK; 347 .loc 1 343 3 is_stmt 1 view .LVU58 348 .LVL10: 344:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** assert_param(IS_TICKFREQ(Freq)); 349 .loc 1 344 3 view .LVU59 345:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 346:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** if (uwTickFreq != Freq) 350 .loc 1 346 3 view .LVU60 351 .loc 1 346 18 is_stmt 0 view .LVU61 352 0002 064B ldr r3, .L33 353 0004 1B78 ldrb r3, [r3] @ zero_extendqisi2 354 .loc 1 346 6 view .LVU62 355 0006 8342 cmp r3, r0 356 0008 01D1 bne .L32 343:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** assert_param(IS_TICKFREQ(Freq)); 357 .loc 1 343 21 view .LVU63 358 000a 0020 movs r0, #0 359 .LVL11: 360 .L29: 347:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** { 348:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** uwTickFreq = Freq; 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); 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; 361 .loc 1 354 3 is_stmt 1 view .LVU64 355:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** } 362 .loc 1 355 1 is_stmt 0 view .LVU65 363 000c 08BD pop {r3, pc} 364 .LVL12: 365 .L32: 348:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 366 .loc 1 348 5 is_stmt 1 view .LVU66 348:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 367 .loc 1 348 16 is_stmt 0 view .LVU67 368 000e 034B ldr r3, .L33 369 0010 1870 strb r0, [r3] 351:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** } 370 .loc 1 351 5 is_stmt 1 view .LVU68 351:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** } 371 .loc 1 351 14 is_stmt 0 view .LVU69 ARM GAS /tmp/ccCNvmNi.s page 14 372 0012 034B ldr r3, .L33+4 373 0014 1868 ldr r0, [r3] 374 .LVL13: 351:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** } 375 .loc 1 351 14 view .LVU70 376 0016 FFF7FEFF bl HAL_InitTick 377 .LVL14: 351:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** } 378 .loc 1 351 14 view .LVU71 379 001a F7E7 b .L29 380 .L34: 381 .align 2 382 .L33: 383 001c 00000000 .word .LANCHOR0 384 0020 00000000 .word .LANCHOR1 385 .cfi_endproc 386 .LFE138: 388 .section .text.HAL_GetTickFreq,"ax",%progbits 389 .align 1 390 .global HAL_GetTickFreq 391 .syntax unified 392 .thumb 393 .thumb_func 395 HAL_GetTickFreq: 396 .LFB139: 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 **** { 397 .loc 1 362 1 is_stmt 1 view -0 398 .cfi_startproc 399 @ args = 0, pretend = 0, frame = 0 400 @ frame_needed = 0, uses_anonymous_args = 0 401 @ link register save eliminated. 363:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** return uwTickFreq; 402 .loc 1 363 3 view .LVU73 364:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** } 403 .loc 1 364 1 is_stmt 0 view .LVU74 404 0000 014B ldr r3, .L36 405 0002 1878 ldrb r0, [r3] @ zero_extendqisi2 406 0004 7047 bx lr 407 .L37: 408 0006 00BF .align 2 409 .L36: 410 0008 00000000 .word .LANCHOR0 411 .cfi_endproc 412 .LFE139: 414 .section .text.HAL_Delay,"ax",%progbits 415 .align 1 416 .weak HAL_Delay 417 .syntax unified 418 .thumb 419 .thumb_func 421 HAL_Delay: ARM GAS /tmp/ccCNvmNi.s page 15 422 .LVL15: 423 .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 **** { 424 .loc 1 378 1 is_stmt 1 view -0 425 .cfi_startproc 426 @ args = 0, pretend = 0, frame = 0 427 @ frame_needed = 0, uses_anonymous_args = 0 428 .loc 1 378 1 is_stmt 0 view .LVU76 429 0000 38B5 push {r3, r4, r5, lr} 430 .LCFI4: 431 .cfi_def_cfa_offset 16 432 .cfi_offset 3, -16 433 .cfi_offset 4, -12 434 .cfi_offset 5, -8 435 .cfi_offset 14, -4 436 0002 0446 mov r4, r0 379:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** uint32_t tickstart = HAL_GetTick(); 437 .loc 1 379 3 is_stmt 1 view .LVU77 438 .loc 1 379 24 is_stmt 0 view .LVU78 439 0004 FFF7FEFF bl HAL_GetTick 440 .LVL16: 441 .loc 1 379 24 view .LVU79 442 0008 0546 mov r5, r0 443 .LVL17: 380:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** uint32_t wait = Delay; 444 .loc 1 380 3 is_stmt 1 view .LVU80 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) 445 .loc 1 383 3 view .LVU81 446 .loc 1 383 6 is_stmt 0 view .LVU82 447 000a B4F1FF3F cmp r4, #-1 448 000e 02D0 beq .L40 384:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** { 385:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** wait += (uint32_t)(uwTickFreq); 449 .loc 1 385 5 is_stmt 1 view .LVU83 450 .loc 1 385 13 is_stmt 0 view .LVU84 451 0010 044B ldr r3, .L42 452 0012 1B78 ldrb r3, [r3] @ zero_extendqisi2 453 .loc 1 385 10 view .LVU85 454 0014 1C44 add r4, r4, r3 455 .LVL18: 456 .L40: 386:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** } ARM GAS /tmp/ccCNvmNi.s page 16 387:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 388:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** while((HAL_GetTick() - tickstart) < wait) 389:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** { 390:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** } 457 .loc 1 390 3 is_stmt 1 discriminator 1 view .LVU86 388:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** { 458 .loc 1 388 8 discriminator 1 view .LVU87 388:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** { 459 .loc 1 388 10 is_stmt 0 discriminator 1 view .LVU88 460 0016 FFF7FEFF bl HAL_GetTick 461 .LVL19: 388:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** { 462 .loc 1 388 24 discriminator 1 view .LVU89 463 001a 401B subs r0, r0, r5 388:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** { 464 .loc 1 388 8 discriminator 1 view .LVU90 465 001c A042 cmp r0, r4 466 001e FAD3 bcc .L40 391:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** } 467 .loc 1 391 1 view .LVU91 468 0020 38BD pop {r3, r4, r5, pc} 469 .LVL20: 470 .L43: 471 .loc 1 391 1 view .LVU92 472 0022 00BF .align 2 473 .L42: 474 0024 00000000 .word .LANCHOR0 475 .cfi_endproc 476 .LFE140: 478 .section .text.HAL_SuspendTick,"ax",%progbits 479 .align 1 480 .weak HAL_SuspendTick 481 .syntax unified 482 .thumb 483 .thumb_func 485 HAL_SuspendTick: 486 .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. 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 **** { 487 .loc 1 404 1 is_stmt 1 view -0 488 .cfi_startproc 489 @ args = 0, pretend = 0, frame = 0 490 @ frame_needed = 0, uses_anonymous_args = 0 491 @ 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; ARM GAS /tmp/ccCNvmNi.s page 17 492 .loc 1 406 3 view .LVU94 493 .loc 1 406 17 is_stmt 0 view .LVU95 494 0000 4FF0E022 mov r2, #-536813568 495 0004 1369 ldr r3, [r2, #16] 496 0006 23F00203 bic r3, r3, #2 497 000a 1361 str r3, [r2, #16] 407:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** } 498 .loc 1 407 1 view .LVU96 499 000c 7047 bx lr 500 .cfi_endproc 501 .LFE141: 503 .section .text.HAL_ResumeTick,"ax",%progbits 504 .align 1 505 .weak HAL_ResumeTick 506 .syntax unified 507 .thumb 508 .thumb_func 510 HAL_ResumeTick: 511 .LFB142: 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 **** { 512 .loc 1 420 1 is_stmt 1 view -0 513 .cfi_startproc 514 @ args = 0, pretend = 0, frame = 0 515 @ frame_needed = 0, uses_anonymous_args = 0 516 @ link register save eliminated. 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; 517 .loc 1 422 3 view .LVU98 518 .loc 1 422 18 is_stmt 0 view .LVU99 519 0000 4FF0E022 mov r2, #-536813568 520 0004 1369 ldr r3, [r2, #16] 521 0006 43F00203 orr r3, r3, #2 522 000a 1361 str r3, [r2, #16] 423:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** } 523 .loc 1 423 1 view .LVU100 524 000c 7047 bx lr 525 .cfi_endproc 526 .LFE142: 528 .section .text.HAL_GetHalVersion,"ax",%progbits 529 .align 1 530 .global HAL_GetHalVersion 531 .syntax unified 532 .thumb 533 .thumb_func 535 HAL_GetHalVersion: ARM GAS /tmp/ccCNvmNi.s page 18 536 .LFB143: 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 **** { 537 .loc 1 430 1 is_stmt 1 view -0 538 .cfi_startproc 539 @ args = 0, pretend = 0, frame = 0 540 @ frame_needed = 0, uses_anonymous_args = 0 541 @ link register save eliminated. 431:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** return __STM32F4xx_HAL_VERSION; 542 .loc 1 431 3 view .LVU102 432:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** } 543 .loc 1 432 1 is_stmt 0 view .LVU103 544 0000 0048 ldr r0, .L47 545 0002 7047 bx lr 546 .L48: 547 .align 2 548 .L47: 549 0004 00050701 .word 17237248 550 .cfi_endproc 551 .LFE143: 553 .section .text.HAL_GetREVID,"ax",%progbits 554 .align 1 555 .global HAL_GetREVID 556 .syntax unified 557 .thumb 558 .thumb_func 560 HAL_GetREVID: 561 .LFB144: 433:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** 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 **** { 562 .loc 1 439 1 is_stmt 1 view -0 563 .cfi_startproc 564 @ args = 0, pretend = 0, frame = 0 565 @ frame_needed = 0, uses_anonymous_args = 0 566 @ link register save eliminated. 440:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** return((DBGMCU->IDCODE) >> 16U); 567 .loc 1 440 3 view .LVU105 568 .loc 1 440 17 is_stmt 0 view .LVU106 569 0000 014B ldr r3, .L50 570 0002 1868 ldr r0, [r3] 441:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** } 571 .loc 1 441 1 view .LVU107 572 0004 000C lsrs r0, r0, #16 573 0006 7047 bx lr 574 .L51: 575 .align 2 576 .L50: ARM GAS /tmp/ccCNvmNi.s page 19 577 0008 002004E0 .word -536600576 578 .cfi_endproc 579 .LFE144: 581 .section .text.HAL_GetDEVID,"ax",%progbits 582 .align 1 583 .global HAL_GetDEVID 584 .syntax unified 585 .thumb 586 .thumb_func 588 HAL_GetDEVID: 589 .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 **** { 590 .loc 1 448 1 is_stmt 1 view -0 591 .cfi_startproc 592 @ args = 0, pretend = 0, frame = 0 593 @ frame_needed = 0, uses_anonymous_args = 0 594 @ link register save eliminated. 449:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** return((DBGMCU->IDCODE) & IDCODE_DEVID_MASK); 595 .loc 1 449 3 view .LVU109 596 .loc 1 449 17 is_stmt 0 view .LVU110 597 0000 024B ldr r3, .L53 598 0002 1868 ldr r0, [r3] 450:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** } 599 .loc 1 450 1 view .LVU111 600 0004 C0F30B00 ubfx r0, r0, #0, #12 601 0008 7047 bx lr 602 .L54: 603 000a 00BF .align 2 604 .L53: 605 000c 002004E0 .word -536600576 606 .cfi_endproc 607 .LFE145: 609 .section .text.HAL_DBGMCU_EnableDBGSleepMode,"ax",%progbits 610 .align 1 611 .global HAL_DBGMCU_EnableDBGSleepMode 612 .syntax unified 613 .thumb 614 .thumb_func 616 HAL_DBGMCU_EnableDBGSleepMode: 617 .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 **** { 618 .loc 1 457 1 is_stmt 1 view -0 619 .cfi_startproc 620 @ args = 0, pretend = 0, frame = 0 621 @ frame_needed = 0, uses_anonymous_args = 0 ARM GAS /tmp/ccCNvmNi.s page 20 622 @ link register save eliminated. 458:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_SLEEP); 623 .loc 1 458 3 view .LVU113 624 0000 024A ldr r2, .L56 625 0002 5368 ldr r3, [r2, #4] 626 0004 43F00103 orr r3, r3, #1 627 0008 5360 str r3, [r2, #4] 459:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** } 628 .loc 1 459 1 is_stmt 0 view .LVU114 629 000a 7047 bx lr 630 .L57: 631 .align 2 632 .L56: 633 000c 002004E0 .word -536600576 634 .cfi_endproc 635 .LFE146: 637 .section .text.HAL_DBGMCU_DisableDBGSleepMode,"ax",%progbits 638 .align 1 639 .global HAL_DBGMCU_DisableDBGSleepMode 640 .syntax unified 641 .thumb 642 .thumb_func 644 HAL_DBGMCU_DisableDBGSleepMode: 645 .LFB147: 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 **** { 646 .loc 1 466 1 is_stmt 1 view -0 647 .cfi_startproc 648 @ args = 0, pretend = 0, frame = 0 649 @ frame_needed = 0, uses_anonymous_args = 0 650 @ link register save eliminated. 467:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_SLEEP); 651 .loc 1 467 3 view .LVU116 652 0000 024A ldr r2, .L59 653 0002 5368 ldr r3, [r2, #4] 654 0004 23F00103 bic r3, r3, #1 655 0008 5360 str r3, [r2, #4] 468:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** } 656 .loc 1 468 1 is_stmt 0 view .LVU117 657 000a 7047 bx lr 658 .L60: 659 .align 2 660 .L59: 661 000c 002004E0 .word -536600576 662 .cfi_endproc 663 .LFE147: 665 .section .text.HAL_DBGMCU_EnableDBGStopMode,"ax",%progbits 666 .align 1 667 .global HAL_DBGMCU_EnableDBGStopMode 668 .syntax unified 669 .thumb 670 .thumb_func ARM GAS /tmp/ccCNvmNi.s page 21 672 HAL_DBGMCU_EnableDBGStopMode: 673 .LFB148: 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 **** { 674 .loc 1 475 1 is_stmt 1 view -0 675 .cfi_startproc 676 @ args = 0, pretend = 0, frame = 0 677 @ frame_needed = 0, uses_anonymous_args = 0 678 @ link register save eliminated. 476:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_STOP); 679 .loc 1 476 3 view .LVU119 680 0000 024A ldr r2, .L62 681 0002 5368 ldr r3, [r2, #4] 682 0004 43F00203 orr r3, r3, #2 683 0008 5360 str r3, [r2, #4] 477:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** } 684 .loc 1 477 1 is_stmt 0 view .LVU120 685 000a 7047 bx lr 686 .L63: 687 .align 2 688 .L62: 689 000c 002004E0 .word -536600576 690 .cfi_endproc 691 .LFE148: 693 .section .text.HAL_DBGMCU_DisableDBGStopMode,"ax",%progbits 694 .align 1 695 .global HAL_DBGMCU_DisableDBGStopMode 696 .syntax unified 697 .thumb 698 .thumb_func 700 HAL_DBGMCU_DisableDBGStopMode: 701 .LFB149: 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 **** { 702 .loc 1 484 1 is_stmt 1 view -0 703 .cfi_startproc 704 @ args = 0, pretend = 0, frame = 0 705 @ frame_needed = 0, uses_anonymous_args = 0 706 @ link register save eliminated. 485:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_STOP); 707 .loc 1 485 3 view .LVU122 708 0000 024A ldr r2, .L65 709 0002 5368 ldr r3, [r2, #4] 710 0004 23F00203 bic r3, r3, #2 711 0008 5360 str r3, [r2, #4] 486:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** } 712 .loc 1 486 1 is_stmt 0 view .LVU123 ARM GAS /tmp/ccCNvmNi.s page 22 713 000a 7047 bx lr 714 .L66: 715 .align 2 716 .L65: 717 000c 002004E0 .word -536600576 718 .cfi_endproc 719 .LFE149: 721 .section .text.HAL_DBGMCU_EnableDBGStandbyMode,"ax",%progbits 722 .align 1 723 .global HAL_DBGMCU_EnableDBGStandbyMode 724 .syntax unified 725 .thumb 726 .thumb_func 728 HAL_DBGMCU_EnableDBGStandbyMode: 729 .LFB150: 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 **** { 730 .loc 1 493 1 is_stmt 1 view -0 731 .cfi_startproc 732 @ args = 0, pretend = 0, frame = 0 733 @ frame_needed = 0, uses_anonymous_args = 0 734 @ link register save eliminated. 494:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_STANDBY); 735 .loc 1 494 3 view .LVU125 736 0000 024A ldr r2, .L68 737 0002 5368 ldr r3, [r2, #4] 738 0004 43F00403 orr r3, r3, #4 739 0008 5360 str r3, [r2, #4] 495:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** } 740 .loc 1 495 1 is_stmt 0 view .LVU126 741 000a 7047 bx lr 742 .L69: 743 .align 2 744 .L68: 745 000c 002004E0 .word -536600576 746 .cfi_endproc 747 .LFE150: 749 .section .text.HAL_DBGMCU_DisableDBGStandbyMode,"ax",%progbits 750 .align 1 751 .global HAL_DBGMCU_DisableDBGStandbyMode 752 .syntax unified 753 .thumb 754 .thumb_func 756 HAL_DBGMCU_DisableDBGStandbyMode: 757 .LFB151: 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 **** { ARM GAS /tmp/ccCNvmNi.s page 23 758 .loc 1 502 1 is_stmt 1 view -0 759 .cfi_startproc 760 @ args = 0, pretend = 0, frame = 0 761 @ frame_needed = 0, uses_anonymous_args = 0 762 @ link register save eliminated. 503:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_STANDBY); 763 .loc 1 503 3 view .LVU128 764 0000 024A ldr r2, .L71 765 0002 5368 ldr r3, [r2, #4] 766 0004 23F00403 bic r3, r3, #4 767 0008 5360 str r3, [r2, #4] 504:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** } 768 .loc 1 504 1 is_stmt 0 view .LVU129 769 000a 7047 bx lr 770 .L72: 771 .align 2 772 .L71: 773 000c 002004E0 .word -536600576 774 .cfi_endproc 775 .LFE151: 777 .section .text.HAL_EnableCompensationCell,"ax",%progbits 778 .align 1 779 .global HAL_EnableCompensationCell 780 .syntax unified 781 .thumb 782 .thumb_func 784 HAL_EnableCompensationCell: 785 .LFB152: 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 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 **** { 786 .loc 1 513 1 is_stmt 1 view -0 787 .cfi_startproc 788 @ args = 0, pretend = 0, frame = 0 789 @ frame_needed = 0, uses_anonymous_args = 0 790 @ link register save eliminated. 514:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** *(__IO uint32_t *)CMPCR_CMP_PD_BB = (uint32_t)ENABLE; 791 .loc 1 514 3 view .LVU131 792 .loc 1 514 37 is_stmt 0 view .LVU132 793 0000 024B ldr r3, .L74 794 0002 0122 movs r2, #1 795 0004 C3F80024 str r2, [r3, #1024] 515:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** } 796 .loc 1 515 1 view .LVU133 797 0008 7047 bx lr 798 .L75: 799 000a 00BF .align 2 800 .L74: 801 000c 00002742 .word 1109852160 802 .cfi_endproc 803 .LFE152: ARM GAS /tmp/ccCNvmNi.s page 24 805 .section .text.HAL_DisableCompensationCell,"ax",%progbits 806 .align 1 807 .global HAL_DisableCompensationCell 808 .syntax unified 809 .thumb 810 .thumb_func 812 HAL_DisableCompensationCell: 813 .LFB153: 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 **** { 814 .loc 1 524 1 is_stmt 1 view -0 815 .cfi_startproc 816 @ args = 0, pretend = 0, frame = 0 817 @ frame_needed = 0, uses_anonymous_args = 0 818 @ link register save eliminated. 525:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** *(__IO uint32_t *)CMPCR_CMP_PD_BB = (uint32_t)DISABLE; 819 .loc 1 525 3 view .LVU135 820 .loc 1 525 37 is_stmt 0 view .LVU136 821 0000 024B ldr r3, .L77 822 0002 0022 movs r2, #0 823 0004 C3F80024 str r2, [r3, #1024] 526:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** } 824 .loc 1 526 1 view .LVU137 825 0008 7047 bx lr 826 .L78: 827 000a 00BF .align 2 828 .L77: 829 000c 00002742 .word 1109852160 830 .cfi_endproc 831 .LFE153: 833 .section .text.HAL_GetUIDw0,"ax",%progbits 834 .align 1 835 .global HAL_GetUIDw0 836 .syntax unified 837 .thumb 838 .thumb_func 840 HAL_GetUIDw0: 841 .LFB154: 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 **** { 842 .loc 1 533 1 is_stmt 1 view -0 843 .cfi_startproc 844 @ args = 0, pretend = 0, frame = 0 845 @ frame_needed = 0, uses_anonymous_args = 0 846 @ link register save eliminated. ARM GAS /tmp/ccCNvmNi.s page 25 534:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** return (READ_REG(*((uint32_t *)UID_BASE))); 847 .loc 1 534 3 view .LVU139 535:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** } 848 .loc 1 535 1 is_stmt 0 view .LVU140 849 0000 014B ldr r3, .L80 850 0002 D3F8100A ldr r0, [r3, #2576] 851 0006 7047 bx lr 852 .L81: 853 .align 2 854 .L80: 855 0008 0070FF1F .word 536834048 856 .cfi_endproc 857 .LFE154: 859 .section .text.HAL_GetUIDw1,"ax",%progbits 860 .align 1 861 .global HAL_GetUIDw1 862 .syntax unified 863 .thumb 864 .thumb_func 866 HAL_GetUIDw1: 867 .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 **** { 868 .loc 1 542 1 is_stmt 1 view -0 869 .cfi_startproc 870 @ args = 0, pretend = 0, frame = 0 871 @ frame_needed = 0, uses_anonymous_args = 0 872 @ link register save eliminated. 543:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** return (READ_REG(*((uint32_t *)(UID_BASE + 4U)))); 873 .loc 1 543 3 view .LVU142 544:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** } 874 .loc 1 544 1 is_stmt 0 view .LVU143 875 0000 014B ldr r3, .L83 876 0002 D3F8140A ldr r0, [r3, #2580] 877 0006 7047 bx lr 878 .L84: 879 .align 2 880 .L83: 881 0008 0070FF1F .word 536834048 882 .cfi_endproc 883 .LFE155: 885 .section .text.HAL_GetUIDw2,"ax",%progbits 886 .align 1 887 .global HAL_GetUIDw2 888 .syntax unified 889 .thumb 890 .thumb_func 892 HAL_GetUIDw2: 893 .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) ARM GAS /tmp/ccCNvmNi.s page 26 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 **** { 894 .loc 1 551 1 is_stmt 1 view -0 895 .cfi_startproc 896 @ args = 0, pretend = 0, frame = 0 897 @ frame_needed = 0, uses_anonymous_args = 0 898 @ link register save eliminated. 552:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** return (READ_REG(*((uint32_t *)(UID_BASE + 8U)))); 899 .loc 1 552 3 view .LVU145 553:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c **** } 900 .loc 1 553 1 is_stmt 0 view .LVU146 901 0000 014B ldr r3, .L86 902 0002 D3F8180A ldr r0, [r3, #2584] 903 0006 7047 bx lr 904 .L87: 905 .align 2 906 .L86: 907 0008 0070FF1F .word 536834048 908 .cfi_endproc 909 .LFE156: 911 .global uwTickFreq 912 .global uwTickPrio 913 .global uwTick 914 .section .bss.uwTick,"aw",%nobits 915 .align 2 916 .set .LANCHOR2,. + 0 919 uwTick: 920 0000 00000000 .space 4 921 .section .data.uwTickFreq,"aw" 922 .set .LANCHOR0,. + 0 925 uwTickFreq: 926 0000 01 .byte 1 927 .section .data.uwTickPrio,"aw" 928 .align 2 929 .set .LANCHOR1,. + 0 932 uwTickPrio: 933 0000 10000000 .word 16 934 .text 935 .Letext0: 936 .file 2 "/home/gitc/\346\241\214\351\235\242/gcc-arm-none-eabi-10.3-2021.10/arm-none-eabi/include/ 937 .file 3 "/home/gitc/\346\241\214\351\235\242/gcc-arm-none-eabi-10.3-2021.10/arm-none-eabi/include/ 938 .file 4 "Drivers/CMSIS/Include/core_cm4.h" 939 .file 5 "Drivers/CMSIS/Device/ST/STM32F4xx/Include/stm32f407xx.h" 940 .file 6 "Drivers/CMSIS/Device/ST/STM32F4xx/Include/stm32f4xx.h" 941 .file 7 "Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_def.h" 942 .file 8 "Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal.h" 943 .file 9 "Drivers/CMSIS/Device/ST/STM32F4xx/Include/system_stm32f4xx.h" 944 .file 10 "Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_cortex.h" ARM GAS /tmp/ccCNvmNi.s page 27 DEFINED SYMBOLS *ABS*:0000000000000000 stm32f4xx_hal.c /tmp/ccCNvmNi.s:20 .text.HAL_MspInit:0000000000000000 $t /tmp/ccCNvmNi.s:26 .text.HAL_MspInit:0000000000000000 HAL_MspInit /tmp/ccCNvmNi.s:40 .text.HAL_MspDeInit:0000000000000000 $t /tmp/ccCNvmNi.s:46 .text.HAL_MspDeInit:0000000000000000 HAL_MspDeInit /tmp/ccCNvmNi.s:59 .text.HAL_DeInit:0000000000000000 $t /tmp/ccCNvmNi.s:65 .text.HAL_DeInit:0000000000000000 HAL_DeInit /tmp/ccCNvmNi.s:109 .text.HAL_DeInit:0000000000000028 $d /tmp/ccCNvmNi.s:114 .text.HAL_InitTick:0000000000000000 $t /tmp/ccCNvmNi.s:120 .text.HAL_InitTick:0000000000000000 HAL_InitTick /tmp/ccCNvmNi.s:183 .text.HAL_InitTick:0000000000000040 $d /tmp/ccCNvmNi.s:190 .text.HAL_Init:0000000000000000 $t /tmp/ccCNvmNi.s:196 .text.HAL_Init:0000000000000000 HAL_Init /tmp/ccCNvmNi.s:238 .text.HAL_Init:0000000000000030 $d /tmp/ccCNvmNi.s:243 .text.HAL_IncTick:0000000000000000 $t /tmp/ccCNvmNi.s:249 .text.HAL_IncTick:0000000000000000 HAL_IncTick /tmp/ccCNvmNi.s:269 .text.HAL_IncTick:0000000000000010 $d /tmp/ccCNvmNi.s:275 .text.HAL_GetTick:0000000000000000 $t /tmp/ccCNvmNi.s:281 .text.HAL_GetTick:0000000000000000 HAL_GetTick /tmp/ccCNvmNi.s:297 .text.HAL_GetTick:0000000000000008 $d /tmp/ccCNvmNi.s:302 .text.HAL_GetTickPrio:0000000000000000 $t /tmp/ccCNvmNi.s:308 .text.HAL_GetTickPrio:0000000000000000 HAL_GetTickPrio /tmp/ccCNvmNi.s:323 .text.HAL_GetTickPrio:0000000000000008 $d /tmp/ccCNvmNi.s:328 .text.HAL_SetTickFreq:0000000000000000 $t /tmp/ccCNvmNi.s:334 .text.HAL_SetTickFreq:0000000000000000 HAL_SetTickFreq /tmp/ccCNvmNi.s:383 .text.HAL_SetTickFreq:000000000000001c $d /tmp/ccCNvmNi.s:389 .text.HAL_GetTickFreq:0000000000000000 $t /tmp/ccCNvmNi.s:395 .text.HAL_GetTickFreq:0000000000000000 HAL_GetTickFreq /tmp/ccCNvmNi.s:410 .text.HAL_GetTickFreq:0000000000000008 $d /tmp/ccCNvmNi.s:415 .text.HAL_Delay:0000000000000000 $t /tmp/ccCNvmNi.s:421 .text.HAL_Delay:0000000000000000 HAL_Delay /tmp/ccCNvmNi.s:474 .text.HAL_Delay:0000000000000024 $d /tmp/ccCNvmNi.s:479 .text.HAL_SuspendTick:0000000000000000 $t /tmp/ccCNvmNi.s:485 .text.HAL_SuspendTick:0000000000000000 HAL_SuspendTick /tmp/ccCNvmNi.s:504 .text.HAL_ResumeTick:0000000000000000 $t /tmp/ccCNvmNi.s:510 .text.HAL_ResumeTick:0000000000000000 HAL_ResumeTick /tmp/ccCNvmNi.s:529 .text.HAL_GetHalVersion:0000000000000000 $t /tmp/ccCNvmNi.s:535 .text.HAL_GetHalVersion:0000000000000000 HAL_GetHalVersion /tmp/ccCNvmNi.s:549 .text.HAL_GetHalVersion:0000000000000004 $d /tmp/ccCNvmNi.s:554 .text.HAL_GetREVID:0000000000000000 $t /tmp/ccCNvmNi.s:560 .text.HAL_GetREVID:0000000000000000 HAL_GetREVID /tmp/ccCNvmNi.s:577 .text.HAL_GetREVID:0000000000000008 $d /tmp/ccCNvmNi.s:582 .text.HAL_GetDEVID:0000000000000000 $t /tmp/ccCNvmNi.s:588 .text.HAL_GetDEVID:0000000000000000 HAL_GetDEVID /tmp/ccCNvmNi.s:605 .text.HAL_GetDEVID:000000000000000c $d /tmp/ccCNvmNi.s:610 .text.HAL_DBGMCU_EnableDBGSleepMode:0000000000000000 $t /tmp/ccCNvmNi.s:616 .text.HAL_DBGMCU_EnableDBGSleepMode:0000000000000000 HAL_DBGMCU_EnableDBGSleepMode /tmp/ccCNvmNi.s:633 .text.HAL_DBGMCU_EnableDBGSleepMode:000000000000000c $d /tmp/ccCNvmNi.s:638 .text.HAL_DBGMCU_DisableDBGSleepMode:0000000000000000 $t /tmp/ccCNvmNi.s:644 .text.HAL_DBGMCU_DisableDBGSleepMode:0000000000000000 HAL_DBGMCU_DisableDBGSleepMode /tmp/ccCNvmNi.s:661 .text.HAL_DBGMCU_DisableDBGSleepMode:000000000000000c $d /tmp/ccCNvmNi.s:666 .text.HAL_DBGMCU_EnableDBGStopMode:0000000000000000 $t /tmp/ccCNvmNi.s:672 .text.HAL_DBGMCU_EnableDBGStopMode:0000000000000000 HAL_DBGMCU_EnableDBGStopMode /tmp/ccCNvmNi.s:689 .text.HAL_DBGMCU_EnableDBGStopMode:000000000000000c $d /tmp/ccCNvmNi.s:694 .text.HAL_DBGMCU_DisableDBGStopMode:0000000000000000 $t /tmp/ccCNvmNi.s:700 .text.HAL_DBGMCU_DisableDBGStopMode:0000000000000000 HAL_DBGMCU_DisableDBGStopMode ARM GAS /tmp/ccCNvmNi.s page 28 /tmp/ccCNvmNi.s:717 .text.HAL_DBGMCU_DisableDBGStopMode:000000000000000c $d /tmp/ccCNvmNi.s:722 .text.HAL_DBGMCU_EnableDBGStandbyMode:0000000000000000 $t /tmp/ccCNvmNi.s:728 .text.HAL_DBGMCU_EnableDBGStandbyMode:0000000000000000 HAL_DBGMCU_EnableDBGStandbyMode /tmp/ccCNvmNi.s:745 .text.HAL_DBGMCU_EnableDBGStandbyMode:000000000000000c $d /tmp/ccCNvmNi.s:750 .text.HAL_DBGMCU_DisableDBGStandbyMode:0000000000000000 $t /tmp/ccCNvmNi.s:756 .text.HAL_DBGMCU_DisableDBGStandbyMode:0000000000000000 HAL_DBGMCU_DisableDBGStandbyMode /tmp/ccCNvmNi.s:773 .text.HAL_DBGMCU_DisableDBGStandbyMode:000000000000000c $d /tmp/ccCNvmNi.s:778 .text.HAL_EnableCompensationCell:0000000000000000 $t /tmp/ccCNvmNi.s:784 .text.HAL_EnableCompensationCell:0000000000000000 HAL_EnableCompensationCell /tmp/ccCNvmNi.s:801 .text.HAL_EnableCompensationCell:000000000000000c $d /tmp/ccCNvmNi.s:806 .text.HAL_DisableCompensationCell:0000000000000000 $t /tmp/ccCNvmNi.s:812 .text.HAL_DisableCompensationCell:0000000000000000 HAL_DisableCompensationCell /tmp/ccCNvmNi.s:829 .text.HAL_DisableCompensationCell:000000000000000c $d /tmp/ccCNvmNi.s:834 .text.HAL_GetUIDw0:0000000000000000 $t /tmp/ccCNvmNi.s:840 .text.HAL_GetUIDw0:0000000000000000 HAL_GetUIDw0 /tmp/ccCNvmNi.s:855 .text.HAL_GetUIDw0:0000000000000008 $d /tmp/ccCNvmNi.s:860 .text.HAL_GetUIDw1:0000000000000000 $t /tmp/ccCNvmNi.s:866 .text.HAL_GetUIDw1:0000000000000000 HAL_GetUIDw1 /tmp/ccCNvmNi.s:881 .text.HAL_GetUIDw1:0000000000000008 $d /tmp/ccCNvmNi.s:886 .text.HAL_GetUIDw2:0000000000000000 $t /tmp/ccCNvmNi.s:892 .text.HAL_GetUIDw2:0000000000000000 HAL_GetUIDw2 /tmp/ccCNvmNi.s:907 .text.HAL_GetUIDw2:0000000000000008 $d /tmp/ccCNvmNi.s:925 .data.uwTickFreq:0000000000000000 uwTickFreq /tmp/ccCNvmNi.s:932 .data.uwTickPrio:0000000000000000 uwTickPrio /tmp/ccCNvmNi.s:919 .bss.uwTick:0000000000000000 uwTick /tmp/ccCNvmNi.s:915 .bss.uwTick:0000000000000000 $d /tmp/ccCNvmNi.s:928 .data.uwTickPrio:0000000000000000 $d UNDEFINED SYMBOLS HAL_SYSTICK_Config HAL_NVIC_SetPriority SystemCoreClock HAL_NVIC_SetPriorityGrouping