1+ /*
2+ *******************************************************************************
3+ * Copyright (c) 2019, STMicroelectronics
4+ * All rights reserved.
5+ *
6+ * This software component is licensed by ST under BSD 3-Clause license,
7+ * the "License"; You may not use this file except in compliance with the
8+ * License. You may obtain a copy of the License at:
9+ * opensource.org/licenses/BSD-3-Clause
10+ *
11+ *******************************************************************************
12+ * Automatically generated from STM32F411R(C-E)Tx.xml
13+ */
14+ #include "Arduino.h"
15+ #include "PeripheralPins.h"
16+
17+ /* =====
18+ * Note: Commented lines are alternative possibilities which are not used per default.
19+ * If you change them, you will have to know what you do
20+ * =====
21+ */
22+
23+ //*** ADC ***
24+
25+ #ifdef HAL_ADC_MODULE_ENABLED
26+ WEAK const PinMap PinMap_ADC [] = {
27+ {PA_0 , ADC1 , STM_PIN_DATA_EXT (STM_MODE_ANALOG , GPIO_NOPULL , 0 , 0 , 0 )}, // ADC1_IN0
28+ {PA_1 , ADC1 , STM_PIN_DATA_EXT (STM_MODE_ANALOG , GPIO_NOPULL , 0 , 1 , 0 )}, // ADC1_IN1
29+ {PA_2 , ADC1 , STM_PIN_DATA_EXT (STM_MODE_ANALOG , GPIO_NOPULL , 0 , 2 , 0 )}, // ADC1_IN2
30+ {PA_3 , ADC1 , STM_PIN_DATA_EXT (STM_MODE_ANALOG , GPIO_NOPULL , 0 , 3 , 0 )}, // ADC1_IN3
31+ {PA_4 , ADC1 , STM_PIN_DATA_EXT (STM_MODE_ANALOG , GPIO_NOPULL , 0 , 4 , 0 )}, // ADC1_IN4
32+ {PA_5 , ADC1 , STM_PIN_DATA_EXT (STM_MODE_ANALOG , GPIO_NOPULL , 0 , 5 , 0 )}, // ADC1_IN5
33+ {PA_6 , ADC1 , STM_PIN_DATA_EXT (STM_MODE_ANALOG , GPIO_NOPULL , 0 , 6 , 0 )}, // ADC1_IN6
34+ {PA_7 , ADC1 , STM_PIN_DATA_EXT (STM_MODE_ANALOG , GPIO_NOPULL , 0 , 7 , 0 )}, // ADC1_IN7
35+ {PB_0 , ADC1 , STM_PIN_DATA_EXT (STM_MODE_ANALOG , GPIO_NOPULL , 0 , 8 , 0 )}, // ADC1_IN8
36+ {PB_1 , ADC1 , STM_PIN_DATA_EXT (STM_MODE_ANALOG , GPIO_NOPULL , 0 , 9 , 0 )}, // ADC1_IN9
37+ {PC_0 , ADC1 , STM_PIN_DATA_EXT (STM_MODE_ANALOG , GPIO_NOPULL , 0 , 10 , 0 )}, // ADC1_IN10
38+ {PC_1 , ADC1 , STM_PIN_DATA_EXT (STM_MODE_ANALOG , GPIO_NOPULL , 0 , 11 , 0 )}, // ADC1_IN11
39+ {PC_2 , ADC1 , STM_PIN_DATA_EXT (STM_MODE_ANALOG , GPIO_NOPULL , 0 , 12 , 0 )}, // ADC1_IN12
40+ {PC_3 , ADC1 , STM_PIN_DATA_EXT (STM_MODE_ANALOG , GPIO_NOPULL , 0 , 13 , 0 )}, // ADC1_IN13
41+ {PC_4 , ADC1 , STM_PIN_DATA_EXT (STM_MODE_ANALOG , GPIO_NOPULL , 0 , 14 , 0 )}, // ADC1_IN14
42+ {PC_5 , ADC1 , STM_PIN_DATA_EXT (STM_MODE_ANALOG , GPIO_NOPULL , 0 , 15 , 0 )}, // ADC1_IN15
43+ {NC , NP , 0 }
44+ };
45+ #endif
46+
47+ //*** No DAC ***
48+
49+ //*** I2C ***
50+
51+ #ifdef HAL_I2C_MODULE_ENABLED
52+ WEAK const PinMap PinMap_I2C_SDA [] = {
53+ {PB_3 , I2C2 , STM_PIN_DATA (STM_MODE_AF_OD , GPIO_NOPULL , GPIO_AF9_I2C2 )},
54+ {PB_4 , I2C3 , STM_PIN_DATA (STM_MODE_AF_OD , GPIO_NOPULL , GPIO_AF9_I2C3 )},
55+ {PB_7 , I2C1 , STM_PIN_DATA (STM_MODE_AF_OD , GPIO_NOPULL , GPIO_AF4_I2C1 )},
56+ // {PB_8, I2C3, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF9_I2C3)},
57+ {PB_9 , I2C1 , STM_PIN_DATA (STM_MODE_AF_OD , GPIO_NOPULL , GPIO_AF4_I2C1 )},
58+ // {PB_9, I2C2, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF9_I2C2)},
59+ {PC_9 , I2C3 , STM_PIN_DATA (STM_MODE_AF_OD , GPIO_NOPULL , GPIO_AF4_I2C3 )},
60+ {NC , NP , 0 }
61+ };
62+ #endif
63+
64+ #ifdef HAL_I2C_MODULE_ENABLED
65+ WEAK const PinMap PinMap_I2C_SCL [] = {
66+ {PA_8 , I2C3 , STM_PIN_DATA (STM_MODE_AF_OD , GPIO_NOPULL , GPIO_AF4_I2C3 )},
67+ {PB_6 , I2C1 , STM_PIN_DATA (STM_MODE_AF_OD , GPIO_NOPULL , GPIO_AF4_I2C1 )},
68+ {PB_8 , I2C1 , STM_PIN_DATA (STM_MODE_AF_OD , GPIO_NOPULL , GPIO_AF4_I2C1 )},
69+ {PB_10 , I2C2 , STM_PIN_DATA (STM_MODE_AF_OD , GPIO_NOPULL , GPIO_AF4_I2C2 )},
70+ {NC , NP , 0 }
71+ };
72+ #endif
73+
74+ //*** PWM ***
75+
76+ #ifdef HAL_TIM_MODULE_ENABLED
77+ WEAK const PinMap PinMap_PWM [] = {
78+ // {PA_0, TIM2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM2, 1, 0)}, // TIM2_CH1
79+ {PA_0 , TIM5 , STM_PIN_DATA_EXT (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF2_TIM5 , 1 , 0 )}, // TIM5_CH1
80+ // {PA_1, TIM2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM2, 2, 0)}, // TIM2_CH2
81+ {PA_1 , TIM5 , STM_PIN_DATA_EXT (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF2_TIM5 , 2 , 0 )}, // TIM5_CH2
82+ // {PA_2, TIM2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM2, 3, 0)}, // TIM2_CH3
83+ {PA_2 , TIM5 , STM_PIN_DATA_EXT (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF2_TIM5 , 3 , 0 )}, // TIM5_CH3
84+ // {PA_2, TIM9, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM9, 1, 0)}, // TIM9_CH1
85+ // {PA_3, TIM2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM2, 4, 0)}, // TIM2_CH4
86+ {PA_3 , TIM5 , STM_PIN_DATA_EXT (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF2_TIM5 , 4 , 0 )}, // TIM5_CH4
87+ // {PA_3, TIM9, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM9, 2, 0)}, // TIM9_CH2
88+ {PA_5 , TIM2 , STM_PIN_DATA_EXT (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF1_TIM2 , 1 , 0 )}, // TIM2_CH1
89+ {PA_6 , TIM3 , STM_PIN_DATA_EXT (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF2_TIM3 , 1 , 0 )}, // TIM3_CH1
90+ // {PA_7, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 1, 1)}, // TIM1_CH1N
91+ {PA_7 , TIM3 , STM_PIN_DATA_EXT (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF2_TIM3 , 2 , 0 )}, // TIM3_CH2
92+ {PA_8 , TIM1 , STM_PIN_DATA_EXT (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF1_TIM1 , 1 , 0 )}, // TIM1_CH1
93+ {PA_9 , TIM1 , STM_PIN_DATA_EXT (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF1_TIM1 , 2 , 0 )}, // TIM1_CH2
94+ {PA_10 , TIM1 , STM_PIN_DATA_EXT (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF1_TIM1 , 3 , 0 )}, // TIM1_CH3
95+ {PA_11 , TIM1 , STM_PIN_DATA_EXT (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF1_TIM1 , 4 , 0 )}, // TIM1_CH4
96+ {PA_15 , TIM2 , STM_PIN_DATA_EXT (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF1_TIM2 , 1 , 0 )}, // TIM2_CH1
97+ // {PB_0, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 2, 1)}, // TIM1_CH2N
98+ {PB_0 , TIM3 , STM_PIN_DATA_EXT (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF2_TIM3 , 3 , 0 )}, // TIM3_CH3
99+ // {PB_1, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 3, 1)}, // TIM1_CH3N
100+ {PB_1 , TIM3 , STM_PIN_DATA_EXT (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF2_TIM3 , 4 , 0 )}, // TIM3_CH4
101+ {PB_3 , TIM2 , STM_PIN_DATA_EXT (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF1_TIM2 , 2 , 0 )}, // TIM2_CH2
102+ {PB_4 , TIM3 , STM_PIN_DATA_EXT (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF2_TIM3 , 1 , 0 )}, // TIM3_CH1
103+ {PB_5 , TIM3 , STM_PIN_DATA_EXT (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF2_TIM3 , 2 , 0 )}, // TIM3_CH2
104+ {PB_6 , TIM4 , STM_PIN_DATA_EXT (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF2_TIM4 , 1 , 0 )}, // TIM4_CH1
105+ {PB_7 , TIM4 , STM_PIN_DATA_EXT (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF2_TIM4 , 2 , 0 )}, // TIM4_CH2
106+ {PB_8 , TIM4 , STM_PIN_DATA_EXT (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF2_TIM4 , 3 , 0 )}, // TIM4_CH3
107+ // {PB_8, TIM10, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM10, 1, 0)}, // TIM10_CH1
108+ {PB_9 , TIM4 , STM_PIN_DATA_EXT (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF2_TIM4 , 4 , 0 )}, // TIM4_CH4
109+ // {PB_9, TIM11, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM11, 1, 0)}, // TIM11_CH1
110+ {PB_10 , TIM2 , STM_PIN_DATA_EXT (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF1_TIM2 , 3 , 0 )}, // TIM2_CH3
111+ {PB_13 , TIM1 , STM_PIN_DATA_EXT (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF1_TIM1 , 1 , 1 )}, // TIM1_CH1N
112+ {PB_14 , TIM1 , STM_PIN_DATA_EXT (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF1_TIM1 , 2 , 1 )}, // TIM1_CH2N
113+ {PB_15 , TIM1 , STM_PIN_DATA_EXT (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF1_TIM1 , 3 , 1 )}, // TIM1_CH3N
114+ {PC_6 , TIM3 , STM_PIN_DATA_EXT (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF2_TIM3 , 1 , 0 )}, // TIM3_CH1
115+ {PC_7 , TIM3 , STM_PIN_DATA_EXT (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF2_TIM3 , 2 , 0 )}, // TIM3_CH2
116+ {PC_8 , TIM3 , STM_PIN_DATA_EXT (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF2_TIM3 , 3 , 0 )}, // TIM3_CH3
117+ {PC_9 , TIM3 , STM_PIN_DATA_EXT (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF2_TIM3 , 4 , 0 )}, // TIM3_CH4
118+ {NC , NP , 0 }
119+ };
120+ #endif
121+
122+ //*** SERIAL ***
123+
124+ #ifdef HAL_UART_MODULE_ENABLED
125+ WEAK const PinMap PinMap_UART_TX [] = {
126+ {PA_2 , USART2 , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF7_USART2 )},
127+ {PA_9 , USART1 , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF7_USART1 )},
128+ {PA_11 , USART6 , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF8_USART6 )},
129+ {PA_15 , USART1 , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF7_USART1 )},
130+ {PB_6 , USART1 , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF7_USART1 )},
131+ {PC_6 , USART6 , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF8_USART6 )},
132+ {NC , NP , 0 }
133+ };
134+ #endif
135+
136+ #ifdef HAL_UART_MODULE_ENABLED
137+ WEAK const PinMap PinMap_UART_RX [] = {
138+ {PA_3 , USART2 , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF7_USART2 )},
139+ {PA_10 , USART1 , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF7_USART1 )},
140+ {PA_12 , USART6 , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF8_USART6 )},
141+ {PB_3 , USART1 , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF7_USART1 )},
142+ {PB_7 , USART1 , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF7_USART1 )},
143+ {PC_7 , USART6 , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF8_USART6 )},
144+ {NC , NP , 0 }
145+ };
146+ #endif
147+
148+ #ifdef HAL_UART_MODULE_ENABLED
149+ WEAK const PinMap PinMap_UART_RTS [] = {
150+ {PA_1 , USART2 , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF7_USART2 )},
151+ {PA_12 , USART1 , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF7_USART1 )},
152+ {NC , NP , 0 }
153+ };
154+ #endif
155+
156+ #ifdef HAL_UART_MODULE_ENABLED
157+ WEAK const PinMap PinMap_UART_CTS [] = {
158+ {PA_0 , USART2 , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF7_USART2 )},
159+ {PA_11 , USART1 , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF7_USART1 )},
160+ {NC , NP , 0 }
161+ };
162+ #endif
163+
164+ //*** SPI ***
165+
166+ #ifdef HAL_SPI_MODULE_ENABLED
167+ WEAK const PinMap PinMap_SPI_MOSI [] = {
168+ {PA_1 , SPI4 , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF5_SPI4 )},
169+ {PA_7 , SPI1 , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF5_SPI1 )},
170+ {PA_10 , SPI5 , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF6_SPI5 )},
171+ {PB_5 , SPI1 , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF5_SPI1 )},
172+ // {PB_5, SPI3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_SPI3)},
173+ {PB_8 , SPI5 , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF6_SPI5 )},
174+ {PB_15 , SPI2 , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF5_SPI2 )},
175+ {PC_3 , SPI2 , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF5_SPI2 )},
176+ {PC_12 , SPI3 , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF6_SPI3 )},
177+ {NC , NP , 0 }
178+ };
179+ #endif
180+
181+ #ifdef HAL_SPI_MODULE_ENABLED
182+ WEAK const PinMap PinMap_SPI_MISO [] = {
183+ {PA_6 , SPI1 , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF5_SPI1 )},
184+ {PA_11 , SPI4 , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF6_SPI4 )},
185+ {PA_12 , SPI5 , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF6_SPI5 )},
186+ {PB_4 , SPI1 , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF5_SPI1 )},
187+ // {PB_4, SPI3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_SPI3)},
188+ {PB_14 , SPI2 , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF5_SPI2 )},
189+ {PC_2 , SPI2 , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF5_SPI2 )},
190+ {PC_11 , SPI3 , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF6_SPI3 )},
191+ {NC , NP , 0 }
192+ };
193+ #endif
194+
195+ #ifdef HAL_SPI_MODULE_ENABLED
196+ WEAK const PinMap PinMap_SPI_SCLK [] = {
197+ {PA_5 , SPI1 , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF5_SPI1 )},
198+ {PB_0 , SPI5 , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF6_SPI5 )},
199+ {PB_3 , SPI1 , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF5_SPI1 )},
200+ // {PB_3, SPI3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_SPI3)},
201+ {PB_10 , SPI2 , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF5_SPI2 )},
202+ {PB_12 , SPI3 , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF7_SPI3 )},
203+ // {PB_13, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI2)},
204+ {PB_13 , SPI4 , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF6_SPI4 )},
205+ {PC_7 , SPI2 , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF5_SPI2 )},
206+ {PC_10 , SPI3 , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF6_SPI3 )},
207+ {NC , NP , 0 }
208+ };
209+ #endif
210+
211+ #ifdef HAL_SPI_MODULE_ENABLED
212+ WEAK const PinMap PinMap_SPI_SSEL [] = {
213+ {PA_4 , SPI1 , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF5_SPI1 )},
214+ // {PA_4, SPI3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_SPI3)},
215+ // {PA_15, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI1)},
216+ {PA_15 , SPI3 , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF6_SPI3 )},
217+ {PB_1 , SPI5 , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF6_SPI5 )},
218+ {PB_9 , SPI2 , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF5_SPI2 )},
219+ // {PB_12, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI2)},
220+ // {PB_12, SPI4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_SPI4)},
221+ {NC , NP , 0 }
222+ };
223+ #endif
224+
225+ //*** No CAN ***
226+
227+ //*** No ETHERNET ***
228+
229+ //*** No QUADSPI ***
230+
231+ //*** USB ***
232+
233+ #ifdef HAL_PCD_MODULE_ENABLED
234+ WEAK const PinMap PinMap_USB_OTG_FS [] = {
235+ {PA_8 , USB_OTG_FS , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF10_OTG_FS )}, // USB_OTG_FS_SOF
236+ {PA_9 , USB_OTG_FS , STM_PIN_DATA (STM_MODE_INPUT , GPIO_NOPULL , GPIO_AF10_OTG_FS )}, // USB_OTG_FS_VBUS
237+ {PA_10 , USB_OTG_FS , STM_PIN_DATA (STM_MODE_AF_OD , GPIO_PULLUP , GPIO_AF10_OTG_FS )}, // USB_OTG_FS_ID
238+ {PA_11 , USB_OTG_FS , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF10_OTG_FS )}, // USB_OTG_FS_DM
239+ {PA_12 , USB_OTG_FS , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF10_OTG_FS )}, // USB_OTG_FS_DP
240+ {NC , NP , 0 }
241+ };
242+ #endif
243+
244+ //*** No USB_OTG_HS ***
245+
246+ //*** SD ***
247+
248+ #ifdef HAL_SD_MODULE_ENABLED
249+ WEAK const PinMap PinMap_SD [] = {
250+ {PA_6 , SDIO , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_NOPULL , GPIO_AF12_SDIO )}, // SDIO_CMD
251+ {PA_8 , SDIO , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF12_SDIO )}, // SDIO_D1
252+ {PA_9 , SDIO , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF12_SDIO )}, // SDIO_D2
253+ {PB_4 , SDIO , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF12_SDIO )}, // SDIO_D0
254+ {PB_5 , SDIO , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF12_SDIO )}, // SDIO_D3
255+ {PB_7 , SDIO , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF12_SDIO )}, // SDIO_D0
256+ {PB_8 , SDIO , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF12_SDIO )}, // SDIO_D4
257+ {PB_9 , SDIO , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF12_SDIO )}, // SDIO_D5
258+ {PB_10 , SDIO , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF12_SDIO )}, // SDIO_D7
259+ {PB_14 , SDIO , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF12_SDIO )}, // SDIO_D6
260+ {PB_15 , SDIO , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_NOPULL , GPIO_AF12_SDIO )}, // SDIO_CK
261+ {PC_6 , SDIO , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF12_SDIO )}, // SDIO_D6
262+ {PC_7 , SDIO , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF12_SDIO )}, // SDIO_D7
263+ {PC_8 , SDIO , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF12_SDIO )}, // SDIO_D0
264+ {PC_9 , SDIO , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF12_SDIO )}, // SDIO_D1
265+ {PC_10 , SDIO , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF12_SDIO )}, // SDIO_D2
266+ {PC_11 , SDIO , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_PULLUP , GPIO_AF12_SDIO )}, // SDIO_D3
267+ {PC_12 , SDIO , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_NOPULL , GPIO_AF12_SDIO )}, // SDIO_CK
268+ {PD_2 , SDIO , STM_PIN_DATA (STM_MODE_AF_PP , GPIO_NOPULL , GPIO_AF12_SDIO )}, // SDIO_CMD
269+ {NC , NP , 0 }
270+ };
271+ #endif
0 commit comments