12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475 |
- ARM GAS /tmp/ccN5SJrP.s page 1
- 1 .cpu cortex-m4
- 2 .eabi_attribute 27, 1
- 3 .eabi_attribute 28, 1
- 4 .eabi_attribute 20, 1
- 5 .eabi_attribute 21, 1
- 6 .eabi_attribute 23, 3
- 7 .eabi_attribute 24, 1
- 8 .eabi_attribute 25, 1
- 9 .eabi_attribute 26, 1
- 10 .eabi_attribute 30, 1
- 11 .eabi_attribute 34, 1
- 12 .eabi_attribute 18, 4
- 13 .file "stm32f4xx_hal_gpio.c"
- 14 .text
- 15 .Ltext0:
- 16 .cfi_sections .debug_frame
- 17 .section .text.HAL_GPIO_Init,"ax",%progbits
- 18 .align 1
- 19 .global HAL_GPIO_Init
- 20 .syntax unified
- 21 .thumb
- 22 .thumb_func
- 23 .fpu fpv4-sp-d16
- 25 HAL_GPIO_Init:
- 26 .LFB130:
- 27 .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 **** @verbatim
- 12:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** ==============================================================================
- 13:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** ##### GPIO Peripheral features #####
- 14:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** ==============================================================================
- 15:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** [..]
- 16: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
- 17:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** port bit of the General Purpose IO (GPIO) Ports, can be individually configured by software
- 18:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** in several modes:
- 19:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** (+) Input mode
- 20:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** (+) Analog mode
- 21:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** (+) Output mode
- 22:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** (+) Alternate function mode
- 23:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** (+) External interrupt/event lines
- 24:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c ****
- 25:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** [..]
- 26:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** During and just after reset, the alternate functions and external interrupt
- 27:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** lines are not active and the I/O ports are configured in input floating mode.
- 28:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c ****
- 29:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** [..]
- 30:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** All GPIO pins have weak internal pull-up and pull-down resistors, which can be
- 31:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** activated or not.
- ARM GAS /tmp/ccN5SJrP.s page 2
- 32:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c ****
- 33:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** [..]
- 34: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
- 35:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** type and the IO speed can be selected depending on the VDD value.
- 36:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c ****
- 37:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** [..]
- 38:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** All ports have external interrupt/event capability. To use external interrupt
- 39:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** lines, the port must be configured in input mode. All available GPIO pins are
- 40:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** connected to the 16 external interrupt/event lines from EXTI0 to EXTI15.
- 41:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c ****
- 42:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** [..]
- 43:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** The external interrupt/event controller consists of up to 23 edge detectors
- 44:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** (16 lines are connected to GPIO) for generating event/interrupt requests (each
- 45:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** input line can be independently configured to select the type (interrupt or event)
- 46:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** and the corresponding trigger event (rising or falling or both). Each line can
- 47:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** also be masked independently.
- 48:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c ****
- 49:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** ##### How to use this driver #####
- 50:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** ==============================================================================
- 51:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** [..]
- 52:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** (#) Enable the GPIO AHB clock using the following function: __HAL_RCC_GPIOx_CLK_ENABLE().
- 53:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c ****
- 54:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** (#) Configure the GPIO pin(s) using HAL_GPIO_Init().
- 55:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** (++) Configure the IO mode using "Mode" member from GPIO_InitTypeDef structure
- 56:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** (++) Activate Pull-up, Pull-down resistor using "Pull" member from GPIO_InitTypeDef
- 57:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** structure.
- 58:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** (++) In case of Output or alternate function mode selection: the speed is
- 59:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** configured through "Speed" member from GPIO_InitTypeDef structure.
- 60:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** (++) In alternate mode is selection, the alternate function connected to the IO
- 61:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** is configured through "Alternate" member from GPIO_InitTypeDef structure.
- 62:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** (++) Analog mode is required when a pin is to be used as ADC channel
- 63:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** or DAC output.
- 64:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** (++) In case of external interrupt/event selection the "Mode" member from
- 65:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** GPIO_InitTypeDef structure select the type (interrupt or event) and
- 66:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** the corresponding trigger event (rising or falling or both).
- 67:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c ****
- 68:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** (#) In case of external interrupt/event mode selection, configure NVIC IRQ priority
- 69:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** mapped to the EXTI line using HAL_NVIC_SetPriority() and enable it using
- 70:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** HAL_NVIC_EnableIRQ().
- 71:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c ****
- 72:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** (#) To get the level of a pin configured in input mode use HAL_GPIO_ReadPin().
- 73:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c ****
- 74:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** (#) To set/reset the level of a pin configured in output mode use
- 75:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** HAL_GPIO_WritePin()/HAL_GPIO_TogglePin().
- 76:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c ****
- 77:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** (#) To lock pin configuration until next reset use HAL_GPIO_LockPin().
- 78:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c ****
- 79:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c ****
- 80:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** (#) During and just after reset, the alternate functions are not
- 81:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** active and the GPIO pins are configured in input floating mode (except JTAG
- 82:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** pins).
- 83:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c ****
- 84:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** (#) The LSE oscillator pins OSC32_IN and OSC32_OUT can be used as general purpose
- 85:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** (PC14 and PC15, respectively) when the LSE oscillator is off. The LSE has
- 86:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** priority over the GPIO function.
- 87:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c ****
- 88:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** (#) The HSE oscillator pins OSC_IN/OSC_OUT can be used as
- ARM GAS /tmp/ccN5SJrP.s page 3
- 89:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** general purpose PH0 and PH1, respectively, when the HSE oscillator is off.
- 90:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** The HSE has priority over the GPIO function.
- 91:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c ****
- 92:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** @endverbatim
- 93:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** ******************************************************************************
- 94:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @attention
- 95:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** *
- 96:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * <h2><center>© Copyright (c) 2017 STMicroelectronics.
- 97:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * All rights reserved.</center></h2>
- 98:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** *
- 99:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * This software component is licensed by ST under BSD 3-Clause license,
- 100:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * the "License"; You may not use this file except in compliance with the
- 101:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * License. You may obtain a copy of the License at:
- 102:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * opensource.org/licenses/BSD-3-Clause
- 103:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** *
- 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 **** #define GPIO_MODE 0x00000003U
- 127:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** #define EXTI_MODE 0x10000000U
- 128:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** #define GPIO_MODE_IT 0x00010000U
- 129:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** #define GPIO_MODE_EVT 0x00020000U
- 130:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** #define RISING_EDGE 0x00100000U
- 131:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** #define FALLING_EDGE 0x00200000U
- 132:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** #define GPIO_OUTPUT_TYPE 0x00000010U
- 133:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c ****
- 134:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** #define GPIO_NUMBER 16U
- 135:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /**
- 136:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @}
- 137:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** */
- 138:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Private macro -------------------------------------------------------------*/
- 139:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Private variables ---------------------------------------------------------*/
- 140:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Private function prototypes -----------------------------------------------*/
- 141:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Private functions ---------------------------------------------------------*/
- 142:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Exported functions --------------------------------------------------------*/
- 143:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /** @defgroup GPIO_Exported_Functions GPIO Exported Functions
- 144:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @{
- 145:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** */
- ARM GAS /tmp/ccN5SJrP.s page 4
- 146:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c ****
- 147:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /** @defgroup GPIO_Exported_Functions_Group1 Initialization and de-initialization functions
- 148:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @brief Initialization and Configuration functions
- 149:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** *
- 150:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** @verbatim
- 151:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** ===============================================================================
- 152:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** ##### Initialization and de-initialization functions #####
- 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 **** This section provides functions allowing to initialize and de-initialize the GPIOs
- 156:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** to be ready for use.
- 157:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c ****
- 158:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** @endverbatim
- 159:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @{
- 160:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** */
- 161:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c ****
- 162:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c ****
- 163:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /**
- 164:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @brief Initializes the GPIOx peripheral according to the specified parameters in the GPIO_Init
- 165: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
- 166:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * x can be (A..I) to select the GPIO peripheral for STM32F40XX and STM32F427
- 167:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @param GPIO_Init pointer to a GPIO_InitTypeDef structure that contains
- 168:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * the configuration information for the specified GPIO peripheral.
- 169:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @retval None
- 170:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** */
- 171:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** void HAL_GPIO_Init(GPIO_TypeDef *GPIOx, GPIO_InitTypeDef *GPIO_Init)
- 172:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** {
- 28 .loc 1 172 0
- 29 .cfi_startproc
- 30 @ args = 0, pretend = 0, frame = 8
- 31 @ frame_needed = 0, uses_anonymous_args = 0
- 32 .LVL0:
- 33 0000 F0B5 push {r4, r5, r6, r7, lr}
- 34 .LCFI0:
- 35 .cfi_def_cfa_offset 20
- 36 .cfi_offset 4, -20
- 37 .cfi_offset 5, -16
- 38 .cfi_offset 6, -12
- 39 .cfi_offset 7, -8
- 40 .cfi_offset 14, -4
- 41 0002 83B0 sub sp, sp, #12
- 42 .LCFI1:
- 43 .cfi_def_cfa_offset 32
- 44 .LVL1:
- 173:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** uint32_t position;
- 174:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** uint32_t ioposition = 0x00U;
- 175:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** uint32_t iocurrent = 0x00U;
- 176:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** uint32_t temp = 0x00U;
- 177:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c ****
- 178:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Check the parameters */
- 179:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** assert_param(IS_GPIO_ALL_INSTANCE(GPIOx));
- 180:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** assert_param(IS_GPIO_PIN(GPIO_Init->Pin));
- 181:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** assert_param(IS_GPIO_MODE(GPIO_Init->Mode));
- 182:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** assert_param(IS_GPIO_PULL(GPIO_Init->Pull));
- 183:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c ****
- 184:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Configure the port pins */
- 185:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** for(position = 0U; position < GPIO_NUMBER; position++)
- ARM GAS /tmp/ccN5SJrP.s page 5
- 45 .loc 1 185 0
- 46 0004 0024 movs r4, #0
- 47 0006 4BE0 b .L2
- 48 .LVL2:
- 49 .L4:
- 186:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** {
- 187:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Get the IO position */
- 188:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** ioposition = 0x01U << position;
- 189:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Get the current IO position */
- 190:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** iocurrent = (uint32_t)(GPIO_Init->Pin) & ioposition;
- 191:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c ****
- 192:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** if(iocurrent == ioposition)
- 193:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** {
- 194:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /*--------------------- GPIO Mode Configuration ------------------------*/
- 195:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* In case of Alternate function mode selection */
- 196:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** if((GPIO_Init->Mode == GPIO_MODE_AF_PP) || (GPIO_Init->Mode == GPIO_MODE_AF_OD))
- 197:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** {
- 198:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Check the Alternate function parameter */
- 199:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** assert_param(IS_GPIO_AF(GPIO_Init->Alternate));
- 200:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Configure Alternate function mapped with the current IO */
- 201:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp = GPIOx->AFR[position >> 3U];
- 50 .loc 1 201 0
- 51 0008 4FEAD40E lsr lr, r4, #3
- 52 000c 0EF1080E add lr, lr, #8
- 53 0010 50F82E20 ldr r2, [r0, lr, lsl #2]
- 54 .LVL3:
- 202:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp &= ~(0xFU << ((uint32_t)(position & 0x07U) * 4U)) ;
- 55 .loc 1 202 0
- 56 0014 04F00706 and r6, r4, #7
- 57 0018 B600 lsls r6, r6, #2
- 58 001a 0F27 movs r7, #15
- 59 001c B740 lsls r7, r7, r6
- 60 001e 22EA0702 bic r2, r2, r7
- 61 .LVL4:
- 203:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp |= ((uint32_t)(GPIO_Init->Alternate) << (((uint32_t)position & 0x07U) * 4U));
- 62 .loc 1 203 0
- 63 0022 0F69 ldr r7, [r1, #16]
- 64 0024 07FA06F6 lsl r6, r7, r6
- 65 0028 3243 orrs r2, r2, r6
- 66 .LVL5:
- 204:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** GPIOx->AFR[position >> 3U] = temp;
- 67 .loc 1 204 0
- 68 002a 40F82E20 str r2, [r0, lr, lsl #2]
- 69 002e 46E0 b .L5
- 70 .LVL6:
- 71 .L24:
- 205:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** }
- 206:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c ****
- 207:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Configure IO Direction mode (Input, Output, Alternate or Analog) */
- 208:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp = GPIOx->MODER;
- 209:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp &= ~(GPIO_MODER_MODER0 << (position * 2U));
- 210:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp |= ((GPIO_Init->Mode & GPIO_MODE) << (position * 2U));
- 211:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** GPIOx->MODER = temp;
- 212:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c ****
- 213:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* In case of Output or Alternate function mode selection */
- 214:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** if((GPIO_Init->Mode == GPIO_MODE_OUTPUT_PP) || (GPIO_Init->Mode == GPIO_MODE_AF_PP) ||
- 215:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** (GPIO_Init->Mode == GPIO_MODE_OUTPUT_OD) || (GPIO_Init->Mode == GPIO_MODE_AF_OD))
- ARM GAS /tmp/ccN5SJrP.s page 6
- 216:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** {
- 217:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Check the Speed parameter */
- 218:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** assert_param(IS_GPIO_SPEED(GPIO_Init->Speed));
- 219:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Configure the IO Speed */
- 220:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp = GPIOx->OSPEEDR;
- 221:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp &= ~(GPIO_OSPEEDER_OSPEEDR0 << (position * 2U));
- 222:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp |= (GPIO_Init->Speed << (position * 2U));
- 223:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** GPIOx->OSPEEDR = temp;
- 224:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c ****
- 225:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Configure the IO Output Type */
- 226:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp = GPIOx->OTYPER;
- 227:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp &= ~(GPIO_OTYPER_OT_0 << position) ;
- 228:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp |= (((GPIO_Init->Mode & GPIO_OUTPUT_TYPE) >> 4U) << position);
- 229:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** GPIOx->OTYPER = temp;
- 230:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** }
- 231:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c ****
- 232:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Activate the Pull-up or Pull down resistor for the current IO */
- 233:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp = GPIOx->PUPDR;
- 234:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp &= ~(GPIO_PUPDR_PUPDR0 << (position * 2U));
- 235:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp |= ((GPIO_Init->Pull) << (position * 2U));
- 236:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** GPIOx->PUPDR = temp;
- 237:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c ****
- 238:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /*--------------------- EXTI Mode Configuration ------------------------*/
- 239:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Configure the External Interrupt or event for the current IO */
- 240:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** if((GPIO_Init->Mode & EXTI_MODE) == EXTI_MODE)
- 241:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** {
- 242:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Enable SYSCFG Clock */
- 243:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** __HAL_RCC_SYSCFG_CLK_ENABLE();
- 244:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c ****
- 245:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp = SYSCFG->EXTICR[position >> 2U];
- 246:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp &= ~(0x0FU << (4U * (position & 0x03U)));
- 247:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp |= ((uint32_t)(GPIO_GET_INDEX(GPIOx)) << (4U * (position & 0x03U)));
- 72 .loc 1 247 0
- 73 0030 0726 movs r6, #7
- 74 0032 00E0 b .L8
- 75 .L14:
- 76 0034 0026 movs r6, #0
- 77 .L8:
- 78 .loc 1 247 0 is_stmt 0 discriminator 32
- 79 0036 06FA0EF6 lsl r6, r6, lr
- 80 003a 3243 orrs r2, r2, r6
- 81 .LVL7:
- 248:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** SYSCFG->EXTICR[position >> 2U] = temp;
- 82 .loc 1 248 0 is_stmt 1 discriminator 32
- 83 003c 0233 adds r3, r3, #2
- 84 003e 5E4E ldr r6, .L25
- 85 0040 46F82320 str r2, [r6, r3, lsl #2]
- 249:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c ****
- 250:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Clear EXTI line configuration */
- 251:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp = EXTI->IMR;
- 86 .loc 1 251 0 discriminator 32
- 87 0044 5D4B ldr r3, .L25+4
- 88 0046 1A68 ldr r2, [r3]
- 89 .LVL8:
- 252:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp &= ~((uint32_t)iocurrent);
- 90 .loc 1 252 0 discriminator 32
- 91 0048 EB43 mvns r3, r5
- ARM GAS /tmp/ccN5SJrP.s page 7
- 92 004a 02EA0306 and r6, r2, r3
- 93 .LVL9:
- 253:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** if((GPIO_Init->Mode & GPIO_MODE_IT) == GPIO_MODE_IT)
- 94 .loc 1 253 0 discriminator 32
- 95 004e 4F68 ldr r7, [r1, #4]
- 96 0050 17F4803F tst r7, #65536
- 97 0054 01D0 beq .L9
- 254:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** {
- 255:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp |= iocurrent;
- 98 .loc 1 255 0
- 99 0056 45EA0206 orr r6, r5, r2
- 100 .LVL10:
- 101 .L9:
- 256:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** }
- 257:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** EXTI->IMR = temp;
- 102 .loc 1 257 0
- 103 005a 584A ldr r2, .L25+4
- 104 005c 1660 str r6, [r2]
- 258:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c ****
- 259:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp = EXTI->EMR;
- 105 .loc 1 259 0
- 106 005e 5268 ldr r2, [r2, #4]
- 107 .LVL11:
- 260:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp &= ~((uint32_t)iocurrent);
- 108 .loc 1 260 0
- 109 0060 03EA0206 and r6, r3, r2
- 110 .LVL12:
- 261:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** if((GPIO_Init->Mode & GPIO_MODE_EVT) == GPIO_MODE_EVT)
- 111 .loc 1 261 0
- 112 0064 4F68 ldr r7, [r1, #4]
- 113 0066 17F4003F tst r7, #131072
- 114 006a 01D0 beq .L10
- 262:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** {
- 263:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp |= iocurrent;
- 115 .loc 1 263 0
- 116 006c 45EA0206 orr r6, r5, r2
- 117 .LVL13:
- 118 .L10:
- 264:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** }
- 265:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** EXTI->EMR = temp;
- 119 .loc 1 265 0
- 120 0070 524A ldr r2, .L25+4
- 121 0072 5660 str r6, [r2, #4]
- 266:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c ****
- 267:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Clear Rising Falling edge configuration */
- 268:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp = EXTI->RTSR;
- 122 .loc 1 268 0
- 123 0074 9268 ldr r2, [r2, #8]
- 124 .LVL14:
- 269:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp &= ~((uint32_t)iocurrent);
- 125 .loc 1 269 0
- 126 0076 03EA0206 and r6, r3, r2
- 127 .LVL15:
- 270:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** if((GPIO_Init->Mode & RISING_EDGE) == RISING_EDGE)
- 128 .loc 1 270 0
- 129 007a 4F68 ldr r7, [r1, #4]
- 130 007c 17F4801F tst r7, #1048576
- ARM GAS /tmp/ccN5SJrP.s page 8
- 131 0080 01D0 beq .L11
- 271:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** {
- 272:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp |= iocurrent;
- 132 .loc 1 272 0
- 133 0082 45EA0206 orr r6, r5, r2
- 134 .LVL16:
- 135 .L11:
- 273:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** }
- 274:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** EXTI->RTSR = temp;
- 136 .loc 1 274 0
- 137 0086 4D4A ldr r2, .L25+4
- 138 0088 9660 str r6, [r2, #8]
- 275:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c ****
- 276:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp = EXTI->FTSR;
- 139 .loc 1 276 0
- 140 008a D268 ldr r2, [r2, #12]
- 141 .LVL17:
- 277:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp &= ~((uint32_t)iocurrent);
- 142 .loc 1 277 0
- 143 008c 1340 ands r3, r3, r2
- 144 .LVL18:
- 278:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** if((GPIO_Init->Mode & FALLING_EDGE) == FALLING_EDGE)
- 145 .loc 1 278 0
- 146 008e 4E68 ldr r6, [r1, #4]
- 147 0090 16F4001F tst r6, #2097152
- 148 0094 01D0 beq .L12
- 279:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** {
- 280:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp |= iocurrent;
- 149 .loc 1 280 0
- 150 0096 45EA0203 orr r3, r5, r2
- 151 .LVL19:
- 152 .L12:
- 281:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** }
- 282:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** EXTI->FTSR = temp;
- 153 .loc 1 282 0
- 154 009a 484A ldr r2, .L25+4
- 155 009c D360 str r3, [r2, #12]
- 156 .LVL20:
- 157 .L3:
- 185:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** {
- 158 .loc 1 185 0 discriminator 2
- 159 009e 0134 adds r4, r4, #1
- 160 .LVL21:
- 161 .L2:
- 185:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** {
- 162 .loc 1 185 0 is_stmt 0 discriminator 1
- 163 00a0 0F2C cmp r4, #15
- 164 00a2 00F28680 bhi .L23
- 188:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Get the current IO position */
- 165 .loc 1 188 0 is_stmt 1
- 166 00a6 0123 movs r3, #1
- 167 00a8 A340 lsls r3, r3, r4
- 168 .LVL22:
- 190:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c ****
- 169 .loc 1 190 0
- 170 00aa 0A68 ldr r2, [r1]
- 171 00ac 03EA0205 and r5, r3, r2
- ARM GAS /tmp/ccN5SJrP.s page 9
- 172 .LVL23:
- 192:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** {
- 173 .loc 1 192 0
- 174 00b0 AB42 cmp r3, r5
- 175 00b2 F4D1 bne .L3
- 196:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** {
- 176 .loc 1 196 0
- 177 00b4 4A68 ldr r2, [r1, #4]
- 178 00b6 022A cmp r2, #2
- 179 00b8 A6D0 beq .L4
- 196:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** {
- 180 .loc 1 196 0 is_stmt 0 discriminator 1
- 181 00ba 122A cmp r2, #18
- 182 00bc A4D0 beq .L4
- 183 .L5:
- 208:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp &= ~(GPIO_MODER_MODER0 << (position * 2U));
- 184 .loc 1 208 0 is_stmt 1
- 185 00be 0668 ldr r6, [r0]
- 186 .LVL24:
- 209:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp |= ((GPIO_Init->Mode & GPIO_MODE) << (position * 2U));
- 187 .loc 1 209 0
- 188 00c0 4FEA440E lsl lr, r4, #1
- 189 00c4 0322 movs r2, #3
- 190 00c6 02FA0EF2 lsl r2, r2, lr
- 191 00ca D243 mvns r2, r2
- 192 00cc 1640 ands r6, r6, r2
- 193 .LVL25:
- 210:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** GPIOx->MODER = temp;
- 194 .loc 1 210 0
- 195 00ce 4F68 ldr r7, [r1, #4]
- 196 00d0 07F00307 and r7, r7, #3
- 197 00d4 07FA0EF7 lsl r7, r7, lr
- 198 00d8 3E43 orrs r6, r6, r7
- 199 .LVL26:
- 211:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c ****
- 200 .loc 1 211 0
- 201 00da 0660 str r6, [r0]
- 214:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** (GPIO_Init->Mode == GPIO_MODE_OUTPUT_OD) || (GPIO_Init->Mode == GPIO_MODE_AF_OD))
- 202 .loc 1 214 0
- 203 00dc 4E68 ldr r6, [r1, #4]
- 204 .LVL27:
- 205 00de 771E subs r7, r6, #1
- 206 00e0 012F cmp r7, #1
- 207 00e2 03D9 bls .L6
- 214:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** (GPIO_Init->Mode == GPIO_MODE_OUTPUT_OD) || (GPIO_Init->Mode == GPIO_MODE_AF_OD))
- 208 .loc 1 214 0 is_stmt 0 discriminator 1
- 209 00e4 112E cmp r6, #17
- 210 00e6 01D0 beq .L6
- 215:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** {
- 211 .loc 1 215 0 is_stmt 1
- 212 00e8 122E cmp r6, #18
- 213 00ea 0FD1 bne .L7
- 214 .L6:
- 220:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp &= ~(GPIO_OSPEEDER_OSPEEDR0 << (position * 2U));
- 215 .loc 1 220 0
- 216 00ec 8668 ldr r6, [r0, #8]
- 217 .LVL28:
- ARM GAS /tmp/ccN5SJrP.s page 10
- 221:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp |= (GPIO_Init->Speed << (position * 2U));
- 218 .loc 1 221 0
- 219 00ee 1640 ands r6, r6, r2
- 220 .LVL29:
- 222:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** GPIOx->OSPEEDR = temp;
- 221 .loc 1 222 0
- 222 00f0 CF68 ldr r7, [r1, #12]
- 223 00f2 07FA0EF7 lsl r7, r7, lr
- 224 00f6 3E43 orrs r6, r6, r7
- 225 .LVL30:
- 223:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c ****
- 226 .loc 1 223 0
- 227 00f8 8660 str r6, [r0, #8]
- 226:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp &= ~(GPIO_OTYPER_OT_0 << position) ;
- 228 .loc 1 226 0
- 229 00fa 4668 ldr r6, [r0, #4]
- 230 .LVL31:
- 227:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp |= (((GPIO_Init->Mode & GPIO_OUTPUT_TYPE) >> 4U) << position);
- 231 .loc 1 227 0
- 232 00fc 26EA0303 bic r3, r6, r3
- 233 .LVL32:
- 228:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** GPIOx->OTYPER = temp;
- 234 .loc 1 228 0
- 235 0100 4E68 ldr r6, [r1, #4]
- 236 0102 C6F30016 ubfx r6, r6, #4, #1
- 237 0106 A640 lsls r6, r6, r4
- 238 0108 3343 orrs r3, r3, r6
- 239 .LVL33:
- 229:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** }
- 240 .loc 1 229 0
- 241 010a 4360 str r3, [r0, #4]
- 242 .LVL34:
- 243 .L7:
- 233:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp &= ~(GPIO_PUPDR_PUPDR0 << (position * 2U));
- 244 .loc 1 233 0
- 245 010c C368 ldr r3, [r0, #12]
- 246 .LVL35:
- 234:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp |= ((GPIO_Init->Pull) << (position * 2U));
- 247 .loc 1 234 0
- 248 010e 1A40 ands r2, r2, r3
- 249 .LVL36:
- 235:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** GPIOx->PUPDR = temp;
- 250 .loc 1 235 0
- 251 0110 8B68 ldr r3, [r1, #8]
- 252 0112 03FA0EF3 lsl r3, r3, lr
- 253 0116 1A43 orrs r2, r2, r3
- 254 .LVL37:
- 236:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c ****
- 255 .loc 1 236 0
- 256 0118 C260 str r2, [r0, #12]
- 240:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** {
- 257 .loc 1 240 0
- 258 011a 4B68 ldr r3, [r1, #4]
- 259 011c 13F0805F tst r3, #268435456
- 260 0120 BDD0 beq .L3
- 261 .LBB2:
- 243:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c ****
- ARM GAS /tmp/ccN5SJrP.s page 11
- 262 .loc 1 243 0
- 263 0122 0023 movs r3, #0
- 264 0124 0193 str r3, [sp, #4]
- 265 0126 264B ldr r3, .L25+8
- 266 0128 5A6C ldr r2, [r3, #68]
- 267 .LVL38:
- 268 012a 42F48042 orr r2, r2, #16384
- 269 012e 5A64 str r2, [r3, #68]
- 270 0130 5B6C ldr r3, [r3, #68]
- 271 0132 03F48043 and r3, r3, #16384
- 272 0136 0193 str r3, [sp, #4]
- 273 0138 019B ldr r3, [sp, #4]
- 274 .LBE2:
- 245:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp &= ~(0x0FU << (4U * (position & 0x03U)));
- 275 .loc 1 245 0
- 276 013a A308 lsrs r3, r4, #2
- 277 013c 9E1C adds r6, r3, #2
- 278 013e 1E4A ldr r2, .L25
- 279 0140 52F82620 ldr r2, [r2, r6, lsl #2]
- 280 .LVL39:
- 246:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** temp |= ((uint32_t)(GPIO_GET_INDEX(GPIOx)) << (4U * (position & 0x03U)));
- 281 .loc 1 246 0
- 282 0144 04F00306 and r6, r4, #3
- 283 0148 4FEA860E lsl lr, r6, #2
- 284 014c 0F26 movs r6, #15
- 285 014e 06FA0EF6 lsl r6, r6, lr
- 286 0152 22EA0602 bic r2, r2, r6
- 287 .LVL40:
- 247:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** SYSCFG->EXTICR[position >> 2U] = temp;
- 288 .loc 1 247 0
- 289 0156 1B4F ldr r7, .L25+12
- 290 0158 B842 cmp r0, r7
- 291 015a 3FF46BAF beq .L14
- 247:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** SYSCFG->EXTICR[position >> 2U] = temp;
- 292 .loc 1 247 0 is_stmt 0 discriminator 1
- 293 015e 1A4E ldr r6, .L25+16
- 294 0160 B042 cmp r0, r6
- 295 0162 1AD0 beq .L15
- 247:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** SYSCFG->EXTICR[position >> 2U] = temp;
- 296 .loc 1 247 0 discriminator 3
- 297 0164 06F58066 add r6, r6, #1024
- 298 0168 B042 cmp r0, r6
- 299 016a 18D0 beq .L16
- 247:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** SYSCFG->EXTICR[position >> 2U] = temp;
- 300 .loc 1 247 0 discriminator 5
- 301 016c 06F58066 add r6, r6, #1024
- 302 0170 B042 cmp r0, r6
- 303 0172 16D0 beq .L17
- 247:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** SYSCFG->EXTICR[position >> 2U] = temp;
- 304 .loc 1 247 0 discriminator 7
- 305 0174 06F58066 add r6, r6, #1024
- 306 0178 B042 cmp r0, r6
- 307 017a 14D0 beq .L18
- 247:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** SYSCFG->EXTICR[position >> 2U] = temp;
- 308 .loc 1 247 0 discriminator 9
- 309 017c 06F58066 add r6, r6, #1024
- 310 0180 B042 cmp r0, r6
- ARM GAS /tmp/ccN5SJrP.s page 12
- 311 0182 12D0 beq .L19
- 247:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** SYSCFG->EXTICR[position >> 2U] = temp;
- 312 .loc 1 247 0 discriminator 11
- 313 0184 06F58066 add r6, r6, #1024
- 314 0188 B042 cmp r0, r6
- 315 018a 10D0 beq .L20
- 247:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** SYSCFG->EXTICR[position >> 2U] = temp;
- 316 .loc 1 247 0 discriminator 13
- 317 018c 06F58066 add r6, r6, #1024
- 318 0190 B042 cmp r0, r6
- 319 0192 3FF44DAF beq .L24
- 247:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** SYSCFG->EXTICR[position >> 2U] = temp;
- 320 .loc 1 247 0
- 321 0196 0826 movs r6, #8
- 322 0198 4DE7 b .L8
- 323 .L15:
- 324 019a 0126 movs r6, #1
- 325 .LVL41:
- 326 019c 4BE7 b .L8
- 327 .LVL42:
- 328 .L16:
- 329 019e 0226 movs r6, #2
- 330 01a0 49E7 b .L8
- 331 .L17:
- 332 01a2 0326 movs r6, #3
- 333 01a4 47E7 b .L8
- 334 .L18:
- 335 01a6 0426 movs r6, #4
- 336 01a8 45E7 b .L8
- 337 .L19:
- 338 01aa 0526 movs r6, #5
- 339 01ac 43E7 b .L8
- 340 .L20:
- 341 01ae 0626 movs r6, #6
- 342 01b0 41E7 b .L8
- 343 .LVL43:
- 344 .L23:
- 283:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** }
- 284:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** }
- 285:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** }
- 286:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** }
- 345 .loc 1 286 0 is_stmt 1
- 346 01b2 03B0 add sp, sp, #12
- 347 .LCFI2:
- 348 .cfi_def_cfa_offset 20
- 349 @ sp needed
- 350 01b4 F0BD pop {r4, r5, r6, r7, pc}
- 351 .LVL44:
- 352 .L26:
- 353 01b6 00BF .align 2
- 354 .L25:
- 355 01b8 00380140 .word 1073821696
- 356 01bc 003C0140 .word 1073822720
- 357 01c0 00380240 .word 1073887232
- 358 01c4 00000240 .word 1073872896
- 359 01c8 00040240 .word 1073873920
- 360 .cfi_endproc
- ARM GAS /tmp/ccN5SJrP.s page 13
- 361 .LFE130:
- 363 .section .text.HAL_GPIO_DeInit,"ax",%progbits
- 364 .align 1
- 365 .global HAL_GPIO_DeInit
- 366 .syntax unified
- 367 .thumb
- 368 .thumb_func
- 369 .fpu fpv4-sp-d16
- 371 HAL_GPIO_DeInit:
- 372 .LFB131:
- 287:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c ****
- 288:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /**
- 289:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @brief De-initializes the GPIOx peripheral registers to their default reset values.
- 290: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
- 291:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * x can be (A..I) to select the GPIO peripheral for STM32F40XX and STM32F427
- 292:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @param GPIO_Pin specifies the port bit to be written.
- 293:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * This parameter can be one of GPIO_PIN_x where x can be (0..15).
- 294:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @retval None
- 295:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** */
- 296:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** void HAL_GPIO_DeInit(GPIO_TypeDef *GPIOx, uint32_t GPIO_Pin)
- 297:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** {
- 373 .loc 1 297 0
- 374 .cfi_startproc
- 375 @ args = 0, pretend = 0, frame = 0
- 376 @ frame_needed = 0, uses_anonymous_args = 0
- 377 .LVL45:
- 298:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** uint32_t position;
- 299:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** uint32_t ioposition = 0x00U;
- 300:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** uint32_t iocurrent = 0x00U;
- 301:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** uint32_t tmp = 0x00U;
- 302:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c ****
- 303:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Check the parameters */
- 304:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** assert_param(IS_GPIO_ALL_INSTANCE(GPIOx));
- 305:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c ****
- 306:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Configure the port pins */
- 307:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** for(position = 0U; position < GPIO_NUMBER; position++)
- 378 .loc 1 307 0
- 379 0000 0023 movs r3, #0
- 380 .LVL46:
- 381 0002 0F2B cmp r3, #15
- 382 0004 00F28780 bhi .L44
- 297:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** uint32_t position;
- 383 .loc 1 297 0
- 384 0008 F0B5 push {r4, r5, r6, r7, lr}
- 385 .LCFI3:
- 386 .cfi_def_cfa_offset 20
- 387 .cfi_offset 4, -20
- 388 .cfi_offset 5, -16
- 389 .cfi_offset 6, -12
- 390 .cfi_offset 7, -8
- 391 .cfi_offset 14, -4
- 392 000a 29E0 b .L32
- 393 .LVL47:
- 394 .L47:
- 308:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** {
- 309:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Get the IO position */
- 310:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** ioposition = 0x01U << position;
- ARM GAS /tmp/ccN5SJrP.s page 14
- 311:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Get the current IO position */
- 312:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** iocurrent = (GPIO_Pin) & ioposition;
- 313:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c ****
- 314:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** if(iocurrent == ioposition)
- 315:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** {
- 316:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /*------------------------- EXTI Mode Configuration --------------------*/
- 317:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** tmp = SYSCFG->EXTICR[position >> 2U];
- 318:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** tmp &= (0x0FU << (4U * (position & 0x03U)));
- 319:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** if(tmp == ((uint32_t)(GPIO_GET_INDEX(GPIOx)) << (4U * (position & 0x03U))))
- 395 .loc 1 319 0
- 396 000c 0727 movs r7, #7
- 397 000e 00E0 b .L30
- 398 .L33:
- 399 0010 0027 movs r7, #0
- 400 .L30:
- 401 .loc 1 319 0 is_stmt 0 discriminator 32
- 402 0012 07FA05F5 lsl r5, r7, r5
- 403 0016 AE42 cmp r6, r5
- 404 0018 64D0 beq .L45
- 405 .LVL48:
- 406 .L31:
- 320:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** {
- 321:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Configure the External Interrupt or event for the current IO */
- 322:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** tmp = 0x0FU << (4U * (position & 0x03U));
- 323:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** SYSCFG->EXTICR[position >> 2U] &= ~tmp;
- 324:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c ****
- 325:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Clear EXTI line configuration */
- 326:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** EXTI->IMR &= ~((uint32_t)iocurrent);
- 327:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** EXTI->EMR &= ~((uint32_t)iocurrent);
- 328:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c ****
- 329:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Clear Rising Falling edge configuration */
- 330:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** EXTI->RTSR &= ~((uint32_t)iocurrent);
- 331:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** EXTI->FTSR &= ~((uint32_t)iocurrent);
- 332:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** }
- 333:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c ****
- 334:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /*------------------------- GPIO Mode Configuration --------------------*/
- 335:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Configure IO Direction in Input Floating Mode */
- 336:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** GPIOx->MODER &= ~(GPIO_MODER_MODER0 << (position * 2U));
- 407 .loc 1 336 0 is_stmt 1
- 408 001a 0568 ldr r5, [r0]
- 409 001c 5E00 lsls r6, r3, #1
- 410 001e 0324 movs r4, #3
- 411 0020 B440 lsls r4, r4, r6
- 412 0022 E443 mvns r4, r4
- 413 0024 2540 ands r5, r5, r4
- 414 0026 0560 str r5, [r0]
- 337:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c ****
- 338:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Configure the default Alternate Function in current IO */
- 339:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** GPIOx->AFR[position >> 3U] &= ~(0xFU << ((uint32_t)(position & 0x07U) * 4U)) ;
- 415 .loc 1 339 0
- 416 0028 DD08 lsrs r5, r3, #3
- 417 002a 0835 adds r5, r5, #8
- 418 002c 50F82560 ldr r6, [r0, r5, lsl #2]
- 419 0030 03F00707 and r7, r3, #7
- 420 0034 4FEA870E lsl lr, r7, #2
- 421 0038 0F27 movs r7, #15
- 422 003a 07FA0EF7 lsl r7, r7, lr
- ARM GAS /tmp/ccN5SJrP.s page 15
- 423 003e 26EA0706 bic r6, r6, r7
- 424 0042 40F82560 str r6, [r0, r5, lsl #2]
- 340:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c ****
- 341:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Configure the default value for IO Speed */
- 342:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** GPIOx->OSPEEDR &= ~(GPIO_OSPEEDER_OSPEEDR0 << (position * 2U));
- 425 .loc 1 342 0
- 426 0046 8568 ldr r5, [r0, #8]
- 427 0048 2540 ands r5, r5, r4
- 428 004a 8560 str r5, [r0, #8]
- 343:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c ****
- 344:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Configure the default value IO Output Type */
- 345:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** GPIOx->OTYPER &= ~(GPIO_OTYPER_OT_0 << position) ;
- 429 .loc 1 345 0
- 430 004c 4568 ldr r5, [r0, #4]
- 431 004e 25EA0202 bic r2, r5, r2
- 432 .LVL49:
- 433 0052 4260 str r2, [r0, #4]
- 346:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c ****
- 347:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Deactivate the Pull-up and Pull-down resistor for the current IO */
- 348:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** GPIOx->PUPDR &= ~(GPIO_PUPDR_PUPDR0 << (position * 2U));
- 434 .loc 1 348 0
- 435 0054 C268 ldr r2, [r0, #12]
- 436 0056 1440 ands r4, r4, r2
- 437 0058 C460 str r4, [r0, #12]
- 438 .L29:
- 307:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** {
- 439 .loc 1 307 0 discriminator 2
- 440 005a 0133 adds r3, r3, #1
- 441 .LVL50:
- 442 005c 0F2B cmp r3, #15
- 443 005e 59D8 bhi .L46
- 444 .LVL51:
- 445 .L32:
- 310:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Get the current IO position */
- 446 .loc 1 310 0
- 447 0060 0122 movs r2, #1
- 448 0062 9A40 lsls r2, r2, r3
- 449 .LVL52:
- 312:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c ****
- 450 .loc 1 312 0
- 451 0064 02EA0104 and r4, r2, r1
- 452 .LVL53:
- 314:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** {
- 453 .loc 1 314 0
- 454 0068 A242 cmp r2, r4
- 455 006a F6D1 bne .L29
- 317:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** tmp &= (0x0FU << (4U * (position & 0x03U)));
- 456 .loc 1 317 0
- 457 006c 4FEA930E lsr lr, r3, #2
- 458 0070 0EF10206 add r6, lr, #2
- 459 0074 284D ldr r5, .L48
- 460 0076 55F82660 ldr r6, [r5, r6, lsl #2]
- 461 .LVL54:
- 318:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** if(tmp == ((uint32_t)(GPIO_GET_INDEX(GPIOx)) << (4U * (position & 0x03U))))
- 462 .loc 1 318 0
- 463 007a 03F00305 and r5, r3, #3
- 464 007e AD00 lsls r5, r5, #2
- ARM GAS /tmp/ccN5SJrP.s page 16
- 465 0080 0F27 movs r7, #15
- 466 0082 07FA05FC lsl ip, r7, r5
- 467 0086 06EA0C06 and r6, r6, ip
- 468 .LVL55:
- 319:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** {
- 469 .loc 1 319 0
- 470 008a 244F ldr r7, .L48+4
- 471 008c B842 cmp r0, r7
- 472 008e BFD0 beq .L33
- 319:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** {
- 473 .loc 1 319 0 is_stmt 0 discriminator 1
- 474 0090 07F58067 add r7, r7, #1024
- 475 0094 B842 cmp r0, r7
- 476 0096 19D0 beq .L34
- 319:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** {
- 477 .loc 1 319 0 discriminator 3
- 478 0098 07F58067 add r7, r7, #1024
- 479 009c B842 cmp r0, r7
- 480 009e 17D0 beq .L35
- 319:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** {
- 481 .loc 1 319 0 discriminator 5
- 482 00a0 07F58067 add r7, r7, #1024
- 483 00a4 B842 cmp r0, r7
- 484 00a6 15D0 beq .L36
- 319:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** {
- 485 .loc 1 319 0 discriminator 7
- 486 00a8 07F58067 add r7, r7, #1024
- 487 00ac B842 cmp r0, r7
- 488 00ae 13D0 beq .L37
- 319:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** {
- 489 .loc 1 319 0 discriminator 9
- 490 00b0 07F58067 add r7, r7, #1024
- 491 00b4 B842 cmp r0, r7
- 492 00b6 11D0 beq .L38
- 319:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** {
- 493 .loc 1 319 0 discriminator 11
- 494 00b8 07F58067 add r7, r7, #1024
- 495 00bc B842 cmp r0, r7
- 496 00be 0FD0 beq .L39
- 319:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** {
- 497 .loc 1 319 0 discriminator 13
- 498 00c0 07F58067 add r7, r7, #1024
- 499 00c4 B842 cmp r0, r7
- 500 00c6 A1D0 beq .L47
- 319:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** {
- 501 .loc 1 319 0
- 502 00c8 0827 movs r7, #8
- 503 00ca A2E7 b .L30
- 504 .L34:
- 505 00cc 0127 movs r7, #1
- 506 00ce A0E7 b .L30
- 507 .L35:
- 508 00d0 0227 movs r7, #2
- 509 00d2 9EE7 b .L30
- 510 .L36:
- 511 00d4 0327 movs r7, #3
- 512 00d6 9CE7 b .L30
- ARM GAS /tmp/ccN5SJrP.s page 17
- 513 .L37:
- 514 00d8 0427 movs r7, #4
- 515 00da 9AE7 b .L30
- 516 .L38:
- 517 00dc 0527 movs r7, #5
- 518 00de 98E7 b .L30
- 519 .L39:
- 520 00e0 0627 movs r7, #6
- 521 00e2 96E7 b .L30
- 522 .L45:
- 523 .LVL56:
- 323:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c ****
- 524 .loc 1 323 0 is_stmt 1
- 525 00e4 0C4E ldr r6, .L48
- 526 00e6 0EF10205 add r5, lr, #2
- 527 00ea 56F82570 ldr r7, [r6, r5, lsl #2]
- 528 00ee 27EA0C07 bic r7, r7, ip
- 529 00f2 46F82570 str r7, [r6, r5, lsl #2]
- 326:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** EXTI->EMR &= ~((uint32_t)iocurrent);
- 530 .loc 1 326 0
- 531 00f6 0A4D ldr r5, .L48+8
- 532 00f8 2E68 ldr r6, [r5]
- 533 00fa E443 mvns r4, r4
- 534 .LVL57:
- 535 00fc 2640 ands r6, r6, r4
- 536 00fe 2E60 str r6, [r5]
- 327:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c ****
- 537 .loc 1 327 0
- 538 0100 6E68 ldr r6, [r5, #4]
- 539 0102 2640 ands r6, r6, r4
- 540 0104 6E60 str r6, [r5, #4]
- 330:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** EXTI->FTSR &= ~((uint32_t)iocurrent);
- 541 .loc 1 330 0
- 542 0106 AE68 ldr r6, [r5, #8]
- 543 0108 2640 ands r6, r6, r4
- 544 010a AE60 str r6, [r5, #8]
- 331:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** }
- 545 .loc 1 331 0
- 546 010c EE68 ldr r6, [r5, #12]
- 547 010e 3440 ands r4, r4, r6
- 548 .LVL58:
- 549 0110 EC60 str r4, [r5, #12]
- 550 0112 82E7 b .L31
- 551 .LVL59:
- 552 .L46:
- 349:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** }
- 350:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** }
- 351:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** }
- 553 .loc 1 351 0
- 554 0114 F0BD pop {r4, r5, r6, r7, pc}
- 555 .LVL60:
- 556 .L44:
- 557 .LCFI4:
- 558 .cfi_def_cfa_offset 0
- 559 .cfi_restore 4
- 560 .cfi_restore 5
- 561 .cfi_restore 6
- ARM GAS /tmp/ccN5SJrP.s page 18
- 562 .cfi_restore 7
- 563 .cfi_restore 14
- 564 0116 7047 bx lr
- 565 .L49:
- 566 .align 2
- 567 .L48:
- 568 0118 00380140 .word 1073821696
- 569 011c 00000240 .word 1073872896
- 570 0120 003C0140 .word 1073822720
- 571 .cfi_endproc
- 572 .LFE131:
- 574 .section .text.HAL_GPIO_ReadPin,"ax",%progbits
- 575 .align 1
- 576 .global HAL_GPIO_ReadPin
- 577 .syntax unified
- 578 .thumb
- 579 .thumb_func
- 580 .fpu fpv4-sp-d16
- 582 HAL_GPIO_ReadPin:
- 583 .LFB132:
- 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 **** */
- 356:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c ****
- 357:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /** @defgroup GPIO_Exported_Functions_Group2 IO operation functions
- 358:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @brief GPIO Read and Write
- 359:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** *
- 360:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** @verbatim
- 361:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** ===============================================================================
- 362:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** ##### IO operation functions #####
- 363:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** ===============================================================================
- 364:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c ****
- 365:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** @endverbatim
- 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 ****
- 369:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /**
- 370:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @brief Reads the specified input port pin.
- 371: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
- 372:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * x can be (A..I) to select the GPIO peripheral for STM32F40XX and STM32F427
- 373:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @param GPIO_Pin specifies the port bit to read.
- 374:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * This parameter can be GPIO_PIN_x where x can be (0..15).
- 375:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @retval The input port pin value.
- 376:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** */
- 377:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** GPIO_PinState HAL_GPIO_ReadPin(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin)
- 378:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** {
- 584 .loc 1 378 0
- 585 .cfi_startproc
- 586 @ args = 0, pretend = 0, frame = 0
- 587 @ frame_needed = 0, uses_anonymous_args = 0
- 588 @ link register save eliminated.
- 589 .LVL61:
- 379:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** GPIO_PinState bitstatus;
- 380:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c ****
- 381:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Check the parameters */
- 382:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** assert_param(IS_GPIO_PIN(GPIO_Pin));
- ARM GAS /tmp/ccN5SJrP.s page 19
- 383:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c ****
- 384:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** if((GPIOx->IDR & GPIO_Pin) != (uint32_t)GPIO_PIN_RESET)
- 590 .loc 1 384 0
- 591 0000 0369 ldr r3, [r0, #16]
- 592 0002 1942 tst r1, r3
- 593 0004 01D1 bne .L53
- 385:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** {
- 386:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** bitstatus = GPIO_PIN_SET;
- 387:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** }
- 388:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** else
- 389:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** {
- 390:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** bitstatus = GPIO_PIN_RESET;
- 594 .loc 1 390 0
- 595 0006 0020 movs r0, #0
- 596 .LVL62:
- 391:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** }
- 392:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** return bitstatus;
- 393:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** }
- 597 .loc 1 393 0
- 598 0008 7047 bx lr
- 599 .LVL63:
- 600 .L53:
- 386:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** }
- 601 .loc 1 386 0
- 602 000a 0120 movs r0, #1
- 603 .LVL64:
- 604 000c 7047 bx lr
- 605 .cfi_endproc
- 606 .LFE132:
- 608 .section .text.HAL_GPIO_WritePin,"ax",%progbits
- 609 .align 1
- 610 .global HAL_GPIO_WritePin
- 611 .syntax unified
- 612 .thumb
- 613 .thumb_func
- 614 .fpu fpv4-sp-d16
- 616 HAL_GPIO_WritePin:
- 617 .LFB133:
- 394:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c ****
- 395:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /**
- 396:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @brief Sets or clears the selected data port bit.
- 397:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** *
- 398:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @note This function uses GPIOx_BSRR register to allow atomic read/modify
- 399:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * accesses. In this way, there is no risk of an IRQ occurring between
- 400:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * the read and the modify access.
- 401:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** *
- 402: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
- 403:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * x can be (A..I) to select the GPIO peripheral for STM32F40XX and STM32F427
- 404:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @param GPIO_Pin specifies the port bit to be written.
- 405:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * This parameter can be one of GPIO_PIN_x where x can be (0..15).
- 406:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @param PinState specifies the value to be written to the selected bit.
- 407:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * This parameter can be one of the GPIO_PinState enum values:
- 408:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @arg GPIO_PIN_RESET: to clear the port pin
- 409:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @arg GPIO_PIN_SET: to set the port pin
- 410:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @retval None
- 411:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** */
- 412:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** void HAL_GPIO_WritePin(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin, GPIO_PinState PinState)
- ARM GAS /tmp/ccN5SJrP.s page 20
- 413:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** {
- 618 .loc 1 413 0
- 619 .cfi_startproc
- 620 @ args = 0, pretend = 0, frame = 0
- 621 @ frame_needed = 0, uses_anonymous_args = 0
- 622 @ link register save eliminated.
- 623 .LVL65:
- 414:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Check the parameters */
- 415:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** assert_param(IS_GPIO_PIN(GPIO_Pin));
- 416:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** assert_param(IS_GPIO_PIN_ACTION(PinState));
- 417:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c ****
- 418:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** if(PinState != GPIO_PIN_RESET)
- 624 .loc 1 418 0
- 625 0000 12B9 cbnz r2, .L57
- 419:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** {
- 420:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** GPIOx->BSRR = GPIO_Pin;
- 421:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** }
- 422:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** else
- 423:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** {
- 424:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** GPIOx->BSRR = (uint32_t)GPIO_Pin << 16U;
- 626 .loc 1 424 0
- 627 0002 0904 lsls r1, r1, #16
- 628 .LVL66:
- 629 0004 8161 str r1, [r0, #24]
- 630 0006 7047 bx lr
- 631 .LVL67:
- 632 .L57:
- 420:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** }
- 633 .loc 1 420 0
- 634 0008 8161 str r1, [r0, #24]
- 635 000a 7047 bx lr
- 636 .cfi_endproc
- 637 .LFE133:
- 639 .section .text.HAL_GPIO_TogglePin,"ax",%progbits
- 640 .align 1
- 641 .global HAL_GPIO_TogglePin
- 642 .syntax unified
- 643 .thumb
- 644 .thumb_func
- 645 .fpu fpv4-sp-d16
- 647 HAL_GPIO_TogglePin:
- 648 .LFB134:
- 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 ****
- 428:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /**
- 429:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @brief Toggles the specified GPIO pins.
- 430: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
- 431:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * x can be (A..I) to select the GPIO peripheral for STM32F40XX and STM32F427
- 432:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @param GPIO_Pin Specifies the pins to be toggled.
- 433:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @retval None
- 434:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** */
- 435:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** void HAL_GPIO_TogglePin(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin)
- 436:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** {
- 649 .loc 1 436 0
- 650 .cfi_startproc
- 651 @ args = 0, pretend = 0, frame = 0
- ARM GAS /tmp/ccN5SJrP.s page 21
- 652 @ frame_needed = 0, uses_anonymous_args = 0
- 653 @ link register save eliminated.
- 654 .LVL68:
- 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));
- 439:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c ****
- 440:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** if ((GPIOx->ODR & GPIO_Pin) == GPIO_Pin)
- 655 .loc 1 440 0
- 656 0000 4369 ldr r3, [r0, #20]
- 657 0002 31EA0303 bics r3, r1, r3
- 658 0006 01D0 beq .L61
- 441:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** {
- 442:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** GPIOx->BSRR = (uint32_t)GPIO_Pin << GPIO_NUMBER;
- 443:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** }
- 444:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** else
- 445:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** {
- 446:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** GPIOx->BSRR = GPIO_Pin;
- 659 .loc 1 446 0
- 660 0008 8161 str r1, [r0, #24]
- 661 000a 7047 bx lr
- 662 .L61:
- 442:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** }
- 663 .loc 1 442 0
- 664 000c 0904 lsls r1, r1, #16
- 665 .LVL69:
- 666 000e 8161 str r1, [r0, #24]
- 667 0010 7047 bx lr
- 668 .cfi_endproc
- 669 .LFE134:
- 671 .section .text.HAL_GPIO_LockPin,"ax",%progbits
- 672 .align 1
- 673 .global HAL_GPIO_LockPin
- 674 .syntax unified
- 675 .thumb
- 676 .thumb_func
- 677 .fpu fpv4-sp-d16
- 679 HAL_GPIO_LockPin:
- 680 .LFB135:
- 447:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** }
- 448:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** }
- 449:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c ****
- 450:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /**
- 451:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @brief Locks GPIO Pins configuration registers.
- 452:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @note The locked registers are GPIOx_MODER, GPIOx_OTYPER, GPIOx_OSPEEDR,
- 453:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * GPIOx_PUPDR, GPIOx_AFRL and GPIOx_AFRH.
- 454:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @note The configuration of the locked GPIO pins can no longer be modified
- 455:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * until the next reset.
- 456: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
- 457:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @param GPIO_Pin specifies the port bit to be locked.
- 458: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).
- 459:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @retval None
- 460:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** */
- 461:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** HAL_StatusTypeDef HAL_GPIO_LockPin(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin)
- 462:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** {
- 681 .loc 1 462 0
- 682 .cfi_startproc
- 683 @ args = 0, pretend = 0, frame = 8
- ARM GAS /tmp/ccN5SJrP.s page 22
- 684 @ frame_needed = 0, uses_anonymous_args = 0
- 685 @ link register save eliminated.
- 686 .LVL70:
- 687 0000 82B0 sub sp, sp, #8
- 688 .LCFI5:
- 689 .cfi_def_cfa_offset 8
- 463:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** __IO uint32_t tmp = GPIO_LCKR_LCKK;
- 690 .loc 1 463 0
- 691 0002 4FF48033 mov r3, #65536
- 692 0006 0193 str r3, [sp, #4]
- 464:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c ****
- 465:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Check the parameters */
- 466:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** assert_param(IS_GPIO_PIN(GPIO_Pin));
- 467:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c ****
- 468:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Apply lock key write sequence */
- 469:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** tmp |= GPIO_Pin;
- 693 .loc 1 469 0
- 694 0008 019B ldr r3, [sp, #4]
- 695 000a 0B43 orrs r3, r3, r1
- 696 000c 0193 str r3, [sp, #4]
- 470:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Set LCKx bit(s): LCKK='1' + LCK[15-0] */
- 471:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** GPIOx->LCKR = tmp;
- 697 .loc 1 471 0
- 698 000e 019B ldr r3, [sp, #4]
- 699 0010 C361 str r3, [r0, #28]
- 472:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Reset LCKx bit(s): LCKK='0' + LCK[15-0] */
- 473:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** GPIOx->LCKR = GPIO_Pin;
- 700 .loc 1 473 0
- 701 0012 C161 str r1, [r0, #28]
- 474:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Set LCKx bit(s): LCKK='1' + LCK[15-0] */
- 475:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** GPIOx->LCKR = tmp;
- 702 .loc 1 475 0
- 703 0014 019B ldr r3, [sp, #4]
- 704 0016 C361 str r3, [r0, #28]
- 476:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* Read LCKK bit*/
- 477:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** tmp = GPIOx->LCKR;
- 705 .loc 1 477 0
- 706 0018 C369 ldr r3, [r0, #28]
- 707 001a 0193 str r3, [sp, #4]
- 478:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c ****
- 479:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** if((GPIOx->LCKR & GPIO_LCKR_LCKK) != RESET)
- 708 .loc 1 479 0
- 709 001c C369 ldr r3, [r0, #28]
- 710 001e 13F4803F tst r3, #65536
- 711 0022 02D1 bne .L66
- 480:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** {
- 481:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** return HAL_OK;
- 482:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** }
- 483:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** else
- 484:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** {
- 485:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** return HAL_ERROR;
- 712 .loc 1 485 0
- 713 0024 0120 movs r0, #1
- 714 .LVL71:
- 715 .L63:
- 486:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** }
- 487:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** }
- ARM GAS /tmp/ccN5SJrP.s page 23
- 716 .loc 1 487 0
- 717 0026 02B0 add sp, sp, #8
- 718 .LCFI6:
- 719 .cfi_remember_state
- 720 .cfi_def_cfa_offset 0
- 721 @ sp needed
- 722 0028 7047 bx lr
- 723 .LVL72:
- 724 .L66:
- 725 .LCFI7:
- 726 .cfi_restore_state
- 481:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** }
- 727 .loc 1 481 0
- 728 002a 0020 movs r0, #0
- 729 .LVL73:
- 730 002c FBE7 b .L63
- 731 .cfi_endproc
- 732 .LFE135:
- 734 .section .text.HAL_GPIO_EXTI_Callback,"ax",%progbits
- 735 .align 1
- 736 .weak HAL_GPIO_EXTI_Callback
- 737 .syntax unified
- 738 .thumb
- 739 .thumb_func
- 740 .fpu fpv4-sp-d16
- 742 HAL_GPIO_EXTI_Callback:
- 743 .LFB137:
- 488:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c ****
- 489:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /**
- 490:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @brief This function handles EXTI interrupt request.
- 491:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @param GPIO_Pin Specifies the pins connected EXTI line
- 492:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @retval None
- 493:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** */
- 494:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** void HAL_GPIO_EXTI_IRQHandler(uint16_t GPIO_Pin)
- 495:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** {
- 496:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* EXTI line interrupt detected */
- 497:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** if(__HAL_GPIO_EXTI_GET_IT(GPIO_Pin) != RESET)
- 498:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** {
- 499:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** __HAL_GPIO_EXTI_CLEAR_IT(GPIO_Pin);
- 500:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** HAL_GPIO_EXTI_Callback(GPIO_Pin);
- 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 ****
- 504:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /**
- 505:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @brief EXTI line detection callbacks.
- 506:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @param GPIO_Pin Specifies the pins connected EXTI line
- 507:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** * @retval None
- 508:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** */
- 509:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** __weak void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin)
- 510:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** {
- 744 .loc 1 510 0
- 745 .cfi_startproc
- 746 @ args = 0, pretend = 0, frame = 0
- 747 @ frame_needed = 0, uses_anonymous_args = 0
- 748 @ link register save eliminated.
- 749 .LVL74:
- 750 0000 7047 bx lr
- ARM GAS /tmp/ccN5SJrP.s page 24
- 751 .cfi_endproc
- 752 .LFE137:
- 754 .section .text.HAL_GPIO_EXTI_IRQHandler,"ax",%progbits
- 755 .align 1
- 756 .global HAL_GPIO_EXTI_IRQHandler
- 757 .syntax unified
- 758 .thumb
- 759 .thumb_func
- 760 .fpu fpv4-sp-d16
- 762 HAL_GPIO_EXTI_IRQHandler:
- 763 .LFB136:
- 495:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* EXTI line interrupt detected */
- 764 .loc 1 495 0
- 765 .cfi_startproc
- 766 @ args = 0, pretend = 0, frame = 0
- 767 @ frame_needed = 0, uses_anonymous_args = 0
- 768 .LVL75:
- 495:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** /* EXTI line interrupt detected */
- 769 .loc 1 495 0
- 770 0000 08B5 push {r3, lr}
- 771 .LCFI8:
- 772 .cfi_def_cfa_offset 8
- 773 .cfi_offset 3, -8
- 774 .cfi_offset 14, -4
- 497:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** {
- 775 .loc 1 497 0
- 776 0002 054B ldr r3, .L72
- 777 0004 5B69 ldr r3, [r3, #20]
- 778 0006 0342 tst r3, r0
- 779 0008 00D1 bne .L71
- 780 .LVL76:
- 781 .L68:
- 782 000a 08BD pop {r3, pc}
- 783 .LVL77:
- 784 .L71:
- 499:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** HAL_GPIO_EXTI_Callback(GPIO_Pin);
- 785 .loc 1 499 0
- 786 000c 024B ldr r3, .L72
- 787 000e 5861 str r0, [r3, #20]
- 500:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c **** }
- 788 .loc 1 500 0
- 789 0010 FFF7FEFF bl HAL_GPIO_EXTI_Callback
- 790 .LVL78:
- 502:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c ****
- 791 .loc 1 502 0
- 792 0014 F9E7 b .L68
- 793 .L73:
- 794 0016 00BF .align 2
- 795 .L72:
- 796 0018 003C0140 .word 1073822720
- 797 .cfi_endproc
- 798 .LFE136:
- 800 .text
- 801 .Letext0:
- 802 .file 2 "/usr/include/newlib/machine/_default_types.h"
- 803 .file 3 "/usr/include/newlib/sys/_stdint.h"
- 804 .file 4 "Drivers/CMSIS/Include/core_cm4.h"
- ARM GAS /tmp/ccN5SJrP.s page 25
- 805 .file 5 "Drivers/CMSIS/Device/ST/STM32F4xx/Include/system_stm32f4xx.h"
- 806 .file 6 "Drivers/CMSIS/Device/ST/STM32F4xx/Include/stm32f407xx.h"
- 807 .file 7 "Drivers/CMSIS/Device/ST/STM32F4xx/Include/stm32f4xx.h"
- 808 .file 8 "Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_def.h"
- 809 .file 9 "Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_gpio.h"
- ARM GAS /tmp/ccN5SJrP.s page 26
- DEFINED SYMBOLS
- *ABS*:0000000000000000 stm32f4xx_hal_gpio.c
- /tmp/ccN5SJrP.s:18 .text.HAL_GPIO_Init:0000000000000000 $t
- /tmp/ccN5SJrP.s:25 .text.HAL_GPIO_Init:0000000000000000 HAL_GPIO_Init
- /tmp/ccN5SJrP.s:355 .text.HAL_GPIO_Init:00000000000001b8 $d
- /tmp/ccN5SJrP.s:364 .text.HAL_GPIO_DeInit:0000000000000000 $t
- /tmp/ccN5SJrP.s:371 .text.HAL_GPIO_DeInit:0000000000000000 HAL_GPIO_DeInit
- /tmp/ccN5SJrP.s:568 .text.HAL_GPIO_DeInit:0000000000000118 $d
- /tmp/ccN5SJrP.s:575 .text.HAL_GPIO_ReadPin:0000000000000000 $t
- /tmp/ccN5SJrP.s:582 .text.HAL_GPIO_ReadPin:0000000000000000 HAL_GPIO_ReadPin
- /tmp/ccN5SJrP.s:609 .text.HAL_GPIO_WritePin:0000000000000000 $t
- /tmp/ccN5SJrP.s:616 .text.HAL_GPIO_WritePin:0000000000000000 HAL_GPIO_WritePin
- /tmp/ccN5SJrP.s:640 .text.HAL_GPIO_TogglePin:0000000000000000 $t
- /tmp/ccN5SJrP.s:647 .text.HAL_GPIO_TogglePin:0000000000000000 HAL_GPIO_TogglePin
- /tmp/ccN5SJrP.s:672 .text.HAL_GPIO_LockPin:0000000000000000 $t
- /tmp/ccN5SJrP.s:679 .text.HAL_GPIO_LockPin:0000000000000000 HAL_GPIO_LockPin
- /tmp/ccN5SJrP.s:735 .text.HAL_GPIO_EXTI_Callback:0000000000000000 $t
- /tmp/ccN5SJrP.s:742 .text.HAL_GPIO_EXTI_Callback:0000000000000000 HAL_GPIO_EXTI_Callback
- /tmp/ccN5SJrP.s:755 .text.HAL_GPIO_EXTI_IRQHandler:0000000000000000 $t
- /tmp/ccN5SJrP.s:762 .text.HAL_GPIO_EXTI_IRQHandler:0000000000000000 HAL_GPIO_EXTI_IRQHandler
- /tmp/ccN5SJrP.s:796 .text.HAL_GPIO_EXTI_IRQHandler:0000000000000018 $d
- .debug_frame:0000000000000010 $d
- NO UNDEFINED SYMBOLS
|