CanIf

缩写词注解

缩写词

英文全称

中文解释

DLC

Data Length Code

L-PDU中表示报文长度的部分

HRH

CAN hardware receive handle

CAN驱动层接收硬件单元的抽象

HTH

CAN hardware transmit handle

CAN驱动层发送硬件单元的抽象

HOH

CAN hardware object handle

CAN硬件抽象单元(HRH+HTH)

I-PDU

Interaction Layer Protocol Data Unit

交互层协议数据单元

L-PDU

Data Link Layer Protocol Data Unit

数据链路层协议数据单元

DET

Default Error Tracer

开发错误检测

CAN FD

Controller Area Network Flexible Data-Rate

相比传 统CAN,其波特率及负载都更高

简介

CanIf模块将底层不同的Can驱动,CanTrcv驱动抽象化,方便上层模块统一通过CanIf模块进行访问。在AUTOSAR架构中,其上层模块主要为PduR,CanTp,J1939Tp,CanNm,CanSm等。CanIf主要功能包含L-PDU的接收指示,L-PDU的发送及发送确认等通信功能,以及Can Controller/Trcv的模式控制,波特率切换,睡眠唤醒等其它功能栈功能。

image1图 CanIf模块层次图

CanIf模块处于AUTOSAR架构中的通信硬件抽象层,其下层模块为CanDrv/CanTrcv驱动模块,上层模块可能为PduR,CanTp,CanNm,CanSM,EcuM,Xcp,J1939Tp,J1939Nm,CDD。

CanIf实现了与上下层模块间基于PDU的发送/接收,实现了对硬件单元模式的控制以及模式切换通知,实现了对睡眠/唤醒机制的支持。

参考资料

[1] AUTOSAR_SWS_CANInterface.pdf, R19-11和4.2.2

[2] AUTOSAR_SWS_CANDriver.pdf,R19-11和4.2.2

[3] AUTOSAR_SWS_CANTransceiverDriver.pdf,R19-11和4.2.2

[4] AUTOSAR_SWS_PDURouter.pdf,R19-11和4.2.2

[5] AUTOSAR_SWS_COM.pdf,R19-11和4.2.2

[6] AUTOSAR_SRS_COM.pdf,R19-11和4.2.2

功能描述

模式控制功能

模式控制功能介绍

1.CanIf模块的状态机控制,包括未初始化和已初始化状态,除了CanIf_Init 和CanIf_GetVersionInfo之外,都需要在已初始化状态下才能正常调用。

2.Controller模式控制,分为STOPPED,STARTED,SLEEP三种,只有在START状态下Controller才能正常通信。

3.Trcv模式控制,分为NORMAL,STANDBY,SLEEP三种,只有在NORMAL状态下Trcv才能正常通信。

4.Controller的Pdu模式控制,分为OFFLINE,TX_OFFLINE,TX_OFFLINE_ACTIVE,ONLINE四种,ONLINE模式下允许正常收发通信,TX_OFFLINE模式下只能接收不能发送,TX_OFFLINE_ACTIVE模式下允许接收和虚拟发送,OFFLINE模式下不允许收发通信。

模式控制功能实现

1.上电之后CanIf处于CANIF_UNINIT状态,正确调用CanIf_Init(参数为CanIf模块PB配置参数指针)之后状态切换到CANIF_INITED。

2.CanIf_Init初始化之后,Controller模式为STOPPED,调用接口CanIf_SetControllerMode切换Controller模式,调用CanIf_GetControllerMode获取当前Controller模式。当Controller发生BusOff事件时,Controller模式切换到STOPPED。

3.调用CanIf_SetTrcvMode切换Trcv模式,调用CanIf_GetTrcvMode获取Trcv当前模式。

4.CanIf_Init初始化之后,Pdu模式为OFFLINE,调用CanIf_SetPduMode切换Pdu模式,调用CanIf_GetPduMode获取当前Controller的Pdu模式。其中TX_OFFLINE_ACTIVE模式需要在配置项CanIfTxOfflineActiveSupport使能时才支持。当Controller发生BusOff事件时,Pdu模式切换到TX_OFFLINE。

TxPdu发送功能

TxPdu发送功能介绍

当模块初始化成功,Controller模式及其Pdu模式,Trcv模式均处于允许发送状态时,可通过CanIf两种发送机制来发送L-Pdu:

方式一:上层模块调用CanIf_Transmit请求TxPdu的发送,发送时机由上层决定;

方式二:下层驱动调用CanIf_TriggerTransmit请求TxPdu的发送数据,发送时机由下层决定;

TxPdu发送成功后,下层驱动调用CanIf_TxConfirmation进行发送确认。

TxPdu发送功能实现

当上层模块调用CanIf_Transmit请求TxPdu发送,并传入L-PDU的SDU及可能存在的MetaData数据时,CanIf根据Static/Dynamic CanId策略计算出该TxPdu当前对应的CanId,调用Can_Write由配置的HTH进行发送。

CAN总线通常不支持TriggerTransmit进行发送,该机制通常用于LIN总线。

当驱动层TxPdu发送成功后,调用CanIf_TxConfirmation,CanIf调用<User_ TxConfirmation>通知上层模块。

对于TxPdu发送,可以配置TxBuffer机制(CanIfBufferSize>0)来降低因发送邮箱BUSY而导致丢帧的概率。需注意的是配置项CanIfBufferSize决定该HTH最多缓存的不同TxPdu帧数,对于每个TxPdu最多只能缓存一帧。

RxPdu接收功能

RxPdu接收功能介绍

当模块初始化成功,Controller模式及其Pdu模式,Trcv模式均处于允许接收状态时,将从驱动层接收到的报文,传递到上层模块。

RxPdu接收功能实现

当驱动层邮箱收到报文后,调用CanIf_RxIndication将接收数据传递到CanIf模块,CanIf通过接收的HRH以及CanId,查询匹配到接收RxPdu,调用关联上层模块的<User_ RxIndication>将接收RxPdu数据传递给上层模块。

RxPdu上层模块由配置项CanIfRxPduUserRxIndicationUL决定,<User_ RxIndication>由配置项CanIfRxPduUserRxIndicationName决定。

睡眠唤醒功能

睡眠唤醒功能介绍

上层模块可以通过CanIf来将Controller/Trcv设置为SLEEP模式,支持Controller/Trcv唤醒源检测,Controller/Trcv唤醒确认,Trcv唤醒原因获取,Trcv唤醒标志位检测/清除,Trcv唤醒模式设置。

睡眠唤醒功能实现

CanIf提供CanIf_SetControllerMode/CanIf_SetTrcvMode来设置Controller/Trcv的模式(包含SLEEP模式),当发生唤醒事件后可通过调用CanIf_CheckWakeup来检测是否由Controller/Trcv导致的唤醒事件,可通过CanIf_CheckValidation来检测唤醒成功确认(唤醒确认条件为接收到任意Pdu/NM Pdu,参见配置项CanIfPublicWakeupCheckValidByNM是否勾选)。

