proteus里面没有stm32怎么办_学习STM32日志——独立看门狗实验(20.06.23)
继续更新学习STM32的历程,今天学习看门狗。
在单片机构成的微型计算机系统中,单片机的工作时常收到外界电磁场的干扰,导致程序跑飞,陷入死循环。为了解决这个问题,产生了一种用于监测单片机程序运行状态的模块或芯片,叫做看门狗(WatchDog),而这个东西已经集成在STM32芯片内部。它能在系统跑飞的情况下将系统复位,重新执行程序。
STM32有两个看门狗,一个是窗口看门狗,由APB1时钟分频后得到的时钟驱动;另一个是独立看门狗,由专用的低速时钟(LSI)驱动,它是由内部的RC振荡器产生的,约为40KHZ,即使主时钟发生故障它仍然有效。
看门狗的原理是:当我们使能看门狗时(往键值寄存器IWDG_KR写入0xCCCC实现),12位的计数器就会从0xFFF开始递减,直到减为0,系统复位。在这个过程中,我们要不断地喂狗,才能使系统不复位。喂狗是将重装载寄存器的值赋给计数器,然后计数器从这个值开始递减。
由于预分频寄存器IWDG_PR和重装载寄存器IWDG_RLR有写保护功能,即如果不取消这个功能,不能往里面写数据。1)所以首先要往下面第一个库函数里面写0x5555,取消写保护。2)然后设置预分频系数和重装载值。3)使能看门狗。4)程序喂狗。
本次程序将实现一个功能:LED灯在初始化后是灭的状态,经过200mS的延时后点亮,即如果系统不断复位,则灯会一直闪烁。而当按下按键时,会实现喂狗功能,也就是将重装载值赋给计数器去递减。而计数器递减至0的时间设置为2S,也就是说如果2S内没有去按下按键(喂狗),则系统复位。如果2S内一直按按键,则LED常亮。
知乎视频www.zhihu.com
proteus里面没有stm32怎么办_学习STM32日志——独立看门狗实验(20.06.23)相关推荐
- stm32看门狗_「正点原子NANO STM32开发板资料连载」第十一章 独立看门狗实验
1)实验平台:ALIENTEK NANO STM32F411 V1开发板2)摘自<正点原子STM32F4 开发指南(HAL 库版>关注官方微信号公众号,获取更多资料:正点原子 第十一章 独 ...
- STM32独立看门狗实验
一 为什么需要看门狗? 在MCU微型计算机系统中,MCU运行程序很容易受到外界电磁场的干扰,从而造成程序运行错误甚至发生跑飞现象,从而陷入死循环,程序的正常运行被打乱,从而造成不可预料的严重后果,于是 ...
- STM32 独立看门狗实验
一.STM32 独立看门狗简介 STM32 的独立看门狗由内部专门的 40Khz 低速时钟驱动,即使主时钟发生故障,它也仍然有效.这里需要注意独立看门狗的时钟是一个内部 RC 时钟,所以并不是准确的 ...
- stm32专题三十四:独立看门狗 IWDG
独立看门狗简介 IWDG结构框图 (1)独立看门狗时钟 独立看门狗的时钟由独立的 RC 振荡器 LSI 提供, 即使主时钟发生故障它仍然有效,非常独立. LSI 的频率一般在 30~60KHZ 之间, ...
- STM32单片机(4) 独立看门狗实验
[转载请注明出处:http://blog.csdn.net/leytton/article/details/38393651] /*********************************** ...
- 【STM32】独立看门狗程序
00. 目录 文章目录 00. 目录 01. 独立看门狗简介 02. 程序功能示例 03. 硬件设计 04. 编程步骤 05. 程序示例 06. 附录 07. 声明 01. 独立看门狗简介 STM32 ...
- 7、【STM32】独立看门狗和窗口看门狗(IWDG、WWDG)实验
前言 使用的是正点原子的探索者开发板进行学习,芯片:STM32F407ZGTx 学习说明此文档为本人的学习笔记,注重实践,关于理论部分会给出相应的学习链接. 注:本文档添加了对代码的在线调试功能,有助 ...
- 【STM32】IWDG独立看门狗【原理】
前注:本文章主要讲解[原理] 内容为 '_Snake_'编写,日常学习总结,内容如有不足.不妥之处请私信告知,谢谢! 实验 独立看门狗实验 简介 MCU可能工作在一些复杂环境,可能受到 ...
- 看门狗寄存器c语言代码_「正点原子NANO STM32F103开发板资料连载」第十一章 看门狗实验...
1)实验平台:[正点原子] NANO STM32F103 开发板 2)摘自<正点原子STM32 F1 开发指南(NANO 板-HAL 库版)>关注官方微信号公众号,获取更多资料:正点原子 ...
最新文章
- vue 模板_简化版的 vue 页面模板语法
- 机器学习中的方法技术与应用场景
- hdu3016 线段树+简单DP
- openerp mysql_Odoo字段(Fields)总结-至2020全
- 经常在命令提示符中所使用的命令
- jquery相对定位(包含find的使用 find相当于后代选择器)$(选择器1,选择器2)
- tomcat ---- jndi方式配置连接
- date对象加十分钟_js面向对象-这样学很轻松
- 天梯—是不是太胖了(C语言)
- golden gate 加initial load 在rac 上的配置
- 解题报告 poj 1087
- 投简历:求求你给我个机会「小废物招聘全记录①」
- Codeblocks中的empty project和console application
- 企业微信api发送告警信息
- excel在线_EXcel怎么把中文翻译英文?简单2招秒翻译
- 微震生命探测仪厂家——微震生命探测仪可以检查毒品
- 利用Openlayers4实现地图遮罩效果(三)
- 数据有效性做下拉菜单
- java 空白图片_图片文件打印空白的解决办法
- Python中的三引号''' '''的用法
热门文章
- 关于报工和生产订单的一些状态解释
- SAP 批次管理(Batch management)
- linux中sh+$0,浅谈linux中shell变量$#,$@,$0,$1,$2的含义解释
- 深度学习模型保存_解读计算机视觉的深度学习模型
- iframe内联元素有白边原因_必看|番茄卷叶病发生的原因以及防治方法!
- mysql 两个数据库指定表同步_mysql从2个数据库中同步两个表
- Python中list和set的区别
- Python取出两个文件中相同的电话号码及地址(文件类型为:txt文本)
- python 中五种常用的数据类型
- Python中有用的字符串方法