1
完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
|
|
相关推荐
1个回答
|
|
独立看门狗(IWDG)
独立看门狗由内部专门的 40Khz 低速时钟(内部 RC 时钟)驱动,即使主时钟发生故障,它也仍然有效。作用 单片机系统万一在外界干扰死循环,看门狗可以复位。看门狗的作用就是在一定时间内(通过定时计数器实现)没有接收喂狗信号(表示 MCU 已经挂了),便实现处理器的自动复位重启(发送复位信号)。 相关寄存器 键值寄存器 IWDG_KRMarkdown 启动: 写入 0xCCCC 产生复位信号: 计数器开始从其复位值 0xFFF 递减计数计数器计数到末尾 0x000。(IWDG_RESET) 喂狗 写入 0xAAAA 注意:IWDG_PR 和 IWDG_RLR 寄存器具有写保护功能。要修改这两个寄存器的值,必须先向IWDG_KR 寄存器中写入 0x5555。将其他值写入这个寄存器将会打乱操作顺序,寄存器将重新被保护。重装载操作(即写入 0xAAAA)也会启动写保护功能。操作流程:
//1 IWDG_WriteAccessCmd(IWDG_WriteAccess_Enable); //2 void IWDG_SetPrescaler(uint8_t IWDG_Prescaler); //设置 IWDG 预分频值 void IWDG_SetReload(uint16_t Reload); //设置 IWDG 重装载值 //3 IWDG_ReloadCounter(); //按照 IWDG 重装载寄存器的值重装载 IWDG 计数器 //4 IWDG_Enable(); //使能 IWDG 注意 IWDG 在一旦启用,就不能再被关闭!想要关闭,只能重启。 窗口门狗(WWDG ) 窗口看门狗(WWDG)通常被用来监测由外部干扰或不可预见的逻辑条件造成的应用程序背离正常的运行序列而产生的软件故障。递减计数器需要在一个有限的时间窗口中被刷新。 T[6:0]就是 WWDG_CR 的低七位,W[6:0]即是 WWDG->CFR 的低七位。T[6:0] 就是窗口看门狗的计数器,而 W[6:0]则是窗口看门狗的上窗口,下窗口值是固定的(0X40)。当窗口看门狗的计数器在上窗口值之外被刷新,或者低于下窗口值都会产生复位。 就是只能再窗口期喂狗。 上窗口值(W[6:0])是由用户自己设定的,确保窗口值大于 0X40. 假设 Fpclk1=36Mhz,则可以计算超时时间表。 相关寄存器 控制寄存器(WWDG_CR) 只有低八位有效,T[6:0]用来存储看门狗的计数器值,随时更新的,每个窗口看门狗计数周期(4096×2^ WDGTB)减 1。配置寄存器(WWDG_CFR) 该位中的 EWI 是提前唤醒中断,也就是在快要产生复位的前一段时(T[6:0]=0X40)来提醒我们,需要进行喂狗了,否则将复位! 我们一般就是利用这个位设置中断状态寄存器(WWDG_SR) 该寄存器用来记录当前是否有提前唤醒的标志。该寄存器仅有位 0 有效,其他都是保留位。 当计数器值达到 40h 时,此位由硬件置 1。操作步骤
RCC_APB1PeriphClockCmd(RCC_APB1Periph_WWDG, ENABLE); // WWDG 时钟使能 //WWDG 不同于 IWDG,IWDG 有自己独立的 40Khz 时钟,不存在使能问题。 // WWDG使用的是 PCLK1 的时钟 void WWDG_SetWindowValue(uint8_t WindowValue); // WindowValue 用来设置看门狗的上窗口值 void WWDG_SetPrescaler(uint32_t WWDG_Prescaler); //设置分频数 WWDG_EnableIT(); //开启窗口看门狗中断 //接下来是进行中断优先级配置,这里就不重复了,使用 NVIC_Init()函数即可。 void WWDG_Enable(uint8_t Counter); //该函数既设置了计数器初始值,同时使能了窗口看门狗。 /*最后,编写服务函数*/ //通过该函数来喂狗 |
|
|
|
只有小组成员才能发言,加入小组>>
3314 浏览 9 评论
2995 浏览 16 评论
3494 浏览 1 评论
9059 浏览 16 评论
4088 浏览 18 评论
1180浏览 3评论
605浏览 2评论
const uint16_t Tab[10]={0}; const uint16_t *p; p = Tab;//报错是怎么回事?
599浏览 2评论
用NUC131单片机UART3作为打印口,但printf没有输出东西是什么原因?
2335浏览 2评论
NUC980DK61YC启动随机性出现Err-DDR是为什么?
1896浏览 2评论
小黑屋| 手机版| Archiver| 德赢Vwin官网 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-23 18:36 , Processed in 1.183309 second(s), Total 79, Slave 60 queries .
Powered by 德赢Vwin官网 网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
德赢Vwin官网 观察
版权所有 © 湖南华秋数字科技有限公司
德赢Vwin官网 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号