源文件描述

表 CanIf组件文件描述

文件

说明

CanIf_Cfg.h

定义CanIf模块PC配置的宏定义。

CanIf_Cfg.c

定义CanIf模块PC配置的结构体参数。

CanIf_PBcfg.h

定义CanIf模块PB配置的宏定义。

CanIf_PBcfg.c

定义CanIf模块PB配置的结构体参数。

C anIf_Internal.h

声明CanIf模块内 部功能所必须的local函数,local宏定义,local变量。

C anIf_Internal.c

实现CanIf模块内 部功能所必须的local函数,local宏定义,local变量。

CanIf.h

声明CanIf模块的全部外 部接口(除了回调函数),以及配置文件中的全局变量。

CanIf.c

作为CanIf模块的核心文 件,实现CanIf模块全部对外接口,以及实现CanIf模块功 能所必须的local函数,local宏定义,local变量定义。

CanIf_Types.h

定义CanIf模 块外部/内部类型,包括AUTOSAR标准定义的类型,以及P B/PC配置参数结构体类型,以及内部运行时结构体类型。

CanIf_CanTrcv.h

声明CanIf 模块提供给 CanTrcv 模块的回调函数。

CanIf_Can.h

声明 CanIf 模块提供给 Can 模块的回调函数。

CanIf_Cbk.h

包含CanIf模块全部回调函数的声明。

CanIf_MemMap.h

声明CanIf模块内存布局。

image2

图 CanIf组件文件交互关系图

API接口

类型定义

CanIf_ConfigType类型定义

名称

CanIf_ConfigType

类型

struct

范围

描述

CanIf模块PB配置结构体类型

CanIf_ControllerModeType类型定义

名称

CanIf_ControllerModeType

类型

enum

范围

CANIF_CS_UNINIT,CANIF_CS_STARTED ,CANIF_CS_STOPPED,CANIF_CS_SLEEP

描述

CanIf模块中Can控制器模式类型

CanIf_PduModeType类型定义

名称

CanIf_PduModeType

类型

enum

范围

CANIF_OFFLINE, CANIF_TX_OFFLINE,CANIF_TX_OFFLINE_ACTIVE,CANIF_ONLINE

描述

CanIf模块中Pdu通信模式类型

CanIf_NotifStatusType类型定义

名称

CanIf_NotifStatusType

类型

enum

范围

CANIF_NO_NOTIFICATION ,CANIF_TX_RX_NOTIFICATION

描述

CanIf模块中Controller的PDU收发通知类型

输入函数描述

输入模块

API

CanDrv

Can_SetControllerMode

Can_Write

Can_CheckWakeup

Can_SetBaudrate

Can_SetIcomConfiguration

SchM

SchM_Enter_CanIf_<ExclusiveArea>

SchM_Exit_CanIf_<ExclusiveArea>

Det

Det_ReportRuntimeError

Det_ReportError

CanTrcv

CanTrcv_SetOpMode

CanTrcv_GetOpMode

CanTrcv_GetBusWuReason

CanTrcv_SetWakeupMode

CanTrcv_ClearTrcvWufFlag

CanTrcv_CheckWakeFlag

CanTrcv_CheckWakeup

<Up_User>

User_TriggerTransmit

User_TxConfirmation

User_RxIndication

User_ValidateWakeupEvent

User_ControllerBusOff

User_ConfirmPnAvailability

User_ClearTrcvWufFlagIndication

User_CheckTrcvWakeFlagIndication

User_ControllerModeIndication

User_TrcvModeIndication

静态接口函数定义

CanIf_Init函数定义

函数名称:

CanIf_Init

函数原型:

void CanIf_Init(const CanIf_ConfigType* ConfigPtr)

服务编号:

0x01

同 步/异步:

同步

是 否可重入:

输入参数:

ConfigPtr

值 域:

输入 输出参数:

输出参数:

返回值:

功能概述:

CanIf模块初始化

CanIf_DeInit函数定义

函数名称:

CanIf_DeInit

函数原型:

void CanIf_DeInit(void)

服务编号:

0x02

同步/异步:

同步

是 否可重入:

输入参数:

输入 输出参数:

输出参数:

返回值:

功能概述:

CanIf模块反初始化

CanIf_SetControllerMode函数定义

函数名称:

CanIf_ SetControllerMode

函数原型:

Std_ReturnType CanIf_S etControllerMode(

uint8 ControllerId,

Can_Co ntrollerStateType ControllerMode)

服务编号:

0x03

同步/异步:

异步

是 否可重入:

不同的Controll er可重入,相同的C ontroller不可重入

输入参数:

ControllerId

值域:

ControllerMode

值域:

输入 输出参数:

输出参数:

返回值:

Std_ReturnType

功能概述:

Contr oller模式切换请求

CanIf_GetControllerMode函数定义

函数名称:

CanIf_ GetControllerMode

函数原型:

Std_ReturnType CanIf_G etControllerMode(

uint8 ControllerId,

Can_Co ntrollerStateType * C ontrollerModePtr)

服务编号:

0x04

同步/异步:

同步

是 否可重入:

输入参数:

ControllerId

值域:

输入 输出参数:

输出参数:

ControllerModePtr

值域:

返回值:

Std_ReturnType

功能概述:

获取C ontroller当前模式

CanIf_Transmit函数定义

函数名称:

CanIf_Transmit

函数原型:

Std_ReturnType CanIf_Transmit(

PduIdType CanIfTxSduId,

const PduInfoType* PduInfoPtr)

服务编号:

0x05

同步/异步:

同步

是 否可重入:

不同 的TxPdu可重入,相 同的TxPdu不可重入

输入参数:

CanIfTxSduId

值域:

PduInfoPtr

值域:

输入 输出参数:

输出参数:

返回值:

Std_ReturnType

功能概述:

TxPdu发送请求

CanIf_ReadRxPduData函数定义

函数名称:

Ca nIf_ReadRxPduData

函数原型:

Std_ReturnType Can If_ReadRxPduData(

PduIdType CanIfRxSduId,

PduInfoType* CanIfRxInfoPtr)

服务编号:

0x06

同步/异步:

同步

是 否可重入:

输入参数:

CanIfRxSduId

值域:

输入 输出参数:

输出参数:

CanIfRxInfoPtr

值域:

返回值:

Std_ReturnType

功能概述:

获取 RxPdu最新接收数据

CanIf_ReadTxNotifStatus函数定义

函数名称:

CanIf_ ReadTxNotifStatus

函数原型:

CanI f_NotifStatusType CanIf_R eadTxNotifStatus(

PduIdType CanIfTxSduId)

