STM32F3 umfasst eine Reihe von 32-Bit-MCUs mit hoher Leistung, Echtzeitfunktionalität, digitaler Signalverarbeitung, geringem Stromverbrauch und Niederspannungsbetrieb, wobei gleichzeitig eine hohe Integration und einfache Entwicklung gewährleistet sind. Die konkurrenzlose Produktpalette von STM32 basiert auf einem Industriestandard-Kern und bietet eine breite Auswahl an Tools und Softwareoptionen, wodurch sie sich ideal für kleine Projekte bis hin zu kompletten Plattformen eignet.
Einführung in STM32F3
STM32F3 ist das neueste Produkt von STmicroelectronics. Es integriert einen 32-Bit-ARM-Cortex-M4-Kern mit DSP- und FPU-Befehlen, die mit 72 MHz arbeiten, fortschrittliche analoge Peripheriegeräte sowie eingebetteten Flash- und SRAM-Speicher. Dank der integrierten effizienten Stromversorgungsstruktur und mehreren Stromverbrauchsmodi reduziert STM32F3 den Stromverbrauch auf Anwendungsebene und vereinfacht das Anwendungsdesign.
Diese Serie von MCUs integriert außerdem einen schnellen 12-Bit-5-MSPS-Präzisions-16-Bit-Sigma-Delta-ADC, einen programmierbaren Verstärker (4 Verstärkungsstufen, 1 % Genauigkeit), einen schnellen 50-ns-Komparator und eine multifunktionale Betriebsfrequenz von 144 MHz. Taktsteuereinheit.
Aufgrund seiner Echtzeitfähigkeiten, der digitalen Signalverarbeitung, des geringen Stromverbrauchs und des Niederspannungsbetriebs kann der STM32F3 gemischte Signale in Schaltungen wie Drehstrommotorsteuerungen, biochemischen und industriellen Sensoren sowie Audiofiltern effektiv verarbeiten und kann in Verbraucher-, Medizin-, tragbaren Fitness-, Systemüberwachungs- und Messanwendungen eingesetzt werden.
Merkmale des STM32F3
- Ultraschneller Komparator (25 ns)
- Operationsverstärker mit programmierbarer Verstärkung
- 12-Bit-DAC
- Ultraschneller 12-Bit-ADC, 5 Millionen Abtastungen pro Sekunde und Kanal (fünf Millionen Abtastungen pro Sekunde), bis zu 18 Millionen Abtastungen pro Sekunde im Wechselmodus
- Präziser 16-Bit-Sigma-Delta-ADC (21 Kanäle)
- Core Coupled Memory SRAM (Program Accelerator) ist eine Speicherarchitektur, die speziell zur Verbesserung der Leistung zeitkritischer Programme entwickelt wurde und die Leistung um 43 % steigern kann
- 144 MHz fortschrittlicher 16-Bit-PWM-Timer (Auflösung < 7 ns) für Steuerungsanwendungen
- Hochauflösender Timer (217 ps) mit Selbstkompensation für Stromversorgungs- und Temperaturdrift
- Die flexible Verbindungsmatrix ermöglicht eine autonome Kommunikation zwischen Peripheriegeräten, wodurch CPU-Ressourcen und Stromverbrauch eingespart werden.
STM32F3 Spezifikationen
Die STM32 F3-Serie umfasst Bausteine mit 64 bis 256 KB On-Chip-Flash-Speicher und 48 KB SRAM. Zu den Gehäuseoptionen gehören WLCSP66 (weniger als 4,3 x 4,3 mm), LQFP48, LQFP64, LQFP100 und UFBGA100.
| Manufacturer | STMicroelectronics |
|---|---|
| Core | ARM Cortex M4F |
| Data Bus Width | 32 bit |
| I/O Count | 39 |
| Maximum Clock Frequency | 72 MHz |
| Flash Memory (Maximum) | 256 KB |
| Data RAM Size | 32 KB |
| On-chip ADC | Yes |
| Operating Supply Voltage | 1.65 V to 3.6 V, 2 V to 3.6 V, 2.2 V to 3.6 V |
| Operating Temperature Range | -40°C to +85°C |
| Package | LQFP-48, 64, 100 |
| Mounting Style | SMD/SMT |
STM32F3-Taktgeber
STM32F3 verwendet 4 Taktquellen: LSE für eingebettete RTC; HSE für den MCU-Betrieb; HSI für den Systemtakt; LSI für die Ansteuerung von IWDG und RTC. Jede Taktquelle kann einzeln ein- oder ausgeschaltet werden, wenn sie nicht verwendet wird, um den Stromverbrauch zu reduzieren.
HSE-Uhr
Der OSC-Taktgeber für das externe Hochgeschwindigkeitstaktsignal (HSE) verfügt über zwei Taktquellen: den externen Quarzoszillator/Keramikresonator des HSE und den externen Taktgeber des HSE-Benutzers. Bei der Gestaltung der Leiterplatte müssen der Resonator und die Lastkapazität so nah wie möglich an den Oszillatorpins angeordnet werden, um die Ausgangsverzerrung und die Einschwingzeit der Schwingung zu minimieren. Der Wert der Lastkapazität muss entsprechend dem ausgewählten Oszillator angemessen angepasst werden.
Externer Quarzoszillator (HSE-Quarzoszillator)
Der Vorteil des externen 4-32-MHz-Oszillators besteht in seiner sehr hohen Genauigkeit. Das HSERDY-Flag (RCC_CR) im Taktsteuerungsregister gibt an, ob der HSE-Oszillator stabil ist. Dieser Takt kann erst verwendet werden, wenn die Hardware dieses Bit beim Start setzt. Interrupts können generiert werden, wenn Interrupts im Takt-Interrupt-Register (RCC_CIR) aktiviert sind. Der HSE-Quarzoszillator kann über das HSEON-Bit im Taktsteuerungsregister (RCC_CR) ein- oder ausgeschaltet werden.
Externe Quelle (HSE-Bypass)
In diesem Modus muss eine externe Taktquelle mit einer maximalen Frequenz von nicht mehr als 32 MHz bereitgestellt werden. Der OSC_IN-Pin muss mit einem externen Taktsignal (Rechteck-, Sinus- oder Dreieckwelle) mit einem Tastverhältnis von 40–60 % je nach Frequenz angesteuert werden, während der OSC_OUT-Pin als GPIO verwendet werden kann.
LSE-Uhr
Der LSE-Quarzoszillator ist ein externer Quarzoszillator oder Keramikresonator mit einer niedrigen Frequenz von 32,768 kHz. Er kann als Taktquelle für die Echtzeituhr (RTC) verwendet werden, um Uhrzeit-/Kalender- oder andere Zeitmessfunktionen bereitzustellen. Er zeichnet sich durch einen geringen Stromverbrauch und eine hohe Genauigkeit aus.
Der LSE-Quarzoszillator wird über das LSEON-Bit im Backup-Domain-Steuerregister (RCC_BDCR) ein- und ausgeschaltet. Die Quarzantriebsstärke kann zur Laufzeit über die LSEDRV[1:0]-Bits im Backup-Domain-Steuerregister (RCC_BDCR) geändert werden, um das beste Gleichgewicht zwischen Robustheit, kurzer Startzeit und geringem Stromverbrauch zu erreichen.
Das LSERDY-Flag im Backup-Domänen-Steuerregister (RCC_BDCR) zeigt an, ob der LSE-Quarzoszillator stabil ist. Beim Start kann das vom LSE-Quarzoszillator ausgegebene Taktsignal erst verwendet werden, nachdem die Hardware dieses Bit gesetzt hat. Interrupts können generiert werden, wenn Interrupts im Takt-Interrupt-Register (RCC_CIR) aktiviert sind.
In diesem Modus muss eine externe Taktquelle mit einer maximalen Frequenz von nicht mehr als 1 MHz bereitgestellt werden. Zum Ansteuern des OSC32_IN-Pins muss ein externes Taktsignal (Rechteckwelle, Sinuswelle oder Dreieckwelle) mit einem Tastverhältnis von ca. 50 % verwendet werden, während der OSC32_OUT-Pin als GPIO verwendet werden kann.
HSI-Uhr
Das HSI-Taktsignal wird vom internen 8-MHz-RC-Oszillator erzeugt und kann direkt als Systemtakt (SYSCLK) oder als PLL-Eingang verwendet werden. Der Vorteil des HSI-RC-Oszillators liegt in seinen geringeren Kosten (keine externen Komponenten erforderlich). Außerdem ist seine Startgeschwindigkeit höher als die des HSE-Quarzoszillatorblocks, aber selbst nach der Kalibrierung ist seine Frequenzgenauigkeit nicht so gut wie die eines externen Quarzoszillators oder Keramikresonators.
Da der Produktionsprozess unterschiedlich ist, unterscheiden sich auch die RC-Oszillatorfrequenzen verschiedener Chips. ST führt eine Werkskalibrierung für jedes Gerät durch, um eine Genauigkeit von 1 % bei TA = 25 °C zu erreichen. Darüber hinaus kann der HSI-Takt an den MCO-Multiplexer angeschlossen werden. Der Takt kann an den Eingang von Timer 16 im F30x und an den Eingang von Timer 14 im F37x angeschlossen werden, damit der Benutzer den Oszillator kalibrieren kann.
Niedrigpegelige Synchronisationsuhr
Die Frequenz des internen RC-Taktgebers mit niedriger Geschwindigkeit (LSI RC) beträgt etwa 40 kHz (zwischen 30 kHz und 60 kHz). Der LSI-Taktgeber kann als Taktquelle mit geringem Stromverbrauch verwendet werden, um im Stopp- und Standby-Modus den unabhängigen Watchdog (IWDG) und die Echtzeituhr (RTC) zu betreiben. Er kann optional auch für die RTC bereitgestellt werden, um im Stopp-/Standby-Modus ein automatisches Aufwachen zu ermöglichen.
PCB-Design von STM32F3
Aus technischen Gründen ist es besser, eine mehrschichtige Leiterplatte (PCB) zu verwenden, bei der eine Schicht für die Masse (VSS) und eine andere Schicht für die VDD-Stromversorgung vorgesehen ist. Dies sorgt für eine gute Entkopplung und Abschirmung.
Komponentenposition und Parameter
Das ursprüngliche Layout der Leiterplatte muss separate Schaltkreise mit Hochstromschaltkreisen, Niederspannungsschaltkreisen, digitalen Komponentenschaltkreisen und Schaltkreisen aufweisen, die auf der Grundlage der EMI-Eigenschaften des Schaltkreises getrennt sind. Dies trägt dazu bei, die Kreuzkopplung zu reduzieren, die Störungen auf der Leiterplatte verursacht. Die relevanten Komponentenparameter sind der folgenden Tabelle zu entnehmen.
| Components | Value | Count | Notes |
|---|---|---|---|
| MCU | STM32F303VCT6 | 1 | 100-pin package |
| Capacitor | 100nF | 4 | For STM32F303: 4 units For STM32F373/378: 3 units Ceramic Capacitors (Decoupling) |
| Capacitor | 4.7μF | 1 | Ceramic Capacitor (Decoupling) |
| Resistor | 390Ω | 1 | For HSE: Value depends on crystal characteristics. |
| Resistor | 0Ω | 1 | For LSE: Value depends on crystal characteristics. |
| Resistor | 10KΩ | 4 | For JTAG and boot mode pull-up and pull-down resistors. |
| Capacitor | 100nF | 3 | For RESET button, VDDA, and VREF+ (Ceramic Capacitors). |
| Capacitor | 1μF | 2 | For VDDA and VREF+. |
| Capacitor | 100nF | 3 | For VDDSDx and VREFSD+ (Ceramic Capacitors, only for STM32F37x). |
| Capacitor | 1μF | 3 | For VDDSDx and VREFSD+ (only for STM32F37x). |
| Capacitor | 10pF | 2 | For LSE: Value depends on crystal characteristics. |
| Capacitor | 20pF | 2 | For HSE: Value depends on crystal characteristics. |
| Crystal | 8MHz | 1 | For HSE |
| Crystal | 32kHz | 1 | For LSE |
| Embedded | 3V3 | 1 | If an external battery is not used in the application, it is recommended to connect VBAT externally to VDD. |
| Switch | - | 1 | For selecting the correct boot mode. |
| Button | B1 | 1 | Used as a reset button. |
| JTAG Connector | - | 1 | For MCU programming/debugging. |
Masse und Stromversorgung (VSS, VDD, VSSA, VDDA, VSSSD, VDDSD)
Jeder Block (Rauschen, bodensensitiv, digital usw.) sollte einzeln geerdet werden, und alle Erdungsrückleitungen sollten einen einzigen Punkt bilden. Ringe müssen vermieden werden oder eine minimale Fläche aufweisen. Die Stromversorgung sollte in der Nähe des Erdungskabels implementiert werden, um die Fläche der Stromversorgungsschleife zu minimieren. Der Grund dafür ist, dass sich die Stromschleife wie eine Antenne verhält und somit der primäre Sender und Empfänger von EMI ist. Alle komponentenfreien PCB-Bereiche müssen mit zusätzlicher Erdung gefüllt werden, um eine Abschirmung zu schaffen (insbesondere bei Verwendung von einlagigen PCBs).
Entkopplung
Alle Strom- und Massepins müssen ordnungsgemäß an die Stromversorgung angeschlossen werden. Diese Verbindungen, einschließlich Pads, Leiterbahnen und Löcher, sollten einen möglichst geringen Widerstand aufweisen. Im Allgemeinen wird dies durch eine Vergrößerung der Leiterbahnbreite erreicht, vorzugsweise unter Verwendung spezieller Stromversorgungsebenen in mehrschichtigen Leiterplatten.
Darüber hinaus sollte jedes Stromversorgungspaar mit einem 100-nF-Keramikkondensator entkoppelt und zwischen den Stromversorgungs-Pins des STM32F3xx-Bausteins mit einem chemischen Kondensator von ca. 4,7 μF verbunden werden. Diese Kondensatoren müssen so nah wie möglich neben oder unter den entsprechenden Pins auf der Unterseite der Leiterplatte platziert werden. Typische Werte liegen zwischen 10 nF und 100 nF, der genaue Wert hängt jedoch von den Anforderungen der Anwendung ab.
Nicht verwendete E/A
Normalerweise nutzt eine Anwendung nicht 100 % der MCU-Ressourcen. Um die EMV-Leistung zu verbessern und zusätzlichen Stromverbrauch zu vermeiden, sollten ungenutzte Takte, Zähler oder E/A nicht offen gelassen werden, sondern an feste Logikpegel von 0 oder 1 gebunden werden. Die Methode besteht darin, externe oder interne Pull-up- oder Pull-down-Widerstände an ungenutzten E/A-Pins zu verwenden oder die GPIO mithilfe von Software in den Ausgabemodus zu konfigurieren. Nicht verwendete Funktionen sollten eingefroren oder deaktiviert werden, was auch ihrem Standardwert entspricht.
Verschiedene Typen von STM32F3
Die MUCs der STM32F3-Serie umfassen die Modelle STM32F301, STM32F302, STM32F303 und weitere Typen. Sie integrieren nicht nur eine Vielzahl von Peripheriegeräten, sondern bieten auch eine höhere Leistung und analoge Funktionen zur Steuerung von bis zu drei FOC-Motorsteuerungen.
STM32F301
Der STM32F301 ist ein Mixed-Signal-MCU, der den ARM Cortex-M4-Kern (DSP, FPU) verwendet und mit 72 MHz läuft.

