JT-DT-YD4N02B_4G_RTT_MRS/bsp/inc/bsp_rtc.h

46 lines
1.4 KiB
C
Raw Normal View History

2024-12-30 11:50:48 +08:00
/*
* @Author : stark1898y 1658608470@qq.com
* @Date : 2024-09-05 10:25:51
* @LastEditors : stark1898y 1658608470@qq.com
* @LastEditTime : 2024-09-25 10:18:41
* @FilePath : \JT-DT-YD4N02A_RTT_MRS-4G\bsp\inc\bsp_rtc.h
* @Description :
*
* Copyright (c) 2024 by yzy, All Rights Reserved.
*/
#ifndef __BSP_RTC_H__
#define __BSP_RTC_H__
#include "board.h"
#include "rtdef.h"
#define TSET_BSP_RTC
typedef struct __attribute__((packed))
{
uint16_t year; // 年份设置,取值范围为
uint8_t month; // 日期设置取值范围为1~31
uint8_t day; // 月份设置取值范围为1~12
uint8_t hour; /* 小时设置 */
uint8_t minute; /* 分钟设置 */
uint8_t second; /* 秒设置 */
uint8_t week; // 星期几设置取值范围为1~7对应星期一~星期日
} TsRtcDateTime;
extern TsRtcDateTime RtcDateTime;
uint32_t DateTime2Seconds(uint16_t syear, uint8_t smon, uint8_t sday, uint8_t hour, uint8_t min, uint8_t sec);
void Seconds2DateTime(uint32_t seconds, TsRtcDateTime* pDateTime);
uint32_t RTC_Time2TimeStamp(void);
void RTC_GetTime(void);
uint8_t RTC_GetWeek(uint16_t year, uint8_t month, uint8_t day);
void RTC_SetTime(rt_uint16_t syear, rt_uint8_t smon
, rt_uint8_t sday, rt_uint8_t hour, rt_uint8_t min, rt_uint8_t sec);
int BSP_RTC_Init(void);
void Timestamp_To_Rtc_DateTime(time_t timestamp, TsRtcDateTime *rtc_dt);
#endif //!__BSP_RTC_H__