Bringup
Editor öffnen
Mikrocontroller mit echter FirmwareSTM32F411RET6stm32f411

STM32F411RE (Cortex-M4F, Firmware)

Führt echte Firmware (Zephyr / STM32Cube, ELF oder HEX, z. B. für nucleo_f411re gebaut) auf einem emulierten Cortex-M4F mit 96 MHz aus: GPIO, EXTI, USART, TIM-PWM, ADC, SPI, I2C.

VDDGNDPA0PA1PA2PA3PA4PA5PA6PA7PA8PA9PA10PA11PA12PA13PA14PA15PB0PB1PB2PB3PB4PB5PB6PB7PB8PB9PB10PB12PB13PB14PB15PC0PC1PC2PC3PC4PC5PC6PC7PC8PC9PC10PC11PC12PC13PC14PC15PD2PH0PH1NRSTBOOT0VCAP1STM32F411RET6
Schaltplansymbol

Wichtige Daten

Kategorie
ICs
Simulationsmodell
Mikrocontroller mit echter Firmware
Hersteller-Teilenummer
STM32F411RET6
Referenzpräfix
U
Pins
55
Land-Pattern
LQFP-64_10x10mm_P0.5mm

Hinweise

Die Firmware läuft Befehl für Befehl auf einem emulierten CPU-Kern. Die nachgebildeten Peripherieblöcke (GPIO, Timer, UART, SPI, I²C, ADC und weitere, siehe Beschreibung) wirken auf die Pins der Schaltung, sodass die Analogteile rund um den Chip dieselben Spannungen und dasselbe Timing sehen wie auf einer echten Platine.

  • Rechtsklick auf das Bauteil und „Im Code-Editor öffnen“ wählen, um seinen Code zu schreiben und zu kompilieren; „Serieller Monitor“ zeigt seine UART-Ausgabe.
  • Alternativ im Inspektor eine Demo-Firmware oder eine eigene ELF-/Intel-HEX-/BIN-Datei laden.
  • GPIO-Pins sind echte Schaltungspins: eine LED an einem Ausgang braucht einen Vorwiderstand, ein Eingang einen definierten Pegel (Pull-up oder Pull-down).
  • Der Debugger in der Code-Ansicht hält an Haltepunkten und zeigt Register, Variablen und den Aufrufstapel.

Simulationsmodell

Ein emulierter CPU-Kern führt das Firmware-Binary Befehl für Befehl aus. Die GPIO-Pins sind Pins der Analogschaltung: Ausgänge treiben über einen Treiberwiderstand, Eingänge lesen die Spannung mit Schaltschwellen.

Baustein
stm32f411
CPU-Kern
ARM Cortex-M4F
Emulator
ARM-Cortex-M-Emulator
Firmware
Bare-Metal-C (arm-none-eabi-gcc) oder Zephyr-Projekt in der Code-Ansicht, oder eigene ELF-/Intel-HEX-/BIN-Datei
Flash / RAM für Firmware
512 KB / 128 KB
Versorgungspins
VDD / GND
Zugeordnete GPIO-Pins
51

Pins 55

simuliertnur echter ChipPin-Funktionen aus dem Emulator und dem Datenblatt.

