打印
[其他ST产品]

STM32快速入门(内核架构,启动方式,开发参考资料)

[复制链接]
4263|28
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
Cortex-M3 采用目前主流 ARM V7-M 架构,性能更加强劲,代码密度更高,性价比更高的。
Cortex-M3 处理器结合多种突破性技术,在高性能、低功耗、低成本三方面具有突破性的创新。

ST 推出了一整套 固件库,将 底层寄存器 开发全部封装成 库函数,这样使得开发人员摆脱 直接操作寄存器 的烦恼,直接操作库函数 开发自己的程序,项目开发更加快速,但是 内存利用率 稍低。
库函数开发 用牺牲程序效率换取 开发速度,而 寄存器开发 牺牲开发速度换取程序 运行效率。

STM32是一个微控制器产品系列的总称,这个系列专为 高性能、低功耗、低成本 的嵌入式应用设计的 ARM Cortex-M0,M0+,M3,M4 和 M7内核。

使用特权

评论回复
沙发
xiaoqi000|  楼主 | 2021-9-30 22:55 | 只看该作者
按 内核架构 分为不同产品:

使用特权

评论回复
板凳
xiaoqi000|  楼主 | 2021-9-30 22:59 | 只看该作者
1、启动方式(Start up)
BOOT0,BOOT1 用于设置 STM32 的启动方式,其对应启动模式如下表:

一般情况下(即标准的 ISP 下载步骤)如果我们想用用串口下载代码,则必须先配置 BOOT0 为 1,BOOT1 为 0,然后按复位键,最后再通过程序下载代码。下载完以后又需要将 BOOT0 设置为 0,以便每次复位后都可以运行用户代码。

使用特权

评论回复
地板
xiaoqi000|  楼主 | 2021-9-30 23:00 | 只看该作者
2、开发参考资料

使用特权

评论回复
5
xiaoqi000|  楼主 | 2021-9-30 23:01 | 只看该作者
2.1 STM32 中文参考手册
STM32微控制器产品中大多数功能模块都是在多个产品(或所有产品)中共有的 并且是相同的,因此只有一份STM32微控制器产品的 技术参考手册 对应所有这些产品。

使用特权

评论回复
6
xiaoqi000|  楼主 | 2021-9-30 23:02 | 只看该作者
3、通常的芯片选型步骤

使用特权

评论回复
7
xiaoqi000|  楼主 | 2021-9-30 23:02 | 只看该作者
4、存储器和总线构架
4.1 系统构架
在小容量、中容量和 大容量产品中,主系统由以下部分构成:
● 四个驱动单元:
(1)Cortex™-M3内核DCode总线(D-bus),和系统总线(S-bus)
(2)通用DMA1和通用DMA2

● 四个被动单元
(1)内部SRAM
(2)内部闪存存储器
(3)FSMC
(4)AHB到APB的桥(AHB2APBx),它连接所有的APB设备

使用特权

评论回复
8
xiaoqi000|  楼主 | 2021-9-30 23:03 | 只看该作者
这些都是通过一个多级的AHB总线构架 相互连接的,如下图图1所示:

使用特权

评论回复
9
xiaoqi000|  楼主 | 2021-9-30 23:03 | 只看该作者
4.1.1 ICode 总线
该总线将Cortex™-M3内核的指令总线与闪存指令接口相连接。指令预取在此总线上完成。

使用特权

评论回复
10
xiaoqi000|  楼主 | 2021-9-30 23:06 | 只看该作者
4.1.2 DCode 总线
该总线将Cortex™-M3内核的DCode总线与闪存存储器的数据接口相连接(常量加载和调试访问)。

使用特权

评论回复
11
xiaoqi000|  楼主 | 2021-9-30 23:07 | 只看该作者
4.1.3 系统总线
此总线连接Cortex™-M3内核的系统总线(外设总线)到总线矩阵,总线矩阵协调着内核和DMA间的访问。

使用特权

评论回复
12
xiaoqi000|  楼主 | 2021-9-30 23:08 | 只看该作者
4.1.4 DMA 总线
此总线将DMA的AHB主控接口与总线矩阵相联,总线矩阵协调着CPU的DCode和DMA到SRAM、闪存和外设的访问。

使用特权

评论回复
13
xiaoqi000|  楼主 | 2021-9-30 23:08 | 只看该作者
4.1.5 总线矩阵
总线矩阵协调内核系统总线和DMA主控总线之间的访问仲裁,仲裁利用轮换算法。
在互联型产品中,总线矩阵包含5个驱动部件(CPU的DCode、系统总线、以太网DMA、DMA1总线和DMA2总线)和3个从部件(闪存存储器接口(FLITF)、SRAM和AHB2APB桥)。在其它产品中总线矩阵包含4个驱动部件(CPU的DCode、系统总线、DMA1总线和DMA2总线)和4个被动部件(闪存存储器接口(FLITF)、SRAM、FSMC和AHB2APB桥)。
AHB外设通过总线矩阵与系统总线相连,允许DMA访问。

使用特权

评论回复
14
xiaoqi000|  楼主 | 2021-9-30 23:09 | 只看该作者
4.1.6 AHB/APB 桥(APB)
两个AHB/APB桥在AHB和2个APB总线间提供同步连接。APB1操作速度限于36MHz,APB2操作于全速(最高72MHz)。

表1 有关连接到每个桥的不同外设的地址映射请参考 。在每一次复位以后,所有除SRAM和FLITF以外的外设都被关闭,在使用一个外设之前,必须设置寄存器RCC_AHBENR来打开该外设的时钟。

注意: 当对 APB 寄存器进行 8 位或者 16 位访问时,该访问会被自动转换成 32 位的访问:桥会自动将 8 位或者 32 位的数据扩展以配合 32 位的向量。

使用特权

评论回复
15
xiaoqi000|  楼主 | 2021-9-30 23:10 | 只看该作者
4.2 存储器组织(Memory organization)
程序存储器、数据存储器、寄存器和输入输出端口被组织在同一个4GB的线性地址空间内。

数据字节以小端格式存放在存储器中。一个字里的最低地址 字节被认为是该字的 最低有效字节,而最高地址字节是 最高有效字节。.

外设寄存器的映像请参考相关章节。
可访问的存储器空间被分成8个主要块(block),每个块为512MB。
其他所有没有分配给片上存储器和外设的存储器空间都是保留的地址空间,请参考相应器件的数据手册中的存储器映像图。

使用特权

评论回复
16
xiaoqi000|  楼主 | 2021-9-30 23:11 | 只看该作者

使用特权

评论回复
17
xiaoqi000|  楼主 | 2021-9-30 23:13 | 只看该作者

使用特权

评论回复
18
xiaoqi000|  楼主 | 2021-9-30 23:16 | 只看该作者
4.3 存储器映像(Memory map)
请参考相应器件的数据手册中的存储器映像图。 列出了所用STM32F10xxx中内置外设的起始地址。


1.只在小容量、中容量和大容量的产品中才有这个共享的SRAM区域,互联型产品中没有这个区域。

使用特权

评论回复
19
xiaoqi000|  楼主 | 2021-9-30 23:17 | 只看该作者
4.3.1 嵌入式SRAM(Embedded SRAM)
STM32F10xxx内置64K字节的静态SRAM。它可以以字节、半字(16位)或全字(32位)访问。
SRAM的起始地址是0x2000 0000。

使用特权

评论回复
20
xiaoqi000|  楼主 | 2021-9-30 23:19 | 只看该作者
4.3.2 位段(Bit banding)

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

55

主题

755

帖子

0

粉丝