stm32参考手册中文版更新到2008年

更新时间:2023-04-10 22:43:01 阅读量: 实用文档 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

STM32F10xxx参考手册

参考手册

导言

本参考手册针对应用开发,提供关于如何使用小容量、中容量和大容量的STM32F101xx、STM32F102xx或者STM32F103xx微控制器的存储器和外设的详细信息。在本参考手册中STM32F101xx、STM32F102xx和STM32F103xx被统称为STM32F10xxx。

STM32F10xxx系列拥有不同的存储器容量,封装和外设配置。

关于订货编号、电气和物理性能参数,请参考STM32F101xx、STM32F102xx和STM32F103xx 的数据手册。

关于芯片内部闪存的编程,擦除和保护操作,请参考STM32F10xxx闪存编程手册。

关于ARM Cortex?-M3内核的具体信息,请参考Cortex?-M3技术参考手册。

相关文档

● Cortex?-M3技术参考手册,可按下述链接下载:

d69e944ce45c3b3567ec8bf2/help/topic/com.arm.doc.ddi0337e/DDI0337E_cortex_m3_r1p1_trm.pdf

下述文档可在ST网站下载(d69e944ce45c3b3567ec8bf2/mcu/):

● STM32F101xx、STM32F102xx和STM32F103xx的数据手册。

● STM32F10xxx闪存编程手册。

* 感谢南京万利提供原始翻译文档

参照2008年12月 RM0008 Reference Manual 英文第7版

目录STM32F10xxx参考手册

2/524

参照2008年12月 RM0008 Reference Manual 英文第7版

本译文仅供参考,如有翻译错误,请以英文原稿为准。请读者随时注意在ST网站下载更新版本

目录STM32F10xxx参考手册

3/524

参照2008年12月 RM0008 Reference Manual 英文第7版

本译文仅供参考,如有翻译错误,请以英文原稿为准。请读者随时注意在ST网站下载更新版本

目录STM32F10xxx参考手册

4/524

参照2008年12月 RM0008 Reference Manual 英文第7版

本译文仅供参考,如有翻译错误,请以英文原稿为准。请读者随时注意在ST网站下载更新版本

目录STM32F10xxx参考手册

5/524

参照2008年12月 RM0008 Reference Manual 英文第7版

本译文仅供参考,如有翻译错误,请以英文原稿为准。请读者随时注意在ST网站下载更新版本

目录STM32F10xxx参考手册

6/524

参照2008年12月 RM0008 Reference Manual 英文第7版

本译文仅供参考,如有翻译错误,请以英文原稿为准。请读者随时注意在ST网站下载更新版本

目录STM32F10xxx参考手册

7/524

参照2008年12月 RM0008 Reference Manual 英文第7版

本译文仅供参考,如有翻译错误,请以英文原稿为准。请读者随时注意在ST网站下载更新版本

目录STM32F10xxx参考手册

8/524

参照2008年12月 RM0008 Reference Manual 英文第7版

本译文仅供参考,如有翻译错误,请以英文原稿为准。请读者随时注意在ST网站下载更新版本

目录STM32F10xxx参考手册

9/524

参照2008年12月 RM0008 Reference Manual 英文第7版

本译文仅供参考,如有翻译错误,请以英文原稿为准。请读者随时注意在ST网站下载更新版本

目录STM32F10xxx参考手册

10/524

参照2008年12月 RM0008 Reference Manual 英文第7版

本译文仅供参考,如有翻译错误,请以英文原稿为准。请读者随时注意在ST网站下载更新版本

目录STM32F10xxx参考手册

11/524

参照2008年12月 RM0008 Reference Manual 英文第7版

本译文仅供参考,如有翻译错误,请以英文原稿为准。请读者随时注意在ST网站下载更新版本

目录STM32F10xxx参考手册

12/524

参照2008年12月 RM0008 Reference Manual 英文第7版

