MCU独立看门狗 vs 窗口看门狗

发布时间:2023-03-10  

早期的没有,就容易引起有些产品死机了不能重启工作。为了避免这个问题,后期的在内部集成了的功能。

本文引用地址:

为了满足更多使用场景,现在很多都集成了两个:独立看门狗与窗口看门狗 。

拿现在大家熟悉的STM32来说,都集成了独立看门狗和窗口看门狗,下面就展开来讲讲这个两个看门狗以及它们的区别。

独立看门狗

独立看门狗,顾名思义,就是独立的一个看门狗,由其专用低速时钟 (LSI) 驱动,因此,即便在主时钟发生故障时仍然保持工作状态。

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

独立看门狗特性:

  • 自由运行递减计数器

  • 时钟由独立 RC 振荡器提供(可在待机和停止模式下运行)

  • 当递减计数器值达到 0x000 时产生复位(如果看门狗已激活)

窗口看门狗

窗口看门狗,之所以称为窗口,是因为其喂狗时间是一个有上下限的范围内,你可以通过设定相关寄存器,设定其上限时间和下限时间: 喂狗的时间不能过早也不能过晚。

窗口型看门狗

窗口看门狗的上窗口就是配置寄存器WWDG->CFR里设定的W[6:0];下窗口是固定的0x40;当窗口看门狗的计数器在上窗口值之外,或是低于下窗口值都会产生复位。

窗口型看门狗工作原理

上窗口的值可以只有设定,7位二进制数最大只可以设定为127(0x7F),最小又必须大于下窗口的0x40,所以其取值范围为64~127(即:0x40~0x7F);配置寄存器WWDG->CFR中为计数器设定时钟分频系数,确定这个计数器可以定时的时间范围,从而确定窗口的时间范围。

窗口看门狗的时钟来自于PCLK1,在时钟配置中,其频率为外部时钟经倍频器后的二分频时钟,即为36MHz,根据手册可以知道其定时时间计算方法:

两者对比

1.使用条件对比

2.特点对比

两者的区别

独立看门狗与窗口看门狗的区别如下:

独立看门狗没有中断,窗口看门狗有中断。

独立看门狗有硬件软件之分,窗口看门狗只能软件控制。

独立看门狗只有下限,窗口看门狗有下限和上限。

独立看门狗是12位递减的,窗口看门狗是7位递减的。

独立看门狗是用的内部大约40KHz的RC振荡器,窗口看门狗是用的系统时钟APB1ENR

独立看门狗没有中断功能,只要在计数器减到0(下限)之前,重新装载计数器的值,就不会产生复位。

要注意看门狗和外接复位IC同时存在的情况 ,外部电路可能会阻止看门狗复位。

窗口看门狗有中断,这个中断的作用是在计数器达到下限0x40的时候,产生中断,让你喂狗;如果你不喂狗,计数器的值变为0x3f的时候,将会产生系统复位;即使是喂狗,也应该在中断里快速喂狗,要不时间长了计数器减1也会变成0x3f产生复位。

窗口看门狗还有一个上限值,这个值如果大于计数器的初始值,那么就没有任何作用了;这个值小于计数器初始值的时候,当计数器的值大于上限值时你对计数器进行装载,将会产生复位,只有在计数器减到小于上限值时,你才能重新装载计数器。意思就是说只有计数器的值在上限值和下限值之间你才能装载计数器,否则就会产生系统复位,当上限值小于下限值,也没有意义。

最后,拓展一下基于STM32、FreeRTOS实现硬件看门狗+软件看门狗监测多任务的思路 。

文章来源于:电子产品世界    原文链接
本站所有转载文章系出于传递更多信息之目的,且明确注明来源,不希望被转载的媒体或个人可与我们联系,我们将立即进行删除处理。

相关文章

    重装载值; 使能看门狗; 应用程序喂狗; 配置代码如下所示: /**  * 初始化独立看门狗  * prer:分频数:0~7(只有低 3 位有效!)  * 分频因子=4*2^prer.但最大值只能是 256......
    重装载值; 使能看门狗; 应用程序喂狗; 配置代码如下所示: /**  * 初始化独立看门狗  * prer:分频数:0~7(只有低 3 位有效!)  * 分频因子=4*2^prer.但最大值只能是 256......
    顺利在 PC 上运行,英特尔联合腾讯推出腾讯应用宝电脑版,目前这一融合生态已经涵盖千款跨平台应用。值此一周年之际,英特尔携手腾讯共同宣布,在英特尔 Celedon、英特尔® Bridge 技术......
    的值。这在库函数中的实现函数是: 这个函数的功能开启/取消写保护,即使能/失能写权限。 2)设置独立看门狗的预分频系数和重装载值 设置看门狗的分频系数的函数是: 设置看门狗......
    库函数中的实现函数是: IWDG_WriteAccessCmd(IWDG_WriteAccess_Enable); 2)设置独立看门狗的预分频系数和重装载值 设置看门狗......
    (IWDG_WriteAccess_Enable);   2)设置独立看门狗的预分频系数和重装载值   设置看门狗的分频系数的函数是:   void IWDG_SetPrescaler(uint8_t IWDG_Prescaler......
    写保护,也就是使能/失能写权限。 2)设置独立看门狗的预分频系数和重装载值 设置看门狗的分频系数的函数是: void IWDG_SetPrescaler(uint8_t IWDG_Prescaler......
    清晰并且圆润它也是深度定制的产品,专为自定义语音播放领域开发的低成本解决方案,可以根据不同的功能需要选择对应的型号。 内置看门狗,支持低压复位LVR(可选1.8V及2.0V);看门狗......
    , u8 wr, u8 fprer ) ; //窗口看门狗初始化 (2)在上一个实验的wdg.c文件......
    WDGA也为1,即与门①的输出是1,此时会触发复位。简单的概括来说,就是当递减计数器的值在递减到上窗口值W[6:0]之前进行喂狗操作(即重装载WWDG_CR),会触发看门狗复位。   2、当T[6:0......

我们与500+贴片厂合作,完美满足客户的定制需求。为品牌提供定制化的推广方案、专属产品特色页,多渠道推广,SEM/SEO精准营销以及与公众号的联合推广...详细>>

利用葫芦芯平台的卓越技术服务和新产品推广能力,原厂代理能轻松打入消费物联网(IOT)、信息与通信(ICT)、汽车及新能源汽车、工业自动化及工业物联网、装备及功率电子...详细>>

充分利用其强大的电子元器件采购流量,创新性地为这些物料提供了一个全新的窗口。我们的高效数字营销技术,不仅可以助你轻松识别与连接到需求方,更能够极大地提高“闲置物料”的处理能力,通过葫芦芯平台...详细>>

我们的目标很明确:构建一个全方位的半导体产业生态系统。成为一家全球领先的半导体互联网生态公司。目前,我们已成功打造了智能汽车、智能家居、大健康医疗、机器人和材料等五大生态领域。更为重要的是...详细>>

我们深知加工与定制类服务商的价值和重要性,因此,我们倾力为您提供最顶尖的营销资源。在我们的平台上,您可以直接接触到100万的研发工程师和采购工程师,以及10万的活跃客户群体...详细>>

凭借我们强大的专业流量和尖端的互联网数字营销技术,我们承诺为原厂提供免费的产品资料推广服务。无论是最新的资讯、技术动态还是创新产品,都可以通过我们的平台迅速传达给目标客户...详细>>

我们不止于将线索转化为潜在客户。葫芦芯平台致力于形成业务闭环,从引流、宣传到最终销售,全程跟进,确保每一个potential lead都得到妥善处理,从而大幅提高转化率。不仅如此...详细>>