本帖最后由 star_66666 于 2017-1-3 23:00 编辑
从rm的page1077看到如下描述
The independent watchdog (IWDG) is clocked by its own dedicated low-speed clock (LSI) and thus stays active even if the main clock fails.
时钟源为LSI,当main clock 失败时,内部看门狗开始启动定时。
从下图的框图可以确定
如果使用硬件看门狗,主要使用KR,PR,RLR,
从rm的page1078可以找到如下说明
1. Enable the IWDG by writing 0x0000 CCCC in the IWDG_KR register.
2. Enable register access by writing 0x0000 5555 in the IWDG_KR register.
3. Write the IWDG prescaler by programming IWDG_PR from 0 to 7.
4. Write the reload register (IWDG_RLR).
详细配置如下:
IWDG->KR=0X5555;
是能寄存器,开始配置
IWDG->PR=123;
IWDG->RLR=456;
PR分频,RLR为想要加载的时间值。
IWDG->KR=0XAAAA; 开始加载rlr的值
IWDG->KR=0XCCCC; 使能看门狗
进行如上配置即可启动硬件看门狗。如果需要喂狗,KR寄存器赋值0XAAAA即可。
把以上代码加入任何一个f769的工程都可以工作。
点击此处,查看STM32F769I开发板官方资源。