完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
时钟是48M的,WWDG初始化如下:
hwwdg.Instance = WWDG; hwwdg.Init.Prescaler = WWDG_PRESCALER_8; hwwdg.Init.Window = 117; hwwdg.Init.Counter = 127; hwwdg.Init.EWIMode = WWDG_EWI_DISABLE; 我的理解是6.8ms~43ms间就可以喂狗,所以程序里面每隔20ms进行喂狗,但程序一直复位,不知为何? |
|
相关推荐
1个回答
|
|
根据您提供的WWDG初始化代码,配置了窗口看门狗的预分频器为WWDG_PRESCALER_8,窗口值为117,计数器值为127,EWI模式为禁用。根据STM32F030参考手册的描述,窗口时间计算如下:
窗口时间 = (窗口寄存器值 + 1) / (时钟频率 / 预分频器) 根据您提供的信息,时钟频率为48M,预分频器为8,所以窗口时间约为6.8ms。您的理解是正确的,喂狗的间隔在6.8ms到43ms之间,所以每隔20ms喂狗是符合要求的。 如果程序一直复位,可能是以下几个方面的原因: 1. WWDG中断未使能:请确保已经使能了窗口看门狗的中断,在初始化代码后添加以下代码: ```c HAL_WWDG_Start_IT(&hwwdg); ``` 2. 独立看门狗中断优先级设置不正确:请检查独立看门狗中断的优先级设置。您可以使用以下代码来设置: ```c HAL_NVIC_SetPriority(WWDG_IRQn, 0, 0); HAL_NVIC_EnableIRQ(WWDG_IRQn); ``` 3. 喂狗函数未正确调用:请检查喂狗的函数是否正确调用了,可以在每次喂狗的位置添加打印信息来确认是否调用成功。 如果您检查以上问题后仍然无法解决,建议您检查硬件连接是否正确,确认窗口看门狗的IO口是否正常工作。此外,也可以查看芯片的硬件资料,查找更详细的配置和使用说明。 |
|
|
|
只有小组成员才能发言,加入小组>>
调试STM32H750的FMC总线读写PSRAM遇到的问题求解?
1785 浏览 1 评论
X-NUCLEO-IHM08M1板文档中输出电流为15Arms,15Arms是怎么得出来的呢?
1621 浏览 1 评论
1088 浏览 2 评论
STM32F030F4 HSI时钟温度测试过不去是怎么回事?
729 浏览 2 评论
ST25R3916能否对ISO15693的标签芯片进行分区域写密码?
1680 浏览 2 评论
1939浏览 9评论
STM32仿真器是选择ST-LINK还是选择J-LINK?各有什么优势啊?
736浏览 4评论
STM32F0_TIM2输出pwm2后OLED变暗或者系统重启是怎么回事?
571浏览 3评论
597浏览 3评论
stm32cubemx生成mdk-arm v4项目文件无法打开是什么原因导致的?
560浏览 3评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-25 04:31 , Processed in 0.743452 second(s), Total 47, Slave 41 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号