打印
[应用相关]

[经验] MCU独立看门狗与窗口看门狗的区别

[复制链接]
795|11
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
本帖最后由 powerantone 于 2023-5-10 10:58 编辑

早期的MCU没有看门狗,就容易引起有些产品死机了不能重启工作。为了避免这个问题,后期的MCU在内部集成了看门狗的功能。
  为了满足更多使用场景,现在很多MCU都集成了两个看门狗:独立看门狗与窗口看门狗。
  拿现在大家熟悉的STM32来说,都集成了独立看门狗和窗口看门狗,下面就展开来讲讲这个两个看门狗以及它们的区别。
  独立看门狗
  独立看门狗,顾名思义,就是独立的一个看门狗,由其专用低速时钟 (LSI) 驱动,因此,即便在主时钟发生故障时仍然保持工作状态。
  IWDG 最适合应用于那些需要看门狗作为一个在主程序之外,能够完全独立工作,并且对时间精度要求较低的场合。
  独立看门狗特性:
  自由运行递减计数器
  时钟由独立 RC 振荡器提供(可在待机和停止模式下运行)
  当递减计数器值达到 0x000 时产生复位(如果看门狗已激活)


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


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


  上窗口的值可以只有设定,7位二进制数最大只可以设定为127(0x7F),最小又必须大于下窗口的0x40,所以其取值范围为64~127(即:0x40~0x7F);配置寄存器WWDG-》CFR中为计数器设定时钟分频系数,确定这个计数器可以定时的时间范围,从而确定窗口的时间范围。
  窗口看门狗的时钟来自于PCLK1,在时钟配置中,其频率为外部时钟经倍频器后的二分频时钟,即为36MHz,根据手册可以知道其定时时间计算方法:






1.jpg (68.55 KB )

1.jpg

使用特权

评论回复
沙发
powerantone|  楼主 | 2023-5-10 11:00 | 只看该作者
两者对比
  1.使用条件对比


  2.特点对比


  两者的区别
  独立看门狗与窗口看门狗的区别如下:
  独立看门狗没有中断,窗口看门狗有中断。
  独立看门狗有硬件软件之分,窗口看门狗只能软件控制。
  独立看门狗只有下限,窗口看门狗有下限和上限。
  独立看门狗是12位递减的,窗口看门狗是7位递减的。
  独立看门狗是用的内部大约40KHz的RC振荡器,窗口看门狗是用的系统时钟APB1ENR
  独立看门狗没有中断功能,只要在计数器减到0(下限)之前,重新装载计数器的值,就不会产生复位。
  要注意看门狗和外接复位IC同时存在的情况,外部电路可能会阻止看门狗复位。
  窗口看门狗有中断,这个中断的作用是在计数器达到下限0x40的时候,产生中断,让你喂狗;如果你不喂狗,计数器的值变为0x3f的时候,将会产生系统复位;即使是喂狗,也应该在中断里快速喂狗,要不时间长了计数器减1也会变成0x3f产生复位。
  窗口看门狗还有一个上限值,这个值如果大于计数器的初始值,那么就没有任何作用了;这个值小于计数器初始值的时候,当计数器的值大于上限值时你对计数器进行装载,将会产生复位,只有在计数器减到小于上限值时,你才能重新装载计数器。意思就是说只有计数器的值在上限值和下限值之间你才能装载计数器,否则就会产生系统复位,当上限值小于下限值,也没有意义。






使用特权

评论回复
板凳
周半梅| | 2024-4-1 07:03 | 只看该作者

需要在做项目的过程中经历磨难

使用特权

评论回复
地板
Pulitzer| | 2024-4-1 08:06 | 只看该作者

硬件设计和软件设计本来就是鱼和熊掌的关系,两者不可兼得

使用特权

评论回复
5
童雨竹| | 2024-4-1 10:02 | 只看该作者

结构化模块化的程序设计的思想,使最基本的要求

使用特权

评论回复
6
Wordsworth| | 2024-4-1 11:05 | 只看该作者

确定好硬件原理图,硬件布线,最后才是软件的开发

使用特权

评论回复
7
Clyde011| | 2024-4-1 12:08 | 只看该作者

没有发现有哪本是介绍设计思想的

使用特权

评论回复
8
公羊子丹| | 2024-4-1 13:01 | 只看该作者

写程序不难,但是程序怎么样才能写的好,写的快,那是需要点经验积累的

使用特权

评论回复
9
万图| | 2024-4-1 14:04 | 只看该作者

在实际的项目应用当中,单片机引脚的复用相当厉害

使用特权

评论回复
10
Uriah| | 2024-4-1 15:07 | 只看该作者

但是如果不懂程序设计的思想的话,会给你做项目的过程中带来很多很多的困惑。

使用特权

评论回复
11
帛灿灿| | 2024-4-1 17:03 | 只看该作者

时间片轮的设计思想

使用特权

评论回复
12
Bblythe| | 2024-4-1 18:06 | 只看该作者

事实上很多做项目的工程师本身自己也会在用

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

558

主题

2430

帖子

4

粉丝