服务编号:

0x07

同步/异步:

同步

是 否可重入:

输入参数:

CanIfTxSduId

值域:

输入 输出参数:

输出参数:

返回值:

CanI f_NotifStatusType

功能概述:

获取Tx Pdu的发送确认状态

CanIf_ReadRxNotifStatus函数定义

函数名称:

CanIf_ ReadRxNotifStatus

函数原型:

CanI f_NotifStatusType CanIf_R eadRxNotifStatus(

PduIdType CanIfRxSduId)

服务编号:

0x08

同步/异步:

同步

是 否可重入:

输入参数:

CanIfRxSduId

值域:

输入 输出参数:

输出参数:

返回值:

CanI f_NotifStatusType

功能概述:

获取Rx Pdu的接收指示状态

CanIf_SetPduMode函数定义

函数名称:

CanIf_SetPduMode

函数原型:

Std_ReturnType CanIf_SetPduMode(

uint8 ControllerId,

CanIf_PduModeType PduModeRequest)

服务编号:

0x09

同步/异步:

同步

是 否可重入:

输入参数:

ControllerId

值域:

PduModeRequest

值域:

输入 输出参数:

输出参数:

返回值:

Std_ReturnType

功能概述:

Controller 的PduMode切换请求

CanIf_GetPduMode函数定义

函数名称:

CanIf_GetPduMode

函数原型:

Std_ReturnType CanIf_GetPduMode(

uint8 ControllerId,

Ca nIf_PduModeType* PduModePtr)

服务编号:

0x0A

同步/异步:

同步

是 否可重入:

不同Contro ller可重入,相同C ontroller不可重入

输入参数:

ControllerId

值域:

输入 输出参数:

输出参数:

PduModePtr

值域:

返回值:

Std_ReturnType

功能概述:

获取Contro ller的PduMode状态

CanIf_GetVersionInfo函数定义

函数名称:

Can If_GetVersionInfo

函数原型:

void Can If_GetVersionInfo (

Std_ VersionInfoType* VersionInfo)

服务编号:

0x0B

同步/异步:

同步

是 否可重入:

输入参数:

输入 输出参数:

输出参数:

VersionInfo

值域:

返回值:

功能概述:

获取 CanIf模块软件版本

CanIf_SetDynamicTxId函数定义

函数名称:

Can If_SetDynamicTxId

函数原型:

void Can If_SetDynamicTxId (

PduIdType CanIfTxSduId,

Can_IdType CanId)

服务编号:

0x0C

同步/异步:

同步

是 否可重入:

输入参数:

CanIfTxSduId

值域:

CanId

值域:

输入 输出参数:

输出参数:

返回值:

功能概述:

设置 动态TxPdu的CanId

CanIf_SetTrcvMode函数定义

函数名称:

CanIf_SetTrcvMode

函数原型:

Std_ReturnType CanIf_SetTrcvMode (

uint8 TransceiverId,

Can Trcv_TrcvModeType TransceiverMode)

服务编号:

0x0D

同步/异步:

异步

是 否可重入:

输入参数:

TransceiverId

值域:

TransceiverMode

值域:

输入 输出参数:

输出参数:

返回值:

Std_ReturnType

功能概述:

请求设置Trcv模式

CanIf_GetTrcvMode函数定义

函数名称:

CanIf_GetTrcvMode

函数原型:

Std_ReturnType C anIf_GetTrcvMode(

CanTr cv_TrcvModeType* Tr ansceiverModePtr,

uint8 TransceiverId)

服务编号:

0x0E

同步/异步:

同步

是 否可重入:

输入参数:

TransceiverId

值域:

输入 输出参数:

输出参数:

T ransceiverModePtr

值域:

返回值:

Std_ReturnType

功能概述:

获取Trcv模式

CanIf_GetTrcvWakeupReason函数定义

函数名称:

CanIf_Ge tTrcvWakeupReason

函数原型:

Std_ReturnType CanIf_Get TrcvWakeupReason(

uint8 TransceiverId,

CanTrcv_TrcvW akeupReasonType* TrcvWuReasonPtr)

服务编号:

0x0F

同步/异步:

同步

是 否可重入:

输入参数:

TransceiverId

值域:

输入 输出参数:

输出参数:

TrcvWuReasonPtr

值域:

返回值:

Std_ReturnType

功能概述:

获 取Trcv的唤醒原因

CanIf_SetTrcvWakeupMode函数定义

函数名称:

CanIf_ SetTrcvWakeupMode

函数原型:

Std_ReturnType CanIf_S etTrcvWakeupMode(

uint8 TransceiverId,

CanTrcv_T rcvWakeupModeType TrcvWakeupMode)

服务编号:

0x10

同步/异步:

同步

是 否可重入:

输入参数:

TransceiverId

值域:

TrcvWakeupMode

值域:

输入 输出参数:

输出参数:

返回值:

Std_ReturnType

功能概述:

设置Trcv唤醒模式

CanIf_CheckWakeup函数定义

函数名称:

CanIf_CheckWakeup

函数原型:

Std_ReturnType C anIf_CheckWakeup(

EcuM _WakeupSourceType WakeupSource)

服务编号:

0x11

同步/异步:

异步

是 否可重入:

输入参数:

WakeupSource

值域:

输入 输出参数:

输出参数:

返回值:

Std_ReturnType

功能概述:

唤 醒源检测(底层Can 驱动/CanTrcv驱动)

CanIf_CheckValidation函数定义

函数名称:

CanI f_CheckValidation

函数原型:

Std_ReturnType CanIf _CheckValidation(

EcuM _WakeupSourceType WakeupSource)

服务编号:

0x12

同步/异步:

同步

是 否可重入:

输入参数:

WakeupSource

值域:

输入 输出参数:

输出参数:

返回值:

Std_ReturnType

功能概述:

唤醒事件确认

CanIf_GetTxConfirmationState函数定义

函数名称:

CanIf_GetTx ConfirmationState

函数原型:

CanI f_NotifStatusType CanIf_GetTxC onfirmationState(

uint8 ControllerId)

服务编号:

0x19

同步/异步:

同步

是 否可重入:

不同Contro ller可重入,不同C ontroller不可重入

输入参数:

ControllerId

值域:

输入 输出参数:

输出参数:

返回值:

CanI f_NotifStatusType

功能概述:

获取C ontroller是否已发 送报文成功(TxCon firmation已发生)

CanIf_ClearTrcvWufFlag函数定义

函数名称:

CanIf _ClearTrcvWufFlag

函数原型:

Std_ReturnType CanIf_ ClearTrcvWufFlag(

uint8 TransceiverId)

服务编号:

0x1E

同步/异步:

异步

是 否可重入:

不同Trcv可重入, 相同Trcv不可重入

