STM32系统参数和结构

系列文章目录

STM32单片机系列专栏

C语言术语和结构总结专栏

文章目录

1. 基本参数

2. 片上资源(外设)

3. STM32系列命名规则

4. 系统结构

5. 引脚定义

6. 启动配置

7. 最小系统电路

8. 型号分类和缩写


1. 基本参数

STM32F103C8T6

系列:主流系列STM32F1

内核:ARM Cortex-M3

主频:72MHz

RAM:20K(SRAM)(运行内存)

ROM:64K(Flash)(程序储存器)

供电:2.0~3.6V(标准3.3V)

封装:LQFP48(48个引脚)

2. 片上资源(外设)

英文

名称

NVIC嵌套向量中断控制器嵌套向量中断控制器,负责管理和处理中断,允许动态优先级和中断嵌套。

SysTick

系统滴答定时器

系统定时器,可以用作操作系统的心跳定时器或者提供一个简单的不依赖外部定时器的延时功能。
RCC

复位和时钟控制

复位和时钟控制器,控制和管理微控制器的时钟分配,包括系统时钟、外设时钟以及时钟源的选择和配置。

GPIO

通用IO口

通用输入输出端口,用于数字信号的输入和输出。

AFIO

复用IO口

可重映射的输入输出端口,可以配置GPIO引脚以用于不同的外设功能。

EXTI

外部中断

外部中断接口,允许外部或内部事件触发中断。

TIM

定时器

定时器,用于计时、计数、产生PWM波形等功能。

ADC

模数转换器

模拟到数字转换器,将模拟信号转换为数字信号进行处

DMA

直接内存访问

直接内存访问控制器,允许外设直接读写内存,减轻CPU负担。

USART

同步/异步串口通信

通用同步/异步接收发射器,用于串行通信。

I2C

I2C通信

用于芯片间通信的串行总线。

SPI

SPI通信

串行外设接口,用于高速串行通信。

CAN

CAN通信

控制器局域网,用于汽车和工业控制中的网络通信。

USB

USB通信

通用串行总线,用于连接USB设备。

RTC

实时时钟

实时时钟,保持时间计数即使在主电源断电的情况下。

CRC

CRC校验

循环冗余校验,用于检测数据在传输或存储过程中的错误。

PWR

电源控制

电源控制外设,管理电源和睡眠模式。

BKP

备份寄存器

备份寄存器,通常用于存储关键数据,即使在微控制器断电时也会被保留。

IWDG

独立看门狗

独立看门狗定时器,用于系统恢复,防止系统挂起。

WWDG

窗口看门狗

窗口看门狗定时器,用于系统恢复,比IWDG更复杂的行为设置。

DAC

数模转换器

数字到模拟转换器,将数字信号转换为模拟信号输出。

SDIO

SD卡接口

安全数字输入输出,用于SD卡通信。

FSMC

可变静态存储控制器

灵活的静态存储器控制器,用于连接外部存储如SRAM、PSRAM、NOR/NAND内存。

USB OTG

USB主机接口

USB设备即插即用,使设备可以充当主机或设备角色。

 

3. STM32系列命名规则

 

4. 系统结构

 

对于系统结构,STM32的CPU核心基于ARM Cortex-M3架构。Icode是指令总线,Dcode是数据总线,Icode和Dcode是用来连接flash闪存的,flash中储存的就是程序,Icode用来加载程序指令,Dcode用来加载数据。system为系统总线,连接到SRAM(静态随机存取内存,用于程序的运行时数据存储)和FSMC(外部存储控制器,用于连接外部存储设备)

AHB(先进高性能总线)用于连接高速的内核和某些高速外设,通过两个桥接连接APB(先进外设总线)用于连接较低速的外设。因为AHB和APB的总线协议和总线速度,还有数据传送格式的差异,所以需要加两个桥接,来完成数据的转换和缓存。

DMA提供了高效的数据传输方式,无需CPU介入就能在内存和外设之间传输数据。

5. 引脚定义

6. 启动配置

启动模式选择表

BOOT1BOOT0启动模式说明
X0主闪存存储器代码从主闪存存储器的用户程序区域开始执行
01系统存储器代码从系统存储器开始执行,通常是用于内部的引导加载程序
11内嵌SRAM代码从内嵌SRAM开始执行
  • 主闪存存储器: 这是最常用的启动模式,用于执行用户存放在主闪存区的应用程序代码。
  • 系统存储器: 这个模式通常包含了厂商提供的引导程序,可用于系统的固件升级,也可以作为使用串口下载。
  • 内嵌SRAM: 这个模式允许直接从SRAM执行代码,可以用于开发阶段的调试。

