📄 stm32f10x_gpio.lst
字号:
1 .syntax unified
2 .cpu cortex-m3
3 .fpu softvfp
4 .eabi_attribute 20, 1
5 .eabi_attribute 21, 1
6 .eabi_attribute 23, 3
7 .eabi_attribute 24, 1
8 .eabi_attribute 25, 1
9 .eabi_attribute 26, 1
10 .eabi_attribute 30, 4
11 .eabi_attribute 18, 4
12 .thumb
13 .file "stm32f10x_gpio.c"
21 .Ltext0:
22 .section .text.GPIO_Init,"ax",%progbits
23 .align 2
24 .global GPIO_Init
25 .thumb
26 .thumb_func
28 GPIO_Init:
29 .LFB28:
30 .file 1 "lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c"
1:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** /**
2:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** ******************************************************************************
3:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** * @file stm32f10x_gpio.c
4:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** * @author MCD Application Team
5:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** * @version V3.0.0
6:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** * @date 04/06/2009
7:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** * @brief This file provides all the GPIO firmware functions.
8:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** ******************************************************************************
9:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** * @copy
10:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** *
11:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** * THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS
12:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** * WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE
13:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** * TIME. AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY
14:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** * DIRECT, INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING
15:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** * FROM THE CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE
16:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** * CODING INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS.
17:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** *
18:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** * <h2><center>© COPYRIGHT 2009 STMicroelectronics</center></h2>
19:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** */
20:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c ****
21:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** /* Includes ------------------------------------------------------------------*/
22:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** #include "stm32f10x_gpio.h"
23:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** #include "stm32f10x_rcc.h"
24:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c ****
25:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** /** @addtogroup StdPeriph_Driver
26:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** * @{
27:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** */
28:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c ****
29:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** /** @defgroup GPIO
30:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** * @brief GPIO driver modules
31:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** * @{
32:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** */
33:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c ****
34:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** /** @defgroup GPIO_Private_TypesDefinitions
35:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** * @{
36:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** */
37:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c ****
38:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** /**
39:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** * @}
40:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** */
41:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c ****
42:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** /** @defgroup GPIO_Private_Defines
43:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** * @{
44:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** */
45:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c ****
46:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** /* ------------ RCC registers bit address in the alias region ----------------*/
47:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** #define AFIO_OFFSET (AFIO_BASE - PERIPH_BASE)
48:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c ****
49:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** /* --- EVENTCR Register -----*/
50:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c ****
51:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** /* Alias word address of EVOE bit */
52:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** #define EVCR_OFFSET (AFIO_OFFSET + 0x00)
53:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** #define EVOE_BitNumber ((uint8_t)0x07)
54:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** #define EVCR_EVOE_BB (PERIPH_BB_BASE + (EVCR_OFFSET * 32) + (EVOE_BitNumber * 4))
55:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** #define EVCR_PORTPINCONFIG_MASK ((uint16_t)0xFF80)
56:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** #define LSB_MASK ((uint16_t)0xFFFF)
57:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** #define DBGAFR_POSITION_MASK ((uint32_t)0x000F0000)
58:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** #define DBGAFR_SWJCFG_MASK ((uint32_t)0xF0FFFFFF)
59:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** #define DBGAFR_LOCATION_MASK ((uint32_t)0x00200000)
60:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** #define DBGAFR_NUMBITS_MASK ((uint32_t)0x00100000)
61:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c ****
62:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** /**
63:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** * @}
64:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** */
65:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c ****
66:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** /** @defgroup GPIO_Private_Macros
67:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** * @{
68:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** */
69:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c ****
70:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** /**
71:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** * @}
72:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** */
73:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c ****
74:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** /** @defgroup GPIO_Private_Variables
75:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** * @{
76:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** */
77:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c ****
78:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** /**
79:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** * @}
80:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** */
81:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c ****
82:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** /** @defgroup GPIO_Private_FunctionPrototypes
83:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** * @{
84:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** */
85:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c ****
86:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** /**
87:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** * @}
88:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** */
89:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c ****
90:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** /** @defgroup GPIO_Private_Functions
91:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** * @{
92:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** */
93:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c ****
94:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** /**
95:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** * @brief Deinitializes the GPIOx peripheral registers to their default
96:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** * reset values.
97:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** * @param GPIOx: where x can be (A..G) to select the GPIO peripheral.
98:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** * @retval : None
99:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** */
100:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** void GPIO_DeInit(GPIO_TypeDef* GPIOx)
101:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** {
102:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** /* Check the parameters */
103:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** assert_param(IS_GPIO_ALL_PERIPH(GPIOx));
104:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c ****
105:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** switch (*(uint32_t*)&GPIOx)
106:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** {
107:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** case GPIOA_BASE:
108:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** RCC_APB2PeriphResetCmd(RCC_APB2Periph_GPIOA, ENABLE);
109:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** RCC_APB2PeriphResetCmd(RCC_APB2Periph_GPIOA, DISABLE);
110:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** break;
111:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** case GPIOB_BASE:
112:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** RCC_APB2PeriphResetCmd(RCC_APB2Periph_GPIOB, ENABLE);
113:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** RCC_APB2PeriphResetCmd(RCC_APB2Periph_GPIOB, DISABLE);
114:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** break;
115:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** case GPIOC_BASE:
116:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** RCC_APB2PeriphResetCmd(RCC_APB2Periph_GPIOC, ENABLE);
117:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** RCC_APB2PeriphResetCmd(RCC_APB2Periph_GPIOC, DISABLE);
118:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** break;
119:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** case GPIOD_BASE:
120:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** RCC_APB2PeriphResetCmd(RCC_APB2Periph_GPIOD, ENABLE);
121:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** RCC_APB2PeriphResetCmd(RCC_APB2Periph_GPIOD, DISABLE);
122:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** break;
123:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c ****
124:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** case GPIOE_BASE:
125:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** RCC_APB2PeriphResetCmd(RCC_APB2Periph_GPIOE, ENABLE);
126:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** RCC_APB2PeriphResetCmd(RCC_APB2Periph_GPIOE, DISABLE);
127:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** break;
128:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** case GPIOF_BASE:
129:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** RCC_APB2PeriphResetCmd(RCC_APB2Periph_GPIOF, ENABLE);
130:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** RCC_APB2PeriphResetCmd(RCC_APB2Periph_GPIOF, DISABLE);
131:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** break;
132:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** case GPIOG_BASE:
133:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** RCC_APB2PeriphResetCmd(RCC_APB2Periph_GPIOG, ENABLE);
134:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** RCC_APB2PeriphResetCmd(RCC_APB2Periph_GPIOG, DISABLE);
135:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** break;
136:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** default:
137:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** break;
138:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** }
139:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** }
140:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c ****
141:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** /**
142:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** * @brief Deinitializes the Alternate Functions (remap, event control
143:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** * and EXTI configuration) registers to their default reset
144:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** * values.
145:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** * @param None
146:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** * @retval : None
147:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** */
148:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** void GPIO_AFIODeInit(void)
149:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** {
150:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** RCC_APB2PeriphResetCmd(RCC_APB2Periph_AFIO, ENABLE);
151:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** RCC_APB2PeriphResetCmd(RCC_APB2Periph_AFIO, DISABLE);
152:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** }
153:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c ****
154:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** /**
155:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** * @brief Initializes the GPIOx peripheral according to the specified
156:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** * parameters in the GPIO_InitStruct.
157:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** * @param GPIOx: where x can be (A..G) to select the GPIO peripheral.
158:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** * @param GPIO_InitStruct: pointer to a GPIO_InitTypeDef structure that
159:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** * contains the configuration information for the specified GPIO
160:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** * peripheral.
161:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** * @retval : None
162:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** */
163:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** void GPIO_Init(GPIO_TypeDef* GPIOx, GPIO_InitTypeDef* GPIO_InitStruct)
164:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** {
31 .loc 1 164 0
32 @ args = 0, pretend = 0, frame = 0
33 @ frame_needed = 0, uses_anonymous_args = 0
34 .LVL0:
35 0000 70B5 push {r4, r5, r6, lr}
36 .LCFI0:
165:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** uint32_t currentmode = 0x00, currentpin = 0x00, pinpos = 0x00, pos = 0x00;
166:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** uint32_t tmpreg = 0x00, pinmask = 0x00;
167:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** /* Check the parameters */
168:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c **** assert_param(IS_GPIO_ALL_PERIPH(GPIOx));
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -