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.mfbz.cn/a/567613.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

达梦(DM)数据库表索引

达梦DM数据库表索引 表索引索引准则其他准则 创建索引显式地创建索引其他创建索引语句 使用索引重建索引删除索引 表索引 达梦数据库表索引相关内容比较多,常用的可能也就固定的一些,这里主要说一下常用的索引,从物理存储角度进行分类&#…

B008-方法参数传递可变参数工具类

目录 方法参数传递可变参数冒泡排序Arrays工具类Arrays工具类常用方法 方法参数传递 /*** java中只有值传递* 基本数据类型 传递的是具体的值* 引用数据类型 传递的是地址值*/ public class _01_ParamPass {public static void main(String[] args) {// 调用方法 getSumge…

网络变压器在网络分析仪上能通过测试,装上设备后网速达不到呢?

Hqst华轩盛(石门盈盛)电子导读:今天和大家一起探讨网络变压器在网络分析仪上能通过测试,装上设备后网通设备网速达不到的可能原因及其处理方式 一、出现这种情况可能有以下原因: 1.1. 设备兼容性问题:设备其它元器件与 网络…

Docker容器化技术:概述与安装

目录 一、云基础知识 1、常见的云服务厂商 2、云计算服务模式三种层次 3、什么是虚拟化 4、什么是虚拟机 5、虚拟化产品 5.1 仿真虚拟化产品 5.2 半虚拟化产品 5.3 全虚拟化产品 6、虚拟机架构 6.1 寄居架构 6.2 源生架构 二、认识容器 1、容器的概述 2、容器的…

【Netty】ByteBuf与拆包粘包

ByteBuf 在介绍ByteBuf之前先来一套基础的代码来演示ByteBuf的使用。 package blossom.project.netty;import io.netty.buffer.ByteBuf; import io.netty.buffer.Unpooled;import java.nio.charset.StandardCharsets;/*** author: ZhangBlossom* date: 2023/12/14 13:37* con…

web学习

day02-01 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>js快速引入</title> <!-- 内部脚本--> <!-- <script>--> <!-- alert(Hello JS)--> <!-- <…

【linux】匿名管道|进程池

1.进程为什么要通信&#xff1f; 进程也是需要某种协同的&#xff0c;所以如何协同的前提条件(通信) 通信数据的类别&#xff1a; 1.通知就绪的 2.单纯的数据 3.控制相关的信息 2.进程如何通信&#xff1f; 进程间通信&#xff0c;成本会高一点 进程间通信的前提&#xff0c;先…

制氢机远程监控运维方案

制氢机远程监控运维方案 在当今能源转型的大背景下&#xff0c;氢能作为清洁、高效且可再生的能源载体&#xff0c;其重要性日益凸显。而制氢机作为氢能产业链中的关键设备&#xff0c;其稳定运行与高效运维对于保障氢气供应、推动氢能产业健康发展至关重要。在此背景下&#…

动态规划——切割钢条问题

一、动态规划 动态规划算法通常用于解决最优化问题&#xff08;寻求最优解&#xff09;。其思想与分治法类似&#xff0c;将待求解的问题分成若干个子问题&#xff0c;先求出子问题&#xff0c;再根据子问题的解求出原来问题中的解&#xff0c;与分支法不同的是&#xff0c;在动…

Oracle使用内部包自定义创建表空间和用户

如果之前有类似的表空间,可以使用dbms自动生成对应的表空间和数据文件 select dbms_metadata.get_ddl(TABLESPACE,ts.tablespace_name) from dba_tablespaces ts; 可以使用类似的 SQL> set echo off SQL> spool /data/logs/create_tablespace.log SQL> select dbms…

Mimics21软件学习总结

一. Mimics21软件安装过程 ① 解压下载好的Mimics软件包&#xff1b; ② 双击“MIS_Medical_21.0.exe”打开等待安装程序初始化完成&#xff1b; ③ 进入安装向导点击“next”&#xff1b; ④ 点击选择“Iaccept the agreement”同意相关协议&#xff0c;随后点击“next”&…

多模态大模型训练数据以及微调数据格式

多模态数据&#xff0c;尤其是中文多模态数据&#xff0c;找一些中文多模态的数据 中文多模态数据集汇总_数据集-阿里云天池本文整理汇总了业界常用的多模态中文数据集&#xff0c;提供了每个数据集的简介、官网、下载地址、Github代码等信息&#xff0c;方便算法研究人员学习…

虚假新闻检测——Adapting Fake News Detection to the Era of Large Language Models

论文地址&#xff1a;https://arxiv.org/abs/2311.04917 1.概论 尽管大量的研究致力于虚假新闻检测&#xff0c;这些研究普遍存在两大局限性&#xff1a;其一&#xff0c;它们往往默认所有新闻文本均出自人类之手&#xff0c;忽略了机器深度改写乃至生成的真实新闻日益增长的现…

Etsy多账号关联怎么办?Etsy店铺防关联解决方法

Etsy虽然相对于其他跨境电商平台来说比较小众&#xff0c;但因为平台是以卖手工艺品为主的&#xff0c;所以成本较低&#xff0c;利润很高。许多跨境卖家都纷纷入驻&#xff0c;导致平台规则越发严格&#xff0c;操作不当就会封号&#xff0c;比如一个卖家操作多个账号会出现关…

国外问卷调查如何做?需要借助海外住宅IP吗?

在数字化时代&#xff0c;国外问卷调查不仅是了解市场需求的重要手段&#xff0c;还成为了一项能够赚取额外收入的方式。随着全球范围内消费者行为的多样化&#xff0c;各类企业和机构越来越需要了解不同地区的用户观点和偏好&#xff0c;以优化产品和服务。 一、国外问卷调查…

Flask中的JWT认证构建安全的用户身份验证系统

&#x1f47d;发现宝藏 前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。【点击进入巨牛的人工智能学习网站】。 Flask中的JWT认证&#xff1a;构建安全的用户身份验证系统 随着Web应用程序的发展&#xf…

Linux给磁盘扩容(LVM方式)

Linux给磁盘扩容&#xff08;LVM方式&#xff09; 最近测试性能&#xff0c;在本地打数据时&#xff0c;发现磁盘空间不足&#xff0c;于是想手动给/挂载点添加空间。这里介绍通过LVM方式快速给磁盘扩容。 LVM:是一种技术&#xff0c;方便管理磁盘。如果不用LVM&#xff0c;那…

js的算法-交换排序(快速排序)

快速排序 基本思想 快速排序的基本思想是基于分治法的&#xff1a;在待排序表L【1...n】中任意取一个元素p 作为枢轴&#xff08;或基准&#xff0c;通常取首元素&#xff09;。通过一趟排序将待排序表划分为独立的两部分L【1...k-1】和L【k1...n】;这样的话&#xff0c;L【1…

Linux下的基本指令

基本指令 前言ls 指令语法功能常用选项举例注意关于拼接关于 -a关于文件ls与/的联用ls与根目录ls与任意文件夹ls与常用选项与路径 pwd命令语法功能常用选项注意window与Linux文件路径的区别 cd 指令语法功能举例注意cd路径... touch指令语法功能常用选项 mkdir指令语法功能常用…

【RAG 论文】Query2doc — 使用 LLM 做 Query Expansion 来提高信息检索能力

论文&#xff1a;Query2doc: Query Expansion with Large Language Models ⭐⭐⭐⭐⭐ Microsoft Research, EMNLP 2023 文章目录 背景介绍Query2doc 论文速读实现细节实验结果和分析总结分析 背景介绍 信息检索&#xff08;Information Retrieval&#xff0c;IR&#xff09;指…