...
3. Configuration packet
The Diagnostic functions are:
...
Add Channel Diagnosis Request can be programmed in the AppPNS_DemoApplicationFunctions.c:
/**************************************************************************************
function: AddChannelDiagnosisReq
description: Send AddChannelDiagnosisResponse.
global: none
input: APP_DATA_T* ptAppData - pointer to the packet
output: none
return: void
**************************************************************************************/
void AppPNS_HandleAppAddChannelDiagnosisReq( uint16_t usSlot , uint16_t usSubslot, APP_DATA_T* ptAppData)
{
...
}
The Add Channel Diagnosis Confirmation can be programmed in the AppPNS_DemoApplicationFunctions.c:
/* use global packet buffer */
PNS_IF_ADD_CHANNEL_DIAG_REQ_T *ptReq = ( PNS_IF_ADD_CHANNEL_DIAG_REQ_T*) &(ptAppData->tPacket);
memset(ptReq, 0x00, sizeof(*ptReq));
ptReq->tHead.ulDest = 0x20;
ptReq->tHead.ulCmd = PNS_IF_ADD_CHANNEL_DIAG_REQ;
ptReq->tHead.ulLen = sizeof(ptReq->tData);
ptReq->tData.ulApi = 0;
ptReq->tData.ulSlot = usSlot;
ptReq->tData.ulSubslot = usSubslot;
ptReq->tData.usChannelNum = 0x8000;
ptReq->tData.usChannelProp = 0x0000;
ptReq->tData.usChannelErrType = 2;
(void)Pkt_SendPacket(ptAppData->hChannel[0], &ptAppData->tPacket, TX_TIMEOUT);
}
**************************************************************************************
function: AddChannelDiagnosisCnf
description: Save DiagHandle
global: uint32_t s_abDiagHandle - Handle for diagnostics alarms
input: APP_DATA_T* ptAppData - pointer to the packet
output: none
return: void
**************************************************************************************/
void AppPNS_HandleAddChannelDiagnosisCnf( APP_DATA_T* ptAppData)
{
PNS_IF_ADD_CHANNEL_DIAG_CNF_T* ptAddChannelDiagCnf=( PNS_IF_ADD_CHANNEL_DIAG_CNF_T*) &(ptAppData->tPacket);
s_abDiagHandle = ptAddChannelDiagCnf->tData.hDiagHandle;
return;
}void AppPNS_HandleRemoveDiagnosisReq(...
}
The Remove Channel Diagnosis Request can be programmed in the AppPNS_DemoApplicationFunctions.c:
/**************************************************************************************
function: RemoveDiagnosisReq
description: Send RemoveDiagnosis Reqest
global: uint32_t s_abDiagHandle - Handle for diagnostics alarms
input: APP_DATA_T* ptAppData)
{
/* use global packet buffer */
PNS_IF_REMOVE_DIAG_REQ_T *ptReq = ( PNS_IF_REMOVE_DIAG_REQ_T*) &(ptAppData->tPacket);
memset(ptReq, 0x00, sizeof(*ptReq));
ptReq->tHead.ulDest = 0x20;
ptReq->tHead.ulCmd = PNS_IF_REMOVE_DIAG_REQ;
ptReq->tHead.ulLen = 4; //sizeof(ptReq->tData);
ptReq->tData.hDiagHandle=s_abDiagHandle;
(void)Pkt_SendPacket(ptAppData->hChannel[0], &ptAppData->tPacket, TX_TIMEOUT);ptAppData - pointer to the packet
output: none
return: void
**************************************************************************************/
void AppPNS_HandleRemoveDiagnosisReq( APP_DATA_T* ptAppData)
{
...
}
4. Values from GSDML file
...