单片机
返回首页

STM32之六独立看门狗

2024-10-18 来源:cnblogs

单片机系统在外界的干扰下会出现程序跑飞的现象导致出现死循环,看门狗电路就是为了避免这种情况的发生,在一定的时间内(通过计数器)没有喂狗信号输入给看门狗则表示MCU出现问题,自动会给处理器发送复位信号,是MCU重新启动,是系统正常运转。

STM32的独立看门狗有内部的专门40KHz低速时钟驱动,即使主时钟发生故障,它仍然有效。看门狗时钟十一个内部RC时钟,并不是准确的40KHz,而是在30~60KHz之间的变化时钟,估算时间的时候以40KHz来计算。

第一步,首先取消寄存器写保护,我们利用库函数的IWDG_WriteAccessCmd(IWDG_WriteAccess_Enable);来实现,                                                                        
第二部,设置独立看门狗的预分频系数和重载装值,我们同样用库函数实现,
       
第三步,重载计数器值喂狗,我们用IWDG_ReloadCounter();来实现

第四步,启动看门狗,用IWDG_Enable();来实现
  

下面来看下程序,实现以下功能,如果不喂狗,则led灯会亮了然后系统复位,自动会灭,然后运行程序又会亮,这样亮灭亮灭,如果我们连续按下按键,则系统不会复位,即led会一直亮着


看下iwdg.c

看下主函数:

这个还是比较简单的

进入单片机查看更多内容>>
相关视频
  • RISC-V嵌入式系统开发

  • SOC系统级芯片设计实验

  • 云龙51单片机实训视频教程(王云,字幕版)

  • 2022 Digi-Key KOL 系列: 你见过1GHz主频的单片机吗?Teensy 4.1开发板介绍

  • TI 新一代 C2000™ 微控制器:全方位助力伺服及马达驱动应用

  • MSP430电容触摸技术 - 防水Demo演示

精选电路图
  • 红外线探测报警器

  • 短波AM发射器电路设计图

  • 使用ESP8266从NTP服务器获取时间并在OLED显示器上显示

  • 用NE555制作定时器

  • 带有短路保护系统的5V直流稳压电源电路图

  • 基于TDA2003的简单低功耗汽车立体声放大器电路

    相关电子头条文章