1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
#include "Data_Time.h"
uint8_t Time_calibration ;
uint8_t IOTimeCalEnable ;
/******************************************************************************
函数名:Data_Time_FactiryReset
功 能:初始化時間狀態
参 数:无
返回值:无
*******************************************************************************
注 意:KL15On的時候調用
******************************************************************************/
void Data_Time_KL15_Init(void)
{
}
void Data_Time_WakeUp_Init(void)
{
Time_calibration = 0u;
IOTimeCalEnable = 0u;
}
void Received_2AF_Calibration(void)
{
if (Time_calibration <= 3u)/*86104-12*/
{
Time_calibration++;
}
}
/******************************************************************************
Data_Time_Calibration_Data
功 能:时间校准
参 数:无
返回值:无
*******************************************************************************
注 意:该服务函数唤醒后对时
******************************************************************************/
static uint8_t wbytestflag = 0 ;
uint16_t Year_FLAG = 0u;
uint8_t Month_FLAG = 0u;
uint8_t Date_FLAG = 0u;
uint8_t Hour_FLAG = 0u;
uint8_t Minute_FLAG = 0u;
uint8_t Second_FLAG = 0u;
void Data_Time_Calibration(void)
{
if (IOTimeCalEnable == 0u) /*時間未同步過*/ /*86104-9*/ /*86104-12*/
{
/*86104*/ /*86104-12*/
if (wbytestflag)
{
wbytestflag = 0 ;
//if (Time_calibration >= 3u)/*86104-12*/
{
/*時間同步完成,記錄同步狀態 IOTimeCalEnable=1代表已經同步過*/
IOTimeCalEnable = 1u;
/*時間顯示是完整的所以同步時間*/
RTE_RTC_Set_Hour ( Hour_FLAG );
RTE_RTC_Set_Minute( Minute_FLAG );
RTE_RTC_Set_Date ( Date_FLAG );
RTE_RTC_Set_Month ( Month_FLAG );
RTE_RTC_Set_Year ( Year_FLAG );
RTE_RTC_Confirm_Overwrite();
}
}
}
}
/******************************************************************************
函数名:Get_RTC_Time_calibration
功 能: 获得时间校准状态 1为已经校准 0为未校准
******************************************************************************/
uint8_t Get_RTC_Time_calibration(void)
{
return IOTimeCalEnable;
}