STM32单片机实战开发笔记-独立看门狗IWDG

嵌入式单片机开发实战例程合集:

链接:https://pan.baidu.com/s/11av8rV45dtHO0EHf8e_Q0Q?pwd=28ab
提取码:28ab

=========================================

IWDG模块测试

1、功能描述

                STM32F10X内置两个看门狗,提供了更高的安全性,时间的精确下性和使用的灵活性。两个看门狗设备(独立看门狗和窗口看门狗 )可用来检测和解决由软件错误引起的故障,当计数器达到给定的超时值时,触发一个中断或产生系统复位。

独立看门狗(IWD)由专用的32KHZ的低速时钟为驱动;因此,即使主时钟发生故障它也仍然有效。窗口看门狗由从APB1时钟分频后得到时钟驱动,通过可配置的时间窗口来检测应用程序非正常的过迟或过早的行为

IWDG最适合应用于那些需要看门狗作为一个在主程序之外,能够完全独立工作,并且对时间精度要求较低的场合。WWDG最适合那些要求看门狗在精确计时窗口起作用的应用程序。

3、软件代码

#include"stm32f10x_lib.h"

/***************************************************

* 函数名称:void IWDG_Configuration(void)

* 功能描述:独立看门狗的配置

* 入口参数:无

* 参考参数:无

***************************************************/

void IWDG_Configuration(void)

{

   IWDG_WriteAccessCmd(IWDG_WriteAccess_Enable); // 使能对寄存器IWDG_PR和IWDG_RLR的写操作 ;

       

  IWDG_SetPrescaler(IWDG_Prescaler_256); // 设置IWDG预分频值 /256 ;40K/256=156HZ(6.4ms) 5s/6.4ms=781

       

        IWDG_SetReload(781); // 设置IWDG重装载值 ;要小于0xfff

       

        IWDG_ReloadCounter();  // 按照IWDG重装载寄存器的值重装载IWDG计数器 ;

       

        IWDG_Enable(); // 使能IWDG ;         

}

extern void Delay_Ms(u16 time);

void SysTickHandler(void)

{

        /* Reload IWDG counter */

       IWDG_ReloadCounter();  // 按照IWDG重装载寄存器的值重装载IWDG计数器 ;

       GPIO_ResetBits(GPIOA, GPIO_Pin_3);                

}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/322021.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

聊聊BitLocker

最近有消息称微软决定在Windows 11 24H2中默认开启BitLocker,这个消息在网上引起了不小的波澜。有人说,对于我们这些普通用户来说,BitLocker真的有必要吗? 什么是BitLocker BitLocker 是一项 Windows 安全功能,可为整…

Qt与MySQL连接

QT连接Mysql数据库(详细成功版)-CSD N博客 我的MySQL是64位的,所以我的Qt的套件也需要是64位的 遇到的问题: (available drivers中已经有QMYSQL QMYSQL3,还是not loaded) QSqlDatabase: QMYS…

Splashtop 荣获 TrustRadius 颁发的“2024年度最受欢迎奖”

2024年5月8日 加利福尼亚州库比蒂诺 Splashtop 在全球远程访问和支持解决方案领域处于领先地位,该公司正式宣布将连续第三年荣获远程桌面和远程支持类别的“TrustRadius 最受欢迎奖”。Splashtop 的 trScore 评分高达8.6分(满分10分)&#x…

[图解]DDD架构好简单我学会了-学会也没啥用

1 00:00:03,720 --> 00:00:05,920 内部共有,首先是内部的 2 00:00:08,150 --> 00:00:09,220 所以不能说什么 3 00:00:09,630 --> 00:00:10,730 不能跟外部连在一起 4 00:00:10,740 --> 00:00:15,280 比如说,功能架构,可以吗 …

企业计算机服务器中了faust勒索病毒如何处理,faust勒索病毒解密恢复

随着网络技术的不断发展与应用,越来越多的企业利用网络走向了数字化办公模式,网络也极大地方便了企业生产运营,大大提高了企业生产效率,但对于众多企业来说,企业的数据安全一直是大家关心的主要话题,保护好…

Flutter笔记:Widgets Easier组件库(10)快速处理承若型对话

Flutter笔记 使用Widgets Easier组件库快速处理承若型对话 - 文章信息 - Author: 李俊才 (jcLee95) Visit me at CSDN: https://jclee95.blog.csdn.netMy WebSite:http://thispage.tech/Email: 291148484163.com. Shenzhen ChinaAddress of this article:https://…

IoTDB 入门教程 基础篇⑦——数据库管理工具 | DBeaver 连接 IoTDB

文章目录 一、前文二、下载iotdb-jdbc三、安装DBeaver3.1 DBeaver 下载3.2 DBeaver 安装 四、安装驱动五、连接数据库六、参考 一、前文 IoTDB入门教程——导读 二、下载iotdb-jdbc 下载地址org/apache/iotdb/iotdb-jdbc:https://maven.proxy.ustclug.org/maven2/o…

