1
完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
|
|
相关推荐
1个回答
|
|
stm32看门狗
一、定义 由于单片机的工作常常会受到来自外界电磁场的干扰,造成程序的跑飞,而陷入死循环,程序的正常运行被打断,由单片机控制的系统无法继续工作,会造成整个系统的陷入停滞状态,发生不可预料的后果,所以出于对单片机运行状态进行实时监测的考虑,便产生了一种专门用于监测单片机程序运行状态的模块或者芯片,俗称看门狗”(watchdog) 。 二、分类 STM32内置两个看门狗,独立看门狗和窗口看门狗,用来检测和解决由软件错误引起的故障。当计数器达到给定的超时值时,产生系统复位或者触发一个中断(仅适用窗口看门狗)。 (一)、独立看门狗(IWDG) 如果喂狗时间超出某个可设定的时间,就会认为程序跑飞,产生复位。 由专用的低速时钟(LSI)驱动,即使主时钟发生故障它仍有效。 独立看门狗适合应用于需要看门狗作为一个在主程序之外 能够完全独立工作,并且对时间精度要求低的场合。 键寄存器(IWDG_KR) 位31:16 保留,始终读为0。 位15:0 KEY[15:0]: 键值(只写寄存器,读出值为0x0000) 写入0xAAAA,重载计数器。软件必须以一定的间隔写入0xAAAA,否则,当计数器为0时,看门狗会产生复位。 写入0x5555表示允许访问IWDG_PR和IWDG_RLR寄存器。 写入0xCCCC,启动看门狗工作(若选择了硬件看门狗则不受此命令字限制)。 (二)、窗口看门狗 喂狗必须在某个可设定的时间窗内进行,早于或晚于这个时间窗喂狗都会触发复位。 由从APB1时钟分频后得到时钟驱动。 通过可配置的时间窗口来检测应用程序非正常的过迟或过早操作。 窗口看门狗最适合那些要求看门狗在精确计时窗口起作用的程序。 如果看门狗被启动(WWDG_CR寄存器中的WDGA位被置’1’), 并且当7位(T[6:0])递减计数器从0x40(T6为1)翻转到0x3F(T6位清零)时,则产生一个复位。 如果软件在计数器值大于窗口配置寄存器中的数值(WWDG_CFR)时重新装载计数器,也将产生一个复位。 (三)二者相同点 软件代码一直死循环在某处,无法喂狗,导致产生复位 代码运行超时,或外部一直触发中断,导致无法喂狗产生复位 喂狗时间限制可以自己设定 (四)二者不同点 计数器时钟源不同 • 独立看门狗由内部专门的40KHz的LSI时钟,使用前不需使能 • 窗口看门狗使用PCLK1时钟,使用前需要使能。 中断不都有 • 独立看门狗不产生中断,超时直接复位 • 窗口看门狗有中断,超时可以在中断中做复位前的函数炒作或者重新喂狗。 计数方式不同 • 独立看门狗的寄存器是12位递减 • 窗口看门狗是7位递减,窗口最大值为0x7F 超时复位时间范围不同 • 独立看门狗:计数值 《 IWDG重装载值时喂狗 • 窗口看门狗:0x40 《 计数器值 《 窗口值Wt期间喂狗,0x40是固定的。 使用条件推荐 • 独立看门狗一般用于避免程序跑飞或死循环 • 窗口看门狗用于避免不按预定逻辑执行,如先于理想环境完成,或后于极限时间超时。 |
|
|
|
只有小组成员才能发言,加入小组>>
调试STM32H750的FMC总线读写PSRAM遇到的问题求解?
1763 浏览 1 评论
X-NUCLEO-IHM08M1板文档中输出电流为15Arms,15Arms是怎么得出来的呢?
1617 浏览 1 评论
1059 浏览 2 评论
STM32F030F4 HSI时钟温度测试过不去是怎么回事?
723 浏览 2 评论
ST25R3916能否对ISO15693的标签芯片进行分区域写密码?
1670 浏览 2 评论
1935浏览 9评论
STM32仿真器是选择ST-LINK还是选择J-LINK?各有什么优势啊?
726浏览 4评论
STM32F0_TIM2输出pwm2后OLED变暗或者系统重启是怎么回事?
567浏览 3评论
592浏览 3评论
stm32cubemx生成mdk-arm v4项目文件无法打开是什么原因导致的?
551浏览 3评论
小黑屋| 手机版| Archiver| 德赢Vwin官网 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-21 17:54 , Processed in 0.741833 second(s), Total 76, Slave 60 queries .
Powered by 德赢Vwin官网 网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
德赢Vwin官网 观察
版权所有 © 湖南华秋数字科技有限公司
德赢Vwin官网 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号