本译文仅供参考,如有翻译错误,请以英文原稿为准。请读者随时注意在ST网站下载更新版本

目录STM32F10xxx参考手册

13/524

参照2008年12月 RM0008 Reference Manual 英文第7版

本译文仅供参考,如有翻译错误,请以英文原稿为准。请读者随时注意在ST网站下载更新版本

目录STM32F10xxx参考手册

14/524

参照2008年12月 RM0008 Reference Manual 英文第7版

本译文仅供参考,如有翻译错误,请以英文原稿为准。请读者随时注意在ST网站下载更新版本

目录STM32F10xxx参考手册

15/524

参照2008年12月 RM0008 Reference Manual 英文第7版

本译文仅供参考,如有翻译错误,请以英文原稿为准。请读者随时注意在ST网站下载更新版本

存储器和总线架构 STM32F10xxx 参考手册

16/524

参照2008年12月 RM0008 Reference Manual 英文第7版

本译文仅供参考,如有翻译错误,请以英文原稿为准。请读者随时注意在ST 网站下载更新版本

Read-only (r)

软件只能读此位。 write-only (w)

软件只能写此位,读此位将返回复位值。 read/clear (rc_w1)

软件可以读此位,也可以通过写’1’清除此位,写’0’对此位无影响。 read / clear (rc_w0)

软件可以读此位,也可以通过写’0’清除此位,写’1’对此位无影响。 toggle (t)

软件只能通过写’1’来翻转此位,写’0’对此位无影响。 Reserved(Res.) 保留位,必须保持默认值不变

1.2 术语表

● 小容量产品是指闪存存储器容量在16K 至32K 字节之间的STM32F101xx 、STM32F102xx 和

STM32F103xx 微控制器。

● 中容量产品是指闪存存储器容量在64K 至128K 字节之间的STM32F101xx 、STM32F102xx

和STM32F103xx 微控制器。

● 大容量产品是指闪存存储器容量在256K 至512K 字节之间的STM32F101xx 和STM32F103xx

微控制器。

1.3 可用的外设

有关STM32微控制器系列全部型号中,某外设存在与否及其数目,请查阅相应的小容量、中容量或者大容量STM32F101xx 和STM32F103xx 以及小容量和中容量STM32F102xx 的数据手册。

存储器和总线架构 STM32F10xxx 参考手册

17/524

参照2008年12月 RM0008 Reference Manual 英文第7版

本译文仅供参考,如有翻译错误,请以英文原稿为准。请读者随时注意在ST 网站下载更新版本

ICode 总线

该总线将Cortex?-M3内核的指令总线与闪存指令接口相连接。指令预取在此总线上完成。

DCode 总线

该总线将Cortex?-M3内核的DCode 总线与闪存存储器的数据接口相连接(常量加载和调试访问)。

系统总线

此总线连接Cortex?-M3内核的系统总线(外设总线)到总线矩阵,总线矩阵协调着内核和DMA 间的访问。

存储器和总线架构STM32F10xxx参考手册

18/524

参照2008年12月 RM0008 Reference Manual 英文第7版

本译文仅供参考,如有翻译错误,请以英文原稿为准。请读者随时注意在ST网站下载更新版本

存储器和总线架构 STM32F10xxx 参考手册

19/524

参照2008年12月 RM0008 Reference Manual 英文第7版

本译文仅供参考,如有翻译错误,请以英文原稿为准。请读者随时注意在ST 网站下载更新版本

0x4002 3400 - 0x4002 3FFF 保留

0x4002 3000 - 0x4002 33FF CRC

参见3.4.4节 0x4002 2000 - 0x4002 23FF 闪存存储器接口 0x4002 1400 - 0x4002 1FFF 保留

0x4002 1000 - 0x4002 13FF 复位和时钟控制(RCC) 参见6.3.11节 0x4002 0800 - 0x4002 0FFF 保留

