J1939Tp 模块实现 SAE J1939-21 传输层。提供 BAM(Broadcast Announce Message)广播多帧、CMDT(Connection Mode Data Transfer)点对点多帧、TP.CM(连接管理)/ TP.DT(数据传输)报文处理。
J1939Tp / BAM / CMDT / TP.CM / TP.DT / CF / SF / FF / PGN / DA / Connection / Reliable TxConfirmation / MetaData
[1] AUTOSAR SWS PduR
[2] AUTOSAR SWS CanTp
[3] AUTOSAR SWS CanIf
[4] SAE J1939-21 / SAE J1939-31
J1939Tp 应:
J1939Tp 依赖:PduR(PDU 路由)/ CanTp(CAN 传输层)/ CanIf(CAN 接口)/ Dem(错误上报)。
BAM 用于点对多点多帧传输。流程:
CMDT 用于点对点多帧传输。流程:
J1939Tp 维护连接状态:
void J1939Tp_Init(const J1939Tp_ConfigType* ConfigPtr):初始化。
void J1939Tp_DeInit(void):去初始化。
Std_ReturnType J1939Tp_Transmit(PduIdType TxPduId, const PduInfoType* PduInfoPtr):请求传输。
Std_ReturnType J1939Tp_CancelTransmit(PduIdType TxPduId):取消传输。
Std_ReturnType J1939Tp_CancelReceive(PduIdType RxPduId):取消接收。
Std_ReturnType J1939Tp_GetState(NetworkHandleType Channel, J1939Tp_StateType* StatePtr, uint16* PendingCountPtr):获取连接状态。
void J1939Tp_TxConfirmation(PduIdType TxPduId, Std_ReturnType Result):发送确认。
void J1939Tp_RxIndication(PduIdType RxPduId, const PduInfoType* PduInfoPtr, boolean CopyDataDone):接收指示。
void J1939Tp_TriggerTransmit(PduIdType TxPduId, PduInfoType* PduInfoPtr):触发传输。
void J1939Tp_MainFunction(void):周期性主函数。
J1939Tp 配置类:
J1939TP_E_UNINIT:模块未初始化。
J1939TP_E_PARAM_POINTER:参数指针为空。
J1939TP_E_PARAM:参数无效。
J1939TP_E_TIMEOUT:连接超时。
J1939TP_E_SEQUENCE:序列号错误。
校对轮次:L1 自动校对(2026-06-13)