Files

copied
Last update 5 months 1 week by Masakatsu Honda
FilesCubeMXpassion-v2-1build
..
adc.d
adc.lst
adc.o
buzzer.d
buzzer.lst
buzzer.o
config.d
config.lst
config.o
eeprom.d
eeprom.lst
eeprom.o
encodermode.d
encodermode.lst
encodermode.o
gpio.d
gpio.lst
gpio.o
imu.d
imu.lst
imu.o
interrupt.d
interrupt.lst
interrupt.o
led.d
led.lst
led.o
main.d
main.lst
main.o
passion-v2-1.bin
passion-v2-1.elf
passion-v2-1.hex
passion-v2-1.map
pwm.d
pwm.lst
pwm.o
spi.d
spi.lst
spi.o
startup_stm32f405xx.d
startup_stm32f405xx.o
stdout.d
stdout.lst
stdout.o
stm32f4xx_hal.d
stm32f4xx_hal.lst
stm32f4xx_hal.o
stm32f4xx_hal_adc.d
stm32f4xx_hal_adc.lst
stm32f4xx_hal_adc.o
stm32f4xx_hal_adc_ex.d
stm32f4xx_hal_adc_ex.lst
stm32f4xx_hal_adc_ex.o
stm32f4xx_hal_cortex.d
stm32f4xx_hal_cortex.lst
stm32f4xx_hal_cortex.o
stm32f4xx_hal_dma.d
stm32f4xx_hal_dma.lst
stm32f4xx_hal_dma.o
stm32f4xx_hal_dma_ex.d
stm32f4xx_hal_dma_ex.lst
stm32f4xx_hal_dma_ex.o
stm32f4xx_hal_exti.d
stm32f4xx_hal_exti.lst
stm32f4xx_hal_exti.o
stm32f4xx_hal_flash.d
stm32f4xx_hal_flash.lst
stm32f4xx_hal_flash.o
stm32f4xx_hal_flash_ex.d
stm32f4xx_hal_flash_ex.lst
stm32f4xx_hal_flash_ex.o
stm32f4xx_hal_flash_ramfunc.d
stm32f4xx_hal_flash_ramfunc.lst
stm32f4xx_hal_flash_ramfunc.o
stm32f4xx_hal_gpio.d
stm32f4xx_hal_gpio.lst
stm32f4xx_hal_gpio.o
stm32f4xx_hal_msp.d
stm32f4xx_hal_msp.lst
stm32f4xx_hal_msp.o
stm32f4xx_hal_pwr.d
stm32f4xx_hal_pwr.lst
stm32f4xx_hal_pwr.o
stm32f4xx_hal_pwr_ex.d
stm32f4xx_hal_pwr_ex.lst
stm32f4xx_hal_pwr_ex.o
stm32f4xx_hal_rcc.d
stm32f4xx_hal_rcc.lst
stm32f4xx_hal_rcc.o
stm32f4xx_hal_rcc_ex.d
stm32f4xx_hal_rcc_ex.lst
stm32f4xx_hal_rcc_ex.o
stm32f4xx_hal_spi.d
stm32f4xx_hal_spi.lst
stm32f4xx_hal_spi.o
stm32f4xx_hal_tim.d
stm32f4xx_hal_tim.lst
stm32f4xx_hal_tim.o
stm32f4xx_hal_tim_ex.d
stm32f4xx_hal_tim_ex.lst
stm32f4xx_hal_tim_ex.o
stm32f4xx_hal_uart.d
stm32f4xx_hal_uart.lst
stm32f4xx_hal_uart.o
stm32f4xx_it.d
stm32f4xx_it.lst
stm32f4xx_it.o
stm32f4xx_ll_adc.d
stm32f4xx_ll_adc.lst
stm32f4xx_ll_adc.o
syscalls.d
syscalls.lst
syscalls.o
sysmem.d
sysmem.lst
sysmem.o
system_stm32f4xx.d
system_stm32f4xx.lst
system_stm32f4xx.o
test.d
test.lst
test.o
wait.d
wait.lst
wait.o
stm32f4xx_hal_gpio.lst
ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cciqG6Tj.s page 1 1 .cpu cortex-m4 2 .arch armv7e-m 3 .fpu fpv4-sp-d16 4 .eabi_attribute 27, 1 5 .eabi_attribute 28, 1 6 .eabi_attribute 20, 1 7 .eabi_attribute 21, 1 8 .eabi_attribute 23, 3 9 .eabi_attribute 24, 1 10 .eabi_attribute 25, 1 11 .eabi_attribute 26, 1 12 .eabi_attribute 30, 1 13 .eabi_attribute 34, 1 14 .eabi_attribute 18, 4 15 .file "stm32f4xx_hal_gpio.c" 16 .text 17 .Ltext0: 18 .cfi_sections .debug_frame 19 .section .text.HAL_GPIO_Init,"ax",%progbits 20 .align 1 21 .global HAL_GPIO_Init 22 .syntax unified 23 .thumb 24 .thumb_func 26 HAL_GPIO_Init: 27 .LVL0: 28 .LFB239: 29 .file 1 "Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c" 1:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /** 2:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** ****************************************************************************** 3:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @file stm32f4xx_hal_gpio.c 4:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @author MCD Application Team 5:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @brief GPIO HAL module driver. 6:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * This file provides firmware functions to manage the following 7:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * functionalities of the General Purpose Input/Output (GPIO) peripheral: 8:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * + Initialization and de-initialization functions 9:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * + IO operation functions 10:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * 11:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** ****************************************************************************** 12:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @attention 13:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * 14:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * Copyright (c) 2017 STMicroelectronics. 15:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * All rights reserved. 16:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * 17:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * This software is licensed under terms that can be found in the LICENSE file 18:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * in the root directory of this software component. 19:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * If no LICENSE file comes with this software, it is provided AS-IS. 20:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * 21:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** ****************************************************************************** 22:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** @verbatim 23:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** ============================================================================== 24:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** ##### GPIO Peripheral features ##### 25:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** ============================================================================== 26:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** [..] 27:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** Subject to the specific hardware characteristics of each I/O port listed in the datasheet, each 28:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** port bit of the General Purpose IO (GPIO) Ports, can be individually configured by software 29:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** in several modes: ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cciqG6Tj.s page 2 30:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** (+) Input mode 31:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** (+) Analog mode 32:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** (+) Output mode 33:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** (+) Alternate function mode 34:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** (+) External interrupt/event lines 35:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 36:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** [..] 37:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** During and just after reset, the alternate functions and external interrupt 38:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** lines are not active and the I/O ports are configured in input floating mode. 39:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 40:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** [..] 41:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** All GPIO pins have weak internal pull-up and pull-down resistors, which can be 42:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** activated or not. 43:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 44:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** [..] 45:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** In Output or Alternate mode, each IO can be configured on open-drain or push-pull 46:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** type and the IO speed can be selected depending on the VDD value. 47:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 48:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** [..] 49:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** All ports have external interrupt/event capability. To use external interrupt 50:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** lines, the port must be configured in input mode. All available GPIO pins are 51:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** connected to the 16 external interrupt/event lines from EXTI0 to EXTI15. 52:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 53:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** [..] 54:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** The external interrupt/event controller consists of up to 23 edge detectors 55:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** (16 lines are connected to GPIO) for generating event/interrupt requests (each 56:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** input line can be independently configured to select the type (interrupt or event) 57:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** and the corresponding trigger event (rising or falling or both). Each line can 58:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** also be masked independently. 59:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 60:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** ##### How to use this driver ##### 61:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** ============================================================================== 62:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** [..] 63:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** (#) Enable the GPIO AHB clock using the following function: __HAL_RCC_GPIOx_CLK_ENABLE(). 64:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 65:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** (#) Configure the GPIO pin(s) using HAL_GPIO_Init(). 66:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** (++) Configure the IO mode using "Mode" member from GPIO_InitTypeDef structure 67:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** (++) Activate Pull-up, Pull-down resistor using "Pull" member from GPIO_InitTypeDef 68:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** structure. 69:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** (++) In case of Output or alternate function mode selection: the speed is 70:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** configured through "Speed" member from GPIO_InitTypeDef structure. 71:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** (++) In alternate mode is selection, the alternate function connected to the IO 72:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** is configured through "Alternate" member from GPIO_InitTypeDef structure. 73:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** (++) Analog mode is required when a pin is to be used as ADC channel 74:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** or DAC output. 75:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** (++) In case of external interrupt/event selection the "Mode" member from 76:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** GPIO_InitTypeDef structure select the type (interrupt or event) and 77:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** the corresponding trigger event (rising or falling or both). 78:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 79:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** (#) In case of external interrupt/event mode selection, configure NVIC IRQ priority 80:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** mapped to the EXTI line using HAL_NVIC_SetPriority() and enable it using 81:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** HAL_NVIC_EnableIRQ(). 82:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 83:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** (#) To get the level of a pin configured in input mode use HAL_GPIO_ReadPin(). 84:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 85:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** (#) To set/reset the level of a pin configured in output mode use 86:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** HAL_GPIO_WritePin()/HAL_GPIO_TogglePin(). ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cciqG6Tj.s page 3 87:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 88:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** (#) To lock pin configuration until next reset use HAL_GPIO_LockPin(). 89:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 90:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 91:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** (#) During and just after reset, the alternate functions are not 92:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** active and the GPIO pins are configured in input floating mode (except JTAG 93:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** pins). 94:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 95:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** (#) The LSE oscillator pins OSC32_IN and OSC32_OUT can be used as general purpose 96:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** (PC14 and PC15, respectively) when the LSE oscillator is off. The LSE has 97:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** priority over the GPIO function. 98:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 99:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** (#) The HSE oscillator pins OSC_IN/OSC_OUT can be used as 100:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** general purpose PH0 and PH1, respectively, when the HSE oscillator is off. 101:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** The HSE has priority over the GPIO function. 102:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 103:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** @endverbatim 104:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** ****************************************************************************** 105:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** */ 106:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 107:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Includes ------------------------------------------------------------------*/ 108:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** #include "stm32f4xx_hal.h" 109:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 110:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /** @addtogroup STM32F4xx_HAL_Driver 111:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @{ 112:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** */ 113:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 114:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /** @defgroup GPIO GPIO 115:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @brief GPIO HAL module driver 116:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @{ 117:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** */ 118:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 119:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** #ifdef HAL_GPIO_MODULE_ENABLED 120:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 121:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Private typedef -----------------------------------------------------------*/ 122:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Private define ------------------------------------------------------------*/ 123:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /** @addtogroup GPIO_Private_Constants GPIO Private Constants 124:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @{ 125:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** */ 126:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 127:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** #define GPIO_NUMBER 16U 128:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /** 129:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @} 130:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** */ 131:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Private macro -------------------------------------------------------------*/ 132:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Private variables ---------------------------------------------------------*/ 133:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Private function prototypes -----------------------------------------------*/ 134:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Private functions ---------------------------------------------------------*/ 135:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Exported functions --------------------------------------------------------*/ 136:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /** @defgroup GPIO_Exported_Functions GPIO Exported Functions 137:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @{ 138:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** */ 139:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 140:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /** @defgroup GPIO_Exported_Functions_Group1 Initialization and de-initialization functions 141:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @brief Initialization and Configuration functions 142:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * 143:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** @verbatim ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cciqG6Tj.s page 4 144:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** =============================================================================== 145:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** ##### Initialization and de-initialization functions ##### 146:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** =============================================================================== 147:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** [..] 148:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** This section provides functions allowing to initialize and de-initialize the GPIOs 149:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** to be ready for use. 150:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 151:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** @endverbatim 152:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @{ 153:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** */ 154:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 155:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 156:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /** 157:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @brief Initializes the GPIOx peripheral according to the specified parameters in the GPIO_Init 158:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @param GPIOx where x can be (A..K) to select the GPIO peripheral for STM32F429X device or 159:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * x can be (A..I) to select the GPIO peripheral for STM32F40XX and STM32F427 160:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @param GPIO_Init pointer to a GPIO_InitTypeDef structure that contains 161:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * the configuration information for the specified GPIO peripheral. 162:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @retval None 163:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** */ 164:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** void HAL_GPIO_Init(GPIO_TypeDef *GPIOx, GPIO_InitTypeDef *GPIO_Init) 165:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** { 30 .loc 1 165 1 view -0 31 .cfi_startproc 32 @ args = 0, pretend = 0, frame = 8 33 @ frame_needed = 0, uses_anonymous_args = 0 166:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** uint32_t position; 34 .loc 1 166 3 view .LVU1 167:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** uint32_t ioposition = 0x00U; 35 .loc 1 167 3 view .LVU2 168:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** uint32_t iocurrent = 0x00U; 36 .loc 1 168 3 view .LVU3 169:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** uint32_t temp = 0x00U; 37 .loc 1 169 3 view .LVU4 170:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 171:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Check the parameters */ 172:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** assert_param(IS_GPIO_ALL_INSTANCE(GPIOx)); 38 .loc 1 172 3 view .LVU5 173:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** assert_param(IS_GPIO_PIN(GPIO_Init->Pin)); 39 .loc 1 173 3 view .LVU6 174:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** assert_param(IS_GPIO_MODE(GPIO_Init->Mode)); 40 .loc 1 174 3 view .LVU7 175:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 176:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Configure the port pins */ 177:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** for(position = 0U; position < GPIO_NUMBER; position++) 41 .loc 1 177 3 view .LVU8 42 .loc 1 177 16 is_stmt 0 view .LVU9 43 0000 0023 movs r3, #0 44 .LVL1: 45 .loc 1 177 22 is_stmt 1 view .LVU10 46 .loc 1 177 3 is_stmt 0 view .LVU11 47 0002 0F2B cmp r3, #15 48 0004 00F2E480 bhi .L24 165:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** uint32_t position; 49 .loc 1 165 1 view .LVU12 50 0008 70B5 push {r4, r5, r6, lr} 51 .LCFI0: ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cciqG6Tj.s page 5 52 .cfi_def_cfa_offset 16 53 .cfi_offset 4, -16 54 .cfi_offset 5, -12 55 .cfi_offset 6, -8 56 .cfi_offset 14, -4 57 000a 82B0 sub sp, sp, #8 58 .LCFI1: 59 .cfi_def_cfa_offset 24 60 000c 60E0 b .L12 61 .LVL2: 62 .L26: 178:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** { 179:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Get the IO position */ 180:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** ioposition = 0x01U << position; 181:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Get the current IO position */ 182:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** iocurrent = (uint32_t)(GPIO_Init->Pin) & ioposition; 183:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 184:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** if(iocurrent == ioposition) 185:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** { 186:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /*--------------------- GPIO Mode Configuration ------------------------*/ 187:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* In case of Output or Alternate function mode selection */ 188:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** if(((GPIO_Init->Mode & GPIO_MODE) == MODE_OUTPUT) || \ 189:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** (GPIO_Init->Mode & GPIO_MODE) == MODE_AF) 190:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** { 191:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Check the Speed parameter */ 192:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** assert_param(IS_GPIO_SPEED(GPIO_Init->Speed)); 63 .loc 1 192 9 is_stmt 1 view .LVU13 193:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Configure the IO Speed */ 194:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp = GPIOx->OSPEEDR; 64 .loc 1 194 9 view .LVU14 65 .loc 1 194 14 is_stmt 0 view .LVU15 66 000e 8568 ldr r5, [r0, #8] 67 .LVL3: 195:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp &= ~(GPIO_OSPEEDER_OSPEEDR0 << (position * 2U)); 68 .loc 1 195 9 is_stmt 1 view .LVU16 69 .loc 1 195 55 is_stmt 0 view .LVU17 70 0010 5E00 lsls r6, r3, #1 71 .loc 1 195 42 view .LVU18 72 0012 0324 movs r4, #3 73 0014 B440 lsls r4, r4, r6 74 .loc 1 195 14 view .LVU19 75 0016 25EA0405 bic r5, r5, r4 76 .LVL4: 196:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp |= (GPIO_Init->Speed << (position * 2U)); 77 .loc 1 196 9 is_stmt 1 view .LVU20 78 .loc 1 196 27 is_stmt 0 view .LVU21 79 001a CC68 ldr r4, [r1, #12] 80 .loc 1 196 35 view .LVU22 81 001c B440 lsls r4, r4, r6 82 .loc 1 196 14 view .LVU23 83 001e 2C43 orrs r4, r4, r5 84 .LVL5: 197:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** GPIOx->OSPEEDR = temp; 85 .loc 1 197 9 is_stmt 1 view .LVU24 86 .loc 1 197 24 is_stmt 0 view .LVU25 87 0020 8460 str r4, [r0, #8] 198:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cciqG6Tj.s page 6 199:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Configure the IO Output Type */ 200:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp = GPIOx->OTYPER; 88 .loc 1 200 9 is_stmt 1 view .LVU26 89 .loc 1 200 14 is_stmt 0 view .LVU27 90 0022 4568 ldr r5, [r0, #4] 91 .LVL6: 201:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp &= ~(GPIO_OTYPER_OT_0 << position) ; 92 .loc 1 201 9 is_stmt 1 view .LVU28 93 .loc 1 201 14 is_stmt 0 view .LVU29 94 0024 25EA0205 bic r5, r5, r2 95 .LVL7: 202:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp |= (((GPIO_Init->Mode & OUTPUT_TYPE) >> OUTPUT_TYPE_Pos) << position); 96 .loc 1 202 9 is_stmt 1 view .LVU30 97 .loc 1 202 29 is_stmt 0 view .LVU31 98 0028 4C68 ldr r4, [r1, #4] 99 .loc 1 202 51 view .LVU32 100 002a C4F30012 ubfx r2, r4, #4, #1 101 .LVL8: 102 .loc 1 202 71 view .LVU33 103 002e 9A40 lsls r2, r2, r3 104 .loc 1 202 14 view .LVU34 105 0030 2A43 orrs r2, r2, r5 106 .LVL9: 203:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** GPIOx->OTYPER = temp; 107 .loc 1 203 9 is_stmt 1 view .LVU35 108 .loc 1 203 23 is_stmt 0 view .LVU36 109 0032 4260 str r2, [r0, #4] 110 0034 5AE0 b .L4 111 .LVL10: 112 .L27: 204:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** } 205:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 206:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** if((GPIO_Init->Mode & GPIO_MODE) != MODE_ANALOG) 207:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** { 208:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Check the parameters */ 209:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** assert_param(IS_GPIO_PULL(GPIO_Init->Pull)); 210:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 211:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Activate the Pull-up or Pull down resistor for the current IO */ 212:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp = GPIOx->PUPDR; 213:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp &= ~(GPIO_PUPDR_PUPDR0 << (position * 2U)); 214:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp |= ((GPIO_Init->Pull) << (position * 2U)); 215:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** GPIOx->PUPDR = temp; 216:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** } 217:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 218:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* In case of Alternate function mode selection */ 219:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** if((GPIO_Init->Mode & GPIO_MODE) == MODE_AF) 220:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** { 221:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Check the Alternate function parameter */ 222:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** assert_param(IS_GPIO_AF(GPIO_Init->Alternate)); 113 .loc 1 222 9 is_stmt 1 view .LVU37 223:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Configure Alternate function mapped with the current IO */ 224:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp = GPIOx->AFR[position >> 3U]; 114 .loc 1 224 9 view .LVU38 115 .loc 1 224 36 is_stmt 0 view .LVU39 116 0036 DC08 lsrs r4, r3, #3 117 .loc 1 224 14 view .LVU40 118 0038 0834 adds r4, r4, #8 ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cciqG6Tj.s page 7 119 003a 50F82460 ldr r6, [r0, r4, lsl #2] 120 .LVL11: 225:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp &= ~(0xFU << ((uint32_t)(position & 0x07U) * 4U)) ; 121 .loc 1 225 9 is_stmt 1 view .LVU41 122 .loc 1 225 28 is_stmt 0 view .LVU42 123 003e 03F00702 and r2, r3, #7 124 .loc 1 225 57 view .LVU43 125 0042 9500 lsls r5, r2, #2 126 .loc 1 225 24 view .LVU44 127 0044 0F22 movs r2, #15 128 0046 AA40 lsls r2, r2, r5 129 .loc 1 225 14 view .LVU45 130 0048 26EA020E bic lr, r6, r2 131 .LVL12: 226:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp |= ((uint32_t)(GPIO_Init->Alternate) << (((uint32_t)position & 0x07U) * 4U)); 132 .loc 1 226 9 is_stmt 1 view .LVU46 133 .loc 1 226 38 is_stmt 0 view .LVU47 134 004c 0A69 ldr r2, [r1, #16] 135 .loc 1 226 51 view .LVU48 136 004e AA40 lsls r2, r2, r5 137 .loc 1 226 14 view .LVU49 138 0050 42EA0E02 orr r2, r2, lr 139 .LVL13: 227:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** GPIOx->AFR[position >> 3U] = temp; 140 .loc 1 227 9 is_stmt 1 view .LVU50 141 .loc 1 227 36 is_stmt 0 view .LVU51 142 0054 40F82420 str r2, [r0, r4, lsl #2] 143 0058 5CE0 b .L6 144 .LVL14: 145 .L28: 228:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** } 229:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 230:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Configure IO Direction mode (Input, Output, Alternate or Analog) */ 231:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp = GPIOx->MODER; 232:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp &= ~(GPIO_MODER_MODER0 << (position * 2U)); 233:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp |= ((GPIO_Init->Mode & GPIO_MODE) << (position * 2U)); 234:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** GPIOx->MODER = temp; 235:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 236:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /*--------------------- EXTI Mode Configuration ------------------------*/ 237:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Configure the External Interrupt or event for the current IO */ 238:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** if((GPIO_Init->Mode & EXTI_MODE) != 0x00U) 239:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** { 240:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Enable SYSCFG Clock */ 241:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** __HAL_RCC_SYSCFG_CLK_ENABLE(); 242:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 243:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp = SYSCFG->EXTICR[position >> 2U]; 244:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp &= ~(0x0FU << (4U * (position & 0x03U))); 245:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp |= ((uint32_t)(GPIO_GET_INDEX(GPIOx)) << (4U * (position & 0x03U))); 146 .loc 1 245 29 view .LVU52 147 005a 0722 movs r2, #7 148 005c 00E0 b .L7 149 .L13: 150 .loc 1 245 18 view .LVU53 151 005e 0022 movs r2, #0 152 .L7: 153 .loc 1 245 52 discriminator 32 view .LVU54 154 0060 02FA0EF2 lsl r2, r2, lr ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cciqG6Tj.s page 8 155 .loc 1 245 14 discriminator 32 view .LVU55 156 0064 2A43 orrs r2, r2, r5 157 .LVL15: 246:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** SYSCFG->EXTICR[position >> 2U] = temp; 158 .loc 1 246 9 is_stmt 1 discriminator 32 view .LVU56 159 .loc 1 246 40 is_stmt 0 discriminator 32 view .LVU57 160 0066 0234 adds r4, r4, #2 161 0068 5A4D ldr r5, .L29 162 006a 45F82420 str r2, [r5, r4, lsl #2] 247:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 248:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Clear Rising Falling edge configuration */ 249:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp = EXTI->RTSR; 163 .loc 1 249 9 is_stmt 1 discriminator 32 view .LVU58 164 .loc 1 249 14 is_stmt 0 discriminator 32 view .LVU59 165 006e 5A4A ldr r2, .L29+4 166 .LVL16: 167 .loc 1 249 14 discriminator 32 view .LVU60 168 0070 9468 ldr r4, [r2, #8] 169 .LVL17: 250:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp &= ~((uint32_t)iocurrent); 170 .loc 1 250 9 is_stmt 1 discriminator 32 view .LVU61 171 .loc 1 250 17 is_stmt 0 discriminator 32 view .LVU62 172 0072 6FEA0C02 mvn r2, ip 173 .loc 1 250 14 discriminator 32 view .LVU63 174 0076 24EA0C05 bic r5, r4, ip 175 .LVL18: 251:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** if((GPIO_Init->Mode & TRIGGER_RISING) != 0x00U) 176 .loc 1 251 9 is_stmt 1 discriminator 32 view .LVU64 177 .loc 1 251 22 is_stmt 0 discriminator 32 view .LVU65 178 007a 4E68 ldr r6, [r1, #4] 179 .loc 1 251 11 discriminator 32 view .LVU66 180 007c 16F4801F tst r6, #1048576 181 0080 01D0 beq .L8 252:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** { 253:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp |= iocurrent; 182 .loc 1 253 11 is_stmt 1 view .LVU67 183 .loc 1 253 16 is_stmt 0 view .LVU68 184 0082 4CEA0405 orr r5, ip, r4 185 .LVL19: 186 .L8: 254:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** } 255:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** EXTI->RTSR = temp; 187 .loc 1 255 9 is_stmt 1 view .LVU69 188 .loc 1 255 20 is_stmt 0 view .LVU70 189 0086 544C ldr r4, .L29+4 190 0088 A560 str r5, [r4, #8] 256:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 257:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp = EXTI->FTSR; 191 .loc 1 257 9 is_stmt 1 view .LVU71 192 .loc 1 257 14 is_stmt 0 view .LVU72 193 008a E468 ldr r4, [r4, #12] 194 .LVL20: 258:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp &= ~((uint32_t)iocurrent); 195 .loc 1 258 9 is_stmt 1 view .LVU73 196 .loc 1 258 14 is_stmt 0 view .LVU74 197 008c 02EA0405 and r5, r2, r4 198 .LVL21: ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cciqG6Tj.s page 9 259:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** if((GPIO_Init->Mode & TRIGGER_FALLING) != 0x00U) 199 .loc 1 259 9 is_stmt 1 view .LVU75 200 .loc 1 259 22 is_stmt 0 view .LVU76 201 0090 4E68 ldr r6, [r1, #4] 202 .loc 1 259 11 view .LVU77 203 0092 16F4001F tst r6, #2097152 204 0096 01D0 beq .L9 260:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** { 261:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp |= iocurrent; 205 .loc 1 261 11 is_stmt 1 view .LVU78 206 .loc 1 261 16 is_stmt 0 view .LVU79 207 0098 4CEA0405 orr r5, ip, r4 208 .LVL22: 209 .L9: 262:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** } 263:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** EXTI->FTSR = temp; 210 .loc 1 263 9 is_stmt 1 view .LVU80 211 .loc 1 263 20 is_stmt 0 view .LVU81 212 009c 4E4C ldr r4, .L29+4 213 009e E560 str r5, [r4, #12] 264:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 265:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp = EXTI->EMR; 214 .loc 1 265 9 is_stmt 1 view .LVU82 215 .loc 1 265 14 is_stmt 0 view .LVU83 216 00a0 6468 ldr r4, [r4, #4] 217 .LVL23: 266:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp &= ~((uint32_t)iocurrent); 218 .loc 1 266 9 is_stmt 1 view .LVU84 219 .loc 1 266 14 is_stmt 0 view .LVU85 220 00a2 02EA0405 and r5, r2, r4 221 .LVL24: 267:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** if((GPIO_Init->Mode & EXTI_EVT) != 0x00U) 222 .loc 1 267 9 is_stmt 1 view .LVU86 223 .loc 1 267 22 is_stmt 0 view .LVU87 224 00a6 4E68 ldr r6, [r1, #4] 225 .loc 1 267 11 view .LVU88 226 00a8 16F4003F tst r6, #131072 227 00ac 01D0 beq .L10 268:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** { 269:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp |= iocurrent; 228 .loc 1 269 11 is_stmt 1 view .LVU89 229 .loc 1 269 16 is_stmt 0 view .LVU90 230 00ae 4CEA0405 orr r5, ip, r4 231 .LVL25: 232 .L10: 270:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** } 271:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** EXTI->EMR = temp; 233 .loc 1 271 9 is_stmt 1 view .LVU91 234 .loc 1 271 19 is_stmt 0 view .LVU92 235 00b2 494C ldr r4, .L29+4 236 00b4 6560 str r5, [r4, #4] 272:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 273:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Clear EXTI line configuration */ 274:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp = EXTI->IMR; 237 .loc 1 274 9 is_stmt 1 view .LVU93 238 .loc 1 274 14 is_stmt 0 view .LVU94 239 00b6 2468 ldr r4, [r4] ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cciqG6Tj.s page 10 240 .LVL26: 275:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp &= ~((uint32_t)iocurrent); 241 .loc 1 275 9 is_stmt 1 view .LVU95 242 .loc 1 275 14 is_stmt 0 view .LVU96 243 00b8 2240 ands r2, r2, r4 244 .LVL27: 276:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** if((GPIO_Init->Mode & EXTI_IT) != 0x00U) 245 .loc 1 276 9 is_stmt 1 view .LVU97 246 .loc 1 276 22 is_stmt 0 view .LVU98 247 00ba 4D68 ldr r5, [r1, #4] 248 .loc 1 276 11 view .LVU99 249 00bc 15F4803F tst r5, #65536 250 00c0 01D0 beq .L11 277:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** { 278:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp |= iocurrent; 251 .loc 1 278 11 is_stmt 1 view .LVU100 252 .loc 1 278 16 is_stmt 0 view .LVU101 253 00c2 4CEA0402 orr r2, ip, r4 254 .LVL28: 255 .L11: 279:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** } 280:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** EXTI->IMR = temp; 256 .loc 1 280 9 is_stmt 1 view .LVU102 257 .loc 1 280 19 is_stmt 0 view .LVU103 258 00c6 444C ldr r4, .L29+4 259 00c8 2260 str r2, [r4] 260 .LVL29: 261 .L3: 177:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** { 262 .loc 1 177 46 is_stmt 1 discriminator 2 view .LVU104 177:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** { 263 .loc 1 177 54 is_stmt 0 discriminator 2 view .LVU105 264 00ca 0133 adds r3, r3, #1 265 .LVL30: 177:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** { 266 .loc 1 177 22 is_stmt 1 discriminator 2 view .LVU106 177:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** { 267 .loc 1 177 3 is_stmt 0 discriminator 2 view .LVU107 268 00cc 0F2B cmp r3, #15 269 00ce 7DD8 bhi .L25 270 .LVL31: 271 .L12: 180:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Get the current IO position */ 272 .loc 1 180 5 is_stmt 1 view .LVU108 180:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Get the current IO position */ 273 .loc 1 180 16 is_stmt 0 view .LVU109 274 00d0 0122 movs r2, #1 275 00d2 9A40 lsls r2, r2, r3 276 .LVL32: 182:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 277 .loc 1 182 5 is_stmt 1 view .LVU110 182:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 278 .loc 1 182 37 is_stmt 0 view .LVU111 279 00d4 0C68 ldr r4, [r1] 182:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 280 .loc 1 182 15 view .LVU112 281 00d6 04EA020C and ip, r4, r2 ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cciqG6Tj.s page 11 282 .LVL33: 184:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** { 283 .loc 1 184 5 is_stmt 1 view .LVU113 184:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** { 284 .loc 1 184 7 is_stmt 0 view .LVU114 285 00da 32EA0404 bics r4, r2, r4 286 00de F4D1 bne .L3 188:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** (GPIO_Init->Mode & GPIO_MODE) == MODE_AF) 287 .loc 1 188 7 is_stmt 1 view .LVU115 188:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** (GPIO_Init->Mode & GPIO_MODE) == MODE_AF) 288 .loc 1 188 21 is_stmt 0 view .LVU116 289 00e0 4C68 ldr r4, [r1, #4] 188:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** (GPIO_Init->Mode & GPIO_MODE) == MODE_AF) 290 .loc 1 188 28 view .LVU117 291 00e2 04F00304 and r4, r4, #3 188:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** (GPIO_Init->Mode & GPIO_MODE) == MODE_AF) 292 .loc 1 188 57 view .LVU118 293 00e6 013C subs r4, r4, #1 188:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** (GPIO_Init->Mode & GPIO_MODE) == MODE_AF) 294 .loc 1 188 9 view .LVU119 295 00e8 012C cmp r4, #1 296 00ea 90D9 bls .L26 297 .LVL34: 298 .L4: 206:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** { 299 .loc 1 206 7 is_stmt 1 view .LVU120 206:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** { 300 .loc 1 206 20 is_stmt 0 view .LVU121 301 00ec 4A68 ldr r2, [r1, #4] 206:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** { 302 .loc 1 206 27 view .LVU122 303 00ee 02F00302 and r2, r2, #3 206:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** { 304 .loc 1 206 9 view .LVU123 305 00f2 032A cmp r2, #3 306 00f4 09D0 beq .L5 209:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 307 .loc 1 209 9 is_stmt 1 view .LVU124 212:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp &= ~(GPIO_PUPDR_PUPDR0 << (position * 2U)); 308 .loc 1 212 9 view .LVU125 212:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp &= ~(GPIO_PUPDR_PUPDR0 << (position * 2U)); 309 .loc 1 212 14 is_stmt 0 view .LVU126 310 00f6 C468 ldr r4, [r0, #12] 311 .LVL35: 213:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp |= ((GPIO_Init->Pull) << (position * 2U)); 312 .loc 1 213 9 is_stmt 1 view .LVU127 213:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp |= ((GPIO_Init->Pull) << (position * 2U)); 313 .loc 1 213 50 is_stmt 0 view .LVU128 314 00f8 5D00 lsls r5, r3, #1 213:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp |= ((GPIO_Init->Pull) << (position * 2U)); 315 .loc 1 213 37 view .LVU129 316 00fa 0322 movs r2, #3 317 00fc AA40 lsls r2, r2, r5 213:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp |= ((GPIO_Init->Pull) << (position * 2U)); 318 .loc 1 213 14 view .LVU130 319 00fe 24EA0204 bic r4, r4, r2 320 .LVL36: ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cciqG6Tj.s page 12 214:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** GPIOx->PUPDR = temp; 321 .loc 1 214 9 is_stmt 1 view .LVU131 214:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** GPIOx->PUPDR = temp; 322 .loc 1 214 28 is_stmt 0 view .LVU132 323 0102 8A68 ldr r2, [r1, #8] 214:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** GPIOx->PUPDR = temp; 324 .loc 1 214 36 view .LVU133 325 0104 AA40 lsls r2, r2, r5 214:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** GPIOx->PUPDR = temp; 326 .loc 1 214 14 view .LVU134 327 0106 2243 orrs r2, r2, r4 328 .LVL37: 215:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** } 329 .loc 1 215 9 is_stmt 1 view .LVU135 215:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** } 330 .loc 1 215 22 is_stmt 0 view .LVU136 331 0108 C260 str r2, [r0, #12] 332 .LVL38: 333 .L5: 219:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** { 334 .loc 1 219 7 is_stmt 1 view .LVU137 219:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** { 335 .loc 1 219 20 is_stmt 0 view .LVU138 336 010a 4A68 ldr r2, [r1, #4] 219:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** { 337 .loc 1 219 27 view .LVU139 338 010c 02F00302 and r2, r2, #3 219:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** { 339 .loc 1 219 9 view .LVU140 340 0110 022A cmp r2, #2 341 0112 90D0 beq .L27 342 .L6: 231:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp &= ~(GPIO_MODER_MODER0 << (position * 2U)); 343 .loc 1 231 7 is_stmt 1 view .LVU141 231:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp &= ~(GPIO_MODER_MODER0 << (position * 2U)); 344 .loc 1 231 12 is_stmt 0 view .LVU142 345 0114 0468 ldr r4, [r0] 346 .LVL39: 232:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp |= ((GPIO_Init->Mode & GPIO_MODE) << (position * 2U)); 347 .loc 1 232 7 is_stmt 1 view .LVU143 232:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp |= ((GPIO_Init->Mode & GPIO_MODE) << (position * 2U)); 348 .loc 1 232 48 is_stmt 0 view .LVU144 349 0116 4FEA430E lsl lr, r3, #1 232:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp |= ((GPIO_Init->Mode & GPIO_MODE) << (position * 2U)); 350 .loc 1 232 35 view .LVU145 351 011a 0322 movs r2, #3 352 011c 02FA0EF2 lsl r2, r2, lr 232:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp |= ((GPIO_Init->Mode & GPIO_MODE) << (position * 2U)); 353 .loc 1 232 12 view .LVU146 354 0120 24EA0204 bic r4, r4, r2 355 .LVL40: 233:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** GPIOx->MODER = temp; 356 .loc 1 233 7 is_stmt 1 view .LVU147 233:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** GPIOx->MODER = temp; 357 .loc 1 233 26 is_stmt 0 view .LVU148 358 0124 4A68 ldr r2, [r1, #4] 233:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** GPIOx->MODER = temp; ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cciqG6Tj.s page 13 359 .loc 1 233 33 view .LVU149 360 0126 02F00302 and r2, r2, #3 233:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** GPIOx->MODER = temp; 361 .loc 1 233 46 view .LVU150 362 012a 02FA0EF2 lsl r2, r2, lr 233:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** GPIOx->MODER = temp; 363 .loc 1 233 12 view .LVU151 364 012e 2243 orrs r2, r2, r4 365 .LVL41: 234:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 366 .loc 1 234 7 is_stmt 1 view .LVU152 234:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 367 .loc 1 234 20 is_stmt 0 view .LVU153 368 0130 0260 str r2, [r0] 238:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** { 369 .loc 1 238 7 is_stmt 1 view .LVU154 238:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** { 370 .loc 1 238 20 is_stmt 0 view .LVU155 371 0132 4A68 ldr r2, [r1, #4] 372 .LVL42: 238:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** { 373 .loc 1 238 9 view .LVU156 374 0134 12F4403F tst r2, #196608 375 0138 C7D0 beq .L3 241:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 376 .loc 1 241 9 is_stmt 1 view .LVU157 377 .LBB2: 241:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 378 .loc 1 241 9 view .LVU158 379 013a 0022 movs r2, #0 380 013c 0192 str r2, [sp, #4] 381 .LVL43: 241:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 382 .loc 1 241 9 view .LVU159 383 013e 274A ldr r2, .L29+8 384 0140 546C ldr r4, [r2, #68] 385 0142 44F48044 orr r4, r4, #16384 386 0146 5464 str r4, [r2, #68] 241:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 387 .loc 1 241 9 view .LVU160 388 0148 526C ldr r2, [r2, #68] 389 014a 02F48042 and r2, r2, #16384 390 014e 0192 str r2, [sp, #4] 241:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 391 .loc 1 241 9 view .LVU161 392 0150 019A ldr r2, [sp, #4] 393 .LBE2: 241:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 394 .loc 1 241 9 view .LVU162 243:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp &= ~(0x0FU << (4U * (position & 0x03U))); 395 .loc 1 243 9 view .LVU163 243:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp &= ~(0x0FU << (4U * (position & 0x03U))); 396 .loc 1 243 40 is_stmt 0 view .LVU164 397 0152 9C08 lsrs r4, r3, #2 243:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp &= ~(0x0FU << (4U * (position & 0x03U))); 398 .loc 1 243 14 view .LVU165 399 0154 A51C adds r5, r4, #2 ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cciqG6Tj.s page 14 400 0156 1F4A ldr r2, .L29 401 0158 52F82550 ldr r5, [r2, r5, lsl #2] 402 .LVL44: 244:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp |= ((uint32_t)(GPIO_GET_INDEX(GPIOx)) << (4U * (position & 0x03U))); 403 .loc 1 244 9 is_stmt 1 view .LVU166 244:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp |= ((uint32_t)(GPIO_GET_INDEX(GPIOx)) << (4U * (position & 0x03U))); 404 .loc 1 244 44 is_stmt 0 view .LVU167 405 015c 03F00302 and r2, r3, #3 244:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp |= ((uint32_t)(GPIO_GET_INDEX(GPIOx)) << (4U * (position & 0x03U))); 406 .loc 1 244 32 view .LVU168 407 0160 4FEA820E lsl lr, r2, #2 244:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp |= ((uint32_t)(GPIO_GET_INDEX(GPIOx)) << (4U * (position & 0x03U))); 408 .loc 1 244 25 view .LVU169 409 0164 0F22 movs r2, #15 410 0166 02FA0EF2 lsl r2, r2, lr 244:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp |= ((uint32_t)(GPIO_GET_INDEX(GPIOx)) << (4U * (position & 0x03U))); 411 .loc 1 244 14 view .LVU170 412 016a 25EA0205 bic r5, r5, r2 413 .LVL45: 245:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** SYSCFG->EXTICR[position >> 2U] = temp; 414 .loc 1 245 9 is_stmt 1 view .LVU171 245:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** SYSCFG->EXTICR[position >> 2U] = temp; 415 .loc 1 245 18 is_stmt 0 view .LVU172 416 016e 1C4A ldr r2, .L29+12 417 0170 9042 cmp r0, r2 418 0172 3FF474AF beq .L13 245:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** SYSCFG->EXTICR[position >> 2U] = temp; 419 .loc 1 245 29 discriminator 1 view .LVU173 420 0176 02F58062 add r2, r2, #1024 421 017a 9042 cmp r0, r2 422 017c 1AD0 beq .L14 245:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** SYSCFG->EXTICR[position >> 2U] = temp; 423 .loc 1 245 29 discriminator 3 view .LVU174 424 017e 02F58062 add r2, r2, #1024 425 0182 9042 cmp r0, r2 426 0184 18D0 beq .L15 245:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** SYSCFG->EXTICR[position >> 2U] = temp; 427 .loc 1 245 29 discriminator 5 view .LVU175 428 0186 02F58062 add r2, r2, #1024 429 018a 9042 cmp r0, r2 430 018c 16D0 beq .L16 245:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** SYSCFG->EXTICR[position >> 2U] = temp; 431 .loc 1 245 29 discriminator 7 view .LVU176 432 018e 02F58062 add r2, r2, #1024 433 0192 9042 cmp r0, r2 434 0194 14D0 beq .L17 245:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** SYSCFG->EXTICR[position >> 2U] = temp; 435 .loc 1 245 29 discriminator 9 view .LVU177 436 0196 02F58062 add r2, r2, #1024 437 019a 9042 cmp r0, r2 438 019c 12D0 beq .L18 245:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** SYSCFG->EXTICR[position >> 2U] = temp; 439 .loc 1 245 29 discriminator 11 view .LVU178 440 019e 02F58062 add r2, r2, #1024 441 01a2 9042 cmp r0, r2 442 01a4 10D0 beq .L19 245:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** SYSCFG->EXTICR[position >> 2U] = temp; ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cciqG6Tj.s page 15 443 .loc 1 245 29 discriminator 13 view .LVU179 444 01a6 02F58062 add r2, r2, #1024 445 01aa 9042 cmp r0, r2 446 01ac 3FF455AF beq .L28 245:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** SYSCFG->EXTICR[position >> 2U] = temp; 447 .loc 1 245 29 view .LVU180 448 01b0 0822 movs r2, #8 449 01b2 55E7 b .L7 450 .L14: 451 01b4 0122 movs r2, #1 452 .LVL46: 245:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** SYSCFG->EXTICR[position >> 2U] = temp; 453 .loc 1 245 29 view .LVU181 454 01b6 53E7 b .L7 455 .LVL47: 456 .L15: 245:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** SYSCFG->EXTICR[position >> 2U] = temp; 457 .loc 1 245 29 view .LVU182 458 01b8 0222 movs r2, #2 459 01ba 51E7 b .L7 460 .L16: 461 01bc 0322 movs r2, #3 462 01be 4FE7 b .L7 463 .L17: 464 01c0 0422 movs r2, #4 465 01c2 4DE7 b .L7 466 .L18: 467 01c4 0522 movs r2, #5 468 01c6 4BE7 b .L7 469 .L19: 470 01c8 0622 movs r2, #6 471 01ca 49E7 b .L7 472 .LVL48: 473 .L25: 281:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** } 282:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** } 283:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** } 284:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** } 474 .loc 1 284 1 view .LVU183 475 01cc 02B0 add sp, sp, #8 476 .LCFI2: 477 .cfi_def_cfa_offset 16 478 @ sp needed 479 01ce 70BD pop {r4, r5, r6, pc} 480 .LVL49: 481 .L24: 482 .LCFI3: 483 .cfi_def_cfa_offset 0 484 .cfi_restore 4 485 .cfi_restore 5 486 .cfi_restore 6 487 .cfi_restore 14 488 .loc 1 284 1 view .LVU184 489 01d0 7047 bx lr 490 .L30: 491 01d2 00BF .align 2 492 .L29: ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cciqG6Tj.s page 16 493 01d4 00380140 .word 1073821696 494 01d8 003C0140 .word 1073822720 495 01dc 00380240 .word 1073887232 496 01e0 00000240 .word 1073872896 497 .cfi_endproc 498 .LFE239: 500 .section .text.HAL_GPIO_DeInit,"ax",%progbits 501 .align 1 502 .global HAL_GPIO_DeInit 503 .syntax unified 504 .thumb 505 .thumb_func 507 HAL_GPIO_DeInit: 508 .LVL50: 509 .LFB240: 285:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 286:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /** 287:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @brief De-initializes the GPIOx peripheral registers to their default reset values. 288:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @param GPIOx where x can be (A..K) to select the GPIO peripheral for STM32F429X device or 289:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * x can be (A..I) to select the GPIO peripheral for STM32F40XX and STM32F427 290:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @param GPIO_Pin specifies the port bit to be written. 291:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * This parameter can be one of GPIO_PIN_x where x can be (0..15). 292:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @retval None 293:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** */ 294:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** void HAL_GPIO_DeInit(GPIO_TypeDef *GPIOx, uint32_t GPIO_Pin) 295:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** { 510 .loc 1 295 1 is_stmt 1 view -0 511 .cfi_startproc 512 @ args = 0, pretend = 0, frame = 0 513 @ frame_needed = 0, uses_anonymous_args = 0 296:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** uint32_t position; 514 .loc 1 296 3 view .LVU186 297:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** uint32_t ioposition = 0x00U; 515 .loc 1 297 3 view .LVU187 298:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** uint32_t iocurrent = 0x00U; 516 .loc 1 298 3 view .LVU188 299:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** uint32_t tmp = 0x00U; 517 .loc 1 299 3 view .LVU189 300:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 301:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Check the parameters */ 302:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** assert_param(IS_GPIO_ALL_INSTANCE(GPIOx)); 518 .loc 1 302 3 view .LVU190 303:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 304:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Configure the port pins */ 305:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** for(position = 0U; position < GPIO_NUMBER; position++) 519 .loc 1 305 3 view .LVU191 520 .loc 1 305 16 is_stmt 0 view .LVU192 521 0000 0023 movs r3, #0 522 .LVL51: 523 .loc 1 305 22 is_stmt 1 view .LVU193 524 .loc 1 305 3 is_stmt 0 view .LVU194 525 0002 0F2B cmp r3, #15 526 0004 00F28F80 bhi .L48 295:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** uint32_t position; 527 .loc 1 295 1 view .LVU195 528 0008 F0B5 push {r4, r5, r6, r7, lr} 529 .LCFI4: ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cciqG6Tj.s page 17 530 .cfi_def_cfa_offset 20 531 .cfi_offset 4, -20 532 .cfi_offset 5, -16 533 .cfi_offset 6, -12 534 .cfi_offset 7, -8 535 .cfi_offset 14, -4 536 000a 2DE0 b .L36 537 .LVL52: 538 .L51: 306:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** { 307:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Get the IO position */ 308:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** ioposition = 0x01U << position; 309:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Get the current IO position */ 310:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** iocurrent = (GPIO_Pin) & ioposition; 311:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 312:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** if(iocurrent == ioposition) 313:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** { 314:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /*------------------------- EXTI Mode Configuration --------------------*/ 315:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** tmp = SYSCFG->EXTICR[position >> 2U]; 316:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** tmp &= (0x0FU << (4U * (position & 0x03U))); 317:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** if(tmp == ((uint32_t)(GPIO_GET_INDEX(GPIOx)) << (4U * (position & 0x03U)))) 539 .loc 1 317 29 view .LVU196 540 000c 0725 movs r5, #7 541 000e 00E0 b .L34 542 .L37: 543 .loc 1 317 18 view .LVU197 544 0010 0025 movs r5, #0 545 .L34: 546 .loc 1 317 52 discriminator 32 view .LVU198 547 0012 05FA0CFC lsl ip, r5, ip 548 .loc 1 317 9 discriminator 32 view .LVU199 549 0016 A445 cmp ip, r4 550 0018 69D0 beq .L49 551 .LVL53: 552 .L35: 318:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** { 319:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Clear EXTI line configuration */ 320:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** EXTI->IMR &= ~((uint32_t)iocurrent); 321:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** EXTI->EMR &= ~((uint32_t)iocurrent); 322:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 323:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Clear Rising Falling edge configuration */ 324:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** EXTI->FTSR &= ~((uint32_t)iocurrent); 325:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** EXTI->RTSR &= ~((uint32_t)iocurrent); 326:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 327:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Configure the External Interrupt or event for the current IO */ 328:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** tmp = 0x0FU << (4U * (position & 0x03U)); 329:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** SYSCFG->EXTICR[position >> 2U] &= ~tmp; 330:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** } 331:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 332:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /*------------------------- GPIO Mode Configuration --------------------*/ 333:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Configure IO Direction in Input Floating Mode */ 334:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** GPIOx->MODER &= ~(GPIO_MODER_MODER0 << (position * 2U)); 553 .loc 1 334 7 is_stmt 1 view .LVU200 554 .loc 1 334 20 is_stmt 0 view .LVU201 555 001a 0468 ldr r4, [r0] 556 .loc 1 334 56 view .LVU202 557 001c 5D00 lsls r5, r3, #1 ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cciqG6Tj.s page 18 558 .loc 1 334 43 view .LVU203 559 001e 4FF0030C mov ip, #3 560 0022 0CFA05FC lsl ip, ip, r5 561 .loc 1 334 20 view .LVU204 562 0026 24EA0C04 bic r4, r4, ip 563 002a 0460 str r4, [r0] 335:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 336:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Configure the default Alternate Function in current IO */ 337:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** GPIOx->AFR[position >> 3U] &= ~(0xFU << ((uint32_t)(position & 0x07U) * 4U)) ; 564 .loc 1 337 7 is_stmt 1 view .LVU205 565 .loc 1 337 34 is_stmt 0 view .LVU206 566 002c 4FEAD30E lsr lr, r3, #3 567 0030 0EF1080E add lr, lr, #8 568 0034 50F82E40 ldr r4, [r0, lr, lsl #2] 569 .loc 1 337 48 view .LVU207 570 0038 03F00705 and r5, r3, #7 571 .loc 1 337 77 view .LVU208 572 003c AE00 lsls r6, r5, #2 573 .loc 1 337 44 view .LVU209 574 003e 0F25 movs r5, #15 575 0040 B540 lsls r5, r5, r6 576 .loc 1 337 34 view .LVU210 577 0042 24EA0504 bic r4, r4, r5 578 0046 40F82E40 str r4, [r0, lr, lsl #2] 338:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 339:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Deactivate the Pull-up and Pull-down resistor for the current IO */ 340:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** GPIOx->PUPDR &= ~(GPIO_PUPDR_PUPDR0 << (position * 2U)); 579 .loc 1 340 7 is_stmt 1 view .LVU211 580 .loc 1 340 20 is_stmt 0 view .LVU212 581 004a C468 ldr r4, [r0, #12] 582 004c 24EA0C04 bic r4, r4, ip 583 0050 C460 str r4, [r0, #12] 341:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 342:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Configure the default value IO Output Type */ 343:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** GPIOx->OTYPER &= ~(GPIO_OTYPER_OT_0 << position) ; 584 .loc 1 343 7 is_stmt 1 view .LVU213 585 .loc 1 343 22 is_stmt 0 view .LVU214 586 0052 4468 ldr r4, [r0, #4] 587 0054 24EA0202 bic r2, r4, r2 588 .LVL54: 589 .loc 1 343 22 view .LVU215 590 0058 4260 str r2, [r0, #4] 344:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 345:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Configure the default value for IO Speed */ 346:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** GPIOx->OSPEEDR &= ~(GPIO_OSPEEDER_OSPEEDR0 << (position * 2U)); 591 .loc 1 346 7 is_stmt 1 view .LVU216 592 .loc 1 346 22 is_stmt 0 view .LVU217 593 005a 8268 ldr r2, [r0, #8] 594 005c 22EA0C02 bic r2, r2, ip 595 0060 8260 str r2, [r0, #8] 596 .L33: 305:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** { 597 .loc 1 305 46 is_stmt 1 discriminator 2 view .LVU218 305:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** { 598 .loc 1 305 54 is_stmt 0 discriminator 2 view .LVU219 599 0062 0133 adds r3, r3, #1 600 .LVL55: ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cciqG6Tj.s page 19 305:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** { 601 .loc 1 305 22 is_stmt 1 discriminator 2 view .LVU220 305:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** { 602 .loc 1 305 3 is_stmt 0 discriminator 2 view .LVU221 603 0064 0F2B cmp r3, #15 604 0066 5DD8 bhi .L50 605 .LVL56: 606 .L36: 308:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Get the current IO position */ 607 .loc 1 308 5 is_stmt 1 view .LVU222 308:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Get the current IO position */ 608 .loc 1 308 16 is_stmt 0 view .LVU223 609 0068 0122 movs r2, #1 610 006a 9A40 lsls r2, r2, r3 611 .LVL57: 310:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 612 .loc 1 310 5 is_stmt 1 view .LVU224 310:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 613 .loc 1 310 15 is_stmt 0 view .LVU225 614 006c 02EA0106 and r6, r2, r1 615 .LVL58: 312:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** { 616 .loc 1 312 5 is_stmt 1 view .LVU226 312:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** { 617 .loc 1 312 7 is_stmt 0 view .LVU227 618 0070 32EA0104 bics r4, r2, r1 619 0074 F5D1 bne .L33 315:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** tmp &= (0x0FU << (4U * (position & 0x03U))); 620 .loc 1 315 7 is_stmt 1 view .LVU228 315:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** tmp &= (0x0FU << (4U * (position & 0x03U))); 621 .loc 1 315 37 is_stmt 0 view .LVU229 622 0076 4FEA930E lsr lr, r3, #2 315:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** tmp &= (0x0FU << (4U * (position & 0x03U))); 623 .loc 1 315 11 view .LVU230 624 007a 0EF10205 add r5, lr, #2 625 007e 2A4C ldr r4, .L52 626 0080 54F82540 ldr r4, [r4, r5, lsl #2] 627 .LVL59: 316:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** if(tmp == ((uint32_t)(GPIO_GET_INDEX(GPIOx)) << (4U * (position & 0x03U)))) 628 .loc 1 316 7 is_stmt 1 view .LVU231 316:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** if(tmp == ((uint32_t)(GPIO_GET_INDEX(GPIOx)) << (4U * (position & 0x03U)))) 629 .loc 1 316 40 is_stmt 0 view .LVU232 630 0084 03F0030C and ip, r3, #3 316:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** if(tmp == ((uint32_t)(GPIO_GET_INDEX(GPIOx)) << (4U * (position & 0x03U)))) 631 .loc 1 316 28 view .LVU233 632 0088 4FEA8C0C lsl ip, ip, #2 316:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** if(tmp == ((uint32_t)(GPIO_GET_INDEX(GPIOx)) << (4U * (position & 0x03U)))) 633 .loc 1 316 21 view .LVU234 634 008c 0F25 movs r5, #15 635 008e 05FA0CF7 lsl r7, r5, ip 316:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** if(tmp == ((uint32_t)(GPIO_GET_INDEX(GPIOx)) << (4U * (position & 0x03U)))) 636 .loc 1 316 11 view .LVU235 637 0092 3C40 ands r4, r4, r7 638 .LVL60: 317:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** { 639 .loc 1 317 7 is_stmt 1 view .LVU236 317:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** { ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cciqG6Tj.s page 20 640 .loc 1 317 18 is_stmt 0 view .LVU237 641 0094 254D ldr r5, .L52+4 642 0096 A842 cmp r0, r5 643 0098 BAD0 beq .L37 317:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** { 644 .loc 1 317 29 discriminator 1 view .LVU238 645 009a 05F58065 add r5, r5, #1024 646 009e A842 cmp r0, r5 647 00a0 19D0 beq .L38 317:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** { 648 .loc 1 317 29 discriminator 3 view .LVU239 649 00a2 05F58065 add r5, r5, #1024 650 00a6 A842 cmp r0, r5 651 00a8 17D0 beq .L39 317:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** { 652 .loc 1 317 29 discriminator 5 view .LVU240 653 00aa 05F58065 add r5, r5, #1024 654 00ae A842 cmp r0, r5 655 00b0 15D0 beq .L40 317:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** { 656 .loc 1 317 29 discriminator 7 view .LVU241 657 00b2 05F58065 add r5, r5, #1024 658 00b6 A842 cmp r0, r5 659 00b8 13D0 beq .L41 317:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** { 660 .loc 1 317 29 discriminator 9 view .LVU242 661 00ba 05F58065 add r5, r5, #1024 662 00be A842 cmp r0, r5 663 00c0 11D0 beq .L42 317:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** { 664 .loc 1 317 29 discriminator 11 view .LVU243 665 00c2 05F58065 add r5, r5, #1024 666 00c6 A842 cmp r0, r5 667 00c8 0FD0 beq .L43 317:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** { 668 .loc 1 317 29 discriminator 13 view .LVU244 669 00ca 05F58065 add r5, r5, #1024 670 00ce A842 cmp r0, r5 671 00d0 9CD0 beq .L51 317:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** { 672 .loc 1 317 29 view .LVU245 673 00d2 0825 movs r5, #8 674 00d4 9DE7 b .L34 675 .L38: 676 00d6 0125 movs r5, #1 677 00d8 9BE7 b .L34 678 .L39: 679 00da 0225 movs r5, #2 680 00dc 99E7 b .L34 681 .L40: 682 00de 0325 movs r5, #3 683 00e0 97E7 b .L34 684 .L41: 685 00e2 0425 movs r5, #4 686 00e4 95E7 b .L34 687 .L42: 688 00e6 0525 movs r5, #5 ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cciqG6Tj.s page 21 689 00e8 93E7 b .L34 690 .L43: 691 00ea 0625 movs r5, #6 692 00ec 91E7 b .L34 693 .L49: 320:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** EXTI->EMR &= ~((uint32_t)iocurrent); 694 .loc 1 320 9 is_stmt 1 view .LVU246 320:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** EXTI->EMR &= ~((uint32_t)iocurrent); 695 .loc 1 320 19 is_stmt 0 view .LVU247 696 00ee 104C ldr r4, .L52+8 697 .LVL61: 320:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** EXTI->EMR &= ~((uint32_t)iocurrent); 698 .loc 1 320 19 view .LVU248 699 00f0 2568 ldr r5, [r4] 700 00f2 25EA0605 bic r5, r5, r6 701 00f6 2560 str r5, [r4] 321:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 702 .loc 1 321 9 is_stmt 1 view .LVU249 321:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 703 .loc 1 321 19 is_stmt 0 view .LVU250 704 00f8 6568 ldr r5, [r4, #4] 705 00fa 25EA0605 bic r5, r5, r6 706 00fe 6560 str r5, [r4, #4] 324:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** EXTI->RTSR &= ~((uint32_t)iocurrent); 707 .loc 1 324 9 is_stmt 1 view .LVU251 324:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** EXTI->RTSR &= ~((uint32_t)iocurrent); 708 .loc 1 324 20 is_stmt 0 view .LVU252 709 0100 E568 ldr r5, [r4, #12] 710 0102 25EA0605 bic r5, r5, r6 711 0106 E560 str r5, [r4, #12] 325:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 712 .loc 1 325 9 is_stmt 1 view .LVU253 325:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 713 .loc 1 325 20 is_stmt 0 view .LVU254 714 0108 A568 ldr r5, [r4, #8] 715 010a 25EA0606 bic r6, r5, r6 716 .LVL62: 325:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 717 .loc 1 325 20 view .LVU255 718 010e A660 str r6, [r4, #8] 328:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** SYSCFG->EXTICR[position >> 2U] &= ~tmp; 719 .loc 1 328 9 is_stmt 1 view .LVU256 720 .LVL63: 329:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** } 721 .loc 1 329 9 view .LVU257 329:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** } 722 .loc 1 329 40 is_stmt 0 view .LVU258 723 0110 054E ldr r6, .L52 724 0112 0EF10204 add r4, lr, #2 725 0116 56F82450 ldr r5, [r6, r4, lsl #2] 726 011a 25EA0705 bic r5, r5, r7 727 011e 46F82450 str r5, [r6, r4, lsl #2] 728 0122 7AE7 b .L35 729 .LVL64: 730 .L50: 347:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** } 348:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** } ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cciqG6Tj.s page 22 349:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** } 731 .loc 1 349 1 view .LVU259 732 0124 F0BD pop {r4, r5, r6, r7, pc} 733 .LVL65: 734 .L48: 735 .LCFI5: 736 .cfi_def_cfa_offset 0 737 .cfi_restore 4 738 .cfi_restore 5 739 .cfi_restore 6 740 .cfi_restore 7 741 .cfi_restore 14 742 .loc 1 349 1 view .LVU260 743 0126 7047 bx lr 744 .L53: 745 .align 2 746 .L52: 747 0128 00380140 .word 1073821696 748 012c 00000240 .word 1073872896 749 0130 003C0140 .word 1073822720 750 .cfi_endproc 751 .LFE240: 753 .section .text.HAL_GPIO_ReadPin,"ax",%progbits 754 .align 1 755 .global HAL_GPIO_ReadPin 756 .syntax unified 757 .thumb 758 .thumb_func 760 HAL_GPIO_ReadPin: 761 .LVL66: 762 .LFB241: 350:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 351:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /** 352:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @} 353:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** */ 354:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 355:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /** @defgroup GPIO_Exported_Functions_Group2 IO operation functions 356:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @brief GPIO Read and Write 357:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * 358:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** @verbatim 359:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** =============================================================================== 360:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** ##### IO operation functions ##### 361:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** =============================================================================== 362:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 363:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** @endverbatim 364:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @{ 365:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** */ 366:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 367:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /** 368:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @brief Reads the specified input port pin. 369:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @param GPIOx where x can be (A..K) to select the GPIO peripheral for STM32F429X device or 370:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * x can be (A..I) to select the GPIO peripheral for STM32F40XX and STM32F427 371:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @param GPIO_Pin specifies the port bit to read. 372:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * This parameter can be GPIO_PIN_x where x can be (0..15). 373:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @retval The input port pin value. 374:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** */ 375:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** GPIO_PinState HAL_GPIO_ReadPin(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin) ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cciqG6Tj.s page 23 376:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** { 763 .loc 1 376 1 is_stmt 1 view -0 764 .cfi_startproc 765 @ args = 0, pretend = 0, frame = 0 766 @ frame_needed = 0, uses_anonymous_args = 0 767 @ link register save eliminated. 377:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** GPIO_PinState bitstatus; 768 .loc 1 377 3 view .LVU262 378:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 379:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Check the parameters */ 380:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** assert_param(IS_GPIO_PIN(GPIO_Pin)); 769 .loc 1 380 3 view .LVU263 381:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 382:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** if((GPIOx->IDR & GPIO_Pin) != (uint32_t)GPIO_PIN_RESET) 770 .loc 1 382 3 view .LVU264 771 .loc 1 382 12 is_stmt 0 view .LVU265 772 0000 0369 ldr r3, [r0, #16] 773 .loc 1 382 5 view .LVU266 774 0002 1942 tst r1, r3 775 0004 01D0 beq .L56 383:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** { 384:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** bitstatus = GPIO_PIN_SET; 776 .loc 1 384 15 view .LVU267 777 0006 0120 movs r0, #1 778 .LVL67: 779 .loc 1 384 15 view .LVU268 780 0008 7047 bx lr 781 .LVL68: 782 .L56: 385:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** } 386:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** else 387:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** { 388:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** bitstatus = GPIO_PIN_RESET; 783 .loc 1 388 15 view .LVU269 784 000a 0020 movs r0, #0 785 .LVL69: 389:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** } 390:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** return bitstatus; 786 .loc 1 390 3 is_stmt 1 view .LVU270 391:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** } 787 .loc 1 391 1 is_stmt 0 view .LVU271 788 000c 7047 bx lr 789 .cfi_endproc 790 .LFE241: 792 .section .text.HAL_GPIO_WritePin,"ax",%progbits 793 .align 1 794 .global HAL_GPIO_WritePin 795 .syntax unified 796 .thumb 797 .thumb_func 799 HAL_GPIO_WritePin: 800 .LVL70: 801 .LFB242: 392:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 393:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /** 394:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @brief Sets or clears the selected data port bit. 395:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cciqG6Tj.s page 24 396:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @note This function uses GPIOx_BSRR register to allow atomic read/modify 397:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * accesses. In this way, there is no risk of an IRQ occurring between 398:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * the read and the modify access. 399:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * 400:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @param GPIOx where x can be (A..K) to select the GPIO peripheral for STM32F429X device or 401:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * x can be (A..I) to select the GPIO peripheral for STM32F40XX and STM32F427 402:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @param GPIO_Pin specifies the port bit to be written. 403:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * This parameter can be one of GPIO_PIN_x where x can be (0..15). 404:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @param PinState specifies the value to be written to the selected bit. 405:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * This parameter can be one of the GPIO_PinState enum values: 406:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @arg GPIO_PIN_RESET: to clear the port pin 407:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @arg GPIO_PIN_SET: to set the port pin 408:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @retval None 409:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** */ 410:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** void HAL_GPIO_WritePin(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin, GPIO_PinState PinState) 411:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** { 802 .loc 1 411 1 is_stmt 1 view -0 803 .cfi_startproc 804 @ args = 0, pretend = 0, frame = 0 805 @ frame_needed = 0, uses_anonymous_args = 0 806 @ link register save eliminated. 412:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Check the parameters */ 413:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** assert_param(IS_GPIO_PIN(GPIO_Pin)); 807 .loc 1 413 3 view .LVU273 414:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** assert_param(IS_GPIO_PIN_ACTION(PinState)); 808 .loc 1 414 3 view .LVU274 415:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 416:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** if(PinState != GPIO_PIN_RESET) 809 .loc 1 416 3 view .LVU275 810 .loc 1 416 5 is_stmt 0 view .LVU276 811 0000 0AB1 cbz r2, .L58 417:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** { 418:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** GPIOx->BSRR = GPIO_Pin; 812 .loc 1 418 5 is_stmt 1 view .LVU277 813 .loc 1 418 17 is_stmt 0 view .LVU278 814 0002 8161 str r1, [r0, #24] 815 0004 7047 bx lr 816 .L58: 419:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** } 420:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** else 421:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** { 422:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** GPIOx->BSRR = (uint32_t)GPIO_Pin << 16U; 817 .loc 1 422 5 is_stmt 1 view .LVU279 818 .loc 1 422 38 is_stmt 0 view .LVU280 819 0006 0904 lsls r1, r1, #16 820 .LVL71: 821 .loc 1 422 17 view .LVU281 822 0008 8161 str r1, [r0, #24] 423:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** } 424:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** } 823 .loc 1 424 1 view .LVU282 824 000a 7047 bx lr 825 .cfi_endproc 826 .LFE242: 828 .section .text.HAL_GPIO_TogglePin,"ax",%progbits 829 .align 1 830 .global HAL_GPIO_TogglePin ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cciqG6Tj.s page 25 831 .syntax unified 832 .thumb 833 .thumb_func 835 HAL_GPIO_TogglePin: 836 .LVL72: 837 .LFB243: 425:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 426:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /** 427:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @brief Toggles the specified GPIO pins. 428:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @param GPIOx Where x can be (A..K) to select the GPIO peripheral for STM32F429X device or 429:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * x can be (A..I) to select the GPIO peripheral for STM32F40XX and STM32F427 430:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @param GPIO_Pin Specifies the pins to be toggled. 431:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @retval None 432:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** */ 433:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** void HAL_GPIO_TogglePin(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin) 434:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** { 838 .loc 1 434 1 is_stmt 1 view -0 839 .cfi_startproc 840 @ args = 0, pretend = 0, frame = 0 841 @ frame_needed = 0, uses_anonymous_args = 0 842 @ link register save eliminated. 435:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** uint32_t odr; 843 .loc 1 435 3 view .LVU284 436:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 437:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Check the parameters */ 438:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** assert_param(IS_GPIO_PIN(GPIO_Pin)); 844 .loc 1 438 3 view .LVU285 439:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 440:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* get current Output Data Register value */ 441:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** odr = GPIOx->ODR; 845 .loc 1 441 3 view .LVU286 846 .loc 1 441 7 is_stmt 0 view .LVU287 847 0000 4369 ldr r3, [r0, #20] 848 .LVL73: 442:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 443:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Set selected pins that were at low level, and reset ones that were high */ 444:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** GPIOx->BSRR = ((odr & GPIO_Pin) << GPIO_NUMBER) | (~odr & GPIO_Pin); 849 .loc 1 444 3 is_stmt 1 view .LVU288 850 .loc 1 444 23 is_stmt 0 view .LVU289 851 0002 01EA0302 and r2, r1, r3 852 .loc 1 444 59 view .LVU290 853 0006 21EA0301 bic r1, r1, r3 854 .LVL74: 855 .loc 1 444 51 view .LVU291 856 000a 41EA0241 orr r1, r1, r2, lsl #16 857 .loc 1 444 15 view .LVU292 858 000e 8161 str r1, [r0, #24] 445:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** } 859 .loc 1 445 1 view .LVU293 860 0010 7047 bx lr 861 .cfi_endproc 862 .LFE243: 864 .section .text.HAL_GPIO_LockPin,"ax",%progbits 865 .align 1 866 .global HAL_GPIO_LockPin 867 .syntax unified 868 .thumb ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cciqG6Tj.s page 26 869 .thumb_func 871 HAL_GPIO_LockPin: 872 .LVL75: 873 .LFB244: 446:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 447:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /** 448:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @brief Locks GPIO Pins configuration registers. 449:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @note The locked registers are GPIOx_MODER, GPIOx_OTYPER, GPIOx_OSPEEDR, 450:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * GPIOx_PUPDR, GPIOx_AFRL and GPIOx_AFRH. 451:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @note The configuration of the locked GPIO pins can no longer be modified 452:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * until the next reset. 453:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @param GPIOx where x can be (A..F) to select the GPIO peripheral for STM32F4 family 454:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @param GPIO_Pin specifies the port bit to be locked. 455:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * This parameter can be any combination of GPIO_PIN_x where x can be (0..15). 456:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @retval None 457:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** */ 458:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** HAL_StatusTypeDef HAL_GPIO_LockPin(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin) 459:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** { 874 .loc 1 459 1 is_stmt 1 view -0 875 .cfi_startproc 876 @ args = 0, pretend = 0, frame = 8 877 @ frame_needed = 0, uses_anonymous_args = 0 878 @ link register save eliminated. 879 .loc 1 459 1 is_stmt 0 view .LVU295 880 0000 82B0 sub sp, sp, #8 881 .LCFI6: 882 .cfi_def_cfa_offset 8 460:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** __IO uint32_t tmp = GPIO_LCKR_LCKK; 883 .loc 1 460 3 is_stmt 1 view .LVU296 884 .loc 1 460 17 is_stmt 0 view .LVU297 885 0002 4FF48033 mov r3, #65536 886 0006 0193 str r3, [sp, #4] 461:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 462:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Check the parameters */ 463:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** assert_param(IS_GPIO_PIN(GPIO_Pin)); 887 .loc 1 463 3 is_stmt 1 view .LVU298 464:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 465:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Apply lock key write sequence */ 466:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** tmp |= GPIO_Pin; 888 .loc 1 466 3 view .LVU299 889 .loc 1 466 7 is_stmt 0 view .LVU300 890 0008 019B ldr r3, [sp, #4] 891 000a 0B43 orrs r3, r3, r1 892 000c 0193 str r3, [sp, #4] 467:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Set LCKx bit(s): LCKK='1' + LCK[15-0] */ 468:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** GPIOx->LCKR = tmp; 893 .loc 1 468 3 is_stmt 1 view .LVU301 894 .loc 1 468 15 is_stmt 0 view .LVU302 895 000e 019B ldr r3, [sp, #4] 896 0010 C361 str r3, [r0, #28] 469:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Reset LCKx bit(s): LCKK='0' + LCK[15-0] */ 470:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** GPIOx->LCKR = GPIO_Pin; 897 .loc 1 470 3 is_stmt 1 view .LVU303 898 .loc 1 470 15 is_stmt 0 view .LVU304 899 0012 C161 str r1, [r0, #28] 471:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Set LCKx bit(s): LCKK='1' + LCK[15-0] */ 472:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** GPIOx->LCKR = tmp; ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cciqG6Tj.s page 27 900 .loc 1 472 3 is_stmt 1 view .LVU305 901 .loc 1 472 15 is_stmt 0 view .LVU306 902 0014 019B ldr r3, [sp, #4] 903 0016 C361 str r3, [r0, #28] 473:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Read LCKR register. This read is mandatory to complete key lock sequence */ 474:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** tmp = GPIOx->LCKR; 904 .loc 1 474 3 is_stmt 1 view .LVU307 905 .loc 1 474 14 is_stmt 0 view .LVU308 906 0018 C369 ldr r3, [r0, #28] 907 .loc 1 474 7 view .LVU309 908 001a 0193 str r3, [sp, #4] 475:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 476:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Read again in order to confirm lock is active */ 477:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** if((GPIOx->LCKR & GPIO_LCKR_LCKK) != RESET) 909 .loc 1 477 2 is_stmt 1 view .LVU310 910 .loc 1 477 11 is_stmt 0 view .LVU311 911 001c C369 ldr r3, [r0, #28] 912 .loc 1 477 4 view .LVU312 913 001e 13F4803F tst r3, #65536 914 0022 02D0 beq .L63 478:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** { 479:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** return HAL_OK; 915 .loc 1 479 12 view .LVU313 916 0024 0020 movs r0, #0 917 .LVL76: 918 .L62: 480:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** } 481:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** else 482:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** { 483:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** return HAL_ERROR; 484:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** } 485:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** } 919 .loc 1 485 1 view .LVU314 920 0026 02B0 add sp, sp, #8 921 .LCFI7: 922 .cfi_remember_state 923 .cfi_def_cfa_offset 0 924 @ sp needed 925 0028 7047 bx lr 926 .LVL77: 927 .L63: 928 .LCFI8: 929 .cfi_restore_state 483:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** } 930 .loc 1 483 12 view .LVU315 931 002a 0120 movs r0, #1 932 .LVL78: 483:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** } 933 .loc 1 483 12 view .LVU316 934 002c FBE7 b .L62 935 .cfi_endproc 936 .LFE244: 938 .section .text.HAL_GPIO_EXTI_Callback,"ax",%progbits 939 .align 1 940 .weak HAL_GPIO_EXTI_Callback 941 .syntax unified 942 .thumb ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cciqG6Tj.s page 28 943 .thumb_func 945 HAL_GPIO_EXTI_Callback: 946 .LVL79: 947 .LFB246: 486:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 487:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /** 488:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @brief This function handles EXTI interrupt request. 489:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @param GPIO_Pin Specifies the pins connected EXTI line 490:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @retval None 491:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** */ 492:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** void HAL_GPIO_EXTI_IRQHandler(uint16_t GPIO_Pin) 493:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** { 494:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* EXTI line interrupt detected */ 495:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** if(__HAL_GPIO_EXTI_GET_IT(GPIO_Pin) != RESET) 496:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** { 497:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** __HAL_GPIO_EXTI_CLEAR_IT(GPIO_Pin); 498:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** HAL_GPIO_EXTI_Callback(GPIO_Pin); 499:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** } 500:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** } 501:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 502:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /** 503:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @brief EXTI line detection callbacks. 504:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @param GPIO_Pin Specifies the pins connected EXTI line 505:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @retval None 506:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** */ 507:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** __weak void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin) 508:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** { 948 .loc 1 508 1 is_stmt 1 view -0 949 .cfi_startproc 950 @ args = 0, pretend = 0, frame = 0 951 @ frame_needed = 0, uses_anonymous_args = 0 952 @ link register save eliminated. 509:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Prevent unused argument(s) compilation warning */ 510:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** UNUSED(GPIO_Pin); 953 .loc 1 510 3 view .LVU318 511:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* NOTE: This function Should not be modified, when the callback is needed, 512:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** the HAL_GPIO_EXTI_Callback could be implemented in the user file 513:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** */ 514:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** } 954 .loc 1 514 1 is_stmt 0 view .LVU319 955 0000 7047 bx lr 956 .cfi_endproc 957 .LFE246: 959 .section .text.HAL_GPIO_EXTI_IRQHandler,"ax",%progbits 960 .align 1 961 .global HAL_GPIO_EXTI_IRQHandler 962 .syntax unified 963 .thumb 964 .thumb_func 966 HAL_GPIO_EXTI_IRQHandler: 967 .LVL80: 968 .LFB245: 493:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* EXTI line interrupt detected */ 969 .loc 1 493 1 is_stmt 1 view -0 970 .cfi_startproc 971 @ args = 0, pretend = 0, frame = 0 972 @ frame_needed = 0, uses_anonymous_args = 0 ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cciqG6Tj.s page 29 493:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* EXTI line interrupt detected */ 973 .loc 1 493 1 is_stmt 0 view .LVU321 974 0000 08B5 push {r3, lr} 975 .LCFI9: 976 .cfi_def_cfa_offset 8 977 .cfi_offset 3, -8 978 .cfi_offset 14, -4 495:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** { 979 .loc 1 495 3 is_stmt 1 view .LVU322 495:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** { 980 .loc 1 495 6 is_stmt 0 view .LVU323 981 0002 054B ldr r3, .L70 982 0004 5B69 ldr r3, [r3, #20] 495:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** { 983 .loc 1 495 5 view .LVU324 984 0006 0342 tst r3, r0 985 0008 00D1 bne .L69 986 .LVL81: 987 .L66: 500:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 988 .loc 1 500 1 view .LVU325 989 000a 08BD pop {r3, pc} 990 .LVL82: 991 .L69: 497:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** HAL_GPIO_EXTI_Callback(GPIO_Pin); 992 .loc 1 497 5 is_stmt 1 view .LVU326 993 000c 024B ldr r3, .L70 994 000e 5861 str r0, [r3, #20] 498:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** } 995 .loc 1 498 5 view .LVU327 996 0010 FFF7FEFF bl HAL_GPIO_EXTI_Callback 997 .LVL83: 500:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** 998 .loc 1 500 1 is_stmt 0 view .LVU328 999 0014 F9E7 b .L66 1000 .L71: 1001 0016 00BF .align 2 1002 .L70: 1003 0018 003C0140 .word 1073822720 1004 .cfi_endproc 1005 .LFE245: 1007 .text 1008 .Letext0: 1009 .file 2 "c:\\tools\\gcc-arm-none-eabi-10.3-2021.10-win32\\gcc-arm-none-eabi-10.3-2021.10\\arm-none 1010 .file 3 "c:\\tools\\gcc-arm-none-eabi-10.3-2021.10-win32\\gcc-arm-none-eabi-10.3-2021.10\\arm-none 1011 .file 4 "Drivers/CMSIS/Device/ST/STM32F4xx/Include/stm32f405xx.h" 1012 .file 5 "Drivers/CMSIS/Device/ST/STM32F4xx/Include/stm32f4xx.h" 1013 .file 6 "Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_def.h" 1014 .file 7 "Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_gpio.h" ARM GAS C:\Users\MHONDA~1\AppData\Local\Temp\cciqG6Tj.s page 30 DEFINED SYMBOLS *ABS*:00000000 stm32f4xx_hal_gpio.c C:\Users\MHONDA~1\AppData\Local\Temp\cciqG6Tj.s:20 .text.HAL_GPIO_Init:00000000 $t C:\Users\MHONDA~1\AppData\Local\Temp\cciqG6Tj.s:26 .text.HAL_GPIO_Init:00000000 HAL_GPIO_Init C:\Users\MHONDA~1\AppData\Local\Temp\cciqG6Tj.s:493 .text.HAL_GPIO_Init:000001d4 $d C:\Users\MHONDA~1\AppData\Local\Temp\cciqG6Tj.s:501 .text.HAL_GPIO_DeInit:00000000 $t C:\Users\MHONDA~1\AppData\Local\Temp\cciqG6Tj.s:507 .text.HAL_GPIO_DeInit:00000000 HAL_GPIO_DeInit C:\Users\MHONDA~1\AppData\Local\Temp\cciqG6Tj.s:747 .text.HAL_GPIO_DeInit:00000128 $d C:\Users\MHONDA~1\AppData\Local\Temp\cciqG6Tj.s:754 .text.HAL_GPIO_ReadPin:00000000 $t C:\Users\MHONDA~1\AppData\Local\Temp\cciqG6Tj.s:760 .text.HAL_GPIO_ReadPin:00000000 HAL_GPIO_ReadPin C:\Users\MHONDA~1\AppData\Local\Temp\cciqG6Tj.s:793 .text.HAL_GPIO_WritePin:00000000 $t C:\Users\MHONDA~1\AppData\Local\Temp\cciqG6Tj.s:799 .text.HAL_GPIO_WritePin:00000000 HAL_GPIO_WritePin C:\Users\MHONDA~1\AppData\Local\Temp\cciqG6Tj.s:829 .text.HAL_GPIO_TogglePin:00000000 $t C:\Users\MHONDA~1\AppData\Local\Temp\cciqG6Tj.s:835 .text.HAL_GPIO_TogglePin:00000000 HAL_GPIO_TogglePin C:\Users\MHONDA~1\AppData\Local\Temp\cciqG6Tj.s:865 .text.HAL_GPIO_LockPin:00000000 $t C:\Users\MHONDA~1\AppData\Local\Temp\cciqG6Tj.s:871 .text.HAL_GPIO_LockPin:00000000 HAL_GPIO_LockPin C:\Users\MHONDA~1\AppData\Local\Temp\cciqG6Tj.s:939 .text.HAL_GPIO_EXTI_Callback:00000000 $t C:\Users\MHONDA~1\AppData\Local\Temp\cciqG6Tj.s:945 .text.HAL_GPIO_EXTI_Callback:00000000 HAL_GPIO_EXTI_Callback C:\Users\MHONDA~1\AppData\Local\Temp\cciqG6Tj.s:960 .text.HAL_GPIO_EXTI_IRQHandler:00000000 $t C:\Users\MHONDA~1\AppData\Local\Temp\cciqG6Tj.s:966 .text.HAL_GPIO_EXTI_IRQHandler:00000000 HAL_GPIO_EXTI_IRQHandler C:\Users\MHONDA~1\AppData\Local\Temp\cciqG6Tj.s:1003 .text.HAL_GPIO_EXTI_IRQHandler:00000018 $d NO UNDEFINED SYMBOLS
Report a bug