1 CANTP的位置和作用
CanTp是PduR和CANIf模块之间的模块,如图1所示。CANTp模块的主要作用是对CAN I-PDU进行分段和重新组装,使得I-PDU的长度不大于8个字节,对CAN FD而言,CAN I-PDU不大于64个字节。
PduR模块将AUTOSAR COM和 DCM的I-PDU部署到不同的通信协议上。通过I-PDU标识符路由到不同的网络系统类型(例如CAN、LIN和FlexRay)。PduR还决定是否必须使用传输协议。最后,在没有速率转换的情况下,实现网关功能。
图1 CAN TP在BSW通信中的位置
CanIf提供了平等的机制来访问CAN总线通道,不管控制器芯片存在于内部还是外部。从CAN控制器的位置,提取ECU的硬件布局和CAN驱动器的数量。因为CanTp只处理传输协议帧(即SF、FF、CF和FC PDU),根据N-PDU ID, CANIf必须将I-PDU转发给CanTp或PduR,图1中也展示得也很清晰。
根据AUTOSAR BSW架构,CanTp提供以下服务:
-
数据在传输方向的分割;
-
按接收方向重新组装数据;
-
控制数据流;
-
检测错误分割会议。
-
传输取消
-
接受取消
AUTOSAR决定将BSW模块规范建立在现有标准的基