Ethernet Transceiver Driver(EthTrcv)位于 MCAL 层,控制 Ethernet PHY 收发器(如 100BASE-T1 PHY)。提供 PHY 模式控制、链路状态、唤醒检测等服务。R4.2.1 起支持 TC10 唤醒(In-Cabin/Wake-up via PHY)。
EthTrcv / PHY / TC10 / 100BASE-T1 / 1000BASE-T1 / Link / Wake-up / SLEEP / STANDBY / NORMAL
[1] AUTOSAR Layered Software Architecture
[2] AUTOSAR SWS Ethernet Interface
[3] AUTOSAR SRS Ethernet
[4] IEEE 802.3 / OPEN Alliance TC10
EthTrcv 应:
EthTrcv 依赖:Dem(错误上报)/ EthIf(接口)/ Port(引脚复用)。
EthTrcv 位于 MCAL 层,对下控制 PHY,对上为 EthIf 提供统一抽象。
void EthTrcv_Init(const EthTrcv_ConfigType* CfgPtr):初始化。
void EthTrcv_DeInit(void):去初始化。
Std_ReturnType EthTrcv_SetTransceiverMode(uint8 TrcvIdx, EthTrcv_ModeType Mode):设置收发器模式(NORMAL / STANDBY / SLEEP / FAST_TC10_NORMAL / FAST_TC10_WAKE 等)。
Std_ReturnType EthTrcv_GetTransceiverMode(uint8 TrcvIdx, EthTrcv_ModeType* ModePtr):获取当前模式。
Std_ReturnType EthTrcv_GetLinkState(uint8 TrcvIdx, EthTrcv_LinkStateType* LinkStatePtr):获取链路状态(ACTIVE / INACTIVE)。
Std_ReturnType EthTrcv_GetBusWuReason(uint8 TrcvIdx, EthTrcv_WakeupReasonType* WakeupReasonPtr):获取唤醒原因。
Std_ReturnType EthTrcv_SetTransceiverWakeupMode(uint8 TrcvIdx, EthTrcv_WakeupModeType WakeupMode):设置唤醒模式。
Std_ReturnType EthTrcv_ReadMiiIndication(uint8 TrcvIdx, uint8 RegIdx, uint16* RegValPtr):MII 读。
Std_ReturnType EthTrcv_WriteMiiIndication(uint8 TrcvIdx, uint8 RegIdx, uint16 RegVal):MII 写。
EthTrcv 配置类:
ETHTRCV_E_UNINIT:模块未初始化。
ETHTRCV_E_PARAM_POINTER:参数指针为空。
ETHTRCV_E_PARAM:参数无效。
ETHTRCV_E_INV_TRCV_IDX:收发器索引无效。
ETHTRCV_E_BUSY:模块忙。
ETHTRCV_E_ACCESS:PHY 访问失败。
校对轮次:L1 自动校对(2026-06-13)