#ifndef __COMMANDSCONFIG_H
#define __COMMANDSCONFIG_H
#include "sys.h"
//////////////////////////////////////////////////////////////////////////////
// 			2203/5/X GHz_ljw 合并版 加入厂家烧写命令
//////////////////////////////////////////////////////////////////////////////
#define INCLUDE_CMD_COUNT 30

typedef struct 
{
	u8  cmd;
	void(*Process)(u8 *,u16,u8 ,u8);
	u8  bIsContentBitInverted_Recv;
	u8 bIsContentBitInverted_SendBack_SendBack;
}RequestCmdItem;

extern void CMD0x01_Request_RunningAtWhere_process(u8 *pData,u16 dataLen,u8 bIsContentBitInverted_Recv,u8 bIsContentBitInverted_SendBack);      
extern void CMD0x02_Request_ReadMcuVersion_process(u8 *pData,u16 dataLen,u8 bIsContentBitInverted_Recv,u8 bIsContentBitInverted_SendBack);        
extern void CMD0x03_Request_ReadMcuBootVersion_process(u8 *pData,u16 dataLen,u8 bIsContentBitInverted_Recv,u8 bIsContentBitInverted_SendBack);        
extern void CMD0x04_Request_ReadUpdateTimeStamp_process(u8 *pData,u16 dataLen,u8 bIsContentBitInverted_Recv,u8 bIsContentBitInverted_SendBack);        
extern void CMD0x05_Request_UpdateStart_process(u8 *pData,u16 dataLen,u8 bIsContentBitInverted_Recv,u8 bIsContentBitInverted_SendBack);        
extern void CMD0x06_Request_RegisterAppStartTime_process(u8 *pData,u16 dataLen,u8 bIsContentBitInverted_Recv,u8 bIsContentBitInverted_SendBack);   
extern void CMD0x07_Request_ReadbackAppStartTime_process(u8 *pData,u16 dataLen,u8 bIsContentBitInverted_Recv,u8 bIsContentBitInverted_SendBack);   

extern void CMD0x08_Request_UpdateSend_process(u8 *pData,u16 dataLen,u8 bIsContentBitInverted_Recv,u8 bIsContentBitInverted_SendBack);       
extern void CMD0x0B_Request_UpdateVerifyStage1_process(u8 *pData,u16 dataLen,u8 bIsContentBitInverted_Recv,u8 bIsContentBitInverted_SendBack);       
extern void CMD0x0C_Request_UpdateSwitch_process(u8 *pData,u16 dataLen,u8 bIsContentBitInverted_Recv,u8 bIsContentBitInverted_SendBack);       
extern void CMD0x0D_Request_UpdateVerifyStage2_process(u8 *pData,u16 dataLen,u8 bIsContentBitInverted_Recv,u8 bIsContentBitInverted_SendBack);       
extern void CMD0x11_Request_UpdateFinished_process(u8 *pData,u16 dataLen,u8 bIsContentBitInverted_Recv,u8 bIsContentBitInverted_SendBack);              

extern void CMD0x15_Request_WriteUpdateTimeStamp_process(u8 *pData,u16 dataLen,u8 bIsContentBitInverted_Recv,u8 bIsContentBitInverted_SendBack);         
 

	
extern void CMD0x20_Request_PowerCtrl_process(u8 *pData,u16 dataLen,u8 bIsContentBitInverted_Recv,u8 bIsContentBitInverted_SendBack);                 
extern void CMD0x21_Request_RefVlotage_process(u8 *pData,u16 dataLen,u8 bIsContentBitInverted_Recv,u8 bIsContentBitInverted_SendBack);                

extern void CMD0x22_Request_AnalogChannelSet_process(u8 *pData,u16 dataLen,u8 bIsContentBitInverted_Recv,u8 bIsContentBitInverted_SendBack);                   

extern void CMD0x23_Request_ExternalChannelSet_process(u8 *pData,u16 dataLen,u8 bIsContentBitInverted_Recv,u8 bIsContentBitInverted_SendBack);    

extern void CMD0x43_Request_CtrlChannel4094_process(u8 *pData,u16 dataLen,u8 bIsContentBitInverted_Recv,u8 bIsContentBitInverted_SendBack);       

extern void CMD0x29_Request_SetGainTempCorrection_process(u8 *pData,u16 dataLen,u8 bIsContentBitInverted_Recv,u8 bIsContentBitInverted_SendBack);                                                                          
extern void CMD0x30_Request_ReadTemperature_process(u8 *pData,u16 dataLen,u8 bIsContentBitInverted_Recv,u8 bIsContentBitInverted_SendBack);            
extern void CMD0x31_Request_ReadBack_ProbeStatus_process(u8*pData,u16 dataLen,u8 bIsContentBitInverted_Recv,u8 bIsContentBitInverted_SendBack);             
extern void CMD0x32_Request_CtrlProbeDifferenceOrSingle_process(u8 *pData,u16 dataLen,u8 bIsContentBitInverted_Recv,u8 bIsContentBitInverted_SendBack);           
extern void CMD0x33_Request_ReadProbeFactoryInfo_process(u8 *pData,u16 dataLen,u8 bIsContentBitInverted_Recv,u8 bIsContentBitInverted_SendBack);        
extern void CMD0x34_Request_CtrlProbeLed_process(u8 *pData,u16 dataLen,u8 bIsContentBitInverted_Recv,u8 bIsContentBitInverted_SendBack);               

extern void CMD0x40_Request_AnalogChannelCalcOffset_process(u8 *pData,u16 dataLen,u8 bIsContentBitInverted_Recv,u8 bIsContentBitInverted_SendBack);         
extern void CMD0x41_Request_AnalogChannelOffset_process(u8 *pData,u16 dataLen,u8 bIsContentBitInverted_Recv,u8 bIsContentBitInverted_SendBack);         
extern void CMD0x42_Request_AnalogChannelGain_process(u8 *pData,u16 dataLen,u8 bIsContentBitInverted_Recv,u8 bIsContentBitInverted_SendBack);    
extern void CMD0x48_Request_CtrlOuterLed_process(u8 *pData,u16 dataLen,u8 bIsContentBitInverted_Recv,u8 bIsContentBitInverted_SendBack);      

extern void CMD0x50_Request_WriteProbeFactoryInfo_process(u8 *pData,u16 dataLen,u8 bIsContentBitInverted_Recv,u8 bIsContentBitInverted_SendBack);         
extern void CMD0xC1_Request_CommunicateReset_process(u8 *pData,u16 dataLen,u8 bIsContentBitInverted_Recv,u8 bIsContentBitInverted_SendBack);        	
extern void CMD0xE0_Request_ThrowHDError_process(u8 *pData,u16 dataLen,u8 bIsContentBitInverted_Recv,u8 bIsContentBitInverted_SendBack);      
extern void CMD0xE1_Request_ThrowStuckError_process(u8 *pData,u16 dataLen,u8 bIsContentBitInverted_Recv,u8 bIsContentBitInverted_SendBack);     
extern void CMD0xE3_Request_GetDebugData_process(u8 *pData,u16 dataLen,u8 bIsContentBitInverted_Recv,u8 bIsContentBitInverted_SendBack);    
extern void CMD0xE4_Request_TestCommunicate_process(u8 *pData,u16 dataLen,u8 bIsContentBitInverted_Recv,u8 bIsContentBitInverted_SendBack);    
extern RequestCmdItem RequestCmdTables[];
#endif