输入参数:

TransceiverId

值域:

输入 输出参数:

输出参数:

返回值:

Std_ReturnType

功能概述:

请求清 除Trcv唤醒标志位

CanIf_CheckTrcvWakeFlag函数定义

函数名称:

CanIf_ CheckTrcvWakeFlag

函数原型:

Std_ReturnType CanIf_C heckTrcvWakeFlag(

uint8 TransceiverId)

服务编号:

0x1F

同步/异步:

异步

是 否可重入:

不同Trcv可重入, 相同Trcv不可重入

输入参数:

TransceiverId

值域:

输入 输出参数:

输出参数:

返回值:

Std_ReturnType

功能概述:

检 测Trcv唤醒标志位

CanIf_SetBaudrate函数定义

函数名称:

CanIf_SetBaudrate

函数原型:

Std_ReturnType C anIf_SetBaudrate(

uint8 ControllerId,

uint16 BaudRateConfigID)

服务编号:

0x27

同步/异步:

同步

是 否可重入:

不同的Controll er可重入,相同的C ontroller不可重入

输入参数:

ControllerId

值域:

BaudRateConfigID

值域:

输入 输出参数:

输出参数:

返回值:

Std_ReturnType

功能概述:

切换 Controller波特率

CanIf_SetIcomConfiguration函数定义

函数名称:

CanIf_Set IcomConfiguration

函数原型:

Std_ReturnType CanIf_SetI comConfiguration(

uint8 ControllerId,

IcomConfigIdType ConfigurationId)

服务编号:

0x25

同步/异步:

异步

是 否可重入:

不同的Controll er可重入,相同的C ontroller不可重入

输入参数:

ControllerId

值域:

ConfigurationId

值域:

输入 输出参数:

输出参数:

返回值:

Std_ReturnType

功能概述:

切换Con troller的Icom配置

CanIf_TriggerTransmit函数定义

函数名称:

CanI f_TriggerTransmit

函数原型:

Std_ReturnType CanIf _TriggerTransmit(

PduIdType TxPduId,

PduInfoType* PduInfoPtr)

服务编号:

0x41

同步/异步:

同步

是 否可重入:

不同 的TxPdu可重入,相 同的TxPdu不可重入

输入参数:

TxPduId

值域:

输入 输出参数:

PduInfoPtr

值域:

输出参数:

返回值:

Std_ReturnType

功能概述:

请求获 取TxPdu的报文数据

CanIf_TxConfirmation函数定义

函数名称:

Can If_TxConfirmation

函数原型:

void CanI f_TxConfirmation(

PduIdType CanTxPduId)

服务编号:

0x13

同步/异步:

同步

是 否可重入:

输入参数:

CanTxPduId

值域:

输入 输出参数:

输出参数:

返回值:

功能概述:

TxPdu发送确认

CanIf_RxIndication函数定义

函数名称:

C anIf_RxIndication

函数原型:

void Ca nIf_RxIndication(

const Can_HwType* Mailbox,

const PduInfoType* PduInfoPtr)

服务编号:

0x14

同步/异步:

同步

是 否可重入:

输入参数:

Mailbox

值域:

PduInfoPtr

值域:

输入 输出参数:

输出参数:

返回值:

功能概述:

RxPdu接收指示

CanIf_ControllerBusOff函数定义

函数名称:

CanIf _ControllerBusOff

函数原型:

void CanIf_ ControllerBusOff(

uint8 ControllerId)

服务编号:

0x16

同步/异步:

同步

是 否可重入:

输入参数:

ControllerId

值域:

输入 输出参数:

输出参数:

返回值:

功能概述:

Controller发 生BusOff事件通知

CanIf_ConfirmPnAvailability函数定义

函数名称:

CanIf_Conf irmPnAvailability

函数原型:

void CanIf_Confi rmPnAvailability(

uint8 TransceiverId)

服务编号:

0x1A

同步/异步:

同步

是 否可重入:

输入参数:

TransceiverId

值域:

输入 输出参数:

输出参数:

返回值:

功能概述:

Trcv运行 在PN通信模式通知

CanIf_ClearTrcvWufFlagIndication函数定义

函数名称:

CanIf_ClearTrcv WufFlagIndication

函数原型:

void CanIf_ClearTrcvW ufFlagIndication(

uint8 TransceiverId)

服务编号:

0x20

同步/异步:

同步

是 否可重入:

输入参数:

TransceiverId

值域:

输入 输出参数:

输出参数:

返回值:

功能概述:

Trcv唤醒标 志位清除成功通知

CanIf_CheckTrcvWakeFlagIndication函数定义

函数名称:

CanIf_CheckTrcvW akeFlagIndication

函数原型:

void CanIf_CheckTrcvWa keFlagIndication(

uint8 TransceiverId)

服务编号:

0x21

同步/异步:

同步

是 否可重入:

输入参数:

TransceiverId

值域:

输入 输出参数:

输出参数:

返回值:

功能概述:

Trcv唤醒标 志位检测完成通知

CanIf_ControllerModeIndication函数定义

函数名称:

CanIf_Control lerModeIndication

函数原型:

void CanIf_Controll erModeIndication(

uint8 ControllerId,

Can_Co ntrollerStateType ControllerMode)

服务编号:

0x17

同步/异步:

同步

是 否可重入:

输入参数:

ControllerId

值域:

ControllerMode

值域:

输入 输出参数:

输出参数:

返回值:

功能概述:

Contr oller模式变化通知

CanIf_TrcvModeIndication函数定义

函数名称:

CanIf_T rcvModeIndication

函数原型:

void CanIf_Tr cvModeIndication(

uint8 TransceiverId,

Can Trcv_TrcvModeType TransceiverMode)

服务编号:

0x22

同步/异步:

同步

是 否可重入:

输入参数:

TransceiverId

值域:

TransceiverMode

值域:

输入 输出参数:

输出参数:

返回值:

功能概述:

Trcv模式改变通知

CanIf_CurrentIcomConfiguration函数定义

函数名称:

CanIf_Current IcomConfiguration

函数原型:

void CanIf_CurrentI comConfiguration(

uint8 ControllerId,

IcomConfigIdType ConfigurationId,

Ico mSwitch_ErrorType Error)

服务编号:

0x26

同步/异步:

同步

是 否可重入:

不同的Controll er可重入,相同的C ontroller不可重入

输入参数:

ControllerId

值域:

ConfigurationId

值域:

Error

值域:

输入 输出参数:

输出参数:

返回值:

功能概述:

Controller的 Icom配置改变通知

可配置函数定义

无。

配置

CanIfPublicCfg

image3

图 CanIfPublicCfg

表 CanIfPublicCfg

UI名称

描述

CanIfPublicCtrlDrvVersion

取值范围