PinNameFunktionenVerwendung
VDDVDDVersorgungVersorgung 3,3 V: 100 nF an jedem VDD-Pin plus ein 4,7-µF-Pufferkondensator
GNDGNDMasseMasse
PA0PA0Ein-/AusgangTIM2_CH1TIM5_CH1ADC1_IN0Analogeingang: Potentiometer, Sensorspannung (0 V … Versorgung)
PA1PA1Ein-/AusgangTIM2_CH2TIM5_CH2ADC1_IN1Analogeingang: Potentiometer, Sensorspannung (0 V … Versorgung)
PA2PA2Ein-/AusgangTIM2_CH3TIM5_CH3TIM9_CH1USART2_TXADC1_IN2Serielle Konsole: USART2 geht auf Nucleo-64-Boards zum virtuellen COM-Port des ST-LINK
PA3PA3Ein-/AusgangTIM2_CH4TIM5_CH4TIM9_CH2USART2_RXADC1_IN3Serielle Konsole: USART2 geht auf Nucleo-64-Boards zum virtuellen COM-Port des ST-LINK
PA4PA4Ein-/AusgangADC1_IN4Analogeingang: Potentiometer, Sensorspannung (0 V … Versorgung)
PA5PA5Ein-/AusgangTIM2_CH1SPI1_SCKADC1_IN5Benutzer-LED LD2 auf Nucleo-64-Boards; auch SPI1 SCK
PA6PA6Ein-/AusgangTIM3_CH1SPI1_MISOADC1_IN6SPI-Daten ein (MISO): von DOUT / SDO des Bausteins
PA7PA7Ein-/AusgangTIM1_CH1NTIM3_CH2SPI1_MOSIADC1_IN7SPI-Daten aus (MOSI): an DIN / SDA / SDI des Bausteins
PA8PA8Ein-/AusgangTIM1_CH1I2C3_SCLI²C-Takt: Sensoren, Displays; Pull-up (etwa 4,7 kΩ) zur Versorgung
PA9PA9Ein-/AusgangTIM1_CH2USART1_TXSerielle Daten aus: zum RX-Pin des anderen Geräts (Konsole, GPS, Module)
PA10PA10Ein-/AusgangTIM1_CH3USART1_RXSerielle Daten ein: vom TX-Pin des anderen Geräts
PA11PA11Ein-/AusgangTIM1_CH4USART6_TXOTG_FS_DMUSB-Full-Speed-Daten (nur echter Chip, nicht simuliert)
PA12PA12Ein-/AusgangUSART6_RXOTG_FS_DPUSB-Full-Speed-Daten (nur echter Chip, nicht simuliert)
PA13PA13Ein-/AusgangSWDIOSWD-Debug: frei lassen, um den echten Chip zu flashen und zu debuggen
PA14PA14Ein-/AusgangSWCLKSWD-Debug: frei lassen, um den echten Chip zu flashen und zu debuggen
PA15PA15Ein-/AusgangTIM2_CH1USART1_TXJTDISerielle Daten aus: zum RX-Pin des anderen Geräts (Konsole, GPS, Module)
PB0PB0Ein-/AusgangTIM1_CH2NTIM3_CH3ADC1_IN8Analogeingang: Potentiometer, Sensorspannung (0 V … Versorgung)
PB1PB1Ein-/AusgangTIM1_CH3NTIM3_CH4ADC1_IN9Analogeingang: Potentiometer, Sensorspannung (0 V … Versorgung)
PB2PB2Ein-/AusgangBOOT1BOOT1: beim Reset Low halten
PB3PB3Ein-/AusgangTIM2_CH2I2C2_SDASPI1_SCKSPI3_SCKUSART1_RXSWOSerielle Daten ein: vom TX-Pin des anderen Geräts
PB4PB4Ein-/AusgangTIM3_CH1I2C3_SDASPI1_MISOSPI3_MISONJTRSTSPI-Daten ein (MISO): von DOUT / SDO des Bausteins
PB5PB5Ein-/AusgangTIM3_CH2SPI1_MOSISPI3_MOSISPI-Daten aus (MOSI): an DIN / SDA / SDI des Bausteins
PB6PB6Ein-/AusgangTIM4_CH1I2C1_SCLUSART1_TXSerielle Daten aus: zum RX-Pin des anderen Geräts (Konsole, GPS, Module)
PB7PB7Ein-/AusgangTIM4_CH2I2C1_SDAUSART1_RXSerielle Daten ein: vom TX-Pin des anderen Geräts
PB8PB8Ein-/AusgangTIM4_CH3TIM10_CH1I2C1_SCLI²C-Takt: Sensoren, Displays; Pull-up (etwa 4,7 kΩ) zur Versorgung
PB9PB9Ein-/AusgangTIM4_CH4TIM11_CH1I2C1_SDAI2C2_SDAI²C-Daten: Pull-up (etwa 4,7 kΩ) zur Versorgung
PB10PB10Ein-/AusgangTIM2_CH3I2C2_SCLSPI2_SCKSPI-Takt: Displays, Flash, SD-Karten
PB12PB12Ein-/AusgangAllzweck-I/O: LEDs (mit Vorwiderstand), Taster (mit Pull-up)
PB13PB13Ein-/AusgangTIM1_CH1NSPI2_SCKSPI-Takt: Displays, Flash, SD-Karten
PB14PB14Ein-/AusgangTIM1_CH2NSPI2_MISOSPI-Daten ein (MISO): von DOUT / SDO des Bausteins
PB15PB15Ein-/AusgangTIM1_CH3NSPI2_MOSISPI-Daten aus (MOSI): an DIN / SDA / SDI des Bausteins
PC0PC0Ein-/AusgangADC1_IN10Analogeingang: Potentiometer, Sensorspannung (0 V … Versorgung)
PC1PC1Ein-/AusgangADC1_IN11Analogeingang: Potentiometer, Sensorspannung (0 V … Versorgung)
PC2PC2Ein-/AusgangSPI2_MISOADC1_IN12SPI-Daten ein (MISO): von DOUT / SDO des Bausteins
PC3PC3Ein-/AusgangSPI2_MOSIADC1_IN13SPI-Daten aus (MOSI): an DIN / SDA / SDI des Bausteins
PC4PC4Ein-/AusgangADC1_IN14Analogeingang: Potentiometer, Sensorspannung (0 V … Versorgung)
PC5PC5Ein-/AusgangADC1_IN15Analogeingang: Potentiometer, Sensorspannung (0 V … Versorgung)
PC6PC6Ein-/AusgangTIM3_CH1USART6_TXSerielle Daten aus: zum RX-Pin des anderen Geräts (Konsole, GPS, Module)
PC7PC7Ein-/AusgangTIM3_CH2USART6_RXSerielle Daten ein: vom TX-Pin des anderen Geräts
PC8PC8Ein-/AusgangTIM3_CH3PWM-Ausgang: LED-Dimmung, Servos, Motortreiber
PC9PC9Ein-/AusgangTIM3_CH4I2C3_SDAI²C-Daten: Pull-up (etwa 4,7 kΩ) zur Versorgung
PC10PC10Ein-/AusgangSPI3_SCKSPI-Takt: Displays, Flash, SD-Karten
PC11PC11Ein-/AusgangSPI3_MISOSPI-Daten ein (MISO): von DOUT / SDO des Bausteins
PC12PC12Ein-/AusgangSPI3_MOSISPI-Daten aus (MOSI): an DIN / SDA / SDI des Bausteins
PC13PC13Ein-/AusgangBenutzertaster B1 auf Nucleo-64-Boards (gedrückt = Low)
PC14PC14Ein-/AusgangOSC32_IN32,768-kHz-Quarz für die RTC; schwache Ausgänge, keine schnellen Signale
PC15PC15Ein-/AusgangOSC32_OUT32,768-kHz-Quarz für die RTC; schwache Ausgänge, keine schnellen Signale
PD2PD2Ein-/AusgangAllzweck-I/O: LEDs (mit Vorwiderstand), Taster (mit Pull-up)
PH0PH0Ein-/AusgangOSC_INHauptquarz / externer Takt (HSE) – auf den meisten Boards kein GPIO
PH1PH1Ein-/AusgangOSC_OUTHauptquarz / externer Takt (HSE) – auf den meisten Boards kein GPIO
NRSTNRSTEin-/AusgangReset, Low-aktiv: interner Pull-up, 100 nF nach GND, optional Taster nach GND
BOOT0BOOT0EingangBOOT0: 10 kΩ nach GND, um aus dem Flash zu starten
VCAP1VCAP1Analog4,7 µF Keramik (Low-ESR) nach GND für den Kernregler

Leiterplatte

Geprüftes Land-PatternLQFP-64_10x10mm_P0.5mm
BauformLand-PatternStatusQuelle
LQFP64 · STM32F411RET6LQFP-64_10x10mm_P0.5mmGeprüftes Land-PatternKiCad-10.0.7-Bibliothek: Symbol STM32F411R_C-E_Tx (Pin-Nummern), Footprint Package_QFP:LQFP-64_10x10mm_P0.5mm (IPC-7351B-Landmuster)
  • BOOT0 BOOT0 über 10 kΩ an GND: Start aus dem Flash (DS10314 §3.17 / AN2606)
  • VCAP1 4,7 µF Keramik (low ESR) an GND für den Kernregler (DS10314 §6.1.6)