AUTOSAR_SWS_LINDriver 中文翻译

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

本翻译覆盖原文档 1-62 页正文。原文为软件规范(SWS),定义 LIN Driver 模块的 API、配置、错误处理。R4.4 支持 LIN Slave。


1 引言与范围

LIN Driver(Lin)位于 MCAL 层,初始化并控制 LIN/UART 控制器。支持 LIN Master / LIN Slave(R4.4 新增)/ 发送 LIN 帧(Header + Response)/ 接收 LIN 帧 / 唤醒检测。

2 缩略语

Lin / LIN / LIN Master / LIN Slave / UART / SCI / Header / Response / PID / Frame / Checksum / Classic Checksum / Enhanced Checksum

3 相关文档

[1] AUTOSAR SWS LIN Interface
[2] AUTOSAR SWS LIN Transceiver Driver
[3] AUTOSAR SRS LIN
[4] ISO 17987:2016 (formerly LIN 2.2a)

4 约束与假设

Lin 应:

5 依赖其他模块

Lin 依赖:Dem(错误上报)/ MCU(时钟配置)/ Port(引脚复用)/ LinTrcv(收发器)/ LinIf(接口)。

6 功能规格

6.1 架构

Lin Driver 位于 MCAL 层,对下访问 LIN 控制器/收发器,对上为 LinIf 提供抽象。

7 API 服务

7.1 初始化 / 关闭

void Lin_Init(const Lin_ConfigType* Config):初始化。
void Lin_DeInit(void):去初始化。

7.2 帧传输

Std_ReturnType Lin_SendFrame(uint8 Channel, Lin_FrameType* PduInfoPtr):发送 LIN 帧。
Std_ReturnType Lin_GetSlaveResponse(uint8 Channel, Lin_FrameType* PduInfoPtr):从节点响应接收。

7.3 模式控制

Std_ReturnType Lin_GoToSleep(uint8 Channel):进入睡眠。
Std_ReturnType Lin_GoToSleepInternal(uint8 Channel):内部睡眠(不影响总线)。
Std_ReturnType Lin_Wakeup(uint8 Channel):唤醒。
Std_ReturnType Lin_WakeupInternal(uint8 Channel):内部唤醒。

7.4 状态查询

Lin_StatusType Lin_GetStatus(uint8 Channel, uint8** Lin_SduPtr):获取通道状态(LIN_UNINIT / LIN_INIT / LIN_OPERATIONAL / LIN_CH_SLEEP / LIN_CH_SLEEP_PENDING / LIN_CH_NOT_ACTIVE / LIN_CH_READY_TO_SLEEP)。

7.5 版本信息

void Lin_GetVersionInfo(Std_VersionInfoType* versioninfo):获取模块版本信息。

7.6 LIN Slave 状态机

R4.4 起支持 LIN Slave 状态机(独立或主从混合):

8 配置

Lin 配置类:

9 错误处理

9.1 开发错误

LIN_E_UNINIT:模块未初始化。
LIN_E_PARAM_POINTER:参数指针为空。
LIN_E_PARAM:参数无效。
LIN_E_INVALID_CHANNEL:通道无效。
LIN_E_INVALID_POINTER:指针无效。

9.2 运行时错误

LIN_E_TIMEOUT:通信超时。
LIN_E_CHECKSUM:Checksum 错误。
LIN_E_BIT_ERROR:位错误。
LIN_E_PARITY:PID 奇偶校验错误。
LIN_E_FRAMING:成帧错误。


校对记录

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