1.电源模块

采用type-c接口5V供电,电容C9用于滤除低频波动声,电容C10用于滤除高频噪声,确保输入电压稳定无波动;CC1和CC2通过电阻R7和R8接GND的作用是方向检测。

USB Type-C 协议规定:
若 CC 引脚通过 5.1kΩ 电阻接地 → 设备被识别为 UFP(需要从外部获取电源,如充电时手机作为 UFP);
若 CC 引脚通过上拉电阻接 VBUS → 设备被识别为 DFP(上游端口,如充电器、电脑主机)(负责对外供电)。

2.DC-DC5V转3.3V

IN (Pin 4):电源输入引脚,连接 5V 电源。
EN (Pin 1):使能引脚。通过电阻 R11 上拉到输入端,意味着只要 5V 有电,芯片就会自动启动工作。
LX (Pin 3):开关节点。连接电感 L2,芯片内部的高速开关在这里产生脉冲电压。
FB (Pin 5):反馈引脚。用于检测输出电压,并调节开关动作以保持电压稳定。
L2 (2.2uH):功率电感。
在芯片内部开关导通时,它储存能量;在开关断开时,它释放能量给负载。
R12 (100kΩ) & R13 (22.1kΩ):反馈电阻分压网络。
这两个电阻串联在 3.3V 输出端和地之间,将输出电压按比例“分压”后送入芯片的 FB 引脚。
FB引脚的反馈原理:芯片内部会将 FB 引脚的电压与基准电压0.6V做对比,若FB引脚电压小于0.6V,芯片就会识别到输出电压Vout<3.3V,就会控制LX引脚增大输出电压直到FB引脚的电压等于0.6V,此时输出电压Vout就会被抬回3.3V;反之若FB引脚电压大于0.6V,芯片就会识别到输出电压Vout>3.3V,就会控制LX引脚降低输出电压直到FB引脚的电压等于0.6V,此时输出电压Vout就会被下拉回3.3V。根据公式Vout=0.6*(1+R12/R13)从而精准控制输出为 3.3V。

3.LDO5V转3.3V

LM-1117-3.3通过内部电路消耗多余的能量(将电能转化为热能),将5V电压转化为3.3V输出

其中VIN引脚为输入引脚,输入端通过C12滤除低频纹波和瞬态干扰,为芯片提供稳定的输入能量储备,防止因负载突变导致输入电压跌落;通过C13滤除高频噪声;从而输入稳定的5V电压

两个VOUT引脚目的是将输出电流分流,防止因电流过大导致芯片过热烧毁

与输入电容类似,输出端的C14和C15大小电容并联,确保输出电压在各种负载条件下都保持稳定和低噪声

R9 用作限制流过 LED2 的电流,防止 LED 因电流过大而烧毁。
LED2显示 3.3V 电源是否正常工作。当 3.3V 输出正常时,LED 点亮;若输出异常(如无电压或电压过低),LED 会熄灭或变暗,起到故障指示作用。

4.时钟模块8MHz和32.768kHz

C1,C2这两个电容与晶振一起构成并联谐振回路,帮助晶振起振,维持振荡的稳定性,微调频率,使其精确落在 8MHz ,它们连接到地,为交流信号提供回路。

C3,C4作用同上

OSC IN:振荡器输入端。连接到芯片内部的反相放大器输入端。晶振产生的信号从这里进入芯片内部进行放大。
OSC OUT:振荡器输出端。连接到芯片内部反相放大器的输出端。放大后的信号从这里输出,驱动晶振继续振动,形成闭环反馈。

如果我们对 32.768kHz 的信号进行 15 级二分频(每级除以2),最终得到的频率就是 1𝐻𝑧,32768÷2 *15=1Hz ,即每秒一个脉冲。RTC 芯片都内置了 15 级分频器,因此用频率为32.768kHz的晶振可以精准计时,不需要额外配置

X1不能替代X2,因为RTC只有15级分频器,无法将其分频到1Hz,且高频晶振耗电量大,当主电路停止供电,会迅速耗尽 RTC电源

X2不能替代X1,X2的低频接到主时钟引脚的话,cpu运行速率会变得极慢,而且芯片内的高频振荡器很难让低频晶振在高频电路上起振。

5.RTC电源

在主电源(3.3V)正常供电时,给系统供电并隔离电池当主电源断电时自动无缝切换到电池(VBAT)供电,确保时间不丢失。D1是高速开关二极管。电流只能从左侧(3.3V)流向右侧(VBAT),不能反向流动。C8 (输入侧滤波),C7 (RTC 侧滤波)

6.复位按键

当电路刚接通 3.3V 电源时, C5 两端的电压不能突变。
此时,C5 相当于瞬间短路,会将 NRST 引脚的电平直接拉低到地(GND)

电路稳定后,按下复位按键也会将NRST直接拉低到地

6.SWD下载

P1(2.54-2*5P简牛):这是标准的10针排针接口,用于连接调试器(如ST-Link、J-Link)。其引脚定义遵循ARM CMSIS-DAP标准,包含电源参考、时钟、数据、复位和地线。

