📄 stm32f10x_spi.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_spi.c"
21 .Ltext0:
22 .section .text.SPI_Init,"ax",%progbits
23 .align 2
24 .global SPI_Init
25 .thumb
26 .thumb_func
28 SPI_Init:
29 .LFB27:
30 .file 1 "lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c"
1:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** /**
2:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** ******************************************************************************
3:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** * @file stm32f10x_spi.c
4:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** * @author MCD Application Team
5:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** * @version V3.0.0
6:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** * @date 04/06/2009
7:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** * @brief This file provides all the SPI firmware functions.
8:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** ******************************************************************************
9:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** * @copy
10:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** *
11:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** * THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS
12:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** * WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE
13:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** * TIME. AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY
14:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** * DIRECT, INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING
15:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** * FROM THE CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE
16:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** * CODING INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS.
17:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** *
18:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** * <h2><center>© COPYRIGHT 2009 STMicroelectronics</center></h2>
19:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** */
20:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c ****
21:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** /* Includes ------------------------------------------------------------------*/
22:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** #include "stm32f10x_spi.h"
23:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** #include "stm32f10x_rcc.h"
24:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c ****
25:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** /** @addtogroup StdPeriph_Driver
26:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** * @{
27:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** */
28:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c ****
29:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** /** @defgroup SPI
30:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** * @brief SPI driver modules
31:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** * @{
32:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** */
33:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c ****
34:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** /** @defgroup SPI_Private_TypesDefinitions
35:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** * @{
36:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** */
37:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c ****
38:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** /**
39:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** * @}
40:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** */
41:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c ****
42:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c ****
43:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** /** @defgroup SPI_Private_Defines
44:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** * @{
45:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** */
46:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c ****
47:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** /* SPI SPE mask */
48:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** #define CR1_SPE_Set ((uint16_t)0x0040)
49:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** #define CR1_SPE_Reset ((uint16_t)0xFFBF)
50:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c ****
51:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** /* I2S I2SE mask */
52:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** #define I2SCFGR_I2SE_Set ((uint16_t)0x0400)
53:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** #define I2SCFGR_I2SE_Reset ((uint16_t)0xFBFF)
54:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c ****
55:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** /* SPI CRCNext mask */
56:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** #define CR1_CRCNext_Set ((uint16_t)0x1000)
57:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c ****
58:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** /* SPI CRCEN mask */
59:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** #define CR1_CRCEN_Set ((uint16_t)0x2000)
60:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** #define CR1_CRCEN_Reset ((uint16_t)0xDFFF)
61:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c ****
62:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** /* SPI SSOE mask */
63:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** #define CR2_SSOE_Set ((uint16_t)0x0004)
64:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** #define CR2_SSOE_Reset ((uint16_t)0xFFFB)
65:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c ****
66:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** /* SPI registers Masks */
67:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** #define CR1_CLEAR_Mask ((uint16_t)0x3040)
68:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** #define I2SCFGR_CLEAR_Mask ((uint16_t)0xF040)
69:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c ****
70:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** /* SPI or I2S mode selection masks */
71:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** #define SPI_Mode_Select ((uint16_t)0xF7FF)
72:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** #define I2S_Mode_Select ((uint16_t)0x0800)
73:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c ****
74:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** /**
75:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** * @}
76:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** */
77:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c ****
78:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** /** @defgroup SPI_Private_Macros
79:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** * @{
80:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** */
81:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c ****
82:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** /**
83:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** * @}
84:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** */
85:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c ****
86:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** /** @defgroup SPI_Private_Variables
87:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** * @{
88:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** */
89:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c ****
90:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** /**
91:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** * @}
92:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** */
93:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c ****
94:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** /** @defgroup SPI_Private_FunctionPrototypes
95:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** * @{
96:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** */
97:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c ****
98:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** /**
99:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** * @}
100:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** */
101:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c ****
102:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** /** @defgroup SPI_Private_Functions
103:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** * @{
104:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** */
105:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c ****
106:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** /**
107:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** * @brief Deinitializes the SPIx peripheral registers to their default
108:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** * reset values (Affects also the I2Ss).
109:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** * @param SPIx: where x can be 1, 2 or 3 to select the SPI peripheral.
110:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** * @retval : None
111:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** */
112:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** void SPI_I2S_DeInit(SPI_TypeDef* SPIx)
113:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** {
114:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** /* Check the parameters */
115:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** assert_param(IS_SPI_ALL_PERIPH(SPIx));
116:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c ****
117:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** switch (*(uint32_t*)&SPIx)
118:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** {
119:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** case SPI1_BASE:
120:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** /* Enable SPI1 reset state */
121:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** RCC_APB2PeriphResetCmd(RCC_APB2Periph_SPI1, ENABLE);
122:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** /* Release SPI1 from reset state */
123:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** RCC_APB2PeriphResetCmd(RCC_APB2Periph_SPI1, DISABLE);
124:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** break;
125:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** case SPI2_BASE:
126:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** /* Enable SPI2 reset state */
127:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** RCC_APB1PeriphResetCmd(RCC_APB1Periph_SPI2, ENABLE);
128:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** /* Release SPI2 from reset state */
129:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** RCC_APB1PeriphResetCmd(RCC_APB1Periph_SPI2, DISABLE);
130:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** break;
131:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** case SPI3_BASE:
132:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** /* Enable SPI3 reset state */
133:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** RCC_APB1PeriphResetCmd(RCC_APB1Periph_SPI3, ENABLE);
134:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** /* Release SPI3 from reset state */
135:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** RCC_APB1PeriphResetCmd(RCC_APB1Periph_SPI3, DISABLE);
136:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** break;
137:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** default:
138:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** break;
139:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** }
140:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** }
141:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c ****
142:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** /**
143:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** * @brief Initializes the SPIx peripheral according to the specified
144:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** * parameters in the SPI_InitStruct.
145:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** * @param SPIx: where x can be 1, 2 or 3 to select the SPI peripheral.
146:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** * @param SPI_InitStruct: pointer to a SPI_InitTypeDef structure that
147:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** * contains the configuration information for the specified
148:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** * SPI peripheral.
149:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** * @retval : None
150:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** */
151:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** void SPI_Init(SPI_TypeDef* SPIx, SPI_InitTypeDef* SPI_InitStruct)
152:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** {
31 .loc 1 152 0
32 @ args = 0, pretend = 0, frame = 0
33 @ frame_needed = 0, uses_anonymous_args = 0
34 .LVL0:
153:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** uint16_t tmpreg = 0;
154:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c ****
155:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** /* check the parameters */
156:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c **** assert_param(IS_SPI_ALL_PERIPH(SPIx));
157:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_spi.c ****
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -