[其他ST产品] stm32f103c8t6最小系统引脚及功能原理图

[复制链接]
3676|11
 楼主| 个百zz分点个 发表于 2023-5-30 13:36 | 显示全部楼层 |阅读模式
同学好,我是一名单片机工程师
.
今天来跟大家普及一下stm32f103单片机的最小系统组成和各部分功能。
视频教程获取在下方!

.

一、什么叫最小系统

最小系统就像我们人,我们活着每天都要吃饭,喝水。

饭和水就是我们的”燃料”,离开它们我们就挂了。

其实在芯片的世界也一样,单片机想要正常运行,它也需要”燃料”,这些燃料的组成就是最小系统。

.

.

一、“燃料”都由什么组成?

1.电源
8435564758b4838036.png ————————————————
版权声明:本文为CSDN博主「岁月哥」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/baidu_38915797/article/details/125454802

 楼主| 个百zz分点个 发表于 2023-5-30 13:36 | 显示全部楼层
拿STM32F103C8T6这个型号来说,总共有5个接电源正极和4个接地引脚,分别给内部不用的模块供电。

VDD:就是单片机的供电电压。

VDDA:VDD后面有个A,A=Analog,表示模拟的意思,就是芯片内部模拟器件的工作电压。

VSSA:表示模拟器件的公共端地。

VBAT:给后备区域供电,维持RTC/BKP寄存器这些数据掉电保存,一般是接纽扣电池,如果不需要可以直接接电源。
 楼主| 个百zz分点个 发表于 2023-5-30 13:36 | 显示全部楼层
228464758b6a16bdb.png

根据数据手册的说明,这几个引脚的供电电压最大不能超过3.6V。

说到数据手册,作为一个英语渣,这里多说一句,不要怕全是英文,不用全看懂,抓关键的地方看,其实来来去去就那几个英文。
 楼主| 个百zz分点个 发表于 2023-5-30 13:37 | 显示全部楼层
2.复位电路



.

.
9012664758b8d07fa8.png
复位电路的作用就是,板子上电的瞬间给单片机复位引脚(NRST)一个短暂的低电平,让单片机程序复位,把除了备份区域寄存器以外所有寄存器状态恢复原始状态。

简单来说就是让程序重头开始跑。

复位电路的原理是利用RC电路的充放电原理,在上电瞬间为NRST引脚产生一个短暂的低电平。

刚上电的时候电流会通过R19和C20到地,为C20充电,此时NRST的引脚为低电平。

当C20充满电以后,C20就处于”断路”的状态,此时NRST由低变高电平。
 楼主| 个百zz分点个 发表于 2023-5-30 13:39 | 显示全部楼层
3.系统时钟

5844664758bffb9a6d.png
5592664758c0b601b1.png
 楼主| 个百zz分点个 发表于 2023-5-30 13:39 | 显示全部楼层
系统时钟一般是加外部晶振电路,相当于给单片机一个心跳。

就跟人的心跳一样,没心跳肯定就GG了。

同样,单片机没心跳也跑不起程序。

这个心跳也是一个时机基准,为单片机系统时钟、定时器之类的提供时间的基准。

我们最终计算定时器的时间,都跟这个晶振息息相关。
 楼主| 个百zz分点个 发表于 2023-5-30 13:40 | 显示全部楼层
4.烧录口

在这里插入图片描述

.

.

烧录口的作用就是给单片机烧录程序,注入灵魂。
7979064758c351804b.png
STM32的烧录方式有几种,实际产品开发一般用SWD接口烧录,占用尺寸空间少,一般只需要5根线,也有些用4根线的,就是vdd不接,不接vdd烧录要单独给板子供电。

.
 楼主| 个百zz分点个 发表于 2023-5-30 13:40 | 显示全部楼层
5.Boot0和Boot1

Boot0和Boot1是用来选择STM32单片机的启动方式的。
6397564758c4d29cad.png

如果上图你看不懂什么意思,不要慌,正常的。
 楼主| 个百zz分点个 发表于 2023-5-30 13:40 | 显示全部楼层
简单来说,大家要想正常跑程序就要把Boot0和Boot1都接到地,就是正常工作模式。

如果我们要使用串口烧录,也就是ISP,就需要把BOOT0接到电源,BOOT1接到地,烧录完以后再全部接到地,相对麻烦很多。

这也就是为什么我只用SWD烧录的原因,直接全部接地就行了。

.
 楼主| 个百zz分点个 发表于 2023-5-30 13:41 | 显示全部楼层
电路图中Boot0和Boot1加一个10K电阻,然后接到地
8909164758c6566e70.png
通过上面这些电路的组合,单片机就能正常跑程序了。
 楼主| 个百zz分点个 发表于 2023-5-30 13:41 | 显示全部楼层
如何验证你程序有没有正常在跑?

我一般在开发产品的时候,首先会把LED的驱动调出来获取安全感,让它每秒闪一次,安全感就来了。

.
 楼主| 个百zz分点个 发表于 2023-5-30 13:41 | 显示全部楼层
stm32f103温度检测仿真图'

2261864758c8be141c.png
您需要登录后才可以回帖 登录 | 注册

本版积分规则

53

主题

679

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部