forked from SZV10X_Software/SZV103_FM33A0xxEV_SiZhu

wujiazhi
2024-06-13 72def895431ad7a08e635b11f3da738e2b2c4618
Function/EXTERN_RTC/extern_rtc.h
@@ -2,15 +2,7 @@
#define _EXTERN_RTC_H_
#include "define_all.h" 
//ÍⲿRTCÖжÏIO
#define  EXT_RTC_INT_PORT     GPIOD
#define  EXT_RTC_INT_PIN      GPIO_Pin_6   //  P3.2   IIC SCA ÐźÅ
#define   YEAR_DEC_MAX               50      //Äê·Ý×î´óֵʮ½øÖÆ
#define   YEAR_BCD_MAX               0x50    //Äê·Ý×î´óÖµBCD¸ñʽ
#include "rtc.h"
//   <<< Use Configuration Wizard in Context Menu >>>
@@ -70,7 +62,7 @@
      
//    <o> ¸üÐÂÖжϹ¦ÄÜ
//  <0x0=>¹Ø±Õ <0x20=>Æô¶¯
      #define UPDATA_BIT_FLAG   0x000020
      #define UPDATA_BIT_FLAG   0x000000
//    <o> Î¶Ȳ¹³¥¹¦ÄÜ
//  <0x0=>0.5S <0x40=>2.0S <0x80=>10S <0xC0=>30S 
@@ -100,34 +92,16 @@
   uint16_t    year;
}CALENDAR_TIME_T;//BCD
typedef struct
{
   uint8_t year;   //Ä꣬BCD Âë 00~99
   uint8_t month;   //Ô£¬BCD Âë 01~12
   uint8_t day;   //ÈÕ£¬BCD Âë 01~31
   uint8_t hour;   //ʱ£¬BCD Âë 00~23
   uint8_t min;   //·Ö£¬BCD Âë 00~59
   uint8_t sec;   //Ã룬BCD Âë 00~59
}sClockBCD;
#pragma pack()
void RTC_GPIO_Init(void);
ErrorStatus Set_Extern_Rtc_Time(uint16_t year,uint8_t month,uint8_t day,uint8_t week,uint8_t hour,uint8_t min,uint8_t sec);
ErrorStatus Get_Extern_Rtc_Time(__IO sClockBCD * calendar_p);
void Set_Extern_Rtc_Time(uint16_t year,uint8_t month,uint8_t day,uint8_t week,uint8_t hour,uint8_t min,uint8_t sec);
void Get_Extern_Rtc_Time(__IO CALENDAR_TIME_T * calendar_p);
void Set_Rtc_UpdataInterrupt(void);
extern __IO sClockBCD sys_clockBCD_g;
ErrorStatus TimeEffectJudgm(const sClockBCD TimeBCD);
//extern __IO CALENDAR_TIME_T calendar_g;
extern __IO CALENDAR_TIME_T calendar_test_g;
#endif