STMCU小助手
发布时间:2022-7-12 23:18
|
前言 本参考手册面向应用开发人员,提供有关使用 STM32L0x3 微控制器存储器与外设的完整信息。" K F- ~$ f" h" ^ STM32L0x3 构成一个微控制器系列,各产品具有不同的存储器大小、封装和外设。! n' q, @2 {. d$ M& G 有关订购信息以及器件的机械与电气特性,请参见相应的数据手册。, r7 P2 L3 F% h! C D% d 有关 ARM® Cortex®-M0+ 内核的信息,请参见Cortex®-M0+技术参考手册。1 s( V6 u2 i n- V7 ]# e- [ + B" Y4 Z8 W$ A$ x- ]4 { 1 n3 F0 W3 o# E! O6 b) n5 b% C 1 文档约定 1.1 寄存器相关缩写词列表 寄存器说明中使用以下缩写词:0 a, N$ m4 }3 V
) _& o2 j0 J8 O' ~6 B# F& l- i# k7 j 1.2 词汇表% o. X+ ~, e# A* N4 p 本节简要介绍本文档中所用首字母缩略词和缩写词的定义: 9 B1 A0 X; @4 U+ R8 r' P3 h
6 z3 K! ]* b, r( N$ q9 k6 r 1.3 外设可用性 有关各型号产品的外设可用性及数量信息,请参见特殊器件数据手册。 1.4 产品类别定义# F1 T' E. E$ u; x$ t1 ?: w 表 1 概括介绍了存储器容量和产品线。 当前参考手册介绍了每个产品线特性的超集,有关每个类别的特性列表,请参见表 2。 & J' L- h. d8 f6 c, F5 f
' M; ?- ^/ q2 `! J8 ~. S! K
l {, P: |7 ^' Q- z$ K% e3 f/ Q
* d- X7 f9 {8 z+ L- I# b 2 系统和存储器概述+ m! z/ k7 y0 X' ^ C" z( i 2.1 系统架构1 Y! r* A( o. Z1 o 主系统包括:% D4 {, a7 S( T E; t 两个主器件:( g0 d1 `* R) S – Cortex®-M0+内核(AHB-lite 总线)* G1 s) z' g1 V – GP-DMA,通用微控制器$ m1 T+ k/ E. I& w 三个从器件: – 内部 SRAM – 内部非易失性存储器- O }; J. Z/ L+ _ – AHB到APB,连接所有APB外设/ l3 d2 t( |) I" g# Z$ ? 这些外设使用多层 AHB 总线架构互连,如图 1 所示。 1 S3 C0 ]; `: ~3 |+ c
2.1.1 S0:Cortex® 总线- G" r! e# o G9 D; h# T9 b | 此总线用于将 Cortex®-M0+ 内核的 DCode/ICode 总线连接到总线矩阵。内核会使用此总线获取指令、获取数据以及访问 AHB/APB 资源。 7 `) ]2 k8 ]5 W* k M! W 2.1.2 S1:DMA 总线 此总线用于将 DMA 的 AHB 主接口连接到总线矩阵,而总线矩阵管理着不同主器件对 Flash和 EEPPROM、SRAM 以及 AHB/APB 外设的访问。 0 X2 L8 o' w: {2 c# h4 r% m 2.1.3 总线矩阵9 B8 T Z% n$ {& c. l 总线矩阵用于主控总线之间的访问仲裁管理。仲裁采用循环调度算法。总线矩阵由两个主器件(CPU、DMA)和三个从器件(NVM 接口、SRAM、AHB2APB1/2 总线桥)构成。: ^5 H, l3 s; _3 F+ V AHB/APB 总线桥 v, @. ?# h* D1 D AHB/APB 总线桥可在 AHB 与 2 条 APB 总线之间实现完全同步的连接。APB1 和 APB2 的最大工作频率高达 32 MHz。6 ?# {+ k" h, V$ D, E) J 有关连接到此总线桥的外设的地址映射,请参见第 57 页的第 2.2.2节:存储器映射和寄存器边界地址。 每次芯片复位后,所有外设时钟都被关闭(SRAM 和 MIF 除外)。使用外设前,必须在RCC_AHBENR、RCC_APB2ENR、RCC_APB1ENR 或 RCC_IOPENR 寄存器中使能其时钟。 注: 对 APB 寄存器执行 16 位或 8 位访问时,该访问将转换为 32 位访问:总线桥将 16 位或 8 位数据复制后提供给 32 位向量。 ( y8 N' g0 F8 G/ m( ~ 2.2 存储器组织结构0 v3 R/ w$ L7 H7 M u8 n 2.2.1 简介 程序存储器、数据存储器、寄存器和 I/O 端口排列在同一个线性(即地址连续)的 4 GB 地址空间内。 各字节按小端格式在存储器中编码。字中编号最低的字节被视为该字的最低有效字节,而编号最高的字节被视为最高有效字节。 可寻址的存储空间分为 8 个主要块,每个块为 512 MB。 6 U: A. s1 O$ f! n1 v' p
6 D* F m4 ^8 R u+ C6 ~ , d4 y9 D" u. P! f: A E0 \ 未分配给片上存储器和外设的所有存储区域均视为“保留区”。有关可用存储器和寄存器区域的详细映射,请参见存储器映射和寄存器边界地址和外设章节。 - O. w( Q2 c6 A. \ 2.2.2 存储器映射和寄存器边界地址6 u. y; T9 O z$ v7 _5 i8 c8 y" {1 u- a 有关综合存储器映射图,请参见相应器件的数据手册。! o& B1 F6 u, \; X- c N" X l 下表给出了器件中可用外设的边界地址。 3 ~1 [& W4 d) s+ o
* C7 l2 x- J/ N
2 R! q6 U" j% Q a9 l1 s
, e, w( A6 q- E4 b1 n: x 2.3 嵌入式 SRAM STM32L0x3器件的静态 SRAM 高达 20 KB。 此 RAM 可按字节、半字(16 位)或全字(32 位)访问。此存储器可以最大系统时钟频率进行寻址,无等待状态,因此可由 CPU 和 DMA 访问。 SRAM 起始地址为 0x2000 0000。" b( v7 y; h: v7 `8 l, } 若通过启动引脚或 MEM_MODE 选择物理重映射,CPU 可从地址 0x0000 0000 访问 SRAM(参见第 10.2.1 节:SYSCFG 存储器重映射寄存器 (SYSCFG_CFGR1))。8 D# L7 {+ E7 B+ I# n( J4 T 0 X# u0 D/ H+ Q- g' a# f1 i 2.4 自举配置1 z9 O2 |# T+ B* j# [6 @ 在 STM32L0x3 中,可通过 BOOT0 引脚以及用户选项字节中的启动配置位选择三种不同的启动模式,如下表所示。# z7 i/ l/ n8 i* _ + \- f, ^5 u% x5 ^1 g& G5 v
复位后,在 SYSCLK 的第四个上升沿锁存启动模式配置。用户可以通过设置 nBOOT1 和BOOT0 引脚来选择需要的启动模式。# u) S' V' u4 L9 w g( O& h$ G 退出待机模式后,还可以对启动模式配置进行重新采样。因此不得在待机模式下修改启动模式配置。该启动延迟结束后,CPU 将从地址 0x0000 0000 获取栈顶值,然后从始于 0x00000004 的启动存储器开始执行代码。 根据所选的启动模式,Flash 程序存储器、系统存储器或 SRAM 可通过以下方式进行访问:5 L9 l9 q; Y- w. D$ Y 从 Flash 程序存储器启动:Flash 程序存储器在启动存储空间 (0x0000 0000) 中有别名,但也可从它原来的存储空间 (0x0800 0000) 访问。换句话说,Flash 存储器内容可从地址 0x0000 0000 或 0x0800 0000 开始访问。9 H+ V; ?* V9 a( V2 B 从系统存储器启动:系统存储器在启动存储空间 (0x0000 0000) 中有别名,但也可从它原来的存储空间 (0x1FF0 0000) 访问。 从嵌入式 SRAM 启动:SRAM 在启动存储空间 (0x0000 0000) 中有别名,但也可从它原来的存储空间 (0x2000 0000) 访问。$ E3 g3 ?* Z' {( L . ~* Z+ p; b: N. j; L6 H' P. r 存储区交换(仅限第 5 类器件)- @: R; @' R0 x# c 对于具有两个存储区的器件,存储区交换机制允许 CPU 指向启动存储空间 (0x00000000) 中的存储区 1 或存储区 2。Flash 程序和数据 EEPROM 地址会更改(参见表 8:UFB = 0 时的 NVM 构成(128 KB 第 5 类器件)、表 10:UFB = 0 时的 NVM 构成(64 KB第 5 类器件))。4 Z5 G3 k7 R+ R % P, \: X6 Z: n 物理重映射 选择了启动引脚和启动位后,应用程序软件可修改代码区域中可访问的存储器。这种修改是通过对 SYSCFG 存储器重映射寄存器 (SYSCFG_CFGR1) 中的 MEM_MODE 位进行编程实现的。 . o+ s+ d" c. ]# d1 A( F" g 内部自举程序 嵌入式启动加载器位于系统存储器中,由 ST 在生产阶段编程。它用于通过以下串行接口重8 E# M/ A$ Q5 j( D y8 f+ J 新编程 Flash: + F8 b- _! w1 ?' Z 对于第 3 类器件:USART1、USART2、SPI1 或 SPI2。 - L# y' G8 ]# ~7 Y8 H+ o" d$ Z 对于配有 USB 接口的第 5 类器件:USART1、USART2 或 USB。 对于没有 USB 接口的第 5 类器件:USART1、USART2、SPI1、SPI2、I2C1 或 I2C2。" w7 ~- n+ o0 e, j3 u 关于启动加载器串行接口对应的 I/O 的详细信息,请参见器件数据表。 更多关于 STM32 启动加载器的详细信息,请参见 AN2606。4 u C. @5 ^) i) A * N6 h) J5 C8 f: I5 C/ L 9 C6 m% G9 N1 ]4 r1 X! r- n 完整版请查看:附件 |
DM00095744_ZHV4.pdf
下载11.59 MB, 下载次数: 27
微信公众号
手机版