单片机常见的复位方式

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

        几种较为常见的单片机复位方式:外部复位(NRST引脚复位)、看门狗复位、软件复位、低功耗管理复位。

1、外部复位

        外部复位依赖硬件的设计,考虑应用设计复位电路。

1.1、上电复位

        低电平上电复位:电容两端的电压 不会突变,所以在上电的一刹那NRST引脚的是低电平,单片机复位重启,在很短的时间内,引脚电平由低变到高,单片正常工作。

单片机复位电路,单片机,嵌入式硬件

图1  低电平上电复位电路图

        高电平上电复位:引脚在上电前一直是低电平,在上电的一段时间内,引脚由低电平变为高电平实现复位。

单片机复位电路,单片机,嵌入式硬件

图2  高电平上电复位电路图

1.2、手动复位

        低电平手动复位:在单片机工作时,想要对其进行复位操作。下图不仅可以上电复位,在按键按下时NRET变成低电平,进行复位。

单片机复位电路,单片机,嵌入式硬件

图3  低电平手动复位图 

        低电平手动复位:按键按键引脚变成高电平,进行复位。

单片机复位电路,单片机,嵌入式硬件

 图4  高电平手动复位图 

2、看门狗复位

2.1、看门狗简介和复位原理

        一个是独立看门狗另外一个是窗口看门狗,当计数器达到给定的超时值时,触发一个中断(仅适用于窗口型看门狗)或产生系统复位。

        独立看门狗(IWDG)由专用的低速时钟(LSI)驱动,即使主时钟发生故障它也仍然有效,LSI 的频率一般在 30~60KHZ 之间,根据温度和工作场合会有一定的漂移,我们一般取 40KHZ。窗口看门狗由从APB1时钟分频后得到的时钟驱动,通过可配置的时间窗口来检测应用程序非正常的过迟或过早的操作。

        单片机系统在外界的干扰下会出现程序跑飞的现象导致出现死循环,看门狗电路就是为了避免这种情况的发生。看门狗的作用就是在一定时间内(通过定时计数器实现)没有接收喂狗信号(表示 MCU 已经挂了),便实现处理器的自动复位重启(发送复位信号)。

2.2、代码示例

2.2.1、iwdg.c代码

#include "iwdg.h"

/*初始化独立看门狗
prer:分频数:0~7(只有低3位有效!)
分频因子=4*2^prer.但最大值只能是256!
rlr:重装载寄存器值:低11位有效
时间计算(大概):Tout=((4*2^prer)*rlr)/40(ms).
*/

void IWDG_Init(u8 prer,u16 rlr)
{
	IWDG_WriteAccessCmd(IWDG_WriteAccess_Enable);	//使能对寄存器I写操作
	IWDG_SetPrescaler(prer);						//设置IWDG预分频值
	IWDG_SetReload(rlr);							//设置IWDG重装载值
	IWDG_ReloadCounter();							//按照IWDG重装载寄存器的值重装载IWDG计数器
	IWDG_Enable();									//使能IWDG
}
//喂独立看门狗
void IWDG_Feed(void)
{
	IWDG_ReloadCounter();
}

2.2.2、主函数调用代码

#include "iwdg.h"

int main(void)
{													
	IWDG_Init(4,2000);											//初始化看门狗
	while (1)
	{
		IWDG_Feed();											//喂看门狗
        /* 程序代码  */
    }
}

        一旦程序跑飞,一段时间内没有“喂狗”,程序复位。

3、软件复位

        调用STM32官方标准库的函数。

 /* 需要时调用下面函数即可复位 */
__set_FAULTMASK(1);      // 关闭所有中端
NVIC_SystemReset();      // 复位

        触发某个操作,执行某个程序时,调用该函数即可复位,在官方库中跳转可以看到该函数。文章来源地址https://www.toymoban.com/news/detail-848079.html

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

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

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