AUTOSAR422/ AUTOSAR431/ AUTOSAR440

参数描述

表示Can驱动的Autosar版本

依赖关系

依赖于Can驱动的Autosar版本

CanIfBusMirroringSupport

取值范围

true/false

默认取值

FALSE

参数描述

是否使能总线镜像功能

依赖关系

当前不支持

CanIfDevErrorDetect

取值范围

true/false

默认取值

FALSE

是否使能开发错误检测和通知

依赖于Det

CanIfMetaDataSupport

true/false

默认取值

FALSE

是否使能MetaData机制

当CanIfMetaDataSupport使能,CanIf关联的ECUC中Pdu才能配置MetaDataTypeRef

CanIfPublicCancelTransmitSupport

取值范围

true/false

参数描述

是否使能TxPdu发送取消机制(该机制已不支持)

依赖关系

CanIfPublicCddHeaderFile

取值范围

string

参数描述

模块与CDD交互时,需要包含的头文件,填写规则必须为“xxx.h”

依赖关系

根据CDD具体实现的头文件名

CanIfPublicHandleTypeEnum

取值范围

UINT16/UINT8

参数描述

决定Can_HwHandleType的定义

依赖关系

当CAN hardware units超过255时,该项需配置为UNIT16

CanIfPublicCanIdTypeEnum

取值范围

UINT16/UINT32

默认取值

UINT32

参数描述

根据Can_IdType的定义设定

依赖关系

当驱动Can_IdType定义为uint16时,该项需配置为UNIT16;当驱动Can_IdType定义为uint32时,该项需配置为UNIT32

CanIfPublicIcomSupport

取值范围

true/false

默认取值

FALSE

参数描述

是否使能Pretended Network

依赖关系

该功能依赖于CAN驱动对虚拟网络功能的支持

CanIfPublicMultipleDrvSupport

取值范围

true/false

默认取值

TRUE

参数描述

是否支持多CAN驱动

依赖关系

限制CanIfCtrlDrvCfg的配置数目

CanIfPublicPnSupport

取值范围

true/false

默认取值

FALSE

参数描述

是否使能Partial Network,依赖于Trcv驱动的配置

依赖关系

限制TxPdu的CanIfTxPduPnFilterPdu配置

CanIfPublicReadRxPduDataApi

取值范围

true/false

默认取值

FALSE

参数描述

是否使能CanIf_ReadRxPduData

依赖关系

CanIfPublicReadRxPduNotifyStatusApi

取值范围

true/false

默认取值

FALSE

参数描述

是否使能CanIf_ReadRxNotifStatus

依赖关系

CanIfPublicReadTxPduNotifyStatusApi

取值范围

true/false

默认取值

FALSE

参数描述

是否使能CanIf_ReadTxNotifStatus

依赖关系

CanIfPublicSetDynamicTxIdApi

取值范围

true/false

默认取值

FALSE

参数描述

是否使能CanIf_SetDynamicTxId

依赖关系

CanIfPublicTxBuffering

取值范围

true/false

默认取值

FALSE

参数描述

是否使能CanIf发送Buffer机制

依赖关系

CanIfPublicTxConfirmPollingSupport

取值范围

true/false

默认取值

TRUE

参数描述

是否使能CanIf_GetTxConfirmationState

依赖关系

CanIfPublicWakeupCheckValidByNM

取值范围

true/false

默认取值

FALSE

参数描述

是否使能通过NM RxPdu来确认唤醒

依赖关系

依赖于唤醒确认的使能

CanIfPublicWakeupCheckValidSupport

CanIfPublicWakeupCheckValidSupport

取值范围

true/false

默认取值

FALSE

参数描述

是否使能唤醒确认

依赖关系

依赖于CanIfWakeupSupport的使能

CanIfSetBaudrateApi

取值范围

true/false

默认取值

FALSE

参数描述

是否使能CanIf_SetBaudrate

依赖关系

依赖于CAN驱动的支持

CanIfTriggerTransmitSupport

取值范围

true/false

默认取值

FALSE

参数描述

是否使能CanIf_TriggerTransmit

依赖关系

CanIfTxOfflineActiveSupport

取值范围

true/false

默认取值

FALSE

参数描述

是否使能TxPdu的模拟发送模式

依赖关系

CanIfVersionInfoApi

取值范围

true/false

默认取值

FALSE

参数描述

是否使能CanIf模拟版本Api

依赖关系

CanIfWakeupSupport

取值范围

true/false

默认取值

TRUE

参数描述

是否使能唤醒机制

依赖关系

依赖于CanDrv和CanTrcv的支持

CanIfPrivateCfg

image4

图 CanIfPrivateCfg

表 CanIfPrivateCfg

UI名称

描述

C anIfFixedBuffer

取值范围

true(固定配置)

默认取值

true

参数描述

对于数据长度 <8字节的报文,分 配固定8字节Buffer

依赖关系

CanIfPrivate DataLengthCheck

取值范围

true/false

默认取值

true

参数描述

选 择是否支持DLC检测

依赖关系

CanIfPrivateSof twareFilterType

取值范围

LINEAR/BINARY

默认取值

LINEAR

参数描述

HRH接收到的报文 →RxPdu的匹配算法

在配置为BIN ARY时,在下面情况 下按照二分法查找 RxPdu,其它情况按 照线性查找RxPdu。

①该HRH关联的 RxPdu均未配置CanI fRxPduCanIdMask;

②该HRH关联的RxPd u均配置了相同的Ca nIfRxPduCanIdMask 且 这些RxP du全部未配置CanIf RxPduCanIdRange;

依赖关系

Ca nIfSupportTTCAN

取值范围

false(固定配置)

默认取值

false

参数描述

定义是否支持TTCAN

依赖关系

CanIfDispatchCfg

image5

图 CanIfDispatchCfg

表 CanIfDispatchCfg

UI名称

描述

CanIfDispatchUserCheckTrcvWakeFlagIndicationName

取值范围

string

默认取值

参数描述

<User_CheckTrcvWakeFlagIndication>的接口名

依赖关系

接口名依赖于

CanIfDispatchUserCheckTrcvWakeFlagIndicationUL的选择;

该配置的使能依赖于CanIfPublicPnSupport的使能;

CanIfDispatchUserCheckTrcvWakeFlagIndicationUL

取值范围

CAN_SM

默认取值

CDD

参数描述

CheckTrcvWakeFlagIndication通知到上层的模块

依赖关系

该配置的使能依赖于CanIfPublicPnSupport的使能

CanIfDispatchUserClearTrcvWufFlagIndicationName

取值范围

string

默认取值

参数描述

<User_ClearTrcvWufFlagIndication>的接口名

依赖关系

接口名依赖于

CanIfDispatchUserClearTrcvWufFlagIndicationUL;

