FlexRay Driver(Fr)位于 MCAL 层,初始化并控制 FlexRay CC(Communication Controller)。支持 10 Mbps 双通道通信、TDMA + FTDMA 时分多址。符合 FlexRay 协议规范 v3.0.1。
Fr / FlexRay / CC / TDMA / FTDMA / POC / Key Slot / POC State / Cycle / Slot / MTG / Channel A/B / Wakeup / Cold Start / Sync / Startup
[1] AUTOSAR SWS FlexRay Interface
[2] AUTOSAR SWS FlexRay Transceiver Driver
[3] AUTOSAR SRS FlexRay
[4] FlexRay Protocol Specification v3.0.1
Fr 应:
Fr 依赖:Dem(错误上报)/ MCU(时钟配置)/ Port(引脚复用)/ FrTrcv(收发器)/ StbM(时间同步)。
Fr Driver 位于 MCAL 层,对下控制 CC 寄存器,对上为 FrIf 提供抽象。
Fr 管理 CC 的 POC(Protocol Operation Control)状态机:
void Fr_Init(const Fr_ConfigType* ConfigPtr):初始化 Fr 驱动。
void Fr_DeInit(void):去初始化。
Std_ReturnType Fr_SetControllerMode(uint8 Fr_CtrlIdx, Fr_ControllerStateType Fr_CtrlMode):设置控制器状态。
Std_ReturnType Fr_GetControllerMode(uint8 Fr_CtrlIdx, Fr_ControllerStateType* Fr_CtrlModePtr):获取状态。
Std_ReturnType Fr_Transmit(uint8 Fr_CtrlIdx, uint16 Fr_LPduIdx, const PduInfoType* Fr_PduInfoPtr):发送 LPdu(Frame)。
Std_ReturnType Fr_Receive(uint8 Fr_CtrlIdx, uint16 Fr_LPduIdx, const PduInfoType* Fr_PduInfoPtr, const uint16* Fr_LPduStatusPtr):接收。
Std_ReturnType Fr_GetStatus(uint8 Fr_CtrlIdx, Fr_StatusType* Fr_StatusPtr):获取 Fr 状态。
Std_ReturnType Fr_GetNmState(uint8 Fr_CtrlIdx, Fr_NmStateType* Fr_NmStatePtr):获取网络管理状态(CCMSM 状态)。
Std_ReturnType Fr_TriggerTransmit(uint8 Fr_CtrlIdx, uint16 Fr_LPduIdx, PduInfoType* Fr_PduInfoPtr):触发传输。
CCMSM(Clock Correction / Sync / Media Access state machine)状态查询。
Fr 配置类:
FR_E_UNINIT:模块未初始化。
FR_E_PARAM_POINTER:参数指针为空。
FR_E_PARAM:参数无效。
FR_E_INV_CTRL_IDX:控制器索引无效。
FR_E_BUSY:模块忙。
FR_E_TIMEOUT:通信超时。
FR_E_FATAL_ERROR:CC 严重错误。
校对轮次:L1 自动校对(2026-06-13)