1+ /*
2+ *******************************************************************************
3+ * Copyright (c) 2019, STMicroelectronics
4+ * All rights reserved.
5+ *
6+ * Redistribution and use in source and binary forms, with or without
7+ * modification, are permitted provided that the following conditions are met:
8+ *
9+ * 1. Redistributions of source code must retain the above copyright notice,
10+ * this list of conditions and the following disclaimer.
11+ * 2. Redistributions in binary form must reproduce the above copyright notice,
12+ * this list of conditions and the following disclaimer in the documentation
13+ * and/or other materials provided with the distribution.
14+ * 3. Neither the name of STMicroelectronics nor the names of its contributors
15+ * may be used to endorse or promote products derived from this software
16+ * without specific prior written permission.
17+ *
18+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
19+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
20+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
21+ * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
22+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
23+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
24+ * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
25+ * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
26+ * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
27+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28+ *******************************************************************************
29+ * Automatically generated from STM32F401R(D-E)Tx.xml
30+ */
31+ #include "Arduino.h"
32+ #include "PeripheralPins.h"
33+
34+ /* =====
35+ * Note: Commented lines are alternative possibilities which are not used per default.
36+ * If you change them, you will have to know what you do
37+ * =====
38+ */
39+
40+ //*** ADC ***
41+
42+ #ifdef HAL_ADC_MODULE_ENABLED
43+ WEAK const PinMap PinMap_ADC [] = {
44+ {PA_0 , ADC1 , STM_PIN_DATA_EXT (STM_MODE_ANALOG , GPIO_NOPULL , 0 , 0 , 0 )}, // ADC1_IN0
45+ {PA_1 , ADC1 , STM_PIN_DATA_EXT (STM_MODE_ANALOG , GPIO_NOPULL , 0 , 1 , 0 )}, // ADC1_IN1
46+ {PA_2 , ADC1 , STM_PIN_DATA_EXT (STM_MODE_ANALOG , GPIO_NOPULL , 0 , 2 , 0 )}, // ADC1_IN2
47+ {PA_3 , ADC1 , STM_PIN_DATA_EXT (STM_MODE_ANALOG , GPIO_NOPULL , 0 , 3 , 0 )}, // ADC1_IN3
48+ {PA_4 , ADC1 , STM_PIN_DATA_EXT (STM_MODE_ANALOG , GPIO_NOPULL , 0 , 4 , 0 )}, // ADC1_IN4
49+ {PA_5 , ADC1 , STM_PIN_DATA_EXT (STM_MODE_ANALOG , GPIO_NOPULL , 0 , 5 , 0 )}, // ADC1_IN5
50+ {PA_6 , ADC1 , STM_PIN_DATA_EXT (STM_MODE_ANALOG , GPIO_NOPULL , 0 , 6 , 0 )}, // ADC1_IN6
51+ {PA_7 , ADC1 , STM_PIN_DATA_EXT (STM_MODE_ANALOG , GPIO_NOPULL , 0 , 7 , 0 )}, // ADC1_IN7
52+ {PB_0 , ADC1 , STM_PIN_DATA_EXT (STM_MODE_ANALOG , GPIO_NOPULL , 0 , 8 , 0 )}, // ADC1_IN8
53+ {PB_1 , ADC1 , STM_PIN_DATA_EXT (STM_MODE_ANALOG , GPIO_NOPULL , 0 , 9 , 0 )}, // ADC1_IN9
54+ {PC_0 , ADC1 , STM_PIN_DATA_EXT (STM_MODE_ANALOG , GPIO_NOPULL , 0 , 10 , 0 )}, // ADC1_IN10
55+ {PC_1 , ADC1 , STM_PIN_DATA_EXT (STM_MODE_ANALOG , GPIO_NOPULL , 0 , 11 , 0 )}, // ADC1_IN11
56+ {PC_2 , ADC1 , STM_PIN_DATA_EXT (STM_MODE_ANALOG , GPIO_NOPULL , 0 , 12 , 0 )}, // ADC1_IN12
57+ {PC_3 , ADC1 , STM_PIN_DATA_EXT (STM_MODE_ANALOG , GPIO_NOPULL , 0 , 13 , 0 )}, // ADC1_IN13
58+ {PC_4 , ADC1 , STM_PIN_DATA_EXT (STM_MODE_ANALOG , GPIO_NOPULL , 0 , 14 , 0 )}, // ADC1_IN14
59+ {PC_5 , ADC1 , STM_PIN_DATA_EXT (STM_MODE_ANALOG , GPIO_NOPULL , 0 , 15 , 0 )}, // ADC1_IN15
60+ {NC , NP , 0 }
61+ };
62+ #endif
63+
64+ //*** No DAC ***
65+
66+ //*** I2C ***
67+
68+ #ifdef HAL_I2C_MODULE_ENABLED
69+ WEAK const PinMap PinMap_I2C_SDA [] = {
70+ {PB_3 , I2C2 , STM_PIN_DATA (STM_MODE_AF_OD , GPIO_NOPULL , GPIO_AF9_I2C2 )},
71+ {PB_4 , I2C3 , STM_PIN_DATA (STM_MODE_AF_OD , GPIO_NOPULL , GPIO_AF9_I2C3 )},
72+ {PB_7 , I2C1 , STM_PIN_DATA (STM_MODE_AF_OD , GPIO_NOPULL , GPIO_AF4_I2C1 )},
73+ {PB_9 , I2C1 , STM_PIN_DATA (STM_MODE_AF_OD , GPIO_NOPULL , GPIO_AF4_I2C1 )},
74+ {PC_9 , I2C3 , STM_PIN_DATA (STM_MODE_AF_OD , GPIO_NOPULL , GPIO_AF4_I2C3 )},
75+ {NC , NP , 0 }
76+ };
77+ #endif
78+
79+ #ifdef HAL_I2C_MODULE_ENABLED
80+ WEAK const PinMap PinMap_I2C_SCL [] = {
81+ {PA_8 , I2C3 , STM_PIN_DATA (STM_MODE_AF_OD , GPIO_NOPULL , GPIO_AF4_I2C3 )},
82+ {PB_6 , I2C1 , STM_PIN_DATA (STM_MODE_AF_OD , GPIO_NOPULL , GPIO_AF4_I2C1 )},
83+ {PB_8 , I2C1 , STM_PIN_DATA (STM_MODE_AF_OD , GPIO_NOPULL , GPIO_AF4_I2C1 )},
84+ {PB_10 , I2C2 , STM_PIN_DATA (STM_MODE_AF_OD , GPIO_NOPULL , GPIO_AF4_I2C2 )},
85+ {NC , NP , 0 }
86+ };
87+ #endif
88+
89+ //*** PWM ***
90+
91+ #ifdef HAL_TIM_MODULE_ENABLED
92+ WEAK const PinMap PinMap_PWM [] = {
93+ // {PA_0, TIM2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM2, 1, 0)}, // A0 // TIM2_CH1
94+ {PA_0 , TIM5 , STM_PIN_DATA_EXT (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF2_TIM5 , 1 , 0 )}, // A0 // TIM5_CH1
95+ // {PA_1, TIM2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM2, 2, 0)}, // A1 // TIM2_CH2
96+ {PA_1 , TIM5 , STM_PIN_DATA_EXT (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF2_TIM5 , 2 , 0 )}, // A1 // TIM5_CH2
97+ // {PA_2, TIM2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM2, 3, 0)}, // D1 // TIM2_CH3 - ST-Link
98+ {PA_2 , TIM5 , STM_PIN_DATA_EXT (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF2_TIM5 , 3 , 0 )}, // D1 // TIM5_CH3 - ST-Link
99+ // {PA_2, TIM9, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM9, 1, 0)}, // D1 // TIM9_CH1 - ST-Link
100+ // {PA_3, TIM2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM2, 4, 0)}, // D0 // TIM2_CH4 - ST-Link
101+ {PA_3 , TIM5 , STM_PIN_DATA_EXT (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF2_TIM5 , 4 , 0 )}, // D0 // TIM5_CH4 - ST-Link
102+ // {PA_3, TIM9, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM9, 2, 0)}, // D0 // TIM9_CH2 - ST-Link
103+ {PA_5 , TIM2 , STM_PIN_DATA_EXT (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF1_TIM2 , 1 , 0 )}, // D13 // TIM2_CH1 - SPI
104+ {PA_6 , TIM3 , STM_PIN_DATA_EXT (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF2_TIM3 , 1 , 0 )}, // D12 // TIM3_CH1 - SPI
105+ // {PA_7, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 1, 1)}, // D11 // TIM1_CH1N - SPI
106+ {PA_7 , TIM3 , STM_PIN_DATA_EXT (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF2_TIM3 , 2 , 0 )}, // D11 // TIM3_CH2
107+ {PA_8 , TIM1 , STM_PIN_DATA_EXT (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF1_TIM1 , 1 , 0 )}, // D7 // TIM1_CH1
108+ {PA_9 , TIM1 , STM_PIN_DATA_EXT (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF1_TIM1 , 2 , 0 )}, // D8 // TIM1_CH2
109+ {PA_10 , TIM1 , STM_PIN_DATA_EXT (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF1_TIM1 , 3 , 0 )}, // D2 // TIM1_CH3
110+ {PA_11 , TIM1 , STM_PIN_DATA_EXT (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF1_TIM1 , 4 , 0 )}, // D37 // TIM1_CH4
111+ {PA_15 , TIM2 , STM_PIN_DATA_EXT (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF1_TIM2 , 1 , 0 )}, // D21 // TIM2_CH1
112+ // {PB_0, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 2, 1)}, // A3 // TIM1_CH2N
113+ {PB_0 , TIM3 , STM_PIN_DATA_EXT (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF2_TIM3 , 3 , 0 )}, // A3 // TIM3_CH3
114+ // {PB_1, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 3, 1)}, // D41 // TIM1_CH3N
115+ {PB_1 , TIM3 , STM_PIN_DATA_EXT (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF2_TIM3 , 4 , 0 )}, // D41 // TIM3_CH4
116+ {PB_3 , TIM2 , STM_PIN_DATA_EXT (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF1_TIM2 , 2 , 0 )}, // D3 // TIM2_CH2
117+ {PB_4 , TIM3 , STM_PIN_DATA_EXT (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF2_TIM3 , 1 , 0 )}, // D5 // TIM3_CH1
118+ {PB_5 , TIM3 , STM_PIN_DATA_EXT (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF2_TIM3 , 2 , 0 )}, // D4 // TIM3_CH2
119+ {PB_6 , TIM4 , STM_PIN_DATA_EXT (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF2_TIM4 , 1 , 0 )}, // D10 // TIM4_CH1
120+ {PB_7 , TIM4 , STM_PIN_DATA_EXT (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF2_TIM4 , 2 , 0 )}, // D22 // TIM4_CH2
121+ {PB_8 , TIM4 , STM_PIN_DATA_EXT (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF2_TIM4 , 3 , 0 )}, // D15 // TIM4_CH3 - SCL
122+ // {PB_8, TIM10, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM10, 1, 0)}, // D15 // TIM10_CH1 - SCL
123+ {PB_9 , TIM4 , STM_PIN_DATA_EXT (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF2_TIM4 , 4 , 0 )}, // D14 // TIM4_CH4 - SDA
124+ // {PB_9, TIM11, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM11, 1, 0)}, // D14 // TIM11_CH1 - SDA
125+ {PB_10 , TIM2 , STM_PIN_DATA_EXT (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF1_TIM2 , 3 , 0 )}, // D6 // TIM2_CH3
126+ {PB_13 , TIM1 , STM_PIN_DATA_EXT (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF1_TIM1 , 1 , 1 )}, // D44 // TIM1_CH1N
127+ {PB_14 , TIM1 , STM_PIN_DATA_EXT (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF1_TIM1 , 2 , 1 )}, // D43 // TIM1_CH2N
128+ {PB_15 , TIM1 , STM_PIN_DATA_EXT (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF1_TIM1 , 3 , 1 )}, // D42 // TIM1_CH3N
129+ {PC_6 , TIM3 , STM_PIN_DATA_EXT (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF2_TIM3 , 1 , 0 )}, // D34 // TIM3_CH1
130+ {PC_7 , TIM3 , STM_PIN_DATA_EXT (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF2_TIM3 , 2 , 0 )}, // D9 // TIM3_CH2
131+ {PC_8 , TIM3 , STM_PIN_DATA_EXT (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF2_TIM3 , 3 , 0 )}, // D33 // TIM3_CH3
132+ {PC_9 , TIM3 , STM_PIN_DATA_EXT (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF2_TIM3 , 4 , 0 )}, // D32 // TIM3_CH4
133+ {NC , NP , 0 }
134+ };
135+ #endif
136+
137+ //*** SERIAL ***
138+
139+ #ifdef HAL_UART_MODULE_ENABLED
140+ WEAK const PinMap PinMap_UART_TX [] = {
141+ {PA_2 , USART2 , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF7_USART2 )},
142+ {PA_9 , USART1 , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF7_USART1 )},
143+ {PA_11 , USART6 , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF8_USART6 )},
144+ {PB_6 , USART1 , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF7_USART1 )},
145+ {PC_6 , USART6 , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF8_USART6 )},
146+ {NC , NP , 0 }
147+ };
148+ #endif
149+
150+ #ifdef HAL_UART_MODULE_ENABLED
151+ WEAK const PinMap PinMap_UART_RX [] = {
152+ {PA_3 , USART2 , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF7_USART2 )},
153+ {PA_10 , USART1 , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF7_USART1 )},
154+ {PA_12 , USART6 , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF8_USART6 )},
155+ {PB_7 , USART1 , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF7_USART1 )},
156+ {PC_7 , USART6 , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF8_USART6 )},
157+ {NC , NP , 0 }
158+ };
159+ #endif
160+
161+ #ifdef HAL_UART_MODULE_ENABLED
162+ WEAK const PinMap PinMap_UART_RTS [] = {
163+ {PA_1 , USART2 , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF7_USART2 )},
164+ {PA_12 , USART1 , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF7_USART1 )},
165+ {NC , NP , 0 }
166+ };
167+ #endif
168+
169+ #ifdef HAL_UART_MODULE_ENABLED
170+ WEAK const PinMap PinMap_UART_CTS [] = {
171+ {PA_0 , USART2 , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF7_USART2 )},
172+ {PA_11 , USART1 , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF7_USART1 )},
173+ {NC , NP , 0 }
174+ };
175+ #endif
176+
177+ //*** SPI ***
178+
179+ #ifdef HAL_SPI_MODULE_ENABLED
180+ WEAK const PinMap PinMap_SPI_MOSI [] = {
181+ {PA_7 , SPI1 , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF5_SPI1 )},
182+ {PB_5 , SPI1 , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF5_SPI1 )},
183+ // {PB_5, SPI3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_SPI3)},
184+ {PB_15 , SPI2 , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF5_SPI2 )},
185+ {PC_3 , SPI2 , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF5_SPI2 )},
186+ {PC_12 , SPI3 , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF6_SPI3 )},
187+ {NC , NP , 0 }
188+ };
189+ #endif
190+
191+ #ifdef HAL_SPI_MODULE_ENABLED
192+ WEAK const PinMap PinMap_SPI_MISO [] = {
193+ {PA_6 , SPI1 , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF5_SPI1 )},
194+ {PB_4 , SPI1 , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF5_SPI1 )},
195+ // {PB_4, SPI3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_SPI3)},
196+ {PB_14 , SPI2 , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF5_SPI2 )},
197+ {PC_2 , SPI2 , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF5_SPI2 )},
198+ {PC_11 , SPI3 , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF6_SPI3 )},
199+ {NC , NP , 0 }
200+ };
201+ #endif
202+
203+ #ifdef HAL_SPI_MODULE_ENABLED
204+ WEAK const PinMap PinMap_SPI_SCLK [] = {
205+ {PA_5 , SPI1 , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF5_SPI1 )},
206+ {PB_3 , SPI1 , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF5_SPI1 )},
207+ // {PB_3, SPI3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_SPI3)},
208+ {PB_10 , SPI2 , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF5_SPI2 )},
209+ {PB_13 , SPI2 , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF5_SPI2 )},
210+ {PC_10 , SPI3 , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF6_SPI3 )},
211+ {NC , NP , 0 }
212+ };
213+ #endif
214+
215+ #ifdef HAL_SPI_MODULE_ENABLED
216+ WEAK const PinMap PinMap_SPI_SSEL [] = {
217+ {PA_4 , SPI1 , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF5_SPI1 )},
218+ // {PA_4, SPI3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_SPI3)},
219+ {PA_15 , SPI1 , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF5_SPI1 )},
220+ // {PA_15, SPI3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_SPI3)},
221+ {PB_9 , SPI2 , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF5_SPI2 )},
222+ {PB_12 , SPI2 , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF5_SPI2 )},
223+ {NC , NP , 0 }
224+ };
225+ #endif
226+
227+ //*** No CAN ***
228+
229+ //*** No ETHERNET ***
230+
231+ //*** No QUADSPI ***
232+
233+ //*** USB ***
234+
235+ #ifdef HAL_PCD_MODULE_ENABLED
236+ WEAK const PinMap PinMap_USB_OTG_FS [] = {
237+ {PA_8 , USB_OTG_FS , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF10_OTG_FS )}, // USB_OTG_FS_SOF
238+ {PA_9 , USB_OTG_FS , STM_PIN_DATA (STM_MODE_INPUT , GPIO_NOPULL , GPIO_AF_NONE )}, // USB_OTG_FS_VBUS
239+ {PA_10 , USB_OTG_FS , STM_PIN_DATA (STM_MODE_AF_OD , GPIO_PULLUP , GPIO_AF10_OTG_FS )}, // USB_OTG_FS_ID
240+ {PA_11 , USB_OTG_FS , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF10_OTG_FS )}, // USB_OTG_FS_DM
241+ {PA_12 , USB_OTG_FS , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF10_OTG_FS )}, // USB_OTG_FS_DP
242+ {NC , NP , 0 }
243+ };
244+ #endif
245+
246+ //*** No USB_OTG_HS ***
0 commit comments