ARM GAS C:\Users\zl835\AppData\Local\Temp\cccP7Z1y.s page 1 1 .cpu cortex-m4 2 .arch armv7e-m 3 .fpu fpv4-sp-d16 4 .eabi_attribute 27, 1 5 .eabi_attribute 28, 1 6 .eabi_attribute 20, 1 7 .eabi_attribute 21, 1 8 .eabi_attribute 23, 3 9 .eabi_attribute 24, 1 10 .eabi_attribute 25, 1 11 .eabi_attribute 26, 1 12 .eabi_attribute 30, 6 13 .eabi_attribute 34, 1 14 .eabi_attribute 18, 4 15 .file "stm32f3xx_hal_gpio.c" 16 .text 17 .Ltext0: 18 .cfi_sections .debug_frame 19 .section .rodata 20 .align 2 21 .LC0: 22 0000 44726976 .ascii "Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio" 22 6572732F 22 53544D33 22 32463378 22 785F4841 23 0033 2E6300 .ascii ".c\000" 24 .section .text.HAL_GPIO_Init,"ax",%progbits 25 .align 1 26 .global HAL_GPIO_Init 27 .syntax unified 28 .thumb 29 .thumb_func 31 HAL_GPIO_Init: 32 .LFB130: 33 .file 1 "Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c" 1:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** /** 2:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** ****************************************************************************** 3:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * @file stm32f3xx_hal_gpio.c 4:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * @author MCD Application Team 5:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * @brief GPIO HAL module driver. 6:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * This file provides firmware functions to manage the following 7:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * functionalities of the General Purpose Input/Output (GPIO) peripheral: 8:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * + Initialization and de-initialization functions 9:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * + IO operation functions 10:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * 11:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** ****************************************************************************** 12:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * @attention 13:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * 14:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * Copyright (c) 2016 STMicroelectronics. 15:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * All rights reserved. 16:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * 17:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * This software is licensed under terms that can be found in the LICENSE file 18:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * in the root directory of this software component. 19:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * If no LICENSE file comes with this software, it is provided AS-IS. 20:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * 21:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** ****************************************************************************** ARM GAS C:\Users\zl835\AppData\Local\Temp\cccP7Z1y.s page 2 22:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** @verbatim 23:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** ============================================================================== 24:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** ##### GPIO Peripheral features ##### 25:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** ============================================================================== 26:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** [..] 27:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** (+) Each port bit of the general-purpose I/O (GPIO) ports can be individually 28:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** configured by software in several modes: 29:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** (++) Input mode 30:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** (++) Analog mode 31:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** (++) Output mode 32:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** (++) Alternate function mode 33:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** (++) External interrupt/event lines 34:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** 35:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** (+) During and just after reset, the alternate functions and external interrupt 36:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** lines are not active and the I/O ports are configured in input floating mode. 37:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** 38:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** (+) All GPIO pins have weak internal pull-up and pull-down resistors, which can be 39:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** activated or not. 40:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** 41:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** (+) In Output or Alternate mode, each IO can be configured on open-drain or push-pull 42:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** type and the IO speed can be selected depending on the VDD value. 43:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** 44:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** (+) The microcontroller IO pins are connected to onboard peripherals/modules through a 45:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** multiplexer that allows only one peripheral alternate function (AF) connected 46:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** to an IO pin at a time. In this way, there can be no conflict between peripherals 47:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** sharing the same IO pin. 48:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** 49:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** (+) All ports have external interrupt/event capability. To use external interrupt 50:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** lines, the port must be configured in input mode. All available GPIO pins are 51:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** connected to the 16 external interrupt/event lines from EXTI0 to EXTI15. 52:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** 53:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** (+) The external interrupt/event controller consists of up to 23 edge detectors 54:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** (16 lines are connected to GPIO) for generating event/interrupt requests (each 55:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** input line can be independently configured to select the type (interrupt or event) 56:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** and the corresponding trigger event (rising or falling or both). Each line can 57:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** also be masked independently. 58:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** 59:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** ##### How to use this driver ##### 60:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** ============================================================================== 61:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** [..] 62:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** (#) Enable the GPIO AHB clock using the following function: __HAL_RCC_GPIOx_CLK_ENABLE(). 63:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** 64:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** (#) Configure the GPIO pin(s) using HAL_GPIO_Init(). 65:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** (++) Configure the IO mode using "Mode" member from GPIO_InitTypeDef structure 66:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** (++) Activate Pull-up, Pull-down resistor using "Pull" member from GPIO_InitTypeDef 67:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** structure. 68:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** (++) In case of Output or alternate function mode selection: the speed is 69:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** configured through "Speed" member from GPIO_InitTypeDef structure. 70:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** (++) In alternate mode is selection, the alternate function connected to the IO 71:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** is configured through "Alternate" member from GPIO_InitTypeDef structure. 72:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** (++) Analog mode is required when a pin is to be used as ADC channel 73:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** or DAC output. 74:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** (++) In case of external interrupt/event selection the "Mode" member from 75:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** GPIO_InitTypeDef structure select the type (interrupt or event) and 76:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** the corresponding trigger event (rising or falling or both). 77:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** 78:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** (#) In case of external interrupt/event mode selection, configure NVIC IRQ priority ARM GAS C:\Users\zl835\AppData\Local\Temp\cccP7Z1y.s page 3 79:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** mapped to the EXTI line using HAL_NVIC_SetPriority() and enable it using 80:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** HAL_NVIC_EnableIRQ(). 81:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** 82:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** (#) To get the level of a pin configured in input mode use HAL_GPIO_ReadPin(). 83:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** 84:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** (#) To set/reset the level of a pin configured in output mode use 85:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** HAL_GPIO_WritePin()/HAL_GPIO_TogglePin(). 86:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** 87:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** (#) To lock pin configuration until next reset use HAL_GPIO_LockPin(). 88:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** 89:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** (#) During and just after reset, the alternate functions are not 90:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** active and the GPIO pins are configured in input floating mode (except JTAG 91:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** pins). 92:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** 93:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** (#) The LSE oscillator pins OSC32_IN and OSC32_OUT can be used as general purpose 94:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** (PC14 and PC15U, respectively) when the LSE oscillator is off. The LSE has 95:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** priority over the GPIO function. 96:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** 97:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** (#) The HSE oscillator pins OSC_IN/OSC_OUT can be used as 98:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** general purpose PF0 and PF1, respectively, when the HSE oscillator is off. 99:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** The HSE has priority over the GPIO function. 100:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** 101:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** @endverbatim 102:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** ****************************************************************************** 103:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** */ 104:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** 105:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** /* Includes ------------------------------------------------------------------*/ 106:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** #include "stm32f3xx_hal.h" 107:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** 108:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** /** @addtogroup STM32F3xx_HAL_Driver 109:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * @{ 110:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** */ 111:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** 112:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** /** @defgroup GPIO GPIO 113:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * @brief GPIO HAL module driver 114:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * @{ 115:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** */ 116:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** 117:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** /** MISRA C:2012 deviation rule has been granted for following rules: 118:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * Rule-18.1_d - Medium: Array pointer `GPIOx' is accessed with index [..,..] 119:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * which may be out of array bounds [..,UNKNOWN] in following APIs: 120:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * HAL_GPIO_Init 121:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * HAL_GPIO_DeInit 122:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** */ 123:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** 124:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** #ifdef HAL_GPIO_MODULE_ENABLED 125:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** 126:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** /* Private typedef -----------------------------------------------------------*/ 127:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** /* Private defines -----------------------------------------------------------*/ 128:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** /** @addtogroup GPIO_Private_Constants 129:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * @{ 130:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** */ 131:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** #define GPIO_NUMBER (16U) 132:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** /** 133:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * @} 134:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** */ 135:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** ARM GAS C:\Users\zl835\AppData\Local\Temp\cccP7Z1y.s page 4 136:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** /* Private macros ------------------------------------------------------------*/ 137:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** /* Private macros ------------------------------------------------------------*/ 138:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** /** @defgroup GPIO_Private_Macros GPIO Private Macros 139:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * @{ 140:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** */ 141:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** /** 142:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * @} 143:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** */ 144:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** /* Private variables ---------------------------------------------------------*/ 145:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** /* Private function prototypes -----------------------------------------------*/ 146:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** /* Exported functions --------------------------------------------------------*/ 147:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** 148:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** /** @defgroup GPIO_Exported_Functions GPIO Exported Functions 149:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * @{ 150:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** */ 151:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** 152:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** /** @defgroup GPIO_Exported_Functions_Group1 Initialization/de-initialization functions 153:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * @brief Initialization and Configuration functions 154:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * 155:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** @verbatim 156:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** =============================================================================== 157:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** ##### Initialization and de-initialization functions ##### 158:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** =============================================================================== 159:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** 160:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** @endverbatim 161:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * @{ 162:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** */ 163:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** 164:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** /** 165:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * @brief Initialize the GPIOx peripheral according to the specified parameters in the GPIO_Init. 166:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * @param GPIOx where x can be (A..F) to select the GPIO peripheral for STM32F3 family devices 167:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * @param GPIO_Init pointer to a GPIO_InitTypeDef structure that contains 168:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * the configuration information for the specified GPIO peripheral. 169:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * @retval None 170:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** */ 171:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** void HAL_GPIO_Init(GPIO_TypeDef *GPIOx, GPIO_InitTypeDef *GPIO_Init) 172:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** { 34 .loc 1 172 1 35 .cfi_startproc 36 @ args = 0, pretend = 0, frame = 24 37 @ frame_needed = 1, uses_anonymous_args = 0 38 0000 80B5 push {r7, lr} 39 .LCFI0: 40 .cfi_def_cfa_offset 8 41 .cfi_offset 7, -8 42 .cfi_offset 14, -4 43 0002 86B0 sub sp, sp, #24 44 .LCFI1: 45 .cfi_def_cfa_offset 32 46 0004 00AF add r7, sp, #0 47 .LCFI2: 48 .cfi_def_cfa_register 7 49 0006 7860 str r0, [r7, #4] 50 0008 3960 str r1, [r7] 173:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** uint32_t position = 0x00u; 51 .loc 1 173 12 52 000a 0023 movs r3, #0 ARM GAS C:\Users\zl835\AppData\Local\Temp\cccP7Z1y.s page 5 53 000c 7B61 str r3, [r7, #20] 174:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** uint32_t iocurrent; 175:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** uint32_t temp; 176:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** 177:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** /* Check the parameters */ 178:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** assert_param(IS_GPIO_ALL_INSTANCE(GPIOx)); 54 .loc 1 178 3 55 000e 7B68 ldr r3, [r7, #4] 56 0010 B3F1904F cmp r3, #1207959552 57 0014 17D0 beq .L2 58 .loc 1 178 3 is_stmt 0 discriminator 1 59 0016 7B68 ldr r3, [r7, #4] 60 0018 364A ldr r2, .L31 61 001a 9342 cmp r3, r2 62 001c 13D0 beq .L2 63 .loc 1 178 3 discriminator 2 64 001e 7B68 ldr r3, [r7, #4] 65 0020 354A ldr r2, .L31+4 66 0022 9342 cmp r3, r2 67 0024 0FD0 beq .L2 68 .loc 1 178 3 discriminator 3 69 0026 7B68 ldr r3, [r7, #4] 70 0028 344A ldr r2, .L31+8 71 002a 9342 cmp r3, r2 72 002c 0BD0 beq .L2 73 .loc 1 178 3 discriminator 4 74 002e 7B68 ldr r3, [r7, #4] 75 0030 334A ldr r2, .L31+12 76 0032 9342 cmp r3, r2 77 0034 07D0 beq .L2 78 .loc 1 178 3 discriminator 5 79 0036 7B68 ldr r3, [r7, #4] 80 0038 324A ldr r2, .L31+16 81 003a 9342 cmp r3, r2 82 003c 03D0 beq .L2 83 .loc 1 178 3 discriminator 6 84 003e B221 movs r1, #178 85 0040 3148 ldr r0, .L31+20 86 0042 FFF7FEFF bl assert_failed 87 .L2: 179:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** assert_param(IS_GPIO_PIN(GPIO_Init->Pin)); 88 .loc 1 179 3 is_stmt 1 89 0046 3B68 ldr r3, [r7] 90 0048 1B68 ldr r3, [r3] 91 004a 9BB2 uxth r3, r3 92 004c 002B cmp r3, #0 93 004e 05D0 beq .L3 94 .loc 1 179 3 is_stmt 0 discriminator 2 95 0050 3B68 ldr r3, [r7] 96 0052 1B68 ldr r3, [r3] 97 0054 1B0C lsrs r3, r3, #16 98 0056 1B04 lsls r3, r3, #16 99 0058 002B cmp r3, #0 100 005a 03D0 beq .L4 101 .L3: 102 .loc 1 179 3 discriminator 3 103 005c B321 movs r1, #179 ARM GAS C:\Users\zl835\AppData\Local\Temp\cccP7Z1y.s page 6 104 005e 2A48 ldr r0, .L31+20 105 0060 FFF7FEFF bl assert_failed 106 .L4: 180:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** assert_param(IS_GPIO_MODE(GPIO_Init->Mode)); 107 .loc 1 180 3 is_stmt 1 108 0064 3B68 ldr r3, [r7] 109 0066 5B68 ldr r3, [r3, #4] 110 0068 002B cmp r3, #0 111 006a 00F00082 beq .L6 112 .loc 1 180 3 is_stmt 0 discriminator 1 113 006e 3B68 ldr r3, [r7] 114 0070 5B68 ldr r3, [r3, #4] 115 0072 012B cmp r3, #1 116 0074 00F0FB81 beq .L6 117 .loc 1 180 3 discriminator 2 118 0078 3B68 ldr r3, [r7] 119 007a 5B68 ldr r3, [r3, #4] 120 007c 112B cmp r3, #17 121 007e 00F0F681 beq .L6 122 .loc 1 180 3 discriminator 3 123 0082 3B68 ldr r3, [r7] 124 0084 5B68 ldr r3, [r3, #4] 125 0086 022B cmp r3, #2 126 0088 00F0F181 beq .L6 127 .loc 1 180 3 discriminator 4 128 008c 3B68 ldr r3, [r7] 129 008e 5B68 ldr r3, [r3, #4] 130 0090 122B cmp r3, #18 131 0092 00F0EC81 beq .L6 132 .loc 1 180 3 discriminator 5 133 0096 3B68 ldr r3, [r7] 134 0098 5B68 ldr r3, [r3, #4] 135 009a B3F5881F cmp r3, #1114112 136 009e 00F0E681 beq .L6 137 .loc 1 180 3 discriminator 6 138 00a2 3B68 ldr r3, [r7] 139 00a4 5B68 ldr r3, [r3, #4] 140 00a6 B3F5041F cmp r3, #2162688 141 00aa 00F0E081 beq .L6 142 .loc 1 180 3 discriminator 7 143 00ae 3B68 ldr r3, [r7] 144 00b0 5B68 ldr r3, [r3, #4] 145 00b2 B3F5441F cmp r3, #3211264 146 00b6 00F0DA81 beq .L6 147 .loc 1 180 3 discriminator 8 148 00ba 3B68 ldr r3, [r7] 149 00bc 5B68 ldr r3, [r3, #4] 150 00be B3F5901F cmp r3, #1179648 151 00c2 00F0D481 beq .L6 152 .loc 1 180 3 discriminator 9 153 00c6 3B68 ldr r3, [r7] 154 00c8 5B68 ldr r3, [r3, #4] 155 00ca B3F5081F cmp r3, #2228224 156 00ce 00F0CE81 beq .L6 157 .loc 1 180 3 discriminator 10 158 00d2 3B68 ldr r3, [r7] 159 00d4 5B68 ldr r3, [r3, #4] ARM GAS C:\Users\zl835\AppData\Local\Temp\cccP7Z1y.s page 7 160 00d6 B3F5481F cmp r3, #3276800 161 00da 00F0C881 beq .L6 162 .loc 1 180 3 discriminator 11 163 00de 3B68 ldr r3, [r7] 164 00e0 5B68 ldr r3, [r3, #4] 165 00e2 032B cmp r3, #3 166 00e4 00F0C381 beq .L6 167 .loc 1 180 3 discriminator 12 168 00e8 B421 movs r1, #180 169 00ea 0748 ldr r0, .L31+20 170 00ec FFF7FEFF bl assert_failed 181:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** 182:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** /* Configure the port pins */ 183:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** while (((GPIO_Init->Pin) >> position) != 0x00u) 171 .loc 1 183 9 is_stmt 1 discriminator 12 172 00f0 BDE1 b .L6 173 .L32: 174 00f2 00BF .align 2 175 .L31: 176 00f4 00040048 .word 1207960576 177 00f8 00080048 .word 1207961600 178 00fc 000C0048 .word 1207962624 179 0100 00100048 .word 1207963648 180 0104 00140048 .word 1207964672 181 0108 00000000 .word .LC0 182 .L30: 184:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** { 185:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** /* Get current io position */ 186:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** iocurrent = (GPIO_Init->Pin) & (1uL << position); 183 .loc 1 186 27 184 010c 3B68 ldr r3, [r7] 185 010e 1A68 ldr r2, [r3] 186 .loc 1 186 41 187 0110 0121 movs r1, #1 188 0112 7B69 ldr r3, [r7, #20] 189 0114 01FA03F3 lsl r3, r1, r3 190 .loc 1 186 15 191 0118 1340 ands r3, r3, r2 192 011a FB60 str r3, [r7, #12] 187:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** 188:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** if (iocurrent != 0x00u) 193 .loc 1 188 8 194 011c FB68 ldr r3, [r7, #12] 195 011e 002B cmp r3, #0 196 0120 00F0A281 beq .L7 189:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** { 190:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** /*--------------------- GPIO Mode Configuration ------------------------*/ 191:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** /* In case of Output or Alternate function mode selection */ 192:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** if(((GPIO_Init->Mode & GPIO_MODE) == MODE_OUTPUT) || ((GPIO_Init->Mode & GPIO_MODE) == MODE_A 197 .loc 1 192 21 198 0124 3B68 ldr r3, [r7] 199 0126 5B68 ldr r3, [r3, #4] 200 .loc 1 192 28 201 0128 03F00303 and r3, r3, #3 202 .loc 1 192 9 203 012c 012B cmp r3, #1 204 012e 05D0 beq .L8 ARM GAS C:\Users\zl835\AppData\Local\Temp\cccP7Z1y.s page 8 205 .loc 1 192 71 discriminator 1 206 0130 3B68 ldr r3, [r7] 207 0132 5B68 ldr r3, [r3, #4] 208 .loc 1 192 78 discriminator 1 209 0134 03F00303 and r3, r3, #3 210 .loc 1 192 57 discriminator 1 211 0138 022B cmp r3, #2 212 013a 40D1 bne .L9 213 .L8: 193:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** { 194:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** /* Check the Speed parameter */ 195:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** assert_param(IS_GPIO_SPEED(GPIO_Init->Speed)); 214 .loc 1 195 9 215 013c 3B68 ldr r3, [r7] 216 013e DB68 ldr r3, [r3, #12] 217 0140 002B cmp r3, #0 218 0142 0BD0 beq .L10 219 .loc 1 195 9 is_stmt 0 discriminator 1 220 0144 3B68 ldr r3, [r7] 221 0146 DB68 ldr r3, [r3, #12] 222 0148 012B cmp r3, #1 223 014a 07D0 beq .L10 224 .loc 1 195 9 discriminator 2 225 014c 3B68 ldr r3, [r7] 226 014e DB68 ldr r3, [r3, #12] 227 0150 032B cmp r3, #3 228 0152 03D0 beq .L10 229 .loc 1 195 9 discriminator 3 230 0154 C321 movs r1, #195 231 0156 8A48 ldr r0, .L33 232 0158 FFF7FEFF bl assert_failed 233 .L10: 196:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** /* Configure the IO Speed */ 197:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** temp = GPIOx->OSPEEDR; 234 .loc 1 197 14 is_stmt 1 235 015c 7B68 ldr r3, [r7, #4] 236 015e 9B68 ldr r3, [r3, #8] 237 0160 3B61 str r3, [r7, #16] 198:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** temp &= ~(GPIO_OSPEEDER_OSPEEDR0 << (position * 2u)); 238 .loc 1 198 55 239 0162 7B69 ldr r3, [r7, #20] 240 0164 5B00 lsls r3, r3, #1 241 .loc 1 198 42 242 0166 0322 movs r2, #3 243 0168 02FA03F3 lsl r3, r2, r3 244 .loc 1 198 17 245 016c DB43 mvns r3, r3 246 .loc 1 198 14 247 016e 3A69 ldr r2, [r7, #16] 248 0170 1340 ands r3, r3, r2 249 0172 3B61 str r3, [r7, #16] 199:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** temp |= (GPIO_Init->Speed << (position * 2u)); 250 .loc 1 199 27 251 0174 3B68 ldr r3, [r7] 252 0176 DA68 ldr r2, [r3, #12] 253 .loc 1 199 48 254 0178 7B69 ldr r3, [r7, #20] ARM GAS C:\Users\zl835\AppData\Local\Temp\cccP7Z1y.s page 9 255 017a 5B00 lsls r3, r3, #1 256 .loc 1 199 35 257 017c 02FA03F3 lsl r3, r2, r3 258 .loc 1 199 14 259 0180 3A69 ldr r2, [r7, #16] 260 0182 1343 orrs r3, r3, r2 261 0184 3B61 str r3, [r7, #16] 200:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** GPIOx->OSPEEDR = temp; 262 .loc 1 200 24 263 0186 7B68 ldr r3, [r7, #4] 264 0188 3A69 ldr r2, [r7, #16] 265 018a 9A60 str r2, [r3, #8] 201:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** 202:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** /* Configure the IO Output Type */ 203:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** temp = GPIOx->OTYPER; 266 .loc 1 203 14 267 018c 7B68 ldr r3, [r7, #4] 268 018e 5B68 ldr r3, [r3, #4] 269 0190 3B61 str r3, [r7, #16] 204:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** temp &= ~(GPIO_OTYPER_OT_0 << position) ; 270 .loc 1 204 36 271 0192 0122 movs r2, #1 272 0194 7B69 ldr r3, [r7, #20] 273 0196 02FA03F3 lsl r3, r2, r3 274 .loc 1 204 17 275 019a DB43 mvns r3, r3 276 .loc 1 204 14 277 019c 3A69 ldr r2, [r7, #16] 278 019e 1340 ands r3, r3, r2 279 01a0 3B61 str r3, [r7, #16] 205:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** temp |= (((GPIO_Init->Mode & OUTPUT_TYPE) >> OUTPUT_TYPE_Pos) << position); 280 .loc 1 205 29 281 01a2 3B68 ldr r3, [r7] 282 01a4 5B68 ldr r3, [r3, #4] 283 .loc 1 205 51 284 01a6 1B09 lsrs r3, r3, #4 285 01a8 03F00102 and r2, r3, #1 286 .loc 1 205 71 287 01ac 7B69 ldr r3, [r7, #20] 288 01ae 02FA03F3 lsl r3, r2, r3 289 .loc 1 205 14 290 01b2 3A69 ldr r2, [r7, #16] 291 01b4 1343 orrs r3, r3, r2 292 01b6 3B61 str r3, [r7, #16] 206:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** GPIOx->OTYPER = temp; 293 .loc 1 206 23 294 01b8 7B68 ldr r3, [r7, #4] 295 01ba 3A69 ldr r2, [r7, #16] 296 01bc 5A60 str r2, [r3, #4] 297 .L9: 207:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** } 208:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** 209:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** if((GPIO_Init->Mode & GPIO_MODE) != MODE_ANALOG) 298 .loc 1 209 20 299 01be 3B68 ldr r3, [r7] 300 01c0 5B68 ldr r3, [r3, #4] 301 .loc 1 209 27 ARM GAS C:\Users\zl835\AppData\Local\Temp\cccP7Z1y.s page 10 302 01c2 03F00303 and r3, r3, #3 303 .loc 1 209 9 304 01c6 032B cmp r3, #3 305 01c8 27D0 beq .L11 210:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** { 211:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** /* Check the Pull parameter */ 212:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** assert_param(IS_GPIO_PULL(GPIO_Init->Pull)); 306 .loc 1 212 9 307 01ca 3B68 ldr r3, [r7] 308 01cc 9B68 ldr r3, [r3, #8] 309 01ce 002B cmp r3, #0 310 01d0 0BD0 beq .L12 311 .loc 1 212 9 is_stmt 0 discriminator 1 312 01d2 3B68 ldr r3, [r7] 313 01d4 9B68 ldr r3, [r3, #8] 314 01d6 012B cmp r3, #1 315 01d8 07D0 beq .L12 316 .loc 1 212 9 discriminator 2 317 01da 3B68 ldr r3, [r7] 318 01dc 9B68 ldr r3, [r3, #8] 319 01de 022B cmp r3, #2 320 01e0 03D0 beq .L12 321 .loc 1 212 9 discriminator 3 322 01e2 D421 movs r1, #212 323 01e4 6648 ldr r0, .L33 324 01e6 FFF7FEFF bl assert_failed 325 .L12: 213:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** 214:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** /* Activate the Pull-up or Pull down resistor for the current IO */ 215:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** temp = GPIOx->PUPDR; 326 .loc 1 215 14 is_stmt 1 327 01ea 7B68 ldr r3, [r7, #4] 328 01ec DB68 ldr r3, [r3, #12] 329 01ee 3B61 str r3, [r7, #16] 216:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** temp &= ~(GPIO_PUPDR_PUPDR0 << (position * 2u)); 330 .loc 1 216 50 331 01f0 7B69 ldr r3, [r7, #20] 332 01f2 5B00 lsls r3, r3, #1 333 .loc 1 216 37 334 01f4 0322 movs r2, #3 335 01f6 02FA03F3 lsl r3, r2, r3 336 .loc 1 216 17 337 01fa DB43 mvns r3, r3 338 .loc 1 216 14 339 01fc 3A69 ldr r2, [r7, #16] 340 01fe 1340 ands r3, r3, r2 341 0200 3B61 str r3, [r7, #16] 217:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** temp |= ((GPIO_Init->Pull) << (position * 2u)); 342 .loc 1 217 28 343 0202 3B68 ldr r3, [r7] 344 0204 9A68 ldr r2, [r3, #8] 345 .loc 1 217 49 346 0206 7B69 ldr r3, [r7, #20] 347 0208 5B00 lsls r3, r3, #1 348 .loc 1 217 36 349 020a 02FA03F3 lsl r3, r2, r3 350 .loc 1 217 14 ARM GAS C:\Users\zl835\AppData\Local\Temp\cccP7Z1y.s page 11 351 020e 3A69 ldr r2, [r7, #16] 352 0210 1343 orrs r3, r3, r2 353 0212 3B61 str r3, [r7, #16] 218:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** GPIOx->PUPDR = temp; 354 .loc 1 218 22 355 0214 7B68 ldr r3, [r7, #4] 356 0216 3A69 ldr r2, [r7, #16] 357 0218 DA60 str r2, [r3, #12] 358 .L11: 219:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** } 220:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** 221:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** /*--------------------- GPIO Mode Configuration ------------------------*/ 222:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** /* In case of Alternate function mode selection */ 223:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** if((GPIO_Init->Mode & GPIO_MODE) == MODE_AF) 359 .loc 1 223 20 360 021a 3B68 ldr r3, [r7] 361 021c 5B68 ldr r3, [r3, #4] 362 .loc 1 223 27 363 021e 03F00303 and r3, r3, #3 364 .loc 1 223 9 365 0222 022B cmp r3, #2 366 0224 4FD1 bne .L13 224:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** { 225:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** /* Check the Alternate function parameters */ 226:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** assert_param(IS_GPIO_AF_INSTANCE(GPIOx)); 367 .loc 1 226 9 368 0226 7B68 ldr r3, [r7, #4] 369 0228 B3F1904F cmp r3, #1207959552 370 022c 17D0 beq .L14 371 .loc 1 226 9 is_stmt 0 discriminator 1 372 022e 7B68 ldr r3, [r7, #4] 373 0230 544A ldr r2, .L33+4 374 0232 9342 cmp r3, r2 375 0234 13D0 beq .L14 376 .loc 1 226 9 discriminator 2 377 0236 7B68 ldr r3, [r7, #4] 378 0238 534A ldr r2, .L33+8 379 023a 9342 cmp r3, r2 380 023c 0FD0 beq .L14 381 .loc 1 226 9 discriminator 3 382 023e 7B68 ldr r3, [r7, #4] 383 0240 524A ldr r2, .L33+12 384 0242 9342 cmp r3, r2 385 0244 0BD0 beq .L14 386 .loc 1 226 9 discriminator 4 387 0246 7B68 ldr r3, [r7, #4] 388 0248 514A ldr r2, .L33+16 389 024a 9342 cmp r3, r2 390 024c 07D0 beq .L14 391 .loc 1 226 9 discriminator 5 392 024e 7B68 ldr r3, [r7, #4] 393 0250 504A ldr r2, .L33+20 394 0252 9342 cmp r3, r2 395 0254 03D0 beq .L14 396 .loc 1 226 9 discriminator 6 397 0256 E221 movs r1, #226 398 0258 4948 ldr r0, .L33 ARM GAS C:\Users\zl835\AppData\Local\Temp\cccP7Z1y.s page 12 399 025a FFF7FEFF bl assert_failed 400 .L14: 227:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** assert_param(IS_GPIO_AF(GPIO_Init->Alternate)); 401 .loc 1 227 9 is_stmt 1 402 025e 3B68 ldr r3, [r7] 403 0260 1B69 ldr r3, [r3, #16] 404 0262 0C2B cmp r3, #12 405 0264 0BD9 bls .L15 406 .loc 1 227 9 is_stmt 0 discriminator 1 407 0266 3B68 ldr r3, [r7] 408 0268 1B69 ldr r3, [r3, #16] 409 026a 0E2B cmp r3, #14 410 026c 07D0 beq .L15 411 .loc 1 227 9 discriminator 2 412 026e 3B68 ldr r3, [r7] 413 0270 1B69 ldr r3, [r3, #16] 414 0272 0F2B cmp r3, #15 415 0274 03D0 beq .L15 416 .loc 1 227 9 discriminator 3 417 0276 E321 movs r1, #227 418 0278 4148 ldr r0, .L33 419 027a FFF7FEFF bl assert_failed 420 .L15: 228:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** 229:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** /* Configure Alternate function mapped with the current IO */ 230:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** temp = GPIOx->AFR[position >> 3u]; 421 .loc 1 230 36 is_stmt 1 422 027e 7B69 ldr r3, [r7, #20] 423 0280 DA08 lsrs r2, r3, #3 424 .loc 1 230 14 425 0282 7B68 ldr r3, [r7, #4] 426 0284 0832 adds r2, r2, #8 427 0286 53F82230 ldr r3, [r3, r2, lsl #2] 428 028a 3B61 str r3, [r7, #16] 231:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** temp &= ~(0xFu << ((position & 0x07u) * 4u)); 429 .loc 1 231 38 430 028c 7B69 ldr r3, [r7, #20] 431 028e 03F00703 and r3, r3, #7 432 .loc 1 231 47 433 0292 9B00 lsls r3, r3, #2 434 .loc 1 231 24 435 0294 0F22 movs r2, #15 436 0296 02FA03F3 lsl r3, r2, r3 437 .loc 1 231 17 438 029a DB43 mvns r3, r3 439 .loc 1 231 14 440 029c 3A69 ldr r2, [r7, #16] 441 029e 1340 ands r3, r3, r2 442 02a0 3B61 str r3, [r7, #16] 232:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** temp |= ((GPIO_Init->Alternate) << ((position & 0x07u) * 4u)); 443 .loc 1 232 28 444 02a2 3B68 ldr r3, [r7] 445 02a4 1A69 ldr r2, [r3, #16] 446 .loc 1 232 55 447 02a6 7B69 ldr r3, [r7, #20] 448 02a8 03F00703 and r3, r3, #7 449 .loc 1 232 64 ARM GAS C:\Users\zl835\AppData\Local\Temp\cccP7Z1y.s page 13 450 02ac 9B00 lsls r3, r3, #2 451 .loc 1 232 41 452 02ae 02FA03F3 lsl r3, r2, r3 453 .loc 1 232 14 454 02b2 3A69 ldr r2, [r7, #16] 455 02b4 1343 orrs r3, r3, r2 456 02b6 3B61 str r3, [r7, #16] 233:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** GPIOx->AFR[position >> 3u] = temp; 457 .loc 1 233 29 458 02b8 7B69 ldr r3, [r7, #20] 459 02ba DA08 lsrs r2, r3, #3 460 .loc 1 233 36 461 02bc 7B68 ldr r3, [r7, #4] 462 02be 0832 adds r2, r2, #8 463 02c0 3969 ldr r1, [r7, #16] 464 02c2 43F82210 str r1, [r3, r2, lsl #2] 465 .L13: 234:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** } 235:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** 236:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** /* Configure IO Direction mode (Input, Output, Alternate or Analog) */ 237:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** temp = GPIOx->MODER; 466 .loc 1 237 12 467 02c6 7B68 ldr r3, [r7, #4] 468 02c8 1B68 ldr r3, [r3] 469 02ca 3B61 str r3, [r7, #16] 238:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** temp &= ~(GPIO_MODER_MODER0 << (position * 2u)); 470 .loc 1 238 48 471 02cc 7B69 ldr r3, [r7, #20] 472 02ce 5B00 lsls r3, r3, #1 473 .loc 1 238 35 474 02d0 0322 movs r2, #3 475 02d2 02FA03F3 lsl r3, r2, r3 476 .loc 1 238 15 477 02d6 DB43 mvns r3, r3 478 .loc 1 238 12 479 02d8 3A69 ldr r2, [r7, #16] 480 02da 1340 ands r3, r3, r2 481 02dc 3B61 str r3, [r7, #16] 239:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** temp |= ((GPIO_Init->Mode & GPIO_MODE) << (position * 2u)); 482 .loc 1 239 26 483 02de 3B68 ldr r3, [r7] 484 02e0 5B68 ldr r3, [r3, #4] 485 .loc 1 239 33 486 02e2 03F00302 and r2, r3, #3 487 .loc 1 239 59 488 02e6 7B69 ldr r3, [r7, #20] 489 02e8 5B00 lsls r3, r3, #1 490 .loc 1 239 46 491 02ea 02FA03F3 lsl r3, r2, r3 492 .loc 1 239 12 493 02ee 3A69 ldr r2, [r7, #16] 494 02f0 1343 orrs r3, r3, r2 495 02f2 3B61 str r3, [r7, #16] 240:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** GPIOx->MODER = temp; 496 .loc 1 240 20 497 02f4 7B68 ldr r3, [r7, #4] 498 02f6 3A69 ldr r2, [r7, #16] ARM GAS C:\Users\zl835\AppData\Local\Temp\cccP7Z1y.s page 14 499 02f8 1A60 str r2, [r3] 241:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** 242:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** /*--------------------- EXTI Mode Configuration ------------------------*/ 243:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** /* Configure the External Interrupt or event for the current IO */ 244:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** if((GPIO_Init->Mode & EXTI_MODE) != 0x00u) 500 .loc 1 244 20 501 02fa 3B68 ldr r3, [r7] 502 02fc 5B68 ldr r3, [r3, #4] 503 .loc 1 244 27 504 02fe 03F44033 and r3, r3, #196608 505 .loc 1 244 9 506 0302 002B cmp r3, #0 507 0304 00F0B080 beq .L7 508 .LBB2: 245:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** { 246:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** /* Enable SYSCFG Clock */ 247:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** __HAL_RCC_SYSCFG_CLK_ENABLE(); 509 .loc 1 247 9 510 0308 234B ldr r3, .L33+24 511 030a 9B69 ldr r3, [r3, #24] 512 030c 224A ldr r2, .L33+24 513 030e 43F00103 orr r3, r3, #1 514 0312 9361 str r3, [r2, #24] 515 0314 204B ldr r3, .L33+24 516 0316 9B69 ldr r3, [r3, #24] 517 0318 03F00103 and r3, r3, #1 518 031c BB60 str r3, [r7, #8] 519 031e BB68 ldr r3, [r7, #8] 520 .LBE2: 248:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** 249:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** temp = SYSCFG->EXTICR[position >> 2u]; 521 .loc 1 249 22 522 0320 1E4A ldr r2, .L33+28 523 .loc 1 249 40 524 0322 7B69 ldr r3, [r7, #20] 525 0324 9B08 lsrs r3, r3, #2 526 .loc 1 249 14 527 0326 0233 adds r3, r3, #2 528 0328 52F82330 ldr r3, [r2, r3, lsl #2] 529 032c 3B61 str r3, [r7, #16] 250:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** temp &= ~(0x0FuL << (4u * (position & 0x03u))); 530 .loc 1 250 45 531 032e 7B69 ldr r3, [r7, #20] 532 0330 03F00303 and r3, r3, #3 533 .loc 1 250 33 534 0334 9B00 lsls r3, r3, #2 535 .loc 1 250 26 536 0336 0F22 movs r2, #15 537 0338 02FA03F3 lsl r3, r2, r3 538 .loc 1 250 17 539 033c DB43 mvns r3, r3 540 .loc 1 250 14 541 033e 3A69 ldr r2, [r7, #16] 542 0340 1340 ands r3, r3, r2 543 0342 3B61 str r3, [r7, #16] 251:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** temp |= (GPIO_GET_INDEX(GPIOx) << (4u * (position & 0x03u))); 544 .loc 1 251 18 ARM GAS C:\Users\zl835\AppData\Local\Temp\cccP7Z1y.s page 15 545 0344 7B68 ldr r3, [r7, #4] 546 0346 B3F1904F cmp r3, #1207959552 547 034a 29D0 beq .L16 548 .loc 1 251 18 is_stmt 0 discriminator 1 549 034c 7B68 ldr r3, [r7, #4] 550 034e 0D4A ldr r2, .L33+4 551 0350 9342 cmp r3, r2 552 0352 13D0 beq .L17 553 .loc 1 251 18 discriminator 3 554 0354 7B68 ldr r3, [r7, #4] 555 0356 0C4A ldr r2, .L33+8 556 0358 9342 cmp r3, r2 557 035a 0DD0 beq .L18 558 .loc 1 251 18 discriminator 5 559 035c 7B68 ldr r3, [r7, #4] 560 035e 0B4A ldr r2, .L33+12 561 0360 9342 cmp r3, r2 562 0362 07D0 beq .L19 563 .loc 1 251 18 discriminator 7 564 0364 7B68 ldr r3, [r7, #4] 565 0366 0A4A ldr r2, .L33+16 566 0368 9342 cmp r3, r2 567 036a 01D1 bne .L20 568 .loc 1 251 18 discriminator 9 569 036c 0423 movs r3, #4 570 036e 18E0 b .L25 571 .L20: 572 .loc 1 251 18 discriminator 10 573 0370 0523 movs r3, #5 574 0372 16E0 b .L25 575 .L19: 576 .loc 1 251 18 discriminator 8 577 0374 0323 movs r3, #3 578 0376 14E0 b .L25 579 .L18: 580 .loc 1 251 18 discriminator 6 581 0378 0223 movs r3, #2 582 037a 12E0 b .L25 583 .L17: 584 .loc 1 251 18 discriminator 4 585 037c 0123 movs r3, #1 586 037e 10E0 b .L25 587 .L34: 588 .align 2 589 .L33: 590 0380 00000000 .word .LC0 591 0384 00040048 .word 1207960576 592 0388 00080048 .word 1207961600 593 038c 000C0048 .word 1207962624 594 0390 00100048 .word 1207963648 595 0394 00140048 .word 1207964672 596 0398 00100240 .word 1073876992 597 039c 00000140 .word 1073807360 598 .L16: 599 .loc 1 251 18 discriminator 2 600 03a0 0023 movs r3, #0 601 .L25: ARM GAS C:\Users\zl835\AppData\Local\Temp\cccP7Z1y.s page 16 602 .loc 1 251 59 is_stmt 1 discriminator 20 603 03a2 7A69 ldr r2, [r7, #20] 604 03a4 02F00302 and r2, r2, #3 605 .loc 1 251 47 discriminator 20 606 03a8 9200 lsls r2, r2, #2 607 .loc 1 251 40 discriminator 20 608 03aa 9340 lsls r3, r3, r2 609 .loc 1 251 14 discriminator 20 610 03ac 3A69 ldr r2, [r7, #16] 611 03ae 1343 orrs r3, r3, r2 612 03b0 3B61 str r3, [r7, #16] 252:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** SYSCFG->EXTICR[position >> 2u] = temp; 613 .loc 1 252 15 discriminator 20 614 03b2 3549 ldr r1, .L35 615 .loc 1 252 33 discriminator 20 616 03b4 7B69 ldr r3, [r7, #20] 617 03b6 9B08 lsrs r3, r3, #2 618 .loc 1 252 40 discriminator 20 619 03b8 0233 adds r3, r3, #2 620 03ba 3A69 ldr r2, [r7, #16] 621 03bc 41F82320 str r2, [r1, r3, lsl #2] 253:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** 254:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** /* Clear Rising Falling edge configuration */ 255:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** temp = EXTI->RTSR; 622 .loc 1 255 20 discriminator 20 623 03c0 324B ldr r3, .L35+4 624 .loc 1 255 14 discriminator 20 625 03c2 9B68 ldr r3, [r3, #8] 626 03c4 3B61 str r3, [r7, #16] 256:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** temp &= ~(iocurrent); 627 .loc 1 256 17 discriminator 20 628 03c6 FB68 ldr r3, [r7, #12] 629 03c8 DB43 mvns r3, r3 630 .loc 1 256 14 discriminator 20 631 03ca 3A69 ldr r2, [r7, #16] 632 03cc 1340 ands r3, r3, r2 633 03ce 3B61 str r3, [r7, #16] 257:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** if((GPIO_Init->Mode & TRIGGER_RISING) != 0x00u) 634 .loc 1 257 22 discriminator 20 635 03d0 3B68 ldr r3, [r7] 636 03d2 5B68 ldr r3, [r3, #4] 637 .loc 1 257 29 discriminator 20 638 03d4 03F48013 and r3, r3, #1048576 639 .loc 1 257 11 discriminator 20 640 03d8 002B cmp r3, #0 641 03da 03D0 beq .L26 258:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** { 259:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** temp |= iocurrent; 642 .loc 1 259 16 643 03dc 3A69 ldr r2, [r7, #16] 644 03de FB68 ldr r3, [r7, #12] 645 03e0 1343 orrs r3, r3, r2 646 03e2 3B61 str r3, [r7, #16] 647 .L26: 260:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** } 261:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** EXTI->RTSR = temp; 648 .loc 1 261 13 ARM GAS C:\Users\zl835\AppData\Local\Temp\cccP7Z1y.s page 17 649 03e4 294A ldr r2, .L35+4 650 .loc 1 261 20 651 03e6 3B69 ldr r3, [r7, #16] 652 03e8 9360 str r3, [r2, #8] 262:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** 263:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** temp = EXTI->FTSR; 653 .loc 1 263 20 654 03ea 284B ldr r3, .L35+4 655 .loc 1 263 14 656 03ec DB68 ldr r3, [r3, #12] 657 03ee 3B61 str r3, [r7, #16] 264:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** temp &= ~(iocurrent); 658 .loc 1 264 17 659 03f0 FB68 ldr r3, [r7, #12] 660 03f2 DB43 mvns r3, r3 661 .loc 1 264 14 662 03f4 3A69 ldr r2, [r7, #16] 663 03f6 1340 ands r3, r3, r2 664 03f8 3B61 str r3, [r7, #16] 265:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** if((GPIO_Init->Mode & TRIGGER_FALLING) != 0x00u) 665 .loc 1 265 22 666 03fa 3B68 ldr r3, [r7] 667 03fc 5B68 ldr r3, [r3, #4] 668 .loc 1 265 29 669 03fe 03F40013 and r3, r3, #2097152 670 .loc 1 265 11 671 0402 002B cmp r3, #0 672 0404 03D0 beq .L27 266:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** { 267:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** temp |= iocurrent; 673 .loc 1 267 16 674 0406 3A69 ldr r2, [r7, #16] 675 0408 FB68 ldr r3, [r7, #12] 676 040a 1343 orrs r3, r3, r2 677 040c 3B61 str r3, [r7, #16] 678 .L27: 268:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** } 269:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** EXTI->FTSR = temp; 679 .loc 1 269 13 680 040e 1F4A ldr r2, .L35+4 681 .loc 1 269 20 682 0410 3B69 ldr r3, [r7, #16] 683 0412 D360 str r3, [r2, #12] 270:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** 271:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** temp = EXTI->EMR; 684 .loc 1 271 20 685 0414 1D4B ldr r3, .L35+4 686 .loc 1 271 14 687 0416 5B68 ldr r3, [r3, #4] 688 0418 3B61 str r3, [r7, #16] 272:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** temp &= ~(iocurrent); 689 .loc 1 272 17 690 041a FB68 ldr r3, [r7, #12] 691 041c DB43 mvns r3, r3 692 .loc 1 272 14 693 041e 3A69 ldr r2, [r7, #16] 694 0420 1340 ands r3, r3, r2 ARM GAS C:\Users\zl835\AppData\Local\Temp\cccP7Z1y.s page 18 695 0422 3B61 str r3, [r7, #16] 273:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** if((GPIO_Init->Mode & EXTI_EVT) != 0x00u) 696 .loc 1 273 22 697 0424 3B68 ldr r3, [r7] 698 0426 5B68 ldr r3, [r3, #4] 699 .loc 1 273 29 700 0428 03F40033 and r3, r3, #131072 701 .loc 1 273 11 702 042c 002B cmp r3, #0 703 042e 03D0 beq .L28 274:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** { 275:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** temp |= iocurrent; 704 .loc 1 275 16 705 0430 3A69 ldr r2, [r7, #16] 706 0432 FB68 ldr r3, [r7, #12] 707 0434 1343 orrs r3, r3, r2 708 0436 3B61 str r3, [r7, #16] 709 .L28: 276:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** } 277:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** EXTI->EMR = temp; 710 .loc 1 277 13 711 0438 144A ldr r2, .L35+4 712 .loc 1 277 19 713 043a 3B69 ldr r3, [r7, #16] 714 043c 5360 str r3, [r2, #4] 278:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** 279:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** /* Clear EXTI line configuration */ 280:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** temp = EXTI->IMR; 715 .loc 1 280 20 716 043e 134B ldr r3, .L35+4 717 .loc 1 280 14 718 0440 1B68 ldr r3, [r3] 719 0442 3B61 str r3, [r7, #16] 281:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** temp &= ~(iocurrent); 720 .loc 1 281 17 721 0444 FB68 ldr r3, [r7, #12] 722 0446 DB43 mvns r3, r3 723 .loc 1 281 14 724 0448 3A69 ldr r2, [r7, #16] 725 044a 1340 ands r3, r3, r2 726 044c 3B61 str r3, [r7, #16] 282:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** if((GPIO_Init->Mode & EXTI_IT) != 0x00u) 727 .loc 1 282 22 728 044e 3B68 ldr r3, [r7] 729 0450 5B68 ldr r3, [r3, #4] 730 .loc 1 282 29 731 0452 03F48033 and r3, r3, #65536 732 .loc 1 282 11 733 0456 002B cmp r3, #0 734 0458 03D0 beq .L29 283:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** { 284:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** temp |= iocurrent; 735 .loc 1 284 16 736 045a 3A69 ldr r2, [r7, #16] 737 045c FB68 ldr r3, [r7, #12] 738 045e 1343 orrs r3, r3, r2 739 0460 3B61 str r3, [r7, #16] ARM GAS C:\Users\zl835\AppData\Local\Temp\cccP7Z1y.s page 19 740 .L29: 285:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** } 286:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** EXTI->IMR = temp; 741 .loc 1 286 13 742 0462 0A4A ldr r2, .L35+4 743 .loc 1 286 19 744 0464 3B69 ldr r3, [r7, #16] 745 0466 1360 str r3, [r2] 746 .L7: 287:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** } 288:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** } 289:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** 290:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** position++; 747 .loc 1 290 13 748 0468 7B69 ldr r3, [r7, #20] 749 046a 0133 adds r3, r3, #1 750 046c 7B61 str r3, [r7, #20] 751 .L6: 183:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** { 752 .loc 1 183 21 753 046e 3B68 ldr r3, [r7] 754 0470 1A68 ldr r2, [r3] 183:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** { 755 .loc 1 183 28 756 0472 7B69 ldr r3, [r7, #20] 757 0474 22FA03F3 lsr r3, r2, r3 183:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** { 758 .loc 1 183 9 759 0478 002B cmp r3, #0 760 047a 7FF447AE bne .L30 291:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** } 292:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** } 761 .loc 1 292 1 762 047e 00BF nop 763 0480 00BF nop 764 0482 1837 adds r7, r7, #24 765 .LCFI3: 766 .cfi_def_cfa_offset 8 767 0484 BD46 mov sp, r7 768 .LCFI4: 769 .cfi_def_cfa_register 13 770 @ sp needed 771 0486 80BD pop {r7, pc} 772 .L36: 773 .align 2 774 .L35: 775 0488 00000140 .word 1073807360 776 048c 00040140 .word 1073808384 777 .cfi_endproc 778 .LFE130: 780 .section .text.HAL_GPIO_DeInit,"ax",%progbits 781 .align 1 782 .global HAL_GPIO_DeInit 783 .syntax unified 784 .thumb 785 .thumb_func 787 HAL_GPIO_DeInit: ARM GAS C:\Users\zl835\AppData\Local\Temp\cccP7Z1y.s page 20 788 .LFB131: 293:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** 294:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** /** 295:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * @brief De-initialize the GPIOx peripheral registers to their default reset values. 296:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * @param GPIOx where x can be (A..F) to select the GPIO peripheral for STM32F30X device or STM32 297:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * @param GPIO_Pin specifies the port bit to be written. 298:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * This parameter can be one of GPIO_PIN_x where x can be (0..15). 299:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * @retval None 300:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** */ 301:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** void HAL_GPIO_DeInit(GPIO_TypeDef *GPIOx, uint32_t GPIO_Pin) 302:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** { 789 .loc 1 302 1 790 .cfi_startproc 791 @ args = 0, pretend = 0, frame = 24 792 @ frame_needed = 1, uses_anonymous_args = 0 793 0000 80B5 push {r7, lr} 794 .LCFI5: 795 .cfi_def_cfa_offset 8 796 .cfi_offset 7, -8 797 .cfi_offset 14, -4 798 0002 86B0 sub sp, sp, #24 799 .LCFI6: 800 .cfi_def_cfa_offset 32 801 0004 00AF add r7, sp, #0 802 .LCFI7: 803 .cfi_def_cfa_register 7 804 0006 7860 str r0, [r7, #4] 805 0008 3960 str r1, [r7] 303:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** uint32_t position = 0x00u; 806 .loc 1 303 12 807 000a 0023 movs r3, #0 808 000c 7B61 str r3, [r7, #20] 304:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** uint32_t iocurrent; 305:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** uint32_t tmp; 306:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** 307:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** /* Check the parameters */ 308:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** assert_param(IS_GPIO_ALL_INSTANCE(GPIOx)); 809 .loc 1 308 3 810 000e 7B68 ldr r3, [r7, #4] 811 0010 B3F1904F cmp r3, #1207959552 812 0014 18D0 beq .L38 813 .loc 1 308 3 is_stmt 0 discriminator 1 814 0016 7B68 ldr r3, [r7, #4] 815 0018 764A ldr r2, .L55 816 001a 9342 cmp r3, r2 817 001c 14D0 beq .L38 818 .loc 1 308 3 discriminator 2 819 001e 7B68 ldr r3, [r7, #4] 820 0020 754A ldr r2, .L55+4 821 0022 9342 cmp r3, r2 822 0024 10D0 beq .L38 823 .loc 1 308 3 discriminator 3 824 0026 7B68 ldr r3, [r7, #4] 825 0028 744A ldr r2, .L55+8 826 002a 9342 cmp r3, r2 827 002c 0CD0 beq .L38 828 .loc 1 308 3 discriminator 4 ARM GAS C:\Users\zl835\AppData\Local\Temp\cccP7Z1y.s page 21 829 002e 7B68 ldr r3, [r7, #4] 830 0030 734A ldr r2, .L55+12 831 0032 9342 cmp r3, r2 832 0034 08D0 beq .L38 833 .loc 1 308 3 discriminator 5 834 0036 7B68 ldr r3, [r7, #4] 835 0038 724A ldr r2, .L55+16 836 003a 9342 cmp r3, r2 837 003c 04D0 beq .L38 838 .loc 1 308 3 discriminator 6 839 003e 4FF49A71 mov r1, #308 840 0042 7148 ldr r0, .L55+20 841 0044 FFF7FEFF bl assert_failed 842 .L38: 309:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** assert_param(IS_GPIO_PIN(GPIO_Pin)); 843 .loc 1 309 3 is_stmt 1 844 0048 3B68 ldr r3, [r7] 845 004a 9BB2 uxth r3, r3 846 004c 002B cmp r3, #0 847 004e 05D0 beq .L39 848 .loc 1 309 3 is_stmt 0 discriminator 2 849 0050 3B68 ldr r3, [r7] 850 0052 1B0C lsrs r3, r3, #16 851 0054 1B04 lsls r3, r3, #16 852 0056 002B cmp r3, #0 853 0058 00F0BF80 beq .L41 854 .L39: 855 .loc 1 309 3 discriminator 3 856 005c 40F23511 movw r1, #309 857 0060 6948 ldr r0, .L55+20 858 0062 FFF7FEFF bl assert_failed 310:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** 311:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** /* Configure the port pins */ 312:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** while ((GPIO_Pin >> position) != 0x00u) 859 .loc 1 312 9 is_stmt 1 discriminator 3 860 0066 B8E0 b .L41 861 .L54: 313:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** { 314:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** /* Get current io position */ 315:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** iocurrent = (GPIO_Pin) & (1uL << position); 862 .loc 1 315 35 863 0068 0122 movs r2, #1 864 006a 7B69 ldr r3, [r7, #20] 865 006c 02FA03F3 lsl r3, r2, r3 866 .loc 1 315 15 867 0070 3A68 ldr r2, [r7] 868 0072 1340 ands r3, r3, r2 869 0074 3B61 str r3, [r7, #16] 316:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** 317:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** if (iocurrent != 0x00u) 870 .loc 1 317 8 871 0076 3B69 ldr r3, [r7, #16] 872 0078 002B cmp r3, #0 873 007a 00F0AB80 beq .L42 318:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** { 319:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** /*------------------------- EXTI Mode Configuration --------------------*/ 320:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** /* Clear the External Interrupt or Event for the current IO */ ARM GAS C:\Users\zl835\AppData\Local\Temp\cccP7Z1y.s page 22 321:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** 322:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** tmp = SYSCFG->EXTICR[position >> 2u]; 874 .loc 1 322 19 875 007e 634A ldr r2, .L55+24 876 .loc 1 322 37 877 0080 7B69 ldr r3, [r7, #20] 878 0082 9B08 lsrs r3, r3, #2 879 .loc 1 322 11 880 0084 0233 adds r3, r3, #2 881 0086 52F82330 ldr r3, [r2, r3, lsl #2] 882 008a FB60 str r3, [r7, #12] 323:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** tmp &= (0x0FuL << (4u * (position & 0x03u))); 883 .loc 1 323 41 884 008c 7B69 ldr r3, [r7, #20] 885 008e 03F00303 and r3, r3, #3 886 .loc 1 323 29 887 0092 9B00 lsls r3, r3, #2 888 .loc 1 323 22 889 0094 0F22 movs r2, #15 890 0096 02FA03F3 lsl r3, r2, r3 891 .loc 1 323 11 892 009a FA68 ldr r2, [r7, #12] 893 009c 1340 ands r3, r3, r2 894 009e FB60 str r3, [r7, #12] 324:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** if (tmp == (GPIO_GET_INDEX(GPIOx) << (4u * (position & 0x03u)))) 895 .loc 1 324 19 896 00a0 7B68 ldr r3, [r7, #4] 897 00a2 B3F1904F cmp r3, #1207959552 898 00a6 19D0 beq .L43 899 .loc 1 324 19 is_stmt 0 discriminator 1 900 00a8 7B68 ldr r3, [r7, #4] 901 00aa 524A ldr r2, .L55 902 00ac 9342 cmp r3, r2 903 00ae 13D0 beq .L44 904 .loc 1 324 19 discriminator 3 905 00b0 7B68 ldr r3, [r7, #4] 906 00b2 514A ldr r2, .L55+4 907 00b4 9342 cmp r3, r2 908 00b6 0DD0 beq .L45 909 .loc 1 324 19 discriminator 5 910 00b8 7B68 ldr r3, [r7, #4] 911 00ba 504A ldr r2, .L55+8 912 00bc 9342 cmp r3, r2 913 00be 07D0 beq .L46 914 .loc 1 324 19 discriminator 7 915 00c0 7B68 ldr r3, [r7, #4] 916 00c2 4F4A ldr r2, .L55+12 917 00c4 9342 cmp r3, r2 918 00c6 01D1 bne .L47 919 .loc 1 324 19 discriminator 9 920 00c8 0423 movs r3, #4 921 00ca 08E0 b .L52 922 .L47: 923 .loc 1 324 19 discriminator 10 924 00cc 0523 movs r3, #5 925 00ce 06E0 b .L52 926 .L46: ARM GAS C:\Users\zl835\AppData\Local\Temp\cccP7Z1y.s page 23 927 .loc 1 324 19 discriminator 8 928 00d0 0323 movs r3, #3 929 00d2 04E0 b .L52 930 .L45: 931 .loc 1 324 19 discriminator 6 932 00d4 0223 movs r3, #2 933 00d6 02E0 b .L52 934 .L44: 935 .loc 1 324 19 discriminator 4 936 00d8 0123 movs r3, #1 937 00da 00E0 b .L52 938 .L43: 939 .loc 1 324 19 discriminator 2 940 00dc 0023 movs r3, #0 941 .L52: 942 .loc 1 324 60 is_stmt 1 discriminator 20 943 00de 7A69 ldr r2, [r7, #20] 944 00e0 02F00302 and r2, r2, #3 945 .loc 1 324 48 discriminator 20 946 00e4 9200 lsls r2, r2, #2 947 .loc 1 324 41 discriminator 20 948 00e6 9340 lsls r3, r3, r2 949 .loc 1 324 10 discriminator 20 950 00e8 FA68 ldr r2, [r7, #12] 951 00ea 9A42 cmp r2, r3 952 00ec 32D1 bne .L53 325:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** { 326:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** /* Clear EXTI line configuration */ 327:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** EXTI->IMR &= ~((uint32_t)iocurrent); 953 .loc 1 327 19 954 00ee 484B ldr r3, .L55+28 955 00f0 1A68 ldr r2, [r3] 956 .loc 1 327 22 957 00f2 3B69 ldr r3, [r7, #16] 958 00f4 DB43 mvns r3, r3 959 .loc 1 327 19 960 00f6 4649 ldr r1, .L55+28 961 00f8 1340 ands r3, r3, r2 962 00fa 0B60 str r3, [r1] 328:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** EXTI->EMR &= ~((uint32_t)iocurrent); 963 .loc 1 328 19 964 00fc 444B ldr r3, .L55+28 965 00fe 5A68 ldr r2, [r3, #4] 966 .loc 1 328 22 967 0100 3B69 ldr r3, [r7, #16] 968 0102 DB43 mvns r3, r3 969 .loc 1 328 19 970 0104 4249 ldr r1, .L55+28 971 0106 1340 ands r3, r3, r2 972 0108 4B60 str r3, [r1, #4] 329:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** 330:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** /* Clear Rising Falling edge configuration */ 331:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** EXTI->FTSR &= ~((uint32_t)iocurrent); 973 .loc 1 331 20 974 010a 414B ldr r3, .L55+28 975 010c DA68 ldr r2, [r3, #12] 976 .loc 1 331 23 ARM GAS C:\Users\zl835\AppData\Local\Temp\cccP7Z1y.s page 24 977 010e 3B69 ldr r3, [r7, #16] 978 0110 DB43 mvns r3, r3 979 .loc 1 331 20 980 0112 3F49 ldr r1, .L55+28 981 0114 1340 ands r3, r3, r2 982 0116 CB60 str r3, [r1, #12] 332:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** EXTI->RTSR &= ~((uint32_t)iocurrent); 983 .loc 1 332 20 984 0118 3D4B ldr r3, .L55+28 985 011a 9A68 ldr r2, [r3, #8] 986 .loc 1 332 23 987 011c 3B69 ldr r3, [r7, #16] 988 011e DB43 mvns r3, r3 989 .loc 1 332 20 990 0120 3B49 ldr r1, .L55+28 991 0122 1340 ands r3, r3, r2 992 0124 8B60 str r3, [r1, #8] 333:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** 334:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** /* Configure the External Interrupt or event for the current IO */ 335:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** tmp = 0x0FuL << (4u * (position & 0x03u)); 993 .loc 1 335 41 994 0126 7B69 ldr r3, [r7, #20] 995 0128 03F00303 and r3, r3, #3 996 .loc 1 335 29 997 012c 9B00 lsls r3, r3, #2 998 .loc 1 335 13 999 012e 0F22 movs r2, #15 1000 0130 02FA03F3 lsl r3, r2, r3 1001 0134 FB60 str r3, [r7, #12] 336:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** SYSCFG->EXTICR[position >> 2u] &= ~tmp; 1002 .loc 1 336 40 1003 0136 354A ldr r2, .L55+24 1004 0138 7B69 ldr r3, [r7, #20] 1005 013a 9B08 lsrs r3, r3, #2 1006 013c 0233 adds r3, r3, #2 1007 013e 52F82310 ldr r1, [r2, r3, lsl #2] 1008 .loc 1 336 43 1009 0142 FB68 ldr r3, [r7, #12] 1010 0144 DA43 mvns r2, r3 1011 .loc 1 336 40 1012 0146 3148 ldr r0, .L55+24 1013 0148 7B69 ldr r3, [r7, #20] 1014 014a 9B08 lsrs r3, r3, #2 1015 014c 0A40 ands r2, r2, r1 1016 014e 0233 adds r3, r3, #2 1017 0150 40F82320 str r2, [r0, r3, lsl #2] 1018 .L53: 337:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** } 338:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** 339:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** /*------------------------- GPIO Mode Configuration --------------------*/ 340:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** /* Configure IO Direction in Input Floating Mode */ 341:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** GPIOx->MODER &= ~(GPIO_MODER_MODER0 << (position * 2u)); 1019 .loc 1 341 20 1020 0154 7B68 ldr r3, [r7, #4] 1021 0156 1A68 ldr r2, [r3] 1022 .loc 1 341 56 1023 0158 7B69 ldr r3, [r7, #20] ARM GAS C:\Users\zl835\AppData\Local\Temp\cccP7Z1y.s page 25 1024 015a 5B00 lsls r3, r3, #1 1025 .loc 1 341 43 1026 015c 0321 movs r1, #3 1027 015e 01FA03F3 lsl r3, r1, r3 1028 .loc 1 341 23 1029 0162 DB43 mvns r3, r3 1030 .loc 1 341 20 1031 0164 1A40 ands r2, r2, r3 1032 0166 7B68 ldr r3, [r7, #4] 1033 0168 1A60 str r2, [r3] 342:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** 343:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** /* Configure the default Alternate Function in current IO */ 344:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** GPIOx->AFR[position >> 3u] &= ~(0xFu << ((uint32_t)(position & 0x07u) * 4u)) ; 1034 .loc 1 344 34 1035 016a 7B69 ldr r3, [r7, #20] 1036 016c DA08 lsrs r2, r3, #3 1037 016e 7B68 ldr r3, [r7, #4] 1038 0170 0832 adds r2, r2, #8 1039 0172 53F82210 ldr r1, [r3, r2, lsl #2] 1040 .loc 1 344 48 1041 0176 7B69 ldr r3, [r7, #20] 1042 0178 03F00703 and r3, r3, #7 1043 .loc 1 344 77 1044 017c 9B00 lsls r3, r3, #2 1045 .loc 1 344 44 1046 017e 0F22 movs r2, #15 1047 0180 02FA03F3 lsl r3, r2, r3 1048 .loc 1 344 37 1049 0184 DB43 mvns r3, r3 1050 .loc 1 344 34 1051 0186 7A69 ldr r2, [r7, #20] 1052 0188 D208 lsrs r2, r2, #3 1053 018a 1940 ands r1, r1, r3 1054 018c 7B68 ldr r3, [r7, #4] 1055 018e 0832 adds r2, r2, #8 1056 0190 43F82210 str r1, [r3, r2, lsl #2] 345:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** 346:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** /* Deactivate the Pull-up and Pull-down resistor for the current IO */ 347:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** GPIOx->PUPDR &= ~(GPIO_PUPDR_PUPDR0 << (position * 2u)); 1057 .loc 1 347 20 1058 0194 7B68 ldr r3, [r7, #4] 1059 0196 DA68 ldr r2, [r3, #12] 1060 .loc 1 347 56 1061 0198 7B69 ldr r3, [r7, #20] 1062 019a 5B00 lsls r3, r3, #1 1063 .loc 1 347 43 1064 019c 0321 movs r1, #3 1065 019e 01FA03F3 lsl r3, r1, r3 1066 .loc 1 347 23 1067 01a2 DB43 mvns r3, r3 1068 .loc 1 347 20 1069 01a4 1A40 ands r2, r2, r3 1070 01a6 7B68 ldr r3, [r7, #4] 1071 01a8 DA60 str r2, [r3, #12] 348:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** 349:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** /* Configure the default value IO Output Type */ 350:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** GPIOx->OTYPER &= ~(GPIO_OTYPER_OT_0 << position) ; ARM GAS C:\Users\zl835\AppData\Local\Temp\cccP7Z1y.s page 26 1072 .loc 1 350 22 1073 01aa 7B68 ldr r3, [r7, #4] 1074 01ac 5A68 ldr r2, [r3, #4] 1075 .loc 1 350 44 1076 01ae 0121 movs r1, #1 1077 01b0 7B69 ldr r3, [r7, #20] 1078 01b2 01FA03F3 lsl r3, r1, r3 1079 .loc 1 350 25 1080 01b6 DB43 mvns r3, r3 1081 .loc 1 350 22 1082 01b8 1A40 ands r2, r2, r3 1083 01ba 7B68 ldr r3, [r7, #4] 1084 01bc 5A60 str r2, [r3, #4] 351:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** 352:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** /* Configure the default value for IO Speed */ 353:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** GPIOx->OSPEEDR &= ~(GPIO_OSPEEDER_OSPEEDR0 << (position * 2u)); 1085 .loc 1 353 22 1086 01be 7B68 ldr r3, [r7, #4] 1087 01c0 9A68 ldr r2, [r3, #8] 1088 .loc 1 353 63 1089 01c2 7B69 ldr r3, [r7, #20] 1090 01c4 5B00 lsls r3, r3, #1 1091 .loc 1 353 50 1092 01c6 0321 movs r1, #3 1093 01c8 01FA03F3 lsl r3, r1, r3 1094 .loc 1 353 25 1095 01cc DB43 mvns r3, r3 1096 .loc 1 353 22 1097 01ce 1A40 ands r2, r2, r3 1098 01d0 7B68 ldr r3, [r7, #4] 1099 01d2 9A60 str r2, [r3, #8] 1100 .L42: 354:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** } 355:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** 356:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** position++; 1101 .loc 1 356 13 1102 01d4 7B69 ldr r3, [r7, #20] 1103 01d6 0133 adds r3, r3, #1 1104 01d8 7B61 str r3, [r7, #20] 1105 .L41: 312:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** { 1106 .loc 1 312 20 1107 01da 3A68 ldr r2, [r7] 1108 01dc 7B69 ldr r3, [r7, #20] 1109 01de 22FA03F3 lsr r3, r2, r3 312:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** { 1110 .loc 1 312 9 1111 01e2 002B cmp r3, #0 1112 01e4 7FF440AF bne .L54 357:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** } 358:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** } 1113 .loc 1 358 1 1114 01e8 00BF nop 1115 01ea 00BF nop 1116 01ec 1837 adds r7, r7, #24 1117 .LCFI8: 1118 .cfi_def_cfa_offset 8 ARM GAS C:\Users\zl835\AppData\Local\Temp\cccP7Z1y.s page 27 1119 01ee BD46 mov sp, r7 1120 .LCFI9: 1121 .cfi_def_cfa_register 13 1122 @ sp needed 1123 01f0 80BD pop {r7, pc} 1124 .L56: 1125 01f2 00BF .align 2 1126 .L55: 1127 01f4 00040048 .word 1207960576 1128 01f8 00080048 .word 1207961600 1129 01fc 000C0048 .word 1207962624 1130 0200 00100048 .word 1207963648 1131 0204 00140048 .word 1207964672 1132 0208 00000000 .word .LC0 1133 020c 00000140 .word 1073807360 1134 0210 00040140 .word 1073808384 1135 .cfi_endproc 1136 .LFE131: 1138 .section .text.HAL_GPIO_ReadPin,"ax",%progbits 1139 .align 1 1140 .global HAL_GPIO_ReadPin 1141 .syntax unified 1142 .thumb 1143 .thumb_func 1145 HAL_GPIO_ReadPin: 1146 .LFB132: 359:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** 360:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** /** 361:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * @} 362:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** */ 363:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** 364:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** /** @defgroup GPIO_Exported_Functions_Group2 IO operation functions 365:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * @brief GPIO Read, Write, Toggle, Lock and EXTI management functions. 366:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * 367:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** @verbatim 368:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** =============================================================================== 369:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** ##### IO operation functions ##### 370:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** =============================================================================== 371:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** 372:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** @endverbatim 373:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * @{ 374:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** */ 375:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** 376:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** /** 377:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * @brief Read the specified input port pin. 378:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * @param GPIOx where x can be (A..F) to select the GPIO peripheral for STM32F3 family 379:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * @param GPIO_Pin specifies the port bit to read. 380:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * This parameter can be GPIO_PIN_x where x can be (0..15). 381:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * @retval The input port pin value. 382:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** */ 383:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** GPIO_PinState HAL_GPIO_ReadPin(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin) 384:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** { 1147 .loc 1 384 1 1148 .cfi_startproc 1149 @ args = 0, pretend = 0, frame = 16 1150 @ frame_needed = 1, uses_anonymous_args = 0 1151 0000 80B5 push {r7, lr} ARM GAS C:\Users\zl835\AppData\Local\Temp\cccP7Z1y.s page 28 1152 .LCFI10: 1153 .cfi_def_cfa_offset 8 1154 .cfi_offset 7, -8 1155 .cfi_offset 14, -4 1156 0002 84B0 sub sp, sp, #16 1157 .LCFI11: 1158 .cfi_def_cfa_offset 24 1159 0004 00AF add r7, sp, #0 1160 .LCFI12: 1161 .cfi_def_cfa_register 7 1162 0006 7860 str r0, [r7, #4] 1163 0008 0B46 mov r3, r1 1164 000a 7B80 strh r3, [r7, #2] @ movhi 385:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** GPIO_PinState bitstatus; 386:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** 387:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** /* Check the parameters */ 388:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** assert_param(IS_GPIO_PIN(GPIO_Pin)); 1165 .loc 1 388 3 1166 000c 7B88 ldrh r3, [r7, #2] 1167 000e 002B cmp r3, #0 1168 0010 04D0 beq .L58 1169 .loc 1 388 3 is_stmt 0 discriminator 2 1170 0012 7B88 ldrh r3, [r7, #2] 1171 0014 1B0C lsrs r3, r3, #16 1172 0016 1B04 lsls r3, r3, #16 1173 0018 002B cmp r3, #0 1174 001a 04D0 beq .L59 1175 .L58: 1176 .loc 1 388 3 discriminator 3 1177 001c 4FF4C271 mov r1, #388 1178 0020 0948 ldr r0, .L63 1179 0022 FFF7FEFF bl assert_failed 1180 .L59: 389:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** 390:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** if((GPIOx->IDR & GPIO_Pin) != (uint32_t)GPIO_PIN_RESET) 1181 .loc 1 390 12 is_stmt 1 1182 0026 7B68 ldr r3, [r7, #4] 1183 0028 1A69 ldr r2, [r3, #16] 1184 .loc 1 390 18 1185 002a 7B88 ldrh r3, [r7, #2] 1186 002c 1340 ands r3, r3, r2 1187 .loc 1 390 5 1188 002e 002B cmp r3, #0 1189 0030 02D0 beq .L60 391:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** { 392:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** bitstatus = GPIO_PIN_SET; 1190 .loc 1 392 15 1191 0032 0123 movs r3, #1 1192 0034 FB73 strb r3, [r7, #15] 1193 0036 01E0 b .L61 1194 .L60: 393:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** } 394:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** else 395:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** { 396:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** bitstatus = GPIO_PIN_RESET; 1195 .loc 1 396 15 1196 0038 0023 movs r3, #0 ARM GAS C:\Users\zl835\AppData\Local\Temp\cccP7Z1y.s page 29 1197 003a FB73 strb r3, [r7, #15] 1198 .L61: 397:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** } 398:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** return bitstatus; 1199 .loc 1 398 10 1200 003c FB7B ldrb r3, [r7, #15] @ zero_extendqisi2 399:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** } 1201 .loc 1 399 1 1202 003e 1846 mov r0, r3 1203 0040 1037 adds r7, r7, #16 1204 .LCFI13: 1205 .cfi_def_cfa_offset 8 1206 0042 BD46 mov sp, r7 1207 .LCFI14: 1208 .cfi_def_cfa_register 13 1209 @ sp needed 1210 0044 80BD pop {r7, pc} 1211 .L64: 1212 0046 00BF .align 2 1213 .L63: 1214 0048 00000000 .word .LC0 1215 .cfi_endproc 1216 .LFE132: 1218 .section .text.HAL_GPIO_WritePin,"ax",%progbits 1219 .align 1 1220 .global HAL_GPIO_WritePin 1221 .syntax unified 1222 .thumb 1223 .thumb_func 1225 HAL_GPIO_WritePin: 1226 .LFB133: 400:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** 401:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** /** 402:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * @brief Set or clear the selected data port bit. 403:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * 404:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * @note This function uses GPIOx_BSRR and GPIOx_BRR registers to allow atomic read/modify 405:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * accesses. In this way, there is no risk of an IRQ occurring between 406:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * the read and the modify access. 407:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * 408:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * @param GPIOx where x can be (A..F) to select the GPIO peripheral for STM32F3 family 409:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * @param GPIO_Pin specifies the port bit to be written. 410:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * This parameter can be one of GPIO_PIN_x where x can be (0..15). 411:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * @param PinState specifies the value to be written to the selected bit. 412:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * This parameter can be one of the GPIO_PinState enum values: 413:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * @arg GPIO_PIN_RESET: to clear the port pin 414:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * @arg GPIO_PIN_SET: to set the port pin 415:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * @retval None 416:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** */ 417:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** void HAL_GPIO_WritePin(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin, GPIO_PinState PinState) 418:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** { 1227 .loc 1 418 1 1228 .cfi_startproc 1229 @ args = 0, pretend = 0, frame = 8 1230 @ frame_needed = 1, uses_anonymous_args = 0 1231 0000 80B5 push {r7, lr} 1232 .LCFI15: 1233 .cfi_def_cfa_offset 8 ARM GAS C:\Users\zl835\AppData\Local\Temp\cccP7Z1y.s page 30 1234 .cfi_offset 7, -8 1235 .cfi_offset 14, -4 1236 0002 82B0 sub sp, sp, #8 1237 .LCFI16: 1238 .cfi_def_cfa_offset 16 1239 0004 00AF add r7, sp, #0 1240 .LCFI17: 1241 .cfi_def_cfa_register 7 1242 0006 7860 str r0, [r7, #4] 1243 0008 0B46 mov r3, r1 1244 000a 7B80 strh r3, [r7, #2] @ movhi 1245 000c 1346 mov r3, r2 1246 000e 7B70 strb r3, [r7, #1] 419:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** /* Check the parameters */ 420:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** assert_param(IS_GPIO_PIN(GPIO_Pin)); 1247 .loc 1 420 3 1248 0010 7B88 ldrh r3, [r7, #2] 1249 0012 002B cmp r3, #0 1250 0014 04D0 beq .L66 1251 .loc 1 420 3 is_stmt 0 discriminator 2 1252 0016 7B88 ldrh r3, [r7, #2] 1253 0018 1B0C lsrs r3, r3, #16 1254 001a 1B04 lsls r3, r3, #16 1255 001c 002B cmp r3, #0 1256 001e 04D0 beq .L67 1257 .L66: 1258 .loc 1 420 3 discriminator 3 1259 0020 4FF4D271 mov r1, #420 1260 0024 0D48 ldr r0, .L72 1261 0026 FFF7FEFF bl assert_failed 1262 .L67: 421:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** assert_param(IS_GPIO_PIN_ACTION(PinState)); 1263 .loc 1 421 3 is_stmt 1 1264 002a 7B78 ldrb r3, [r7, #1] @ zero_extendqisi2 1265 002c 002B cmp r3, #0 1266 002e 07D0 beq .L68 1267 .loc 1 421 3 is_stmt 0 discriminator 1 1268 0030 7B78 ldrb r3, [r7, #1] @ zero_extendqisi2 1269 0032 012B cmp r3, #1 1270 0034 04D0 beq .L68 1271 .loc 1 421 3 discriminator 2 1272 0036 40F2A511 movw r1, #421 1273 003a 0848 ldr r0, .L72 1274 003c FFF7FEFF bl assert_failed 1275 .L68: 422:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** 423:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** if(PinState != GPIO_PIN_RESET) 1276 .loc 1 423 5 is_stmt 1 1277 0040 7B78 ldrb r3, [r7, #1] @ zero_extendqisi2 1278 0042 002B cmp r3, #0 1279 0044 03D0 beq .L69 424:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** { 425:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** GPIOx->BSRR = (uint32_t)GPIO_Pin; 1280 .loc 1 425 19 1281 0046 7A88 ldrh r2, [r7, #2] 1282 .loc 1 425 17 1283 0048 7B68 ldr r3, [r7, #4] ARM GAS C:\Users\zl835\AppData\Local\Temp\cccP7Z1y.s page 31 1284 004a 9A61 str r2, [r3, #24] 426:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** } 427:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** else 428:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** { 429:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** GPIOx->BRR = (uint32_t)GPIO_Pin; 430:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** } 431:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** } 1285 .loc 1 431 1 1286 004c 02E0 b .L71 1287 .L69: 429:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** } 1288 .loc 1 429 18 1289 004e 7A88 ldrh r2, [r7, #2] 429:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** } 1290 .loc 1 429 16 1291 0050 7B68 ldr r3, [r7, #4] 1292 0052 9A62 str r2, [r3, #40] 1293 .L71: 1294 .loc 1 431 1 1295 0054 00BF nop 1296 0056 0837 adds r7, r7, #8 1297 .LCFI18: 1298 .cfi_def_cfa_offset 8 1299 0058 BD46 mov sp, r7 1300 .LCFI19: 1301 .cfi_def_cfa_register 13 1302 @ sp needed 1303 005a 80BD pop {r7, pc} 1304 .L73: 1305 .align 2 1306 .L72: 1307 005c 00000000 .word .LC0 1308 .cfi_endproc 1309 .LFE133: 1311 .section .text.HAL_GPIO_TogglePin,"ax",%progbits 1312 .align 1 1313 .global HAL_GPIO_TogglePin 1314 .syntax unified 1315 .thumb 1316 .thumb_func 1318 HAL_GPIO_TogglePin: 1319 .LFB134: 432:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** 433:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** /** 434:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * @brief Toggle the specified GPIO pin. 435:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * @param GPIOx where x can be (A..F) to select the GPIO peripheral for STM32F3 family 436:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * @param GPIO_Pin specifies the pin to be toggled. 437:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * @retval None 438:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** */ 439:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** void HAL_GPIO_TogglePin(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin) 440:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** { 1320 .loc 1 440 1 1321 .cfi_startproc 1322 @ args = 0, pretend = 0, frame = 16 1323 @ frame_needed = 1, uses_anonymous_args = 0 1324 0000 80B5 push {r7, lr} 1325 .LCFI20: ARM GAS C:\Users\zl835\AppData\Local\Temp\cccP7Z1y.s page 32 1326 .cfi_def_cfa_offset 8 1327 .cfi_offset 7, -8 1328 .cfi_offset 14, -4 1329 0002 84B0 sub sp, sp, #16 1330 .LCFI21: 1331 .cfi_def_cfa_offset 24 1332 0004 00AF add r7, sp, #0 1333 .LCFI22: 1334 .cfi_def_cfa_register 7 1335 0006 7860 str r0, [r7, #4] 1336 0008 0B46 mov r3, r1 1337 000a 7B80 strh r3, [r7, #2] @ movhi 441:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** uint32_t odr; 442:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** 443:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** /* Check the parameters */ 444:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** assert_param(IS_GPIO_PIN(GPIO_Pin)); 1338 .loc 1 444 3 1339 000c 7B88 ldrh r3, [r7, #2] 1340 000e 002B cmp r3, #0 1341 0010 04D0 beq .L75 1342 .loc 1 444 3 is_stmt 0 discriminator 2 1343 0012 7B88 ldrh r3, [r7, #2] 1344 0014 1B0C lsrs r3, r3, #16 1345 0016 1B04 lsls r3, r3, #16 1346 0018 002B cmp r3, #0 1347 001a 04D0 beq .L76 1348 .L75: 1349 .loc 1 444 3 discriminator 3 1350 001c 4FF4DE71 mov r1, #444 1351 0020 0A48 ldr r0, .L77 1352 0022 FFF7FEFF bl assert_failed 1353 .L76: 445:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** 446:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** /* get current Output Data Register value */ 447:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** odr = GPIOx->ODR; 1354 .loc 1 447 7 is_stmt 1 1355 0026 7B68 ldr r3, [r7, #4] 1356 0028 5B69 ldr r3, [r3, #20] 1357 002a FB60 str r3, [r7, #12] 448:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** 449:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** /* Set selected pins that were at low level, and reset ones that were high */ 450:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** GPIOx->BSRR = ((odr & GPIO_Pin) << GPIO_NUMBER) | (~odr & GPIO_Pin); 1358 .loc 1 450 23 1359 002c 7A88 ldrh r2, [r7, #2] 1360 002e FB68 ldr r3, [r7, #12] 1361 0030 1340 ands r3, r3, r2 1362 .loc 1 450 35 1363 0032 1A04 lsls r2, r3, #16 1364 .loc 1 450 54 1365 0034 FB68 ldr r3, [r7, #12] 1366 0036 D943 mvns r1, r3 1367 .loc 1 450 59 1368 0038 7B88 ldrh r3, [r7, #2] 1369 003a 0B40 ands r3, r3, r1 1370 .loc 1 450 51 1371 003c 1A43 orrs r2, r2, r3 1372 .loc 1 450 15 ARM GAS C:\Users\zl835\AppData\Local\Temp\cccP7Z1y.s page 33 1373 003e 7B68 ldr r3, [r7, #4] 1374 0040 9A61 str r2, [r3, #24] 451:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** } 1375 .loc 1 451 1 1376 0042 00BF nop 1377 0044 1037 adds r7, r7, #16 1378 .LCFI23: 1379 .cfi_def_cfa_offset 8 1380 0046 BD46 mov sp, r7 1381 .LCFI24: 1382 .cfi_def_cfa_register 13 1383 @ sp needed 1384 0048 80BD pop {r7, pc} 1385 .L78: 1386 004a 00BF .align 2 1387 .L77: 1388 004c 00000000 .word .LC0 1389 .cfi_endproc 1390 .LFE134: 1392 .section .text.HAL_GPIO_LockPin,"ax",%progbits 1393 .align 1 1394 .global HAL_GPIO_LockPin 1395 .syntax unified 1396 .thumb 1397 .thumb_func 1399 HAL_GPIO_LockPin: 1400 .LFB135: 452:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** 453:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** /** 454:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * @brief Lock GPIO Pins configuration registers. 455:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * @note The locked registers are GPIOx_MODER, GPIOx_OTYPER, GPIOx_OSPEEDR, 456:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * GPIOx_PUPDR, GPIOx_AFRL and GPIOx_AFRH. 457:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * @note The configuration of the locked GPIO pins can no longer be modified 458:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * until the next reset. 459:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * @param GPIOx where x can be (A..F) to select the GPIO peripheral for STM32F3 family 460:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * @param GPIO_Pin specifies the port bits to be locked. 461:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * This parameter can be any combination of GPIO_PIN_x where x can be (0..15). 462:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * @retval None 463:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** */ 464:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** HAL_StatusTypeDef HAL_GPIO_LockPin(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin) 465:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** { 1401 .loc 1 465 1 1402 .cfi_startproc 1403 @ args = 0, pretend = 0, frame = 16 1404 @ frame_needed = 1, uses_anonymous_args = 0 1405 0000 80B5 push {r7, lr} 1406 .LCFI25: 1407 .cfi_def_cfa_offset 8 1408 .cfi_offset 7, -8 1409 .cfi_offset 14, -4 1410 0002 84B0 sub sp, sp, #16 1411 .LCFI26: 1412 .cfi_def_cfa_offset 24 1413 0004 00AF add r7, sp, #0 1414 .LCFI27: 1415 .cfi_def_cfa_register 7 1416 0006 7860 str r0, [r7, #4] ARM GAS C:\Users\zl835\AppData\Local\Temp\cccP7Z1y.s page 34 1417 0008 0B46 mov r3, r1 1418 000a 7B80 strh r3, [r7, #2] @ movhi 466:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** __IO uint32_t tmp = GPIO_LCKR_LCKK; 1419 .loc 1 466 17 1420 000c 4FF48033 mov r3, #65536 1421 0010 FB60 str r3, [r7, #12] 467:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** 468:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** /* Check the parameters */ 469:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** assert_param(IS_GPIO_LOCK_INSTANCE(GPIOx)); 1422 .loc 1 469 3 1423 0012 7B68 ldr r3, [r7, #4] 1424 0014 B3F1904F cmp r3, #1207959552 1425 0018 0CD0 beq .L80 1426 .loc 1 469 3 is_stmt 0 discriminator 1 1427 001a 7B68 ldr r3, [r7, #4] 1428 001c 1A4A ldr r2, .L85 1429 001e 9342 cmp r3, r2 1430 0020 08D0 beq .L80 1431 .loc 1 469 3 discriminator 2 1432 0022 7B68 ldr r3, [r7, #4] 1433 0024 194A ldr r2, .L85+4 1434 0026 9342 cmp r3, r2 1435 0028 04D0 beq .L80 1436 .loc 1 469 3 discriminator 3 1437 002a 40F2D511 movw r1, #469 1438 002e 1848 ldr r0, .L85+8 1439 0030 FFF7FEFF bl assert_failed 1440 .L80: 470:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** assert_param(IS_GPIO_PIN(GPIO_Pin)); 1441 .loc 1 470 3 is_stmt 1 1442 0034 7B88 ldrh r3, [r7, #2] 1443 0036 002B cmp r3, #0 1444 0038 04D0 beq .L81 1445 .loc 1 470 3 is_stmt 0 discriminator 2 1446 003a 7B88 ldrh r3, [r7, #2] 1447 003c 1B0C lsrs r3, r3, #16 1448 003e 1B04 lsls r3, r3, #16 1449 0040 002B cmp r3, #0 1450 0042 04D0 beq .L82 1451 .L81: 1452 .loc 1 470 3 discriminator 3 1453 0044 4FF4EB71 mov r1, #470 1454 0048 1148 ldr r0, .L85+8 1455 004a FFF7FEFF bl assert_failed 1456 .L82: 471:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** 472:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** /* Apply lock key write sequence */ 473:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** tmp |= GPIO_Pin; 1457 .loc 1 473 7 is_stmt 1 1458 004e 7A88 ldrh r2, [r7, #2] 1459 0050 FB68 ldr r3, [r7, #12] 1460 0052 1343 orrs r3, r3, r2 1461 0054 FB60 str r3, [r7, #12] 474:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** /* Set LCKx bit(s): LCKK='1' + LCK[15U-0] */ 475:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** GPIOx->LCKR = tmp; 1462 .loc 1 475 15 1463 0056 FA68 ldr r2, [r7, #12] ARM GAS C:\Users\zl835\AppData\Local\Temp\cccP7Z1y.s page 35 1464 0058 7B68 ldr r3, [r7, #4] 1465 005a DA61 str r2, [r3, #28] 476:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** /* Reset LCKx bit(s): LCKK='0' + LCK[15U-0] */ 477:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** GPIOx->LCKR = GPIO_Pin; 1466 .loc 1 477 15 1467 005c 7A88 ldrh r2, [r7, #2] 1468 005e 7B68 ldr r3, [r7, #4] 1469 0060 DA61 str r2, [r3, #28] 478:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** /* Set LCKx bit(s): LCKK='1' + LCK[15U-0] */ 479:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** GPIOx->LCKR = tmp; 1470 .loc 1 479 15 1471 0062 FA68 ldr r2, [r7, #12] 1472 0064 7B68 ldr r3, [r7, #4] 1473 0066 DA61 str r2, [r3, #28] 480:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** /* Read LCKK register. This read is mandatory to complete key lock sequence */ 481:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** tmp = GPIOx->LCKR; 1474 .loc 1 481 14 1475 0068 7B68 ldr r3, [r7, #4] 1476 006a DB69 ldr r3, [r3, #28] 1477 .loc 1 481 7 1478 006c FB60 str r3, [r7, #12] 482:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** 483:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** /* read again in order to confirm lock is active */ 484:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** if((GPIOx->LCKR & GPIO_LCKR_LCKK) != 0x00u) 1479 .loc 1 484 11 1480 006e 7B68 ldr r3, [r7, #4] 1481 0070 DB69 ldr r3, [r3, #28] 1482 .loc 1 484 18 1483 0072 03F48033 and r3, r3, #65536 1484 .loc 1 484 4 1485 0076 002B cmp r3, #0 1486 0078 01D0 beq .L83 485:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** { 486:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** return HAL_OK; 1487 .loc 1 486 12 1488 007a 0023 movs r3, #0 1489 007c 00E0 b .L84 1490 .L83: 487:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** } 488:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** else 489:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** { 490:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** return HAL_ERROR; 1491 .loc 1 490 12 1492 007e 0123 movs r3, #1 1493 .L84: 491:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** } 492:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** } 1494 .loc 1 492 1 1495 0080 1846 mov r0, r3 1496 0082 1037 adds r7, r7, #16 1497 .LCFI28: 1498 .cfi_def_cfa_offset 8 1499 0084 BD46 mov sp, r7 1500 .LCFI29: 1501 .cfi_def_cfa_register 13 1502 @ sp needed 1503 0086 80BD pop {r7, pc} ARM GAS C:\Users\zl835\AppData\Local\Temp\cccP7Z1y.s page 36 1504 .L86: 1505 .align 2 1506 .L85: 1507 0088 00040048 .word 1207960576 1508 008c 000C0048 .word 1207962624 1509 0090 00000000 .word .LC0 1510 .cfi_endproc 1511 .LFE135: 1513 .section .text.HAL_GPIO_EXTI_IRQHandler,"ax",%progbits 1514 .align 1 1515 .global HAL_GPIO_EXTI_IRQHandler 1516 .syntax unified 1517 .thumb 1518 .thumb_func 1520 HAL_GPIO_EXTI_IRQHandler: 1521 .LFB136: 493:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** 494:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** /** 495:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * @brief Handle EXTI interrupt request. 496:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * @param GPIO_Pin Specifies the port pin connected to corresponding EXTI line. 497:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * @retval None 498:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** */ 499:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** void HAL_GPIO_EXTI_IRQHandler(uint16_t GPIO_Pin) 500:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** { 1522 .loc 1 500 1 1523 .cfi_startproc 1524 @ args = 0, pretend = 0, frame = 8 1525 @ frame_needed = 1, uses_anonymous_args = 0 1526 0000 80B5 push {r7, lr} 1527 .LCFI30: 1528 .cfi_def_cfa_offset 8 1529 .cfi_offset 7, -8 1530 .cfi_offset 14, -4 1531 0002 82B0 sub sp, sp, #8 1532 .LCFI31: 1533 .cfi_def_cfa_offset 16 1534 0004 00AF add r7, sp, #0 1535 .LCFI32: 1536 .cfi_def_cfa_register 7 1537 0006 0346 mov r3, r0 1538 0008 FB80 strh r3, [r7, #6] @ movhi 501:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** /* EXTI line interrupt detected */ 502:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** if(__HAL_GPIO_EXTI_GET_IT(GPIO_Pin) != 0x00u) 1539 .loc 1 502 6 1540 000a 084B ldr r3, .L90 1541 000c 5A69 ldr r2, [r3, #20] 1542 000e FB88 ldrh r3, [r7, #6] 1543 0010 1340 ands r3, r3, r2 1544 .loc 1 502 5 1545 0012 002B cmp r3, #0 1546 0014 06D0 beq .L89 503:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** { 504:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** __HAL_GPIO_EXTI_CLEAR_IT(GPIO_Pin); 1547 .loc 1 504 5 1548 0016 054A ldr r2, .L90 1549 0018 FB88 ldrh r3, [r7, #6] 1550 001a 5361 str r3, [r2, #20] ARM GAS C:\Users\zl835\AppData\Local\Temp\cccP7Z1y.s page 37 505:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** HAL_GPIO_EXTI_Callback(GPIO_Pin); 1551 .loc 1 505 5 1552 001c FB88 ldrh r3, [r7, #6] 1553 001e 1846 mov r0, r3 1554 0020 FFF7FEFF bl HAL_GPIO_EXTI_Callback 1555 .L89: 506:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** } 507:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** } 1556 .loc 1 507 1 1557 0024 00BF nop 1558 0026 0837 adds r7, r7, #8 1559 .LCFI33: 1560 .cfi_def_cfa_offset 8 1561 0028 BD46 mov sp, r7 1562 .LCFI34: 1563 .cfi_def_cfa_register 13 1564 @ sp needed 1565 002a 80BD pop {r7, pc} 1566 .L91: 1567 .align 2 1568 .L90: 1569 002c 00040140 .word 1073808384 1570 .cfi_endproc 1571 .LFE136: 1573 .section .text.HAL_GPIO_EXTI_Callback,"ax",%progbits 1574 .align 1 1575 .weak HAL_GPIO_EXTI_Callback 1576 .syntax unified 1577 .thumb 1578 .thumb_func 1580 HAL_GPIO_EXTI_Callback: 1581 .LFB137: 508:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** 509:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** /** 510:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * @brief EXTI line detection callback. 511:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * @param GPIO_Pin Specifies the port pin connected to corresponding EXTI line. 512:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** * @retval None 513:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** */ 514:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** __weak void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin) 515:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** { 1582 .loc 1 515 1 1583 .cfi_startproc 1584 @ args = 0, pretend = 0, frame = 8 1585 @ frame_needed = 1, uses_anonymous_args = 0 1586 @ link register save eliminated. 1587 0000 80B4 push {r7} 1588 .LCFI35: 1589 .cfi_def_cfa_offset 4 1590 .cfi_offset 7, -4 1591 0002 83B0 sub sp, sp, #12 1592 .LCFI36: 1593 .cfi_def_cfa_offset 16 1594 0004 00AF add r7, sp, #0 1595 .LCFI37: 1596 .cfi_def_cfa_register 7 1597 0006 0346 mov r3, r0 1598 0008 FB80 strh r3, [r7, #6] @ movhi ARM GAS C:\Users\zl835\AppData\Local\Temp\cccP7Z1y.s page 38 516:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** /* Prevent unused argument(s) compilation warning */ 517:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** UNUSED(GPIO_Pin); 518:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** 519:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** /* NOTE: This function should not be modified, when the callback is needed, 520:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** the HAL_GPIO_EXTI_Callback could be implemented in the user file 521:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** */ 522:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_gpio.c **** } 1599 .loc 1 522 1 1600 000a 00BF nop 1601 000c 0C37 adds r7, r7, #12 1602 .LCFI38: 1603 .cfi_def_cfa_offset 4 1604 000e BD46 mov sp, r7 1605 .LCFI39: 1606 .cfi_def_cfa_register 13 1607 @ sp needed 1608 0010 5DF8047B ldr r7, [sp], #4 1609 .LCFI40: 1610 .cfi_restore 7 1611 .cfi_def_cfa_offset 0 1612 0014 7047 bx lr 1613 .cfi_endproc 1614 .LFE137: 1616 .text 1617 .Letext0: 1618 .file 2 "d:\\arm-gcc\\arm-none-eabi\\include\\machine\\_default_types.h" 1619 .file 3 "d:\\arm-gcc\\arm-none-eabi\\include\\sys\\_stdint.h" 1620 .file 4 "Drivers/CMSIS/Device/ST/STM32F3xx/Include/stm32f302xc.h" 1621 .file 5 "Drivers/STM32F3xx_HAL_Driver/Inc/stm32f3xx_hal_def.h" 1622 .file 6 "Drivers/STM32F3xx_HAL_Driver/Inc/stm32f3xx_hal_gpio.h" ARM GAS C:\Users\zl835\AppData\Local\Temp\cccP7Z1y.s page 39 DEFINED SYMBOLS *ABS*:00000000 stm32f3xx_hal_gpio.c C:\Users\zl835\AppData\Local\Temp\cccP7Z1y.s:20 .rodata:00000000 $d C:\Users\zl835\AppData\Local\Temp\cccP7Z1y.s:25 .text.HAL_GPIO_Init:00000000 $t C:\Users\zl835\AppData\Local\Temp\cccP7Z1y.s:31 .text.HAL_GPIO_Init:00000000 HAL_GPIO_Init C:\Users\zl835\AppData\Local\Temp\cccP7Z1y.s:176 .text.HAL_GPIO_Init:000000f4 $d C:\Users\zl835\AppData\Local\Temp\cccP7Z1y.s:184 .text.HAL_GPIO_Init:0000010c $t C:\Users\zl835\AppData\Local\Temp\cccP7Z1y.s:590 .text.HAL_GPIO_Init:00000380 $d C:\Users\zl835\AppData\Local\Temp\cccP7Z1y.s:600 .text.HAL_GPIO_Init:000003a0 $t C:\Users\zl835\AppData\Local\Temp\cccP7Z1y.s:775 .text.HAL_GPIO_Init:00000488 $d C:\Users\zl835\AppData\Local\Temp\cccP7Z1y.s:781 .text.HAL_GPIO_DeInit:00000000 $t C:\Users\zl835\AppData\Local\Temp\cccP7Z1y.s:787 .text.HAL_GPIO_DeInit:00000000 HAL_GPIO_DeInit C:\Users\zl835\AppData\Local\Temp\cccP7Z1y.s:1127 .text.HAL_GPIO_DeInit:000001f4 $d C:\Users\zl835\AppData\Local\Temp\cccP7Z1y.s:1139 .text.HAL_GPIO_ReadPin:00000000 $t C:\Users\zl835\AppData\Local\Temp\cccP7Z1y.s:1145 .text.HAL_GPIO_ReadPin:00000000 HAL_GPIO_ReadPin C:\Users\zl835\AppData\Local\Temp\cccP7Z1y.s:1214 .text.HAL_GPIO_ReadPin:00000048 $d C:\Users\zl835\AppData\Local\Temp\cccP7Z1y.s:1219 .text.HAL_GPIO_WritePin:00000000 $t C:\Users\zl835\AppData\Local\Temp\cccP7Z1y.s:1225 .text.HAL_GPIO_WritePin:00000000 HAL_GPIO_WritePin C:\Users\zl835\AppData\Local\Temp\cccP7Z1y.s:1307 .text.HAL_GPIO_WritePin:0000005c $d C:\Users\zl835\AppData\Local\Temp\cccP7Z1y.s:1312 .text.HAL_GPIO_TogglePin:00000000 $t C:\Users\zl835\AppData\Local\Temp\cccP7Z1y.s:1318 .text.HAL_GPIO_TogglePin:00000000 HAL_GPIO_TogglePin C:\Users\zl835\AppData\Local\Temp\cccP7Z1y.s:1388 .text.HAL_GPIO_TogglePin:0000004c $d C:\Users\zl835\AppData\Local\Temp\cccP7Z1y.s:1393 .text.HAL_GPIO_LockPin:00000000 $t C:\Users\zl835\AppData\Local\Temp\cccP7Z1y.s:1399 .text.HAL_GPIO_LockPin:00000000 HAL_GPIO_LockPin C:\Users\zl835\AppData\Local\Temp\cccP7Z1y.s:1507 .text.HAL_GPIO_LockPin:00000088 $d C:\Users\zl835\AppData\Local\Temp\cccP7Z1y.s:1514 .text.HAL_GPIO_EXTI_IRQHandler:00000000 $t C:\Users\zl835\AppData\Local\Temp\cccP7Z1y.s:1520 .text.HAL_GPIO_EXTI_IRQHandler:00000000 HAL_GPIO_EXTI_IRQHandler C:\Users\zl835\AppData\Local\Temp\cccP7Z1y.s:1580 .text.HAL_GPIO_EXTI_Callback:00000000 HAL_GPIO_EXTI_Callback C:\Users\zl835\AppData\Local\Temp\cccP7Z1y.s:1569 .text.HAL_GPIO_EXTI_IRQHandler:0000002c $d C:\Users\zl835\AppData\Local\Temp\cccP7Z1y.s:1574 .text.HAL_GPIO_EXTI_Callback:00000000 $t UNDEFINED SYMBOLS assert_failed