STM32 复位电路设计

这篇具有很好参考价值的文章主要介绍了STM32 复位电路设计。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

在此之前我是个只会抄写原理图的工程师,每当遇到一个问题时,确需要解决很久,最根本的原因在于不明白其中的原理,这次补充一下单片机复位电路设计

1. 为什么要设计复位电路?

在做一件事情之前需要明白为什么要这么做,我们为什么要设计复位电路呢?一下几点原因是我总结出来的。

  • 当你的电脑出现卡死等问题的时候,大部分人会直接重启(攻城狮除外),目前市面上很多电子产品都会用复位按键,所以一个成熟的产品是大概率需要复位的
  • 在产品调试阶段,尤其在调试软件的时候需要经常复位软件, 有些工程师也会采用软件复位, 不过软件复位没有硬件复位来的快捷。

以上两个理由足以说明为什么要复位电路了。

2. 复位时是具体做了哪些工作?

主要做的就是初始化每个寄存器,包括最重要的 PC 指针,不包括 RAM,然后单片机从复位地址开始执行程序。(欢迎补充)

3. 复位的前提需要什么?

3.1 复位信号

每种方式对应一种复位信号,比如硬件复位需要低电平,软件复位需要设置寄存器,看门狗复位需要配置寄存器,下面我们着重讲硬件复位,由STM32的数据手册可知,复位管脚低电平电压需要小于0.8V,输入脉冲时间为100ns。所以只需要在NRST管脚给小于0.8V的电压,持续时间为100ns就可以实现复位了。
STM32 复位电路设计

3.2 CPU正常工作

为什么CPU需要正常工作?因为复位操作需要设计PC寄存器, 这涉及到软件层面, 故所以需要CPU能正常功能才能进行复位

3.3 晶振正常工作

为什么晶振需要正常工作?由3.2可知CPU需要正常功能, 那么CPU是靠什么正常工作的呢?显而易见CPU是靠晶振提供时钟频率的,所以晶振需要正常工作

3.4 电源正常工作

试想一下,如果电源不稳定,电压波动范围很大, 是不是会影响CPU的运行?的确是这样子的,电源一定要稳定。

3.5 复位信号是不是只要满足低电平时间大于100ns就可以呢?

100ns时间是很短的,很容易达到, 但是有没有试想一下如果只给100nS,那么此时是由复位信号了, 但是电源还没到VCC,晶振还没起振? 这一定存在的,因为上电时,Vcc 的上升时间约为 10ms,而振荡器的起振时间取决于振荡频率,如晶振频率为 10MHz,起振时间为 1ms;晶振频率为 1MHz,起振时间则为 10ms。目前STM32单片机大部分采用8M高速晶振,那么主要问题出在电源的上升时间,为了保证系统的稳定性, 这里我们去2倍吧,20ms的低电平时间。

4. 怎么设计复位电路?

目前市面上的复位电路大部分采用RC复位,这种方式成本低廉,稳定性好,被用于大部分的设计中。

4.1 RC充电原理

4.1.1 什么是电容充电?

电荷在电容器极板上聚集的过程叫做充电过程,这个过程不是瞬间完成的,而是需要一段时间,时间取决于电路的组成元件。

4.1.2 基本RC充电电路

STM32 复位电路设计
如图1所示,开关闭合的瞬间,电子在电源的作用下从位于电容顶部的极板沿电路移动并聚集到位于底部的极板上,导致在顶部极板聚集了正电荷,在底部极板聚集了负电荷。
开始时,电子的转移非常迅速,随后由于两个极板间产生的电压逐渐接近于所加的电源电压,移动速度减慢。最终,当电容两个极板间的电压达到所加的电源电压时,电子移动过程停止,这时候,极板上的净电荷是:
STM32 复位电路设计
电荷在极板上聚集的过程叫做瞬态过程 —— 电压或者电流从一个稳态到另一个稳态的过程。电压-时间变化过程曲线如图2所示:
STM32 复位电路设计
注意:vc 和 Vc 是有区别的。vc是变量,Vc是常量。

从图2中可以看出, t=0s时,电容器两端电压是 0V;一开始,电荷聚集的速度很快,导致电压急剧增加。随着时间的推移,电荷聚集的速度减慢,导致电压变化的速率也减缓,即电压继续增加,但速率变慢。最终,由于极板间电压接近外加电压,充电速率极低,直到极板间电压等于外加电压 —— 瞬态过程结束。

