// 同步模块
// 杭州秒寻科技有限公司
// 周涛
// 2023-11-09

#ifndef _SYNCTX_H_
#define _SYNCTX_H_

#include "sysdef.h"

//// 供外部使用接口
uint8 synctx_init();
uint8 synctx_switch_work_status(uint8 byGoStatus, uint8 byGetStatus);
int16 synctx_read_rssi();

// 内部接口
uint8 synctx_config_gpio5_rest();
void synctx_select_reg_page(uint8 byPage);
void synctx_read_reg(uint8 byAddress, uint8 *pbyValue);
uint8 synctx_wirte_reg(uint8 byAddress, uint8 byValue);
uint8 synctx_rewrite_reg(uint8 byAddress, uint8 byValue, uint8 byMask);
uint8 synctx_get_work_status(uint8 byStatus);
uint8 synctx_config_api_command(uint8 byApiCommand);
uint8 synctx_config_cap_load(uint8 byCapValue);
void synctx_soft_reset();
void synctx_rewrite_reg_page(uint8 byRegPage, uint8 *pbyData, uint16 wLen);
uint32 synctx_read_chip_id();
uint8 synctx_config_oscillator_wait_time(uint8 byValue);
void synctx_config_tcxo();
void synctx_power_up(void);
uint8 synctx_ir_calibration();
uint8 synctx_config_rx_dout();
uint8 synctx_config_rx_int();
uint8 synctx_config_tx_int();
uint8 synctx_update_rssi_select();
uint8 synctx_pre_send_data();
uint8 synctx_rx_exit_status();
uint8 synctx_tx_exit_status();
uint8 synctx_manual_jump_freq_mode();
uint8 synctx_set_sync_word(uint8 byData);
uint8 synctx_set_tx_init_param(uint8 byCarrierId, uint8 byFreqSpace, uint8 biTxSyncWordId, int8 byTxPower);

#endif
