您的位置 首页 芯闻

stm32 独立看门狗

独立看门狗(IWDG)由专用的低速时钟(LSI)驱动,即使主时钟发生故障它也仍然有效。IWDG最适合应用于那些需要看门狗作为一个在主程序之外,能…

独立看门狗(IWDG)由专用的低速时钟(LSI)驱动,即便主时钟产生毛病它也依然有用。IWDG最适合应用于那些需求看门狗作为一个在主程序之外,可以彻底独立作业,而且对时刻精度要求较低的场合。WWDG最适合那些要求看门狗在准确计时窗口起作用的应用程序。”

/*
* 选用独立看门狗作为看门狗守时器
* 独立看门狗由内部专门的 40Khz 低速时钟驱动,
* 即便主时钟产生毛病,它也依然有用
*000:预分频因子=4 // 最短时刻 0.1 ms
*001:预分频因子=8 // 最短时刻 0.2 ms
*010:预分频因子=16 // 最短时刻 0.4 ms
*011:预分频因子=32 // 最短时刻 0.8 ms
*100:预分频因子=64 // 最短时刻 1.6 ms
*101:预分频因子=128 // 最短时刻 3.2 ms
*110:预分频因子=256 // 最短时刻 6.4 ms
*111:预分频因子=256 //
*/
初始化,而且发动看门狗
void IWDG_Initial(void)
{
IWDG_WriteAccessCmd(IWDG_WriteAccess_Enable); //①使能对寄存器 I 写操作
IWDG_SetPrescaler(IWDG_Prescaler_16); //②设置 IWDG 预分频值:设置 IWDG 预分频值
IWDG_SetReload(0xFFF); //②设置 IWDG 重装载值 守时时刻1638.4ms
IWDG_ReloadCounter(); //③依照 IWDG 重装载寄存器的值重装载 IWDG 计数器
IWDG_Enable(); //④使能 IWDG
}
IWDG_WriteAccessCmd(IWDG_WriteAccess_Enable);//使能写入PR和RLR
主程序中喂狗
void main void
{
while(1)
{
IWDG_ReloadCounter();// 喂狗 1.6 s的看门狗
}
}

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/news/xinwen/268382.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部