本帖最后由 kkhkbb 于 2018-3-13 08:40 编辑
一、概述 1、 WWDG看门狗简介 IWDG看门狗存在这样一个问题,如果在喂狗的间隔期间,程序跑飞后又正确归位,独立看门狗无法发现这样的错误,程序将存在很大的危险。与IWDG看门狗不同,WWDG看门狗需要在一个规定的时间范围内喂狗才有效,这样可以较为有效的解决IWDG看门狗存在的问题。可以根据WWDG看门狗通常被用来监测由外部干扰或不可预见的逻辑条件造成的应用程序背离正常的运行序列而产生的软件故障。 2、 WWDG看门狗窗口说明 WWDG看门狗在使用时,除了使能时钟和设置预分频值外,还需要设置窗口和计数器初值。在芯片内部,WWDG看门狗计数器是一个7位二进制递减计数器,当它从0x40翻转到0x3F时,系统会启动复位。只有计数器在窗口值和0x40之间的时候,喂狗才是有效的。如图7_0所示: 二、硬件电路 在iCore3双核心开发板中,采用一个独立的按键与STM32F407的PH15相连,限流电阻为1K。 三、实验原理 本次实验使用的是常开带复位按键,从硬件电路上可以看出,当按键没有按下时,ARM芯片的ARM_KEY引脚读取到的值是高电平,按键按下后读取到的值为低电平,按键没有按下是正常喂狗,当按键按下后停止喂狗。 四、主函数 1.主函数
|