ARM GAS /tmp/cchqsFTV.s page 1 1 .cpu cortex-m3 2 .arch armv7-m 3 .fpu softvfp 4 .eabi_attribute 20, 1 5 .eabi_attribute 21, 1 6 .eabi_attribute 23, 3 7 .eabi_attribute 24, 1 8 .eabi_attribute 25, 1 9 .eabi_attribute 26, 1 10 .eabi_attribute 30, 1 11 .eabi_attribute 34, 1 12 .eabi_attribute 18, 4 13 .file "stm32f1xx_hal.c" 14 .text 15 .Ltext0: 16 .cfi_sections .debug_frame 17 .section .text.HAL_MspInit,"ax",%progbits 18 .align 1 19 .weak HAL_MspInit 20 .syntax unified 21 .thumb 22 .thumb_func 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 **** ****************************************************************************** 9:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @attention 10:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * 11:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * Copyright (c) 2016 STMicroelectronics. 12:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * All rights reserved. 13:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * 14:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * This software is licensed under terms that can be found in the LICENSE file 15:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * in the root directory of this software component. 16:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * If no LICENSE file comes with this software, it is provided AS-IS. 17:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * 18:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** ****************************************************************************** 19:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** @verbatim 20:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** ============================================================================== 21:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** ##### How to use this driver ##### 22:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** ============================================================================== 23:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** [..] 24:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** The common HAL driver contains a set of generic and common APIs that can be 25:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** used by the PPP peripheral drivers and the user to start using the HAL. 26:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** [..] 27:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** The HAL contains two APIs' categories: 28:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** (+) Common HAL APIs 29:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** (+) Services HAL APIs 30:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 31:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** @endverbatim 32:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** ****************************************************************************** ARM GAS /tmp/cchqsFTV.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 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 (0x09U) /*!< [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/cchqsFTV.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/cchqsFTV.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/cchqsFTV.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 44 HAL_MspDeInit: 45 .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 **** { 46 .loc 1 212 1 view -0 47 .cfi_startproc 48 @ args = 0, pretend = 0, frame = 0 49 @ frame_needed = 0, uses_anonymous_args = 0 50 @ 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 **** } 51 .loc 1 216 1 view .LVU3 52 0000 7047 bx lr 53 .cfi_endproc 54 .LFE68: 56 .section .text.HAL_DeInit,"ax",%progbits 57 .align 1 58 .global HAL_DeInit 59 .syntax unified 60 .thumb 61 .thumb_func 63 HAL_DeInit: 64 .LFB66: 176:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** /* Reset of all peripherals */ 65 .loc 1 176 1 view -0 66 .cfi_startproc 67 @ args = 0, pretend = 0, frame = 0 68 @ frame_needed = 0, uses_anonymous_args = 0 69 0000 10B5 push {r4, lr} 70 .LCFI0: 71 .cfi_def_cfa_offset 8 72 .cfi_offset 4, -8 73 .cfi_offset 14, -4 ARM GAS /tmp/cchqsFTV.s page 6 178:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** __HAL_RCC_APB1_RELEASE_RESET(); 74 .loc 1 178 3 view .LVU5 75 0002 064B ldr r3, .L5 76 0004 4FF0FF32 mov r2, #-1 77 0008 1A61 str r2, [r3, #16] 179:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 78 .loc 1 179 3 view .LVU6 79 000a 0024 movs r4, #0 80 000c 1C61 str r4, [r3, #16] 181:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** __HAL_RCC_APB2_RELEASE_RESET(); 81 .loc 1 181 3 view .LVU7 82 000e DA60 str r2, [r3, #12] 182:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 83 .loc 1 182 3 view .LVU8 84 0010 DC60 str r4, [r3, #12] 190:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 85 .loc 1 190 3 view .LVU9 86 0012 FFF7FEFF bl HAL_MspDeInit 87 .LVL0: 193:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** } 88 .loc 1 193 3 view .LVU10 194:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 89 .loc 1 194 1 is_stmt 0 view .LVU11 90 0016 2046 mov r0, r4 91 0018 10BD pop {r4, pc} 92 .L6: 93 001a 00BF .align 2 94 .L5: 95 001c 00100240 .word 1073876992 96 .cfi_endproc 97 .LFE66: 99 .section .text.HAL_InitTick,"ax",%progbits 100 .align 1 101 .weak HAL_InitTick 102 .syntax unified 103 .thumb 104 .thumb_func 106 HAL_InitTick: 107 .LVL1: 108 .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. 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 **** */ ARM GAS /tmp/cchqsFTV.s page 7 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 **** { 109 .loc 1 235 1 is_stmt 1 view -0 110 .cfi_startproc 111 @ args = 0, pretend = 0, frame = 0 112 @ frame_needed = 0, uses_anonymous_args = 0 113 .loc 1 235 1 is_stmt 0 view .LVU13 114 0000 10B5 push {r4, lr} 115 .LCFI1: 116 .cfi_def_cfa_offset 8 117 .cfi_offset 4, -8 118 .cfi_offset 14, -4 119 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) 120 .loc 1 237 3 is_stmt 1 view .LVU14 121 .loc 1 237 51 is_stmt 0 view .LVU15 122 0004 0E4B ldr r3, .L13 123 0006 1878 ldrb r0, [r3] @ zero_extendqisi2 124 .LVL2: 125 .loc 1 237 51 view .LVU16 126 0008 4FF47A73 mov r3, #1000 127 000c B3FBF0F3 udiv r3, r3, r0 128 .loc 1 237 7 view .LVU17 129 0010 0C4A ldr r2, .L13+4 130 0012 1068 ldr r0, [r2] 131 0014 B0FBF3F0 udiv r0, r0, r3 132 0018 FFF7FEFF bl HAL_SYSTICK_Config 133 .LVL3: 134 .loc 1 237 6 view .LVU18 135 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)) 136 .loc 1 243 3 is_stmt 1 view .LVU19 137 .loc 1 243 6 is_stmt 0 view .LVU20 138 001e 0F2C cmp r4, #15 139 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; 140 .loc 1 250 12 view .LVU21 141 0022 0120 movs r0, #1 142 0024 0AE0 b .L8 143 .L12: 245:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** uwTickPrio = TickPriority; 144 .loc 1 245 5 is_stmt 1 view .LVU22 145 0026 0022 movs r2, #0 146 0028 2146 mov r1, r4 147 002a 4FF0FF30 mov r0, #-1 ARM GAS /tmp/cchqsFTV.s page 8 148 002e FFF7FEFF bl HAL_NVIC_SetPriority 149 .LVL4: 246:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** } 150 .loc 1 246 5 view .LVU23 246:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** } 151 .loc 1 246 16 is_stmt 0 view .LVU24 152 0032 054B ldr r3, .L13+8 153 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; 154 .loc 1 254 3 is_stmt 1 view .LVU25 155 .loc 1 254 10 is_stmt 0 view .LVU26 156 0036 0020 movs r0, #0 157 0038 00E0 b .L8 158 .L9: 239:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** } 159 .loc 1 239 12 view .LVU27 160 003a 0120 movs r0, #1 161 .L8: 255:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** } 162 .loc 1 255 1 view .LVU28 163 003c 10BD pop {r4, pc} 164 .LVL5: 165 .L14: 166 .loc 1 255 1 view .LVU29 167 003e 00BF .align 2 168 .L13: 169 0040 00000000 .word .LANCHOR0 170 0044 00000000 .word SystemCoreClock 171 0048 00000000 .word .LANCHOR1 172 .cfi_endproc 173 .LFE69: 175 .section .text.HAL_Init,"ax",%progbits 176 .align 1 177 .global HAL_Init 178 .syntax unified 179 .thumb 180 .thumb_func 182 HAL_Init: 183 .LFB65: 143:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** /* Configure Flash prefetch */ 184 .loc 1 143 1 is_stmt 1 view -0 185 .cfi_startproc 186 @ args = 0, pretend = 0, frame = 0 187 @ frame_needed = 0, uses_anonymous_args = 0 188 0000 08B5 push {r3, lr} 189 .LCFI2: 190 .cfi_def_cfa_offset 8 191 .cfi_offset 3, -8 192 .cfi_offset 14, -4 152:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** #endif 193 .loc 1 152 3 view .LVU31 194 0002 074A ldr r2, .L17 195 0004 1368 ldr r3, [r2] 196 0006 43F01003 orr r3, r3, #16 ARM GAS /tmp/cchqsFTV.s page 9 197 000a 1360 str r3, [r2] 157:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 198 .loc 1 157 3 view .LVU32 199 000c 0320 movs r0, #3 200 000e FFF7FEFF bl HAL_NVIC_SetPriorityGrouping 201 .LVL6: 160:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 202 .loc 1 160 3 view .LVU33 203 0012 0F20 movs r0, #15 204 0014 FFF7FEFF bl HAL_InitTick 205 .LVL7: 163:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 206 .loc 1 163 3 view .LVU34 207 0018 FFF7FEFF bl HAL_MspInit 208 .LVL8: 166:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** } 209 .loc 1 166 3 view .LVU35 167:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 210 .loc 1 167 1 is_stmt 0 view .LVU36 211 001c 0020 movs r0, #0 212 001e 08BD pop {r3, pc} 213 .L18: 214 .align 2 215 .L17: 216 0020 00200240 .word 1073881088 217 .cfi_endproc 218 .LFE65: 220 .section .text.HAL_IncTick,"ax",%progbits 221 .align 1 222 .weak HAL_IncTick 223 .syntax unified 224 .thumb 225 .thumb_func 227 HAL_IncTick: 228 .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 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 ARM GAS /tmp/cchqsFTV.s page 10 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 **** { 229 .loc 1 294 1 is_stmt 1 view -0 230 .cfi_startproc 231 @ args = 0, pretend = 0, frame = 0 232 @ frame_needed = 0, uses_anonymous_args = 0 233 @ link register save eliminated. 295:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** uwTick += uwTickFreq; 234 .loc 1 295 3 view .LVU38 235 .loc 1 295 10 is_stmt 0 view .LVU39 236 0000 034A ldr r2, .L20 237 0002 1168 ldr r1, [r2] 238 0004 034B ldr r3, .L20+4 239 0006 1B78 ldrb r3, [r3] @ zero_extendqisi2 240 0008 0B44 add r3, r3, r1 241 000a 1360 str r3, [r2] 296:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** } 242 .loc 1 296 1 view .LVU40 243 000c 7047 bx lr 244 .L21: 245 000e 00BF .align 2 246 .L20: 247 0010 00000000 .word .LANCHOR2 248 0014 00000000 .word .LANCHOR0 249 .cfi_endproc 250 .LFE70: 252 .section .text.HAL_GetTick,"ax",%progbits 253 .align 1 254 .weak HAL_GetTick 255 .syntax unified 256 .thumb 257 .thumb_func 259 HAL_GetTick: 260 .LFB71: 297:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 298:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** /** 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) ARM GAS /tmp/cchqsFTV.s page 11 305:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** { 261 .loc 1 305 1 is_stmt 1 view -0 262 .cfi_startproc 263 @ args = 0, pretend = 0, frame = 0 264 @ frame_needed = 0, uses_anonymous_args = 0 265 @ link register save eliminated. 306:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** return uwTick; 266 .loc 1 306 3 view .LVU42 267 .loc 1 306 10 is_stmt 0 view .LVU43 268 0000 014B ldr r3, .L23 269 0002 1868 ldr r0, [r3] 307:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** } 270 .loc 1 307 1 view .LVU44 271 0004 7047 bx lr 272 .L24: 273 0006 00BF .align 2 274 .L23: 275 0008 00000000 .word .LANCHOR2 276 .cfi_endproc 277 .LFE71: 279 .section .text.HAL_GetTickPrio,"ax",%progbits 280 .align 1 281 .global HAL_GetTickPrio 282 .syntax unified 283 .thumb 284 .thumb_func 286 HAL_GetTickPrio: 287 .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 **** { 288 .loc 1 314 1 is_stmt 1 view -0 289 .cfi_startproc 290 @ args = 0, pretend = 0, frame = 0 291 @ frame_needed = 0, uses_anonymous_args = 0 292 @ link register save eliminated. 315:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** return uwTickPrio; 293 .loc 1 315 3 view .LVU46 316:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** } 294 .loc 1 316 1 is_stmt 0 view .LVU47 295 0000 014B ldr r3, .L26 296 0002 1868 ldr r0, [r3] 297 0004 7047 bx lr 298 .L27: 299 0006 00BF .align 2 300 .L26: 301 0008 00000000 .word .LANCHOR1 302 .cfi_endproc 303 .LFE72: 305 .section .text.HAL_SetTickFreq,"ax",%progbits 306 .align 1 307 .global HAL_SetTickFreq 308 .syntax unified ARM GAS /tmp/cchqsFTV.s page 12 309 .thumb 310 .thumb_func 312 HAL_SetTickFreq: 313 .LVL9: 314 .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 **** { 315 .loc 1 323 1 is_stmt 1 view -0 316 .cfi_startproc 317 @ args = 0, pretend = 0, frame = 0 318 @ frame_needed = 0, uses_anonymous_args = 0 319 .loc 1 323 1 is_stmt 0 view .LVU49 320 0000 10B5 push {r4, lr} 321 .LCFI3: 322 .cfi_def_cfa_offset 8 323 .cfi_offset 4, -8 324 .cfi_offset 14, -4 324:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** HAL_StatusTypeDef status = HAL_OK; 325 .loc 1 324 3 is_stmt 1 view .LVU50 326 .LVL10: 325:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** HAL_TickFreqTypeDef prevTickFreq; 327 .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)); 328 .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) 329 .loc 1 329 3 view .LVU53 330 .loc 1 329 18 is_stmt 0 view .LVU54 331 0002 084B ldr r3, .L33 332 0004 1C78 ldrb r4, [r3] @ zero_extendqisi2 333 .loc 1 329 6 view .LVU55 334 0006 8442 cmp r4, r0 335 0008 01D1 bne .L32 324:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** HAL_TickFreqTypeDef prevTickFreq; 336 .loc 1 324 21 view .LVU56 337 000a 0020 movs r0, #0 338 .LVL11: 339 .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; 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 **** 340:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** if (status != HAL_OK) 341:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** { 342:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** /* Restore previous tick frequency */ ARM GAS /tmp/cchqsFTV.s page 13 343:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** uwTickFreq = prevTickFreq; 344:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** } 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 **** return status; 340 .loc 1 347 3 is_stmt 1 view .LVU57 348:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** } 341 .loc 1 348 1 is_stmt 0 view .LVU58 342 000c 10BD pop {r4, pc} 343 .LVL12: 344 .L32: 332:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 345 .loc 1 332 5 is_stmt 1 view .LVU59 335:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 346 .loc 1 335 5 view .LVU60 335:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 347 .loc 1 335 16 is_stmt 0 view .LVU61 348 000e 1870 strb r0, [r3] 338:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 349 .loc 1 338 5 is_stmt 1 view .LVU62 338:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 350 .loc 1 338 14 is_stmt 0 view .LVU63 351 0010 054B ldr r3, .L33+4 352 0012 1868 ldr r0, [r3] 353 .LVL13: 338:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 354 .loc 1 338 14 view .LVU64 355 0014 FFF7FEFF bl HAL_InitTick 356 .LVL14: 340:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** { 357 .loc 1 340 5 is_stmt 1 view .LVU65 340:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** { 358 .loc 1 340 8 is_stmt 0 view .LVU66 359 0018 0028 cmp r0, #0 360 001a F7D0 beq .L29 343:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** } 361 .loc 1 343 7 is_stmt 1 view .LVU67 343:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** } 362 .loc 1 343 18 is_stmt 0 view .LVU68 363 001c 014B ldr r3, .L33 364 001e 1C70 strb r4, [r3] 365 0020 F4E7 b .L29 366 .L34: 367 0022 00BF .align 2 368 .L33: 369 0024 00000000 .word .LANCHOR0 370 0028 00000000 .word .LANCHOR1 371 .cfi_endproc 372 .LFE73: 374 .section .text.HAL_GetTickFreq,"ax",%progbits 375 .align 1 376 .global HAL_GetTickFreq 377 .syntax unified 378 .thumb 379 .thumb_func 381 HAL_GetTickFreq: 382 .LFB74: ARM GAS /tmp/cchqsFTV.s page 14 349:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 350:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** /** 351:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @brief Return tick frequency. 352:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * @retval Tick frequency. 353:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** * Value of @ref HAL_TickFreqTypeDef. 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 **** { 383 .loc 1 356 1 is_stmt 1 view -0 384 .cfi_startproc 385 @ args = 0, pretend = 0, frame = 0 386 @ frame_needed = 0, uses_anonymous_args = 0 387 @ link register save eliminated. 357:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** return uwTickFreq; 388 .loc 1 357 3 view .LVU70 358:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** } 389 .loc 1 358 1 is_stmt 0 view .LVU71 390 0000 014B ldr r3, .L36 391 0002 1878 ldrb r0, [r3] @ zero_extendqisi2 392 0004 7047 bx lr 393 .L37: 394 0006 00BF .align 2 395 .L36: 396 0008 00000000 .word .LANCHOR0 397 .cfi_endproc 398 .LFE74: 400 .section .text.HAL_Delay,"ax",%progbits 401 .align 1 402 .weak HAL_Delay 403 .syntax unified 404 .thumb 405 .thumb_func 407 HAL_Delay: 408 .LVL15: 409 .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 **** { 410 .loc 1 372 1 is_stmt 1 view -0 411 .cfi_startproc 412 @ args = 0, pretend = 0, frame = 0 413 @ frame_needed = 0, uses_anonymous_args = 0 414 .loc 1 372 1 is_stmt 0 view .LVU73 415 0000 38B5 push {r3, r4, r5, lr} 416 .LCFI4: 417 .cfi_def_cfa_offset 16 ARM GAS /tmp/cchqsFTV.s page 15 418 .cfi_offset 3, -16 419 .cfi_offset 4, -12 420 .cfi_offset 5, -8 421 .cfi_offset 14, -4 422 0002 0446 mov r4, r0 373:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** uint32_t tickstart = HAL_GetTick(); 423 .loc 1 373 3 is_stmt 1 view .LVU74 424 .loc 1 373 24 is_stmt 0 view .LVU75 425 0004 FFF7FEFF bl HAL_GetTick 426 .LVL16: 427 .loc 1 373 24 view .LVU76 428 0008 0546 mov r5, r0 429 .LVL17: 374:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** uint32_t wait = Delay; 430 .loc 1 374 3 is_stmt 1 view .LVU77 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) 431 .loc 1 377 3 view .LVU78 432 .loc 1 377 6 is_stmt 0 view .LVU79 433 000a B4F1FF3F cmp r4, #-1 434 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); 435 .loc 1 379 5 is_stmt 1 view .LVU80 436 .loc 1 379 13 is_stmt 0 view .LVU81 437 0010 044B ldr r3, .L42 438 0012 1B78 ldrb r3, [r3] @ zero_extendqisi2 439 .loc 1 379 10 view .LVU82 440 0014 1C44 add r4, r4, r3 441 .LVL18: 442 .L40: 380:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** } 381:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** 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 **** } 443 .loc 1 384 3 is_stmt 1 discriminator 1 view .LVU83 382:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** { 444 .loc 1 382 9 discriminator 1 view .LVU84 382:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** { 445 .loc 1 382 11 is_stmt 0 discriminator 1 view .LVU85 446 0016 FFF7FEFF bl HAL_GetTick 447 .LVL19: 382:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** { 448 .loc 1 382 25 discriminator 1 view .LVU86 449 001a 401B subs r0, r0, r5 382:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** { 450 .loc 1 382 9 discriminator 1 view .LVU87 451 001c A042 cmp r0, r4 452 001e FAD3 bcc .L40 385:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** } 453 .loc 1 385 1 view .LVU88 454 0020 38BD pop {r3, r4, r5, pc} 455 .LVL20: 456 .L43: 457 .loc 1 385 1 view .LVU89 ARM GAS /tmp/cchqsFTV.s page 16 458 0022 00BF .align 2 459 .L42: 460 0024 00000000 .word .LANCHOR0 461 .cfi_endproc 462 .LFE75: 464 .section .text.HAL_SuspendTick,"ax",%progbits 465 .align 1 466 .weak HAL_SuspendTick 467 .syntax unified 468 .thumb 469 .thumb_func 471 HAL_SuspendTick: 472 .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 **** { 473 .loc 1 398 1 is_stmt 1 view -0 474 .cfi_startproc 475 @ args = 0, pretend = 0, frame = 0 476 @ frame_needed = 0, uses_anonymous_args = 0 477 @ 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); 478 .loc 1 400 3 view .LVU91 479 0000 4FF0E022 mov r2, #-536813568 480 0004 1369 ldr r3, [r2, #16] 481 0006 23F00203 bic r3, r3, #2 482 000a 1361 str r3, [r2, #16] 401:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** } 483 .loc 1 401 1 is_stmt 0 view .LVU92 484 000c 7047 bx lr 485 .cfi_endproc 486 .LFE76: 488 .section .text.HAL_ResumeTick,"ax",%progbits 489 .align 1 490 .weak HAL_ResumeTick 491 .syntax unified 492 .thumb 493 .thumb_func 495 HAL_ResumeTick: 496 .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 ARM GAS /tmp/cchqsFTV.s page 17 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 **** { 497 .loc 1 414 1 is_stmt 1 view -0 498 .cfi_startproc 499 @ args = 0, pretend = 0, frame = 0 500 @ frame_needed = 0, uses_anonymous_args = 0 501 @ 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); 502 .loc 1 416 3 view .LVU94 503 0000 4FF0E022 mov r2, #-536813568 504 0004 1369 ldr r3, [r2, #16] 505 0006 43F00203 orr r3, r3, #2 506 000a 1361 str r3, [r2, #16] 417:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** } 507 .loc 1 417 1 is_stmt 0 view .LVU95 508 000c 7047 bx lr 509 .cfi_endproc 510 .LFE77: 512 .section .text.HAL_GetHalVersion,"ax",%progbits 513 .align 1 514 .global HAL_GetHalVersion 515 .syntax unified 516 .thumb 517 .thumb_func 519 HAL_GetHalVersion: 520 .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 **** { 521 .loc 1 424 1 is_stmt 1 view -0 522 .cfi_startproc 523 @ args = 0, pretend = 0, frame = 0 524 @ frame_needed = 0, uses_anonymous_args = 0 525 @ link register save eliminated. 425:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** return __STM32F1xx_HAL_VERSION; 526 .loc 1 425 3 view .LVU97 426:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** } 527 .loc 1 426 1 is_stmt 0 view .LVU98 528 0000 0048 ldr r0, .L47 529 0002 7047 bx lr 530 .L48: 531 .align 2 532 .L47: 533 0004 00090101 .word 16845056 534 .cfi_endproc 535 .LFE78: 537 .section .text.HAL_GetREVID,"ax",%progbits ARM GAS /tmp/cchqsFTV.s page 18 538 .align 1 539 .global HAL_GetREVID 540 .syntax unified 541 .thumb 542 .thumb_func 544 HAL_GetREVID: 545 .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 **** { 546 .loc 1 440 1 is_stmt 1 view -0 547 .cfi_startproc 548 @ args = 0, pretend = 0, frame = 0 549 @ frame_needed = 0, uses_anonymous_args = 0 550 @ link register save eliminated. 441:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** return ((DBGMCU->IDCODE) >> DBGMCU_IDCODE_REV_ID_Pos); 551 .loc 1 441 3 view .LVU100 552 .loc 1 441 18 is_stmt 0 view .LVU101 553 0000 014B ldr r3, .L50 554 0002 1868 ldr r0, [r3] 442:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** } 555 .loc 1 442 1 view .LVU102 556 0004 000C lsrs r0, r0, #16 557 0006 7047 bx lr 558 .L51: 559 .align 2 560 .L50: 561 0008 002004E0 .word -536600576 562 .cfi_endproc 563 .LFE79: 565 .section .text.HAL_GetDEVID,"ax",%progbits 566 .align 1 567 .global HAL_GetDEVID 568 .syntax unified 569 .thumb 570 .thumb_func 572 HAL_GetDEVID: 573 .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 ARM GAS /tmp/cchqsFTV.s page 19 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 **** { 574 .loc 1 456 1 is_stmt 1 view -0 575 .cfi_startproc 576 @ args = 0, pretend = 0, frame = 0 577 @ frame_needed = 0, uses_anonymous_args = 0 578 @ link register save eliminated. 457:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** return ((DBGMCU->IDCODE) & IDCODE_DEVID_MASK); 579 .loc 1 457 3 view .LVU104 580 .loc 1 457 18 is_stmt 0 view .LVU105 581 0000 024B ldr r3, .L53 582 0002 1868 ldr r0, [r3] 458:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** } 583 .loc 1 458 1 view .LVU106 584 0004 C0F30B00 ubfx r0, r0, #0, #12 585 0008 7047 bx lr 586 .L54: 587 000a 00BF .align 2 588 .L53: 589 000c 002004E0 .word -536600576 590 .cfi_endproc 591 .LFE80: 593 .section .text.HAL_GetUIDw0,"ax",%progbits 594 .align 1 595 .global HAL_GetUIDw0 596 .syntax unified 597 .thumb 598 .thumb_func 600 HAL_GetUIDw0: 601 .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 **** { 602 .loc 1 465 1 is_stmt 1 view -0 603 .cfi_startproc 604 @ args = 0, pretend = 0, frame = 0 605 @ frame_needed = 0, uses_anonymous_args = 0 606 @ link register save eliminated. 466:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** return(READ_REG(*((uint32_t *)UID_BASE))); 607 .loc 1 466 4 view .LVU108 467:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** } 608 .loc 1 467 1 is_stmt 0 view .LVU109 609 0000 014B ldr r3, .L56 610 0002 D3F8E807 ldr r0, [r3, #2024] 611 0006 7047 bx lr 612 .L57: 613 .align 2 614 .L56: 615 0008 00F0FF1F .word 536866816 ARM GAS /tmp/cchqsFTV.s page 20 616 .cfi_endproc 617 .LFE81: 619 .section .text.HAL_GetUIDw1,"ax",%progbits 620 .align 1 621 .global HAL_GetUIDw1 622 .syntax unified 623 .thumb 624 .thumb_func 626 HAL_GetUIDw1: 627 .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 **** { 628 .loc 1 474 1 is_stmt 1 view -0 629 .cfi_startproc 630 @ args = 0, pretend = 0, frame = 0 631 @ frame_needed = 0, uses_anonymous_args = 0 632 @ link register save eliminated. 475:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** return(READ_REG(*((uint32_t *)(UID_BASE + 4U)))); 633 .loc 1 475 4 view .LVU111 476:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** } 634 .loc 1 476 1 is_stmt 0 view .LVU112 635 0000 014B ldr r3, .L59 636 0002 D3F8EC07 ldr r0, [r3, #2028] 637 0006 7047 bx lr 638 .L60: 639 .align 2 640 .L59: 641 0008 00F0FF1F .word 536866816 642 .cfi_endproc 643 .LFE82: 645 .section .text.HAL_GetUIDw2,"ax",%progbits 646 .align 1 647 .global HAL_GetUIDw2 648 .syntax unified 649 .thumb 650 .thumb_func 652 HAL_GetUIDw2: 653 .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 **** { 654 .loc 1 483 1 is_stmt 1 view -0 655 .cfi_startproc 656 @ args = 0, pretend = 0, frame = 0 657 @ frame_needed = 0, uses_anonymous_args = 0 658 @ link register save eliminated. 484:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** return(READ_REG(*((uint32_t *)(UID_BASE + 8U)))); 659 .loc 1 484 4 view .LVU114 ARM GAS /tmp/cchqsFTV.s page 21 485:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** } 660 .loc 1 485 1 is_stmt 0 view .LVU115 661 0000 014B ldr r3, .L62 662 0002 D3F8F007 ldr r0, [r3, #2032] 663 0006 7047 bx lr 664 .L63: 665 .align 2 666 .L62: 667 0008 00F0FF1F .word 536866816 668 .cfi_endproc 669 .LFE83: 671 .section .text.HAL_DBGMCU_EnableDBGSleepMode,"ax",%progbits 672 .align 1 673 .global HAL_DBGMCU_EnableDBGSleepMode 674 .syntax unified 675 .thumb 676 .thumb_func 678 HAL_DBGMCU_EnableDBGSleepMode: 679 .LFB84: 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 **** { 680 .loc 1 492 1 is_stmt 1 view -0 681 .cfi_startproc 682 @ args = 0, pretend = 0, frame = 0 683 @ frame_needed = 0, uses_anonymous_args = 0 684 @ link register save eliminated. 493:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_SLEEP); 685 .loc 1 493 3 view .LVU117 686 0000 024A ldr r2, .L65 687 0002 5368 ldr r3, [r2, #4] 688 0004 43F00103 orr r3, r3, #1 689 0008 5360 str r3, [r2, #4] 494:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** } 690 .loc 1 494 1 is_stmt 0 view .LVU118 691 000a 7047 bx lr 692 .L66: 693 .align 2 694 .L65: 695 000c 002004E0 .word -536600576 696 .cfi_endproc 697 .LFE84: 699 .section .text.HAL_DBGMCU_DisableDBGSleepMode,"ax",%progbits 700 .align 1 701 .global HAL_DBGMCU_DisableDBGSleepMode 702 .syntax unified 703 .thumb 704 .thumb_func 706 HAL_DBGMCU_DisableDBGSleepMode: 707 .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 ARM GAS /tmp/cchqsFTV.s page 22 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 **** { 708 .loc 1 508 1 is_stmt 1 view -0 709 .cfi_startproc 710 @ args = 0, pretend = 0, frame = 0 711 @ frame_needed = 0, uses_anonymous_args = 0 712 @ link register save eliminated. 509:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_SLEEP); 713 .loc 1 509 3 view .LVU120 714 0000 024A ldr r2, .L68 715 0002 5368 ldr r3, [r2, #4] 716 0004 23F00103 bic r3, r3, #1 717 0008 5360 str r3, [r2, #4] 510:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** } 718 .loc 1 510 1 is_stmt 0 view .LVU121 719 000a 7047 bx lr 720 .L69: 721 .align 2 722 .L68: 723 000c 002004E0 .word -536600576 724 .cfi_endproc 725 .LFE85: 727 .section .text.HAL_DBGMCU_EnableDBGStopMode,"ax",%progbits 728 .align 1 729 .global HAL_DBGMCU_EnableDBGStopMode 730 .syntax unified 731 .thumb 732 .thumb_func 734 HAL_DBGMCU_EnableDBGStopMode: 735 .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: ARM GAS /tmp/cchqsFTV.s page 23 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 **** { 736 .loc 1 538 1 is_stmt 1 view -0 737 .cfi_startproc 738 @ args = 0, pretend = 0, frame = 0 739 @ frame_needed = 0, uses_anonymous_args = 0 740 @ link register save eliminated. 539:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_STOP); 741 .loc 1 539 3 view .LVU123 742 0000 024A ldr r2, .L71 743 0002 5368 ldr r3, [r2, #4] 744 0004 43F00203 orr r3, r3, #2 745 0008 5360 str r3, [r2, #4] 540:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** } 746 .loc 1 540 1 is_stmt 0 view .LVU124 747 000a 7047 bx lr 748 .L72: 749 .align 2 750 .L71: 751 000c 002004E0 .word -536600576 752 .cfi_endproc 753 .LFE86: 755 .section .text.HAL_DBGMCU_DisableDBGStopMode,"ax",%progbits 756 .align 1 757 .global HAL_DBGMCU_DisableDBGStopMode 758 .syntax unified 759 .thumb 760 .thumb_func 762 HAL_DBGMCU_DisableDBGStopMode: 763 .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 **** { 764 .loc 1 554 1 is_stmt 1 view -0 765 .cfi_startproc 766 @ args = 0, pretend = 0, frame = 0 767 @ frame_needed = 0, uses_anonymous_args = 0 768 @ link register save eliminated. ARM GAS /tmp/cchqsFTV.s page 24 555:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_STOP); 769 .loc 1 555 3 view .LVU126 770 0000 024A ldr r2, .L74 771 0002 5368 ldr r3, [r2, #4] 772 0004 23F00203 bic r3, r3, #2 773 0008 5360 str r3, [r2, #4] 556:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** } 774 .loc 1 556 1 is_stmt 0 view .LVU127 775 000a 7047 bx lr 776 .L75: 777 .align 2 778 .L74: 779 000c 002004E0 .word -536600576 780 .cfi_endproc 781 .LFE87: 783 .section .text.HAL_DBGMCU_EnableDBGStandbyMode,"ax",%progbits 784 .align 1 785 .global HAL_DBGMCU_EnableDBGStandbyMode 786 .syntax unified 787 .thumb 788 .thumb_func 790 HAL_DBGMCU_EnableDBGStandbyMode: 791 .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 **** { 792 .loc 1 570 1 is_stmt 1 view -0 793 .cfi_startproc 794 @ args = 0, pretend = 0, frame = 0 795 @ frame_needed = 0, uses_anonymous_args = 0 796 @ link register save eliminated. 571:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_STANDBY); 797 .loc 1 571 3 view .LVU129 798 0000 024A ldr r2, .L77 799 0002 5368 ldr r3, [r2, #4] 800 0004 43F00403 orr r3, r3, #4 801 0008 5360 str r3, [r2, #4] 572:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** } 802 .loc 1 572 1 is_stmt 0 view .LVU130 803 000a 7047 bx lr 804 .L78: 805 .align 2 806 .L77: 807 000c 002004E0 .word -536600576 808 .cfi_endproc 809 .LFE88: ARM GAS /tmp/cchqsFTV.s page 25 811 .section .text.HAL_DBGMCU_DisableDBGStandbyMode,"ax",%progbits 812 .align 1 813 .global HAL_DBGMCU_DisableDBGStandbyMode 814 .syntax unified 815 .thumb 816 .thumb_func 818 HAL_DBGMCU_DisableDBGStandbyMode: 819 .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 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 **** { 820 .loc 1 586 1 is_stmt 1 view -0 821 .cfi_startproc 822 @ args = 0, pretend = 0, frame = 0 823 @ frame_needed = 0, uses_anonymous_args = 0 824 @ link register save eliminated. 587:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_STANDBY); 825 .loc 1 587 3 view .LVU132 826 0000 024A ldr r2, .L80 827 0002 5368 ldr r3, [r2, #4] 828 0004 23F00403 bic r3, r3, #4 829 0008 5360 str r3, [r2, #4] 588:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c **** } 830 .loc 1 588 1 is_stmt 0 view .LVU133 831 000a 7047 bx lr 832 .L81: 833 .align 2 834 .L80: 835 000c 002004E0 .word -536600576 836 .cfi_endproc 837 .LFE89: 839 .global uwTickFreq 840 .global uwTickPrio 841 .global uwTick 842 .section .bss.uwTick,"aw",%nobits 843 .align 2 844 .set .LANCHOR2,. + 0 847 uwTick: 848 0000 00000000 .space 4 849 .section .data.uwTickFreq,"aw" 850 .set .LANCHOR0,. + 0 853 uwTickFreq: 854 0000 01 .byte 1 855 .section .data.uwTickPrio,"aw" 856 .align 2 857 .set .LANCHOR1,. + 0 ARM GAS /tmp/cchqsFTV.s page 26 860 uwTickPrio: 861 0000 10000000 .word 16 862 .text 863 .Letext0: 864 .file 2 "/opt/gcc-arm/arm-none-eabi/include/machine/_default_types.h" 865 .file 3 "/opt/gcc-arm/arm-none-eabi/include/sys/_stdint.h" 866 .file 4 "Drivers/CMSIS/Include/core_cm3.h" 867 .file 5 "Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f103xb.h" 868 .file 6 "Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_def.h" 869 .file 7 "Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal.h" 870 .file 8 "Drivers/CMSIS/Device/ST/STM32F1xx/Include/system_stm32f1xx.h" 871 .file 9 "Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_cortex.h" ARM GAS /tmp/cchqsFTV.s page 27 DEFINED SYMBOLS *ABS*:0000000000000000 stm32f1xx_hal.c /tmp/cchqsFTV.s:18 .text.HAL_MspInit:0000000000000000 $t /tmp/cchqsFTV.s:24 .text.HAL_MspInit:0000000000000000 HAL_MspInit /tmp/cchqsFTV.s:38 .text.HAL_MspDeInit:0000000000000000 $t /tmp/cchqsFTV.s:44 .text.HAL_MspDeInit:0000000000000000 HAL_MspDeInit /tmp/cchqsFTV.s:57 .text.HAL_DeInit:0000000000000000 $t /tmp/cchqsFTV.s:63 .text.HAL_DeInit:0000000000000000 HAL_DeInit /tmp/cchqsFTV.s:95 .text.HAL_DeInit:000000000000001c $d /tmp/cchqsFTV.s:100 .text.HAL_InitTick:0000000000000000 $t /tmp/cchqsFTV.s:106 .text.HAL_InitTick:0000000000000000 HAL_InitTick /tmp/cchqsFTV.s:169 .text.HAL_InitTick:0000000000000040 $d /tmp/cchqsFTV.s:176 .text.HAL_Init:0000000000000000 $t /tmp/cchqsFTV.s:182 .text.HAL_Init:0000000000000000 HAL_Init /tmp/cchqsFTV.s:216 .text.HAL_Init:0000000000000020 $d /tmp/cchqsFTV.s:221 .text.HAL_IncTick:0000000000000000 $t /tmp/cchqsFTV.s:227 .text.HAL_IncTick:0000000000000000 HAL_IncTick /tmp/cchqsFTV.s:247 .text.HAL_IncTick:0000000000000010 $d /tmp/cchqsFTV.s:253 .text.HAL_GetTick:0000000000000000 $t /tmp/cchqsFTV.s:259 .text.HAL_GetTick:0000000000000000 HAL_GetTick /tmp/cchqsFTV.s:275 .text.HAL_GetTick:0000000000000008 $d /tmp/cchqsFTV.s:280 .text.HAL_GetTickPrio:0000000000000000 $t /tmp/cchqsFTV.s:286 .text.HAL_GetTickPrio:0000000000000000 HAL_GetTickPrio /tmp/cchqsFTV.s:301 .text.HAL_GetTickPrio:0000000000000008 $d /tmp/cchqsFTV.s:306 .text.HAL_SetTickFreq:0000000000000000 $t /tmp/cchqsFTV.s:312 .text.HAL_SetTickFreq:0000000000000000 HAL_SetTickFreq /tmp/cchqsFTV.s:369 .text.HAL_SetTickFreq:0000000000000024 $d /tmp/cchqsFTV.s:375 .text.HAL_GetTickFreq:0000000000000000 $t /tmp/cchqsFTV.s:381 .text.HAL_GetTickFreq:0000000000000000 HAL_GetTickFreq /tmp/cchqsFTV.s:396 .text.HAL_GetTickFreq:0000000000000008 $d /tmp/cchqsFTV.s:401 .text.HAL_Delay:0000000000000000 $t /tmp/cchqsFTV.s:407 .text.HAL_Delay:0000000000000000 HAL_Delay /tmp/cchqsFTV.s:460 .text.HAL_Delay:0000000000000024 $d /tmp/cchqsFTV.s:465 .text.HAL_SuspendTick:0000000000000000 $t /tmp/cchqsFTV.s:471 .text.HAL_SuspendTick:0000000000000000 HAL_SuspendTick /tmp/cchqsFTV.s:489 .text.HAL_ResumeTick:0000000000000000 $t /tmp/cchqsFTV.s:495 .text.HAL_ResumeTick:0000000000000000 HAL_ResumeTick /tmp/cchqsFTV.s:513 .text.HAL_GetHalVersion:0000000000000000 $t /tmp/cchqsFTV.s:519 .text.HAL_GetHalVersion:0000000000000000 HAL_GetHalVersion /tmp/cchqsFTV.s:533 .text.HAL_GetHalVersion:0000000000000004 $d /tmp/cchqsFTV.s:538 .text.HAL_GetREVID:0000000000000000 $t /tmp/cchqsFTV.s:544 .text.HAL_GetREVID:0000000000000000 HAL_GetREVID /tmp/cchqsFTV.s:561 .text.HAL_GetREVID:0000000000000008 $d /tmp/cchqsFTV.s:566 .text.HAL_GetDEVID:0000000000000000 $t /tmp/cchqsFTV.s:572 .text.HAL_GetDEVID:0000000000000000 HAL_GetDEVID /tmp/cchqsFTV.s:589 .text.HAL_GetDEVID:000000000000000c $d /tmp/cchqsFTV.s:594 .text.HAL_GetUIDw0:0000000000000000 $t /tmp/cchqsFTV.s:600 .text.HAL_GetUIDw0:0000000000000000 HAL_GetUIDw0 /tmp/cchqsFTV.s:615 .text.HAL_GetUIDw0:0000000000000008 $d /tmp/cchqsFTV.s:620 .text.HAL_GetUIDw1:0000000000000000 $t /tmp/cchqsFTV.s:626 .text.HAL_GetUIDw1:0000000000000000 HAL_GetUIDw1 /tmp/cchqsFTV.s:641 .text.HAL_GetUIDw1:0000000000000008 $d /tmp/cchqsFTV.s:646 .text.HAL_GetUIDw2:0000000000000000 $t /tmp/cchqsFTV.s:652 .text.HAL_GetUIDw2:0000000000000000 HAL_GetUIDw2 /tmp/cchqsFTV.s:667 .text.HAL_GetUIDw2:0000000000000008 $d /tmp/cchqsFTV.s:672 .text.HAL_DBGMCU_EnableDBGSleepMode:0000000000000000 $t /tmp/cchqsFTV.s:678 .text.HAL_DBGMCU_EnableDBGSleepMode:0000000000000000 HAL_DBGMCU_EnableDBGSleepMode ARM GAS /tmp/cchqsFTV.s page 28 /tmp/cchqsFTV.s:695 .text.HAL_DBGMCU_EnableDBGSleepMode:000000000000000c $d /tmp/cchqsFTV.s:700 .text.HAL_DBGMCU_DisableDBGSleepMode:0000000000000000 $t /tmp/cchqsFTV.s:706 .text.HAL_DBGMCU_DisableDBGSleepMode:0000000000000000 HAL_DBGMCU_DisableDBGSleepMode /tmp/cchqsFTV.s:723 .text.HAL_DBGMCU_DisableDBGSleepMode:000000000000000c $d /tmp/cchqsFTV.s:728 .text.HAL_DBGMCU_EnableDBGStopMode:0000000000000000 $t /tmp/cchqsFTV.s:734 .text.HAL_DBGMCU_EnableDBGStopMode:0000000000000000 HAL_DBGMCU_EnableDBGStopMode /tmp/cchqsFTV.s:751 .text.HAL_DBGMCU_EnableDBGStopMode:000000000000000c $d /tmp/cchqsFTV.s:756 .text.HAL_DBGMCU_DisableDBGStopMode:0000000000000000 $t /tmp/cchqsFTV.s:762 .text.HAL_DBGMCU_DisableDBGStopMode:0000000000000000 HAL_DBGMCU_DisableDBGStopMode /tmp/cchqsFTV.s:779 .text.HAL_DBGMCU_DisableDBGStopMode:000000000000000c $d /tmp/cchqsFTV.s:784 .text.HAL_DBGMCU_EnableDBGStandbyMode:0000000000000000 $t /tmp/cchqsFTV.s:790 .text.HAL_DBGMCU_EnableDBGStandbyMode:0000000000000000 HAL_DBGMCU_EnableDBGStandbyMode /tmp/cchqsFTV.s:807 .text.HAL_DBGMCU_EnableDBGStandbyMode:000000000000000c $d /tmp/cchqsFTV.s:812 .text.HAL_DBGMCU_DisableDBGStandbyMode:0000000000000000 $t /tmp/cchqsFTV.s:818 .text.HAL_DBGMCU_DisableDBGStandbyMode:0000000000000000 HAL_DBGMCU_DisableDBGStandbyMode /tmp/cchqsFTV.s:835 .text.HAL_DBGMCU_DisableDBGStandbyMode:000000000000000c $d /tmp/cchqsFTV.s:853 .data.uwTickFreq:0000000000000000 uwTickFreq /tmp/cchqsFTV.s:860 .data.uwTickPrio:0000000000000000 uwTickPrio /tmp/cchqsFTV.s:847 .bss.uwTick:0000000000000000 uwTick /tmp/cchqsFTV.s:843 .bss.uwTick:0000000000000000 $d /tmp/cchqsFTV.s:856 .data.uwTickPrio:0000000000000000 $d UNDEFINED SYMBOLS HAL_SYSTICK_Config HAL_NVIC_SetPriority SystemCoreClock HAL_NVIC_SetPriorityGrouping