From aa38e5c1f48e31213ee349aa5cd6f06c85bda70d Mon Sep 17 00:00:00 2001
From: android <android@lingyun.com>
Date: Tue, 25 Jun 2024 21:49:39 +0800
Subject: [PATCH] Add GD32F103RCT6 ADC converter board SDK source code

---
 mcu_sdk/gd32f103/rk_eFire/System/Inc/rtc.h |  181 +++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 181 insertions(+), 0 deletions(-)

diff --git a/mcu_sdk/gd32f103/rk_eFire/System/Inc/rtc.h b/mcu_sdk/gd32f103/rk_eFire/System/Inc/rtc.h
new file mode 100644
index 0000000..d62983a
--- /dev/null
+++ b/mcu_sdk/gd32f103/rk_eFire/System/Inc/rtc.h
@@ -0,0 +1,181 @@
+/**
+  ******************************************************************************
+  * File Name          : RTC.h
+  * Description        : This file provides code for the configuration
+  *                      of the RTC instances.
+  ******************************************************************************
+  * @attention
+  *
+  * <h2><center>&copy; Copyright (c) 2021 STMicroelectronics.
+  * All rights reserved.</center></h2>
+  *
+  * This software component is licensed by ST under Ultimate Liberty license
+  * SLA0044, the "License"; You may not use this file except in compliance with
+  * the License. You may obtain a copy of the License at:
+  *                             www.st.com/SLA0044
+  *
+  ******************************************************************************
+  */
+/* Define to prevent recursive inclusion -------------------------------------*/
+#ifndef __rtc_H
+#define __rtc_H
+#ifdef __cplusplus
+ extern "C" {
+#endif
+
+/* Includes ------------------------------------------------------------------*/
+#include <stdint.h>
+#include <stdbool.h>
+#include "timeServer.h"
+
+/*!
+ * \brief Temperature coefficient of the clock source
+ */
+#define RTC_TEMP_COEFFICIENT                            ( -0.035 )
+
+/*!
+ * \brief Temperature coefficient deviation of the clock source
+ */
+#define RTC_TEMP_DEV_COEFFICIENT                        ( 0.0035 )
+
+/*!
+ * \brief Turnover temperature of the clock source
+ */
+#define RTC_TEMP_TURNOVER                               ( 25.0 )
+
+/*!
+ * \brief Turnover temperature deviation of the clock source
+ */
+#define RTC_TEMP_DEV_TURNOVER                           ( 5.0 )
+
+
+/* USER CODE BEGIN Private defines */
+
+/* USER CODE END Private defines */
+
+void Board_RTCInit(void);
+
+/*!
+ * \brief Returns the minimum timeout value
+ *
+ * \retval minTimeout Minimum timeout value in in ticks
+ */
+uint32_t RtcGetMinimumTimeout( void );
+
+/*!
+ * \brief converts time in ms to time in ticks
+ *
+ * \param[IN] milliseconds Time in milliseconds
+ * \retval returns time in timer ticks
+ */
+uint32_t RtcMs2Tick( TimerTime_t milliseconds );
+
+/*!
+ * \brief converts time in ticks to time in ms
+ *
+ * \param[IN] time in timer ticks
+ * \retval returns time in milliseconds
+ */
+TimerTime_t RtcTick2Ms( uint32_t tick );
+
+/*!
+ * \brief Performs a delay of milliseconds by polling RTC
+ *
+ * \param[IN] milliseconds Delay in ms
+ */
+void RtcDelayMs( TimerTime_t milliseconds );
+
+/*!
+ * \brief Sets the RTC timer reference
+ *
+ * \retval value Timer reference value in ticks
+ */
+uint32_t RtcSetTimerContext( void );
+
+/*!
+ * \brief Gets the RTC timer reference
+ *
+ * \retval value Timer value in ticks
+ */
+uint32_t RtcGetTimerContext( void );
+
+/*!
+ * \brief Gets the system time with the number of seconds elapsed since epoch
+ *
+ * \param [OUT] milliseconds Number of milliseconds elapsed since epoch
+ * \retval seconds Number of seconds elapsed since epoch
+ */
+uint32_t RtcGetCalendarTime( uint16_t *milliseconds );
+
+/*!
+ * \brief Get the RTC timer value
+ *
+ * \retval RTC Timer value
+ */
+uint32_t RtcGetTimerValue( void );
+
+/*!
+ * \brief Get the RTC timer elapsed time since the last Alarm was set
+ *
+ * \retval RTC Elapsed time since the last alarm in ticks.
+ */
+uint32_t RtcGetTimerElapsedTime( void );
+
+/*!
+ * \brief Sets the alarm
+ *
+ * \note The alarm is set at now (read in this funtion) + timeout
+ *
+ * \param timeout [IN] Duration of the Timer ticks
+ */
+void RtcSetAlarm( uint32_t timeout );
+
+/*!
+ * \brief Stops the Alarm
+ */
+void RtcStopAlarm( void );
+
+/*!
+ * \brief Starts wake up alarm
+ *
+ * \note  Alarm in RtcTimerContext.Time + timeout
+ *
+ * \param [IN] timeout Timeout value in ticks
+ */
+void RtcStartAlarm( uint32_t timeout );
+
+/*!
+ * \brief Processes pending timer events
+ */
+void RtcProcess( void );
+
+/*!
+ * \brief Computes the temperature compensation for a period of time on a
+ *        specific temperature.
+ *
+ * \param [IN] period Time period to compensate in milliseconds
+ * \param [IN] temperature Current temperature
+ *
+ * \retval Compensated time period
+ */
+TimerTime_t RtcTempCompensation( TimerTime_t period, float temperature );
+
+void HW_RTC_IrqHandler( void );
+void Board_RTCInit(void);
+void RtcBkupWrite( uint32_t data0, uint32_t data1 );
+void RtcBkupRead( uint32_t *data0, uint32_t *data1 );
+
+#ifdef __cplusplus
+}
+#endif
+#endif /*__ rtc_H */
+
+/**
+  * @}
+  */
+
+/**
+  * @}
+  */
+
+/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/

--
Gitblit v1.9.1