云计算百科
云计算领域专业知识百科平台

STM32复位电路:安全启动的关键

一、什么是复位电路

复位电路(Reset Circuit),是单片机 / 嵌入式系统上电、异常、手动操作时,让芯片回到初始、安全、可控状态的基础硬件电路。

简单理解:

  • 相当于电脑的重启键 + 开机自检
  • 让 STM32 从一个确定、干净的起点开始运行
  • 防止芯片上电乱码、程序跑飞、引脚乱输出、外设失控
  • 二、复位电路的核心作用
  • 上电复位(POR)刚通电时电压不稳定,复位电路拉住复位脚,等电源稳定后再释放,让芯片正常启动。

  • 手动复位(手动复位键)程序卡死、死机时,按下按键强制复位,恢复运行。

  • 异常状态保护电压掉电、干扰、程序跑飞时,自动复位,避免设备失控。

    • 三、STM32 复位的本质(不是所有的芯片都是低电平有效,设计时还需根据实际情况决定,目前针对的芯片是STM32的F1和F4系列)

      STM32 有一个专用复位引脚:NRST(低电平有效)

    • NRST = 低电平 → 芯片复位
    • NRST = 高电平 → 芯片正常运行
    • 复位电路的任务,就是控制 NRST 脚的电平,在合适时机拉低、再释放拉高。

      2.2 电路组成

      这个是从STM32开发指南截取的复位电路。

    • 可能有的人会问,如何知道R3和C12的规格大小?我起初也有这样的疑问,经过查看前辈们的解释,每个芯片手册都对复位电压和复位时间有要求。

    • 这是STM32F103C8T6的手册查到的

    • 这是STM32F407的手册查到的,可以看到不同系列的电压和时间还是有些许差别的。那这个时间怎么算呢,

    • NRST → 10kΩ 电阻 → VDD
    • NRST → 0.1μF 电容 → GND
    • 这种外部 RC 复位的保持时间才需要计算。

      公式

      t≈1.1×R×C这是电容充电到大约 高电平阈值(≈0.7VDD) 的时间,也就是 NRST 从低变高、释放复位的时间。

      举例

    • R = 10 kΩ
    • C = 0.1 μF = 1×10⁻⁷ F
    • t≈1.1×10000×1×10−7=0.0011 s=1.1 ms

      也就是说:上电后,复位保持约 1.1ms 才释放复位。

    • 第 3 节 工作原理详细解读

      3.1 上电复位过程(POR)

    • 刚上电,VCC 从 0 → 3.3V
    • 电容 C 相当于短路,NRST 被拉低
    • STM32 保持复位状态
    • 电容慢慢充电,NRST 电压逐渐升高
    • 超过复位阈值 → 复位结束,芯片启动
    • 作用:等待电源稳定,避免电压抖动导致启动失败。

      3.2 手动按键复位

    • 按下按键 → NRST 直接接 GND → 低电平复位
    • 程序立刻停止,寄存器全部初始化
    • 松开按键 → NRST 被 10K 上拉 → 重新启动
    • 3.3 掉电复位

    • 电源突然下降
    • 电容放电,NRST 快速变低
    • 芯片进入复位,防止半压状态下乱动作

      第 4 节 RC 参数为什么选 10K + 0.1μF

      4.1 RC 时间常数

      τ=R×C=10K×0.1μF=0.001s=1ms

      复位持续时间约 1~3ms,足够 STM32 稳定启动。

    • 10kΩ电阻功耗低、抗干扰佳;0.1μF电容可滤除电源高频杂波,防止误复位。

赞(0)
未经允许不得转载:网硕互联帮助中心 » STM32复位电路:安全启动的关键
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!