当系统复位时,系统时钟会在4个时钟周期内选择BOOT1和BOOT0引脚的配置来确定启动模式。如果需要在系统运行中动态修改启动模式,就需要改变这两个引脚的状态。

“X”代表“不关心”的状态,意味着在BOOT0为0的情况下,BOOT1的状态不会影响启动模式的选择,因为不管BOOT1是0还是1,系统都会从主闪存启动。

7. 最小系统电路

仅靠一个单片机芯片,无法实现功能,所以需要设计一个确保微控制器能够正常上电并运行的最基础电路配置。

晶振电路
首先一个8mhzd主时钟晶振,stm32的主晶振一般都是8mhz,8mhz经过内部锁循环倍频,得到72mhz的主频。两个引脚连接到stm32的5,6号引脚,另外还需要接两个20pf的电容,作为启震电容,电容另一端接地。

复位电路

NRST: 微控制器的复位引脚,用于重启微控制器,使其从初始状态开始运行。它是低电平复位,复位电路上电的瞬间,电容没有电,电源通过电阻向电容充电,此时电容呈现短路状态,所以nrst就会产生低电平,电容充满电后电容相当于断路,这时nrst上拉为高电平。

R1: 上拉电阻,值为10kΩ。它确保在没有外部复位信号的情况下,NRST引脚保持高电平状态,微控制器不会进入复位状态。

C3: 与NRST引脚相连的去耦电容,0.1uF,它帮助滤除由外部噪声引起的误触发复位事件,确保复位行为是确定进行的。

调试接口

用于串行线调试(SWD)接口的引脚,用于程序调试。

8. 型号分类和缩写

这部分也是建立工程文件时启动文件的选择方式。

缩写(启动文件)类型Flash容量型号
LD_VL小容量产品线低密度16~32KSTM32F100
MD_VL中容量产品线低密度64~128KSTM32F100
HD_VL大容量产品线低密度256~512KSTM32F101/102/103
LD小容量产品16~32KSTM32F101/102/103
MD中容量产品64~128K

STM32F101/102/103

HD大容量产品 ​​

256~512K

STM32F101/102/103

XL

加大容量产品

大于512K

STM32F101/102/103

CL

互联型产品

-

STM32F105/107

 

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

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

相关文章

监听el-table滚动