可以用数学中的指数函数来描述上述过程,图2的过程曲线可以用
STM32 复位电路设计
式中:

  • vc用小写斜体来表示,因为它是随时间变化的,不是常数;
  • 指数写为时间(t)除以常数涛,涛称作时间常数,定义为:
    涛=RC (S)
  • t=0S 时, vc=0;
  • t=涛S 时, vc=0.632E;
  • t=2涛S 时, vc=0.865E;
  • t=3涛S 时, vc=0.993E;

可以得出:在直流电源作用的电路中,电容器两端的电压在经过5个时间常数后基本等于外部电压,即充电过程基本结束。
或者:一个电容的瞬态或充电过程在经历5个时间常数后便基本结束。

电流-时间变化过程如图3所示:
STM32 复位电路设计
下图为涛=1,E=1 的充电(上升曲线)和放电(下降曲线)的电压时序图
STM32 复位电路设计

4.1.3 关于时间常数涛

时间常数涛不可能为0,因为在容性电路中总会存在一定的电阻。在有些情况下,涛的值可能很小,但是无论多小,5倍涛的值一定存在,不可能为0。因此可以得出:电容两端的电压不能瞬间改变。

更进一步的说,电容的大小反映了电容电压变化的程度。电容越大,时间常数越大,电容两端的电压达到所加电压的时间就会越长。这在避雷针和浪涌抑制器的设计上非常有帮助,避雷针和浪涌抑制器是用来保护电路以免电路受到不可预知的过电压的损害。

4.2 STM32单片机复位电路设计

4.2.1 复位原理

我们可以根据上述的RC充电原理,采用一个电阻和一个电容串联,中间段连接至STM32的复位管脚。为了保证复位的时间很短,由上述曲线可知,当在一个时间常数时,电压为电源电压的0.632倍,若VCC=3.3V,那么一个时间常数时电压为:3.3-3.30.632=1.21V >0.8V 不满足我们的需求, 2个时间常数的时候电压为3.3(1-0.86)=0.462 < 0.8V. 满足需求,时间为100ms,2RC=20ms, RC=10mS, 可选择R=10K,C=10uF。

4.2.2 原理图设计

按照我们上面说的理论,其实有两种方式,如下图所示,那么哪种才是我们想要的呢?下图两者的区别在于电容的电阻的位置不同, 由于电容两端的电压不能突变,当刚上电时,A电路为低电平,此时单片机复位,直到保持到1个时间常数后,NRST为高电平,而B电路,一上电为高电平,1个时间常数后NRST管脚为低电平, 并且一直保持低电平, 这样会导致MCU一直复位,所以正确的电路应该A电路,而B电路适合用于高电平复位的MCU。
STM32 复位电路设计
上图为上电自动复位电路, 如果需要加手动复位的话也和简单,只需要在AB电路的电容两端并联一个按键,当按键按下时,A图中的NRST为低电平,MCU复位,B电路为高电平。文章来源地址https://www.toymoban.com/news/detail-400681.html

参考资料

  • lRC电路的瞬态响应-充电过程.
  • 单片机在复位的时候,都进行了哪些操作?如何进行复位电路的设计?.

