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

© Copyright (c) 2016 STMicroelectronics. 25:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * All rights reserved.

26:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * 27:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * This software component is licensed by ST under BSD 3-Clause license, 28:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * the "License"; You may not use this file except in compliance with the 29:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * License. You may obtain a copy of the License at: 30:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * opensource.org/licenses/BSD-3-Clause 31:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * 32:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** ****************************************************************************** ARM GAS /tmp/cc3gA90G.s page 2 33:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** */ 34:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 35:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** /* Includes ------------------------------------------------------------------*/ 36:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** #include "stm32f1xx_hal.h" 37:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 38:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** /** @addtogroup STM32F1xx_HAL_Driver 39:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @{ 40:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** */ 41:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 42:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** /** @defgroup HAL HAL 43:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @brief HAL module driver. 44:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @{ 45:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** */ 46:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 47:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** #ifdef HAL_MODULE_ENABLED 48:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 49:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** /* Private typedef -----------------------------------------------------------*/ 50:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** /* Private define ------------------------------------------------------------*/ 51:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 52:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** /** @defgroup HAL_Private_Constants HAL Private Constants 53:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @{ 54:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** */ 55:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** /** 56:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @brief STM32F1xx HAL Driver version number V1.1.7 57:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** */ 58:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** #define __STM32F1xx_HAL_VERSION_MAIN (0x01U) /*!< [31:24] main version */ 59:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** #define __STM32F1xx_HAL_VERSION_SUB1 (0x01U) /*!< [23:16] sub1 version */ 60:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** #define __STM32F1xx_HAL_VERSION_SUB2 (0x07U) /*!< [15:8] sub2 version */ 61:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** #define __STM32F1xx_HAL_VERSION_RC (0x00U) /*!< [7:0] release candidate */ 62:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** #define __STM32F1xx_HAL_VERSION ((__STM32F1xx_HAL_VERSION_MAIN << 24)\ 63:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** |(__STM32F1xx_HAL_VERSION_SUB1 << 16)\ 64:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** |(__STM32F1xx_HAL_VERSION_SUB2 << 8 )\ 65:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** |(__STM32F1xx_HAL_VERSION_RC)) 66:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 67:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** #define IDCODE_DEVID_MASK 0x00000FFFU 68:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 69:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** /** 70:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @} 71:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** */ 72:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 73:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** /* Private macro -------------------------------------------------------------*/ 74:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** /* Private variables ---------------------------------------------------------*/ 75:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 76:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** /** @defgroup HAL_Private_Variables HAL Private Variables 77:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @{ 78:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** */ 79:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** __IO uint32_t uwTick; 80:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** uint32_t uwTickPrio = (1UL << __NVIC_PRIO_BITS); /* Invalid PRIO */ 81:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** HAL_TickFreqTypeDef uwTickFreq = HAL_TICK_FREQ_DEFAULT; /* 1KHz */ 82:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** /** 83:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @} 84:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** */ 85:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** /* Private function prototypes -----------------------------------------------*/ 86:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** /* Exported functions ---------------------------------------------------------*/ 87:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 88:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** /** @defgroup HAL_Exported_Functions HAL Exported Functions 89:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @{ ARM GAS /tmp/cc3gA90G.s page 3 90:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** */ 91:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 92:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** /** @defgroup HAL_Exported_Functions_Group1 Initialization and de-initialization Functions 93:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @brief Initialization and de-initialization functions 94:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * 95:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** @verbatim 96:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** =============================================================================== 97:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** ##### Initialization and de-initialization functions ##### 98:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** =============================================================================== 99:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** [..] This section provides functions allowing to: 100:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** (+) Initializes the Flash interface, the NVIC allocation and initial clock 101:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** configuration. It initializes the systick also when timeout is needed 102:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** and the backup domain when enabled. 103:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** (+) de-Initializes common part of the HAL. 104:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** (+) Configure The time base source to have 1ms time base with a dedicated 105:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** Tick interrupt priority. 106:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** (++) SysTick timer is used by default as source of time base, but user 107:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** can eventually implement his proper time base source (a general purpose 108:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** timer for example or other time source), keeping in mind that Time base 109:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** duration should be kept 1ms since PPP_TIMEOUT_VALUEs are defined and 110:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** handled in milliseconds basis. 111:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** (++) Time base configuration function (HAL_InitTick ()) is called automatically 112:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** at the beginning of the program after reset by HAL_Init() or at any time 113:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** when clock is configured, by HAL_RCC_ClockConfig(). 114:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** (++) Source of time base is configured to generate interrupts at regular 115:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** time intervals. Care must be taken if HAL_Delay() is called from a 116:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** peripheral ISR process, the Tick interrupt line must have higher priority 117:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** (numerically lower) than the peripheral interrupt. Otherwise the caller 118:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** ISR process will be blocked. 119:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** (++) functions affecting time base configurations are declared as __weak 120:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** to make override possible in case of other implementations in user file. 121:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** @endverbatim 122:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @{ 123:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** */ 124:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 125:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** /** 126:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @brief This function is used to initialize the HAL Library; it must be the first 127:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * instruction to be executed in the main program (before to call any other 128:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * HAL function), it performs the following: 129:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * Configure the Flash prefetch. 130:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * Configures the SysTick to generate an interrupt each 1 millisecond, 131:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * which is clocked by the HSI (at this stage, the clock is not yet 132:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * configured and thus the system is running from the internal HSI at 16 MHz). 133:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * Set NVIC Group Priority to 4. 134:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * Calls the HAL_MspInit() callback function defined in user file 135:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * "stm32f1xx_hal_msp.c" to do the global low level hardware initialization 136:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * 137:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @note SysTick is used as time base for the HAL_Delay() function, the application 138:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * need to ensure that the SysTick time base is always set to 1 millisecond 139:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * to have correct HAL operation. 140:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @retval HAL status 141:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** */ 142:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** HAL_StatusTypeDef HAL_Init(void) 143:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** { 144:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** /* Configure Flash prefetch */ 145:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** #if (PREFETCH_ENABLE != 0) 146:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** #if defined(STM32F101x6) || defined(STM32F101xB) || defined(STM32F101xE) || defined(STM32F101xG) || ARM GAS /tmp/cc3gA90G.s page 4 147:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** defined(STM32F102x6) || defined(STM32F102xB) || \ 148:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** defined(STM32F103x6) || defined(STM32F103xB) || defined(STM32F103xE) || defined(STM32F103xG) || 149:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** defined(STM32F105xC) || defined(STM32F107xC) 150:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 151:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** /* Prefetch buffer is not available on value line devices */ 152:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** __HAL_FLASH_PREFETCH_BUFFER_ENABLE(); 153:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** #endif 154:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** #endif /* PREFETCH_ENABLE */ 155:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 156:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** /* Set Interrupt Group Priority */ 157:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** HAL_NVIC_SetPriorityGrouping(NVIC_PRIORITYGROUP_4); 158:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 159:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** /* Use systick as time base source and configure 1ms tick (default clock after Reset is HSI) */ 160:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** HAL_InitTick(TICK_INT_PRIORITY); 161:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 162:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** /* Init the low level hardware */ 163:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** HAL_MspInit(); 164:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 165:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** /* Return function status */ 166:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** return HAL_OK; 167:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** } 168:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 169:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** /** 170:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @brief This function de-Initializes common part of the HAL and stops the systick. 171:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * of time base. 172:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @note This function is optional. 173:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @retval HAL status 174:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** */ 175:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** HAL_StatusTypeDef HAL_DeInit(void) 176:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** { 177:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** /* Reset of all peripherals */ 178:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** __HAL_RCC_APB1_FORCE_RESET(); 179:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** __HAL_RCC_APB1_RELEASE_RESET(); 180:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 181:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** __HAL_RCC_APB2_FORCE_RESET(); 182:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** __HAL_RCC_APB2_RELEASE_RESET(); 183:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 184:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** #if defined(STM32F105xC) || defined(STM32F107xC) 185:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** __HAL_RCC_AHB_FORCE_RESET(); 186:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** __HAL_RCC_AHB_RELEASE_RESET(); 187:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** #endif 188:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 189:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** /* De-Init the low level hardware */ 190:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** HAL_MspDeInit(); 191:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 192:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** /* Return function status */ 193:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** return HAL_OK; 194:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** } 195:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 196:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** /** 197:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @brief Initialize the MSP. 198:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @retval None 199:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** */ 200:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** __weak void HAL_MspInit(void) 201:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** { 27 .loc 1 201 1 view -0 28 .cfi_startproc ARM GAS /tmp/cc3gA90G.s page 5 29 @ args = 0, pretend = 0, frame = 0 30 @ frame_needed = 0, uses_anonymous_args = 0 31 @ link register save eliminated. 202:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** /* NOTE : This function should not be modified, when the callback is needed, 203:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** the HAL_MspInit could be implemented in the user file 204:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** */ 205:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** } 32 .loc 1 205 1 view .LVU1 33 0000 7047 bx lr 34 .cfi_endproc 35 .LFE67: 37 .section .text.HAL_MspDeInit,"ax",%progbits 38 .align 1 39 .weak HAL_MspDeInit 40 .syntax unified 41 .thumb 42 .thumb_func 43 .fpu softvfp 45 HAL_MspDeInit: 46 .LFB68: 206:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 207:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** /** 208:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @brief DeInitializes the MSP. 209:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @retval None 210:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** */ 211:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** __weak void HAL_MspDeInit(void) 212:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** { 47 .loc 1 212 1 view -0 48 .cfi_startproc 49 @ args = 0, pretend = 0, frame = 0 50 @ frame_needed = 0, uses_anonymous_args = 0 51 @ link register save eliminated. 213:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** /* NOTE : This function should not be modified, when the callback is needed, 214:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** the HAL_MspDeInit could be implemented in the user file 215:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** */ 216:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** } 52 .loc 1 216 1 view .LVU3 53 0000 7047 bx lr 54 .cfi_endproc 55 .LFE68: 57 .section .text.HAL_DeInit,"ax",%progbits 58 .align 1 59 .global HAL_DeInit 60 .syntax unified 61 .thumb 62 .thumb_func 63 .fpu softvfp 65 HAL_DeInit: 66 .LFB66: 176:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** /* Reset of all peripherals */ 67 .loc 1 176 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 ARM GAS /tmp/cc3gA90G.s page 6 74 .cfi_offset 4, -8 75 .cfi_offset 14, -4 178:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** __HAL_RCC_APB1_RELEASE_RESET(); 76 .loc 1 178 3 view .LVU5 77 0002 064B ldr r3, .L5 78 0004 4FF0FF32 mov r2, #-1 79 0008 DA60 str r2, [r3, #12] 179:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 80 .loc 1 179 3 view .LVU6 81 000a 0024 movs r4, #0 82 000c 1C61 str r4, [r3, #16] 181:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** __HAL_RCC_APB2_RELEASE_RESET(); 83 .loc 1 181 3 view .LVU7 84 000e DA60 str r2, [r3, #12] 182:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 85 .loc 1 182 3 view .LVU8 86 0010 DC60 str r4, [r3, #12] 190:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 87 .loc 1 190 3 view .LVU9 88 0012 FFF7FEFF bl HAL_MspDeInit 89 .LVL0: 193:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** } 90 .loc 1 193 3 view .LVU10 194:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 91 .loc 1 194 1 is_stmt 0 view .LVU11 92 0016 2046 mov r0, r4 93 0018 10BD pop {r4, pc} 94 .L6: 95 001a 00BF .align 2 96 .L5: 97 001c 00100240 .word 1073876992 98 .cfi_endproc 99 .LFE66: 101 .section .text.HAL_InitTick,"ax",%progbits 102 .align 1 103 .weak HAL_InitTick 104 .syntax unified 105 .thumb 106 .thumb_func 107 .fpu softvfp 109 HAL_InitTick: 110 .LVL1: 111 .LFB69: 217:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 218:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** /** 219:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @brief This function configures the source of the time base. 220:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * The time source is configured to have 1ms time base with a dedicated 221:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * Tick interrupt priority. 222:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @note This function is called automatically at the beginning of program after 223:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * reset by HAL_Init() or at any time when clock is reconfigured by HAL_RCC_ClockConfig(). 224:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @note In the default implementation, SysTick timer is the source of time base. 225:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * It is used to generate interrupts at regular time intervals. 226:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * Care must be taken if HAL_Delay() is called from a peripheral ISR process, 227:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * The SysTick interrupt must have higher priority (numerically lower) 228:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * than the peripheral interrupt. Otherwise the caller ISR process will be blocked. 229:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * The function is declared as __weak to be overwritten in case of other 230:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * implementation in user file. ARM GAS /tmp/cc3gA90G.s page 7 231:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @param TickPriority Tick interrupt priority. 232:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @retval HAL status 233:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** */ 234:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** __weak HAL_StatusTypeDef HAL_InitTick(uint32_t TickPriority) 235:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** { 112 .loc 1 235 1 is_stmt 1 view -0 113 .cfi_startproc 114 @ args = 0, pretend = 0, frame = 0 115 @ frame_needed = 0, uses_anonymous_args = 0 116 .loc 1 235 1 is_stmt 0 view .LVU13 117 0000 10B5 push {r4, lr} 118 .LCFI1: 119 .cfi_def_cfa_offset 8 120 .cfi_offset 4, -8 121 .cfi_offset 14, -4 122 0002 0446 mov r4, r0 236:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** /* Configure the SysTick to have interrupt in 1ms time basis*/ 237:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** if (HAL_SYSTICK_Config(SystemCoreClock / (1000U / uwTickFreq)) > 0U) 123 .loc 1 237 3 is_stmt 1 view .LVU14 124 .loc 1 237 51 is_stmt 0 view .LVU15 125 0004 0E4B ldr r3, .L13 126 0006 1878 ldrb r0, [r3] @ zero_extendqisi2 127 .LVL2: 128 .loc 1 237 51 view .LVU16 129 0008 4FF47A73 mov r3, #1000 130 000c B3FBF0F3 udiv r3, r3, r0 131 .loc 1 237 7 view .LVU17 132 0010 0C4A ldr r2, .L13+4 133 0012 1068 ldr r0, [r2] 134 0014 B0FBF3F0 udiv r0, r0, r3 135 0018 FFF7FEFF bl HAL_SYSTICK_Config 136 .LVL3: 137 .loc 1 237 6 view .LVU18 138 001c 68B9 cbnz r0, .L9 238:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** { 239:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** return HAL_ERROR; 240:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** } 241:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 242:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** /* Configure the SysTick IRQ priority */ 243:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** if (TickPriority < (1UL << __NVIC_PRIO_BITS)) 139 .loc 1 243 3 is_stmt 1 view .LVU19 140 .loc 1 243 6 is_stmt 0 view .LVU20 141 001e 0F2C cmp r4, #15 142 0020 01D9 bls .L12 244:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** { 245:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** HAL_NVIC_SetPriority(SysTick_IRQn, TickPriority, 0U); 246:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** uwTickPrio = TickPriority; 247:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** } 248:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** else 249:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** { 250:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** return HAL_ERROR; 143 .loc 1 250 12 view .LVU21 144 0022 0120 movs r0, #1 145 0024 0AE0 b .L8 146 .L12: 245:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** uwTickPrio = TickPriority; 147 .loc 1 245 5 is_stmt 1 view .LVU22 ARM GAS /tmp/cc3gA90G.s page 8 148 0026 0022 movs r2, #0 149 0028 2146 mov r1, r4 150 002a 4FF0FF30 mov r0, #-1 151 002e FFF7FEFF bl HAL_NVIC_SetPriority 152 .LVL4: 246:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** } 153 .loc 1 246 5 view .LVU23 246:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** } 154 .loc 1 246 16 is_stmt 0 view .LVU24 155 0032 054B ldr r3, .L13+8 156 0034 1C60 str r4, [r3] 251:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** } 252:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 253:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** /* Return function status */ 254:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** return HAL_OK; 157 .loc 1 254 3 is_stmt 1 view .LVU25 158 .loc 1 254 10 is_stmt 0 view .LVU26 159 0036 0020 movs r0, #0 160 0038 00E0 b .L8 161 .L9: 239:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** } 162 .loc 1 239 12 view .LVU27 163 003a 0120 movs r0, #1 164 .L8: 255:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** } 165 .loc 1 255 1 view .LVU28 166 003c 10BD pop {r4, pc} 167 .LVL5: 168 .L14: 169 .loc 1 255 1 view .LVU29 170 003e 00BF .align 2 171 .L13: 172 0040 00000000 .word .LANCHOR0 173 0044 00000000 .word SystemCoreClock 174 0048 00000000 .word .LANCHOR1 175 .cfi_endproc 176 .LFE69: 178 .section .text.HAL_Init,"ax",%progbits 179 .align 1 180 .global HAL_Init 181 .syntax unified 182 .thumb 183 .thumb_func 184 .fpu softvfp 186 HAL_Init: 187 .LFB65: 143:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** /* Configure Flash prefetch */ 188 .loc 1 143 1 is_stmt 1 view -0 189 .cfi_startproc 190 @ args = 0, pretend = 0, frame = 0 191 @ frame_needed = 0, uses_anonymous_args = 0 192 0000 08B5 push {r3, lr} 193 .LCFI2: 194 .cfi_def_cfa_offset 8 195 .cfi_offset 3, -8 196 .cfi_offset 14, -4 152:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** #endif ARM GAS /tmp/cc3gA90G.s page 9 197 .loc 1 152 3 view .LVU31 198 0002 074A ldr r2, .L17 199 0004 1368 ldr r3, [r2] 200 0006 43F01003 orr r3, r3, #16 201 000a 1360 str r3, [r2] 157:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 202 .loc 1 157 3 view .LVU32 203 000c 0320 movs r0, #3 204 000e FFF7FEFF bl HAL_NVIC_SetPriorityGrouping 205 .LVL6: 160:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 206 .loc 1 160 3 view .LVU33 207 0012 0020 movs r0, #0 208 0014 FFF7FEFF bl HAL_InitTick 209 .LVL7: 163:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 210 .loc 1 163 3 view .LVU34 211 0018 FFF7FEFF bl HAL_MspInit 212 .LVL8: 166:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** } 213 .loc 1 166 3 view .LVU35 167:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 214 .loc 1 167 1 is_stmt 0 view .LVU36 215 001c 0020 movs r0, #0 216 001e 08BD pop {r3, pc} 217 .L18: 218 .align 2 219 .L17: 220 0020 00200240 .word 1073881088 221 .cfi_endproc 222 .LFE65: 224 .section .text.HAL_IncTick,"ax",%progbits 225 .align 1 226 .weak HAL_IncTick 227 .syntax unified 228 .thumb 229 .thumb_func 230 .fpu softvfp 232 HAL_IncTick: 233 .LFB70: 256:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 257:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** /** 258:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @} 259:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** */ 260:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 261:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** /** @defgroup HAL_Exported_Functions_Group2 HAL Control functions 262:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @brief HAL Control functions 263:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * 264:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** @verbatim 265:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** =============================================================================== 266:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** ##### HAL Control functions ##### 267:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** =============================================================================== 268:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** [..] This section provides functions allowing to: 269:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** (+) Provide a tick value in millisecond 270:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** (+) Provide a blocking delay in millisecond 271:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** (+) Suspend the time base source interrupt 272:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** (+) Resume the time base source interrupt ARM GAS /tmp/cc3gA90G.s page 10 273:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** (+) Get the HAL API driver version 274:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** (+) Get the device identifier 275:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** (+) Get the device revision identifier 276:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** (+) Enable/Disable Debug module during SLEEP mode 277:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** (+) Enable/Disable Debug module during STOP mode 278:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** (+) Enable/Disable Debug module during STANDBY mode 279:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 280:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** @endverbatim 281:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @{ 282:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** */ 283:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 284:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** /** 285:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @brief This function is called to increment a global variable "uwTick" 286:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * used as application time base. 287:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @note In the default implementation, this variable is incremented each 1ms 288:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * in SysTick ISR. 289:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @note This function is declared as __weak to be overwritten in case of other 290:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * implementations in user file. 291:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @retval None 292:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** */ 293:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** __weak void HAL_IncTick(void) 294:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** { 234 .loc 1 294 1 is_stmt 1 view -0 235 .cfi_startproc 236 @ args = 0, pretend = 0, frame = 0 237 @ frame_needed = 0, uses_anonymous_args = 0 238 @ link register save eliminated. 295:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** uwTick += uwTickFreq; 239 .loc 1 295 3 view .LVU38 240 .loc 1 295 10 is_stmt 0 view .LVU39 241 0000 034A ldr r2, .L20 242 0002 1168 ldr r1, [r2] 243 0004 034B ldr r3, .L20+4 244 0006 1B78 ldrb r3, [r3] @ zero_extendqisi2 245 0008 0B44 add r3, r3, r1 246 000a 1360 str r3, [r2] 296:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** } 247 .loc 1 296 1 view .LVU40 248 000c 7047 bx lr 249 .L21: 250 000e 00BF .align 2 251 .L20: 252 0010 00000000 .word uwTick 253 0014 00000000 .word .LANCHOR0 254 .cfi_endproc 255 .LFE70: 257 .section .text.HAL_GetTick,"ax",%progbits 258 .align 1 259 .weak HAL_GetTick 260 .syntax unified 261 .thumb 262 .thumb_func 263 .fpu softvfp 265 HAL_GetTick: 266 .LFB71: 297:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 298:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** /** ARM GAS /tmp/cc3gA90G.s page 11 299:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @brief Provides a tick value in millisecond. 300:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @note This function is declared as __weak to be overwritten in case of other 301:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * implementations in user file. 302:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @retval tick value 303:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** */ 304:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** __weak uint32_t HAL_GetTick(void) 305:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** { 267 .loc 1 305 1 is_stmt 1 view -0 268 .cfi_startproc 269 @ args = 0, pretend = 0, frame = 0 270 @ frame_needed = 0, uses_anonymous_args = 0 271 @ link register save eliminated. 306:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** return uwTick; 272 .loc 1 306 3 view .LVU42 273 .loc 1 306 10 is_stmt 0 view .LVU43 274 0000 014B ldr r3, .L23 275 0002 1868 ldr r0, [r3] 307:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** } 276 .loc 1 307 1 view .LVU44 277 0004 7047 bx lr 278 .L24: 279 0006 00BF .align 2 280 .L23: 281 0008 00000000 .word uwTick 282 .cfi_endproc 283 .LFE71: 285 .section .text.HAL_GetTickPrio,"ax",%progbits 286 .align 1 287 .global HAL_GetTickPrio 288 .syntax unified 289 .thumb 290 .thumb_func 291 .fpu softvfp 293 HAL_GetTickPrio: 294 .LFB72: 308:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 309:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** /** 310:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @brief This function returns a tick priority. 311:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @retval tick priority 312:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** */ 313:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** uint32_t HAL_GetTickPrio(void) 314:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** { 295 .loc 1 314 1 is_stmt 1 view -0 296 .cfi_startproc 297 @ args = 0, pretend = 0, frame = 0 298 @ frame_needed = 0, uses_anonymous_args = 0 299 @ link register save eliminated. 315:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** return uwTickPrio; 300 .loc 1 315 3 view .LVU46 316:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** } 301 .loc 1 316 1 is_stmt 0 view .LVU47 302 0000 014B ldr r3, .L26 303 0002 1868 ldr r0, [r3] 304 0004 7047 bx lr 305 .L27: 306 0006 00BF .align 2 307 .L26: ARM GAS /tmp/cc3gA90G.s page 12 308 0008 00000000 .word .LANCHOR1 309 .cfi_endproc 310 .LFE72: 312 .section .text.HAL_SetTickFreq,"ax",%progbits 313 .align 1 314 .global HAL_SetTickFreq 315 .syntax unified 316 .thumb 317 .thumb_func 318 .fpu softvfp 320 HAL_SetTickFreq: 321 .LVL9: 322 .LFB73: 317:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 318:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** /** 319:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @brief Set new tick Freq. 320:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @retval status 321:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** */ 322:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** HAL_StatusTypeDef HAL_SetTickFreq(HAL_TickFreqTypeDef Freq) 323:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** { 323 .loc 1 323 1 is_stmt 1 view -0 324 .cfi_startproc 325 @ args = 0, pretend = 0, frame = 0 326 @ frame_needed = 0, uses_anonymous_args = 0 327 .loc 1 323 1 is_stmt 0 view .LVU49 328 0000 38B5 push {r3, r4, r5, lr} 329 .LCFI3: 330 .cfi_def_cfa_offset 16 331 .cfi_offset 3, -16 332 .cfi_offset 4, -12 333 .cfi_offset 5, -8 334 .cfi_offset 14, -4 324:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** HAL_StatusTypeDef status = HAL_OK; 335 .loc 1 324 3 is_stmt 1 view .LVU50 336 .LVL10: 325:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** HAL_TickFreqTypeDef prevTickFreq; 337 .loc 1 325 3 view .LVU51 326:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 327:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** assert_param(IS_TICKFREQ(Freq)); 338 .loc 1 327 3 view .LVU52 328:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 329:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** if (uwTickFreq != Freq) 339 .loc 1 329 3 view .LVU53 340 .loc 1 329 18 is_stmt 0 view .LVU54 341 0002 0A4B ldr r3, .L33 342 0004 1D78 ldrb r5, [r3] @ zero_extendqisi2 343 .loc 1 329 6 view .LVU55 344 0006 8542 cmp r5, r0 345 0008 02D1 bne .L32 324:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** HAL_TickFreqTypeDef prevTickFreq; 346 .loc 1 324 21 view .LVU56 347 000a 0024 movs r4, #0 348 .LVL11: 349 .L29: 330:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** { 331:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** /* Back up uwTickFreq frequency */ 332:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** prevTickFreq = uwTickFreq; ARM GAS /tmp/cc3gA90G.s page 13 333:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 334:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** /* Update uwTickFreq global variable used by HAL_InitTick() */ 335:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** uwTickFreq = Freq; 336:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 337:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** /* Apply the new tick Freq */ 338:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** status = HAL_InitTick(uwTickPrio); 339:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** LL_Init1msTick(); 340:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 341:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** if (status != HAL_OK) 342:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** { 343:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** /* Restore previous tick frequency */ 344:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** uwTickFreq = prevTickFreq; 345:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** } 346:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** } 347:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 348:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** return status; 350 .loc 1 348 3 is_stmt 1 view .LVU57 349:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** } 351 .loc 1 349 1 is_stmt 0 view .LVU58 352 000c 2046 mov r0, r4 353 000e 38BD pop {r3, r4, r5, pc} 354 .LVL12: 355 .L32: 356 .LBB2: 332:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 357 .loc 1 332 5 is_stmt 1 view .LVU59 335:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 358 .loc 1 335 5 view .LVU60 335:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 359 .loc 1 335 16 is_stmt 0 view .LVU61 360 0010 1870 strb r0, [r3] 338:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** LL_Init1msTick(); 361 .loc 1 338 5 is_stmt 1 view .LVU62 338:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** LL_Init1msTick(); 362 .loc 1 338 14 is_stmt 0 view .LVU63 363 0012 074B ldr r3, .L33+4 364 0014 1868 ldr r0, [r3] 365 .LVL13: 338:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** LL_Init1msTick(); 366 .loc 1 338 14 view .LVU64 367 0016 FFF7FEFF bl HAL_InitTick 368 .LVL14: 338:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** LL_Init1msTick(); 369 .loc 1 338 14 view .LVU65 370 001a 0446 mov r4, r0 371 .LVL15: 339:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 372 .loc 1 339 5 is_stmt 1 view .LVU66 373 001c FFF7FEFF bl LL_Init1msTick 374 .LVL16: 341:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** { 375 .loc 1 341 5 view .LVU67 341:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** { 376 .loc 1 341 8 is_stmt 0 view .LVU68 377 0020 002C cmp r4, #0 378 0022 F3D0 beq .L29 344:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** } ARM GAS /tmp/cc3gA90G.s page 14 379 .loc 1 344 7 is_stmt 1 view .LVU69 344:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** } 380 .loc 1 344 18 is_stmt 0 view .LVU70 381 0024 014B ldr r3, .L33 382 0026 1D70 strb r5, [r3] 383 0028 F0E7 b .L29 384 .L34: 385 002a 00BF .align 2 386 .L33: 387 002c 00000000 .word .LANCHOR0 388 0030 00000000 .word .LANCHOR1 389 .LBE2: 390 .cfi_endproc 391 .LFE73: 393 .section .text.HAL_GetTickFreq,"ax",%progbits 394 .align 1 395 .global HAL_GetTickFreq 396 .syntax unified 397 .thumb 398 .thumb_func 399 .fpu softvfp 401 HAL_GetTickFreq: 402 .LFB74: 350:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 351:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** /** 352:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @brief Return tick frequency. 353:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @retval tick period in Hz 354:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** */ 355:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** HAL_TickFreqTypeDef HAL_GetTickFreq(void) 356:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** { 403 .loc 1 356 1 is_stmt 1 view -0 404 .cfi_startproc 405 @ args = 0, pretend = 0, frame = 0 406 @ frame_needed = 0, uses_anonymous_args = 0 407 @ link register save eliminated. 357:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** return uwTickFreq; 408 .loc 1 357 3 view .LVU72 358:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** } 409 .loc 1 358 1 is_stmt 0 view .LVU73 410 0000 014B ldr r3, .L36 411 0002 1878 ldrb r0, [r3] @ zero_extendqisi2 412 0004 7047 bx lr 413 .L37: 414 0006 00BF .align 2 415 .L36: 416 0008 00000000 .word .LANCHOR0 417 .cfi_endproc 418 .LFE74: 420 .section .text.HAL_Delay,"ax",%progbits 421 .align 1 422 .weak HAL_Delay 423 .syntax unified 424 .thumb 425 .thumb_func 426 .fpu softvfp 428 HAL_Delay: 429 .LVL17: ARM GAS /tmp/cc3gA90G.s page 15 430 .LFB75: 359:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 360:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** /** 361:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @brief This function provides minimum delay (in milliseconds) based 362:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * on variable incremented. 363:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @note In the default implementation , SysTick timer is the source of time base. 364:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * It is used to generate interrupts at regular time intervals where uwTick 365:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * is incremented. 366:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @note This function is declared as __weak to be overwritten in case of other 367:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * implementations in user file. 368:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @param Delay specifies the delay time length, in milliseconds. 369:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @retval None 370:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** */ 371:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** __weak void HAL_Delay(uint32_t Delay) 372:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** { 431 .loc 1 372 1 is_stmt 1 view -0 432 .cfi_startproc 433 @ args = 0, pretend = 0, frame = 0 434 @ frame_needed = 0, uses_anonymous_args = 0 435 .loc 1 372 1 is_stmt 0 view .LVU75 436 0000 38B5 push {r3, r4, r5, lr} 437 .LCFI4: 438 .cfi_def_cfa_offset 16 439 .cfi_offset 3, -16 440 .cfi_offset 4, -12 441 .cfi_offset 5, -8 442 .cfi_offset 14, -4 443 0002 0446 mov r4, r0 373:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** uint32_t tickstart = HAL_GetTick(); 444 .loc 1 373 3 is_stmt 1 view .LVU76 445 .loc 1 373 24 is_stmt 0 view .LVU77 446 0004 FFF7FEFF bl HAL_GetTick 447 .LVL18: 448 .loc 1 373 24 view .LVU78 449 0008 0546 mov r5, r0 450 .LVL19: 374:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** uint32_t wait = Delay; 451 .loc 1 374 3 is_stmt 1 view .LVU79 375:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 376:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** /* Add a freq to guarantee minimum wait */ 377:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** if (wait < HAL_MAX_DELAY) 452 .loc 1 377 3 view .LVU80 453 .loc 1 377 6 is_stmt 0 view .LVU81 454 000a B4F1FF3F cmp r4, #-1 455 000e 02D0 beq .L40 378:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** { 379:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** wait += (uint32_t)(uwTickFreq); 456 .loc 1 379 5 is_stmt 1 view .LVU82 457 .loc 1 379 13 is_stmt 0 view .LVU83 458 0010 044B ldr r3, .L42 459 0012 1B78 ldrb r3, [r3] @ zero_extendqisi2 460 .loc 1 379 10 view .LVU84 461 0014 1C44 add r4, r4, r3 462 .LVL20: 463 .L40: 380:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** } 381:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** ARM GAS /tmp/cc3gA90G.s page 16 382:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** while ((HAL_GetTick() - tickstart) < wait) 383:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** { 384:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** } 464 .loc 1 384 3 is_stmt 1 discriminator 1 view .LVU85 382:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** { 465 .loc 1 382 11 is_stmt 0 discriminator 1 view .LVU86 466 0016 FFF7FEFF bl HAL_GetTick 467 .LVL21: 382:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** { 468 .loc 1 382 25 discriminator 1 view .LVU87 469 001a 401B subs r0, r0, r5 382:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** { 470 .loc 1 382 9 discriminator 1 view .LVU88 471 001c A042 cmp r0, r4 472 001e FAD3 bcc .L40 385:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** } 473 .loc 1 385 1 view .LVU89 474 0020 38BD pop {r3, r4, r5, pc} 475 .LVL22: 476 .L43: 477 .loc 1 385 1 view .LVU90 478 0022 00BF .align 2 479 .L42: 480 0024 00000000 .word .LANCHOR0 481 .cfi_endproc 482 .LFE75: 484 .section .text.HAL_SuspendTick,"ax",%progbits 485 .align 1 486 .weak HAL_SuspendTick 487 .syntax unified 488 .thumb 489 .thumb_func 490 .fpu softvfp 492 HAL_SuspendTick: 493 .LFB76: 386:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 387:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** /** 388:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @brief Suspend Tick increment. 389:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @note In the default implementation , SysTick timer is the source of time base. It is 390:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * used to generate interrupts at regular time intervals. Once HAL_SuspendTick() 391:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * is called, the SysTick interrupt will be disabled and so Tick increment 392:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * is suspended. 393:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @note This function is declared as __weak to be overwritten in case of other 394:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * implementations in user file. 395:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @retval None 396:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** */ 397:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** __weak void HAL_SuspendTick(void) 398:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** { 494 .loc 1 398 1 is_stmt 1 view -0 495 .cfi_startproc 496 @ args = 0, pretend = 0, frame = 0 497 @ frame_needed = 0, uses_anonymous_args = 0 498 @ link register save eliminated. 399:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** /* Disable SysTick Interrupt */ 400:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** CLEAR_BIT(SysTick->CTRL, SysTick_CTRL_TICKINT_Msk); 499 .loc 1 400 3 view .LVU92 500 0000 024A ldr r2, .L45 ARM GAS /tmp/cc3gA90G.s page 17 501 0002 1368 ldr r3, [r2] 502 0004 23F00203 bic r3, r3, #2 503 0008 1360 str r3, [r2] 401:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** } 504 .loc 1 401 1 is_stmt 0 view .LVU93 505 000a 7047 bx lr 506 .L46: 507 .align 2 508 .L45: 509 000c 10E000E0 .word -536813552 510 .cfi_endproc 511 .LFE76: 513 .section .text.HAL_ResumeTick,"ax",%progbits 514 .align 1 515 .weak HAL_ResumeTick 516 .syntax unified 517 .thumb 518 .thumb_func 519 .fpu softvfp 521 HAL_ResumeTick: 522 .LFB77: 402:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 403:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** /** 404:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @brief Resume Tick increment. 405:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @note In the default implementation , SysTick timer is the source of time base. It is 406:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * used to generate interrupts at regular time intervals. Once HAL_ResumeTick() 407:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * is called, the SysTick interrupt will be enabled and so Tick increment 408:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * is resumed. 409:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @note This function is declared as __weak to be overwritten in case of other 410:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * implementations in user file. 411:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @retval None 412:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** */ 413:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** __weak void HAL_ResumeTick(void) 414:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** { 523 .loc 1 414 1 is_stmt 1 view -0 524 .cfi_startproc 525 @ args = 0, pretend = 0, frame = 0 526 @ frame_needed = 0, uses_anonymous_args = 0 527 @ link register save eliminated. 415:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** /* Enable SysTick Interrupt */ 416:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** SET_BIT(SysTick->CTRL, SysTick_CTRL_TICKINT_Msk); 528 .loc 1 416 3 view .LVU95 529 0000 024A ldr r2, .L48 530 0002 1368 ldr r3, [r2] 531 0004 43F00203 orr r3, r3, #2 532 0008 1360 str r3, [r2] 417:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** } 533 .loc 1 417 1 is_stmt 0 view .LVU96 534 000a 7047 bx lr 535 .L49: 536 .align 2 537 .L48: 538 000c 10E000E0 .word -536813552 539 .cfi_endproc 540 .LFE77: 542 .section .text.HAL_GetHalVersion,"ax",%progbits 543 .align 1 ARM GAS /tmp/cc3gA90G.s page 18 544 .global HAL_GetHalVersion 545 .syntax unified 546 .thumb 547 .thumb_func 548 .fpu softvfp 550 HAL_GetHalVersion: 551 .LFB78: 418:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 419:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** /** 420:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @brief Returns the HAL revision 421:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @retval version 0xXYZR (8bits for each decimal, R for RC) 422:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** */ 423:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** uint32_t HAL_GetHalVersion(void) 424:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** { 552 .loc 1 424 1 is_stmt 1 view -0 553 .cfi_startproc 554 @ args = 0, pretend = 0, frame = 0 555 @ frame_needed = 0, uses_anonymous_args = 0 556 @ link register save eliminated. 425:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** return __STM32F1xx_HAL_VERSION; 557 .loc 1 425 3 view .LVU98 426:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** } 558 .loc 1 426 1 is_stmt 0 view .LVU99 559 0000 0048 ldr r0, .L51 560 0002 7047 bx lr 561 .L52: 562 .align 2 563 .L51: 564 0004 00070101 .word 16844544 565 .cfi_endproc 566 .LFE78: 568 .section .text.HAL_GetREVID,"ax",%progbits 569 .align 1 570 .global HAL_GetREVID 571 .syntax unified 572 .thumb 573 .thumb_func 574 .fpu softvfp 576 HAL_GetREVID: 577 .LFB79: 427:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 428:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** /** 429:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @brief Returns the device revision identifier. 430:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * Note: On devices STM32F10xx8 and STM32F10xxB, 431:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * STM32F101xC/D/E and STM32F103xC/D/E, 432:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * STM32F101xF/G and STM32F103xF/G 433:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * STM32F10xx4 and STM32F10xx6 434:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * Debug registers DBGMCU_IDCODE and DBGMCU_CR are accessible only in 435:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * debug mode (not accessible by the user software in normal mode). 436:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * Refer to errata sheet of these devices for more details. 437:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @retval Device revision identifier 438:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** */ 439:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** uint32_t HAL_GetREVID(void) 440:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** { 578 .loc 1 440 1 is_stmt 1 view -0 579 .cfi_startproc 580 @ args = 0, pretend = 0, frame = 0 ARM GAS /tmp/cc3gA90G.s page 19 581 @ frame_needed = 0, uses_anonymous_args = 0 582 @ link register save eliminated. 441:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** return ((DBGMCU->IDCODE) >> DBGMCU_IDCODE_REV_ID_Pos); 583 .loc 1 441 3 view .LVU101 584 .loc 1 441 18 is_stmt 0 view .LVU102 585 0000 014B ldr r3, .L54 586 0002 1868 ldr r0, [r3] 442:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** } 587 .loc 1 442 1 view .LVU103 588 0004 000C lsrs r0, r0, #16 589 0006 7047 bx lr 590 .L55: 591 .align 2 592 .L54: 593 0008 002004E0 .word -536600576 594 .cfi_endproc 595 .LFE79: 597 .section .text.HAL_GetDEVID,"ax",%progbits 598 .align 1 599 .global HAL_GetDEVID 600 .syntax unified 601 .thumb 602 .thumb_func 603 .fpu softvfp 605 HAL_GetDEVID: 606 .LFB80: 443:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 444:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** /** 445:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @brief Returns the device identifier. 446:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * Note: On devices STM32F10xx8 and STM32F10xxB, 447:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * STM32F101xC/D/E and STM32F103xC/D/E, 448:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * STM32F101xF/G and STM32F103xF/G 449:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * STM32F10xx4 and STM32F10xx6 450:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * Debug registers DBGMCU_IDCODE and DBGMCU_CR are accessible only in 451:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * debug mode (not accessible by the user software in normal mode). 452:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * Refer to errata sheet of these devices for more details. 453:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @retval Device identifier 454:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** */ 455:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** uint32_t HAL_GetDEVID(void) 456:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** { 607 .loc 1 456 1 is_stmt 1 view -0 608 .cfi_startproc 609 @ args = 0, pretend = 0, frame = 0 610 @ frame_needed = 0, uses_anonymous_args = 0 611 @ link register save eliminated. 457:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** return ((DBGMCU->IDCODE) & IDCODE_DEVID_MASK); 612 .loc 1 457 3 view .LVU105 613 .loc 1 457 18 is_stmt 0 view .LVU106 614 0000 024B ldr r3, .L57 615 0002 1868 ldr r0, [r3] 458:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** } 616 .loc 1 458 1 view .LVU107 617 0004 C0F30B00 ubfx r0, r0, #0, #12 618 0008 7047 bx lr 619 .L58: 620 000a 00BF .align 2 621 .L57: ARM GAS /tmp/cc3gA90G.s page 20 622 000c 002004E0 .word -536600576 623 .cfi_endproc 624 .LFE80: 626 .section .text.HAL_GetUIDw0,"ax",%progbits 627 .align 1 628 .global HAL_GetUIDw0 629 .syntax unified 630 .thumb 631 .thumb_func 632 .fpu softvfp 634 HAL_GetUIDw0: 635 .LFB81: 459:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 460:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** /** 461:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @brief Returns first word of the unique device identifier (UID based on 96 bits) 462:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @retval Device identifier 463:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** */ 464:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** uint32_t HAL_GetUIDw0(void) 465:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** { 636 .loc 1 465 1 is_stmt 1 view -0 637 .cfi_startproc 638 @ args = 0, pretend = 0, frame = 0 639 @ frame_needed = 0, uses_anonymous_args = 0 640 @ link register save eliminated. 466:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** return(READ_REG(*((uint32_t *)UID_BASE))); 641 .loc 1 466 4 view .LVU109 467:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** } 642 .loc 1 467 1 is_stmt 0 view .LVU110 643 0000 014B ldr r3, .L60 644 0002 1868 ldr r0, [r3] 645 0004 7047 bx lr 646 .L61: 647 0006 00BF .align 2 648 .L60: 649 0008 E8F7FF1F .word 536868840 650 .cfi_endproc 651 .LFE81: 653 .section .text.HAL_GetUIDw1,"ax",%progbits 654 .align 1 655 .global HAL_GetUIDw1 656 .syntax unified 657 .thumb 658 .thumb_func 659 .fpu softvfp 661 HAL_GetUIDw1: 662 .LFB82: 468:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 469:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** /** 470:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @brief Returns second word of the unique device identifier (UID based on 96 bits) 471:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @retval Device identifier 472:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** */ 473:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** uint32_t HAL_GetUIDw1(void) 474:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** { 663 .loc 1 474 1 is_stmt 1 view -0 664 .cfi_startproc 665 @ args = 0, pretend = 0, frame = 0 666 @ frame_needed = 0, uses_anonymous_args = 0 ARM GAS /tmp/cc3gA90G.s page 21 667 @ link register save eliminated. 475:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** return(READ_REG(*((uint32_t *)(UID_BASE + 4U)))); 668 .loc 1 475 4 view .LVU112 476:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** } 669 .loc 1 476 1 is_stmt 0 view .LVU113 670 0000 014B ldr r3, .L63 671 0002 1868 ldr r0, [r3] 672 0004 7047 bx lr 673 .L64: 674 0006 00BF .align 2 675 .L63: 676 0008 ECF7FF1F .word 536868844 677 .cfi_endproc 678 .LFE82: 680 .section .text.HAL_GetUIDw2,"ax",%progbits 681 .align 1 682 .global HAL_GetUIDw2 683 .syntax unified 684 .thumb 685 .thumb_func 686 .fpu softvfp 688 HAL_GetUIDw2: 689 .LFB83: 477:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 478:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** /** 479:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @brief Returns third word of the unique device identifier (UID based on 96 bits) 480:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @retval Device identifier 481:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** */ 482:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** uint32_t HAL_GetUIDw2(void) 483:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** { 690 .loc 1 483 1 is_stmt 1 view -0 691 .cfi_startproc 692 @ args = 0, pretend = 0, frame = 0 693 @ frame_needed = 0, uses_anonymous_args = 0 694 @ link register save eliminated. 484:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** return(READ_REG(*((uint32_t *)(UID_BASE + 8U)))); 695 .loc 1 484 4 view .LVU115 485:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** } 696 .loc 1 485 1 is_stmt 0 view .LVU116 697 0000 014B ldr r3, .L66 698 0002 1868 ldr r0, [r3] 699 0004 7047 bx lr 700 .L67: 701 0006 00BF .align 2 702 .L66: 703 0008 F0F7FF1F .word 536868848 704 .cfi_endproc 705 .LFE83: 707 .section .text.HAL_DBGMCU_EnableDBGSleepMode,"ax",%progbits 708 .align 1 709 .global HAL_DBGMCU_EnableDBGSleepMode 710 .syntax unified 711 .thumb 712 .thumb_func 713 .fpu softvfp 715 HAL_DBGMCU_EnableDBGSleepMode: 716 .LFB84: ARM GAS /tmp/cc3gA90G.s page 22 486:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 487:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** /** 488:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @brief Enable the Debug Module during SLEEP mode 489:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @retval None 490:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** */ 491:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** void HAL_DBGMCU_EnableDBGSleepMode(void) 492:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** { 717 .loc 1 492 1 is_stmt 1 view -0 718 .cfi_startproc 719 @ args = 0, pretend = 0, frame = 0 720 @ frame_needed = 0, uses_anonymous_args = 0 721 @ link register save eliminated. 493:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_SLEEP); 722 .loc 1 493 3 view .LVU118 723 0000 024A ldr r2, .L69 724 0002 5368 ldr r3, [r2, #4] 725 0004 43F00103 orr r3, r3, #1 726 0008 5360 str r3, [r2, #4] 494:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** } 727 .loc 1 494 1 is_stmt 0 view .LVU119 728 000a 7047 bx lr 729 .L70: 730 .align 2 731 .L69: 732 000c 002004E0 .word -536600576 733 .cfi_endproc 734 .LFE84: 736 .section .text.HAL_DBGMCU_DisableDBGSleepMode,"ax",%progbits 737 .align 1 738 .global HAL_DBGMCU_DisableDBGSleepMode 739 .syntax unified 740 .thumb 741 .thumb_func 742 .fpu softvfp 744 HAL_DBGMCU_DisableDBGSleepMode: 745 .LFB85: 495:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 496:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** /** 497:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @brief Disable the Debug Module during SLEEP mode 498:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * Note: On devices STM32F10xx8 and STM32F10xxB, 499:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * STM32F101xC/D/E and STM32F103xC/D/E, 500:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * STM32F101xF/G and STM32F103xF/G 501:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * STM32F10xx4 and STM32F10xx6 502:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * Debug registers DBGMCU_IDCODE and DBGMCU_CR are accessible only in 503:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * debug mode (not accessible by the user software in normal mode). 504:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * Refer to errata sheet of these devices for more details. 505:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @retval None 506:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** */ 507:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** void HAL_DBGMCU_DisableDBGSleepMode(void) 508:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** { 746 .loc 1 508 1 is_stmt 1 view -0 747 .cfi_startproc 748 @ args = 0, pretend = 0, frame = 0 749 @ frame_needed = 0, uses_anonymous_args = 0 750 @ link register save eliminated. 509:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_SLEEP); 751 .loc 1 509 3 view .LVU121 ARM GAS /tmp/cc3gA90G.s page 23 752 0000 024A ldr r2, .L72 753 0002 5368 ldr r3, [r2, #4] 754 0004 23F00103 bic r3, r3, #1 755 0008 5360 str r3, [r2, #4] 510:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** } 756 .loc 1 510 1 is_stmt 0 view .LVU122 757 000a 7047 bx lr 758 .L73: 759 .align 2 760 .L72: 761 000c 002004E0 .word -536600576 762 .cfi_endproc 763 .LFE85: 765 .section .text.HAL_DBGMCU_EnableDBGStopMode,"ax",%progbits 766 .align 1 767 .global HAL_DBGMCU_EnableDBGStopMode 768 .syntax unified 769 .thumb 770 .thumb_func 771 .fpu softvfp 773 HAL_DBGMCU_EnableDBGStopMode: 774 .LFB86: 511:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 512:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** /** 513:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @brief Enable the Debug Module during STOP mode 514:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * Note: On devices STM32F10xx8 and STM32F10xxB, 515:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * STM32F101xC/D/E and STM32F103xC/D/E, 516:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * STM32F101xF/G and STM32F103xF/G 517:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * STM32F10xx4 and STM32F10xx6 518:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * Debug registers DBGMCU_IDCODE and DBGMCU_CR are accessible only in 519:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * debug mode (not accessible by the user software in normal mode). 520:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * Refer to errata sheet of these devices for more details. 521:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * Note: On all STM32F1 devices: 522:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * If the system tick timer interrupt is enabled during the Stop mode 523:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * debug (DBG_STOP bit set in the DBGMCU_CR register ), it will wakeup 524:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * the system from Stop mode. 525:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * Workaround: To debug the Stop mode, disable the system tick timer 526:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * interrupt. 527:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * Refer to errata sheet of these devices for more details. 528:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * Note: On all STM32F1 devices: 529:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * If the system tick timer interrupt is enabled during the Stop mode 530:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * debug (DBG_STOP bit set in the DBGMCU_CR register ), it will wakeup 531:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * the system from Stop mode. 532:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * Workaround: To debug the Stop mode, disable the system tick timer 533:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * interrupt. 534:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * Refer to errata sheet of these devices for more details. 535:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @retval None 536:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** */ 537:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** void HAL_DBGMCU_EnableDBGStopMode(void) 538:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** { 775 .loc 1 538 1 is_stmt 1 view -0 776 .cfi_startproc 777 @ args = 0, pretend = 0, frame = 0 778 @ frame_needed = 0, uses_anonymous_args = 0 779 @ link register save eliminated. 539:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_STOP); 780 .loc 1 539 3 view .LVU124 ARM GAS /tmp/cc3gA90G.s page 24 781 0000 024A ldr r2, .L75 782 0002 5368 ldr r3, [r2, #4] 783 0004 43F00203 orr r3, r3, #2 784 0008 5360 str r3, [r2, #4] 540:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** } 785 .loc 1 540 1 is_stmt 0 view .LVU125 786 000a 7047 bx lr 787 .L76: 788 .align 2 789 .L75: 790 000c 002004E0 .word -536600576 791 .cfi_endproc 792 .LFE86: 794 .section .text.HAL_DBGMCU_DisableDBGStopMode,"ax",%progbits 795 .align 1 796 .global HAL_DBGMCU_DisableDBGStopMode 797 .syntax unified 798 .thumb 799 .thumb_func 800 .fpu softvfp 802 HAL_DBGMCU_DisableDBGStopMode: 803 .LFB87: 541:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 542:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** /** 543:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @brief Disable the Debug Module during STOP mode 544:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * Note: On devices STM32F10xx8 and STM32F10xxB, 545:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * STM32F101xC/D/E and STM32F103xC/D/E, 546:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * STM32F101xF/G and STM32F103xF/G 547:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * STM32F10xx4 and STM32F10xx6 548:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * Debug registers DBGMCU_IDCODE and DBGMCU_CR are accessible only in 549:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * debug mode (not accessible by the user software in normal mode). 550:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * Refer to errata sheet of these devices for more details. 551:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @retval None 552:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** */ 553:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** void HAL_DBGMCU_DisableDBGStopMode(void) 554:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** { 804 .loc 1 554 1 is_stmt 1 view -0 805 .cfi_startproc 806 @ args = 0, pretend = 0, frame = 0 807 @ frame_needed = 0, uses_anonymous_args = 0 808 @ link register save eliminated. 555:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_STOP); 809 .loc 1 555 3 view .LVU127 810 0000 024A ldr r2, .L78 811 0002 5368 ldr r3, [r2, #4] 812 0004 23F00203 bic r3, r3, #2 813 0008 5360 str r3, [r2, #4] 556:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** } 814 .loc 1 556 1 is_stmt 0 view .LVU128 815 000a 7047 bx lr 816 .L79: 817 .align 2 818 .L78: 819 000c 002004E0 .word -536600576 820 .cfi_endproc 821 .LFE87: 823 .section .text.HAL_DBGMCU_EnableDBGStandbyMode,"ax",%progbits ARM GAS /tmp/cc3gA90G.s page 25 824 .align 1 825 .global HAL_DBGMCU_EnableDBGStandbyMode 826 .syntax unified 827 .thumb 828 .thumb_func 829 .fpu softvfp 831 HAL_DBGMCU_EnableDBGStandbyMode: 832 .LFB88: 557:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 558:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** /** 559:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @brief Enable the Debug Module during STANDBY mode 560:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * Note: On devices STM32F10xx8 and STM32F10xxB, 561:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * STM32F101xC/D/E and STM32F103xC/D/E, 562:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * STM32F101xF/G and STM32F103xF/G 563:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * STM32F10xx4 and STM32F10xx6 564:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * Debug registers DBGMCU_IDCODE and DBGMCU_CR are accessible only in 565:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * debug mode (not accessible by the user software in normal mode). 566:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * Refer to errata sheet of these devices for more details. 567:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @retval None 568:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** */ 569:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** void HAL_DBGMCU_EnableDBGStandbyMode(void) 570:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** { 833 .loc 1 570 1 is_stmt 1 view -0 834 .cfi_startproc 835 @ args = 0, pretend = 0, frame = 0 836 @ frame_needed = 0, uses_anonymous_args = 0 837 @ link register save eliminated. 571:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_STANDBY); 838 .loc 1 571 3 view .LVU130 839 0000 024A ldr r2, .L81 840 0002 5368 ldr r3, [r2, #4] 841 0004 43F00403 orr r3, r3, #4 842 0008 5360 str r3, [r2, #4] 572:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** } 843 .loc 1 572 1 is_stmt 0 view .LVU131 844 000a 7047 bx lr 845 .L82: 846 .align 2 847 .L81: 848 000c 002004E0 .word -536600576 849 .cfi_endproc 850 .LFE88: 852 .section .text.HAL_DBGMCU_DisableDBGStandbyMode,"ax",%progbits 853 .align 1 854 .global HAL_DBGMCU_DisableDBGStandbyMode 855 .syntax unified 856 .thumb 857 .thumb_func 858 .fpu softvfp 860 HAL_DBGMCU_DisableDBGStandbyMode: 861 .LFB89: 573:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 574:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** /** 575:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @brief Disable the Debug Module during STANDBY mode 576:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * Note: On devices STM32F10xx8 and STM32F10xxB, 577:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * STM32F101xC/D/E and STM32F103xC/D/E, 578:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * STM32F101xF/G and STM32F103xF/G ARM GAS /tmp/cc3gA90G.s page 26 579:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * STM32F10xx4 and STM32F10xx6 580:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * Debug registers DBGMCU_IDCODE and DBGMCU_CR are accessible only in 581:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * debug mode (not accessible by the user software in normal mode). 582:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * Refer to errata sheet of these devices for more details. 583:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @retval None 584:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** */ 585:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** void HAL_DBGMCU_DisableDBGStandbyMode(void) 586:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** { 862 .loc 1 586 1 is_stmt 1 view -0 863 .cfi_startproc 864 @ args = 0, pretend = 0, frame = 0 865 @ frame_needed = 0, uses_anonymous_args = 0 866 @ link register save eliminated. 587:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_STANDBY); 867 .loc 1 587 3 view .LVU133 868 0000 024A ldr r2, .L84 869 0002 5368 ldr r3, [r2, #4] 870 0004 23F00403 bic r3, r3, #4 871 0008 5360 str r3, [r2, #4] 588:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** } 872 .loc 1 588 1 is_stmt 0 view .LVU134 873 000a 7047 bx lr 874 .L85: 875 .align 2 876 .L84: 877 000c 002004E0 .word -536600576 878 .cfi_endproc 879 .LFE89: 881 .global uwTickFreq 882 .global uwTickPrio 883 .comm uwTick,4,4 884 .section .data.uwTickFreq,"aw" 885 .set .LANCHOR0,. + 0 888 uwTickFreq: 889 0000 01 .byte 1 890 .section .data.uwTickPrio,"aw" 891 .align 2 892 .set .LANCHOR1,. + 0 895 uwTickPrio: 896 0000 10000000 .word 16 897 .text 898 .Letext0: 899 .file 2 "/usr/arm-none-eabi/include/machine/_default_types.h" 900 .file 3 "/usr/arm-none-eabi/include/sys/_stdint.h" 901 .file 4 "Drivers/CMSIS/Include/core_cm3.h" 902 .file 5 "Drivers/CMSIS/Device/ST/STM32F1xx/Include/system_stm32f1xx.h" 903 .file 6 "Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f103xb.h" 904 .file 7 "Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_def.h" 905 .file 8 "Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal.h" 906 .file 9 "Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_cortex.h" ARM GAS /tmp/cc3gA90G.s page 27 DEFINED SYMBOLS *ABS*:0000000000000000 stm32f1xx_hal.c /tmp/cc3gA90G.s:16 .text.HAL_MspInit:0000000000000000 $t /tmp/cc3gA90G.s:24 .text.HAL_MspInit:0000000000000000 HAL_MspInit /tmp/cc3gA90G.s:38 .text.HAL_MspDeInit:0000000000000000 $t /tmp/cc3gA90G.s:45 .text.HAL_MspDeInit:0000000000000000 HAL_MspDeInit /tmp/cc3gA90G.s:58 .text.HAL_DeInit:0000000000000000 $t /tmp/cc3gA90G.s:65 .text.HAL_DeInit:0000000000000000 HAL_DeInit /tmp/cc3gA90G.s:97 .text.HAL_DeInit:000000000000001c $d /tmp/cc3gA90G.s:102 .text.HAL_InitTick:0000000000000000 $t /tmp/cc3gA90G.s:109 .text.HAL_InitTick:0000000000000000 HAL_InitTick /tmp/cc3gA90G.s:172 .text.HAL_InitTick:0000000000000040 $d /tmp/cc3gA90G.s:179 .text.HAL_Init:0000000000000000 $t /tmp/cc3gA90G.s:186 .text.HAL_Init:0000000000000000 HAL_Init /tmp/cc3gA90G.s:220 .text.HAL_Init:0000000000000020 $d /tmp/cc3gA90G.s:225 .text.HAL_IncTick:0000000000000000 $t /tmp/cc3gA90G.s:232 .text.HAL_IncTick:0000000000000000 HAL_IncTick /tmp/cc3gA90G.s:252 .text.HAL_IncTick:0000000000000010 $d *COM*:0000000000000004 uwTick /tmp/cc3gA90G.s:258 .text.HAL_GetTick:0000000000000000 $t /tmp/cc3gA90G.s:265 .text.HAL_GetTick:0000000000000000 HAL_GetTick /tmp/cc3gA90G.s:281 .text.HAL_GetTick:0000000000000008 $d /tmp/cc3gA90G.s:286 .text.HAL_GetTickPrio:0000000000000000 $t /tmp/cc3gA90G.s:293 .text.HAL_GetTickPrio:0000000000000000 HAL_GetTickPrio /tmp/cc3gA90G.s:308 .text.HAL_GetTickPrio:0000000000000008 $d /tmp/cc3gA90G.s:313 .text.HAL_SetTickFreq:0000000000000000 $t /tmp/cc3gA90G.s:320 .text.HAL_SetTickFreq:0000000000000000 HAL_SetTickFreq /tmp/cc3gA90G.s:387 .text.HAL_SetTickFreq:000000000000002c $d /tmp/cc3gA90G.s:394 .text.HAL_GetTickFreq:0000000000000000 $t /tmp/cc3gA90G.s:401 .text.HAL_GetTickFreq:0000000000000000 HAL_GetTickFreq /tmp/cc3gA90G.s:416 .text.HAL_GetTickFreq:0000000000000008 $d /tmp/cc3gA90G.s:421 .text.HAL_Delay:0000000000000000 $t /tmp/cc3gA90G.s:428 .text.HAL_Delay:0000000000000000 HAL_Delay /tmp/cc3gA90G.s:480 .text.HAL_Delay:0000000000000024 $d /tmp/cc3gA90G.s:485 .text.HAL_SuspendTick:0000000000000000 $t /tmp/cc3gA90G.s:492 .text.HAL_SuspendTick:0000000000000000 HAL_SuspendTick /tmp/cc3gA90G.s:509 .text.HAL_SuspendTick:000000000000000c $d /tmp/cc3gA90G.s:514 .text.HAL_ResumeTick:0000000000000000 $t /tmp/cc3gA90G.s:521 .text.HAL_ResumeTick:0000000000000000 HAL_ResumeTick /tmp/cc3gA90G.s:538 .text.HAL_ResumeTick:000000000000000c $d /tmp/cc3gA90G.s:543 .text.HAL_GetHalVersion:0000000000000000 $t /tmp/cc3gA90G.s:550 .text.HAL_GetHalVersion:0000000000000000 HAL_GetHalVersion /tmp/cc3gA90G.s:564 .text.HAL_GetHalVersion:0000000000000004 $d /tmp/cc3gA90G.s:569 .text.HAL_GetREVID:0000000000000000 $t /tmp/cc3gA90G.s:576 .text.HAL_GetREVID:0000000000000000 HAL_GetREVID /tmp/cc3gA90G.s:593 .text.HAL_GetREVID:0000000000000008 $d /tmp/cc3gA90G.s:598 .text.HAL_GetDEVID:0000000000000000 $t /tmp/cc3gA90G.s:605 .text.HAL_GetDEVID:0000000000000000 HAL_GetDEVID /tmp/cc3gA90G.s:622 .text.HAL_GetDEVID:000000000000000c $d /tmp/cc3gA90G.s:627 .text.HAL_GetUIDw0:0000000000000000 $t /tmp/cc3gA90G.s:634 .text.HAL_GetUIDw0:0000000000000000 HAL_GetUIDw0 /tmp/cc3gA90G.s:649 .text.HAL_GetUIDw0:0000000000000008 $d /tmp/cc3gA90G.s:654 .text.HAL_GetUIDw1:0000000000000000 $t /tmp/cc3gA90G.s:661 .text.HAL_GetUIDw1:0000000000000000 HAL_GetUIDw1 /tmp/cc3gA90G.s:676 .text.HAL_GetUIDw1:0000000000000008 $d /tmp/cc3gA90G.s:681 .text.HAL_GetUIDw2:0000000000000000 $t /tmp/cc3gA90G.s:688 .text.HAL_GetUIDw2:0000000000000000 HAL_GetUIDw2 ARM GAS /tmp/cc3gA90G.s page 28 /tmp/cc3gA90G.s:703 .text.HAL_GetUIDw2:0000000000000008 $d /tmp/cc3gA90G.s:708 .text.HAL_DBGMCU_EnableDBGSleepMode:0000000000000000 $t /tmp/cc3gA90G.s:715 .text.HAL_DBGMCU_EnableDBGSleepMode:0000000000000000 HAL_DBGMCU_EnableDBGSleepMode /tmp/cc3gA90G.s:732 .text.HAL_DBGMCU_EnableDBGSleepMode:000000000000000c $d /tmp/cc3gA90G.s:737 .text.HAL_DBGMCU_DisableDBGSleepMode:0000000000000000 $t /tmp/cc3gA90G.s:744 .text.HAL_DBGMCU_DisableDBGSleepMode:0000000000000000 HAL_DBGMCU_DisableDBGSleepMode /tmp/cc3gA90G.s:761 .text.HAL_DBGMCU_DisableDBGSleepMode:000000000000000c $d /tmp/cc3gA90G.s:766 .text.HAL_DBGMCU_EnableDBGStopMode:0000000000000000 $t /tmp/cc3gA90G.s:773 .text.HAL_DBGMCU_EnableDBGStopMode:0000000000000000 HAL_DBGMCU_EnableDBGStopMode /tmp/cc3gA90G.s:790 .text.HAL_DBGMCU_EnableDBGStopMode:000000000000000c $d /tmp/cc3gA90G.s:795 .text.HAL_DBGMCU_DisableDBGStopMode:0000000000000000 $t /tmp/cc3gA90G.s:802 .text.HAL_DBGMCU_DisableDBGStopMode:0000000000000000 HAL_DBGMCU_DisableDBGStopMode /tmp/cc3gA90G.s:819 .text.HAL_DBGMCU_DisableDBGStopMode:000000000000000c $d /tmp/cc3gA90G.s:824 .text.HAL_DBGMCU_EnableDBGStandbyMode:0000000000000000 $t /tmp/cc3gA90G.s:831 .text.HAL_DBGMCU_EnableDBGStandbyMode:0000000000000000 HAL_DBGMCU_EnableDBGStandbyMode /tmp/cc3gA90G.s:848 .text.HAL_DBGMCU_EnableDBGStandbyMode:000000000000000c $d /tmp/cc3gA90G.s:853 .text.HAL_DBGMCU_DisableDBGStandbyMode:0000000000000000 $t /tmp/cc3gA90G.s:860 .text.HAL_DBGMCU_DisableDBGStandbyMode:0000000000000000 HAL_DBGMCU_DisableDBGStandbyMode /tmp/cc3gA90G.s:877 .text.HAL_DBGMCU_DisableDBGStandbyMode:000000000000000c $d /tmp/cc3gA90G.s:888 .data.uwTickFreq:0000000000000000 uwTickFreq /tmp/cc3gA90G.s:895 .data.uwTickPrio:0000000000000000 uwTickPrio /tmp/cc3gA90G.s:891 .data.uwTickPrio:0000000000000000 $d UNDEFINED SYMBOLS HAL_SYSTICK_Config HAL_NVIC_SetPriority SystemCoreClock HAL_NVIC_SetPriorityGrouping LL_Init1msTick