AUTOSAR_SWS_CANTransceiverDriver 中文翻译

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

本翻译覆盖原文档 1-78 页正文。原文为软件规范(SWS),定义 CAN Transceiver Driver(CanTrcv)模块的 API、配置、错误处理。


1 引言与范围

CAN Transceiver Driver(CanTrcv)位于 MCAL 层,控制 CAN 物理层收发器。提供 NORMAL / STANDBY / SLEEP 状态切换、唤醒检测与通知、CAN FD 支持等服务。

2 缩略语

CanTrcv / CAN / CAN FD / CAN XL / NORMAL / STANDBY / SLEEP / Wakeup / ISO 11898-2 / SPI

3 相关文档

[1] AUTOSAR SWS CAN Interface
[2] AUTOSAR SRS CAN
[3] ISO 11898-2

4 约束与假设

CanTrcv 应:

5 依赖其他模块

CanTrcv 依赖:Dem(错误上报)/ Port(引脚复用)/ CanIf(接口)/ Spi(部分收发器通过 SPI 通信)。

6 功能规格

6.1 架构

CanTrcv 位于 MCAL 层,对下控制 CAN 收发器(SPI 或并行),对上为 CanIf 提供抽象。

7 API 服务

7.1 初始化 / 关闭

void CanTrcv_Init(const CanTrcv_ConfigType* ConfigPtr):初始化。
void CanTrcv_DeInit(void):去初始化。

7.2 模式控制

Std_ReturnType CanTrcv_SetOpMode(uint8 Transceiver, CanTrcv_TrcvModeType OpMode):设置运行模式(CANTRCV_TRCV_MODE_NORMAL / CANTRCV_TRCV_MODE_STANDBY / CANTRCV_TRCV_MODE_SLEEP)。
Std_ReturnType CanTrcv_GetOpMode(uint8 Transceiver, CanTrcv_TrcvModeType* OpModePtr):获取模式。

7.3 唤醒

Std_ReturnType CanTrcv_GetBusWuReason(uint8 Transceiver, CanTrcv_WakeupReasonType* ReasonPtr):获取唤醒原因。
Std_ReturnType CanTrcv_SetWakeupMode(uint8 Transceiver, CanTrcv_WakeupModeType Mode):设置唤醒模式。

7.4 链路状态

Std_ReturnType CanTrcv_GetBusErrState(uint8 Transceiver, CanTrcv_BusErrStateType* ErrorStatePtr):获取总线错误状态(CANTRCV_BUSERR_NORMAL / CANTRCV_BUSERR_DTC)。

8 配置

CanTrcv 配置类:

9 错误处理

9.1 开发错误

CANTRCV_E_UNINIT:模块未初始化。
CANTRCV_E_PARAM_POINTER:参数指针为空。
CANTRCV_E_PARAM:参数无效。

9.2 运行时错误

CANTRCV_E_BUSY:模块忙。


校对记录

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