STM32L5-Serie: Hochsicher bei geringem Stromverbrauch
“
Spezifikationen:
- Produktname: RM0438 Referenzhandbuch
- Überarbeitung: Rev. 8
- Seiten: 1 bis 2187
- Erscheinungsdatum: Juni 2025
- Hersteller: www.st.com
Produktinformation:
Das RM0438-Referenzhandbuch enthält detaillierte Informationen zu
Speicher- und Busarchitektur, TrustZone-Sicherheitsarchitektur,
Speicherorganisation, eingebetteter SRAM, Flash-Speicher überview, Stiefel
Konfiguration und Systemsicherheit.
Gebrauchsanweisung für das Produkt:
Speicher- und Busarchitektur:
Die Systemarchitektur umfasst Fast C-Bus, Slow C-Bus, S-Bus,
DMA-Bus, SDMMC-Controller-DMA-Bus und BusMatrix.
TrustZone-Sicherheitsarchitektur:
Erklärt den Standard-Sicherheitsstatus und die TrustZone
periphere Klassifikation.
Speicherorganisation:
Beschreibt die Speicherzuordnung, Registergrenzenadressen und die
Organisation von eingebettetem SRAM.
Eingebettetes SRAM:
Details SRAM2 Paritätsprüfung, Schreibschutz, Leseschutz,
Löschvorgänge.
Flash-Speicher überview:
Bietet eine überview des im System verwendeten Flash-Speichers.
Boot-Konfiguration:
Behandelt die Startkonfigurationseinstellungen für das System.
Systemsicherheit:
Einführung in Systemsicherheitsmaßnahmen.
Häufig gestellte Fragen (FAQ):
F: Wo finde ich Informationen zum Zurücksetzen des Registers?
Werte?
A: Die Registerrücksetzwerte sind detailliert in Abschnitt 1.3 des
Handbuch.
F: Was ist die TrustZone-Sicherheitsarchitektur?
A: Die TrustZone-Sicherheitsarchitektur wird in Abschnitt 2.2 erläutert
des Handbuchs.
F: Wie konfiguriere ich die Starteinstellungen?
A: Anweisungen zur Boot-Konfiguration finden Sie in Abschnitt 3
des Handbuchs.
„`
RM0438 Referenzhandbuch
Fortschrittliche Arm®-basierte 32-Bit-MCUs der STM5L32-Serie
Einführung
Dieses Referenzhandbuch richtet sich an Anwendungsentwickler. Es enthält umfassende Informationen zur Verwendung des Speichers und der Peripherie der Mikrocontroller STM32L552xx und STM32L562xx. STM32L552xx und STM32L562xx gehören zur Mikrocontroller-Reihe STM32L5x2 mit unterschiedlichen Speichergrößen, Gehäusen und Peripheriegeräten. Bestellinformationen sowie mechanische und elektrische Geräteeigenschaften finden Sie in den entsprechenden Datenblättern. Informationen zum Arm® Cortex®-M33-Kern finden Sie im technischen Referenzhandbuch zum Cortex®-M33. Die Mikroprozessoren STM32L552xx und STM32L562xx basieren auf modernster patentierter ST-Technologie.
Zugehörige Dokumente
· Technisches Referenzhandbuch für Cortex®-M33 verfügbar unter http://infocenter.arm.com · Datenblätter für STM32L552xx und STM32L562xx · Korrekturblätter für STM32L552xx und STM32L562xx
Juni 2025
RM0438 Rev 8
1/2187
www.st.com
1
Inhalt
Inhalt
RM0438
1
Dokumentationskonventionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
1.1 Allgemeine Informationen . ...
1.2 Verzeichnis der Registerabkürzungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
1.3 Register-Rücksetzwert . ...
1.4 Glossar . ...
1.5 Verfügbarkeit von Peripheriegeräten . ...
2
Speicher- und Busarchitektur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
2.1 Systemarchitektur . ...
2.1.1 Schneller C-Bus . ...
2.1.2 Langsamer C-Bus . ...
2.1.3 S-Bus . ...
2.1.4 DMA-Bus . ...
2.1.5 SDMMC-Controller DMA-Bus . ...
2.1.6 BusMatrix . ...
2.2 TrustZone-Sicherheitsarchitektur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
2.2.1 Standard-Sicherheitsstatus der TrustZone . ...
2.2.2 TrustZone-Peripherieklassifizierung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
2.3 Speicherorganisation . ...
2.3.1 Einleitung . ...
2.3.2 Speicherbelegung und Registergrenzadressen . . . . . . . . . . . . . . . . . . . . . . 87
2.4 Eingebettetes SRAM . ...
2.4.1 SRAM2-Paritätsprüfung . ...
2.4.2 SRAM2-Schreibschutz . ...
2.4.3 SRAM2-Leseschutz . ...
2.4.4 SRAM2 löschen . ...
2.5 Flash-Speicher überview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
3
Boot-Konfiguration . ...
4
Systemsicherheit . ...
4.1 Einleitung . ...
4.2 Wichtige Sicherheitsmerkmale . ...
2/2187
RM0438 Rev 8
RM0438
Inhalt
4.3 4.4 4.5 4.6
4.7 4.8
4.9 4.10 4.11 4.12 4.13
Sichere Installation . ...
4.4.1 Einleitung . ...
Sicheres Update . ...
4.6.1 Einführung . ... 103 4.6.2 Speicher- und Peripheriezuweisung mit IDAU/SAU . . . . . . . . . . . . . . . . 103 4.6.3 Speicher- und Peripheriezuweisung mit GTZC . . . . . . . . . . . . . . . . . . . . . . . 8 33 Verwalten der Sicherheit in TrustZone-fähigen Peripheriegeräten . ... 104 4.6.4 TrustZone-Sicherheit deaktivieren . ...
Andere Ressourcenisolierungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .117
4.7.1 Zeitliche Isolation mittels Secure Hide Protection (HDP) . . . . . . . . . . . . . . . 117
Sichere Ausführung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .118
4.8.1 Einleitung . ... 118 4.8.2 TampErkennung und Reaktion von Störungen . ...
Sichere Lagerung . ...
4.9.1 Einleitung . ...
Krypto-Engines . ...
4.10.1 Einführung . ... . . . . . 121
Produktlebenszyklus . ...
4.11.1 Lebenszyklusmanagement mit Ausleseschutz (RDP) . . . . . . . . . . . . . . 124 4.11.2 Empfohlene Option-Byte-Einstellungen . ...
Zugriffskontrolliertes Debuggen . ...
4.12.1 Debug-Schutz mit Ausleseschutz (RDP) . . . . . . . . . . . . . . . . . . . . . . 125
Schutz des geistigen Eigentums von Software und gemeinsame Entwicklung 126
RM0438 Rev 8
3/2187
54
Inhalt
RM0438
4.13.1
4.13.2 4.13.3
Schutz geistigen Eigentums von Software durch Ausleseschutz (RDP) . ...
Schutz geistigen Eigentums von Software mit OTFDEC . . . . . . . . . . . . . 127
Sonstiger Schutz geistigen Eigentums an Software . . . . . . . . . . . . . . . . . . . . 129
5
Global TrustZone®-Controller (GTZC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
5.1 GTZC-Einführung . ...
5.2 Hauptmerkmale der GTZC . ...
5.2.1 GTZC TrustZone-Systemarchitektur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
5.3 GTZC-Funktionsbeschreibung . ...
5.3.1 GTZC-Blockdiagramm . ...
5.3.2 Definition eines unzulässigen Zugriffs . ...
5.3.3 TrustZone-Sicherheitscontroller (TZSC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134
5.3.4 Speicherschutz-Controller – blockbasiert (MPCBB) . . . . . . . . . . . . . . . . 134
5.3.5 TrustZone-Controller für illegalen Zugriff (TZIC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135
5.3.6 Einschalt-/Reset-Zustand . ...
5.3.7 DMA-Anfragen . ...
5.4 Veranstaltungen der GTZC . ...
5.5 GTZC_TZSC-Register . ...
5.5.1 GTZC_TZSC-Steuerregister (GTZC_TZSC_CR) . . . . . . . . . . . . . . . . . . . . 136
5.5.2
GTZC_TZSC sicheres Konfigurationsregister 1 (GTZC_TZSC_SECCFGR1) . ...
5.5.3
GTZC_TZSC sicheres Konfigurationsregister 2 (GTZC_TZSC_SECCFGR2) . ...
5.5.4
GTZC_TZSC-Berechtigungskonfigurationsregister 1 (GTZC_TZSC_PRIVCFGR1) . ...
5.5.5
GTZC_TZSC-Berechtigungskonfigurationsregister 2 (GTZC_TZSC_PRIVCFGR2) . ...
5.5.6
GTZC_TZSC externer Speicher x nicht sicheres Wasserzeichenregister 1 (GTZC_TZSC_MPCWMxANSR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
5.5.7
GTZC_TZSC externer Speicher x nicht sicheres Wasserzeichenregister 2 (GTZC_TZSC_MPCWMxBNSR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
5.5.8 GTZC_TZSC-Registerzuordnung und Rücksetzwerte . . . . . . . . . . . . . . . . . . . . . . . . . 148
5.6 GTZC_MPCBB-Register . ...
5.6.1 GTZC_MPCBBx-Steuerregister (GTZC_MPCBBx_CR) (x = 1 bis 2) . 150
5.6.2 GTZC_MPCBB1 Sperrregister 1 (GTZC_MPCBB1_LCKVTR1) . . . . . . . 151
5.6.3
GTZC_MPCBB2 Sperrregister 1 (GTZC_MPCBB2_LCKVTR1) . ...
4/2187
RM0438 Rev 8
RM0438
Inhalt
5.6.4
GTZC_MPCBBx Vektorregister y (GTZC_MPCBBx_VCTRy) (x = 1 bis 2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152
5.6.5 GTZC_MPCBB1-Registerzuordnung und Werte zurücksetzen . . . . . . . . . . . . . . . . . . . . . 153
5.6.6 GTZC_MPCBB2-Registerzuordnung und Werte zurücksetzen . . . . . . . . . . . . . . . . . . . . . 153
5.7 GTZC_TZIC-Register . ...
5.7.1 GTZC_TZIC-Interrupt-Freigaberegister 1 (GTZC_TZIC_IER1) . . . . . . . . 154
5.7.2 GTZC_TZIC-Interrupt-Freigaberegister 2 (GTZC_TZIC_IER2) . . . . . . . . 157
5.7.3 GTZC_TZIC-Interrupt-Freigaberegister 3 (GTZC_TZIC_IER3) . . . . . . . . 159
5.7.4 GTZC_TZIC-Statusregister 1 (GTZC_TZIC_SR1) . . . . . . . . . . . . . . . . . . 160
5.7.5 GTZC_TZIC-Statusregister 2 (GTZC_TZIC_SR2) . . . . . . . . . . . . . . . . . . 163
5.7.6 GTZC_TZIC-Statusregister 3 (GTZC_TZIC_SR3) . . . . . . . . . . . . . . . . . . 165
5.7.7 GTZC_TZIC-Flag-Löschregister 1 (GTZC_TZIC_FCR1) . . . . . . . . . . . . . . 166
5.7.8 GTZC_TZIC-Flag-Löschregister 2 (GTZC_TZIC_FCR2) . . . . . . . . . . . . . . 169
5.7.9 GTZC_TZIC-Flag-Löschregister 3 (GTZC_TZIC_FCR3) . . . . . . . . . . . . . . 171
5.7.10 GTZC_TZIC-Registerzuordnung und Werte zurücksetzen . . . . . . . . . . . . . . . . . . . . . . . . . . . 172
6
Eingebetteter Flash-Speicher (FLASH) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174
6.1 Einleitung . ...
6.2 FLASH-Hauptfunktionen . ...
6.3 Funktionsbeschreibung des Flash-Speichers . ...
6.3.1 Organisation des Flash-Speichers . ...
6.3.2 Fehlercodekorrektur (ECC) . ...
6.3.3 Latenz beim Lesezugriff . ...
6.3.4 Niedrige Lautstärketage lesen . ...
6.3.5 Flash-Programmier- und Löschvorgänge . ...
6.3.6 Löschsequenzen im Flash-Hauptspeicher . ...
6.3.7 Programmiersequenzen für den Flash-Hauptspeicher . . . . . . . . . . . . . . . . . . . . . . . . 185
6.3.8 Flash-Fehlerflags . ...
6.3.9
Lesen und Schreiben (RWW) nur im Dual-Bank-Modus verfügbar (DBANK = 1) . ...
6.4 Flash-Speicher-Optionsbytes . ...
6.4.1 Beschreibung der Optionsbytes . ...
6.4.2 Optionsbyte-Programmierung . ...
6.5 Sicherheit und Privilegienschutz in der Flash TrustZone . . . . . . . . . . . . . . . . . . . . 193
6.5.1 TrustZone-Sicherheitsschutz . ...
6.5.2 Sicherer wasserzeichenbasierter Bereichsschutz . ...
6.5.3 Sicherer Versteckschutz (HDP) . ...
RM0438 Rev 8
5/2187
54
Inhalt
RM0438
6.5.4 Secure Block-Based Area (SECBB)-Schutz . ...
6.6 Sicherer Systemspeicher . ...
6.6.1 Einführung . ... . . . . . . . . . 198
6.7 FLASH-Speicherschutz . ...
6.7.1 Schreibschutz (WRP) . ...
6.8 FLASH-Interrupts . ...
6.9.1 Flash-Zugriffskontrollregister (FLASH_ACR) . . . . . . . . . . . . . . . . . . . . . . . . 213 6.9.2 Flash-Power-Down-Schlüsselregister (FLASH_PDKEYR) . . . . . . . . . . . . . . . . . . . . 214 6.9.3 Flash-Nicht-Sicherheitsschlüsselregister (FLASH_NSKEYR) . . . . . . . . . . . . . . . . . . . . . 215 6.9.4 Flash-Sicherheitsschlüsselregister (FLASH_SECKEYR) . . . . . . . . . . . . . . . . . . . . . . 215 6.9.5 Flash-Optionsschlüsselregister (FLASH_OPTKEYR) . . . . . . . . . . . . . . . . . . . . . . . 216 6.9.6 Blitz leisetage-Schlüsselregister (FLASH_LVEKEYR) . . . . . . . . . . . . . . . . . 216 6.9.7 Flash-Statusregister (FLASH_NSSR) . ... 217 6.9.8 Sicheres Flash-Steuerregister (FLASH_SECCR) . . . . . . . . . . . . . . . . . . . . . . . 218 6.9.9 Flash-ECC-Register (FLASH_ECCR) . ... 220 6.9.10 Nicht sicheres Flash-Boot-Adressregister 222 (FLASH_NSBOOTADD6.9.11R) 223 6.9.12 Nicht sicheres Flash-Boot-Adressregister 225 (FLASH_NSBOOTADD6.9.13R) 0 0 Sicheres Flash-Boot-Adressregister 227 (FLASH_SECBOOTADD6.9.14R) . . 1 1 Sicheres Watermak228-Register für Flash-Bank 6.9.15 (FLASH_SECWM0R0) . . . . 228 6.9.16 Sicheres Watermak1-Register 1 für Flash-Bank 1 (FLASH_SECWM1R229) . . . . . . . . . 6.9.17 1 Adressregister für Flash-WPR2-Bereich A (FLASH_WRP1AR) . . . . . . . . . . 2 230 Adressregister Flash WPR6.9.18 Bereich B (FLASH_WRP1BR) . . . . . . . . . . 1 231 Sicheres Flash-Watermak6.9.19-Register (FLASH_SECWM1R1) . . . . . . . . . . . 232 6.9.20 Sicheres Flash-Watermak2-Register 2 (FLASH_SECWM1R233) . . . . . . . . . 6.9.21 2 Adressregister Flash WPR2 Bereich A (FLASH_WRP2AR) . . . . . . . . . . 2 234 Adressregister Flash WPR6.9.22 Bereich B (FLASH_WRP2BR) . . . . . . . . . . 2
6/2187
RM0438 Rev 8
RM0438
Inhalt
6.9.24
6.9.25
6.9.26 6.9.27 6.9.28
FLASH-sicheres blockbasiertes Bank-1-Register (FLASH_SECBB1Rx) (wobei x=1..4) . ...
FLASH-sicheres blockbasiertes Bank-2-Register (FLASH_SECBB2Rx) (wobei x=1..4) . ...
Sicheres FLASH-HDP-Steuerregister (FLASH_SECHDPCR) . . . . . . . . . 238
FLASH-Berechtigungskonfigurationsregister (FLASH_PRIVCFGR) . . . . . . . . 238
FLASH-Registerzuordnung und Rücksetzwerte . ...
7
Befehlscache (ICACHE) . ...
7.1 ICACHE-Einführung . ...
7.2 Hauptfunktionen von ICACHE . ...
7.3 ICACHE-Implementierung . ...
7.4 ICACHE-Funktionsbeschreibung . ...
7.4.1 ICACHE-Blockdiagramm . ...
7.4.2 ICACHE-Reset und Uhren . ...
7.4.3 ICACHE TAG Speicher . ...
7.4.4 Direkt zugeordneter ICACHE (Einweg-Cache) . ...
7.4.5 ICACHE aktivieren . ...
7.4.6 Zwischenspeicherbarer und nicht zwischenspeicherbarer Datenverkehr . ...
7.4.7 Adressneuzuordnung . ...
7.4.8 Cachefähige Zugriffe . ...
7.4.9 Dual-Master-Cache . ...
7.4.10 ICACHE-Sicherheit . ...
7.4.11 ICACHE-Wartung . ...
7.4.12 ICACHE-Leistungsüberwachung . ...
7.4.13 ICACHE-Boot . ...
7.5 ICACHE-Energiesparmodi . ...
7.6 ICACHE-Fehlerverwaltung und Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253
7.7 ICACHE-Register . ...
7.7.1 ICACHE-Steuerregister (ICACHE_CR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253
7.7.2 ICACHE-Statusregister (ICACHE_SR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 254
7.7.3 ICACHE-Interrupt-Aktivierungsregister (ICACHE_IER) . . . . . . . . . . . . . . . . . . . . 255
7.7.4 ICACHE-Flag-Löschregister (ICACHE_FCR) . . . . . . . . . . . . . . . . . . . . . . . . . . 255
7.7.5 ICACHE-Trefferüberwachungsregister (ICACHE_HMONR) . . . . . . . . . . . . . . . . . . . . 256
7.7.6 ICACHE-Fehlerüberwachungsregister (ICACHE_MMONR) . . . . . . . . . . . . . . . . . 256
7.7.7 ICACHE-Region x-Konfigurationsregister (ICACHE_CRRx) . . . . . . . . . . . 256
7.7.8 ICACHE-Registerkarte . ...
RM0438 Rev 8
7/2187
54
Inhalt
RM0438
8
Leistungsregelung (PWR) . ...
8.1 Stromversorgungen und Versorgungsbereiche . ...
8.1.1 Unabhängige analoge Peripherieversorgung . ...
8.1.2 Unabhängige E/A-Versorgungsschiene . ...
8.1.3 Unabhängige Versorgung der USB-Transceiver . ...
8.1.4 Batterie-Backup-Domäne . ...
8.2 Systemversorgungsspannungtage-Verordnung . ...
8.2.1 VoltagDer Regler . ...
8.2.2 Eingebetteter SMPS-Abwärtswandler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267
8.2.3 Stromversorgungsschema für SMPS-Abwärtswandler . . . . . . . . . . . . . . . . . . 268
8.2.4 SMPS-Abwärtswandler im Vergleich zum Energiesparmodus . . . . . . . . . . . . . . . . 269
8.2.5 Dynamische LautstärketagSkalierungsverwaltung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 270
8.2.6 VDD12-Domäne und externes SMPS . ...
8.3 Überwachung der Stromversorgung . ...
8.3.1
Power-On-Reset (POR) / Power-Down-Reset (PDR) / Brown-Out-Reset (BOR) . ...
8.3.2 Programmierbare Lautstärketage-Detektor (PVD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 274
8.3.3 Periphere LautstärketagE-Überwachung (PVM) . . . . . . . . . . . . . . . . . . . . . . . . . . 275
8.3.4 Oberes Volumentage-Schwellenwertüberwachung . ...
8.3.5 Temperaturschwellenüberwachung . ...
8.4 Energieverwaltung . ...
8.4.1 Leistungsmodi . ...
8.4.2 Run-Modus . ...
8.4.3 Betriebsart mit geringer Leistungsaufnahme (LP-Betrieb) . ...
8.4.4 Energiesparmodi . ...
8.4.5 Ruhemodus . ...
8.4.6 Energiesparmodus (LP-Sleep) . ...
8.4.7 Stopp-0-Modus . ...
8.4.8 Stopp-1-Modus . ...
8.4.9 Stopp-2-Modus . ...
8.4.10 Standby-Modus . ...
8.4.11 Shutdown-Modus . ...
8.4.12 Automatisches Aufwachen aus dem Energiesparmodus . ...
8.5 PWR TrustZone-Sicherheit . ...
8.5.1 PWR – Privilegierte und unprivilegierte Modi . ...
8.6 PWR-Register . ...
8/2187
RM0438 Rev 8
RM0438
Inhalt
8.6.1 8.6.2 8.6.3 8.6.4 8.6.5 8.6.6 8.6.7 8.6.8 8.6.9 8.6.10 8.6.11 8.6.12 8.6.13 8.6.14 8.6.15 8.6.16 8.6.17 8.6.18 8.6.19 8.6.20 8.6.21 8.6.22 8.6.23 8.6.24 8.6.25 8.6.26
Leistungssteuerungsregister 1 (PWR_CR1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 299 Leistungssteuerungsregister 2 (PWR_CR2) . ... . . . . . . . . 300 Stromversorgungsstatusregister 3 (PWR_SR3) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 301 Stromversorgungsstatusregister 4 (PWR_SR4) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 303 Stromversorgungsstatus-Löschregister (PWR_SCR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 Pull-Up-Steuerregister für Stromversorgungsport A (PWR_PUCRA) . . . . . . . . . . . . . . . . 1 Pulldown-Steuerregister für Stromanschluss A (PWR_PDCRA) . . . . . . . . . . . . 304 Pullup-Steuerregister für Stromanschluss B (PWR_PUCRB) . . . . . . . . . . . . . . 2 Pulldown-Steuerregister für Stromanschluss B (PWR_PDCRB) . . . . . . . . . . . . 2 Pullup-Steuerregister für Stromanschluss C (PWR_PUCRC) . . . . . . . . . . . . 306 Pulldown-Steuerregister für Stromanschluss C (PWR_PDCRC) . . . . . . . . . . . 307 Pullup-Steuerregister für Stromanschluss D (PWR_PUCRD) . . . . . . . . . . . . . 308 Pulldown-Steuerregister für Stromanschluss D (PWR_PDCRD) . . . . . . . . . . . . 308 Pullup-Steuerregister für Stromanschluss E (PWR_PUCRE) . . . . . . . . . . . . . . . 309 Pulldown-Steuerregister für Stromanschluss E (PWR_PDCRE) . . . . . . . . . . . . 310 Pullup-Steuerregister für Stromanschluss F (PWR_PUCRF) . . . . . . . . . . . . . . 310 Pulldown-Steuerregister für Stromanschluss F (PWR_PDCRF) . . . . . . . . . . . . 311 Pull-Up-Steuerregister für Power Port G (PWR_PUCRG) . . . . . . . . . . . . . . 311 Pull-Down-Steuerregister für Power Port G (PWR_PDCRG) . . . . . . . . . . . . 312 Pull-Up-Steuerregister für Power Port H (PWR_PUCRH) . . . . . . . . . . . . . . 313 Pull-Down-Steuerregister für Power Port H (PWR_PDCRH) . . . . . . . . . . . . 313 Sichere Power-Konfigurationsregister (PWR_SECCFGR) . . . . . . . . . . . . 314 Konfigurationsregister für Power-Berechtigungen (PWR_PRIVCFGR) . . . . . . . . . . 314 PWR-Registerzuordnung und Werte zurücksetzen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 315
9
Reset und Taktsteuerung (RCC) . ...
9.1 Zurücksetzen . ...
9.1.1 Spannungsreset . ...
9.1.2 Systemrücksetzung . ...
9.1.3 Zurücksetzen der Backup-Domäne . ...
9.2 RCC-Pins und interne Signale . ...
9.3 Uhren . ...
9.3.1 HSE-Uhr . ...
9.3.2 HSI16-Takt . ...
9.3.3 MSI-Takt . ...
RM0438 Rev 8
9/2187
54
Inhalt
RM0438
9.3.4 HSI48-Takt . ... . ... . . . . . . . . . . . . . . . . . . . . . . 332 9.3.5 Auswahl des Systemtakts (SYSCLK) . ...tage-Skalierung . . . . . . . . . . . . . . . . . . . . . . 335 9.3.11 Taktsicherheitssystem (CSS) . ... . ... . . . . . . . . . . . . . . . . . . . 335 9.3.12 Watchdog-Uhr . ... 335 9.3.13 Interne/externe Taktmessung mit TIM336/TIM9.3.14/TIM336 . . . . . 9.3.15 336 Peripherietakt-Freigaberegister
(RCC_AHBxENR, RCC_APBxENRy) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 340
9.4 Energiesparmodi . ... 340 9.5 RCC-Interrupts . ...
9.8.1 RCC-Taktsteuerregister (RCC_CR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 345 9.8.2 Kalibrierungsregister für interne RCC-Taktquellen (RCC_ICSCR) . . . . . . . . 348 9.8.3 RCC-Taktkonfigurationsregister (RCC_CFGR) . . . . . . . . . . . . . . . . . . . . 349 9.8.4 RCC-PLL-Konfigurationsregister (RCC_PLLCFGR) . . . . . . . . . . . . . . . . . . 352 9.8.5 RCC-PLLSAI1-Konfigurationsregister (RCC_PLLSAI1CFGR) . . . . . . . . 355 9.8.6 RCC PLLSAI2-Konfigurationsregister (RCC_PLLSAI2CFGR) . . . . . . . . 358 9.8.7 RCC-Takt-Interrupt-Aktivierungsregister (RCC_CIER) . . . . . . . . . . . . . . . . . . . 360 9.8.8 RCC-Takt-Interrupt-Flag-Register (RCC_CIFR) . . . . . . . . . . . . . . . . . . . . 361 9.8.9 RCC-Takt-Interrupt-Löschregister (RCC_CICR) . . . . . . . . . . . . . . . . . . . . 363 9.8.10 RCC AHB1 Peripherie-Reset-Register (RCC_AHB1RSTR) . . . . . . . . . . . 364 9.8.11 RCC AHB2 Peripherie-Reset-Register (RCC_AHB2RSTR) . . . . . . . . . . . 365 9.8.12 RCC AHB3 Peripherie-Reset-Register (RCC_AHB3RSTR) . . . . . . . . . . . 367 9.8.13 RCC APB1 Peripherie-Reset-Register 1 (RCC_APB1RSTR1) . . . . . . . . . 368 9.8.14 RCC APB1 Peripherie-Reset-Register 2 (RCC_APB1RSTR2) . . . . . . . . . 370 9.8.15 RCC APB2 Peripherie-Reset-Register (RCC_APB2RSTR) . . . . . . . . . . . . 371
10/2187
RM0438 Rev 8
RM0438
Inhalt
9.8.16 9.8.17 9.8.18 9.8.19 9.8.20 9.8.21 9.8.22
9.8.23
9.8.24
9.8.25
9.8.26
9.8.27
9.8.28
9.8.29 9.8.30 9.8.31 9.8.32
9.8.33 9.8.34 9.8.35 9.8.36 9.8.37 9.8.38 9.8.39 9.8.40 9.8.41 9.8.42
RCC AHB1 Peripherietakt-Aktivierungsregister (RCC_AHB1ENR) . . . . . 373 RCC AHB2 Peripherietakt-Aktivierungsregister (RCC_AHB2ENR) . . . . . 374 RCC AHB3 Peripherietakt-Aktivierungsregister (RCC_AHB3ENR) . . . . . . 376
RCC APB1 Peripherietakt-Aktivierungsregister 1 (RCC_APB1ENR1) . . . 377 RCC APB1 Peripherietakt-Aktivierungsregister 2 (RCC_APB1ENR2) . . . 379
RCC APB2 Peripherietakt aktivieren Register (RCC_APB2ENR) . . . . . 381 RCC AHB1 Peripherietakt aktivieren im Schlaf- und Stoppmodus Register (RCC_AHB1SMENR) . ...
RCC AHB3-Peripherietakte werden im Register „Schlaf- und Stoppmodus“ aktiviert (RCC_AHB3SMENR) . ... . . . . . . . . . . . . . . . . . . . . . . 386
RCC APB2-Peripherietakte werden im Register „Schlaf- und Stoppmodus aktiviert“ (RCC_APB2SMENR) . ... . . . 391
RCC-Steuer-/Statusregister (RCC_CSR) . . . . . . . . . . . . . . . . . . . . . . . . . . . 398 RCC-Taktwiederherstellungs-RC-Register (RCC_CRRCR) . . . . . . . . . . . . . . . . . . . . . . . . 400 Unabhängiges Taktkonfigurationsregister 2 für RCC-Peripheriegeräte (RCC_CCIPR2) . ...
OCTOSPI-Verzögerungskonfigurationsregister (RCC_DLYCFGR) . . . . . . . . . . 402 RCC-Sicherheitskonfigurationsregister (RCC_SECCFGR) . . . . . . . . . . . . . . . 403 RCC-Sicherheitsstatusregister (RCC_SECSR) . . . . . . . . . . . . . . . . . . . . . . . 405
RCC AHB1 Sicherheitsstatusregister (RCC_AHB1SECSR) . . . . . . . . . . . 407 RCC AHB2 Sicherheitsstatusregister (RCC_AHB2SECSR) . . . . . . . . . . . 408 RCC AHB3 Sicherheitsstatusregister (RCC_AHB3SECSR) . . . . . . . . . . . 410
RCC APB1 Sicherheitsstatusregister 1 (RCC_APB1SECSR1) . . . . . . . . 411 RCC APB1 Sicherheitsstatusregister 2 (RCC_APB1SECSR2) . . . . . . . . 414 RCC APB2 Sicherheitsstatusregister (RCC_APB2SECSR) . . . . . . . . . . . 415
RCC-Registerkarte . ...
10
Taktrückgewinnungssystem (CRS) . ...
10.1 CRS-Einführung . ...
10.2 Hauptfunktionen des CRS . ...
RM0438 Rev 8
11/2187
54
Inhalt
RM0438
10.3 10.4
10.5 10.6 10.7
CRS-Implementierung . ...
10.4.1 CRS-Blockdiagramm . ... . . . . . . . . . . . . . 425 10.4.2 Frequenzfehlermessung . ...
CRS in Energiesparmodi . ... . . . . . . . . . . . . . . . . . . 429
10.7.1 CRS-Steuerregister (CRS_CR) . ... . . . . . . . . . . . . . 429 10.7.2 CRS-Registerkarte . ...
11
Allgemeine E/As (GPIO) . ...
11.1 Einleitung . ...
11.2 GPIO-Hauptfunktionen . ...
11.3 GPIO-Funktionsbeschreibung . ...
11.3.1 Allgemeine E/A (GPIO) . ...
11.3.2 Multiplexer und Mapping für alternative Funktionen der E/A-Pins . . . . . . . . . . . . . . . . . . 438
11.3.3 E/A-Port-Steuerregister . ...
11.3.4 E/A-Port-Datenregister . ...
11.3.5 Bitweise Verarbeitung von E/A-Daten . ...
11.3.6 GPIO-Sperrmechanismus . ...
11.3.7 E/A-Alternativfunktion Eingang/Ausgang . ...
11.3.8 Externe Interrupt-/Wakeup-Leitungen . ...
11.3.9 Eingangskonfiguration . ...
11.3.10 Ausgangskonfiguration . ...
11.3.11 Alternative Funktionskonfiguration . ...
11.3.12 Analoge Konfiguration . ...
11.3.13 Verwenden der HSE- oder LSE-Oszillatorpins als GPIOs . . . . . . . . . . . . . . . . . . . . . 443
11.3.14 Verwenden der GPIO-Pins im RTC-Versorgungsbereich . . . . . . . . . . . . . . . . . . . . . 443
11.3.15 PH3 als GPIO verwenden . ...
12/2187
RM0438 Rev 8
RM0438
Inhalt
11.4 11.5 11.6
TrustZone-Sicherheit . ...
Privilegierte und nicht privilegierte Modi . ...
GPIO-Register . ...
11.6.1 GPIO-Port-Modusregister (GPIOx_MODER) (x =A bis H) . ...
11.6.2 GPIO-Port-Ausgabetypregister (GPIOx_OTYPER) (x = A bis H) . ...
11.6.3 GPIO-Port-Ausgangsgeschwindigkeitsregister (GPIOx_OSPEEDR) (x = A bis H) . ...
11.6.4 GPIO-Port-Pullup-/Pulldown-Register (GPIOx_PUPDR) (x = A bis H) . ...
11.6.5 GPIO-Port-Eingangsdatenregister (GPIOx_IDR) (x = A bis H) . ...
11.6.6 GPIO-Port-Ausgangsdatenregister (GPIOx_ODR) (x = A bis H) . ...
11.6.7 GPIO-Port-Bit-Setz-/Rücksetzregister (GPIOx_BSRR) (x = A bis H) . ...
11.6.8 GPIO-Port-Konfigurationssperrregister (GPIOx_LCKR) (x = A bis H) . ...
11.6.9 GPIO-Alternativfunktion, unteres Register (GPIOx_AFRL) (x = A bis H) . ...
11.6.10 GPIO-Alternativfunktion, High-Register (GPIOx_AFRH) (x = A bis H) . ...
11.6.11 GPIO-Port-Bit-Reset-Register (GPIOx_BRR) (x = A bis H) . . . . . . . . . . . . . . 452
11.6.12 GPIO-Sicheres Konfigurationsregister (GPIOx_SECCFGR) (x = A bis H) . 452
11.6.13 GPIO-Registerzuordnung . ...
12
Systemkonfigurationscontroller (SYSCFG) . . . . . . . . . . . . . . . . . . . . . . . . . 456
12.1 Hauptfunktionen von SYSCFG . ...
12.2 SYSCFG TrustZone-Sicherheit und -Berechtigungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 456
12.3 SYSCFG-Register . ...
12.3.1 Sicheres SYSCFG-Konfigurationsregister (SYSCFG_SECCFGR) . . . . . 458
12.3.2 SYSCFG-Konfigurationsregister 1 (SYSCFG_CFGR1) . . . . . . . . . . . . . . . 459
12.3.3 FPU-Interruptmaskenregister (SYSCFG_FPUIMR) . . . . . . . . . . . . . . . . . . . . 461
12.3.4 SYSCFG CPU-Register für nicht sichere Sperren (SYSCFG_CNSLCKR) . . . . . 461
12.3.5 SYSCFG CPU-Sicherheitssperrregister (SYSCFG_CSLOCKR) . . . . . . . . . 462
12.3.6 SYSCFG-Konfigurationsregister 2 (SYSCFG_CFGR2) . . . . . . . . . . . . . . . 463
12.3.7 SYSCFG SRAM2-Steuer- und Statusregister (SYSCFG_SCSR) . . . . 464
12.3.8 SYSCFG SRAM2-Schlüsselregister (SYSCFG_SKR) . . . . . . . . . . . . . . . . . . . . . 465
RM0438 Rev 8
13/2187
54
Inhalt
RM0438
12.3.9 SYSCFG SRAM2 Schreibschutzregister (SYSCFG_SWPR) . . . . . . 465 12.3.10 SYSCFG SRAM2 Schreibschutzregister 2 (SYSCFG_SWPR2) . . . 466 12.3.11 SYSCFG RSS-Befehlsregister (SYSCFG_RSSCMDR) . . . . . . . . . . 466 12.3.12 SYSCFG-Registerzuordnung . ...
13
Peripherie-Verbindungsmatrix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 469
13.1 Einleitung . ...
13.2 Verbindungsübersicht . ...
13.3 Verbindungsdetails . ...
13.3.1 Vom Timer (TIM1/TIM2/TIM3/TIM4/TIM5/TIM8/TIM15/TIM16/TIM17) zum Timer (TIM1/TIM2/TIM3/TIM4/TIM5/TIM8/TIM15) . . . . . . . . . . . . . . . . . . . 470
13.3.2 Vom Timer (TIM1/TIM2/TIM3/TIM4/TIM6/TIM8/TIM15) und EXTI zum ADC (ADC1/ADC2) . ...
13.3.3 Von ADC1/ADC2 zum Timer (TIM1/TIM8) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 471
13.3.4 Vom Timer (TIM2/TIM4/TIM5/TIM6/TIM7/TIM8) und EXTI zum DAC (DAC1/DAC2) . ...
13.3.5 Vom Timer (TIM1/TIM3/TIM4/TIM6/TIM7/TIM8/TIM16/LPTIM1) und EXTI zu DFSDM1 . ...
13.3.6 Von DFSDM1 zum Timer (TIM1/TIM8/TIM15/TIM16/TIM17) . . . . . . . . . . 473
13.3.7 Von HSE, LSE, LSI, MSI, MCO, RTC zum Timer (TIM2/TIM15/TIM16/TIM17) . ...
13.3.8 Von RTC, COMP1, COMP2 zum Low-Power-Timer (LPTIM1/LPTIM2/LPTIM3) . ...
13.3.9 Vom Timer (TIM1/TIM2/TIM3/TIM8/TIM15) zu den Komparatoren (COMP1/COMP2) . ...
13.3.10 Von ADC (ADC1) zu ADC (ADC2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 474
13.3.11 Von USB zum Timer (TIM2) . ...
13.3.12 Von der internen analogen Quelle zum ADC (ADC1/ADC2) und OPAMP (OPAMP1/OPAM2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 475
13.3.13 Von Komparatoren (COMP1/COMP2) zu Timern (TIM1/TIM2/TIM3/TIM8/TIM15/TIM16/TIM17) . . . . . . . . . . . . . . . . . . . . . . . 475
13.3.14 Von Systemfehlern zu Timern (TIM1/TIM8/TIM15/TIM16/TIM17) . . . . 476
13.3.15 Von Zeitgebern (TIM16/TIM17) zu IRTIM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 476
13.3.16 Von ADC (ADC1/ADC2) zu DFSDM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 477
14
Controller für direkten Speicherzugriff (DMA) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 478
14.1 Einleitung . ...
14.2 DMA-Hauptfunktionen . ...
14.3 DMA-Implementierung . ...
14/2187
RM0438 Rev 8
RM0438
Inhalt
14.4
14.5 14.6
14.3.1 DMA1 und DMA2 . ...
DMA-Funktionsbeschreibung . ...
14.4.1 DMA-Blockdiagramm . ... . . . . . . . . . . . . . . . 480 14.4.2 DMA-Schiedsgerichtsbarkeit . ... . . . . . . . . . . . . . . . . . . . . . . . . . . 481 14.4.3 DMA-Fehlerverwaltung . ...
DMA-Interrupts . ...
14.6.1 DMA-Interrupt-Statusregister (DMA_ISR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 490 14.6.2 DMA-Interrupt-Flag-Löschregister (DMA_IFCR) . ... 494 14.6.3 DMA-Kanal x Speicher 495 Adressregister (DMA_CM14.6.4ARx) . . . . . . . 500 14.6.5 DMA-Kanal x Speicher 501 Adressregister (DMA_CM14.6.6ARx) . . . . . . . . 0 0 DMA-Registerzuordnung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 501
15
DMA-Anforderungsmultiplexer (DMAMUX) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 506
15.1 Einleitung . ...
15.2 Hauptfunktionen von DMAMUX . ...
15.3 DMAMUX-Implementierung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 507
15.3.1 DMAMUX-Instanziierung . ...
15.3.2 DMAMUX-Zuordnung . ...
15.4 Funktionsbeschreibung von DMAMUX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .511
15.4.1 DMAMUX-Blockdiagramm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 511
15.4.2 DMAMUX-Signale . ...
15.4.3 DMAMUX-Kanäle . ...
15.4.4 Sichere/nicht sichere DMAMUX-Kanäle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 513
15.4.5 DMAMUX privilegierte / nicht privilegierte Kanäle . . . . . . . . . . . . . . . . . . . . . . . 513
15.4.6 DMAMUX-Anforderungsleitungsmultiplexer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 513
15.4.7 DMAMUX-Anforderungsgenerator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 516
15.5 DMAMUX-Interrupts . ...
RM0438 Rev 8
15/2187
54
Inhalt
RM0438
15.6
DMAMUX-Register . ...
15.6.1 DMAMUX-Anforderungsleitungs-Multiplexer-Kanal x-Konfigurationsregister (DMAMUX_CxCR) . ...
15.6.2 DMAMUX-Anforderungsleitungs-Multiplexer-Interrupt-Kanal-Statusregister (DMAMUX_CSR) . ...
15.6.3 DMAMUX-Anforderungsleitungs-Multiplexer-Interruptkanal, Flag-Register löschen (DMAMUX_CCFR) . ...
15.6.4 Konfigurationsregister für Kanal x des DMAMUX-Anforderungsgenerators (DMAMUX_RGxCR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 521
15.6.5 DMAMUX-Anforderungsgenerator-Interrupt-Statusregister (DMAMUX_RGSR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 522
15.6.6 DMAMUX-Anforderungsgenerator-Interrupt löscht Flag-Register (DMAMUX_RGCFR) . ...
15.6.7 DMAMUX-Registerzuordnung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 524
16
Verschachtelter Vektor-Interrupt-Controller (NVIC) . . . . . . . . . . . . . . . . . . . . . . . . . 528
16.1 Hauptfunktionen von NVIC . ...
16.2 SysTick-Kalibrierungswertregister . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 528
16.3 Interrupt- und Ausnahmevektoren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 529
17
Erweiterter Interrupt- und Ereigniscontroller (EXTI) . . . . . . . . . . . . . . . . . . . 533
17.1 Hauptfunktionen von EXTI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 533
17.2 EXTI-Blockdiagramm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 534
17.2.1 EXTI-Verbindungen zwischen Peripheriegeräten und CPU . . . . . . . . . . . . . . . . . . . 535
17.2.2 EXTI-Interrupt-/Ereigniszuordnung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 535
17.3 EXTI-Funktionsbeschreibung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 537
17.3.1 Konfigurierbarer EXTI-Ereigniseingangswecker . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 537
17.3.2 Aktivierung des direkten EXTI-Ereigniseingangs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 539
17.3.3 EXTI-Mux-Auswahl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 539
17.4 EXTI-Funktionsverhalten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 540
17.5 EXTI-Ereignisschutz . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 541
17.5.1 EXTI-Sicherheitsschutz . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 541
17.5.2 EXTI-Privilegschutz. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 542
17.6 EXTI-Register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 543
17.6.1 17.6.2 17.6.3 17.6.4
EXTI-Auswahlregister für steigende Trigger (EXTI_RTSR1). . . . . . . . . . . . . . 543 EXTI fallendes Trigger-Auswahlregister (EXTI_FTSR1) . . . . . . . . . . . . . 544 EXTI-Software-Interrupt-Ereignisregister (EXTI_SWIER1) . . . . . . . . . . . 545 EXTI steigende Flanke ausstehendes Register (EXTI_RPR1) . . . . . . . . . . . . . . . . 546
16/2187
RM0438 Rev 8
RM0438
Inhalt
17.6.5 EXTI-Register für fallende Flanke (EXTI_FPR1) . . . . . . . . . . . . . . . . 547 17.6.6 EXTI-Sicherheitskonfigurationsregister (EXTI_SECCFGR1) . . . . . . . . . . 548 17.6.7 EXTI-Berechtigungskonfigurationsregister (EXTI_PRIVCFGR1) . . . . . . . . . 549 17.6.8 EXTI-Auswahlregister für steigende Trigger (EXTI_RTSR2) . . . . . . . . . . . . . . 549 17.6.9 EXTI fallendes Trigger-Auswahlregister (EXTI_FTSR2) . . . . . . . . . . . . . 550 17.6.10 EXTI-Software-Interrupt-Ereignisregister (EXTI_SWIER2) . . . . . . . . . . . 551 17.6.11 Register für steigende Flanke von EXTI (EXTI_RPR2) . . . . . . . . . . . . . . . . 551 17.6.12 Register für fallende Flanke von EXTI (EXTI_FPR2) . . . . . . . . . . . . . . . . 552 17.6.13 EXTI-Sicherheitsaktivierungsregister (EXTI_SECCFGR2) . . . . . . . . . . . . . . . 553 17.6.14 EXTI-Privileg-Aktivierungsregister (EXTI_PRIVCFGR2) . . . . . . . . . . . . . . 553 17.6.15 EXTI externes Interrupt-Auswahlregister (EXTI_EXTICRn) . . . . . . . . 554 17.6.16 EXTI-Sperrregister (EXTI_LOCKR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 557 17.6.17 EXTI CPU-Wakeup mit Interrupt-Maskenregister (EXTI_IMR1) . . . . . . . 557 17.6.18 EXTI CPU-Wakeup mit Ereignismaskenregister (EXTI_EMR1) . . . . . . . . 558 17.6.19 EXTI CPU-Wakeup mit Interrupt-Maskenregister (EXTI_IMR2) . . . . . . . 559 17.6.20 EXTI CPU-Wakeup mit Ereignismaskenregister (EXTI_EMR2) . . . . . . . . 559 17.6.21 EXTI-Registerzuordnung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 560
18
Berechnungseinheit für zyklische Redundanzprüfungen (CRC) . . . . . . . . . . . . . . . . . . 563
18.1 CRC-Einführung . ...
18.2 CRC-Hauptmerkmale . ...
18.3 CRC-Funktionsbeschreibung . ...
18.3.1 CRC-Blockdiagramm . ...
18.3.2 CRC-interne Signale . ...
18.3.3 CRC-Operation . ...
18.4 CRC-Register . ...
18.4.1 18.4.2 18.4.3 18.4.4
CRC-Datenregister (CRC_DR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 566 CRC-unabhängiges Datenregister (CRC_IDR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 566 CRC-Steuerregister (CRC_CR) . ... . . . . . . . . . . . . . . . . . . . . 567
18.4.5 CRC-Polynom (CRC_POL) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 568
18.4.6 CRC-Registerkarte . ...
19
Flexibler statischer Speichercontroller (FSMC) . . . . . . . . . . . . . . . . . . . . . . . . . . 570
19.1 FMC-Einführung . ...
19.2 FMC-Hauptfunktionen . ...
RM0438 Rev 8
17/2187
54
Inhalt
RM0438
19.3 19.4 19.5 19.6
19.7
FMC-Blockdiagramm . ...
19.4.1 Unterstützte Speicher und Transaktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 572
Adresszuordnung externer Geräte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 573
19.5.1 NOR/PSRAM-Adresszuordnung . ...
NOR-Flash/PSRAM-Controller . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 575
19.6.1 Signale der externen Speicherschnittstelle . ... . . . . . . . . . . 576 19.6.2 Synchrone Transaktionen . ...
NAND-Flash-Controller . ...
19.7.1 Signale der externen Speicherschnittstelle . ... . . . . . . . . . . . . 613 19.7.2 NAND-Flash-Prewait-Funktionalität . ...
im NAND-Flash-Speicher . ... . . 617
20
Octo-SPI-Schnittstelle (OCTOSPI). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 626
20.1 Einführung in OCTOSPI. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 626
20.2 Hauptfunktionen von OCTOSPI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 626
20.3 OCTOSPI-Implementierung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 627
20.4 OCTOSPI-Funktionsbeschreibung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 628
20.4.1 OCTOSPI-Blockdiagramm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 628
20.4.2 OCTOSPI-Pins und interne Signale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 629
20.4.3 OCTOSPI-Schnittstelle zu Speichermodi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 630
20.4.4 OCTOSPI-Protokoll für reguläre Befehle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 630
20.4.5 OCTOSPI-Signalschnittstelle für reguläres Befehlsprotokoll . . . . . . . . . . . . . . . 634
20.4.6 HyperBus-Protokoll . ...
20.4.7 Besondere Merkmale . ...
18/2187
RM0438 Rev 8
RM0438
Inhalt
20.5 20.6 20.7
20.4.8 Einführung in den OCTOSPI-Betriebsmodus. . . . . . . . . . . . . . . . . . . . . . . . 642 20.4.9 OCTOSPI indirekter Modus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 642 20.4.10 OCTOSPI automatischer Statusabfragemodus . . . . . . . . . . . . . . . . . . . . . . 644 20.4.11 OCTOSPI-Speicherzuordnungsmodus . . . . . . . . . . . . . . . . . . . . . . . . . . . . 645 20.4.12 Einführung in die OCTOSPI-Konfiguration. . . . . . . . . . . . . . . . . . . . . . . . . . 646 20.4.13 OCTOSPI-Systemkonfiguration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 646 20.4.14 OCTOSPI-Gerätekonfiguration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 646 20.4.15 Konfiguration des regulären OCTOSPI-Befehlsmodus. . . . . . . . . . . . . . . . 649 20.4.16 OCTOSPI HyperBus-Protokollkonfiguration . . . . . . . . . . . . . . . . . . . . . 651 20.4.17 OCTOSPI Fehlermanagement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 652 20.4.18 OCTOSPI BUSY und ABORT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 653 20.4.19 OCTOSPI Neukonfiguration oder Deaktivierung. . . . . . . . . . . . . . . . . . . . . . 653 20.4.20 NCS-Verhalten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 653
Adressausrichtung und Datennummer. . . . . . . . . . . . . . . . . . . . . . . . . . . 655 OCTOSPI-Interrupts. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 656 OCTOSPI-Register. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 657
20.7.1 OCTOSPI-Steuerregister (OCTOSPI_CR) . . . . . . . . . . . . . . . . . . . . . 657 20.7.2 OCTOSPI-Gerätekonfigurationsregister 1 (OCTOSPI_DCR1) . . . . . . 659 20.7.3 OCTOSPI-Gerätekonfigurationsregister 2 (OCTOSPI_DCR2) . . . . . . 661 20.7.4 OCTOSPI-Gerätekonfigurationsregister 3 (OCTOSPI_DCR3) . . . . . . 662 20.7.5 OCTOSPI-Gerätekonfigurationsregister 4 (OCTOSPI_DCR4) . . . . . . 662 20.7.6 OCTOSPI-Statusregister (OCTOSPI_SR) . . . . . . . . . . . . . . . . . . . . . . 663 20.7.7 OCTOSPI-Flag-Löschregister (OCTOSPI_FCR) . . . . . . . . . . . . . . . . . . 664 20.7.8 OCTOSPI-Datenlängenregister (OCTOSPI_DLR) . . . . . . . . . . . . . . . . 664 20.7.9 OCTOSPI-Adressregister (OCTOSPI_AR) . . . . . . . . . . . . . . . . . . . . 665 20.7.10 OCTOSPI-Datenregister (OCTOSPI_DR) . . . . . . . . . . . . . . . . . . . . . . . 665 20.7.11 OCTOSPI-Polling-Statusmaskenregister (OCTOSPI_PSMKR) . . . . . . . 666 20.7.12 OCTOSPI-Polling-Status-Match-Register (OCTOSPI_PSMAR) . . . . . . . 667 20.7.13 OCTOSPI-Abfrageintervallregister (OCTOSPI_PIR) . . . . . . . . . . . . . . 667 20.7.14 OCTOSPI-Kommunikationskonfigurationsregister (OCTOSPI_CCR) . . 667 20.7.15 OCTOSPI-Timing-Konfigurationsregister (OCTOSPI_TCR) . . . . . . . . . . 670 20.7.16 OCTOSPI-Befehlsregister (OCTOSPI_IR) . . . . . . . . . . . . . . . . . . . 670 20.7.17 OCTOSPI-Alternate-Byte-Register (OCTOSPI_ABR) . . . . . . . . . . . . . 671 20.7.18 OCTOSPI Low-Power-Timeout-Register (OCTOSPI_LPTR) . . . . . . . . . . 671 20.7.19 OCTOSPI Wrap-Kommunikationskonfigurationsregister
(OCTOSPI_WPCCR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 672 20.7.20 OCTOSPI-Wrap-Timing-Konfigurationsregister (OCTOSPI_WPTCR) . . 674
RM0438 Rev 8
19/2187
54
Inhalt
RM0438
20.7.21 OCTOSPI-Wrap-Befehlsregister (OCTOSPI_WPIR) . . . . . . . . . . . . 674 20.7.22 OCTOSPI-Wrap-Alternative-Byte-Register (OCTOSPI_WPABR) . . . . . . 675 20.7.23 OCTOSPI schreibt Kommunikationskonfigurationsregister
(OCTOSPI_WCCR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 675 20.7.24 OCTOSPI schreibt Timing-Konfigurationsregister (OCTOSPI_WTCR). . . . 677 20.7.25 OCTOSPI-Schreibbefehlsregister (OCTOSPI_WIR) . . . . . . . . . . . . . 678 20.7.26 OCTOSPI schreibt alternatives Byte-Register (OCTOSPI_WABR). . . . . . . 678 20.7.27 OCTOSPI HyperBus-Latenzkonfigurationsregister
(OCTOSPI_HLCR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 679 20.7.28 OCTOSPI-Registerzuordnung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 679
21
Analog-Digital-Wandler (ADC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 683
21.1 ADC-Einführung . ...
21.2 ADC-Hauptfunktionen . ...
21.3 ADC-Implementierung . ...
21.4 ADC-Funktionsbeschreibung . ...
21.4.1 ADC-Blockdiagramm . ...
21.4.2 ADC-Pins und interne Signale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 687
21.4.3 ADC-Taktgeber . ...
21.4.4 ADC1/2-Konnektivität . ...
21.4.5 Slave-AHB-Schnittstelle . ...
21.4.6 ADC Deep-Power-Down-Modus (DEEPPWD) und ADC-Voltage-Regler (ADVREGEN) . ...
21.4.7 Single-Ended- und Differential-Eingangskanäle . . . . . . . . . . . . . . . . . . . . . . . 693
21.4.8 Kalibrierung (ADCAL, ADCALDIF, ADC_CALFACT) . . . . . . . . . . . . . . . . . . 693
21.4.9 ADC-Ein-Aus-Steuerung (ADEN, ADDIS, ADRDY) . . . . . . . . . . . . . . . . . . . . . . . . 696
21.4.10 Einschränkungen beim Schreiben der ADC-Steuerbits . . . . . . . . . . . . . . . . . . . . . . . 697
21.4.11 Kanalauswahl (ADC_SQRy, ADC_JSQR) . . . . . . . . . . . . . . . . . . . . . . . 698
21.4.12 Kanalweise programmierbare sampLaufzeit (SMPR1, SMPR2) . . . . . 699
21.4.13 Einzelkonvertierungsmodus (CONT = 0) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 699
21.4.14 Kontinuierlicher Konvertierungsmodus (CONT = 1) . . . . . . . . . . . . . . . . . . . . . . . . . 700
21.4.15 Konvertierungen starten (ADSTART, JADSTART) . . . . . . . . . . . . . . . . . . . . . . 701
21.4.16 ADC-Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 702
21.4.17 Stoppen einer laufenden Konvertierung (ADSTP, JADSTP) . . . . . . . . . . . . . . . . 702
21.4.18 Konvertierung auf externen Trigger und Triggerpolarität (EXTSEL, EXTEN, JEXTSEL, JEXTEN) . . . . . . . . . . . . . . . . . . . . . . . . . . . 704
21.4.19 Eingefügtes Kanalmanagement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 706
21.4.20 Diskontinuierlicher Modus (DISCEN, DISCNUM, JDISCEN) . . . . . . . . . . . . 708
20/2187
RM0438 Rev 8
RM0438
Inhalt
21.5 21.6 21.7
21.4.21 Warteschlange des Kontexts für eingefügte Konvertierungen . . . . . . . . . . . . . . . . . . . . . . . . . 709 21.4.22 Programmierbare Auflösung (RES) – Schneller Konvertierungsmodus . . . . . . . . . . . 717 21.4.23 Ende der Konvertierung, Ende von sampling-Phase (EOC, JEOC, EOSMP) . . 718 21.4.24 Ende der Konvertierungssequenz (EOS, JEOS) . . . . . . . . . . . . . . . . . . . . . . . . 718 21.4.25 Timing-Diagramme example (Einzel-/Dauerbetrieb,
Hardware-/Software-Trigger) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 719 21.4.26 Datenverwaltung . ... 721 21.4.27 Dynamische Energiesparfunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 726 21.4.28 Analogfenster-Watchdog (AWD727EN, JAWD21.4.29EN, AWD1SGL,
AWD1CH, AWD2CH, AWD3CH, AWD_HTx, AWD_LTx, AWDx). . . . . 732 21.4.30 Oversampler . ... . . . . . . . . . . . . . . . . . . . . 736 21.4.31 Überwachung der VBAT-Versorgung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 742 21.4.32 Überwachung der internentagReferenz . . . . . . . . . . . . . . . . . . . . . . . . . 758
ADC im Energiesparmodus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 759 ADC-Interrupts . ... . . . . . 760
21.7.1 ADC-Interrupt- und Statusregister (ADC_ISR) . . . . . . . . . . . . . . . . . . . . . . 761 21.7.2 ADC-Interrupt-Freigaberegister (ADC_IER) . . . . . . . . . . . . . . . . . . . . . . . . . . 763 21.7.3 ADC-Steuerregister (ADC_CR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 765 21.7.4 ADC-Konfigurationsregister (ADC_CFGR) . . . . . . . . . . . . . . . . . . . . . . . . . . . 768 21.7.5 ADC-Konfigurationsregister 2 (ADC_CFGR2) . . . . . . . . . . . . . . . . . . . . . . 772 21.7.6 ADC sampZeitregister 1 (ADC_SMPR1) . . . . . . . . . . . . . . . . . . . . . . . . 774 21.7.7 ADC sampZeitregister 2 (ADC_SMPR2) . . . . . . . . . . . . . . . . . . . . . . 775 21.7.8 ADC-Watchdog-Schwellenwertregister 1 (ADC_TR1) . . . . . . . . . . . . . . . . . . . . 776 21.7.9 ADC-Watchdog-Schwellenwertregister 2 (ADC_TR2) . . . . . . . . . . . . . . . . . . . 776 21.7.10 ADC-Watchdog-Schwellenwertregister 3 (ADC_TR3) . . . . . . . . . . . . . . . . . . 777 21.7.11 ADC-Regularsequenzregister 1 (ADC_SQR1) . . . . . . . . . . . . . . . . . . . 778 21.7.12 ADC-Regularsequenzregister 2 (ADC_SQR2) . . . . . . . . . . . . . . . . . . . . 779 21.7.13 ADC-Regularsequenzregister 3 (ADC_SQR3) . . . . . . . . . . . . . . . . . . . 780 21.7.14 ADC-Regularsequenzregister 4 (ADC_SQR4) . . . . . . . . . . . . . . . . . . . 781 21.7.15 ADC-Regulardatenregister (ADC_DR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 781 21.7.16 ADC-Injected-Sequenzregister (ADC_JSQR) . . . . . . . . . . . . . . . . . . . . . . . 782 21.7.17 ADC-Offset-y-Register (ADC_OFRy) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 784 21.7.18 ADC-Injected-Kanal-y-Datenregister (ADC_JDRy) . . . . . . . . . . . . . . . . . . 785
RM0438 Rev 8
21/2187
54
Inhalt
RM0438
21.8 21.9
21.7.19 ADC-Analog-Watchdog 2-Konfigurationsregister (ADC_AWD2CR) . . . . 785 21.7.20 ADC-Analog-Watchdog 3-Konfigurationsregister (ADC_AWD3CR) . . . . 786 21.7.21 ADC-Differentialmodus-Auswahlregister (ADC_DIFSEL) . . . . . . . . . . . 786 21.7.22 ADC-Kalibrierungsfaktoren (ADC_CALFACT) . . . . . . . . . . . . . . . . . . . . . . 787
Gemeinsame ADC-Register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 787
21.8.1 Gemeinsames ADC-Statusregister (ADC_CSR) . . . . . . . . . . . . . . . . . . . . . . . . 787 21.8.2 Gemeinsames ADC-Steuerregister (ADC_CCR) . . . . . . . . . . . . . . . . . . . . . . . . 789 21.8.3 Gemeinsames ADC-Standarddatenregister für Dualmodus (ADC_CDR) . . . . . . 792
ADC-Registerkarte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 792
22
Digital-Analog-Wandler (DAC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 796
22.1 DAC-Einführung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 796
22.2 Hauptfunktionen des DAC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 796
22.3 DAC-Implementierung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 797
22.4 DAC-Funktionsbeschreibung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 798
22.4.1 DAC-Blockdiagramm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 798
22.4.2 DAC-Kanal aktivieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 799
22.4.3 DAC-Datenformat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 799
22.4.4 DAC-Konvertierung . ...
22.4.5 DAC-Ausgangslautstärketage. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 801
22.4.6 DAC-Triggerauswahl . ...
22.4.7 DMA-Anfragen . ...
22.4.8 Geräuschentwicklung . ...
22.4.9 Dreieckwellenerzeugung . ...
22.4.10 DAC-Kanalmodi . ...
22.4.11 Kalibrierung des DAC-Kanalpuffers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 809
22.4.12 DAC-Kanalkonvertierungsmodi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 810
22.4.13 Dual-DAC-Kanalkonvertierungsmodi (sofern Dualkanäle verfügbar sind) . ...
22.5 DAC im Energiesparmodus . ...
22.6 DAC-Interrupts . ...
22.7 DAC-Register . ...
22.7.1 DAC-Steuerregister (DAC_CR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 816
22.7.2 DAC-Software-Triggerregister (DAC_SWTRGR) . . . . . . . . . . . . . . . . . . . . 820
22.7.3 1-Bit-Datenhalteregister für DAC-Kanal 12, rechtsbündig (DAC_DHR12R1) . ...
22/2187
RM0438 Rev 8
RM0438
Inhalt
22.7.4 1-Bit-Datenhalteregister für DAC-Kanal 12, linksbündig (DAC_DHR12L1) . ...
22.7.5 DAC Kanal 1 8-Bit rechtsbündiges Datenhalteregister (DAC_DHR8R1) . ...
22.7.6 DAC Kanal 2 12-Bit rechtsbündiges Datenhalteregister (DAC_DHR12R2) . ...
22.7.7 2-Bit-Datenhalteregister für DAC-Kanal 12, linksbündig (DAC_DHR12L2) . ...
22.7.8 DAC Kanal 2 8-Bit rechtsbündiges Datenhalteregister (DAC_DHR8R2) . ...
22.7.9 Duales DAC 12-Bit rechtsbündiges Datenhalteregister (DAC_DHR12RD) . ...
22.7.10 Duales DAC 12-Bit linksbündiges Datenhalteregister (DAC_DHR12LD) . ...
22.7.11 Duales DAC 8-Bit rechtsbündiges Datenhalteregister (DAC_DHR8RD) . ...
22.7.12 DAC Kanal 1 Datenausgaberegister (DAC_DOR1) . . . . . . . . . . . . . . . . . . . 825
22.7.13 DAC Kanal 2 Datenausgaberegister (DAC_DOR2) . . . . . . . . . . . . . . . . . . . 825
22.7.14 DAC-Statusregister (DAC_SR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 825
22.7.15 DAC-Kalibrierungssteuerregister (DAC_CCR) . . . . . . . . . . . . . . . . . . . . . . 827
22.7.16 DAC-Modus-Steuerregister (DAC_MCR) . . . . . . . . . . . . . . . . . . . . . . . . . . . 827
22.7.17 DAC Kanal1 sample und halte sample-Zeitregister (DAC_SHSR1) . ...
22.7.18 DAC Kanal2 sample und halte sample-Zeitregister (DAC_SHSR2) . ...
22.7.19 DAC sampLe- und Hold-Time-Register (DAC_SHHR) . . . . . . . . . . . . . . . . . 829
22.7.20 DAC sampDatei und Halteaktualisierungszeitregister (DAC_SHRR) . . . . . . . . . . 830
22.7.21 DAC-Registerkarte . ...
23
BandtagReferenzpuffer (VREFBUF) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 833
23.1 VREFBUF-Einführung . ...
23.2 Funktionsbeschreibung von VREFBUF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 833
23.3 VREFBUF-Trimmen . ...
23.4 VREFBUF-Register . ...
23.4.1 VREFBUF-Steuer- und Statusregister (VREFBUF_CSR) . . . . . . . . . . . . 835
23.4.2 VREFBUF-Kalibrierungssteuerregister (VREFBUF_CCR) . . . . . . . . . . . . 836
23.4.3 VREFBUF-Registerzuordnung . ...
24
Komparator (COMP) . ...
24.1 Einleitung . ...
RM0438 Rev 8
23/2187
54
Inhalt
RM0438
24.2 24.3
24.4 24.5 24.6
Hauptfunktionen von COMP . ...
24.3.1 COMP-Blockdiagramm . ... . . . 838 24.3.2 Komparator-LOCK-Mechanismus . ... . . . . . . . . . . . . . . . . . . . . . . 838 24.3.3 Komparator-Ausgangsausblendfunktion . ...
COMP-Energiesparmodi . ... . . . . . . . . . . . . 842
24.6.1 Komparator 1 Steuer- und Statusregister (COMP1_CSR) . . . . . . . . . . . 843 24.6.2 Komparator 2 Steuer- und Statusregister (COMP2_CSR) . . . . . . . . . . . . . 845 24.6.3 COMP-Registerzuordnung . ...
25
Betriebsbereit amplifier (OPAMP) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 849
25.1 Einleitung . ...
25.2 OPAMP Hauptmerkmale . ...
25.3 OPAMP Funktionsbeschreibung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 849
25.3.1 OPAMP Zurücksetzen und Uhren . ...
25.3.2 Erstkonfiguration . ...
25.3.3 Signalführung . ...
25.3.4 OPAMP Modi . ...
25.3.5 Kalibrierung . ...
25.4 OPAMP Energiesparmodi . ...
25.5 OPAMP Register . ...
25.5.1 OPAMP1 Steuer-/Statusregister (OPAMP1_CSR) . . . . . . . . . . . . . . . . . . . 857
25.5.2 OPAMP1 Offset-Trimmregister im Normalmodus (OPAMP1_OTR) . . 858
25.5.3 OPAMP1 Offset-Trimmregister im Low-Power-Modus (OPAMP1_LPOTR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 858
25.5.4 OPAMP2 Steuer-/Statusregister (OPAMP2_CRS) . . . . . . . . . . . . . . . . . . . 859
25.5.5 OPAMP2 Offset-Trimmregister im Normalmodus (OPAMP2_OTR) . . 860
25.5.6 OPAMP2 Offset-Trimmregister im Low-Power-Modus (OPAMP2_LPOTR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 860
25.5.7 OPAMP Registerkarte . ...
24/2187
RM0438 Rev 8
RM0438
Inhalt
26
Digitalfilter für Sigma-Delta-Modulatoren (DFSDM) . . . . . . . . . . . . . . . . . . 862
26.1 Einleitung . ...
26.2 Hauptfunktionen von DFSDM . ...
26.3 DFSDM-Implementierung . ...
26.4 Funktionsbeschreibung von DFSDM . ...
26.4.1 DFSDM-Blockdiagramm . ...
26.4.2 DFSDM-Pins und interne Signale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 866
26.4.3 DFSDM-Reset und Uhren . ...
26.4.4 Serielle Kanal-Transceiver . ...
26.4.5 Konfigurieren der seriellen Eingangsschnittstelle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 878
26.4.6 Parallele Dateneingänge . ...
26.4.7 Kanalauswahl . ...
26.4.8 Digitale Filterkonfiguration . ...
26.4.9 Integratoreinheit . ...
26.4.10 Analoger Watchdog . ...
26.4.11 Kurzschlussdetektor . ...
26.4.12 Extremwertdetektor . ...
26.4.13 Dateneinheitsblock . ...
26.4.14 Vorzeichenbehaftetes Datenformat . ...
26.4.15 Konvertierungen starten . ...
26.4.16 Kontinuierlicher und schneller kontinuierlicher Modus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 888
26.4.17 Priorität der Anfrage . ...
26.4.18 Leistungsoptimierung im Run-Modus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 890
26.5 DFSDM-Interrupts . ...
26.6 DFSDM-DMA-Übertragung . ...
26.7 DFSDM-Kanal-y-Register (y=0..3) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 892
26.7.1 DFSDM-Kanal y-Konfigurationsregister (DFSDM_CHyCFGR1) . . . . 892
26.7.2 DFSDM-Kanal y-Konfigurationsregister (DFSDM_CHyCFGR2) . . . . 894
26.7.3 DFSDM-Kanal y analoges Watchdog- und Kurzschlussdetektorregister (DFSDM_CHyAWSCDR) . ...
26.7.4 DFSDM-Kanal y-Watchdog-Filter-Datenregister (DFSDM_CHyWDATR) . ...
26.7.5 DFSDM-Kanal y-Dateneingaberegister (DFSDM_CHyDATINR) . . . . . . . 896
26.7.6 DFSDM-Kanal-Y-Verzögerungsregister (DFSDM_CHyDLYR) . . . . . . . . . . . . 897
26.8 DFSDM-Filter x Modulregister (x=0..3) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 898
26.8.1 DFSDM-Filter x Steuerregister 1 (DFSDM_FLTxCR1) . . . . . . . . . . . . . . 898
26.8.2 DFSDM-Filter x Steuerregister 2 (DFSDM_FLTxCR2) . . . . . . . . . . . . . . 901
RM0438 Rev 8
25/2187
54
Inhalt
RM0438
26.8.3 DFSDM-Filter x Interrupt- und Statusregister (DFSDM_FLTxISR) . . . . . 902
26.8.4 DFSDM-Filter x Interrupt-Flag-Löschregister (DFSDM_FLTxICR) . . . . . 904
26.8.5 DFSDM-Filter x eingefügtes Kanalgruppenauswahlregister (DFSDM_FLTxJCHGR) . ...
26.8.6 DFSDM-Filter x-Steuerregister (DFSDM_FLTxFCR) . . . . . . . . . . . . . . . . . 905
26.8.7 DFSDM-Filter x Datenregister für injizierte Gruppe (DFSDM_FLTxJDATAR) . ...
26.8.8 DFSDM-Filter x-Datenregister für den regulären Kanal (DFSDM_FLTxRDATAR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 907
26.8.9 DFSDM-Filter x analoges Watchdog-Oberschwellenregister (DFSDM_FLTxAWHTR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 908
26.8.10 DFSDM-Filter x analoges Watchdog-Register für niedrigen Schwellenwert (DFSDM_FLTxAWLTR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 908
26.8.11 DFSDM-Filter x analoges Watchdog-Statusregister (DFSDM_FLTxAWSR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 909
26.8.12 DFSDM-Filter x analoges Watchdog-Lösch-Flag-Register (DFSDM_FLTxAWCFR) . ...
26.8.13 DFSDM-Filter x Extremwertdetektor-Maximumregister (DFSDM_FLTxEXMAX) . ...
26.8.14 DFSDM-Filter x Extremwertdetektor-Minimumregister (DFSDM_FLTxEXMIN) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 911
26.8.15 DFSDM-Filter x Konvertierungstimerregister (DFSDM_FLTxCNVTIMR) . . 911
26.8.16 DFSDM-Registerkarte . ...
27
Berührungssensor-Controller (TSC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 920
27.1 Einleitung . ...
27.2 TSC-Hauptfunktionen . ...
27.3 TSC-Funktionsbeschreibung . ...
27.3.1 TSC-Blockdiagramm . ...
27.3.2 Oberflächenladungstransfererfassung überview . . . . . . . . . . . . . . . . . . . 921
27.3.3 Reset und Uhren . ...
27.3.4 Ladungstransfer-Erfassungssequenz . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 924
27.3.5 Spread-Spectrum-Funktion . ...
27.3.6 Max. Zählfehler . ...
27.3.7 SampAuswahl des Kondensator-E/A- und Kanal-E/A-Modus . . . . . . . . . . . . 926
27.3.8 Erfassungsmodus . ...
27.3.9 E/A-Hysterese und analoge Schaltersteuerung . . . . . . . . . . . . . . . . . . . . . . . . . . . 927
27.4 TSC-Energiesparmodi . ...
27.5 TSC-Unterbrechungen . ...
26/2187
RM0438 Rev 8
RM0438
Inhalt
27.6
TSC-Register . ...
27.6.1 TSC-Steuerregister (TSC_CR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 928 27.6.2 TSC-Interrupt-Aktivierungsregister (TSC_IER) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 931 27.6.3 TSC-Interrupt-Löschregister (TSC_ICR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 932 27.6.4 TSC-Interrupt-Statusregister (TSC_ISR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 932 27.6.5 TSC I/O-Hysterese-Steuerregister (TSC_IOHCR) . . . . . . . . . . . . . . . . . . . 933 27.6.6 TSC I/O-Analogschalter-Steuerregister
(TSC_IOASCR) . ...ampling-Steuerregister (TSC_IOSCR) . . . . . . . . . . . . . . . . . . 934 27.6.8 TSC-E/A-Kanal-Steuerregister (TSC_IOCCR) . . . . . . . . . . . . . . . . . . . . 934 27.6.9 TSC-E/A-Gruppen-Steuerstatusregister (TSC_IOGCSR) . . . . . . . . . . . . . . . 935 27.6.10 TSC-E/A-Gruppe x-Zählerregister (TSC_IOGxCR) . . . . . . . . . . . . . . . . . 935 27.6.11 TSC-Registerzuordnung . . . . . . . ...
28
Echter Zufallszahlengenerator (RNG) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 938
28.1 RNG-Einführung . ...
28.2 Hauptfunktionen des RNG . ...
28.3 Funktionsbeschreibung des Zufallszahlengenerators . ...
28.3.1 RNG-Blockdiagramm . ...
28.3.2 Interne RNG-Signale . ...
28.3.3 Generierung von Zufallszahlen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 939
28.3.4 RNG-Initialisierung . ...
28.3.5 RNG-Betrieb . ...
28.3.6 RNG-Taktung . ...
28.3.7 Fehlermanagement . ...
28.3.8 RNG-Niedrigstromverbrauch . ...
28.4 RNG-Unterbrechungen . ...
28.5 RNG-Verarbeitungszeit . ...
28.6 Validierung der RNG-Entropiequelle . ...
28.6.1 Einleitung . ...
28.6.2 Validierungsbedingungen . ...
28.6.3 Datenerhebung . ...
28.7 RNG-Register . ...
28.7.1 RNG-Steuerregister (RNG_CR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 948
28.7.2 RNG-Statusregister (RNG_SR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 950
28.7.3 RNG-Datenregister (RNG_DR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 951
28.7.4 RNG-Integritätstest-Steuerregister (RNG_HTCR) . . . . . . . . . . . . . . . . . . . . . 952
RM0438 Rev 8
27/2187
54
Inhalt
RM0438
28.7.5 RNG-Registerzuordnung . ...
29
AES-Hardwarebeschleuniger (AES) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 953
29.1 Einleitung . ...
29.2 AES-Hauptfunktionen . ...
29.3 AES-Implementierung . ...
29.4 AES-Funktionsbeschreibung . ...
29.4.1 AES-Blockdiagramm . ...
29.4.2 Interne AES-Signale . ...
29.4.3 AES-Kryptographiekern . ...
29.4.4 AES-Verfahren zum Durchführen einer Verschlüsselungsoperation . . . . . . . . . . . . . . . . . . . . . . . 960
29.4.5 Schlüsselvorbereitung für die AES-Entschlüsselungsrunde . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 963
29.4.6 Diebstahl von AES-Chiffretext und Datenauffüllung . . . . . . . . . . . . . . . . . . . . . . . . . . . . 963
29.4.7 AES-Task anhalten und fortsetzen . ...
29.4.8 AES-Basisverkettungsmodi (ECB, CBC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 964
29.4.9 AES-Zählermodus (CTR) . ...
29.4.10 AES Galois/Zählermodus (GCM) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 971
29.4.11 AES-Galois-Nachrichtenauthentifizierungscode (GMAC) . . . . . . . . . . . . . . . . . 976
29.4.12 AES-Zähler mit CBC-MAC (CCM) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 978
29.4.13 AES-Datenregister und Datenaustausch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 983
29.4.14 AES-Schlüsselregister . ...
29.4.15 AES-Initialisierungsvektorregister . ...
29.4.16 AES-DMA-Schnittstelle . ...
29.4.17 AES-Fehlermanagement . ...
29.5 AES-Interrupts . ...
29.6 AES-Verarbeitungslatenz . ...
29.7 AES-Register . ...
29.7.1 AES-Steuerregister (AES_CR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 989
29.7.2 AES-Statusregister (AES_SR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 991
29.7.3 AES-Dateneingaberegister (AES_DINR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 993
29.7.4 AES-Datenausgaberegister (AES_DOUTR) . . . . . . . . . . . . . . . . . . . . . . . . . . . 993
29.7.5 AES-Schlüsselregister 0 (AES_KEYR0) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 994
29.7.6 AES-Schlüsselregister 1 (AES_KEYR1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 994
29.7.7 AES-Schlüsselregister 2 (AES_KEYR2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 995
29.7.8 AES-Schlüsselregister 3 (AES_KEYR3) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 995
29.7.9 AES-Initialisierungsvektorregister 0 (AES_IVR0) . . . . . . . . . . . . . . . . . . . . . . 995
28/2187
RM0438 Rev 8
RM0438
Inhalt
29.7.10 AES-Initialisierungsvektorregister 1 (AES_IVR1) . . . . . . . . . . . . . . . . . . . . 996 29.7.11 AES-Initialisierungsvektorregister 2 (AES_IVR2) . . . . . . . . . . . . . . . . . . . . . . 996 29.7.12 AES-Initialisierungsvektorregister 3 (AES_IVR3) . . . . . . . . . . . . . . . . . . . . . 996 29.7.13 AES-Schlüsselregister 4 (AES_KEYR4) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 997 29.7.14 AES-Schlüsselregister 5 (AES_KEYR5) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 997 29.7.15 AES-Schlüsselregister 6 (AES_KEYR6) . ... . . . . . . . . . . . . . . 997 29.7.16 AES-Suspend-Register (AES_SUSPxR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 7 AES-Registerzuordnung . ...
30
Hash-Prozessor (HASH) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1001
30.1 Einleitung . ...
30.2 HASH-Hauptfunktionen . ...
30.3 HASH-Implementierung . ...
30.4 HASH-Funktionsbeschreibung . ...
30.4.1 HASH-Blockdiagramm . ...
30.4.2 Interne HASH-Signale . ...
30.4.3 Über sichere Hash-Algorithmen . ...
30.4.4 Nachrichtendatenzufuhr . ...
30.4.5 Nachrichtenübersichtsberechnung . ...
30.4.6 Nachrichtenauffüllung . ...
30.4.7 HMAC-Vorgang . ...
30.4.8 HASH-Suspend/Resume-Operationen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1010
30.4.9 HASH-DMA-Schnittstelle . ...
30.4.10 HASH-Fehlermanagement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1012
30.4.11 HASH-Verarbeitungszeit . ...
30.5 HASH-Interrupts . ...
30.6 HASH-Register . ...
30.6.1 HASH-Steuerregister (HASH_CR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1014
30.6.2 HASH-Dateneingaberegister (HASH_DIN) . . . . . . . . . . . . . . . . . . . . . . . . . . . 1016
30.6.3 HASH-Startregister (HASH_STR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1017
30.6.4 HASH-Digest-Register . ...
30.6.5 HASH-Interrupt-Freigaberegister (HASH_IMR) . . . . . . . . . . . . . . . . . . . . . 1019
30.6.6 HASH-Statusregister (HASH_SR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1020
30.6.7 HASH-Kontext-Auslagerungsregister . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1020
30.6.8 HASH-Registerzuordnung . ...
RM0438 Rev 8
29/2187
54
Inhalt
RM0438
31
On-the-fly-Entschlüsselungs-Engine (OTFDEC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1023
31.1 OTFDEC-Einführung . ...
31.2 Hauptfunktionen von OTFDEC . ...
31.3 OTFDEC-Funktionsbeschreibung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1024
31.3.1 OTFDEC-Blockdiagramm . ...
31.3.2 Interne OTFDEC-Signale . ...
31.3.3 OTFDEC-On-the-Fly-Entschlüsselung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1025
31.3.4 OTFDEC-Verwendung von AES bei der Entschlüsselung im Zählermodus . . . . . . . . . . . . . . . . 1026
31.3.5 Flusskontrollmanagement . ...
31.3.6 OTFDEC-Fehlermanagement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1027
31.4 OTFDEC-Interrupts . ...
31.5 OTFDEC-Anwendungsinformationen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1028
31.5.1 OTFDEC-Initialisierungsprozess . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1028
31.5.2 OTFDEC und Energieverwaltung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1030
31.5.3 Verschlüsselung für OTFDEC . ...
31.5.4 OTFDEC-Schlüssel-CRC-Quellcode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1031
31.6 OTFDEC-Register . ...
31.6.1 OTFDEC-Steuerregister (OTFDEC_CR) . . . . . . . . . . . . . . . . . . . . . . . . . 1032
31.6.2 OTFDEC-Konfigurationsregister für privilegierte Zugriffskontrolle (OTFDEC_PRIVCFGR) . ...
31.6.3 OTFDEC-Region x-Konfigurationsregister (OTFDEC_RxCFGR) . . . . . 1033
31.6.4 OTFDEC-Region x Startadressregister (OTFDEC_RxSTARTADDR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1035
31.6.5 OTFDEC-Region x-Endadressregister (OTFDEC_RxENDADDR) . 1035
31.6.6 OTFDEC-Region x Nonce-Register 0 (OTFDEC_RxNONCER0) . . . . . 1036
31.6.7 OTFDEC-Region x Nonce-Register 1 (OTFDEC_RxNONCER1) . . . . . 1037
31.6.8 OTFDEC-Region x Schlüsselregister 0 (OTFDEC_RxKEYR0) . . . . . . . . . . . . 1037
31.6.9 OTFDEC-Region x Schlüsselregister 1 (OTFDEC_RxKEYR1) . . . . . . . . . . . . 1038
31.6.10 OTFDEC-Region x Schlüsselregister 2 (OTFDEC_RxKEYR2) . . . . . . . . . . . . 1038
31.6.11 OTFDEC-Region x Schlüsselregister 3 (OTFDEC_RxKEYR3) . . . . . . . . . . . . 1039
31.6.12 OTFDEC-Interrupt-Statusregister (OTFDEC_ISR) . . . . . . . . . . . . . . . . 1039
31.6.13 OTFDEC-Interrupt-Löschregister (OTFDEC_ICR) . . . . . . . . . . . . . . . . . . 1040
31.6.14 OTFDEC-Interrupt-Freigaberegister (OTFDEC_IER) . . . . . . . . . . . . . . . . . 1041
31.6.15 OTFDEC-Registerzuordnung . ...
32
Public-Key-Beschleuniger (PKA) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1046
32.1 Einleitung . ...
30/2187
RM0438 Rev 8
RM0438
Inhalt
32.2 32.3
32.4
32.5 32.6 32.7
Hauptfunktionen von PKA . ...
32.3.1 PKA-Blockdiagramm . ... . . . . . . . . . . . . . . . . 1046 32.3.2 PKA-Beschleunigung mit öffentlichem Schlüssel . ... . 1047 32.3.3 PKA-Fehlermanagement . ...
PKA-Betriebsarten . ...
32.4.1 Einführung . ... . . . . . . 1052 32.4.2 Modulare Subtraktion . ... . . . . . 1053 32.4.3 Modulare Inversion . ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1054 32.4.4 Arithmetische Subtraktion . ... . ... 1054 32.4.5 ECC Fp-Skalarmultiplikation . ... . . . . . . . . . . . . . . . . . . . . . . . . . 1055
ExampAnzahl der Konfigurationen und Verarbeitungszeiten . . . . . . . . . . . . . . . . . . . . 1064
32.5.1 Unterstützte elliptische Kurven . ...
PKA-Interrupts . ...
32.7.1 PKA-Steuerregister (PKA_CR) . ... 1068 32.7.2 PKA RAM . ...
RM0438 Rev 8
31/2187
54
Inhalt
RM0438
32.7.5 PKA-Registerkarte . ...
33
Timer für erweiterte Steuerung (TIM1/TIM8) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1072
33.1 Einführung in TIM1/TIM8 . ...
33.2 Hauptfunktionen von TIM1/TIM8 . ...
33.3 Funktionsbeschreibung von TIM1/TIM8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1074
33.3.1 Zeitbasiseinheit . ...
33.3.2 Zählermodi . ...
33.3.3 Wiederholungszähler . ...
33.3.4 Externer Triggereingang . ...
33.3.5 Uhrauswahl . ...
33.3.6 Kanäle erfassen/vergleichen . ...
33.3.7 Eingabeerfassungsmodus . ...
33.3.8 PWM-Eingangsmodus . ...
33.3.9 Erzwungener Ausgabemodus . ...
33.3.10 Ausgabevergleichsmodus . ...
33.3.11 PWM-Modus . ...
33.3.12 Asymmetrischer PWM-Modus . ...
33.3.13 Kombinierter PWM-Modus . ...
33.3.14 Kombinierter 3-Phasen-PWM-Modus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1105
33.3.15 Komplementäre Ausgänge und Totzeiteinfügung . . . . . . . . . . . . . . . . . 1106
33.3.16 Verwenden der Unterbrechungsfunktion . ...
33.3.17 Bidirektionale Unterbrechungseingänge . ...
33.3.18 Löschen des OCxREF-Signals bei einem externen Ereignis . . . . . . . . . . . . . . . . . 1115
33.3.19 6-stufige PWM-Generierung . ...
33.3.20 Einzelpulsmodus . ...
33.3.21 Retriggerbarer Einzelimpulsmodus . ...
33.3.22 Encoder-Schnittstellenmodus . ...
33.3.23 UIF-Bit-Neuzuordnung . ...
33.3.24 Timer-Eingang XOR-Funktion . ...
33.3.25 Anbindung von Hall-Sensoren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1123
33.3.26 Timer-Synchronisierung . ...
33.3.27 ADC-Synchronisierung . ...
33.3.28 DMA-Burst-Modus . ...
33.3.29 Debug-Modus . ...
33.4 TIM1/TIM8-Register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1132
33.4.1 TIMx-Steuerregister 1 (TIMx_CR1)(x = 1, 8) . . . . . . . . . . . . . . . . . . . . . 1132
32/2187
RM0438 Rev 8
RM0438
Inhalt
33.4.2 TIMx-Steuerregister 2 (TIMx_CR2)(x = 1, 8) . . . . . . . . . . . . . . . . . . . . . 1133
33.4.3 TIMx-Slave-Modus-Steuerregister (TIMx_SMCR)(x = 1, 8) . ...
33.4.4 TIMx DMA/Interrupt-Freigaberegister (TIMx_DIER)(x = 1, 8) . ...
33.4.5 TIMx-Statusregister (TIMx_SR)(x = 1, 8) . . . . . . . . . . . . . . . . . . . . . . . . . . . 1140
33.4.6 TIMx-Ereignisgenerierungsregister (TIMx_EGR)(x = 1, 8) . . . . . . . . . . . . . . 1142
33.4.7 TIMx-Erfassungs-/Vergleichsmodusregister 1 (TIMx_CCMR1)(x = 1, 8) . . 1143
33.4.8 TIMx-Erfassungs-/Vergleichsmodusregister 1 [alternativ] (TIMx_CCMR1)(x = 1, 8) . ...
33.4.9 TIMx-Erfassungs-/Vergleichsmodusregister 2 (TIMx_CCMR2)(x = 1, 8) . . 1147
33.4.10 TIMx-Erfassungs-/Vergleichsmodusregister 2 [alternativ] (TIMx_CCMR2)(x = 1, 8) . ...
33.4.11 TIMx-Erfassungs-/Vergleichs-Aktivierungsregister (TIMx_CCER)(x = 1, 8) . ...
33.4.12 TIMx-Zähler (TIMx_CNT)(x = 1, 8) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1153
33.4.13 TIMx-Vorteiler (TIMx_PSC)(x = 1, 8) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1153
33.4.14 TIMx-Register zum automatischen Neuladen (TIMx_ARR)(x = 1, 8) . . . . . . . . . . . . . . . . . . . 1153
33.4.15 TIMx-Wiederholungszählerregister (TIMx_RCR)(x = 1, 8) . . . . . . . . . . . . . 1154
33.4.16 TIMx-Erfassungs-/Vergleichsregister 1 (TIMx_CCR1)(x = 1, 8) . ...
33.4.17 TIMx-Erfassungs-/Vergleichsregister 2 (TIMx_CCR2)(x = 1, 8) . ...
33.4.18 TIMx-Erfassungs-/Vergleichsregister 3 (TIMx_CCR3)(x = 1, 8) . ...
33.4.19 TIMx-Erfassungs-/Vergleichsregister 4 (TIMx_CCR4)(x = 1, 8) . ...
33.4.20 TIMx-Break- und Totzeitregister (TIMx_BDTR)(x = 1, 8) . ...
33.4.21 TIMx DMA-Steuerregister (TIMx_DCR)(x = 1, 8) . ...
33.4.22 TIMx-DMA-Adresse für vollständige Übertragung (TIMx_DMAR)(x = 1, 8) . ...
33.4.23 TIM1-Optionsregister 1 (TIM1_OR1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1162
33.4.24 TIM8-Optionsregister 1 (TIM8_OR1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1162
33.4.25 TIMx-Erfassungs-/Vergleichsmodusregister 3 (TIMx_CCMR3)(x = 1, 8) . ...
33.4.26 TIMx-Erfassungs-/Vergleichsregister 5 (TIMx_CCR5)(x = 1, 8) . ...
33.4.27 TIMx-Erfassungs-/Vergleichsregister 6 (TIMx_CCR6)(x = 1, 8) . ...
RM0438 Rev 8
33/2187
54
Inhalt
RM0438
33.4.28 TIM1-Optionsregister 2 (TIM1_OR2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1165 33.4.29 TIM1-Optionsregister 3 (TIM1_OR3) . ... 1167 33.4.30 TIM8-Optionsregister 2 (TIM8_OR2) . ... . . . . . . . . . . . . . . . . 1168
34
Allzweck-Timer (TIM2/TIM3/TIM4/TIM5) . . . . . . . . . . . . . . . . . . 1177
34.1 Einführung in TIM2/TIM3/TIM4/TIM5 . . . . . . . . . . . . . . . . . . . . . . . . . . . .1177
34.2 Hauptfunktionen von TIM2/TIM3/TIM4/TIM5 . . . . . . . . . . . . . . . . . . . . . . . . . . . .1177
34.3 Funktionsbeschreibung von TIM2/TIM3/TIM4/TIM5 . . . . . . . . . . . . . . . . . . . . . .1179
34.3.1 Zeitbasiseinheit . ...
34.3.2 Zählermodi . ...
34.3.3 Uhrauswahl . ...
34.3.4 Kanäle erfassen/vergleichen . ...
34.3.5 Eingabeerfassungsmodus . ...
34.3.6 PWM-Eingangsmodus . ...
34.3.7 Erzwungener Ausgabemodus . ...
34.3.8 Ausgabevergleichsmodus . ...
34.3.9 PWM-Modus . ...
34.3.10 Asymmetrischer PWM-Modus . ...
34.3.11 Kombinierter PWM-Modus . ...
34.3.12 Löschen des OCxREF-Signals bei einem externen Ereignis . . . . . . . . . . . . . . . . . 1206
34.3.13 Einzelpulsmodus . ...
34.3.14 Retriggerbarer Einzelimpulsmodus . ...
34.3.15 Encoder-Schnittstellenmodus . ...
34.3.16 UIF-Bit-Neuzuordnung . ...
34.3.17 Timer-Eingang XOR-Funktion . ...
34.3.18 Timer und externe Triggersynchronisation . . . . . . . . . . . . . . . . . . . . . . . 1213
34.3.19 Timer-Synchronisierung . ...
34.3.20 DMA-Burst-Modus . ...
34.3.21 Debug-Modus . ...
34.4 TIM2/TIM3/TIM4/TIM5-Register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1223
34.4.1 TIMx-Steuerregister 1 (TIMx_CR1)(x = 2 bis 5) . . . . . . . . . . . . . . . . . . . . 1223
34.4.2 TIMx-Steuerregister 2 (TIMx_CR2)(x = 2 bis 5) . . . . . . . . . . . . . . . . . . . . 1224
34.4.3 TIMx-Slave-Modus-Steuerregister (TIMx_SMCR)(x = 2 bis 5) . . . . . . . . 1226
34.4.4 TIMx DMA/Interrupt-Freigaberegister (TIMx_DIER)(x = 2 bis 5) . . . . . . . 1229
34/2187
RM0438 Rev 8
RM0438
Inhalt
34.4.5 TIMx-Statusregister (TIMx_SR)(x = 2 bis 5) . . . . . . . . . . . . . . . . . . . . . . . 1230 34.4.6 TIMx-Ereignisgenerierungsregister (TIMx_EGR)(x = 2 bis 5) . . . . . . . . . . . . 1231 34.4.7 TIMx-Erfassungs-/Vergleichsmodusregister 1 (TIMx_CCMR1)(x = 2 bis 5) . 1232 34.4.8 TIMx-Erfassungs-/Vergleichsmodusregister 1 [alternativ] (TIMx_CCMR1
(x = 2 bis 5) . ...
(x = 2 bis 5) . ...
(TIMx_CCER)(x = 2 bis 5) . ... 1238 34.4.12 TIMx-Vorteiler (TIMx_PSC)(x = 2 bis 5) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1239 34.4.13 TIMx-Register zum automatischen Neuladen (TIMx_ARR)(x = 2 bis 5) . . . . . . . . . . . . . . . . . . 1240 34.4.14 TIMx-Erfassungs-/Vergleichsregister 2 (TIMx_CCR5)(x = 1240 bis 34.4.15) . . . . . . . . 2 5 TIMx-Erfassungs-/Vergleichsregister 1241 (TIMx_CCR34.4.16)(x = 1 bis 1) . . . . . . . 2 5 TIMx-Erfassungs-/Vergleichsregister 1241 (TIMx_CCR34.4.17)(x = 2 bis 2) . . . . . . . . 2 5 TIMx-Erfassungs-/Vergleichsregister 1241 (TIMx_CCR34.4.18)(x = 3 bis 3) . . . . . . . . 2 5 TIMx-DMA-Steuerregister (TIMx_DCR)(x = 1242 bis 34.4.19) . . . . . . . . . . . . . . 4 4 TIMx-DMA-Adresse für vollständige Übertragung (TIMx_DMAR)(x = 2 bis 5) . . . . . . . 1242 34.4.20 TIM2-Optionsregister 5 (TIM1243_OR34.4.21) . ... 2 5 TIM1244-Optionsregister 34.4.22 (TIM2_OR1) . ...
35
Allzweck-Timer (TIM15/TIM16/TIM17) . . . . . . . . . . . . . . . . . . . 1250
35.1 Einführung in TIM15/TIM16/TIM17 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1250
35.2 Hauptfunktionen von TIM15 . ...
35.3 Hauptfunktionen von TIM16/TIM17 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1251
35.4 Funktionsbeschreibung TIM15/TIM16/TIM17 . . . . . . . . . . . . . . . . . . . . . . . . . 1254
35.4.1 Zeitbasiseinheit . ...
35.4.2 Zählermodi . ...
35.4.3 Wiederholungszähler . ...
35.4.4 35.4.5 35.4.6 35.4.7
Taktauswahl . ... 1261 PWM-Eingangsmodus (nur für TIM1263) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1265
RM0438 Rev 8
35/2187
54
Inhalt
RM0438
35.5
35.4.8 Erzwungener Ausgabemodus . ... . . . . . . . . . . . . . . . . . . . 1267 35.4.9 Kombinierter PWM-Modus (nur TIM1268) . ... 35.4.10 1269 Bidirektionale Unterbrechungseingänge . ... . . . . . . . . . . . . . . . . . 35.4.11 15 Erneut auslösbarer Einzelimpulsmodus (nur TIM1270) . . . . . . . . . . . . . . . . . . . . . . . . . . . 35.4.12 1271 UIF-Bit-Neuzuordnung . ... . . . . . . . . . 35.4.13 1273 Externe Triggersynchronisation (nur TIM35.4.14) . . . . . . . . . . . . . . . . . . . . . 1278 35.4.15 Slave-Modus, kombinierter Reset- und Trigger-Modus . . . . . . . . . . . . . . . . . . . . . . . 6 1279 DMA-Burst-Modus . ... 35.4.16 1281 Timer-Synchronisierung (TIM35.4.17) . ...
TIM15-Register . ...
35.5.1 TIM15-Steuerregister 1 (TIM15_CR1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1290 35.5.2 TIM15-Steuerregister 2 (TIM15_CR2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1291 35.5.3 TIM15-Slave-Modus-Steuerregister (TIM15_SMCR) . . . . . . . . . . . . . . . . 1293 35.5.4 TIM15 DMA/Interrupt-Freigaberegister (TIM15_DIER) . . . . . . . . . . . . . 1294 35.5.5 TIM15-Statusregister (TIM15_SR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1295 35.5.6 TIM15-Ereignisgenerierungsregister (TIM15_EGR) . . . . . . . . . . . . . . . . . . . . 1297 35.5.7 TIM15-Erfassungs-/Vergleichsmodusregister 1 (TIM15_CCMR1) . . . . . . . 1298 35.5.8 TIM15-Erfassungs-/Vergleichsmodusregister 1 [alternativ] (TIM15_CCMR1) . . . . . . . . ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1299 35.5.9 TIM15-Autoreload-Register (TIM15_ARR) . ... 1302 35.5.10 TIM15 Capture/Compare-Register 15 (TIM1305_CCR35.5.11) . . . . . . . . . . . . . . . . . 15 15 TIM1305 Break- und Totzeitregister (TIM35.5.12_BDTR) . . . . . . . . . . . . . . . 15 15 TIM1305 DMA-Steuerregister (TIM35.5.13_DCR) . . . . . . . . . . . . . . . . . . . . . . 15
36/2187
RM0438 Rev 8
RM0438
Inhalt
35.6
35.5.18 TIM15 DMA-Adresse für vollständige Übertragung (TIM15_DMAR) . . . . . . . . . . . . . . 1310 35.5.19 TIM15-Optionsregister 1 (TIM15_OR1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1311 35.5.20 TIM15-Optionsregister 2 (TIM15_OR2) . . . . . . . . . . . . . . . . . . . . . . . . . . . 1311 35.5.21 TIM15-Registerzuordnung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1313
TIM16/TIM17-Register . ...
35.6.1 TIMx-Steuerregister 1 (TIMx_CR1)(x = 16 bis 17) . . . . . . . . . . . . . . . . . 1316 35.6.2 TIMx-Steuerregister 2 (TIMx_CR2)(x = 16 bis 17) . . . . . . . . . . . . . . . . . 1317 35.6.3 TIMx DMA/Interrupt-Freigaberegister (TIMx_DIER)(x = 16 bis 17) . . . . 1318 35.6.4 TIMx-Statusregister (TIMx_SR)(x = 16 bis 17) . . . . . . . . . . . . . . . . . . . 1319 35.6.5 TIMx-Ereignisgenerierungsregister (TIMx_EGR)(x = 16 bis 17) . . . . . . . . . 1320 35.6.6 TIMx-Erfassungs-/Vergleichsmodusregister 1
(TIMx_CCMR1)(x = 16 bis 17) . ... 1321 35.6.7 TIMx-Zähler (TIMx_CNT)(x = 1 bis 1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 17 TIMx-Vorteiler (TIMx_PSC)(x = 1322 bis 35.6.8) . ... 16 17 TIMx-Wiederholungszählerregister (TIMx_RCR)(x = 1324 bis 35.6.9) . . . . . . . . . 16 17 TIMx-Erfassungs-/Vergleichsregister 1326 (TIMx_CCR35.6.10)(x = 16 bis 17) . . . . . 1327 35.6.11 TIMx-Break- und Totzeitregister (TIMx_BDTR)(x = 16 bis 17) . . . . 1327 35.6.12 TIMx-DMA-Steuerregister (TIMx_DCR)(x = 16 bis 17) . . . . . . . . . . . . 1328 35.6.13 TIMx DMA-Adresse für vollständige Übertragung (TIMx_DMAR)(x = 1 bis 1) . . . . 16 17 TIM1328-Optionsregister 35.6.14 (TIM16_OR17) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1329 35.6.15 TIM16-Optionsregister 17 (TIM1331_OR35.6.16) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 17 TIM1332-Optionsregister 35.6.17 (TIM16_OR1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 1 TIM1332-Optionsregister 35.6.18 (TIM16_OR2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 2 TIM1333/TIM35.6.19-Registerzuordnung . ...
36
Grundlegende Timer (TIM6/TIM7) . ...
36.1 Einführung in TIM6/TIM7 . ...
36.2 Hauptfunktionen von TIM6/TIM7 . ...
36.3 Funktionsbeschreibung von TIM6/TIM7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1340
36.3.1 Zeitbasiseinheit . ...
36.3.2 Zählmodus . ...
36.3.3 UIF-Bit-Neuzuordnung . ...
36.3.4 Taktquelle . ...
RM0438 Rev 8
37/2187
54
Inhalt
RM0438
36.4
36.3.5 Debug-Modus . ...
TIM6/TIM7-Register . ...
36.4.1 TIMx-Steuerregister 1 (TIMx_CR1)(x = 6 bis 7) . . . . . . . . . . . . . . . . . . . . 1346 36.4.2 TIMx-Steuerregister 2 (TIMx_CR2)(x = 6 bis 7) . . . . . . . . . . . . . . . . . . . . 1348 36.4.3 TIMx DMA/Interrupt-Freigaberegister (TIMx_DIER)(x = 6 bis 7) . . . . . . . 1348 36.4.4 TIMx-Statusregister (TIMx_SR)(x = 6 bis 7) . . . . . . . . . . . . . . . . . . . . . 1349 36.4.5 TIMx-Ereignisgenerierungsregister (TIMx_EGR)(x = 6 bis 7) . . . . . . . . . . . . 1349 36.4.6 TIMx-Zähler (TIMx_CNT)(x = 6 bis 7) . ... 1349 36.4.7 TIMx-Register zum automatischen Neuladen (TIMx_ARR)(x = 6 bis 7) . . . . . . . . . . . . . . . . . 1350 36.4.8 TIMx-Registerzuordnung . ...
37
Energiespartimer (LPTIM) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1352
37.1 LPTIM-Einführung . ...
37.2 Hauptfunktionen von LPTIM . ...
37.3 LPTIM-Implementierung . ...
37.4 LPTIM-Funktionsbeschreibung . ...
37.4.1 LPTIM-Blockdiagramm . ...
37.4.2 LPTIM-Pins und interne Signale . ...
37.4.3 LPTIM-Eingabe- und Trigger-Mapping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1354
37.4.4 LPTIM-Reset und Uhren . ...
37.4.5 Glitchfilter . ...
37.4.6 Vorteiler . ...
37.4.7 Trigger-Multiplexer . ...
37.4.8 Betriebsart . ...
37.4.9 Timeout-Funktion . ...
37.4.10 Wellenformerzeugung . ...
37.4.11 Registeraktualisierung . ...
37.4.12 Zählermodus . ...
37.4.13 Zeitgeber aktivieren . ...
37.4.14 Timerzähler zurückgesetzt . ...
37.4.15 Encoder-Modus . ...
37.4.16 Wiederholungszähler . ...
37.4.17 Debug-Modus . ...
37.5 LPTIM-Energiesparmodi . ...
37.6 LPTIM-Interrupts . ...
38/2187
RM0438 Rev 8
RM0438
Inhalt
37.7
LPTIM-Register . ...
37.7.1 LPTIM-Interrupt- und Statusregister (LPTIM_ISR) . . . . . . . . . . . . . . . . . 1367 37.7.2 LPTIM-Interrupt-Löschregister (LPTIM_ICR) . . . . . . . . . . . . . . . . . . . . . . . 1368 37.7.3 LPTIM-Interrupt-Aktivierungsregister (LPTIM_IER) . . . . . . . . . . . . . . . . . . . . 1369 37.7.4 LPTIM-Konfigurationsregister (LPTIM_CFGR) . . . . . . . . . . . . . . . . . . . . . 1370 37.7.5 LPTIM-Steuerregister (LPTIM_CR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1373 37.7.6 LPTIM-Vergleichsregister
Dokumente / Ressourcen
![]() |
ST STM32L5-Serie: Hochsicher bei geringem Stromverbrauch [pdf] Benutzerhandbuch RM0438, STM32L5-Serie, hochsicher mit geringem Stromverbrauch, STM32L5-Serie, hochsicher mit geringem Stromverbrauch, geringer Stromverbrauch, Verbrauch |