该配置的使能依赖于CanIfPublicPnSupport的使能;

CanIfDispatchUserClearTrcvWufFlagIndicationUL

取值范围

CAN_SM

默认取值

CDD

参数描述

ClearTrcvWufFlagIndication通知到上层的模块

依赖关系

该配置的使能依赖于CanIfPublicPnSupport的使能

CanIfDispatchUserConfirmPnAvailabilityName

取值范围

string

默认取值

参数描述

<User_ConfirmPnAvailability>的接口名

依赖关系

接口名依赖于

CanIfDispatchUserConfirmPnAvailabilityUL;

该配置的使能依赖于CanIfPublicPnSupport的使能;

CanIfDispatchUserConfirmPnAvailabilityUL

取值范围

CAN_SM

默认取值

CDD

参数描述

ConfirmPnAvailability通知到的上层模块

依赖关系

该配置的使能依赖于CanIfPublicPnSupport的使能;

CanIfDispatchUserCtrlBusOffName

取值范围

string

默认取值

CanSM_ControllerBusOff

参数描述

<User_ControllerBusOff>的接口名

依赖关系

接口名依赖于

CanIfDispatchUserCtrlBusOffUL;

CanIfDispatchUserCtrlBusOffUL

取值范围

CAN_SM

默认取值

CAN_SM

CDD

参数描述

ControllerBusOff事件通知的上层模块

依赖关系

依赖于CanSM或者CDD模块的实现

CanIfDispatchUserCtrlModeIndicationName

取值范围

string

默认取值

CanSM_ControllerModeIndication

参数描述

<User_ControllerModeIndication>的接口名

依赖关系

接口名依赖于

CanIfDispatchUserCtrlModeIndicationUL;

CanIfDispatchUserCtrlModeIndicationUL

取值范围

CAN_SM

默认取值

CAN_SM

CDD

参数描述

CtrlModeIndication事件通知到的上层模块

依赖关系

CanIfDispatchUserTrcvModeIndicationName

取值范围

string

默认取值

参数描述

<User_TrcvModeIndication>的接口名

依赖关系

接口名依赖于

CanIfDispatchUserTrcvModeIndicationUL;

依赖于模块配置了至少一个CanTrcv驱动;

CanIfDispatchUserTrcvModeIndicationUL

取值范围

CAN_SM

默认取值

CDD

参数描述

<User_TrcvModeIndication>的接口名

依赖关系

依赖于模块配置了至少一个CanTrcv驱动;

CanIfDispatchUserValidateWakeupEventName

取值范围

string

默认取值

参数描述

<User_ValidateWakeupEvent>的接口名

依赖关系

接口名依赖于

CanIfDispatchUserValidateWakeupEventUL;

依赖于配置项

CanIfPublicWakeupCheckValidSupport的使能;

CanIfDispatchUserValidateWakeupEventUL

取值范围

ECUM

默认取值

CDD

参数描述

<User_ValidateWakeupEvent>的接口名

依赖关系

依赖于配置项

CanIfPublicWakeupCheckValidSupport的使能;

CanIfCtrlDrvCfg

image6

图 CanIfCtrlDrvCfg

表 CanIfCtrlDrvCfg

UI名称

描述

CanIfCtrlDrv InitHohConfigRef

取值范围

关联 到[CanIfInitHohCfg]

默 认取值

参数描述

该CanDrv关 联的HOH(多个CanDrv 可关联到同一个HOH)

依赖关系

Can IfCtrlDrvNameRef

取值范围

关联 到CanDrv中驱动Name

默 认取值

参数描述

用于获 取CanIf模块需要调用 的CanDrv功能接口名

依赖关系

依赖于CanDrv的配置

CanIfCtrlCfg

image7

图 CanIfCtrlCfg

表 CanIfCtrlCfg

UI名称

描述

CanIfCtrlId

取值范围

string

默认取值

FALSE

参数描述

该Controller在CanIf模块中的Index(宏定义)

依赖关系

宏名根据CanIfCtrlCfg名自动生成

CanIfCtrlWa keupSupport

取值范围

true/false

默认取值

FALSE

参数描述

表示该Controller是否支持唤醒机制

依赖关系

依赖于CanIfWakeupSupport的使能

CanIfCtrlCanCtrlRef

取值范围

关联到CanDrv中Controller

默认取值

参数描述

开启或关闭读取软件版本信息API开关TRUE:启用读取软件版本信息API开关FALSE:关闭读取软件版本信息API开关

依赖关系

EepWriteCycleReduction

取值范围

TRUE/FALSE

默认取值

FALSE

参数描述

依赖于Can驱动中Controller的配置。若Can驱动为第三方工具无法查询CanIf的配置参数,无法获知CanIf和CanController的映射关系,通常需要CanIf与Can中Controller的Id要配置一样,否则需要定制化转换

依赖关系

EepWriteCycleReduction

取值范围

关联到EcuC中EcucPartition

默认取值

参数描述

该参数引用EcuC模块中EcucPartition信息(只做同步 显示,不可手动配置修改)

依赖关系

依赖于ComM模块中ComMChannel的ComMChannelPartitionRef信息。若ComM中对于该CanIfCtrl未配置分区信息,则显示为空;若ComM中对于该CanIfCtrl存在配置分区信息,则显示为ComM中配置的分区信息

CanIfTrcvCfg

image8

图 CanIfTrcvCfg

表 CanIfTrcvCfg

UI名称

描述

CanIfTrcvId

取值范围

string

默认取值

参数描述

该Trcv在 CanIf模块中的I ndex(宏定义)

依赖关系

宏 名根据CanIfTrc vCfg名自动生成

CanIfTrcvWa keupSupport

取值范围

true/false

默认取值

false

参数描述

表示该Trcv是 否支持唤醒机制

依赖关系

依 赖于CanIfWakeu pSupport的使能

CanIfTrc vCanTrcvRef

取值范围

引用Trcv收发器

默认取值

参数描述

该参数引用Can Trcv模块中Trcv

依赖关系

依赖于C anTrcv中Trcv的 配置。若CanTr cv驱动为第三方 工具无法查询C anIf的配置参数 ,通常需要CanI f与CanTrcv驱动 中Trcv的Id要配 置一样,否则需 要定制化转换。

CanIfTrcvP artitionRef

取值范围

关联到EcuC中 EcucPartition

默认取值

参数描述

该 参数引用EcuC模 块中EcucParti tion信息(只做 同步显示,不可 手动配置修改)

依赖关系

依赖于ComM模 块中ComMChanne l的ComMChannel PartitionRef信 息。若ComM中对 于该CanIfCtrl 未配置分区信息 ,则显示为空; 若ComM中对于该 CanIfCtrl存在 配置分区信息, 则显示为ComM中 配置的分区信息

CanIfTxPduCfg

image9

