《嵌入式系统》知识总结3:STM32微控制器

news2024/11/25 16:22:20

STM32系列产品命名规则

以stm32f103zet6为例

Stm32微控制器架构

模块

• 处理器核心

• 存储器

• 时钟电路、系统总线

• 外设(硬件单元):I/O接口、通信接口、定时器 、ADC和DAC, ……

系统结构 

哈佛存储结构

• 独立的指令总线(I-bus),将CM3内核的指令总 线与FLASH指令接口相连,用于指令预取

总线矩阵(Bus Matrix)

提供多种数据通道

• 数据总线(D-bus):将CM3内核的数据总线与 FLASH数据接口相连,用于常量加载和调试

• 系统总线(System):将CM3内核的系统总线与总 线矩阵相连,协调内核与DMA访问

• DMA和SRAM

通过AHB-APB桥连接2个先进外设总线APB

• APB2可全速工作于72MHz,但APB1限制在36MHz

• 外设连接在APB上

STM32F系列具体结构 

 

1.Cortex-M3 CPU内核

 STM32F103ZET6集成了Cortex-M3内核CPU,工作频率为72MHz ,与CPU紧耦合的为嵌套向量中断控制器NVIC和跟踪调试单 元,其中,调试单元支持标准JTAG和串行SW两种调试方式; 16个外部中断源作为NVIC中断控制器的一部分。CPU通过指 令总线直接到FLASH取指令,通过数据总线和总线阵列与 FLASH和SRAM交换数据,DMA可以直接通过总线阵列控制定时 器、ADC、DAC、SDIO、I2S、SPI、I2C和UART。

 2.总线矩阵

 • FLASH通过FLASH接口 连接CPU。

• 静态存储器SRAM通过总 线矩阵连接CPU

• 静态存储器控制器(FSMC) 直接与总线阵列相连接

• Cortex-M3内核CPU通过总 线 阵 列 和 高 性 能 总 线 (A H B)以及A H B-A P B (高级外设总线)桥与两 类 A P B 总 线 相 连 接 , 即 APB1总线和APB2总线。

3.高速外设挂在APB2总线上 

其中,APB2总线工作在 72MHz下,与它相连的 外设有外部中断与唤醒 控制、七个通用目的输 入输出口(PA、PB、PC 、PD、PE、PF和PG)、 定时器1、定时器8、 SPI1、USART1、3个ADC 和内部温度传感器。其 中,3个ADC和内部温度 传感器使用VDDA电源。

 ​​​​​​​

4.低速外设挂在APB1总线上

APB1总线最高可工作在36MHz 频率下,与APB1总线相连的 外设有看门狗定时器、定时 器6、定时器7、RTC时钟、定 时器2、定时器3、定时器4、 定时器5、USART2、USART3、 UART4、UART5、SPI2(I2S2 )与SPI3(I2S3)、I2C1与 I2 C2、CAN、USB设备和2个 DAC。其中,512B的SRAM属于 CAN模块,看门狗时钟源使用 VDD电源,RTC时钟源使用 VBAT电源。

  

5.复位和时钟控制RCC

• STM32芯片为了实现低功耗,设计一个功能完善但却非常复 杂的时钟系统

• 各个功能模块都有专用的工作时钟源,通过管理这些时钟源 使得这些模块处于工作状态还是低功耗状态。

• 系统复位时,外设时钟默认关闭,使用任何外设前,需要开 启对应的时钟 

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/478173.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

mockjs学习笔记

文章目录 一、什么是mockjs二、安装mockj项目安装mock 三、mock语法生成字符串生成文本生成标题和句子生成段落生成数字生成自增id生成姓名-地址-身份证随机生成图片生成时间 mock拦截请求定义get请求定义post请求 四、实现新闻管理案例获取数据添加新闻删除新闻 一、什么是moc…

有趣的地理题

题目 总部位于上海的“哔哩哔哩”(简称B站),是国内知名的视频网站。在B站投稿的用户被称为“UP主”。据统计,B站的UP主群体中,来自上海的比例最高,200万粉丝以上的UP主,来自上海的比例超过 30 …

最佳Midjourney动漫相关风格提示词,值得收藏

