AUTOSAR_SWS_DiagnosticOverIP 中文翻译

文档编号:808 | 状态:Final | 发布于:AUTOSAR CP Release 4.4.0
所属标准:AUTOSAR Classic Platform | 文档责任方:AUTOSAR

本翻译覆盖原文档 1-100 页正文。原文为软件规范(SWS),定义 Diagnostic over IP(DoIP)模块的 API、配置、错误处理——符合 ISO 13400。R4.4 增强 IPv6 支持。


1 引言与范围

DoIP(Diagnostic over Internet Protocol)实现基于 IP 的车辆诊断,符合 ISO 13400。位于 PduR/SoAd 之上,DCM 之下。支持车辆识别、路由激活、诊断数据传输等。R4.4 增强 IPv6 支持。

2 缩略语

DoIP / ISO 13400 / UDS / TCP / UDP / IPv4 / IPv6 / VIN / GID / Routing Activation / EID / DID / Tester / Entity / Activation Line / SoAd / DCM

3 相关文档

[1] AUTOSAR SWS SocketAdaptor
[2] AUTOSAR SWS TcpIp
[2] AUTOSAR SWS DCM
[4] ISO 13400 (DoIP)
[5] ISO 14229 (UDS)

4 约束与假设

DoIP 应:

5 依赖其他模块

DoIP 依赖:SoAd(Socket Adapter)/ TcpIp(TCP/UDP)/ DCM(诊断通信管理器)/ Dem(错误上报)。

6 功能规格

6.1 架构

DoIP 位于 SoAd 之上,DCM 之下。处理 DoIP 协议层(车辆识别、路由激活、消息分发),将 UDS 消息路由到 DCM。

6.2 协议栈

DoIP 协议栈:

7 API 服务

7.1 初始化 / 关闭

void DoIP_Init(const DoIP_ConfigType* ConfigPtr):初始化。
void DoIP_DeInit(void):去初始化。

7.2 传输

Std_ReturnType DoIP_SoAdTpTransmit(PduIdType TxPduId, const PduInfoType* PduInfoPtr):TP 传输。
Std_ReturnType DoIP_IfTransmit(PduIdType TxPduId, const PduInfoType* PduInfoPtr):IF 传输。

7.3 TP API(来自 SoAd)

BufReq_ReturnType DoIP_SoAdTpStartOfReception(PduIdType RxPduId, PduLengthType SduLength, PduLengthType* RxBufferSizePtr):TP 接收开始。
BufReq_ReturnType DoIP_SoAdTpCopyRxData(PduIdType RxPduId, const PduInfoType* PduInfoPtr, PduLengthType* RxBufferSizePtr):TP 接收数据复制。
BufReq_ReturnType DoIP_SoAdTpCopyTxData(PduIdType TxPduId, PduInfoType* PduInfoPtr, RetryInfoType* RetryInfoPtr, PduLengthType* TxDataCntPtr):TP 发送数据复制。

7.4 回调(来自 SoAd)

void DoIP_SoAdTpRxIndication(PduIdType RxPduId, Std_ReturnType Result):TP 接收指示。
void DoIP_SoAdTpTxConfirmation(PduIdType TxPduId, Std_ReturnType Result):TP 发送确认。
void DoIP_SoAdIfRxIndication(PduIdType RxPduId, const PduInfoType* PduInfoPtr):IF 接收指示。
void DoIP_SoAdIfTxConfirmation(PduIdType TxPduId, Std_ReturnType Result):IF 发送确认。

7.5 激活线

void DoIP_ActivationLineSwitchActive(void):激活线切换到 Active。
void DoIP_ActivationLineSwitchInactive(void):激活线切换到 Inactive。

7.6 Tester 状态

Std_ReturnType DoIP_GetTesterAddress(NetworkHandleType NetworkHandle, uint16* TesterAddressPtr):获取 Tester 地址。
Std_ReturnType DoIP_SetTesterAddress(NetworkHandleType NetworkHandle, uint16 TesterAddress):设置 Tester 地址。

8 配置

DoIP 配置类:

9 错误处理

9.1 开发错误

DOIP_E_UNINIT:模块未初始化。
DOIP_E_PARAM_POINTER:参数指针为空。
DOIP_E_PARAM:参数无效。

9.2 运行时错误

DOIP_E_BUSY:模块忙。
DOIP_E_NO_BUFFER:无可用缓冲区。


校对记录

校对轮次:L1 自动校对(2026-06-13)