NRST(Pin 1):系统复位引脚。当调试器需要强制芯片进入复位状态时,会通过此引脚拉低电平,使MCU复位,从而确保调试器能可靠地与芯片建立通信。

SWDIO(Pin 2):串行数据线。这是一个双向半双工引脚,用于在调试器和MCU之间传输命令、数据和响应。所有读写操作都通过这根线完成。

SWCLK(Pin 4):串行时钟线。由调试器提供同步时钟信号,控制数据传输的时序。所有数据位的采样和发送都以此信号为基准。

为什么要让调试器提供同步时钟:因为调试器不知道芯片当前的内部状态(比如芯片可能因为程序错误导致内部时钟配置乱了,或者晶振都没起振),所以它不能依赖芯片提供的时钟。

7.启动配置

STM32芯片内部集成了多个存储区域,包括用户闪存、系统存储器和内置SRAM。不同的应用场景需要不同的启动方式:
用户闪存启动(BOOT0=0, BOOT1=X):这是最常见的模式,用于正常运行用户编写的程序。芯片从上电开始就执行存储在Flash中的代码,适用于产品量产后的正常使用。
系统存储器启动(BOOT0=1, BOOT1=0):此模式下,芯片会执行出厂时预置的Bootloader程序,通常用于通过串口、USB等接口进行固件更新(ISP/IAP)。这在开发阶段或现场升级时非常有用,无需使用调试器即可烧录程序。
内置SRAM启动(BOOT0=1, BOOT1=1):此模式下,芯片从SRAM开始执行程序。由于SRAM是易失性存储器,断电后程序会丢失,因此主要用于临时调试、快速验证代码或解除Flash读保护等特殊场景。

8.LED灯

火焰传感器

D2 (ST-5L5B):这是一个光敏三极管(Phototransistor)
特性:当有光照射时,产生光电流使集电极(C)和发射极(E)之间导通;无光时截止。
作用:将光信号转换为微弱的电流信号。
R19 (2kΩ):下拉电阻/负载电阻。
作用:它与光敏三极管 D2 串联分压。当 D2 导通时,电流流过 R19 产生电压降。它将 D2 的电流变化转换为电压变化作为后续比较器的输入信号。阻值大小决定了检测的灵敏度。
参考电压源(左中)
R20 (100Ω) & R18 (3386P-1-103TLF):这是一个分压电路。
R20:限流保护电阻,防止电位器调节到 0Ω 时短路。
R18:精密多圈电位器(可调电阻)。
作用:从 3.3V 电源分出一个可调节的直流电压(VREF)。这个电压作为阈值,用来设定“多亮才算有光”或者“多暗才算遮挡”。旋转电位器可以改变比较器的触发门槛。


3. 信号比较与处理(右侧 U5)
U5 (LM393):双电压比较器芯片。这里使用了其中的一半(OUT1, IN1-, IN1+)。
Pin 1 (OUT1):比较器的输出端。当同相输入端电压IN1+ > 反相输入端电压IN1-时,输出高阻态被上拉到3.3v(LM393 的输出级是开集电极(Open Collector)结构,内部只能拉低到地,不能主动输出高电平。必须接这个电阻连接到 3.3V,才能在输出高电平时提供电流路径,确保输出高电平为 3.3V。);反之输出低电平(接地)。
Pin 8 (VCC) & Pin 4 (GND):芯片的电源供电。

LED接OUT1,当out高电平时即(同相输入端电压IN1+ > 反相输入端电压IN1-)才会亮

光敏模块

运放工作在线性区(也就是有负反馈存在时),它的同相输入端(IN+,Pin 3)和反相输入端(IN-,Pin 2)的电压就会无限接近

但因为反相输入端 (IN-) 没有对地的电阻,Vout1=IN1-

起到缓冲作用,将脆弱的电压信号转换为稳定的电压信号

温湿度模块

C28滤除电源线上的高频噪声,为传感器提供一个稳定、干净的电源,确保测量数据的准确性,
防止因电源波动导致传感器工作异常。
R28 (10K) 和 R29 (10K)上拉电阻I2C 总线的数据线(SDA)和时钟线(SCL)都采用“开漏”输出模式,
这意味着它们只能将信号线拉低,而无法主动输出高电平。
因此,必须外接上拉电阻连接到 3.3V 电源,以便在总线空闲时将信号线维持在稳定的高电平状态。
没有这两个电阻,I2C 通信将无法正常工作。

心率模块

WiFi模块

引出GPIO0、3.3V和GND。
为了方便手动进入下载模式:在下载程序时,
将GPIO0接地(拉低),然后复位芯片,即可进入固件烧录模式。

usb转串口

U11负责将电脑的USB信号(差分信号D+、D-)转换为单片机可以识别的TTL电平串口信号(TXD、RXD)
C31、C32用于滤除电源噪声,为芯片提供稳定的3.3V工作电压,防止因电源波动导致通信错误。

使能模块

Logo

智能硬件社区聚焦AI智能硬件技术生态,汇聚嵌入式AI、物联网硬件开发者,打造交流分享平台,同步全国赛事资讯、开展 OPC 核心人才招募,助力技术落地与开发者成长。

更多推荐