93 lines
2.9 KiB
C
Executable File
93 lines
2.9 KiB
C
Executable File
/****************************************************************************
|
|
|
|
Copyright(c) 2019 by Aerospace C.Power (Chongqing) Microelectronics. ALL RIGHTS RESERVED.
|
|
|
|
This Information is proprietary to Aerospace C.Power (Chongqing) Microelectronics and MAY NOT
|
|
be copied by any method or incorporated into another program without
|
|
the express written consent of Aerospace C.Power. This Information or any portion
|
|
thereof remains the property of Aerospace C.Power. The Information contained herein
|
|
is believed to be accurate and Aerospace C.Power assumes no responsibility or
|
|
liability for its use in any way and conveys no license or title under
|
|
any patent or copyright and makes no representation or warranty that this
|
|
Information is free from patent or copyright infringement.
|
|
|
|
****************************************************************************/
|
|
#ifndef __IOT_PT_FUNC_H
|
|
#define __IOT_PT_FUNC_H
|
|
#include "phy_phase.h"
|
|
#include "iot_ftm_msg.h"
|
|
#include "voltage_detec.h"
|
|
#include "zero_cross_detec.h"
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
/* pkt expand detect thd for pt */
|
|
#define PT_PHY_PKT_TH 32
|
|
|
|
/* PT Tx break num for loop cnt */
|
|
#define PT_TX_NO_BREAK_NUM 0x00
|
|
/* PT mode reply ack */
|
|
#define PT_ACK_REPLY 0x01
|
|
/* PT mode invaluid data value */
|
|
#define PT_INVALID_DATA_VAL 0xFF
|
|
/* PT mode error data value */
|
|
#define PT_ERROR_DATA_VAL 0xFE
|
|
|
|
/* pt ctxt */
|
|
typedef struct _iot_pt_ctxt {
|
|
/* zero cross detection */
|
|
zc_circuit_check_status_t zc_circuit_check_status;
|
|
/* charge voltage detection */
|
|
dut_charge_control_ctxt_t dut_charge_control_ctxt;
|
|
} iot_pt_ctxt_t;
|
|
|
|
extern iot_pt_ctxt_t iot_pt_ctxt;
|
|
|
|
#pragma pack(push) // save the pack status
|
|
#pragma pack(1) // 1 byte align
|
|
|
|
/* golden pt info */
|
|
typedef struct _iot_pt_golden_info {
|
|
/* golden mac */
|
|
uint8_t mac[IOT_MAC_ADDR_LEN];
|
|
/* golden fw version */
|
|
uint32_t version;
|
|
} iot_pt_golden_info;
|
|
|
|
#pragma pack(pop) // restore the pack status
|
|
|
|
/**
|
|
*@brief mp_pt_dut_tx.
|
|
* This special API is designed for production line testing.
|
|
* Dut board need to tx packet for estimating self channel.
|
|
*
|
|
*@param tx_cmd [ftm cmd tx struct info]
|
|
*@param anf_en [notch filter enbale]
|
|
*@param power [power set]
|
|
*@param g_ppm [golden ppm]
|
|
*@param info [return back info]
|
|
*@exception [none.]
|
|
*@return [none.]
|
|
*/
|
|
void mp_pt_dut_tx(iot_ftm_tx_cmd_t *tx_cmd, \
|
|
uint8_t anf_en, uint8_t power, int16_t g_ppm, void *info);
|
|
|
|
/**
|
|
*@brief mp_pt_golden_unit_rx.
|
|
* This special API is designed for production line testing.
|
|
* Golden unit board need to rx packet for estimating dut channel.
|
|
*
|
|
*@param none [none.]
|
|
*@exception [none.]
|
|
*@return [none.]
|
|
*/
|
|
void mp_pt_golden_unit_rx();
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif /* __IOT_PT_FUNC_H */
|