// 同步定时模块
// 杭州秒寻科技有限公司
// 周涛
// 2025-3-3

#ifndef __OAM_SYNC_TIMER_H__
#define __OAM_SYNC_TIMER_H__

#include "sysdef.h"

#define ORDER_SYNC_TIMER_CURRENT_TIME 0X0700
#define ORDER_SYNC_TIMER_SWITCH 0X0701
#define ORDER_SYNC_TIMER_NUM 0X0702
#define ORDER_SYNC_TIMER1_START 0X0703
#define ORDER_SYNC_TIMER1_STOP 0X0704
#define ORDER_SYNC_TIMER2_START 0X0705
#define ORDER_SYNC_TIMER2_STOP 0X0706

typedef struct
{
    uint8 abyCurrentTime[6]; // 当前时间
    uint8 byTimerSwitch;     // 定时开关，0：关闭，1：打开
    uint8 byTimerNum;        // 定时数量，只能是1或者2

    uint16 wTimer1Start; // 定时1开始时间，高字节表示小时，低字节表示分钟
    uint16 wTimer1Stop;  // 定时1结束时间，高字节表示小时，低字节表示分钟

    uint16 wTimer2Start; // 定时2开始时间，高字节表示小时，低字节表示分钟
    uint16 wTimer2Stop;  // 定时2结束时间，高字节表示小时，低字节表示分钟

    uint8 abyReserve[40]; // 保留，确保4字节对齐
} SYNC_TIMER_T;

// 外部接口
void oam_sync_timer_init();
SYNC_TIMER_T *oam_sync_timer_query_param();
void oam_sync_timer_query(uint8 *pbyData);
void oam_sync_timer_config(uint8 *pbyData);

// 内部接口
void oam_sync_timer_set_param_with_default_data();
void oam_sync_timer_set_current_datetime(uint8 *pbyData);
#endif