mounted() {// 监听el-table滚动window.addEventListener("scroll", this.loadMore, true);}, 后端接口没有分页,一次性返回全部数据,前端监听滚动条加载数据。 this.tableList当前表格展示的数据 this.allTableData接口获取的全部数据 load…

SpringBoot+MyBatis-Plus+jsqlparser实现多租户功能

前言 多租户技术(multi-tenancy technology)是一种软件架构技术,它允许在单个系统实例上为多个用户或组织提供服务,同时确保这些用户之间数据的隔离性。在多租户架构中,每个租户(可以是个人用户、企业、组…

预见预判|AIRIOT智慧交通管理解决方案

随着机动车保有量的逐步增加,城市交通压力日益增大。同时,新能源车辆的快速发展虽然带来了环保效益,但也因不限号政策而进一步加剧了道路拥堵问题。此外,各类赛事和重大活动的交通管制措施也时常导致交通状况复杂多变。面对这些挑…

便携式应急指挥箱规格参数

概况: 微缩型的无线视频音频传输的机动挥所。体积小、重量轻、公配电方便、携带便携、功能齐全。可进行单兵作战,通过此无线音频视频传输的指挥箱能完成现场图像、语音、数据的采集等功能,可以通过5G/4G/WIFI等多种无线网络完成传输的需求,或…

Linux基础——Linux开发工具(gcc/g++,gdb)

前言:在上一篇我们简单介绍了yum,vim的一些常用的指令和模式,现在让我们来进一步了解其他的Linux环境基础开发工具gcc/g,gdb。 如果对前面yum和vim有什么不懂的建议回顾去回顾上期知识!!! Linu…

html表格导出为word文档,导出的部分表格内无法填写文字

导出技术实现:fileSaver.jshtml-docx-js 1.npm安装 npm install --save html-docx-js npm install --save file-saver 2.页面引入 import htmlDocx from html-docx-js/dist/html-docx; import saveAs from file-saver;components: {htmlDocx,saverFile, }, 3.页…

神经网络的激活函数

目录 神经网络 激活函数 sigmoid 激活函数 tanh 激活函数 backward方法 relu 激活函数 softmax 激活函数 神经网络 人工神经网络( Artificial Neural Network, 简写为ANN)也简称为神经网络(NN)&#xff0c…

提示工程 3—文本类任务和推理类任务示例

1. 文本类任务 1.1. 文本概括(Text Summarization) 任务描述:将较长的中文文本内容简化为包含关键信息和主要观点的简短版本。 示例:原文:"阿里巴巴集团成立于1999年,是中国最大的电子商务公司之一,由马云创办。集团主要经营B2B、B2C和C2C等多种电商平台。"…

k8s笔记 | StatefulSet 有状态

创建一个web.yaml --- apiVersion: v1 kind: Service metadata:name: nginxlabels:app: nginx spec:ports:- port: 80name: webclusterIP: Noneselector:app: nginx --- apiVersion: apps/v1 kind: StatefulSet metadata:name: web spec:serviceName: "nginx" # 使用…

c# ?? 、?.、??=、?[]运算符的使用

在 C# 中存在一些特殊的运算符,它们简化了代码的编写,主要用于处理空值(null)或简化成员访问。以下是一些常用的这类运算符: ?? - Null 合并运算符 Null 合并运算符 ?? 在左侧的操作数不为 null 时返回左侧的操作…

asp.net core 自定义过滤器 注入的几种方式和实现

在 ASP.NET Core 中,过滤器(Filters)是一种在 MVC 应用程序中运行代码的方法,可以在操作(Actions)执行之前或之后运行。过滤器可以应用于控制器(Controllers)或特定的操作方法。过滤…

Java-基础知识-包-带点不带点

在 IntelliJ IDEA 中,工程目录(通常指的是项目的包结构或目录结构)带点和不带点的区别主要是语义上的和约定上的。这里所说的“点”通常指的是在包名或目录名中的.字符。 带点的目录结构: 当您在 IntelliJ IDEA 中看到带点的目录…

Netty 应用与原理

更好的阅读体验 \huge{\color{red}{更好的阅读体验}} 更好的阅读体验 Java IO 模型 本篇示例代码仓库:learn-netty 基础概念 在 I/O 操作中有这么两组概念,其中同步/异步 要和线程中的同步线程/异步线程要区分开,这里指的是同步IO / 异步IO…

安全作业-1

1. windows登录的明文密码,存储过程是怎么样的,密文存在哪个文件下,该文件是否可以打开,并且查看到密文 用户在登录界面输入用户名和密码。Windows登录进程(winlogon.exe)接收用户的输入,并准备进行身份验证。Lsass处…

人脸识别开发项目汇总

1.基于FaceX-Zoo实现的人脸识别系统-CSDN博客 2.人脸识别:京东开源FaceX-Zoo:PyTorch工具箱 - 知乎 (zhihu.com) 3.人头识别-人群中准确快速的检测头部算法_在输入图像中检测人像头部的方法-CSDN博客 4.Github开源人脸识别项目face_recognition - 知乎…

ssm智能停车场管理系统

视频演示效果: SSMvue智能停车场 摘 要 本论文主要论述了如何使用JAVA语言开发一个智能停车场管理系统,本系统将严格按照软件开发流程进行各个阶段的工作,采用B/S架构,面向对象编程思想进行项目开发。在引言中,作者将论述智能停车…

Langchain实战:基于Chain实现Prompt的高级应用

Langchain实战 一. Langchain介绍二. 项目背景三. 代码实现3.1 导入必要的库并调用GPT大模型3.2 输出解析器(指定输出格式)3.3 定义Prompt模板3.4 构造LLMChain并推理3.5 解析推理结果3.6 异步调用 四. 参考文献 一. Langchain介绍 LangChain 是一个用于开发由语言模型驱动的应…

新兴游戏引擎Godot vs. 主流游戏引擎Unity和虚幻引擎,以及版本控制工具Perforce Helix Core如何与其高效集成

游戏行业出现一个新生事物——Godot,一个免费且开源的2D和3D游戏引擎。曾经由Unity和虚幻引擎(Unreal Engine)等巨头主导的领域如今迎来了竞争对手。随着最近“独特”定价模式的变化,越来越多的独立开发者和小型开发团队倾向于选择…

Vitis HLS 学习笔记--Syn Report解读(1)

目录 1. 介绍 2. 示例一 2.1 HLS 代码 2.2 Report 解读 2.2.1 General Information 2.2.2 Timing Estimate 2.2.3 Performance & Resource Estimates 2.2.4 HW interfaces 2.2.4.1 硬件接口报告 2.2.4.2 导出至 Vivado 中的 IP 2.2.4.3 Port-Level Protocols 端…

掌握Unix路径简化:五种有效算法比较【python力扣71题】

题目描述 给你一个字符串 path,表示一个 Unix 风格的绝对路径,请你简化它并返回。 Unix 风格的绝对路径中,.. 表示返回上一级目录,. 表示当前目录。简化路径必须始终以斜杠 / 开头,并且两个目录名之间必须只有一个斜…