初级会员

- 积分
- 111
- 金钱
- 111
- 注册时间
- 2013-5-30
- 在线时间
- 21 小时
|
4金钱
开发板:NUCLEO-L476RG
测试例程:STM32Cube_FW_L4_V1.15.0\Projects\NUCLEO-L476RG\Examples\PWR\PWR_STOP2
问题描述:
1、修改例程,取消进入STOP2的代码。
2、增加了 void HAL_RTCEx_WakeUpTimerEventCallback(RTC_HandleTypeDef *hrtc) { BSP_LED_Toggle(LED2 );}
3、取消HAL_SYSTICK_Callback()中LED2的操作;
4、将例程中 HAL_RTCEx_SetWakeUpTimer_IT(&RTCHandle, 0x0FFFF, RTC_WAKEUPCLOCK_RTCCLK_DIV16)
更改为:
HAL_RTCEx_SetWakeUpTimer_IT(&RTCHandle, 0, RTC_WAKEUPCLOCK_CK_SPRE_16BITS);
[测试结果] 按照间隔 1s周期进入唤醒中断回调驱动LED2 ,测试正常。
5、进一步修改分频参数为:
HAL_RTCEx_SetWakeUpTimer_IT(&RTCHandle, 1, RTC_WAKEUPCLOCK_CK_SPRE_17BITS);
[测试结果] 不能进入唤醒中断回调。
为什么修改分频参数 RTC_WAKEUPCLOCK_CK_SPRE_16BITS 可以工作,RTC_WAKEUPCLOCK_CK_SPRE_17BITS 不能正常工作呢?
【备注】配置 RTC_WAKEUPCLOCK_CK_SPRE_17BITS ,是为了计数可以最大17位,获取更长的计数时间。
恳请各位大神帮忙,恳请原子哥帮忙,谢谢!!!!!!!!!
|
|