0x4002 0400 - 0x4002 07FF DMA2 参见9.4.7节 0x4002 0000 - 0x4002 03FF DMA1 参见9.4.7节 0x4001 8400 - 0x4001 7FFF 保留

0x4001 8000 - 0x4001 83FF SDIO AHB

参见19.9.16节 0x4001 4000 - 0x4001 7FFF 保留

0x4001 3C00 - 0x4001 3FFF ADC3 参见10.12.15节 0x4001 3800 - 0x4001 3BFF USART1 参见24.6.8节 0x4001 3400 - 0x4001 37FF TIM8定时器 参见12.4.21节 0x4001 3000 - 0x4001 33FF SPI1 参见22.5节 0x4001 2C00 - 0x4001 2FFF TIM1定时器 参见12.4.21节 0x4001 2800 - 0x4001 2BFF ADC2 参见10.12.15节 0x4001 2400 - 0x4001 27FF ADC1 参见10.12.15节 0x4001 2000 - 0x4001 23FF GPIO 端口G 参见7.5节 0x4001 2000 - 0x4001 23FF GPIO 端口F 参见7.5节 0x4001 1800 - 0x4001 1BFF GPIO 端口E 参见7.5节 0x4001 1400 - 0x4001 17FF GPIO 端口D 参见7.5节 0x4001 1000 - 0x4001 13FF GPIO 端口C 参见7.5节 0X4001 0C00 - 0x4001 0FFF GPIO 端口B 参见7.5节 0x4001 0800 - 0x4001 0BFF GPIO 端口A 参见7.5节 0x4001 0400 - 0x4001 07FF EXTI 参见8.3.7节 0x4001 0000 - 0x4001 03FF AFIO APB2参见7.5节 0x4000 7800 - 0x4000FFFF 保留

0x4000 7400 - 0x4000 77FF DAC

参见11.5.14节 0x4000 7000 - 0x4000 73FF 电源控制(PWR) 参见4.4.3节 0x4000 6C00 - 0x4000 6FFF 后备寄存器(BKP) 参见5.4.5节 0x4000 6800 - 0x4000 6BFF 保留

0x4000 6400 - 0x4000 67FF bxCAN

参见21.6.5节 0x4000 6000 - 0x4000 63FF USB/CAN 共享的SRAM 512字节

0x4000 5C00 - 0x4000 5FFF USB 全速设备寄存器 参见20.5.4节 0x4000 5800 - 0x4000 5BFF I2C2 参见23.6.10节 0x4000 5400 - 0x4000 57FF

I2C1

APB1参见23.6.10节

存储器和总线架构 STM32F10xxx 参考手册

20/524

参照2008年12月 RM0008 Reference Manual 英文第7版

本译文仅供参考,如有翻译错误,请以英文原稿为准。请读者随时注意在ST 网站下载更新版本

0x4000 4C00 - 0x4000 4FFF UART4 参见24.6.8节 0x4000 4800 - 0x4000 4BFF USART3 参见24.6.8节 0x4000 4400 - 0x4000 47FF USART2 参见24.6.8节 0x4000 4000 - 0x4000 3FFF 保留

0x4000 3C00 - 0x4000 3FFF SPI3/I2S3 参见22.5节 0x4000 3800 - 0x4000 3BFF SPI2/I2S3 参见22.5节 0x4000 3400 - 0x4000 37FF 保留

0x4000 3000 - 0x4000 33FF 独立看门狗(IWDG) 参见16.4.5节 0x4000 2C00 - 0x4000 2FFF 窗口看门狗(WWDG) 参见17.6.4节 0x4000 2800 - 0x4000 2BFF RTC 参见15.4.7节 0x4000 1800 - 0x4000 27FF 保留

0x4000 1400 - 0x4000 17FF TIM7定时器 参见13.4.19节 0x4000 1000 - 0x4000 13FF TIM6定时器 参见13.4.19节 0x4000 0C00 - 0x4000 0FFF TIM5定时器 参见13.4.19节 0x4000 0800 - 0x4000 0BFF TIM4定时器 参见13.4.19节 0x4000 0400 - 0x4000 07FF TIM3定时器 参见13.4.19节 0x4000 0000 - 0x4000 03FF

