Skip to content

Commit fe3466d

Browse files
committed
Add support of BLACK PILL F411CE
Signed-off-by: Frederic Pillon <[email protected]>
1 parent a4118d1 commit fe3466d

File tree

3 files changed

+31
-14
lines changed

3 files changed

+31
-14
lines changed

boards.txt

+8
Original file line numberDiff line numberDiff line change
@@ -1052,6 +1052,14 @@ GenF4.menu.pnum.BLACKPILL_F401CC.build.board=BLACKPILL_F401CC
10521052
GenF4.menu.pnum.BLACKPILL_F401CC.build.product_line=STM32F401xC
10531053
GenF4.menu.pnum.BLACKPILL_F401CC.build.variant=Generic_F401Cx
10541054

1055+
# BlackPill F411CE
1056+
GenF4.menu.pnum.BLACKPILL_F411CE=BlackPill F411CE
1057+
GenF4.menu.pnum.BLACKPILL_F411CE.upload.maximum_size=524288
1058+
GenF4.menu.pnum.BLACKPILL_F411CE.upload.maximum_data_size=131072
1059+
GenF4.menu.pnum.BLACKPILL_F411CE.build.board=BLACKPILL_F411CE
1060+
GenF4.menu.pnum.BLACKPILL_F411CE.build.product_line=STM32F411xE
1061+
GenF4.menu.pnum.BLACKPILL_F411CE.build.variant=Generic_F411Cx
1062+
10551063
# Core board F401RCT6
10561064
GenF4.menu.pnum.CoreBoard_F401RC=Core board F401RCT6
10571065
GenF4.menu.pnum.CoreBoard_F401RC.upload.maximum_size=262144

variants/Generic_F411Cx/PeripheralPins.c

+9-7
Original file line numberDiff line numberDiff line change
@@ -155,8 +155,8 @@ WEAK const PinMap PinMap_SPI_MOSI[] = {
155155
{PA_1, SPI4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI4)},
156156
{PA_7, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI1)},
157157
{PA_10, SPI5, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_SPI5)},
158-
{PB_5, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI1)},
159-
// {PB_5, SPI3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_SPI3)},
158+
// {PB_5, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI1)},
159+
{PB_5, SPI3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_SPI3)},
160160
{PB_8, SPI5, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_SPI5)},
161161
{PB_15, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI2)},
162162
{NC, NP, 0}
@@ -168,8 +168,8 @@ WEAK const PinMap PinMap_SPI_MISO[] = {
168168
{PA_6, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI1)},
169169
{PA_11, SPI4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_SPI4)},
170170
{PA_12, SPI5, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_SPI5)},
171-
{PB_4, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI1)},
172-
// {PB_4, SPI3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_SPI3)},
171+
// {PB_4, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI1)},
172+
{PB_4, SPI3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_SPI3)},
173173
{PB_14, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI2)},
174174
{NC, NP, 0}
175175
};
@@ -179,8 +179,8 @@ WEAK const PinMap PinMap_SPI_MISO[] = {
179179
WEAK const PinMap PinMap_SPI_SCLK[] = {
180180
{PA_5, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI1)},
181181
{PB_0, SPI5, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_SPI5)},
182-
{PB_3, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI1)},
183-
// {PB_3, SPI3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_SPI3)},
182+
// {PB_3, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI1)},
183+
{PB_3, SPI3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_SPI3)},
184184
{PB_10, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI2)},
185185
{PB_12, SPI3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_SPI3)},
186186
// {PB_13, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI2)},
@@ -198,7 +198,7 @@ WEAK const PinMap PinMap_SPI_SSEL[] = {
198198
{PB_1, SPI5, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_SPI5)},
199199
{PB_9, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI2)},
200200
// {PB_12, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI2)},
201-
// {PB_12, SPI4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_SPI4)},
201+
{PB_12, SPI4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_SPI4)},
202202
{NC, NP, 0}
203203
};
204204
#endif
@@ -213,9 +213,11 @@ WEAK const PinMap PinMap_SPI_SSEL[] = {
213213

214214
#ifdef HAL_PCD_MODULE_ENABLED
215215
WEAK const PinMap PinMap_USB_OTG_FS[] = {
216+
#ifndef ARDUINO_BLACKPILL_F411CE
216217
{PA_8, USB_OTG_FS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OTG_FS)}, // USB_OTG_FS_SOF
217218
{PA_9, USB_OTG_FS, STM_PIN_DATA(STM_MODE_INPUT, GPIO_NOPULL, GPIO_AF10_OTG_FS)}, // USB_OTG_FS_VBUS
218219
{PA_10, USB_OTG_FS, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_PULLUP, GPIO_AF10_OTG_FS)}, // USB_OTG_FS_ID
220+
#endif
219221
{PA_11, USB_OTG_FS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OTG_FS)}, // USB_OTG_FS_DM
220222
{PA_12, USB_OTG_FS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OTG_FS)}, // USB_OTG_FS_DP
221223
{NC, NP, 0}

variants/Generic_F411Cx/variant.h

+14-7
Original file line numberDiff line numberDiff line change
@@ -72,13 +72,16 @@ extern "C" {
7272
#define NUM_ANALOG_INPUTS 10
7373

7474
// On-board LED pin number
75+
#ifdef ARDUINO_BLACKPILL_F411CE
76+
#define LED_BUILTIN PC13
77+
#endif
7578
#ifndef LED_BUILTIN
7679
#define LED_BUILTIN PA5
7780
#endif
7881
#define LED_GREEN LED_BUILTIN
7982

8083
// On-board user button
81-
#ifndef USER_BTN
84+
#if !defined(USER_BTN) && !defined(ARDUINO_BLACKPILL_F411CE)
8285
#define USER_BTN PC13
8386
#endif
8487

@@ -93,20 +96,24 @@ extern "C" {
9396
#define PIN_SPI_SCK PA5
9497

9598
// I2C definitions
96-
#define PIN_WIRE_SDA PB9
97-
#define PIN_WIRE_SCL PB8
99+
#define PIN_WIRE_SDA PB7
100+
#define PIN_WIRE_SCL PB6
98101

99102
// Timer Definitions
100103
#define TIMER_TONE TIM10
101104
#define TIMER_SERVO TIM11
102105

103106
// UART Definitions
104-
#define SERIAL_UART_INSTANCE 2 //Connected to ST-Link
107+
#define SERIAL_UART_INSTANCE 1
105108

106-
// Default pin used for 'Serial' instance (ex: ST-Link)
109+
// Default pin used for 'Serial' instance
107110
// Mandatory for Firmata
108-
#define PIN_SERIAL_RX PA3
109-
#define PIN_SERIAL_TX PA2
111+
#define PIN_SERIAL_RX PA10
112+
#define PIN_SERIAL_TX PA9
113+
114+
#ifdef ARDUINO_BLACKPILL_F411CE
115+
#define HSE_VALUE 25000000U
116+
#endif
110117

111118
#ifdef __cplusplus
112119
} // extern "C"

0 commit comments

Comments
 (0)