完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
实际上,如果硬件时间服务器 (HW_TS) 在 RTC 初始化(通过 MX_RTC_Init())之后没有足够快地初始化(通过 MX_APPE_Init()),代码可能会陷入 HW_TS_RTC_Wakeup_Handler() 函数的无限循环。
为避免此问题,有 2 种解决方案:
/** 启用唤醒 */ 如果 (HAL_RTCEx_SetWakeUpTimer(&hrtc, 0, RTC_WAKEUPCLOCK_RTCCLK_DIV16) != HAL_OK) { 错误处理程序(); } 在每次使用 STM32CubeMX 生成新代码后,您都必须将其删除。
> 更改唤醒计数器值: 如果您使用 CubeMX,在 RTC 配置中将默认值更改为 0xFFFF: 或者在main.c 中的MX_RTC_Init函数中,将此函数的第二个参数替换为 0 值: HAL_RTCEx_SetWakeUpTimer(&hrtc, 0, RTC_WAKEUPCLOCK_RTCCLK_DIV16) 通过 0xFFFF: HAL_RTCEx_SetWakeUpTimer(&hrtc, 0xFFFF, RTC_WAKEUPCLOCK_RTCCLK_DIV16) > 在RTC_Init 2用户代码部分(在 main.c 的 MX_RTC_Init 函数中) 添加以下行: __HAL_RTC_WAKEUPTIMER_DISABLE(&hrtc); |
|
|
|
只有小组成员才能发言,加入小组>>
请教:在使用UDE STK时,单片机使用SPC560D30L1,在配置文件怎么设置或选择?里面只有SPC560D40的选项
2642 浏览 1 评论
3208 浏览 1 评论
请问是否有通过UART连接的两个微处理器之间实现双向值交换的方法?
1783 浏览 1 评论
3611 浏览 6 评论
5989 浏览 21 评论
940浏览 4评论
1317浏览 4评论
在Linux上安装Atollic TRUEStudio的步骤有哪些呢?
585浏览 3评论
使用DMA激活某些外设会以导致外设无法工作的方式生成代码是怎么回事
1304浏览 3评论
1362浏览 3评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-25 09:17 , Processed in 0.954126 second(s), Total 49, Slave 42 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号