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.

Piedinatura WeAct Black Pill STM32F411CESTM32F411CEU65VG3V3B10 · 26I2C2_SCLB2 · 18BOOT1B1 · 17ADC1_IN9B0 · 16ADC1_IN8A7ADC1_IN7A6ADC1_IN6A5ADC1_IN5A4ADC1_IN4A3ADC1_IN3A2ADC1_IN2A1ADC1_IN1A0ADC1_IN0RC15 · 47OSC32_OUTC14 · 46OSC32_INC13 · 45RTC_OUTVBB12 · 28SPI2_NSSB13 · 29SPI2_SCKB14 · 30SPI2_MISOB15 · 31SPI2_MOSIA8TIM1_CH1A9UART1_TXA10UART1_RXA11USB_DMA12USB_DPA15JTDIB3 · 19SWOB4 · 20TIM3_CH1B5 · 21TIM3_CH2B6 · 22I2C_SCLB7 · 23I2C_SDAB8 · 24I2C1_SCLB9 · 25I2C1_SDA5VG3V3GNDSCK · 14SWCLKDIO · 13SWDIO3V3
Vista dall’alto, connettore USB a sinistra. Colori: rosso alimentazione, grigio massa, verde GPIO, giallo analogici, arancione seriale USB, blu I2C.

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

PinGPIOPin del chipFunzioniNote
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.
B1026GPIO, I2C2_SCL, SPI2_SCK, TIM2_CH3, PWM
B218GPIO, BOOT1BOOT1 (10 kohm verso GND sulla scheda). Conta solo quando BOOT0 è tenuto premuto al reset.
B117GPIO, ADC1_IN9, TIM3_CH4, TIM1_CH3N, PWMTollera i 5 V solo come ingresso digitale. Come ingresso analogico tienilo tra 0 e 3,3 V.
B016GPIO, ADC1_IN8, TIM3_CH3, TIM1_CH2N, PWMTollera i 5 V solo come ingresso digitale. Come ingresso analogico tienilo tra 0 e 3,3 V.
A77GPIO, 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.
A66GPIO, 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.
A55GPIO, 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.
A44GPIO, 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.
A33GPIO, ADC1_IN3, UART2_RX, TIM2_CH4, TIM5_CH4, TIM9_CH2, PWMTollera i 5 V solo come ingresso digitale. Come ingresso analogico tienilo tra 0 e 3,3 V.
A22GPIO, ADC1_IN2, UART2_TX, TIM2_CH3, TIM5_CH3, TIM9_CH1, PWMTollera i 5 V solo come ingresso digitale. Come ingresso analogico tienilo tra 0 e 3,3 V.
A11GPIO, ADC1_IN1, TIM2_CH2, TIM5_CH2, UART2_RTS, PWMTollera i 5 V solo come ingresso digitale. Come ingresso analogico tienilo tra 0 e 3,3 V.
A00GPIO, ADC1_IN0, TIM2_CH1, TIM5_CH1, UART2_CTS, WKUP, PWMSu 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).
C1547GPIO, OSC32_OUTPin del quarzo da 32,768 kHz. Lascialo libero.
C1446GPIO, OSC32_INPin del quarzo da 32,768 kHz. Lascialo libero.
C1345GPIO, RTC_OUTLED 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.
B1228GPIO, SPI2_NSS, TIM1_BKIN
B1329GPIO, SPI2_SCK, TIM1_CH1N, PWM
B1430GPIO, SPI2_MISO, TIM1_CH2N, PWM
B1531GPIO, SPI2_MOSI, TIM1_CH3N, PWM
A88GPIO, TIM1_CH1, I2C3_SCL, UART1_CK, MCO1, PWM
A99GPIO, UART1_TX, TIM1_CH2, USB_VBUS, PWM
A1010GPIO, UART1_RX, TIM1_CH3, USB_ID, PWM
A1111GPIO, USB_DM, UART1_CTS, UART6_TX, TIM1_CH4, PWMUSB D- verso la porta USB-C. Usato per la seriale USB e il caricamento.
A1212GPIO, USB_DP, UART1_RTS, UART6_RX, TIM1_ETRUSB D+ verso la porta USB-C. Usato per la seriale USB e il caricamento.
A1515GPIO, JTDI, TIM2_CH1, SPI1_NSS, SPI3_NSS, PWMJTAG JTDI dopo il reset; con Arduino funziona come un pin normale.
B319GPIO, SWO, TIM2_CH2, SPI1_SCK, SPI3_SCK, I2C2_SDA, PWMJTAG SWO dopo il reset; con Arduino funziona come un pin normale.
B420GPIO, TIM3_CH1, SPI1_MISO, SPI3_MISO, I2C3_SDA, PWMJTAG NJTRST dopo il reset; con Arduino funziona come un pin normale.
B521GPIO, TIM3_CH2, SPI1_MOSI, SPI3_MOSI, PWMSull’F411 non tollera i 5 V (tienilo a 3,3 V o meno).
B622GPIO, I2C_SCL (predef.), I2C1_SCL, UART1_TX, TIM4_CH1, PWM
B723GPIO, I2C_SDA (predef.), I2C1_SDA, UART1_RX, TIM4_CH2, PWM
B824GPIO, I2C1_SCL, TIM4_CH3, TIM10_CH1, PWM
B925GPIO, 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—
SCK14GPIO, SWCLKClock di debug SWD (SWCLK). Lascialo libero se usi un ST-LINK.
DIO13GPIO, SWDIODati 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 BoardPilot

Fonti

← Tutte le schede