From 4da02951027c198d574d5139fe818317769339b3 Mon Sep 17 00:00:00 2001 From: jianli Date: Mon, 26 Sep 2022 18:47:01 +0800 Subject: [PATCH 1/4] [Add]Add cancel alarm --- drivers/drivers-x16xx/src/x16xx_hal_rtc.c | 23 +++++++++++++++++++---- 1 file changed, 19 insertions(+), 4 deletions(-) diff --git a/drivers/drivers-x16xx/src/x16xx_hal_rtc.c b/drivers/drivers-x16xx/src/x16xx_hal_rtc.c index 44b357a9..cce802c4 100644 --- a/drivers/drivers-x16xx/src/x16xx_hal_rtc.c +++ b/drivers/drivers-x16xx/src/x16xx_hal_rtc.c @@ -313,7 +313,7 @@ static void RTC_Time64_To_TM(int64_t time, RTC_TimeTypeDef *tm) * * @return 返回0 */ -static int RTC_Tm_To_Time(RTC_TimeTypeDef *tm, unsigned long *time) +int RTC_Tm_To_Time(RTC_TimeTypeDef *tm, unsigned long *time) { *time = RTC_Tm_To_Time64(tm); @@ -449,11 +449,9 @@ void HAL_RTC_SetTime(RTC_HandleTypeDef *hrtc /* , RTC_TimeTypeDef *sTime */) hrtc->Time.tm_year -= 1970; RTC_Tm_To_Time(&hrtc->Time, &time); - __HAL_RTC_SET_SECOND(hrtc, time); __HAL_UnLock(&hrtc->Lock); - } /* @@ -474,6 +472,7 @@ void HAL_RTC_GetTime(RTC_HandleTypeDef *hrtc /* , RTC_TimeTypeDef *sTime */) hrtc->Time.tm_year += 1970; __HAL_UnLock(&hrtc->Lock); + // prom_printk("get : %d-%d-%d %d:%d:%d\n", hrtc->Time.tm_year, hrtc->Time.tm_mon, hrtc->Time.tm_mday, hrtc->Time.tm_hour, hrtc->Time.tm_min, hrtc->Time.tm_sec); } @@ -497,8 +496,23 @@ void HAL_RTC_SetAlarm(RTC_HandleTypeDef *hrtc) __HAL_RTC_ENABLE_ALARM(hrtc); __HAL_UnLock(&hrtc->Lock); + } +/** + * @brief RTC关闭闹钟 + * + * param hrtc rtc句柄 + */ +void HAL_RTC_CloseAlarm(RTC_HandleTypeDef *hrtc) +{ + __HAL_Lock(&hrtc->Lock); + + __HAL_RTC_DISABLE_ALARM(hrtc); + + __HAL_UnLock(&hrtc->Lock); + +} /** * @brief RTC获取闹钟时间 * @@ -517,6 +531,7 @@ void HAL_RTC_GetAlarm(RTC_HandleTypeDef *hrtc) hrtc->Alarm.tm_year += 1970; __HAL_UnLock(&hrtc->Lock); + } /** @@ -561,7 +576,7 @@ void HAL_RTC_IRQHandler(int irq, void *data) } if (is_alarm_interrupt) { - + __HAL_RTC_CLEAR_ALARM_FLAG(hrtc); HAL_RTC_Alarm_Callback(hrtc); -- Gitee From 6fec5749cb0523fda38ee0de378f3c600c98fec8 Mon Sep 17 00:00:00 2001 From: jianli Date: Wed, 28 Sep 2022 15:24:29 +0800 Subject: [PATCH 2/4] [Add]Add cancel Alarm --- drivers/drivers-x16xx/src/x16xx_hal_rtc.c | 1 - 1 file changed, 1 deletion(-) diff --git a/drivers/drivers-x16xx/src/x16xx_hal_rtc.c b/drivers/drivers-x16xx/src/x16xx_hal_rtc.c index cce802c4..eb91ce5b 100644 --- a/drivers/drivers-x16xx/src/x16xx_hal_rtc.c +++ b/drivers/drivers-x16xx/src/x16xx_hal_rtc.c @@ -332,7 +332,6 @@ static void RTC_Time_To_TM(unsigned long time, RTC_TimeTypeDef *tm) } - /** * @} */ -- Gitee From 7c2879bbb87110154b24cc60c6e7ca0ee058e3cd Mon Sep 17 00:00:00 2001 From: jianli Date: Wed, 28 Sep 2022 15:27:18 +0800 Subject: [PATCH 3/4] [Add]Add cancel Alarm --- drivers/drivers-x16xx/src/x16xx_hal_rtc.c | 1 - 1 file changed, 1 deletion(-) diff --git a/drivers/drivers-x16xx/src/x16xx_hal_rtc.c b/drivers/drivers-x16xx/src/x16xx_hal_rtc.c index eb91ce5b..4f0713c0 100644 --- a/drivers/drivers-x16xx/src/x16xx_hal_rtc.c +++ b/drivers/drivers-x16xx/src/x16xx_hal_rtc.c @@ -331,7 +331,6 @@ static void RTC_Time_To_TM(unsigned long time, RTC_TimeTypeDef *tm) RTC_Time64_To_TM(time, tm); } - /** * @} */ -- Gitee From 9b6a8a01e230d802e303d9b4bfe52a6b2790853a Mon Sep 17 00:00:00 2001 From: jianli Date: Wed, 28 Sep 2022 15:35:21 +0800 Subject: [PATCH 4/4] [Add]Add cancel Alarm --- drivers/drivers-x16xx/src/x16xx_hal_rtc.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/drivers-x16xx/src/x16xx_hal_rtc.c b/drivers/drivers-x16xx/src/x16xx_hal_rtc.c index 4f0713c0..eb91ce5b 100644 --- a/drivers/drivers-x16xx/src/x16xx_hal_rtc.c +++ b/drivers/drivers-x16xx/src/x16xx_hal_rtc.c @@ -331,6 +331,7 @@ static void RTC_Time_To_TM(unsigned long time, RTC_TimeTypeDef *tm) RTC_Time64_To_TM(time, tm); } + /** * @} */ -- Gitee