UDS网络层数据

it2025-10-07  4

UDS网络层数据

网络层数据帧解析

switch(sN_PDUs.sSTD_SF.N_PCItype) { case N_PDU_SF: if((sN_Param.N_Sts.Bits.NWLSts == N_STATUS_IDLE) || (sN_Param.N_Sts.Bits.NWLSts == N_STATUS_RECV)) { if(Receive_Single_Frame_Stand_Msg(TAtype, sN_PDUs)) { sN_USData.Indication(sN_PDU.Indication); } } else { UDS_Network_Indication_Buff_Clear(); } break; case N_PDU_FF: if((sN_Param.N_Sts.Bits.NWLSts == N_STATUS_IDLE) || (sN_Param.N_Sts.Bits.NWLSts == N_STATUS_RECV)) { if(Receive_First_Frame_Stand_Msg(TAtype, sN_PDUs)) { sN_USData.FF_Indication(sN_PDU.FF_Indication); sN_Param.N_Sts.Bits.bTranFC = TRUE; sN_Param.N_Sts.Bits.bRcvdOK = FALSE; sN_Param.N_Sts.Bits.NWLSts = N_STATUS_TRAN; } } else { UDS_Network_FF_Indication_Buff_Clear(); } break; case N_PDU_CF: if((sN_Param.N_Sts.Bits.NWLSts == N_STATUS_RECV) && (sN_Param.N_Sts.Bits.bWaitCF == TRUE)) { if(Receive_Continuous_Frame_Stand_Msg(TAtype, sN_PDUs)) { if(sN_Param.N_Sts.Bits.bRcvdOK) { sN_USData.Indication(sN_PDU.Indication); sN_Param.N_Sts.Bits.bRcvdOK = FALSE; sN_Param.N_Sts.Bits.bWaitCF = FALSE; sN_Param.N_Sts.Bits.NWLSts = N_STATUS_IDLE; } } } else { UDS_Network_Indication_Buff_Clear(); } break; case N_PDU_FC: if((sN_Param.N_Sts.Bits.NWLSts == N_STATUS_RECV) || (sN_Param.N_Sts.Bits.bWaitFC == TRUE)) { if(Receive_Flow_Control_Frame_Stand_Msg(TAtype, sN_PDUs)) { sN_Param.N_Sts.Bits.bWaitFC = FALSE; if(sN_Param.N_Sts.Bits.bTranFFOK || sN_Param.N_Sts.Bits.bContTranCF) { sN_Param.N_Sts.Bits.bTranFFOK = FALSE; sN_Param.N_Sts.Bits.bTranCF = TRUE; sN_Param.N_Sts.Bits.NWLSts = N_STATUS_TRAN; } sN_Param.N_Tim.OT.Bits.bN_Bs = 0; sN_Param.N_Tim.En.Bits.bN_Bs = 0; } } break; default: break; }
最新回复(0)