以下是基于Vector的DaVinci案例中,Autosar BSW Communication模块中的接口列表:
目录
COM模块
COM模块是从应用层传输数据的接口和网关,其主要功能是将应用层数据传递给通信模块,具体接口包括:
Com_SendSignal()
:将数据发送给COM模块。
PDU Router模块
PDU Router模块用于将COM下发的信号数据分配到相应的协议总线上,或将不同协议的信号转换为统一信号上传给COM。相关接口包括:
PduR_CanTpCopyRxData()
:复制接收到的数据给CAN Tp模块。PduR_CanTpCopyTxData()
:复制要发送的数据给CAN Tp模块。
IPDU Mux模块
IPDU Mux模块用于解析特殊协议,并实现不同信号Layout的统一CAN ID。相关接口包括:
IpduMux_CanTpCopyRxData()
:复制接收到的数据给CAN Tp模块。IpduMux_CanTpCopyTxData()
:复制要发送的数据给CAN Tp模块。
CAN Tp模块
CAN Tp模块用于分包数据传输与错误检测,主要在诊断时使用。相关接口包括:
CanTp_Init()
:初始化CAN Tp模块。CanTp_Shutdown()
:关闭CAN Tp模块。CanTp_RxIndication()
:接收到CAN数据的回调函数。CanTp_TxConfirmation()
:CAN数据发送完成的回调函数。CanTp_Transmit()
:通过CAN总线发送数据。CanTp_CancelTransmit()
:取消发送中的数据。CanTp_CancelReceive()
:取消接收中的数据。
CAN Interface模块
CAN Interface模块与硬件无关,配置收发队列、组帧(FlexRay)和管理时间触发总线的调度表(LIN, FlexRay)。相关接口包括:
CanIf_Transmit()
:通过CAN总线发送数据。CanIf_CancelTransmit()
:取消发送中的数据。CanIf_CancelReceive()
:取消接收中的数据。
CAN Driver模块
CAN Driver模块是对主芯片上CAN模块的驱动封装,提供与硬件的通信功能。相关接口包括:
Can_SetControllerMode()
:设置CAN控制器的工作模式。- • Can_Write():向CAN总线写入数据。
• Can_MainFunction_Read():CAN读取主函数,用于处理接收到的数据。
Trcv Driver模块
Trcv Driver模块用于外置CAN收发器的驱动,与CAN Driver模块不同,它处理与收发器相关的功能。相关接口包括:
• Trcv_SetOpMode():设置收发器的操作模式。
• Trcv_GetOpMode():获取收发器的当前操作模式。
• Trcv_MainFunction():收发器的主函数,用于处理收发器相关任务。
以上是Autosar BSW Communication模块中的一些关键接口,这些接口提供了不同模块之间的通信和数据传输功能。通过这些接口,应用层能够将数据发送给COM模块,并通过PDU Router模块将数据分配到相应的协议总线上。同时,CAN Tp模块提供了分包数据传输和错误检测的功能,而CAN Interface模块和CAN Driver模块则实现了与硬件的通信和控制。最后,Trcv Driver模块用于处理外置CAN收发器的驱动功能。