图 CanIfTxPduCfg

表 CanIfTxPduCfg

UI名称

描述

CanIf TxPduCanId

取值范围

0 x0…0x1fffffff/0x7ff

默认取值

0x0

参数描述

表示T xPdu的CanId(11位用 于标准CAN标识符… 29位 用于扩展CAN标识符)

依赖关系

依赖于 CanIfTxPduCanIdType

CanIfTxPd uCanIdMask

取值范围

0 x0…0x1fffffff/0x7ff

默认取值

0x1fffffff

参数描述

用于MetaDa ta机制动态更改CanId

依赖关系

依 赖于CanIfTxPduType

和C anIfMetaDataSupport

CanIfTxPd uCanIdType

取值范围

EXTENDED_CAN

EXTENDED_FD_CAN

STANDARD_CAN

STANDARD_FD_CAN

默认取值

参数描述

CanId类型选择

依赖关系

CanIfTxPduCanIdTyp e为EXTENDED,CanIfT xPduCanId和CanIfTxP duCanIdMask配置范围 ≤0x1fffffff;CanIf TxPduCanIdType为STA NDARD,CanIfTxPduCa nId和CanIfTxPduCanI dMask配置范围≤0x7ff

Ca nIfTxPduId

取值范围

string

默认取值

参数描述

表示TxPd u在CanIf中的Index号

依赖关系

根据CanIfTxPduRef 关联的Pdu名自动生成

C anIfTxPduP nFilterPdu

取值范围

true/false

默认取值

false

参数描述

表示该Tx Pdu是否能通过PN过滤

依赖关系

依赖于CanIfPu blicPnSupport的使能

CanIfT xPduReadNo tifyStatus

取值范围

true/false

默认取值

false

参数描述

表示该TxPdu是否支 持读取发送通知状态

依赖关系

依赖 于CanIfPublicReadT xPduNotifyStatusApi

CanIf TxPduTrigg erTransmit

取值范围

true/false

默认取值

false

参数描述

表示该TxPdu是否 支持TriggerTransmit

依赖关系

依 赖于CanIfTriggerTr ansmitSupport的使能

CanIfTxPdu Truncation

取值范围

true/false

默认取值

true

参数描述

启用/禁用超 过配置大小的pdu的截 断功能(暂不支持)

依赖关系

CanI fTxPduType

取值范围

DYNAMIC

STATIC

默认取值

STATIC

参数描述

表 示该TxPdu的CanId是 否支持动态改变,当 CanIf中Pdu关联的ECU C中Pdu配置了MetaDat a时,其CanIfTxPduTy pe必须配置为DYNAMIC

依赖关系

Can IfTxPduUse rTriggerTr ansmitName

取值范围

string

默认取值

参数描述

表示 上层模块<User_Trigg erTransmit>的接口名

依赖关系

依赖于该 TxPdu的CanIfTxPduTr iggerTransmit使能;

依赖 于CanIfTxPduUserTxC onfirmationUL选择;

Ca nIfTxPduUs erTxConfir mationName

取值范围

string

默认取值

参数描述

表示上层模块< User_TxConfirmation >的接口名

依赖关系

依赖 于CanIfTxPduUserTxC onfirmationUL选择;

CanIfTxPdu UserTxConf irmationUL

取值范围

CAN_NM

CAN_TP

CAN_TSYN

CDD

J1939NM

J1939TP

PDUR

XCP

默认取值

参数描述

表示发 送该TxPdu的上层模块

依赖关系

CanIfTxPd uBufferRef

取值范围

引用[ CanIfBufferCfg]

默认取值

参数描述

表示 该TxPdu关联的TxBuff er(间接关联到HTH)

依赖关系

Can IfTxPduRef

取值范围

关联ECUC中Pdu

默认取值

参数描述

通过ECUC中Pdu索引 ,明确Pdu的路由路径

依赖关系

依赖 于ECUC中Pdu的配置, CanIf中CanIfTxPduR ef关联的ECUC中Pdu必 须要被别的模块关联

CanIfBufferCfg

image10

图 CanIfBufferCfg

表 CanIfBufferCfg

UI名称

描述

CanIf BufferSize

取值范围

0..255

默认取值

0

参数描述

表示关联的HTH的Buf ferSize(用于缓存通 过该HTH发送的TxPdu 报文),配置为0表示 该HTH不支持发送缓存

依赖关系

依赖于配置Can IfPublicTxBuffering

CanIfBu fferHthRef

取值范围

引用CanIfHthCfg

默认取值

参数描述

关联HTH(间接将T xPdu与HTH关联起来)

依赖关系

与CanIfHth Cfg为一一对应的关系

CanIfHthCfg

image11

图 CanIfHthCfg

表 CanIfHthCfg

UI名称

描述

CanIfHthCa nCtrlIdRef

取值范围

引用CanIfCtrlCfg

默认取值

参数描述

关联到CanIf模块 中配置的Controller

依赖关系

关联到 配置项CanIfCtrlCfg

CanIfH thIdSymRef

取值范围

引用 CanDrv中HTH硬件单元

默认取值

参数描述

关联到Can驱 动中硬件发送单元HTH

依赖关系

依赖于Can驱动中硬 件发送单元HTH的配置

CanIfRxPduCfg

image12

图 CanIfRxPduCfg

表 CanIfRxPduCfg

UI名称

描述

CanIfRxPduCanId

取值范围

0x0 .. 0x1FFFFFFF

参数描述

标准帧:0x0-0x7FF;扩展帧:0x0-0x1FFFFFFF

依赖关系

依赖于CanIfRxPduCanIdType

CanIfRxPduCanIdMask

取值范围

0x0 .. 0x1FFFFFFF

默认取值

0x1FFFFFFF

参数描述

接收报文CanId的掩码,用于接收过滤

依赖关系

依赖于CanIfRxPduCanIdType

CanIfRxPduCanIdType

取值范围

EXTENDED_CAN

默认取值

EXTENDED_FD_CAN

EXTENDED_NO_FD_CAN

STANDARD_CAN

STANDARD_FD_CAN

STANDARD_NO_FD_CAN

参数描述

表示接收CAN报文类型

依赖关系

CanIfRxPduDataLength

取值范围

0..64

默认取值

8

参数描述

RxPdu的DLC长度(用于DLC检测)

依赖关系

依赖于配置CanIfPrivateDataLengthCheck

CanIfRxPduDataLengthCheck

取值范围

true/false

默认取值

参数描述

接收时检查该Pdu的长度(暂不支持修改)

依赖关系

依赖于配置CanIfPrivateDataLengthCheck

CanIfRxPduId

取值范围

string

默认取值

参数描述

表示该RxPdu在CanIf模块中的Index,由其关联的Pdu名自动生成宏名

依赖关系

