|
前言4 X. z" `; {" ~5 |# b6 O 本参考手册面向应用开发人员, 提供有关使用 STM32F413/423 微控制器存储器与外设的完整信息。 STM32F413/423 构成一个微控制器系列,各产品具有不同的存储器大小、封装和外设。' D% T; r& w$ Q! I" a 有关订购信息以及器件的机械与电气特性,请参见数据手册。' r m" j- y4 Q' b0 F( E 有关 Arm® 带 FPU 的 Cortex®-M4 内核的信息,请参见Cortex®-M4 技术参考手册。 相关文档 意法半导体网站提供以下文档:9 a* ~3 C# j# f. q - STM32F413/423xG/xH 数据手册 - STM32F3 和 STM32F4 系列带 FPU 的 Cortex®-M4 编程手册 (PM0214),提供关于 Arm带 FPU 的 Cortex®-M4 的信息。 t) F. T' F) n8 r0 ^2 U: a) `5 o $ I9 C2 s9 D G1 m* I, ?! C $ P$ Q5 _3 d0 J0 U! l- ]4 v: @ o q) D' Q2 l2 E5 ~ Z, A: f 1 文档约定 1.1 一般信息 STM32F413/423 器件具有 Arm®(a) Cortex®-M4 with FPU 内核" Z b& P1 E L$ p, m4 G0 V4 ^ 1.2 寄存器相关缩写词列表 寄存器说明中使用以下缩写词! }4 O! Z9 b( G, Q/ g9 F - f8 s+ I2 V2 x) _* ~ ) H G; T1 v. }3 V* O% J 2 系统和存储器概述7 ?- |6 B, g0 T+ M3 v 2.1 系统架构+ o# T, p1 ~8 [9 g( W5 P4 n STM32F413/423 的主系统由 32 位多层 AHB 总线矩阵构成,可实现以下部分的互连:" o8 N9 J! V7 o$ A 六条主控总线:; G, R: A: l+ D& [3 ?8 ? – 带 FPU 的 Cortex®-M4内核 I 总线、D 总线和 S 总线- @: Z1 h7 x2 q/ X- @8 r – DMA1 存储器总线 – DMA2 存储器总线 – DMA2 外设总线 七条被控总线: – 内部 Flash ICode 总线 – 内部 Flash DCode 总线 – 主内部 SRAM1 (256 KB)& P. k N4 f: l0 i* H7 t! z$ y. m – 辅助内部 SRAM2 (64 KB) – AHB1 外设(包括 AHB-APB 总线桥和 APB 外设) – AHB2 外设 – FSMC/QuadSPI 借助总线矩阵,可以实现主控总线到被控总线的访问,这样即使在多个高速外设同时运行期' G' g! b- o- u4 n+ s' G 间,系统也可以实现并发访问和高效运行。此架构如图 1 所示。6 k- |) R7 m: n4 A 0 V5 u8 V2 j$ q5 }; m m& F
2.1.1 I 总线 此总线用于将带 FPU 的 Cortex®-M4 内核的指令总线连接到总线矩阵。内核通过此总线获取7 w5 S+ k& l( ]. V! c 指令。此总线访问的对象是包含代码的存储器(内部 Flash/SRAM1/SRAM2)。 2.1.2 D 总线 此总线用于将带 FPU 的 Cortex®-M4 的数据总线连接到总线矩阵。内核通过此总线进行立 即数加载和调试访问。此总线访问的对象是包含代码或数据的存储器(内部 Flash/SRAM1/! a# r$ P7 K" \+ w4 c SRAM2)。" ]. a$ R [1 G( T % {4 a* g0 i6 X9 A2 t 2.1.3 S 总线 此总线用于将带 FPU 的 Cortex®-M4 内核的系统总线连接到总线矩阵。此总线用于访问位+ L' A. v$ g/ }- J7 c) h( C 于外设、SRAM1 或 SRAM2 中的数据。也可通过此总线获取指令(效率低于 ICode)。此 总线访问的对象是内部 SRAM1/SRAM2、包括 APB 外设在内的 AHB1 外设、AHB2 外设和. i' }8 f/ D' b ^, b6 V% q 外部存储器(通过外设接口 FSMC 和 QUADSPI)。0 H% P3 c" C7 W: K+ C5 x * e2 ?% i! e' a% k 2.1.4 DMA 存储器总线 此总线用于将 DMA 存储器总线主接口连接到总线矩阵。DMA 通过此总线来执行存储器数据 的传入和传出。此总线访问的对象是数据存储器:内部 Flash、内部 SRAM1/SRAM2 以及 S4 中包括 APB 外设在内的 AHB1/AHB2 外设。& L7 c) j3 V7 ^0 L 2.1.5 DMA 外设总线 此总线用于将 DMA 外设主总线接口连接到总线矩阵。DMA 通过此总线访问 AHB 外设或执# @- u+ L0 d9 m6 t3 ^- m. A0 M 行存储器间的数据传输。此总线的访问对象是 AHB 和 APB 外设以及数据存储器:Flash 和- O$ }# H5 P8 p- s$ H9 g& t 内部 SRAM1/SRAM2。- u$ U3 j: y6 x# q 2.1.6 总线矩阵 总线矩阵用于主控总线之间的访问仲裁管理。仲裁采用循环调度算法。 ) L9 y5 V& {! k7 o( D6 P; Y 2.1.7 AHB/APB 总线桥 (APB) `) D: ]6 {( q( S7 d' E 借助两个 AHB/APB 总线桥 APB1 和 APB2,可在 AHB 总线与两个 APB 总线之间实现完全同步的连接,从而灵活选择外设频率。+ @2 h4 D+ d; l 有关 APB1 和 APB2 最大频率的详细信息,请参见器件数据手册;有关 AHB 和 APB 外设地址映射的信息,请参见表 1。. |; D& J _+ i4 P5 @. \+ b0 Q 每次芯片复位后,所有外设时钟都被关闭(SRAM 和 Flash 接口除外)。使用外设前,必须在 RCC_AHBxENR 或 RCC_APBxENR 寄存器中使能其时钟。! c0 T$ O4 d$ U7 X 注: 对 APB 寄存器执行 16 位或 8 位访问时,该访问将转换为 32 位访问:总线桥将 16 位或 8 位数据复制后提供给 32 位向量。9 ~% g& G8 t# ]5 k$ m1 z ) B( {5 m8 ^- l% X0 O % _: I0 ~ }4 F8 b7 ?: J 2.2 存储器组织结构) {' _' D; d' U1 G6 ]- A t ' _5 J- P5 g5 {2 W9 k" N- e4 M 2.2.1 简介 程序存储器、数据存储器、寄存器和 I/O 端口排列在同一个线性(即地址连续)的 4 GB 地址空间内。# q; n: @4 D3 D; G, W; g 各字节按小端格式在存储器中编码。一个存储字单元中编号最低的字节被视为该字的最低有效字节,而编号最高的字节被视为最高有效字节。8 c5 v: u3 D( Q) ?$ Q+ P+ E! f 可寻址的存储空间分为 8 个主要块,每个块为 512 MB。5 z @, |% B) a. m; f( s* b" w, [. a 可访问的地址空间取决于主控总线,有关详细信息,请参见第 2 部分:存储器和总线架构。 - [5 \3 d1 ]: ^0 J9 |) U ^ ' D/ w: E- o p* n1 ^- ` 2.2.2 存储器映射和寄存器边界地址
$ _- r. s) @' W 未分配给片上存储器和外设的所有存储器映射区域均视为“保留区”。有关可用存储器和寄存器区域的详细映射,请参见下表。下表给出了器件中可用外设的边界地址。4 Q# e$ J0 {6 l
/ L. `7 A# I L5 o 2.3 嵌入式 SRAM" Q5 h9 f( I( g# H$ L5 \ STM32F413/423 器件具有 320 KB 的系统 SRAM。; `: O: h- Q1 m* q' c7 s 嵌入式 SRAM 可按字节、半字(16 位)或全字(32 位)访问。读写操作以 CPU 速度执行,且等待周期为 0。. A; t0 B4 n0 f9 D0 M2 h: ^ l+ ~ 嵌入式 SRAM 可分为两个块:% N1 w% c. ?& u% s7 ]; D - 映射到地址 0x2000 0000 的 SRAM1,可供所有 AHB 主控总线访问。 - 映射到地址 0x2004 0000 的 SRAM2,可供所有 AHB 主控总线访问。 如果选择从 SRAM1 自举或选择物理重映射(请参见第 8.2.1 节:SYSCFG 存储器重映射寄存器 (SYSCFG_MEMRMP)),则 CPU 可通过系统总线或 I-Code/D-Code 总线访问嵌入式SRAM1。* Q1 r. g, L, J 为了保证程序在 SRAM1 执行时实现最佳性能,应选择物理重映射(通过自举管脚及软件配置来选择)。+ o9 W% l/ h8 P' l- W ) @1 ?1 E( ^; O2 x$ t4 b 5 v; T0 s, K; O2 b5 H4 M ...: W; o+ ?$ j% {7 n m5 G+ t: ` ( S/ p$ A- h; v 下载文档,阅读完整资料 下载地址1>> 下载地址2>> 更多实战经验>>2 Q8 { f0 Z$ O' W: t u |
【福利三:雨露均沾·逢7狂欢】之四:用一个定时器同步另外两个定时器输出PWM
【逢7发帖赢大礼】STM32开发之WIFI实时时钟
【逢7发帖赢大礼】STM32开发之指纹识别!
【逢7发帖赢大礼】STM32开发之环境空气质量监测
【逢7发帖赢大礼】STM32开发之人体实时运动信息监测!
【逢7发帖赢大礼】STM32开发之IC门禁卡UID读取方法!
【逢7发帖赢大礼】全网最简单的Arduino_STM32开发环境搭建教程!
STM32F4中文用户手册
STM32F400、STM32F402 Cortex-M4超值单片机
SPI 高温读错最后一位?STM32F42xx 官方根治方案
微信公众号
手机版