没有合适的资源?快使用搜索试试~ 我知道了~
STM32F405规格书
试读
1756页
需积分: 0 1 下载量 117 浏览量
更新于2024-04-07
收藏 20.01MB PDF 举报
根据提供的文件信息,我们可以深入探讨STM32F405规格书中所涵盖的关键知识点和技术细节。这份规格书主要针对的是应用开发者,旨在提供全面的信息帮助他们理解和使用STM32F405/415、STM32F407/417、STM32F427/437以及STM32F429/439系列微控制器(MCU)的内存和外设。以下是对该规格书中几个核心部分的详细介绍:
### 1. 文档约定
文档约定部分通常会定义在阅读和理解该文档时所需要了解的一些基本概念、术语或符号。例如,它可能会列出用于描述寄存器的缩写词、文档中出现的专业词汇的释义等。
- **1.1 寄存器缩写列表**:这一节中会列出在文档中使用的与寄存器相关的所有缩写,帮助读者快速定位并理解这些缩写的具体含义。
- **1.2 词汇表**:词汇表部分会提供一系列专业术语及其解释,这对于非专业背景的读者来说非常重要,可以帮助他们更好地理解文档内容。
- **1.3 外设可用性**:此节将概述各个型号微控制器中包含的不同外设及其可用性。由于STM32F405系列包括多个不同的型号,每个型号的外设配置可能有所不同,因此这一部分对于选择合适的型号至关重要。
### 2. 内存和总线架构
这一部分详细介绍了STM32F405系列微控制器的内存结构和总线体系结构,这对于理解如何高效地使用这些微控制器至关重要。
- **2.1 系统架构**:这部分提供了关于STM32F405系列微控制器系统架构的概述,包括其内部总线结构。STM32F405采用的是先进的Arm®-based 32位处理器内核,拥有高性能的内存和总线架构。
- **2.1.1 I-bus**:I-bus(指令总线)是连接CPU到指令存储器的总线。这部分将详细介绍I-bus的工作原理,以及如何通过I-bus有效地访问指令存储器。
### 3. 微控制器特性
STM32F405系列微控制器具有多种特性,包括但不限于高性能、低功耗以及广泛的外设支持。
- **高性能**:这些微控制器采用了基于Cortex-M4的内核,并集成了浮点单元(FPU),这使得它们能够处理复杂的计算任务,如数字信号处理(DSP)功能。
- **低功耗**:为了满足电池供电设备的需求,STM32F405系列提供了多种低功耗模式,可以在不使用时降低功耗。
- **广泛的外设支持**:这些微控制器配备了丰富的外设资源,如定时器、串行通信接口(USART、SPI、I2C)、ADC、DAC等,可以满足不同应用场景的需求。
### 4. 相关文档
规格书中还提到了一系列与STM32F405系列微控制器相关的文档资料,这些文档对于开发者来说是非常宝贵的资源,可以帮助他们更深入地了解产品的特性和使用方法。
- **数据手册**:STM32F40x和STM32F41x、STM32F42x和STM32F43x的数据手册提供了详细的电气规格、引脚配置等信息。
- **错误清单**:STM32F40x和STM32F41x、STM32F42x和STM32F43x的错误清单列出了已知的产品问题及其解决方案,有助于开发者避免常见错误。
- **编程手册**:对于Cortex-M4内核的编程手册,提供了详细的编程指导,包括如何利用内核中的高级特性如FPU。
通过以上对STM32F405规格书关键部分的详细解读,我们可以看到这些微控制器不仅具有强大的性能,而且还提供了丰富的资源和支持文档,使得开发者能够轻松地开发出高性能的应用程序。
February 2024 RM0090 Rev 20 1/1756
1
RM0090
Reference manual
STM32F405/415, STM32F407/417, STM32F427/437 and
STM32F429/439 advanced Arm
®
-based 32-bit MCUs
Introduction
This reference manual targets application developers. It provides complete information on
how to use the STM32F405xx/07xx, STM32F415xx/17xx, STM32F42xxx and
STM32F43xxx microcontroller memory and peripherals.
The STM32F405xx/07xx, STM32F415xx/17xx, STM32F42xxx and STM32F43xxx constitute
a family of microcontrollers with different memory sizes, packages and peripherals.
For ordering information, mechanical and electrical device characteristics please refer to the
datasheets.
For information on the Arm
®
Cortex
®
-M4 with FPU core, please refer to the Cortex
®
-M4 with
FPU Technical Reference Manual.
The STM32F405xx/07xx, STM32F415xx/17xx, STM32F42xxx and STM32F43xxx
microcontrollers include ST state-of-the-art patented technology.
Related documents
Available from STMicroelectronics web site (www.st.com):
• STM32F40x and STM32F41x datasheets
• STM32F42x and STM32F43x datasheets
• STM32F40x and STM32F41x errata sheets
• STM32F42x and STM32F43x errata sheets
• For information on the Arm
®
Cortex
®
-M4 with FPU, refer to the STM32F3xx/F4xxx
Cortex
®
-M4 with FPU programming manual (PM0214).
www.st.com
Contents RM0090
2/1756 RM0090 Rev 20
Contents
1 Documentation conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
1.1 List of abbreviations for registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
1.2 Glossary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
1.3 Peripheral availability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
2 Memory and bus architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
2.1 System architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
2.1.1 I-bus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
2.1.2 D-bus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
2.1.3 S-bus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
2.1.4 DMA memory bus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
2.1.5 DMA peripheral bus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
2.1.6 Ethernet DMA bus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
2.1.7 USB OTG HS DMA bus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
2.1.8 LCD-TFT controller DMA bus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
2.1.9 DMA2D bus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
2.1.10 BusMatrix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
2.1.11 AHB/APB bridges (APB) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
2.2 Memory organization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
2.3 Memory map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
2.3.1 Embedded SRAM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
2.3.2 Flash memory overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
2.3.3 Bit banding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
2.4 Boot configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
3 Embedded Flash memory interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
3.2 Main features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
3.3 Embedded Flash memory in
STM32F405xx/07xx and STM32F415xx/17xx . . . . . . . . . . . . . . . . . . . . . 74
3.4 Embedded Flash memory in STM32F42xxx and STM32F43xxx . . . . . . . 76
3.5 Read interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
3.5.1 Relation between CPU clock frequency and Flash memory read time . 80
RM0090 Rev 20 3/1756
RM0090 Contents
39
3.5.2 Adaptive real-time memory accelerator (ART Accelerator™) . . . . . . . . 82
3.6 Erase and program operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
3.6.1 Unlocking the Flash control register . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
3.6.2 Program/erase parallelism . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
3.6.3 Erase . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
3.6.4 Programming . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
3.6.5 Read-while-write (RWW) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
3.6.6 Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
3.7 Option bytes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
3.7.1 Description of user option bytes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
3.7.2 Programming user option bytes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
3.7.3 Read protection (RDP) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
3.7.4 Write protections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
3.7.5 Proprietary code readout protection (PCROP) . . . . . . . . . . . . . . . . . . . 96
3.8 One-time programmable bytes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
3.9 Flash interface registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
3.9.1 Flash access control register (FLASH_ACR)
for STM32F405xx/07xx and STM32F415xx/17xx . . . . . . . . . . . . . . . . . 99
3.9.2 Flash access control register (FLASH_ACR)
for STM32F42xxx and STM32F43xxx . . . . . . . . . . . . . . . . . . . . . . . . . 100
3.9.3 Flash key register (FLASH_KEYR) . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
3.9.4 Flash option key register (FLASH_OPTKEYR) . . . . . . . . . . . . . . . . . . 101
3.9.5 Flash status register (FLASH_SR) for
STM32F405xx/07xx and STM32F415xx/17xx . . . . . . . . . . . . . . . . . . . 102
3.9.6 Flash status register (FLASH_SR) for
STM32F42xxx and STM32F43xxx . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
3.9.7 Flash control register (FLASH_CR) for
STM32F405xx/07xx and STM32F415xx/17xx . . . . . . . . . . . . . . . . . . . 104
3.9.8 Flash control register (FLASH_CR) for
STM32F42xxx and STM32F43xxx . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
3.9.9 Flash option control register (FLASH_OPTCR) for
STM32F405xx/07xx and STM32F415xx/17xx . . . . . . . . . . . . . . . . . . . 107
3.9.10 Flash option control register (FLASH_OPTCR)
for STM32F42xxx and STM32F43xxx . . . . . . . . . . . . . . . . . . . . . . . . . 109
3.9.11 Flash option control register (FLASH_OPTCR1)
for STM32F42xxx and STM32F43xxx . . . . . . . . . . . . . . . . . . . . . . . . . 111
3.9.12 Flash interface register map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
4 CRC calculation unit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
Contents RM0090
4/1756 RM0090 Rev 20
4.1 CRC introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .114
4.2 CRC main features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .114
4.3 CRC functional description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .115
4.4 CRC registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .115
4.4.1 Data register (CRC_DR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
4.4.2 Independent data register (CRC_IDR) . . . . . . . . . . . . . . . . . . . . . . . . 115
4.4.3 Control register (CRC_CR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
4.4.4 CRC register map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
5 Power controller (PWR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
5.1 Power supplies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .117
5.1.1 Independent A/D converter supply and reference voltage . . . . . . . . . . 118
5.1.2 Battery backup domain . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
5.1.3 Voltage regulator for STM32F405xx/07xx and STM32F415xx/17xx . . 121
5.1.4 Voltage regulator for STM32F42xxx and STM32F43xxx . . . . . . . . . . . 122
5.2 Power supply supervisor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
5.2.1 Power-on reset (POR)/power-down reset (PDR) . . . . . . . . . . . . . . . . . 125
5.2.2 Brownout reset (BOR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
5.2.3 Programmable voltage detector (PVD) . . . . . . . . . . . . . . . . . . . . . . . . 126
5.3 Low-power modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
5.3.1 Slowing down system clocks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
5.3.2 Peripheral clock gating . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
5.3.3 Sleep mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
5.3.4 Stop mode (STM32F405xx/07xx and STM32F415xx/17xx) . . . . . . . . 131
5.3.5 Stop mode (STM32F42xxx and STM32F43xxx) . . . . . . . . . . . . . . . . . 134
5.3.6 Standby mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
5.3.7 Programming the RTC alternate functions to wake up the device from
the Stop and Standby modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139
5.4 Power control registers (STM32F405xx/07xx and STM32F415xx/17xx) 142
5.4.1 PWR power control register (PWR_CR)
for STM32F405xx/07xx and STM32F415xx/17xx . . . . . . . . . . . . . . . . 142
5.4.2 PWR power control/status register (PWR_CSR)
for STM32F405xx/07xx and STM32F415xx/17xx . . . . . . . . . . . . . . . . 143
5.5 Power control registers (STM32F42xxx and STM32F43xxx) . . . . . . . . . 146
5.5.1 PWR power control register (PWR_CR)
for STM32F42xxx and STM32F43xxx . . . . . . . . . . . . . . . . . . . . . . . . . 146
5.5.2 PWR power control/status register (PWR_CSR)
for STM32F42xxx and STM32F43xxx . . . . . . . . . . . . . . . . . . . . . . . . . 149
RM0090 Rev 20 5/1756
RM0090 Contents
39
5.6 PWR register map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151
6 Reset and clock control for
STM32F42xxx and STM32F43xxx (RCC) . . . . . . . . . . . . . . . . . . . . . . . 152
6.1 Reset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152
6.1.1 System reset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152
6.1.2 Power reset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152
6.1.3 Backup domain reset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153
6.2 Clocks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153
6.2.1 HSE clock . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156
6.2.2 HSI clock . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
6.2.3 PLL configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
6.2.4 LSE clock . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158
6.2.5 LSI clock . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158
6.2.6 System clock (SYSCLK) selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158
6.2.7 Clock security system (CSS) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
6.2.8 RTC/AWU clock . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
6.2.9 Watchdog clock . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160
6.2.10 Clock-out capability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160
6.2.11 Internal/external clock measurement using TIM5/TIM11 . . . . . . . . . . . 160
6.3 RCC registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163
6.3.1 RCC clock control register (RCC_CR) . . . . . . . . . . . . . . . . . . . . . . . . . 163
6.3.2 RCC PLL configuration register (RCC_PLLCFGR) . . . . . . . . . . . . . . . 165
6.3.3 RCC clock configuration register (RCC_CFGR) . . . . . . . . . . . . . . . . . 167
6.3.4 RCC clock interrupt register (RCC_CIR) . . . . . . . . . . . . . . . . . . . . . . . 169
6.3.5 RCC AHB1 peripheral reset register (RCC_AHB1RSTR) . . . . . . . . . . 172
6.3.6 RCC AHB2 peripheral reset register (RCC_AHB2RSTR) . . . . . . . . . . 175
6.3.7 RCC AHB3 peripheral reset register (RCC_AHB3RSTR) . . . . . . . . . . 176
6.3.8 RCC APB1 peripheral reset register (RCC_APB1RSTR) . . . . . . . . . . 176
6.3.9 RCC APB2 peripheral reset register (RCC_APB2RSTR) . . . . . . . . . . 180
6.3.10 RCC AHB1 peripheral clock register (RCC_AHB1ENR) . . . . . . . . . . . 182
6.3.11 RCC AHB2 peripheral clock enable register (RCC_AHB2ENR) . . . . . 184
6.3.12 RCC AHB3 peripheral clock enable register (RCC_AHB3ENR) . . . . . 185
6.3.13 RCC APB1 peripheral clock enable register (RCC_APB1ENR) . . . . . 185
6.3.14 RCC APB2 peripheral clock enable register (RCC_APB2ENR) . . . . . 189
6.3.15 RCC AHB1 peripheral clock enable in low power mode register
(RCC_AHB1LPENR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191
剩余1755页未读,继续阅读
资源推荐
资源评论
5星 · 资源好评率100%
155 浏览量
146 浏览量
2010-11-11 上传
173 浏览量
5星 · 资源好评率100%
5星 · 资源好评率100%
166 浏览量
154 浏览量
5星 · 资源好评率100%
200 浏览量
190 浏览量
164 浏览量
资源评论
weixin_43205998
- 粉丝: 0
- 资源: 1
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- (178548844)zotero文献阅读以及主题和翻译插件
- (179839044)64402-MySQL数据库基础实例教程(第3版)(微课版)-源代码(含例题、案例、实训、实战四个项目).zip.zip
- 基于微信小程序的户外旅游小程序.zip
- 双摇臂履带底盘sw16可编辑全套技术开发资料100%好用.zip
- 国外某地气温数据(extend:2011-2016年).zip
- (18695238)libsvm文档
- 数据分析-51-小红书达人画像
- 基于微信小程序的华云智慧园区(包括数据库,源码).zip
- 步进电机驱动 C#上位机和STM32下位机源程序 步数方向控制
- 船上用品检测12-YOLO(v5至v11)、COCO、CreateML、Paligemma、TFRecord、VOC数据集合集.rar
- 非常好用 的,局域网,文件共享,文档管理 工作,方便检索文件 ,支持HTTP服务
- 手机组装自动镭焊机step全套技术开发资料100%好用.zip
- java项目,毕业设计-基于协同过滤算法商品推荐系统
- 大三-一个简单的安卓移动开发课程设计Android Studio
- 数据分析-53-「猛男的童年回忆」三大类型玩具在京东平台的销售分析
- C# TouchSocket的基础使用,连接,发送,接收WPF
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功