Autosar BSW通信模块解析:以达芬奇举例,功能、接口列出分析

以下是基于Vector的DaVinci案例中,Autosar BSW Communication模块中的接口列表:

目录

  1. COM模块
  2. PDU Router模块
  3. IPDU Mux模块
  4. CAN Tp模块
  5. CAN Interface模块
  6. CAN Driver模块
  7. Trcv Driver模块

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收发器的驱动功能。

你可能感兴趣的:(autosar模块详细学习,mcu,c语言,经验分享,git,linux)