相关文章

  • 51单片机复位电容计算与分析(附带Proteus电路图)

    因为C=dQ/dU=(i x dt)/dU;            =====         i=C  x   (dU/dt). 所以在上电瞬间,U从0变化到U,所以这一瞬间就是通的,然后电压稳定在5V,这个时候这就是一个直流回路,因为dU=0,所以I=0,所以就不通了。 然后来分析一下这个电容的电压到底是能不能达到单片机需要的复位

    2024年02月06日
    浏览(49)
  • stm32单片机开关控制LED灯(中断方式)(proteus电路图)

      补充一点:拼多多上面LED额定电流20mA,额定电压2V,额定电阻100欧姆,后边这个是STM32 如果只是用面包板做实验,输入输出都不是很多,就直接用灌电流的方式把LED直接接到STM32了,即使是设计产品,如果能够直接接,那么肯定也是不会浪费钱去买额外的原件的,所以只有

    2024年02月11日
    浏览(43)
  • 单片机——复位操作详述

    🙌秋名山码民的主页 😂oi退役选手,Java、大数据、单片机、IoT均有所涉猎,热爱技术,技术无罪 🎉欢迎关注🔎点赞👍收藏⭐️留言📝 获取源码,添加WX 对于单片机来说,1. 在开机的时候需要复位,以便使得CPU和其他功能部件处于一个正确的初始状态,并以此为起点开始

    2024年02月09日
    浏览(82)
  • 单片机复位详解

    共有三种类型的复位,分别为系统复位、电源复位和备份域复位。 除了时钟控制寄存器 CSR 中的复位标志和备份域中的寄存器外,系统复位会将其它全部寄 存器都复位为复位值。 只要发生以下事件之一,就会产生系统复位: 1. NRST 引脚低电平(外部复位) 2. 窗口看门狗计数

    2024年01月24日
    浏览(39)
  • 单片机/嵌入式小白教程—硬件(三)51单片机最小系统

    目录 简介 51单片机器件原理图 复位电路 供电电路 晶振电路 下载电路 最小系统原理图  更加方便的51单片机 传统51单片机最小系统包含:复位电路、供电电路、晶振电路、下载电路   其中, 第9脚(RST)为复位引脚, 第40脚(VCC)第20脚(GND)为供电引脚, 第19脚(XTAL1)第

    2024年02月08日
    浏览(74)
  • 51单片机:设计一单片机双机通信电路

    鱼弦:CSDN内容合伙人、CSDN新星导师、全栈领域优质创作者 、51CTO(Top红人+专家博主) 、github开源爱好者(go-zero源码二次开发、游戏后端架构 https://github.com/Peakchen) 设计一单片机双机通信电路。要求编程实现:甲单片机系统中的按键可以控制乙单片机系统中的数码管(MPX8)动

    2024年02月20日
    浏览(54)
  • 嵌入式和单片机

    凡是从事信息技术相关工作的,一定都听说过嵌入式和单片机。 大家都知道,这两个名词,和硬件系统有着非常密切的关系。 但是,如果要问具体什么是嵌入式,什么是单片机,它们之间究竟有什么区别,我相信大部分人并不能解释清楚。 今天,小编就给大家做一个入门科

    2024年02月07日
    浏览(57)
  • 单片机项目分享 stm32机器视觉的人脸识别系统 - 单片机 物联网 嵌入式

    🔥 这两年开始毕业设计和毕业答辩的要求和难度不断提升,传统的毕设题目缺少创新和亮点,往往达不到毕业答辩的要求,这两年不断有学弟学妹告诉学长自己做的项目系统达不到老师的要求。 为了大家能够顺利以及最少的精力通过毕设,学长分享优质毕业设计项目,今天

    2024年01月22日
    浏览(84)
  • 【单片机毕设选题】stm32实现车牌识别系统 -物联网 嵌入式 单片机

    🔥 这两年开始毕业设计和毕业答辩的要求和难度不断提升,传统的毕设题目缺少创新和亮点,往往达不到毕业答辩的要求,这两年不断有学弟学妹告诉学长自己做的项目系统达不到老师的要求。 为了大家能够顺利以及最少的精力通过毕设,学长分享优质毕业设计项目,今天

    2024年02月20日
    浏览(59)
  • 51单片机电路基础

    单片机是一种数字集成芯片,数字电路中只有两种电平:高电平和低电平。 高电平: 5V 低电平: 0V TTL电平信号被利用的最多是因为通常数据表示采用二进制,5V等价于逻辑“1”,0V等价于逻辑“0”。 TTL电平规定高电平输出电压2.4V,低电平输出电压0.4V。 而计算机串口使用的是

    2024年02月02日
    浏览(44)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包