TIM2定时器

参见13.4.19节

2.3.1 嵌入式SRAM

STM32F10xxx 内置64K 字节的静态SRAM 。它可以以字节、半字(16位)或全字(32位)访问。

SRAM 的起始地址是0x2000 0000。

2.3.2 位段

Cortex?-M3存储器映像包括两个位段(bit-band)区。这两个位段区将别名存储器区中的每个字映射到位段存储器区的一个位,在别名存储区写入一个字具有对位段区的目标位执行读-改-写操作的相同效果。

在STM32F10xxx 里,外设寄存器和SRAM 都被映射到一个位段区里,这允许执行单一的位段的写和读操作。

下面的映射公式给出了别名区中的每个字是如何对应位带区的相应位的: bit_word_addr = bit_band_base + (byte_offset x 32) + (bit_number × 4) 其中:

bit_word_addr 是别名存储器区中字的地址,它映射到某个目标位。 bit_band_base 是别名区的起始地址。

byte_offset 是包含目标位的字节在位段里的序号 bit_number 是目标位所在位置(0-31)

例子:

下面的例子说明如何映射别名区中SRAM 地址为0x20000300的字节中的位2: 0x22006008 = 0x22000000 + (0x300*32) + (2*4).

对0x22006008地址的写操作与对SRAM 中地址0x20000300字节的位2执行读-改-写操作有着相同的效果。

读0x22006008地址返回SRAM 中地址0x20000300字节的位2的值(0x01 或 0x00)。 请参考《Cortex?-M3技术参考手册》以了解更多有关位段的信息。

存储器和总线架构 STM32F10xxx 参考手册

21/524

参照2008年12月 RM0008 Reference Manual 英文第7版

本译文仅供参考,如有翻译错误,请以英文原稿为准。请读者随时注意在ST 网站下载更新版本

页0 0x0800 0000 - 0x0800 03FF 1K 页1 0x0800 0400 - 0x0800 07FF 1K 页2

0x0800 0800 - 0x0800 0BFF 1K 页3 0x0800 0C00 - 0x0800 0FFF 1K 页4 0x0800 1000 - 0x0800 13FF 1K …

… … …

… … 主存储块

页31

0x0800 1000 - 0x0800 13FF 1K 系统存储器 0x1FFF F000 - 0x1FFF F7FF 2K 信息块

用户选择字节 0x1FFF F800 - 0x1FFF F80F 16 FLASH_ACR 0x4002 2000 - 0x4002 2003 4 FALSH_KEYR 0x4002 2004 - 0x4002 2007 4 FLASH_OPTKEYR

0x4002 2008 - 0x4002 200B 4 FLASH_SR 0x4002 200C - 0x4002 200F 4 FLASH_CR 0x4002 2010 - 0x4002 2013 4 FLASH_AR 0x4002 2014 - 0x4002 2017 4 保留 0x4002 2018 - 0x4002 201B 4 FLASH_OBR 0x4002 201C - 0x4002 201F 4 闪存存储器 接口寄存器

FLASH_WRPR

0x4002 2020 - 0x4002 2023

4

表3

闪存模块的组织(中容量产品)

模块

名称 地址

大小(字节) 页0 0x0800 0000 - 0x0800 03FF 1K 页1 0x0800 0400 - 0x0800 07FF 1K 页2

0x0800 0800 - 0x0800 0BFF 1K 页3 0x0800 0C00 - 0x0800 0FFF 1K 页4 0x0800 1000 - 0x0800 13FF 1K … … … …

… … 主存储块

页127

0x0801 FC00 - 0x0801 FFFF

1K

本文来源:https://www.bwwdw.com/article/yerl.html

Top