Diese Serie von MCUs hat die folgenden Spezifikationen:
- Bis zu 3 ultraschnelle Komparatoren (<30 ns)
- Operationsverstärker (PGA) mit programmierbarer Verstärkung • 12-Bit-DAC
- Ultraschneller 12-Bit-ADC mit 5 Millionen Abtastungen pro Sekunde
- Schneller Motorsteuerungstimer mit 144 MHz (Auflösung < 7 ns)
- Die MCU STM32F301 arbeitet mit 2,0 bis 3,6 V
- Die Speicherkapazitäten reichen von 32 bis 64 KB, und es sind Gehäuse mit 32 bis 64 Pins erhältlich
STM32F302
Der STM32F302 ist ein Mixed-Signal-MCU, der den ARM Cortex-M4-Kern (DSP, FPU) verwendet und mit 72 MHz läuft.

Diese Serie von MCUs hat die folgenden Spezifikationen:
- Bis zu 4 schnelle und ultraschnelle Komparatoren (<30 ns)
- Bis zu 2 Operationsverstärker (PGA) mit programmierbarer Verstärkung
- 12-Bit-DAC
- Bis zu 2 ultraschnelle 12-Bit-ADCs mit 5 Millionen Abtastungen pro Sekunde
- Schneller Motorsteuerungstimer mit 144 MHz (Auflösung < 7 ns)
- USB FS- und CAN 2.0B-Kommunikationsschnittstelle
- STM32F302 MCU arbeitet mit 2,0 bis 3,6 V
- Speicherkapazitäten von 32 bis 256 KB und Gehäuse mit 32 bis 100 Pins
- Temperaturbereich von -40 bis 85 °C oder -40 bis 105 °C (Junction-Temperatur beträgt 125 °C)
STM32F303
STM32F303 ist eine Mixed-Signal-MCU, die den ARM Cortex-M4-Kern (DSP, FPU) verwendet und mit 72 MHz läuft. Es handelt sich um eine Gruppe von Geräten mit hervorragender Leistung aus der MCU-Serie STM32F30x.

Diese Serie von Mikrocontrollern hat die folgenden Spezifikationen:
- Bis zu 7 schnelle und ultraschnelle Komparatoren (<30 ns)
- Bis zu 4 Operationsverstärker (PGA) mit programmierbarer Verstärkung
- Bis zu 2 12-Bit-DACs
- Bis zu 4 ultraschnelle 12-Bit-ADCs mit 5 Millionen Abtastungen pro Sekunde
- Bis zu 3 schnelle Motorsteuerungs-Timer mit 144 MHz (Auflösung < 7 ns)
- USB FS- und CAN 2.0B-Kommunikationsschnittstelle
- Core-gekoppelter SRAM-Speicher (43 % Leistungssteigerung im Vergleich zur Flash-Ausführung)
- STM32F303 MCU arbeitet mit 2,0 bis 3,6 V
- Speicherkapazitäten von 32 bis 256 KB und Gehäuse mit 32 bis 100 Pins
- Temperaturbereich von -40 bis 85 °C oder -40 bis 105 °C (Knotentemperatur 125 °C)