到了这里,关于STM32 复位电路设计的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Stm32最小系统板电路图设计、PCB设计

    复位电路,就是指单片机芯片可以通过外部外部引脚输入复位电平信号,从而使单片机除备份区以外的所有寄存器都恢复为默认值,且芯片内烧录的程序会重新执行。对于STM32103C8T6芯片来说,其复位引脚是7号引脚,也就是NRST引脚。 通过复位电路对Stm32芯片系统进行的复位是

    2024年02月10日
    浏览(36)
  • 基于STM32的最小系统电路设计(手把手零基础教学)

       在上篇介绍完《STM32的核心板制作流程》后,本篇我们将开始学习STM32最小系统电路的设计。具体包括 复位电路 、 晶振电路 、 电源转换电路 、 SWD下载电路 、 LED测试电路 、 芯片外扩引脚 和 STM32微控制电路 ,核心板原理图如下所示。 一个简单的复位电路图,如下所

    2024年02月03日
    浏览(42)
  • STM32F103RCT6电路设计及绘制方法和学习体会

    目录 1电路图各部分原理分析 1.1通信-下载板块接口电路 1.1.1 通信模块 1.1.2 显示灯 1.2电源转化电路 1.2.1 电源转化 1.3晶振电路 1.4 OLED显示屏接口电路 1.5 独立按键电路 1.6 JTAG/SWD调试接口电路 1.7 STM32微控制器电路 1.7.1 副芯片原理 1.7.2 主芯片原理 1.8 外扩引脚 1.9 显示灯 2图纸的

    2024年02月14日
    浏览(57)
  • 用STM32单片机ADC+NTC热敏电阻采集温度的设计思路 | 附参考电路

    目录 前言 一、热敏电阻NTC 二、参考电路  三、激励电压选择 记录一些我在工作和学习过程中遇到的问题 NTC:在淘宝随便买的 单片机型号:STM32G030C8T6 目的:用单片机采集NTC温度 本文主要是介绍关于NTC激励电压的选择        热敏电阻 NTC(Negative Temperature Coefficient) , 直

    2024年02月02日
    浏览(45)
  • 模拟电路设计(32)---乙类推挽功率放大器

    由于甲类功率放大器的静态工作电流很大,效率不会超过50%,而乙类功放静态电流为零,这样效率得以提高。但乙类工作状态,晶体管只有半个周期工作,信号波形被削去一半,将产生严重的失真。 如果使两只相同的晶体管交替工作,一只工作在信号正半周期,另一只工作在

    2023年04月10日
    浏览(44)
  • STM32最小系统板上所有电路的认识和学习。(晶振电路(电容的作用),复位电路,下载端口,供电电路)

    在STM32最小系统板上,系统电路包括以下内容: 外部晶体振荡电路:用于提供系统时钟。 电源电路:包括5V稳压芯片和3.3V稳压芯片,用于提供芯片和外围器件所需的电压。 复位电路:包括复位电路和手动复位按键,用于确保系统的可靠启动。 调试接口:包括SWD调试接口和

    2023年04月19日
    浏览(40)
  • STM32的一键下载CH340 DTR RTS与复位电路NRST的学习笔记

    这两天在学习stm32最小系统板的时候 对这一部分特别的不理解 于是就去找了很多东西去看  先说一键下载电路吧 先引用一张正点原子的原理图: 在芯片手册上查找ch340的手册,上面对于 RTS与DTR的定义是这样的 :   这就说明 我们是可以去控制RTS与DTR的一个高低电平的 从而

    2023年04月23日
    浏览(38)
  • 基于DSP+FPGA+ADS1282支持32Bit高精度数据采集方案(二)模拟电路设计

    如图 4.1 所示是系统硬件系统的信号框图,数字信号处理板上的主要核心是 两个处理芯片,即 FPGA 和 DSP ,其中 FPGA 主要作用是做 DSP 和外围接口的 桥梁及数据预处理, DSP 做为数据解算核心。 FPGA 通过各种的数据总线接收外部设备传输过来的数据,并进行打包处理 以及其他

    2024年02月02日
    浏览(53)
  • 计算机组成原理32位MIPS CPU设计实验(指令译码器电路设计 、时序发生器状态机设计、时序发生器输出函数、硬布线控制器)

    这次实验是32位MIPS CPU设计实验(单总线CPU-定长指令周期-3级时序),在头歌当中一共需要我们进行六道题的测试,分别为MIPS指令译码器设计,定长指令周期(时序发生FSM设计,时序发生器输出函数设计,硬布线控制器,单总线CPU设计),硬布线控制器组合逻辑单元。其中由于

    2024年02月02日
    浏览(40)
  • 模拟电路数字电路设计、multisum仿真、交流电压超限报警系统设计、详细设计说明,电路仿真

    在日常生活中,我们所使用电器都有额定的功率和额定电压、电流,当电压电流超过额定值时,电路就有可能被烧坏。如果当电器的电压超过额定值时,电路能够发出报警,从而让我们及时的处理,那么就可以有效的保护电器,提高电器的使用寿命。 本设计就是要设计一个交

    2024年02月10日
    浏览(52)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包