0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

STM32F103系列芯片系统架构

单片机与嵌入式 来源:单片机与嵌入式 2023-02-01 15:59 次阅读

STM32芯片架构

STM32F103系列芯片的系统架构如下:

3588e690-8cd6-11ed-bfe3-dac502259ad0.jpg

STM32芯片基于ARM公司的Cortex-M3内核,由ST公司设计生产,内核与总线矩阵之间有I(指令)、S(系统)、D(数据)三条信号线。内核通过总线矩阵与FLASH、SRAM、外设连接。而外设包括GPIO、USART、I2C、SPI等。

STM32芯片系统结构

STM32F103 系列芯片(不包含互联网型)的系统结构如下:

359c7ed0-8cd6-11ed-bfe3-dac502259ad0.jpg

从上图可以看出,在小容量、中容量和大容量产品中,主系统由以下部分构

成:

四个驱动单元:

Cortex-M3 内核 DCode 总线(D-bus)

Cortex-M3 内核系统总线(S-bus)

通用 DMA1

通用 DMA2

四个被动单元:

内部 SRAM

内部闪存存储器FLASH

FSMC

AHB 到 APB 的桥(AHB2APBx),它连接所有的 APB 设备

这些都是通过一个多级的 AHB 总线构架相互连接的。下面我们看看它们各自的功能:

ICode 总线

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

总线上完成。

DCode 总线

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

系统总线

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

DMA 总线

此总线将DMA的AHB主控接口与总线矩阵相联, 总线矩阵协调着CPU的DCode和 DMA 到 SRAM、闪存和外设的访问。

总线矩阵

总线矩阵协调内核系统总线和 DMA 主控总线之间的访问仲裁, 仲裁利用轮换算法。在互联型产品中,总线矩阵包含 5 个驱动部件(CPU 的 DCode、系统总线、以太网 DMA、 DMA1 总线和 DMA2 总线)和 3 个从部件(闪存存储器接口(FLITF)、SRAM 和 AHB2APB 桥)。AHB 外设通过总线矩阵与系统总线相连,允许 DMA访问。

AHB/APB桥(APB)

两个 AHB/APB 桥在 AHB 和 2 个 APB 总线间提供同步连接。APB1 操作速度限于 36MHz, APB2 操作于全速(最高 72MHz)。有关连接到每个桥的不同外设的地址映射请参考《STM32F1xx 中文参考手册》存储器映像章节。在每一次复位以后,所有除 SRAM 和 FLITF 以外的外设都被关闭,在使用一个外设之前,必须设置寄存器 RCC_AHBENR 来打开该外设的时钟

STM32F1 的时钟系统相对复杂,在后续文章中再介绍。

STM32学习进阶路径

基本外设:

GPIO 输入输出,外部中断,定时器,串口。理解了这四个外设,基本就入门一款MCU了。

基本外设接口:

SPI,IIC,WDG, FSMC,ADC/DACSDIO 等。这些外设接口功能原理对每个芯片几乎都是一样。对芯片而言就是多和少而已。

高级功能:

UCOS,FATFS,EMWIN 等。以及一些应用。

另外值得一提的是,C 语言是嵌入式开发的基础中的基础。如果 C 语言不过关,很大程度限制嵌入式学习的进度与深度。在这里推荐3本书学习C语言,刚开始可以参看谭浩强的《C程序设计 第四版》,入门之后看一下关于C指针的书《C 与指针》《C 指针编程之道》。学习嵌入式开发要多动手编程、多调试,遇到问题也可以向本公众号留言提问,作为一个入坑不久的STM32嵌入式开发者,在力所能及的范围内会抽时间与大家交流、反馈,与君共勉!

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • STM32
    +关注

    关注

    2239

    文章

    10669

    浏览量

    348698
  • STM32F103
    +关注

    关注

    33

    文章

    474

    浏览量

    62567

原文标题:STM32入门系列-学习STM32要掌握的内容

文章出处:【微信号:单片机与嵌入式,微信公众号:单片机与嵌入式】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    STM32入门系列-学习STM32要掌握的内容

    STM32芯片架构STM32F103系列芯片系统
    发表于 05-30 17:22

    stm32f103系列封装库分享!

    stm32f103系列封装库《原理图及3D封装库》STM32F103封装库.rar (2.61 MB )
    发表于 08-22 22:50

    stm32f103系列的不同 精选资料分享

    F103的工程2.名称更改3.预编译头文件更改4.修改下载的容量5.替换启动文件六、关于我的调试前言由于最近芯片涨价,STM32F103系列的单片机价格已经十分昂贵,价格已经超出了我的
    发表于 08-05 06:07

    STM32入门系列-学习STM32要掌握的内容 精选资料分享

    STM32芯片架构STM32F103系列芯片系统
    发表于 08-11 06:54

    STM32F103入门系列

    学习板:STM32F103ZET6强推系列STM32F103五分钟入门系列(一)跑马灯(库函数+寄存器)+加编程模板+GPIO总结STM32F10
    发表于 08-17 09:03

    STM32F103系列芯片的相关资料推荐

    STM32芯片架构 STM32F103系列芯片系统
    发表于 12-10 07:16

    STM32F103系列芯片简介

    目录一、STM32F103系列芯片地址映射和寄存器映射原理以及GPIO端口初始化设置二、STM点亮流水灯一、STM32F103系列
    发表于 02-10 07:08

    STM32F103系列芯片使用入门

    文章目录一、STM32F103系列芯片使用入门1.寄存器一、STM32F103系列芯片使用入门1
    发表于 02-28 06:50

    学习STM32必须掌握的内容

    STM32芯片架构STM32F103系列芯片系统
    发表于 04-22 19:05

    基于stm32f103系列控制芯片

    基于stm32f103系列控制芯片,自己写的代码; 实现了03码 06码 16码; 移植在ucos操作系统中; 两个数据帧之间0.3ms的时间间隔;
    发表于 03-01 09:34 6次下载

    stm32f103系列引脚定义-功能图

    本文介绍stm32f103系列芯片引脚功能定义如STM32F103C8T6,STM32F103RCT6等引脚图各个管脚的功能与使用。
    发表于 08-03 17:03 25.4w次阅读
    <b class='flag-5'>stm32f103</b><b class='flag-5'>系列</b>引脚定义-功能图

    STM32F103芯片资料介绍

    只是STM32F103芯片资料的简单介绍,文章由(逆向开发技术网)编辑整理。下次我们将具体介绍一下”STM32F103芯片解密方法”
    发表于 01-08 08:00 183次下载
    <b class='flag-5'>STM32F103</b><b class='flag-5'>芯片</b>资料介绍

    STM32入门系列-学习STM32要掌握的内容

    STM32芯片架构STM32F103系列芯片系统
    发表于 11-05 19:35 16次下载
    <b class='flag-5'>STM32</b>入门<b class='flag-5'>系列</b>-学习<b class='flag-5'>STM32</b>要掌握的内容

    ARM系列STM32F103芯片的解密方法

    破解STM32F103芯片的方法
    的头像 发表于 09-19 09:03 2171次阅读
    ARM<b class='flag-5'>系列</b><b class='flag-5'>STM32F103</b><b class='flag-5'>芯片</b>的解密方法

    ARM系列STM32F103芯片的解密方法

    本文介绍ARM系列STM32F103芯片的解密方法,其内核是Cortex-M3,内存从16K-512K都有。
    发表于 02-28 11:20 368次阅读