您的位置:首页 > 其它

STM32学习——STM32 独立看门狗的使用

2012-02-07 08:29 162 查看
STM32有两种看门狗:独立看门狗和窗口看门狗。本文主要介绍独立看门狗的使用。

独立看门狗(IDWG):由独立的40KHZ的低速时钟为其驱动。因此,即使主时钟发生故障,IDWG依然可以正常工作。
窗口看门狗(WWDG):有从APB1的时钟分频后得到的时钟驱动,通过可配置的时间窗口来检测应用程序非正常的过早或过迟的行为。

IDWG最适合用于那些需要看门狗在一个主程序外,能够完全独立工作,并对时间精度要求低的场合。而WWDG最适合那些要求看门狗在精确计时窗口起作用的应用程序。
IDWG使用的过程中,可以采用以下的方式进行配置:
void IWDG_Configuration(void)
{

/* 使能对IWDG_PR and IWDG_RLR 寄存器写数据 */
IWDG_WriteAccessCmd(IWDG_WriteAccess_Enable);

/* 设置IWDG的时钟频率*/
IWDG_SetPrescaler(IWDG_Prescaler_32);	//IWDG_PR: 40KHz(LSI) / 32 = 1.25 KHz //800u

/* 设置IWDG的周期*/
IWDG_SetReload(349); //280MS	  /*根据不同模块调整*/

/* 按照IWDG重装载寄存器的值重装载IWDG计数器*/
IWDG_ReloadCounter();

/* 使能IWDG (the LSI oscillator will be enabled by hardware) */
IWDG_Enable();
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: