Piedinatura WeAct Black Pill STM32F411CE
Una scheda STM32F411 piccola ed economica con USB-C. Veloce (100 MHz), comoda sulla breadboard, logica a 3,3 V, e la maggior parte dei pin tollera i 5 V.
In breve
- Chip
- STM32F411CE (STM32F411CEU6)
- Processore
- Arm Cortex-M4 with FPU at 100 MHz, 128 KB SRAM, 512 KB flash
- Livello logico
- 3,3 V. Non tollera i 5 V, salvo i pin indicati sotto.
- Strumento di programmazione
- STM32CubeProgrammer, stlink or dfu-util
- Scheda Arduino (FQBN)
- STMicroelectronics:stm32:GenF4:pnum=BLACKPILL_F411CE,usb=CDCgen,upload_method=dfuMethod
- Vista dei pin dal vivo in BoardPilot
- Sì (agente diagnostico disponibile)
Pin da evitare o da usare con attenzione
Pin di strapping: B2
Il loro livello al reset cambia il modo di avvio. Di solito vanno bene dopo l’avvio.
USB nativa: A11, A12
Le linee dati USB. Usarle blocca il caricamento via USB e il monitor seriale.
Porta di debug: SCK, DIO
SWD/JTAG. Usarli può impedire al debugger di raggiungere il chip.
Usati sulla scheda: A0, C15, C14
Già collegati a qualcosa sulla scheda (vedi le note nella tabella).
Pin adatti a LED, pulsanti e segnali
B12, B13, B14, B15, A8, B10, B0, B1, B8, B9, A15
Pin predefiniti in Arduino
- I2C
- SDA = B7, SCL = B6. Con le impostazioni predefinite della libreria Wire funzionano solo questi pin. Wire usa PB7 per SDA e PB6 per SCL. Solo alcune coppie di pin dell’STM32 possono fare I2C (per esempio PB9/PB8 con Wire.setSDA/setSCL).
- SPI
- MOSI = A7, MISO = A6, SCK = A5, CS = A4.
- Ingressi analogici
- A1, A2, A3, B0, B1, A4, A5, A6, A7, A0 (0–3.3 V)
- Pin che tollerano 5 V
- B10, B2, B1, B0, A7, A6, A5, A4, A3, A2, A1, C15, C14, C13, B12, B13, B14, B15, A8, A9, A10, A11, A12, A15, B3, B4, B6, B7, B8, B9, SCK, DIO
Come programmarla
Per caricare via USB, tieni premuto BOOT0, premi e rilascia NRST, poi rilascia BOOT0 (modalità DFU). Funziona anche un ST-LINK sui pin SWD.
Tutti i 44 pin
| Pin | GPIO | Pin del chip | Funzioni | Note |
|---|---|---|---|---|
| 5V | — | 5 V dalla USB-C (dopo un diodo di protezione). Può anche alimentare la scheda. | ||
| G | — | |||
| 3V3 | — | Uscita a 3,3 V per i sensori. | ||
| B10 | 26 | GPIO, I2C2_SCL, SPI2_SCK, TIM2_CH3, PWM | ||
| B2 | 18 | GPIO, BOOT1 | BOOT1 (10 kohm verso GND sulla scheda). Conta solo quando BOOT0 è tenuto premuto al reset. | |
| B1 | 17 | GPIO, ADC1_IN9, TIM3_CH4, TIM1_CH3N, PWM | Tollera i 5 V solo come ingresso digitale. Come ingresso analogico tienilo tra 0 e 3,3 V. | |
| B0 | 16 | GPIO, ADC1_IN8, TIM3_CH3, TIM1_CH2N, PWM | Tollera i 5 V solo come ingresso digitale. Come ingresso analogico tienilo tra 0 e 3,3 V. | |
| A7 | 7 | GPIO, ADC1_IN7, SPI_MOSI (predef.), SPI1_MOSI, TIM1_CH1N, TIM3_CH2, PWM | È collegato anche all’impronta vuota della flash SPI U3 sul retro (conta solo se saldi un chip di flash). Tollera i 5 V solo come ingresso digitale. Come ingresso analogico tienilo tra 0 e 3,3 V. | |
| A6 | 6 | GPIO, ADC1_IN6, SPI_MISO (predef.), SPI1_MISO, TIM3_CH1, PWM | È collegato anche all’impronta vuota della flash SPI U3 sul retro (conta solo se saldi un chip di flash). Tollera i 5 V solo come ingresso digitale. Come ingresso analogico tienilo tra 0 e 3,3 V. | |
| A5 | 5 | GPIO, ADC1_IN5, SPI_SCK (predef.), SPI1_SCK, TIM2_CH1, PWM | È collegato anche all’impronta vuota della flash SPI U3 sul retro (conta solo se saldi un chip di flash). Tollera i 5 V solo come ingresso digitale. Come ingresso analogico tienilo tra 0 e 3,3 V. | |
| A4 | 4 | GPIO, ADC1_IN4, SPI_CS (predef.), SPI1_NSS, SPI3_NSS | È collegato anche all’impronta vuota della flash SPI U3 sul retro (conta solo se saldi un chip di flash). Tollera i 5 V solo come ingresso digitale. Come ingresso analogico tienilo tra 0 e 3,3 V. | |
| A3 | 3 | GPIO, ADC1_IN3, UART2_RX, TIM2_CH4, TIM5_CH4, TIM9_CH2, PWM | Tollera i 5 V solo come ingresso digitale. Come ingresso analogico tienilo tra 0 e 3,3 V. | |
| A2 | 2 | GPIO, ADC1_IN2, UART2_TX, TIM2_CH3, TIM5_CH3, TIM9_CH1, PWM | Tollera i 5 V solo come ingresso digitale. Come ingresso analogico tienilo tra 0 e 3,3 V. | |
| A1 | 1 | GPIO, ADC1_IN1, TIM2_CH2, TIM5_CH2, UART2_RTS, PWM | Tollera i 5 V solo come ingresso digitale. Come ingresso analogico tienilo tra 0 e 3,3 V. | |
| A0 | 0 | GPIO, ADC1_IN0, TIM2_CH1, TIM5_CH1, UART2_CTS, WKUP, PWM | Su questo pin c’è il pulsante KEY (verso GND tramite 330 ohm): usa INPUT_PULLUP, premuto = LOW. Non tollera i 5 V. | |
| R | — | Reset: collegalo a GND per riavviare la scheda (come il pulsante NRST). | ||
| C15 | 47 | GPIO, OSC32_OUT | Pin del quarzo da 32,768 kHz. Lascialo libero. | |
| C14 | 46 | GPIO, OSC32_IN | Pin del quarzo da 32,768 kHz. Lascialo libero. | |
| C13 | 45 | GPIO, RTC_OUT | LED blu sulla scheda, attivo basso (LOW = acceso). Pin debole: non usarlo per pilotare altri carichi. | |
| VB | — | Ingresso per una batteria tampone che tiene in funzione l’RTC. Non fornisce alimentazione. | ||
| B12 | 28 | GPIO, SPI2_NSS, TIM1_BKIN | ||
| B13 | 29 | GPIO, SPI2_SCK, TIM1_CH1N, PWM | ||
| B14 | 30 | GPIO, SPI2_MISO, TIM1_CH2N, PWM | ||
| B15 | 31 | GPIO, SPI2_MOSI, TIM1_CH3N, PWM | ||
| A8 | 8 | GPIO, TIM1_CH1, I2C3_SCL, UART1_CK, MCO1, PWM | ||
| A9 | 9 | GPIO, UART1_TX, TIM1_CH2, USB_VBUS, PWM | ||
| A10 | 10 | GPIO, UART1_RX, TIM1_CH3, USB_ID, PWM | ||
| A11 | 11 | GPIO, USB_DM, UART1_CTS, UART6_TX, TIM1_CH4, PWM | USB D- verso la porta USB-C. Usato per la seriale USB e il caricamento. | |
| A12 | 12 | GPIO, USB_DP, UART1_RTS, UART6_RX, TIM1_ETR | USB D+ verso la porta USB-C. Usato per la seriale USB e il caricamento. | |
| A15 | 15 | GPIO, JTDI, TIM2_CH1, SPI1_NSS, SPI3_NSS, PWM | JTAG JTDI dopo il reset; con Arduino funziona come un pin normale. | |
| B3 | 19 | GPIO, SWO, TIM2_CH2, SPI1_SCK, SPI3_SCK, I2C2_SDA, PWM | JTAG SWO dopo il reset; con Arduino funziona come un pin normale. | |
| B4 | 20 | GPIO, TIM3_CH1, SPI1_MISO, SPI3_MISO, I2C3_SDA, PWM | JTAG NJTRST dopo il reset; con Arduino funziona come un pin normale. | |
| B5 | 21 | GPIO, TIM3_CH2, SPI1_MOSI, SPI3_MOSI, PWM | Sull’F411 non tollera i 5 V (tienilo a 3,3 V o meno). | |
| B6 | 22 | GPIO, I2C_SCL (predef.), I2C1_SCL, UART1_TX, TIM4_CH1, PWM | ||
| B7 | 23 | GPIO, I2C_SDA (predef.), I2C1_SDA, UART1_RX, TIM4_CH2, PWM | ||
| B8 | 24 | GPIO, I2C1_SCL, TIM4_CH3, TIM10_CH1, PWM | ||
| B9 | 25 | GPIO, I2C1_SDA, TIM4_CH4, TIM11_CH1, SPI2_NSS, PWM | ||
| 5V | — | Stessa linea a 5 V dell’altro pin 5V. | ||
| G | — | |||
| 3V3 | — | Stessa linea a 3,3 V dell’altro pin 3V3. | ||
| GND | — | |||
| SCK | 14 | GPIO, SWCLK | Clock di debug SWD (SWCLK). Lascialo libero se usi un ST-LINK. | |
| DIO | 13 | GPIO, SWDIO | Dati di debug SWD (SWDIO). Lascialo libero se usi un ST-LINK. | |
| 3V3 | — | 3,3 V sul connettore SWD (stessa linea di 3V3). |
Controlla il cablaggio con BoardPilot
BoardPilot mostra questa scheda in 3D, segnala i pin rischiosi mentre colleghi e la programma in sicurezza, con un backup prima.
Scarica BoardPilotFonti
- WeAct MiniF4x1Cx V3.1 Board Shape, Top view: 52.81 x 20.78 mm, rows 15.22 mm apart, pin order, SWD header
- WeAct MiniF4x1Cx V3.1 schematic, Headers P1/P2/P3, KEY (PA0, 330R), BOOT0/PB2 pull-downs, LED PC13 active low, Y1 32.768 kHz, Y2 25 MHz, USB-C PA11/PA12, U3 flash footprint PA4-PA7
- ST STM32F411xC/xE datasheet DS10314 (DocID026289 Rev 7), Table 8 pin definitions: FT pins, PA0 and PB5 are TC; ADC1_IN channels
- stm32duino Arduino_Core_STM32, variants/STM32F4xx/F411C(C-E)(U-Y)/variant_BLACKPILL_F411CE.h (PIN_WIRE_SDA PB7, PIN_WIRE_SCL PB6, SPI PA7/PA6/PA5/PA4, LED PC13, USER_BTN PA0); boards.txt GenF4; platform.txt USB ids
- File dei dati della scheda e note sulle fonti su GitHub