根据CanIfRxPduRef关联的Pdu名自动生成

CanIfRxPduReadData

取值范围

true/false

默认取值

FALSE

参数描述

表示该RxPdu是否支持CanIf_ReadRxPduData获取接收数据

依赖关系

依赖于CanIfPublicReadRxPduDataApi,当RxPdu支持CanIfRxPduReadData时,接收报文CanId必须为唯一值(CanIfRxPduCanIdRange配置不能是一个范围)

CanIfRxPduReadNotifyStatus

取值范围

true/false

默认取值

FALSE

参数描述

表示该RxPdu是否支持CanIf_ReadRxNotifStatus获取接收状态

依赖关系

依赖于CanIfPublicReadRxPduNotifyStatusApi

CanIfRxPduUserRxIndicationName

取值范围

string

默认取值

参数描述

表示<User_RxIndication>的接口名,由工具自动生成(CanIfRxPduUserRxIndicationUL配置为CDD时可手动更改)

依赖关系

依赖于CanIfRxPduUserRxIndicationUL

CanIfRxPduUserRxIndicationUL

取值范围

CAN_NM

默认取值

CAN_TP

CAN_TSYN

CDD

J1939NM

J1939TP

PDUR

XCP

OSEK_NM

参数描述

表示该RxPdu接收数据传递到上层的模块

依赖关系

CanIfRxPduHrhIdRef

取值范围

引用CanIfHrhCfg

默认取值

参数描述

表示该RxPdu通过关联的HRH 接收

依赖关系

依赖于CanIf模块中CanIfHrhCfg

CanIfRxPduRef

取值范围

关联ECUC中Pdu

默认取值

参数描述

通过ECUC中Pdu索引,明确Pdu的路由路径

依赖关系

依赖于ECUC中Pdu

CanIfRxPduCanIdRange

image13

图 CanIfRxPduCanIdRange

表 CanIfRxPduCanIdRange

UI名称

描述

CanIfRxPdu CanIdRange LowerCanId

取值范围

0x0 .. 0x1FFFFFFF

默认取值

0x0

参数描述

表示该R xPdu过滤的CanId下限

依赖关系

依赖于CanIfR xPduCanIdType,CanI fRxPduCanIdRangeLow erCanId≤CanIfRxPduC anIdRangeUpperCanId

CanIfRxPdu CanIdRange UpperCanId

取值范围

0x0 .. 0x1FFFFFFF

默认取值

0x0

参数描述

表示该R xPdu过滤的CanId上限

依赖关系

依赖于CanI fRxPduCanIdType;Ca nIfRxPduCanIdRangeL owerCanId≤CanIfRxPd uCanIdRangeUpperCan Id;CanIfRxPduCanId Type为STANDARD,Can IfRxPduCanIdRangeUp perCanId配置范围≤0x 7ff;CanIfRxPduCanI dType为EXTENDED,Ca nIfRxPduCanIdRangeU pperCanId配置范围≤0 x1fffffff;CanIfHrh RangeRxPduRangeCanI dType为STANDARD,Ca nIfHrhRangeRxPduUpp erCanId配置范围≤0x7 ff;CanIfHrhRangeRx PduRangeCanIdType为 EXTENDED,CanIfHrhR angeRxPduUpperCanId 配置范围≤0x1fffffff

CanIfHrhCfg

image14

图 CanIfHrhCfg

表 CanIfHrhCfg

UI名称

描述

Ca nIfHrhSoft wareFilter

取值范围

true/false

默认取值

true

参数描述

表示该 HRH是否使能软件滤波

依赖关系

依赖 于关联的CAN驱动中HR H的类型(配置为Full Can不需要软件滤波)

CanIfHrhCa nCtrlIdRef

取值范围

引用CanIfCtrlCfg

默认取值

参数描述

表示该HRH关联的CanI f中配置的Controller

依赖关系

依赖于CanIfCtrlCfg

CanIfH rhIdSymRef

取值范围

引用CAN驱 动中硬件接收单元HRH

默认取值

参数描述

Ca nIf中HRH与CAN驱动中 硬件接收单元的关联

依赖关系

依赖于CAN驱动中 硬件接收单元的配置

CanIfHrhRangeCfg

image15

图 CanIfHrhRangeCfg

表 CanIfHrhRangeCfg

UI名称

描述

CanIfHrhR angeBaseId

取值范围

0x0-0x1FFFFFFF

默认取值

参数描述

表示HRH软 件滤波的BaseCanId( 掩码方式过滤所需)

依赖关系

依赖于CanIfHrhSof twareFilter的使能,

当前结合到CA N驱动中通常都是通过 硬件掩码进行过滤, 软件不支持这种方式 ,因此工具不可配。

CanIfHr hRangeMask

取值范围

0x0-0x1FFFFFFF

默认取值

参数描述

表示该 HRH软件滤波的掩码( 掩码方式过滤所需)

依赖关系

依赖于CanIfHrhSof twareFilter的使能,

当前结合到CA N驱动中通常都是通过 硬件掩码进行过滤, 软件不支持这种方式 ,因此工具不可配。

CanIfHrh RangeRxPdu LowerCanId

取值范围

0x0-0x1FFFFFFF

默认取值

0x0

参数描述

该HRH 接收报文CanId的下限

依赖关系

依赖于CanIfHrhS oftwareFilter的使能

Ca nIfHrhRang eRxPduRang eCanIdType

取值范围

STANDARD/EXTENDED

默认取值

参数描述

该HRH过滤CanI d类型(11位和29位)

依赖关系

依赖于CanIfHrhS oftwareFilter的使能

CanIfHrh RangeRxPdu UpperCanId

取值范围

0x0-0x1FFFFFFF

默认取值

0x1fffffff

参数描述

该HRH 接收报文CanId的上限

依赖关系

依赖于CanIfHrhS oftwareFilter的使能

CanIfInitCfg

image16

图 CanIfInitCfg

表 CanIfInitCfg

UI名称

描述

CanIf InitCfgSet

取值范围

CanIfInitCfgSet

默 认 取 值

CanIfInitCfgSet

参数描述

表示 CanIf模块PB配置参数

依赖关系

工具固定生成,不可变

CanIfMax BufferSize

取值范围

0 ..

18446744073709551615

默 认 取 值

参数描述

Can If模块TxBuffer总长度

依赖关系

用于PB配 置的实现,目前不支持

CanIfM axRxPduCfg

取值范围

0 ..

18446744073709551615

默 认 取 值

参数描述

CanIf模块 支持的最大RxPdu数目

依赖关系

用于PB配 置的实现,目前不支持

CanIfM axTxPduCfg

取值范围

0 ..

18446744073709551615

默 认 取 值

参数描述

CanIf模块 支持的最大TxPdu数目

依赖关系

用于PB配 置的实现,目前不支持