先补充概念,后面慢慢补图片咯 动漫艺术家 下面是一些最伟大的艺术家的名单 Hayao Miyazaki, Co-founder of Studio Ghibli(宫崎骏,吉卜力工作室的共同创始人)Eiichiro Oda, One Piece(织田荣一郎,《海贼…

【Linux】Linux下常见基本指令

🌱博客主页:大寄一场. 🌱系列专栏:Linux 😘博客制作不易欢迎各位👍点赞⭐收藏➕关注 目录 前言 一、文件和目录操作指令 ls指令 pwd指令 cd指令 touch指令 rmdir指令 && rm 指令: man指…

吉布斯采样方法

吉布斯采样方法 对于多元分布, P ( X ) , X [ x 1 x 2 ] P(X), X\left[\begin{array}{l} x_1 \\ x_2 \end{array}\right] P(X),X[x1​x2​​]吉布斯抽样执行如下。假设很难从联合分布中抽样 P ( x 1 , x 2 ) P\left(x_1, x_2\right) P(x1​,x2​)但是从条件分布 P ( x 1 ∣ …

一键轻松拥有自己专属的 ChatGPT 网页版,搭建一个私人的可随时随地访问的ChatGPT网站

前言 ChatGPT是一种基于Transformer架构的自然语言处理模型,由OpenAI开发。GPT是“Generative Pre-trained Transformer”的缩写,意为“预训练生成式Transformer模型”。 ChatGPT模型是一种无监督学习模型,它可以在大规模文本数据上进行预训…

scratch比大小 中国电子学会图形化编程 少儿编程 scratch编程等级考试三级真题和答案解析2023年3月

目录 scratch比大小 一、题目要求 1、准备工作 2、功能实现 二、案例分析

【react从入门到精通】深入理解React生命周期

文章目录 前言React技能树React的生命周期是什么React v16.0前的生命周期组件初始化(initialization)阶段组件挂载(Mounting)阶段组件更新(update)阶段组件销毁阶段 React v16.4 的生命周期总结写在最后 前言 在上一篇文章《react入门这一篇就够了》中我们已经掌握了React的基本…

软件STM32cubeIDE下STM32F1xx和STM32F4xx使用:备份寄存器+复位标志位-基础样例

软件STM32cubeIDE下STM32F1xx和STM32F4xx使用:备份寄存器复位标志位-基础样例 1、前言2 、 实验环境3、自我总结(1)对于备份寄存器(BKP):(2)对于复位标志位(RCC_CSR)&…

【5G RRC】RSRP、RSRQ以及SINR含义、计算过程详细介绍

博主未授权任何人或组织机构转载博主任何原创文章,感谢各位对原创的支持! 博主链接 本人就职于国际知名终端厂商,负责modem芯片研发。 在5G早期负责终端数据业务层、核心网相关的开发工作,目前牵头6G算力网络技术标准研究。 博客…

一道经典的小学数学题,和它背后的贪心算法(35)

小朋友们好,大朋友们好! 我是猫妹,一名爱上Python编程的小学生。 欢迎和猫妹一起,趣味学Python。 今日主题 这个五一小长假,你玩得怎么样? 今天,咱们先做一道经典的小学数学题,…

Enabling Fast and Universal Audio Adversarial Attack Using Generative Model

Enabling Fast and Universal Audio Adversarial Attack Using Generative Model https://www.winlab.rutgers.edu/~yychen/ AAAI 2021 文章目录 Enabling Fast and Universal Audio Adversarial Attack Using Generative ModelAbstractIntroductionLimitations of Prior WorkT…

每日一个小技巧:1招教你怎么将照片无损放大

照片是一种记录、分享和保存记忆的重要方式。它可以记录特殊的时刻和经历,如毕业典礼、婚礼、旅游等,为我们锁住美好回忆。不知道大家有没有经历过,在手机或者电脑上打开一张拍摄的照片,却发现它的尺寸太小了,手动放大…

C语言从入门到精通

文章目录 C语言1.helloworld1.1 pause1.2 cls清屏1.3 加法运算1.4 hello 2 常量变量和数据类型2.1 常量2.2 变量2.3 sizeof数据类型大小2.4 无符号整型2.5 字符类型2.5.1 字符类型简介2.5.2 字符类型运算 2.6 实数型2.7 进制和转换2.8 数据溢出 3. 运算符和分支循环语句3.1 字符…

D. Decorate Apple Tree(记录每个点,叶子节点数目)

Problem - D - Codeforces 在Arkady的花园里有一棵苹果树。它可以表示为连接着枝干的节点集合,以便从任何一个节点到达任何其他节点时只有一种方法。节点从1到n进行编号,节点1称为根。 节点v的子树是指一组节点u,使得从u到根的路径必须经过v…

基于SpringBoot+Vue+Java的社区医院管理服务系统(附源码+数据库)

摘 要 在Internet高速发展的今天,我们生活的各个领域都涉及到计算机的应用,其中包括社区医院管理服务系统的网络应用,在外国线上管理系统已经是很普遍的方式,不过国内的管理系统可能还处于起步阶段。社区医院管理服务系统具有社区…

【动态规划】从入门到实践---动态规划详解

目录 1.动态规划概念 一.定义数组元素的含义 二.找到数组元素之间的关系表达式 三.找到初始值 2.案例详解 一:爬楼梯 1.定义数组元素的含义 2.找到数组元素之间的关系表达式 3.找到初始值 案例二:最短路径 题目: 做题步骤&#xf…

【BeautifulSoup下】——05全栈开发——如桃花来

目录索引 CSS选择器:实例演示:*1.根据标签名去找,不用加任何修饰,多个条件用空格隔开,一层一层找:**2.class类名前加. :**3. 多个逐级条件之间用空格隔开:* 除了标签名选择器之外&am…

Unity - Render Doc - 解决 Waiting For Debugger 导致连接不了 APP 的问题

环境 Unity : 2020.3.37f1 Pipeline : BRP RDC : 1.26 问题 平常有一些公司内的游戏发布在移动端运行会有各种异常,但是 unity editor (android opengl es / dx) 下正常 如果没有真机抓帧分析,是搞不定的 然后 RenderDoc 在抓发布出来的调试包也抓不…

extern\const\static的使用详解

1.extern 利用关键字extern,可以在一个文件中引用另一个文件中定义的变量或者函数,extern 可以应用于全局变量、函数或模板声明。 关键字 extern 具有四种含义,具体取决于上下文: 在非 const 全局变量声明中,extern …