ai可以做思维导图吗?当然是可以的!

ai可以做思维导图吗?在快节奏的现代生活中,思维导图作为一种高效的信息组织和表达工具,越来越受到人们的青睐。随着人工智能(AI)技术的不断发展,AI思维导图软件也应运而生,它们不仅能够帮助用户…

为什么现在越来越多的人会选择陪诊

现在越来越多的人选择陪诊的原因有多方面。 首先,随着人口老龄化、医疗资源分配不均等问题的日益突出,许多老年人和病患在就医过程中面临诸多困难,如挂号、排队、取药等繁琐的手续和流程。陪诊服务能够为他们提供极大的便利,帮助…

【Gateway远程开发】0.5GB of free space is necessary to run the IDE.

【Gateway远程开发】0.5GB of free space is necessary to run the IDE. 报错 0.5GB of free space is necessary to run the IDE. Make sure that there’s enough space in following paths: /root/.cache/JetBrains /root/.config/JetBrains 原因 下面两个路径的空间不…

【excel】统计单元格内数字/字符串的数量

文章目录 一、问题二、步骤(一)将A1中的数字分解出来,在不同的单元格中显示(二)统计每个数字出现的个数(三)去重 三、尾巴 一、问题 单元格中有如下数值:12345234534545&#xff0c…

Nginx(参数设置总结)

文章目录 Nginx(工作机制&参数设置)1.Master&Worker工作机制1.示意图2.解释3.Nginx争抢机制4.accept_mutex解决惊群现象5.多进程结构不用多线程结构的好处6.IO多路复用,实现高并发7.优势 2.参数配置1.work_processes1.基本介绍2.work…

Javaweb项目 博客系统(后端代码编写)

准备工作,创建项目 引入依赖 1.servlet 2.mysql 3.jackson 导入前端代码 1.博客列表页 2.博客详情页 3.登录页 4.博客编辑页 接下来要进行的操作就是两大方面 1.前端和服务器的交互 2.服务器和数据库的交互 进行数据库设计创建数据库和数据表 一把需要把建库建表的操作写错sq…

C语言实验-数组、字符串以及指针

一&#xff1a; 求一个NN矩阵主、次对角线上所有元素之和。矩阵输入、矩阵输出、矩阵对角线求和分别用三个子函数实现。&#xff08;N的值由用户从键盘输入&#xff09; #define _CRT_SECURE_NO_WARNINGS #include<stdio.h> #include<stdlib.h>void print(int(*arr…

323_C++_QT_QProcess执行cmd解压、压缩、删除tar.gz等等其他压缩包文件到指定目录,不需要外部库,QT自带API的就行

// decompressPath : 解压到此目录 // fileName : 解压的tar.gz文件名executeCommand(decompressPath , QString::fromStdString(fileName));// 开始解压 void executeCommand

获取和修改线程的id和名称

当创建两个线程时&#xff0c;需要获取线程的id和名称&#xff0c;这样可以知道是哪个线程执行的 方式1&#xff1a;this.getId()和this.getName() 写代码注意点&#xff1a;要写对类名 方式2&#xff1a;Thread.currentThread().getId()和Thread.currentThread().getName() 修…

初识Node.js-REPL(详解交互式解释器)

目录 一、REPL介绍 1.概念 2.主要特点和用途 3.应用 二、 REPL语法 1.简单的表达式运算 2.使用变量 3.多行表达式 下划线(_)变量 三、REPL 命令 四、停止 REPL 五、Gif 实例演示 六、REPL应用实例 七、总结 一、REPL介绍 1.概念 Read&#xff08;读取&#xff09…

类和对象、this指针、类里的默认生成函数

&#x1f436;博主主页&#xff1a;ᰔᩚ. 一怀明月ꦿ ❤️‍&#x1f525;专栏系列&#xff1a;线性代数&#xff0c;C初学者入门训练&#xff0c;题解C&#xff0c;C的使用文章&#xff0c;「初学」C&#xff0c;linux &#x1f525;座右铭&#xff1a;“不要等到什么都没有了…

如何恢复回收站中被删除的文件?3个恢复策略,实测有用!

“刚刚一不小心把回收站清空了&#xff0c;大家有什么好用的方法可以帮我恢复回收站中删除的文件吗&#xff1f;快帮帮我吧&#xff01;” 在使用电脑的过程中&#xff0c;我们有时可能会不小心将重要的文件或文件夹删除到回收站&#xff0c;并且随后可能进一步从回收站中彻底删…

【Git】Git学习-17:git rebase,且解决合并冲突

学习视频链接&#xff1a;【GeekHour】一小时Git教程_哔哩哔哩_bilibili​编辑https://www.bilibili.com/video/BV1HM411377j/?vd_source95dda35ac10d1ae6785cc7006f365780 理论 git rebase 目标分支&#xff1a;把当前分支的提交&#xff0c;从与目标分支的共同主祖先处断开…