FlexRay Driver (Fr)
Provides hardware-dependent access to FlexRay communication controllers.
Funktionen — Übersicht
void Fr_Init (const Fr_ConfigType* Fr_ConfigPtr);Initializes the Fr.Std_ReturnType Fr_ControllerInit (uint8 Fr_CtrlIdx);Initialzes a F lex Ray CC.Std_ReturnType Fr_StartCommunication (uint8 Fr_CtrlIdx);Starts communication.Std_ReturnType Fr_AllowColdstart (uint8 Fr_CtrlIdx);Invokes the CC CHI command 'ALLOW_ COLDSTART'.Std_ReturnType Fr_AllSlots (uint8 Fr_CtrlIdx);Invokes the CC CHI command 'ALL_ SLOTS'.Std_ReturnType Fr_HaltCommunication (uint8 Fr_CtrlIdx);Invokes the CC CHI command 'DEFERRED_ HALT'.Std_ReturnType Fr_AbortCommunication (uint8 Fr_CtrlIdx);Invokes the CC CHI command 'FREEZE'.Std_ReturnType Fr_SendWUP (uint8 Fr_CtrlIdx);Invokes the CC CHI command 'WAKEUP'.Std_ReturnType Fr_SetWakeupChannel (uint8 Fr_CtrlIdx, Fr_ChannelType Fr_ChnlIdx);Sets a wakeup channel.Std_ReturnType Fr_GetPOCStatus (uint8 Fr_CtrlIdx, Fr_POCStatusType* Fr_POCStatusPtr);Gets the POC status.Std_ReturnType Fr_TransmitTxLPdu (uint8 Fr_CtrlIdx, uint16 Fr_LPduIdx, const uint8* Fr_LSduPtr, uint8 Fr_LSduLength, Fr_SlotAssignmentType* Fr_SlotAssignmentPtr);Transmits data on the Flex Ray network.Std_ReturnType Fr_CancelTxLPdu (uint8 Fr_CtrlIdx, uint16 Fr_LPduIdx);Cancels the already pending transmission of a LPdu contained in a controllers p hysical transmit resource (e.Std_ReturnType Fr_ReceiveRxLPdu (uint8 Fr_CtrlIdx, uint16 Fr_LPduIdx, uint8* Fr_LSduPtr, Fr_RxLPduStatusType* Fr_LPduStatusPtr, uint8* Fr_LSduLengthPtr, Fr_SlotAssignmentType* Fr_SlotAssignmentPtr);Service Fr_ReceiveRxLPdu.Std_ReturnType* Fr_CheckTxLPduStatus (uint8 Fr_CtrlIdx, uint16 Fr_LPduIdx, Fr_TxLPduStatusType* Fr_TxLPduStatusPtr, Fr_SlotAssignmentType* Fr_SlotAssignmentPtr);Checks the transmit status of the LSdu.Std_ReturnType Fr_PrepareLPdu (uint8 Fr_CtrlIdx, uint16 Fr_LPduIdx);Prepares a LPdu.Std_ReturnType Fr_ReconfigLPdu (uint8 Fr_CtrlIdx, uint16 Fr_LPduIdx, uint16 Fr_FrameId, Fr_ChannelType Fr_ChnlIdx, uint8 Fr_CycleRepetition, uint8 Fr_CycleOffset, uint8 Fr_PayloadLength, uint16 Fr_Header CRC); ⚠️Service Fr_ReconfigLPdu.Std_ReturnType Fr_DisableLPdu (uint8 Fr_CtrlIdx, uint16 Fr_LPduIdx);Disables the hardware resource of a LPdu for transmission/ reception.Std_ReturnType Fr_GetGlobalTime (uint8 Fr_CtrlIdx, uint8* Fr_CyclePtr, uint16* Fr_MacroTickPtr);Gets the current global Flex Ray time.Std_ReturnType Fr_GetNmVector (uint8 Fr_CtrlIdx, uint8* Fr_NmVectorPtr);Gets the network management vector of the last communication cycle.Std_ReturnType Fr_GetNumOfStartup Fr_GetNumStartupFrames (uint8 Fr_CtrlIdx, uint8* Fr_NumOfStartupFramesPtr); ⚠️Gets the current number of startup frames seen on the cluster.Std_ReturnType Fr_GetChannelStatus (uint8 Fr_CtrlIdx, uint16* Fr_ChannelAStatusPtr, uint16* Fr_ChannelBStatusPtr);Gets the channe l status information.Std_ReturnType Fr_GetClockCorrection (uint8 Fr_CtrlIdx, sint16* Fr_RateCorrectionPtr, sint32* Fr_OffsetCorrectionPtr);Gets the current clock correction values.Std_ReturnType Fr_GetSyncFrameList (uint8 Fr_CtrlIdx, uint8 Fr_ListSize, uint16* Fr_ChannelAEvenListPtr, uint16* Fr_ChannelBEvenListPtr, uint16* Fr_ChannelAOddListPtr, uint16* Fr_ChannelBOddListPtr);Service Fr_GetSyncFrameList.Std_ReturnType Fr_GetWakeupRxStatus (uint8 Fr_CtrlIdx, uint8* Fr_WakeupRxStatusPtr);Gets the wakeup received information from the Flex Ray controller.Std_ReturnType Fr_SetAbsoluteTimer (uint8 Fr_CtrlIdx, uint8 Fr_AbsTimerIdx, uint8 Fr_Cycle, uint16 Fr_Offset);Sets the absolute Flex Ray timer.Std_ReturnType Fr_CancelAbsoluteTimer (uint8 Fr_CtrlIdx, uint8 Fr_AbsTimerIdx);Stops an absolute timer.Std_ReturnType Fr_EnableAbsoluteTimerIRQ (uint8 Fr_CtrlIdx, uint8 Fr_AbsTimerIdx);Service Fr_EnableAbsoluteTimerIRQ.Std_ReturnType Fr_AckAbsoluteTimerIRQ (uint8 Fr_CtrlIdx, uint8 Fr_AbsTimerIdx);Service Fr_AckAbsoluteTimerIRQ.Std_ReturnType Fr_DisableAbsoluteTimerIRQ (uint8 Fr_CtrlIdx, uint8 Fr_AbsTimerIdx);Disables the in terrupt line of an absolute timer.Std_ReturnType Fr_GetAbsoluteTimerIRQStatus (uint8 Fr_CtrlIdx, uint8 Fr_AbsTimerIdx, boolean* Fr_IRQStatusPtr);Gets IRQ status of an absolute timer.void Fr_GetVersionInfo (Std_VersionInfoType* VersioninfoPtr);Returns the version information of this module.Std_ReturnType Fr_ReadCCConfig (uint8 Fr_CtrlIdx, uint8 Fr_Config ParamIdx, uint32* Fr_Config ParamValuePtr); ⚠️Service Fr_ReadCCConfig.
Typen — Übersicht
struct Fr_ConfigTypeThis type contains the implementation - specific post build configuration structure.enum Fr_SlotModeTypeThis formal definition refers to the description of type T_ Slot Mode in chapter 2.enum Fr_ErrorModeTypeThis formal definition refers to the description of type T_ Error Mode in chapter 2.enum Fr_WakeupStatusTypeThis formal definition refers to the description of type T_ Wakeup Status in chapter Specification of FlexRay Driverenum Fr_StartupStateTypeType Fr_StartupStateType.enum Fr_POCStatusTypeThis formal definition refers to the description of type T_ POCStatus in chapter 2.enum Fr_TxLPduStatusTypeThese values are used to determine whether a LPdu has been transmitted or not.enum Fr_RxLPduStatusTypeThese values are used to determine if a LPdu has been received or not.struct Fr_SlotAssignmentTypeThis structure contains information about the assignment of a Flex Ray frame to a cycle and a slot ID.Fr_ChannelTypeFlexRay channel identifier: FR_CHANNEL_A, FR_CHANNEL_B, or FR_CHANNEL_AB.
Funktionen & Typen — Detailansicht
函数 Fr_Init [SWS_Fr_00032] 📄 PDF
void Fr_Init (const Fr_ConfigType* Fr_ConfigPtr);
Initializes the Fr.
根据 [SWS_Fr_00032],同步函数 Fr_Init 用于初始化 FlexRay 驱动(Fr)。它通过头文件 Fr.h 声明,并具有服务 ID 0x1c [SWS_Fr_00032]。该接口仅需要类型为 const Fr_ConfigType* 的输入参数 Fr_ConfigPtr [SWS_Fr_00032]。该指针指向一个与驱动相关的配置结构,该结构为 FlexRay 驱动后续的运行操作提供所有必需的信息 [SWS_Fr_00032]。该函数既无输入/输出参数也无输出参数,且不提供返回值(void)[SWS_Fr_00032]。
关于并发性和限制,Fr_Init 被指定为不可重入(Non Reentrant)[SWS_Fr_00032]。因此,绝不允许并行或嵌套调用。由于传入的配置结构包含了供后续运行使用的所有基础数据,因此初始化通常应在整个系统的启动阶段顺序执行,然后才能调用其他模块服务 [SWS_Fr_00032]。 问题 Q-a208c696fbb083d4 (未决)
服务定义中未规定通过特定错误代码或状态反馈进行错误处理 [SWS_Fr_00032]。在本数据集中未记录进一步的要求,例如向 DET 或 DEM 发送通知。
本文档由 AI 基于规范生成。
实现者指南即将推出(复杂度 I1)
函数 Fr_ControllerInit [SWS_Fr_00017] 📄 PDF
Std_ReturnType Fr_ControllerInit (uint8 Fr_CtrlIdx);
Initialzes a F lex Ray CC.
同步函数 Fr_ControllerInit 用于在 FlexRay 驱动上下文中初始化 FlexRay Communication Controller(FlexRay CC)[SWS_Fr_00017]。它在头文件 Fr.h 中声明并具有服务 ID 0x00 [SWS_Fr_00017]。通过类型为 uint8 的输入参数 Fr_CtrlIdx 传递待初始化的控制器索引 [SWS_Fr_00017]。
该函数作为返回值提供状态 Std_ReturnType [SWS_Fr_00017]:
E_OK:API 调用已成功完成 [SWS_Fr_00017]。E_NOT_OK:调用因发生错误而提前中止 [SWS_Fr_00017]。
在指定的接口范围内未列出详细的错误代码以及向 DET 或 DEM 的报告 [SWS_Fr_00017]。
关于并发性,针对同一硬件单元,该函数被归类为不可重入(Non Reentrant for the same device)[SWS_Fr_00017]。因此,不得同时对同一控制器索引 Fr_CtrlIdx 进行调用;相反,针对不同控制器的并发调用应该是允许的 [SWS_Fr_00017]。 问题 Q-5bbbba38e8530b43 (未决)由于未定义输入和输出参数(inout/out),因此初始化纯粹在驱动中基于状态进行 [SWS_Fr_00017]。
本使用说明是基于 AUTOSAR 规范版本 R20-11 自动生成的。
函数 Fr_StartCommunication [SWS_Fr_00010] 📄 PDF
Std_ReturnType Fr_StartCommunication (uint8 Fr_CtrlIdx);
Starts communication.
函数 Fr_StartCommunication 用于在指定的控制器上启动 FlexRay 通信 [SWS_Fr_00010]。该接口可通过头文件 Fr.h 获取 [SWS_Fr_00010]。
使用
调用以异步方式进行,同时传递参数 Fr_CtrlIdx(服务 ID 0x03),该参数指示 FlexRay 通信控制器在驱动程序上下文中的索引 [SWS_Fr_00010]。作为返回值,该函数提供类型为 Std_ReturnType 的状态 [SWS_Fr_00010]:
E_OK:API 调用成功完成 [SWS_Fr_00010]。推测:鉴于异步语义,这可能意味着成功接受启动命令,而实际的连接建立随后进行。 问题 Q-fabca57ea7d32a05 (未决)E_NOT_OK:由于错误,API 调用已中止 [SWS_Fr_00010]。
并发性与限制
对于同一个 FlexRay 控制器,Fr_StartCommunication 被指定为不可重入 [SWS_Fr_00010]。相反,对于不同的控制器实例,该调用是可重入的。当前规范数据中不包含具体的开发错误(DET)、错误报告(DEM)或进一步的依赖关系。
本使用说明完全基于 AUTOSAR Classic 版本 R20-11 规范中的信息。
实现者指南即将推出(复杂度 I1)
函数 Fr_AllowColdstart [SWS_Fr_00114] 📄 PDF
Std_ReturnType Fr_AllowColdstart (uint8 Fr_CtrlIdx);
Invokes the CC CHI command 'ALLOW_ COLDSTART'.
使用
函数 Fr_AllowColdstart 用于在 FlexRay 通信控制器 [SWS_Fr_00114] 上调用控制器主机接口命令 ALLOW_COLDSTART。其声明通过头文件 Fr.h 提供;该服务拥有服务 ID 0x23 [SWS_Fr_00114]。通过传入参数 Fr_CtrlIdx 指定要在 FlexRay 驱动程序内寻址的 FlexRay 控制器的索引 [SWS_Fr_00114]。调用异步执行 [SWS_Fr_00114]。
错误处理与返回值
该函数返回类型为 Std_ReturnType 的状态 [SWS_Fr_00114]:
E_OK:API 调用成功完成 [SWS_Fr_00114]。E_NOT_OK:由于错误,API 调用已中止 [SWS_Fr_00114]。
在函数规范中,未针对该服务单独列出具体的错误原因或向 DEM 或 DET 的报告 [SWS_Fr_00114]。
并发性与限制
该接口针对同一控制器实例是不可重入的(Non Reentrant for the same device)[SWS_Fr_00114]。因此,不得使用相同的参数 Fr_CtrlIdx 进行并行或中断调用 [SWS_Fr_00114]。推测:由于异步执行语义,返回值 E_OK 大概仅确认驱动程序接收了 CHI 命令,而控制器内部的状态更改在时间上延迟进行 [SWS_Fr_00114]。 问题 Q-e5c407f32c449510 (未决)
本使用说明是基于 AUTOSAR R20-11 版本的规范自动生成的。
实现者指南即将推出(复杂度 I1)
函数 Fr_AllSlots [SWS_Fr_00516] 📄 PDF
Std_ReturnType Fr_AllSlots (uint8 Fr_CtrlIdx);
Invokes the CC CHI command 'ALL_ SLOTS'.
使用与工作原理
函数 Fr_AllSlots 用于向被寻址的 FlexRay 通信控制器发送 CHI 命令(Controller Host Interface)ALL_SLOTS [SWS_Fr_00516]。它通过头文件 Fr.h 提供,并具有服务 ID 0x24 [SWS_Fr_00516]。
作为输入参数,该函数需要 Fr_CtrlIdx,用于指示受影响的 FlexRay 控制器在 FlexRay 驱动上下文中的索引 [SWS_Fr_00516]。执行是异步进行的 [SWS_Fr_00516]。返回值 E_OK 表示 API 调用已成功完成,而 E_NOT_OK 表示由于错误而中止 [SWS_Fr_00516]。由于具有异步语义,E_OK 大概仅确认成功接收或触发了 CHI 命令,而不代表控制器硬件反应已完成(解释)。 问题 Q-c526e3b174a4b44a (未决)
错误处理与并发
若执行失败,该调用将以返回值 E_NOT_OK 中止 [SWS_Fr_00516]。该元素的规范中未指明具体的错误原因或 DET/DEM 消息。
关于可重入性,Fr_AllSlots 被指定为针对同一控制器不可重入(Non Reentrant for the same device)[SWS_Fr_00516]。因此,上层必须避免针对同一控制器实例的并发调用。相反,针对不同控制器实例的并行调用应该是允许的(解释)。 问题 (未决)
本使用说明为自动生成。专业陈述完全基于 AUTOSAR 规范摘录。
函数 Fr_HaltCommunication [SWS_Fr_00014] 📄 PDF
Std_ReturnType Fr_HaltCommunication (uint8 Fr_CtrlIdx);
Invokes the CC CHI command 'DEFERRED_ HALT'.
函数 Fr_HaltCommunication 用于通过执行 CC-CHI 命令 'DEFERRED_HALT' 来启动 FlexRay 通信控制器上的通信停止 [SWS_Fr_00014]。
用法与参数
该调用以异步方式进行,并通过头文件 Fr.h 提供(服务 ID 0x04)[SWS_Fr_00014]:
Fr_CtrlIdx(输入参数):确定 FlexRay 驱动内待控制的 FlexRay 通信控制器的索引 [SWS_Fr_00014]。- 返回值(
Std_ReturnType):如果函数调用成功完成,则返回E_OK;如果调用因错误而中止,则返回E_NOT_OK[SWS_Fr_00014]。
并发性与限制
关于调用上下文和并发性,针对同一设备,Fr_HaltCommunication 为不可重入(Non Reentrant for the same device)[SWS_Fr_00014]。因此,不得针对同一控制器索引进行并发或重叠调用。相反,允许针对不同的控制器实例进行调用。
错误处理
如果调用期间发生错误,该函数将中止执行并通过返回值 E_NOT_OK 进行指示 [SWS_Fr_00014]。在规范范围内未列出此函数的详细错误消息。
本使用说明是基于 AUTOSAR 规范自动生成的。
函数 Fr_AbortCommunication [SWS_Fr_00011] 📄 PDF
Std_ReturnType Fr_AbortCommunication (uint8 Fr_CtrlIdx);
Invokes the CC CHI command 'FREEZE'.
同步函数 Fr_AbortCommunication 通过在指定的 FlexRay 通信控制器(CC)上执行控制器主机接口命令(CHI 命令)FREEZE 来中止当前通信 [SWS_Fr_00011]。
调用与参数
通过头文件 Fr.h 进行调用,同时指定控制器索引 Fr_CtrlIdx,该索引在 FlexRay 驱动上下文中唯一标识目标 FlexRay CC [SWS_Fr_00011]。此外不存在输入和输出参数。
返回值与错误处理
该函数返回类型为 Std_ReturnType 的状态 [SWS_Fr_00011]:
E_OK:API 调用已成功完成 [SWS_Fr_00011]。E_NOT_OK:API 调用因错误而中止[SWS_Fr_00011]。
并发性与限制
关于并发行为,针对同一通信控制器,Fr_AbortCommunication 被指定为不可重入(Non Reentrant for the same device)[SWS_Fr_00011]。调用方必须避免针对同一控制器实例进行并发调用。
此文本由 AI 基于 AUTOSAR R20-11 规范生成。
函数 Fr_SendWUP [SWS_Fr_00009] 📄 PDF
Std_ReturnType Fr_SendWUP (uint8 Fr_CtrlIdx);
Invokes the CC CHI command 'WAKEUP'.
用法与语义
函数 Fr_SendWUP 用于通过向通信控制器 [SWS_Fr_00009] 发送 CHI 命令 WAKEUP 来触发 FlexRay 总线上的唤醒过程。通过参数 Fr_CtrlIdx 传递目标控制器在驱动程序上下文中的索引 [SWS_Fr_00009]。该调用是异步进行的;接口触发命令,随后在硬件端执行唤醒图样的传输 [SWS_Fr_00009]。其声明可通过 Fr.h 获取,该服务具有服务 ID 0x06 [SWS_Fr_00009]。
错误处理与返回值
该函数返回类型为 Std_ReturnType 的状态值 [SWS_Fr_00009]:
E_OK:API 调用执行成功且 CHI 命令已发送 [SWS_Fr_00009]。E_NOT_OK:由于发生错误,API 调用已中止 [SWS_Fr_00009]。
并发性与限制
该函数被指定为针对同一设备不可重入(Non Reentrant for the same device)[SWS_Fr_00009]。推测:这可能意味着上层模块必须对同一控制器实例的并发调用进行同步,而对不同控制器实例的调用则可以并发执行。 问题 Q-0e3b4e70a0755877 (未决)未定义输入/输出参数或纯输出参数 [SWS_Fr_00009]。
此文本由 AI 基于 AUTOSAR 规范 R20-11 生成。
函数 Fr_SetWakeupChannel [SWS_Fr_00091] 📄 PDF
Std_ReturnType Fr_SetWakeupChannel (uint8 Fr_CtrlIdx, Fr_ChannelType Fr_ChnlIdx);
Sets a wakeup channel.
函数 Fr_GetPOCStatus [SWS_Fr_00012] 📄 PDF
Std_ReturnType Fr_GetPOCStatus (uint8 Fr_CtrlIdx, Fr_POCStatusType* Fr_POCStatusPtr);
Gets the POC status.
函数 Fr_TransmitTxLPdu [SWS_Fr_00092] 📄 PDF
Std_ReturnType Fr_TransmitTxLPdu (uint8 Fr_CtrlIdx, uint16 Fr_LPduIdx, const uint8* Fr_LSduPtr, uint8 Fr_LSduLength, Fr_SlotAssignmentType* Fr_SlotAssignmentPtr);
Transmits data on the Flex Ray network.
函数 Fr_TransmitTxLPdu 用于通过 FlexRay 网络传输有效数据 [SWS_Fr_00092]。它以异步语义处理发送请求,并将待传输的 LSdu 分配给由 Fr_LPduIdx 标识的 FlexRay 帧 [SWS_Fr_00092]。
用法与参数
通过头文件 Fr.h(服务 ID 0x0b)进行调用,同时为 FlexRay Communication Controller 指定控制器索引 Fr_CtrlIdx 以及唯一的帧索引 Fr_LPduIdx [SWS_Fr_00092]。通过指针 Fr_LSduPtr 传递缓冲区中提供的发送 LSdu,其以字节为单位的数据长度通过 Fr_LSduLength 指定 [SWS_Fr_00092]。通过输出参数 Fr_SlotAssignmentPtr,调用方可以查询实际的发送周期、时隙 ID 以及 FlexRay 通道;如果不需要此信息,则可以为此传递 NULL_PTR [SWS_Fr_00092]。
返回值与错误处理
该函数以返回类型 Std_ReturnType 确认调用:返回值 E_OK 确认 API 调用成功完成,而 E_NOT_OK 指示因错误而中止 [SWS_Fr_00092]。规范数据中未包含特定的 DET 或 DEM 消息。
并发性
关于并发性,针对同一设备,Fr_TransmitTxLPdu 被指定为不可重入(Non Reentrant for the same device)[SWS_Fr_00092]。因此,针对同一 FlexRay 控制器的并发发送调用是不允许的。
该文本由 AI 创建,且完全基于来自 AUTOSAR R20-11 的规范数据。
函数 Fr_CancelTxLPdu [SWS_Fr_00610] 📄 PDF
Std_ReturnType Fr_CancelTxLPdu (uint8 Fr_CtrlIdx, uint16 Fr_LPduIdx);
Cancels the already pending transmission of a LPdu contained in a controllers p hysical transmit resource (e.g. message buffer).
用法与语义
同步函数 Fr_CancelTxLPdu 中止已处于控制器物理发送资源(例如发送缓冲区)中的待处理 L-PDU 传输 [SWS_Fr_00610]。该函数在头文件 Fr.h 中声明,且其服务 ID 为 0x2d [SWS_Fr_00610]。
为了识别要中止的传输,该接口需要两个参数 [SWS_Fr_00610]:
Fr_CtrlIdx:FlexRay 通信控制器在 FlexRay 驱动程序上下文中的索引 [SWS_Fr_00610]。Fr_LPduIdx:用于识别相应 FlexRay 帧的唯一索引 [SWS_Fr_00610]。
返回值与错误处理
该函数调用返回 Std_ReturnType 类型的状态值 [SWS_Fr_00610]:
E_OK:API 调用已成功完成 [SWS_Fr_00610]。E_NOT_OK:调用因错误而中止 [SWS_Fr_00610]。
未为此函数记录特定的错误码、DET 或 DEM 条目;发生错误时,该函数仅通过返回值 E_NOT_OK 来指示该错误 [SWS_Fr_00610]。
并发性与限制
在并发行为方面,Fr_CancelTxLPdu 被指定为针对同一设备不可重入(Non Reentrant for the same device)[SWS_Fr_00610]。这可能意味着针对同一控制器实例的并行调用必须在调用方级别进行同步。 问题 Q-ec480944eec04076 (未决)不存在其他输入或输出参数 [SWS_Fr_00610]。
此使用说明基于 AUTOSAR R20-11 规范版本自动生成。
函数 Fr_ReceiveRxLPdu [SWS_Fr_00093] 📄 PDF
Std_ReturnType Fr_ReceiveRxLPdu (uint8 Fr_CtrlIdx, uint16 Fr_LPduIdx, uint8* Fr_LSduPtr, Fr_RxLPduStatusType* Fr_LPduStatusPtr, uint8* Fr_LSduLengthPtr, Fr_SlotAssignmentType* Fr_SlotAssignmentPtr);
Service Fr_ReceiveRxLPdu.
同步函数 Fr_ReceiveRxLPdu 用于从 FlexRay 网络接收有效数据,并可通过头文件 Fr.h 获取 [SWS_Fr_00093]。
参数与使用
通过输入参数 Fr_CtrlIdx 和 Fr_LPduIdx 唯一寻址 FlexRay 驱动的相应通信控制器以及待接收的 FlexRay 帧 [SWS_Fr_00093]。有效数据和状态数据通过多个指针传递给调用方:
Fr_LSduPtr:指向缓冲区的指针,在该缓冲区中应存储接收到的 L-SDU。Fr_LPduStatusPtr:指向 L-PDU 接收状态存储位置的指针。Fr_LSduLengthPtr:以字节为单位的接收到的 L-SDU 长度的存储位置,对应于复制到Fr_LSduPtr中的字节数。Fr_SlotAssignmentPtr:帧的周期、时隙 ID 和通道的存储位置。如果为此传递NULL_PTR,则表示调用方不需要这些分配信息。
并发与错误处理
该接口同步执行,但针对同一设备不可重入 [SWS_Fr_00093]。成功的接收过程以 E_OK 确认,而发生错误时调用中止并返回 E_NOT_OK [SWS_Fr_00093]。该函数的规范数据中未指出特定的 DET 或 DEM 错误代码。
本使用说明是基于规范自动生成的。
实现者指南即将推出(复杂度 I1)
函数 Fr_CheckTxLPduStatus [SWS_Fr_00094] 📄 PDF
Std_ReturnType* Fr_CheckTxLPduStatus (uint8 Fr_CtrlIdx, uint16 Fr_LPduIdx, Fr_TxLPduStatusType* Fr_TxLPduStatusPtr, Fr_SlotAssignmentType* Fr_SlotAssignmentPtr);
Checks the transmit status of the LSdu.
根据 [SWS_Fr_00094],同步接口 Fr_CheckTxLPduStatus(服务 ID 0x0d)用于检查 FlexRay 驱动中 L-SDU 或 FlexRay 帧的当前发送状态。它通过头文件 Fr.h 提供。
作为输入参数,该函数需要 FlexRay 通信控制器的索引(Fr_CtrlIdx)以及在驱动中唯一标识待检查 FlexRay 帧的索引 Fr_LPduIdx [SWS_Fr_00094]。LPdu 的已测定发送状态通过输出参数 Fr_TxLPduStatusPtr 写回所传递的内存地址 [SWS_Fr_00094]。
此外,输出参数 Fr_SlotAssignmentPtr 支持获取时隙分配:它指向存放寻址帧的实际周期、时隙 ID 以及通道的存储位置 [SWS_Fr_00094]。如果调用方不需要此分配信息,则传递 NULL_PTR 表示无需提供此数据 [SWS_Fr_00094]。
该接口须同步执行,且针对同一设备被指定为不可重入(Non Reentrant for the same device)[SWS_Fr_00094]。成功完成时,该调用返回返回值 E_OK;在发生错误的情况下,函数中止并返回 E_NOT_OK [SWS_Fr_00094]。
本文由 AI 生成,基于 AUTOSAR CP R20-11 规范。
实现者指南即将推出(复杂度 I1)
函数 Fr_PrepareLPdu [SWS_Fr_00107] 📄 PDF
Std_ReturnType Fr_PrepareLPdu (uint8 Fr_CtrlIdx, uint16 Fr_LPduIdx);
Prepares a LPdu.
用法与语义
根据 [SWS_Fr_00107],同步函数 Fr_PrepareLPdu 用于准备 L-PDU(Prepares a LPdu),并通过头文件 Fr.h 提供。作为输入参数,该服务需要控制器索引 Fr_CtrlIdx 以在驱动上下文中寻址 FlexRay 通信控制器(CC),并需要 Fr_LPduIdx 以唯一标识关联的 FlexRay 帧 [SWS_Fr_00107]。解释:该调用可能用于为帧随后的发送或接收过程初始化或使能硬件特定的缓冲区结构。 问题 Q-c4375099d73dbea2 (未决)
并发性与限制
关于并发行为,Fr_PrepareLPdu 被指定为针对相同硬件设备不可重入(Non Reentrant for the same device)[SWS_Fr_00107]。因此,调用方必须严格避免针对同一控制器索引 Fr_CtrlIdx 进行并行或中断调用。
返回值与错误处理
该函数具有服务 ID 0x1f,并通过返回类型 Std_ReturnType 报告其状态 [SWS_Fr_00107]:
E_OK:API 调用成功完成 [SWS_Fr_00107]。E_NOT_OK:由于发生错误,API 调用已提前中止 [SWS_Fr_00107]。在当前规范摘录中未定义特定的 DET 或 DEM 错误代码。
此文本由 AI 基于 AUTOSAR CP R20-11 规范生成。
函数 Fr_ReconfigLPdu [SWS_Fr_00524] 📄 PDF
Std_ReturnType Fr_ReconfigLPdu (uint8 Fr_CtrlIdx, uint16 Fr_LPduIdx, uint16 Fr_FrameId, Fr_ChannelType Fr_ChnlIdx, uint8 Fr_CycleRepetition, uint8 Fr_CycleOffset, uint8 Fr_PayloadLength, uint16 Fr_Header CRC); ⚠️
Service Fr_ReconfigLPdu.
用法与参数
同步函数 Fr_ReconfigLPdu 支持在运行时对 FlexRay LPDU 进行动态重新配置 [SWS_Fr_00524]。通过头文件 Fr.h 提供,该调用通过 Fr_CtrlIdx 寻址相应的 FlexRay 控制器,并通过 Fr_LPduIdx 寻址帧的唯一标识符 AUTOSAR_SWS_FlexRayDriver 第65页。
在重新配置时传递以下目标参数 [SWS_Fr_00524]:
Fr_FrameId和Fr_ChnlIdx:指定新的帧 ID 以及通信通道。Fr_CycleRepetition和Fr_CycleOffset:配置 LPDU 的周期滤波。Fr_PayloadLength和Fr_HeaderCRC:以字节为单位的有效数据长度以及帧的关联报头 CRC。
并发性与返回值
该服务对于同一个控制器是不可重入的(Non Reentrant for the same device)[SWS_Fr_00524]。相反,针对不同 FlexRay 控制器实例的调用应当是可重入的(理解)。 问题 Q-85908ef4796c80c7 (未决)重新配置成功时,调用返回 E_OK;若因错误导致重新配置失败,则返回 E_NOT_OK AUTOSAR_SWS_FlexRayDriver 第65页。
本文由 AI 创建;无法保证准确性。
函数 Fr_DisableLPdu [SWS_Fr_00539] 📄 PDF
Std_ReturnType Fr_DisableLPdu (uint8 Fr_CtrlIdx, uint16 Fr_LPduIdx);
Disables the hardware resource of a LPdu for transmission/ reception.
使用
同步驱动函数 Fr_DisableLPdu 用于停用 FlexRay LPdu 用于发送或接收的硬件资源([SWS_Fr_00539])。该接口通过头文件 Fr.h 提供,并分配了服务 ID 0x26([SWS_Fr_00539])。
函数调用必须传递两个必填参数([SWS_Fr_00539]):
Fr_CtrlIdx:驱动上下文内的 FlexRay 通信控制器索引。Fr_LPduIdx:用于标识相应 FlexRay 帧或 LPdu 的唯一索引。
作为返回值,该函数提供状态 Std_ReturnType([SWS_Fr_00539])。值 E_OK 表示调用成功结束,而如果在发生错误时调用被中止,则返回 E_NOT_OK。
错误处理
在当前规范中,未为此服务定义特定的错误代码,也未定义发送给 DET 或 DEM 的消息;错误行为直接体现在返回值 E_NOT_OK 中([SWS_Fr_00539])。
并发性与限制
关于可重入性,Fr_DisableLPdu 被归类为针对同一设备不可重入(Non Reentrant for the same device)([SWS_Fr_00539])。因此,调用方必须确保针对同一控制器的并发调用得到同步。
此文本由 AI 基于 AUTOSAR CP R20-11 规范生成。
函数 Fr_GetGlobalTime [SWS_Fr_00042] 📄 PDF
Std_ReturnType Fr_GetGlobalTime (uint8 Fr_CtrlIdx, uint8* Fr_CyclePtr, uint16* Fr_MacroTickPtr);
Gets the current global Flex Ray time. Important Note: Fr_ Get Global Time may be called within an exclusive area.
函数 Fr_GetNmVector [SWS_Fr_00113] 📄 PDF
Std_ReturnType Fr_GetNmVector (uint8 Fr_CtrlIdx, uint8* Fr_NmVectorPtr);
Gets the network management vector of the last communication cycle.
函数 Fr_GetNumStartupFrames [SWS_Fr_00547] 📄 PDF
Std_ReturnType Fr_GetNumOfStartupFrames (uint8 Fr_CtrlIdx, uint8* Fr_NumOfStartupFramesPtr);
Gets the current number of startup frames seen on the cluster. See variable v Startup Pairs of [12] for details.
函数 Fr_GetChannelStatus [SWS_Fr_00556] 📄 PDF
Std_ReturnType Fr_GetChannelStatus (uint8 Fr_CtrlIdx, uint16* Fr_ChannelAStatusPtr, uint16* Fr_ChannelBStatusPtr);
Gets the channe l status information. Specification of FlexRay Driver AUTOSAR CP R20 - of Document ID : AUTOSAR_SWS_FlexRayDriver
函数 Fr_GetClockCorrection [SWS_Fr_00564] 📄 PDF
Std_ReturnType Fr_GetClockCorrection (uint8 Fr_CtrlIdx, sint16* Fr_RateCorrectionPtr, sint32* Fr_OffsetCorrectionPtr);
Gets the current clock correction values. See variables v Interim Rate Correction and v Interim Offset Correction of [12] for details.
函数 Fr_GetSyncFrameList [SWS_Fr_00573] 📄 PDF
Std_ReturnType Fr_GetSyncFrameList (uint8 Fr_CtrlIdx, uint8 Fr_ListSize, uint16* Fr_ChannelAEvenListPtr, uint16* Fr_ChannelBEvenListPtr, uint16* Fr_ChannelAOddListPtr, uint16* Fr_ChannelBOddListPtr);
Service Fr_GetSyncFrameList.
函数 Fr_GetWakeupRxStatus [SWS_Fr_00587] 📄 PDF
Std_ReturnType Fr_GetWakeupRxStatus (uint8 Fr_CtrlIdx, uint8* Fr_WakeupRxStatusPtr);
Gets the wakeup received information from the Flex Ray controller.
函数 Fr_SetAbsoluteTimer [SWS_Fr_00033] 📄 PDF
Std_ReturnType Fr_SetAbsoluteTimer (uint8 Fr_CtrlIdx, uint8 Fr_AbsTimerIdx, uint8 Fr_Cycle, uint16 Fr_Offset);
Sets the absolute Flex Ray timer.
函数 Fr_CancelAbsoluteTimer [SWS_Fr_00095] 📄 PDF
Std_ReturnType Fr_CancelAbsoluteTimer (uint8 Fr_CtrlIdx, uint8 Fr_AbsTimerIdx);
Stops an absolute timer.
同步函数 Fr_CancelAbsoluteTimer 用于有序停止 FlexRay Communication Controller([SWS_Fr_00095])上的活动绝对定时器。它通过头文件 Fr.h 提供并具有服务 ID 0x13([SWS_Fr_00095])。
参数与返回值
Fr_CtrlIdx:在 FlexRay 驱动的上下文中传递相关 FlexRay Communication Controller 的索引([SWS_Fr_00095])。Fr_AbsTimerIdx:在所选 FlexRay 控制器的上下文中确定待停止的绝对定时器的索引([SWS_Fr_00095])。- 返回值:成功执行时通过类型
Std_ReturnType返回状态E_OK,或者如果调用因错误中止则返回E_NOT_OK([SWS_Fr_00095])。
并发性与限制
关于并发性,针对同一设备,该接口被定义为不可重入(“Non Reentrant for the same device”)([SWS_Fr_00095])。调用层必须确保不会针对同一控制器发生并发或中断性访问。解释:相反,对于不同的控制器,执行应该是允许重入的。 问题 Q-01203b0b28193021 (未决)
本使用说明基于 AUTOSAR R20-11 规范自动生成。
函数 Fr_EnableAbsoluteTimerIRQ [SWS_Fr_00034] 📄 PDF
Std_ReturnType Fr_EnableAbsoluteTimerIRQ (uint8 Fr_CtrlIdx, uint8 Fr_AbsTimerIdx);
Service Fr_EnableAbsoluteTimerIRQ.
同步函数 Fr_EnableAbsoluteTimerIRQ 用于激活 FlexRay 通信控制器内绝对定时器的中断线 [SWS_Fr_00034]。该服务通过头文件 Fr.h 提供,且服务 ID 为 0x15 [SWS_Fr_00034]。
调用时,接口需要两个输入参数 [SWS_Fr_00034]:
Fr_CtrlIdx:FlexRay 通信控制器在 FlexRay 驱动程序上下文中的索引 [SWS_Fr_00034]。Fr_AbsTimerIdx:绝对定时器在所寻址的 FlexRay 控制器上下文中的索引 [SWS_Fr_00034]。
类型为 Std_ReturnType 的返回值指示执行结果 [SWS_Fr_00034]:
E_OK:API 调用已成功完成 [SWS_Fr_00034]。E_NOT_OK:由于错误,函数调用已中止 [SWS_Fr_00034]。
在并发性方面,该函数被指定为针对同一设备不可重入(“Non Reentrant for the same device”)[SWS_Fr_00034]。这要求必须严格避免针对同一控制器实例的并发调用;然而,大概允许针对不同控制器实例进行并行调用。 问题 Q-d7e594a84357e129 (未决)函数描述中未列出开发错误或生产错误的特定错误代码(DET/DEM);发生的错误会直接导致返回 E_NOT_OK [SWS_Fr_00034]。
本使用说明基于规范 SWS_Fr_00034 自动生成。
函数 Fr_AckAbsoluteTimerIRQ [SWS_Fr_00036] 📄 PDF
Std_ReturnType Fr_AckAbsoluteTimerIRQ (uint8 Fr_CtrlIdx, uint8 Fr_AbsTimerIdx);
Service Fr_AckAbsoluteTimerIRQ.
同步函数 Fr_AckAbsoluteTimerIRQ 属于 AUTOSAR Classic 平台中的 FlexRay 驱动模块(Fr),用于复位绝对定时器的中断条件 [SWS_Fr_00036]。该接口的声明通过头文件 Fr.h 提供,并分配有十六进制服务 ID 0x17 [SWS_Fr_00036]。
为了唯一寻址定时器,该函数需要两个类型为 uint8 的输入参数,同时不存在输入/输出参数或纯输出参数 [SWS_Fr_00036]:
Fr_CtrlIdx:在 FlexRay 驱动的上下文中传递 FlexRay Communication Controller(CC)的索引 [SWS_Fr_00036]。Fr_AbsTimerIdx:指定相应 FlexRay Communication Controller 上下文中的绝对定时器索引 [SWS_Fr_00036]。
函数执行结果通过类型为 Std_ReturnType 的状态值返回。如果调用成功结束,该函数返回 E_OK [SWS_Fr_00036]。如果执行期间发生错误,函数调用将提前中止并改为主送 E_NOT_OK [SWS_Fr_00036]。
关于并发行为,针对同一设备,该服务被归类为不可重入(Non Reentrant for the same device)[SWS_Fr_00036]。因此,针对同一控制器实例的调用必须同步进行,不得并发重叠执行 [SWS_Fr_00036]。
本使用说明基于 FlexRay 驱动的规范 SWS_Fr_00036,并由自动生成。
函数 Fr_DisableAbsoluteTimerIRQ [SWS_Fr_00035] 📄 PDF
Std_ReturnType Fr_DisableAbsoluteTimerIRQ (uint8 Fr_CtrlIdx, uint8 Fr_AbsTimerIdx);
Disables the in terrupt line of an absolute timer.
同步函数 Fr_DisableAbsoluteTimerIRQ 在 FlexRay 驱动中用于有针对性地停用绝对定时器的中断线 [SWS_Fr_00035]。作为输入参数,该接口需要控制器索引 Fr_CtrlIdx 用于在驱动上下文中寻址相应的 FlexRay 通信控制器(CC),以及 Fr_AbsTimerIdx 用于识别该控制器内的绝对定时器 [SWS_Fr_00035]。该函数的声明通过头文件 Fr.h 提供 [SWS_Fr_00035]。
执行结果通过返回类型 Std_ReturnType 同步传输给调用方 [SWS_Fr_00035]。如果该服务能够正常且成功地结束,则返回 E_OK [SWS_Fr_00035]。如果在处理期间发生错误,该函数将中止该过程并通过返回值 E_NOT_OK 进行指示 [SWS_Fr_00035]。规范元素中未指出具体的开发或运行时错误(DET/DEM),因此必须主要根据返回值来识别和处理错误状态 [SWS_Fr_00035]。
关于并发性,针对同一设备(same device),Fr_DisableAbsoluteTimerIRQ 被定义为不可重入 [SWS_Fr_00035]。因此,针对同一控制器索引的多个调用不得并发进行,并且必须在调用方进行同步,而对不同控制器的并发访问则是允许的 [SWS_Fr_00035]。
本使用说明根据 AUTOSAR R20-11 规范自动生成。
函数 Fr_GetAbsoluteTimerIRQStatus [SWS_Fr_00108] 📄 PDF
Std_ReturnType Fr_GetAbsoluteTimerIRQStatus (uint8 Fr_CtrlIdx, uint8 Fr_AbsTimerIdx, boolean* Fr_IRQStatusPtr);
Gets IRQ status of an absolute timer.
函数 Fr_GetVersionInfo [SWS_Fr_00070] 📄 PDF
void Fr_GetVersionInfo (Std_VersionInfoType* VersioninfoPtr);
Returns the version information of this module.
函数 Fr_ReadCCConfig [SWS_Fr_00651] 📄 PDF
Std_ReturnType Fr_ReadCCConfig (uint8 Fr_CtrlIdx, uint8 Fr_Config ParamIdx, uint32* Fr_Config ParamValuePtr); ⚠️
Service Fr_ReadCCConfig.
同步函数 Fr_ReadCCConfig 直接从 FlexRay 驱动程序的模块配置中读取控制器的特定 FlexRay 协议配置参数 [SWS_Fr_00651]。该接口通过头文件 Fr.h 声明,且其服务 ID 为 0x2e [SWS_Fr_00651]。
参数与返回值
Fr_CtrlIdx:确定驱动程序上下文中受影响的 FlexRay 通信控制器的索引 [SWS_Fr_00651]。Fr_ConfigParamIdx:通过格式为FR_CIDX_<config_parameter_name>的已定义宏来识别要读取的参数 [SWS_Fr_00651]。Fr_ConfigParamValuePtr:指向类型为uint32的内存地址的指针,读取的值将写入该地址 [SWS_Fr_00651]。- 返回值:执行成功时返回
E_OK,发生错误时返回E_NOT_OK[SWS_Fr_00651]。
并发性与错误行为
该函数设计为针对同一控制器不可重入(“Non Reentrant for the same device”)[SWS_Fr_00651]。因此,针对不同控制器实例的同时调用应当是允许的。 问题 Q-b5e4172654514747 (未决)接口定义中未指定具体的 DET 或 DEM 错误;错误状态会导致中止并返回 E_NOT_OK [SWS_Fr_00651]。调用方可能需要确保 Fr_ConfigParamValuePtr 指向有效的内存区域。
本段文本由人工智能基于 AUTOSAR 规范 R20-11 生成。
类型 Fr_ConfigType [SWS_Fr_91001] 📄 PDF
This type contains the implementation - specific post build configuration structure.
类型 Fr_SlotModeType [SWS_Fr_00506] 📄 PDF
This formal definition refers to the description of type T_ Slot Mode in chapter 2.2.1.3 POC status of [12]. Available Fr_ General Types.h For FlexRay 2.1 Rev A compliant FlexRay controllers see literal SINGL ESLOT instead of KEYSLOT in [14] . Specification of FlexRay Driver AUTOSAR CP R20 - of Document ID : AUTOSAR_SWS_FlexRayDriver via
枚举类型 Fr_SlotModeType 是 AUTOSAR Classic 中 FlexRay 驱动接口定义的一部分,并通过头文件 Fr_GeneralTypes.h 提供 [SWS_Fr_00506]。该类型定义在形式上引用了 FlexRay 协议规范中的类型 T_SlotMode,该类型在关于协议操作控制(Protocol Operation Control,POC 状态)的章节中进行了描述 [SWS_Fr_00506]。
该枚举基于三个固定定义的值指定控制器的时隙处理状态 [SWS_Fr_00506]:
FR_SLOTMODE_KEYSLOT(值0x00):映射形式类型定义T_SlotMode的字面量KEYSLOT[SWS_Fr_00506]。FR_SLOTMODE_ALL_PENDING(值0x01):映射形式类型定义T_SlotMode的字面量ALL_PENDING[SWS_Fr_00506]。FR_SLOTMODE_ALL(值0x02):映射形式类型定义T_SlotMode的字面量ALL[SWS_Fr_00506]。
当与符合较旧标准 FlexRay 2.1 Rev A 的控制器一起使用时,必须考虑不同的命名:此处字面量 SINGLESLOT 替代了字面量 KEYSLOT [SWS_Fr_00506]。解释:在驱动和软件层面,该类型可能用于确定 FlexRay 控制器当前是仅使能主时隙(Key Slots)还是使能所有时隙进行传输,或者是否有相应的切换挂起。 问题 Q-f926c41c8a5d3380 (未决)
本段文本由人工智能基于 AUTOSAR 规范 R20-11 生成。
实现者指南即将推出(复杂度 I1)
类型 Fr_ErrorModeType [SWS_Fr_00507] 📄 PDF
This formal definition refers to the description of type T_ Error Mode in chapter 2.2.1.3 POC status of [12].
使用
枚举类型 Fr_ErrorModeType 映射 FlexRay 协议操作控制(POC)的错误模式,并通过头文件 Fr_GeneralTypes.h 提供 [SWS_Fr_00507]。该枚举定义了通信控制器的错误监控机制的状态,并引用了 FlexRay POC 状态中的形式类型定义 T_ErrorMode [SWS_Fr_00507]。
根据 [SWS_Fr_00507],值范围包含三种状态:
FR_ERRORMODE_ACTIVE(0x00):表示形式类型定义T_ErrorMode的字面量ACTIVE,并标识通信控制器的无错误状态或正常操作。FR_ERRORMODE_PASSIVE(0x01):对应于形式类型定义T_ErrorMode的字面量PASSIVE,此时在总线上记录到错误且通信可能受限。FR_ERRORMODE_COMM_HALT(0x02):映射形式类型定义T_ErrorMode的字面量COMM_HALT,此时总线通信因严重错误状态而已停止。
集成与边界条件
解释:该类型可能主要用作 FlexRay 驱动查询函数中的返回值或状态参数,以便将控制器的状态传输给上层软件层。 问题 Q-e4d6ae534d1dfa2c (未决)由于 [SWS_Fr_00507] 仅指定数据结构,因此在类型级别不存在通过 DET 或 DEM 进行的独立错误处理,也没有针对可重入性或并发性的直接要求。
本段文本由人工智能基于 AUTOSAR 规范 R20-11 生成。
实现者指南即将推出(复杂度 I1)
类型 Fr_WakeupStatusType [SWS_Fr_00508] 📄 PDF
This formal definition refers to the description of type T_ Wakeup Status in chapter Specification of FlexRay Driver AUTOSAR CP R20 - of Document ID : AUTOSAR_SWS_FlexRayDriver 2.2.1.3 POC status of [12].
枚举类型 Fr_WakeupStatusType 通过头文件 Fr_GeneralTypes.h 提供,并根据 POC 状态的形式定义 T_WakeupStatus 映射 FlexRay 驱动的唤醒状态 [SWS_Fr_00508]。
使用与取值范围
该类型表示 FlexRay 唤醒过程中的各种状态和事件,包含七个特定的枚举值 [SWS_Fr_00508]:
FR_WAKEUP_UNDEFINED(0x00):对应于形式类型定义 [SWS_Fr_00508] 的字面量UNDEFINED。FR_WAKEUP_RECEIVED_HEADER(0x01):标识接收到唤醒报头(字面量RECEIVED_HEADER)[SWS_Fr_00508]。FR_WAKEUP_RECEIVED_WUP(0x02):表示接收到的唤醒图样(字面量RECEIVED_WUP)[SWS_Fr_00508]。FR_WAKEUP_COLLISION_HEADER(0x03):指示接收到的报头发生冲突(字面量COLLISION_HEADER)[SWS_Fr_00508]。FR_WAKEUP_COLLISION_WUP(0x04):指示唤醒图样期间发生冲突(字面量COLLISION_WUP)[SWS_Fr_00508]。FR_WAKEUP_COLLISION_UNKNOWN(0x05):描述原因未知的冲突(字面量COLLISION_UNKNOWN)[SWS_Fr_00508]。FR_WAKEUP_TRANSMITTED(0x06):确认成功发送唤醒信号(字面量TRANSMITTED)[SWS_Fr_00508]。
交互与限制
解释:该类型可能主要用作驱动函数的状态参数,以使上层模块能够对通道和唤醒状态进行精确诊断。 问题 Q-48907418bc3729a1 (未决)由于规范本身未为该类型定义特定的错误代码或并发限制,因此其使用取决于各自查询 API 函数的调用约定 [SWS_Fr_00508]。
本使用说明基于 AUTOSAR CP R20-11 规范自动生成。
实现者指南即将推出(复杂度 I1)
类型 Fr_StartupStateType [SWS_Fr_00509] 📄 PDF
Type Fr_StartupStateType.
枚举类型 Fr_StartupStateType 根据 [SWS_Fr_00509] 通过头文件 Fr_GeneralTypes.h 提供,并将 FlexRay 协议控制器的启动状态(POC 状态)映射为标准化值。该定义参考了规范第 2.2.1.3 节中的形式类型定义 T_StartupState。
取值范围包括十一个离散状态,反映了协议启动的流程:
FR_STARTUP_UNDEFINED(0x00):表示未定义的启动状态。FR_STARTUP_COLDSTART_LISTEN(0x01) 至FR_STARTUP_COLDSTART_GAP(0x09):表示冷启动阶段,包括侦听阶段、一致性检查、冲突解决和加入(Coldstart Join)。FR_STARTUP_INTEGRATION_LISTEN(0x06)、FR_STARTUP_INITIALIZE_SCHEDULE(0x07) 和FR_STARTUP_INTEGRATION_CONSISTENCY_CHECK(0x08):表示时间表中的集成和初始化步骤。FR_STARTUP_EXTERNAL_STARTUP(0x0A):表示外部控制的启动。
进行集成的软件模块使用此类型(推测:主要用于状态查询或监控控制器启动)。 问题 Q-7d07faa6c48d4e58 (未决)由于 Fr_StartupStateType 是纯类型定义,因此不会直接触发错误代码或错误报告;但是评估者必须注意,0x00 至 0x0A 范围之外的值是未指定的。
本文档由 AI 生成,仅供参考。唯一具有约束力的是 AUTOSAR 规范文本。
实现者指南即将推出(复杂度 I1)
类型 Fr_POCStatusType [SWS_Fr_00510] 📄 PDF
This formal definition refers to the description of type T_ POCStatus in chapter 2.2.1.3 POC status of [12].
数据类型 Fr_POCStatusType 被指定为数据结构,并通过头文件 Fr_GeneralTypes.h 提供 [SWS_Fr_00510]。形式定义引用了 FlexRay 协议规范 [SWS_Fr_00510] 第 2.2.1.3 节(POC status)中对类型 T_POCStatus 的描述。
使用与结构构成
该结构聚合了 FlexRay Protocol Operation Control (POC) [SWS_Fr_00510] 的当前运行和协议状态。它由以下元素组成:
State(类型Fr_POCStateType)和StartupState(类型Fr_StartupStateType),用于指示当前 POC 状态以及启动状态 [SWS_Fr_00510]。ErrorMode(类型Fr_ErrorModeType)和Freeze(类型boolean),用于标识错误模式和控制器停止 [SWS_Fr_00510]。SlotMode(类型Fr_SlotModeType)和WakeupStatus(类型Fr_WakeupStatusType),用于时隙操作模式和唤醒状态 [SWS_Fr_00510]。CHIHaltRequest、CHIReadyRequest以及ColdstartNoise(均为boolean),用于指示主机接口请求或冷启动期间的线路噪声 [SWS_Fr_00510]。
并发与集成
推测:由于 Fr_POCStatusType 是没有自身功能逻辑的纯数据结构,它可能主要用作 FlexRay 硬件状态查询时的输出参数。 问题 Q-960f2475ff1068fc (未决)如果多个任务或软件层访问此结构的实例,调用者必须自行确保适当的同步,以确保一致地读取相关联的部分状态 [SWS_Fr_00510]。
本使用说明基于 SWS_Fr_00510 的有效负载自动生成。
实现者指南即将推出(复杂度 I1)
类型 Fr_TxLPduStatusType [SWS_Fr_00511] 📄 PDF
These values are used to determine whether a LPdu has been transmitted or not.
在 AUTOSAR Classic 平台中,枚举类型 Fr_TxLPduStatusType 用于确定 FlexRay LPdu(链路层协议数据单元,Link Layer Protocol Data Unit)是否已成功传输 [SWS_Fr_00511]。该类型定义通过头文件 Fr_GeneralTypes.h 为软件模块提供 [SWS_Fr_00511]。
该枚举的值范围包含用于发送过程的三种明确的状态 [SWS_Fr_00511]:
FR_TRANSMITTED(0x00):LPdu 已通过总线成功传输 [SWS_Fr_00511]。FR_TRANSMITTED_CONFLICT(0x01):传输过程中发生冲突 [SWS_Fr_00511]。FR_NOT_TRANSMITTED(0x02):LPdu 未被传输 [SWS_Fr_00511]。
关于交互和调用上下文,该状态值通常可能被上层用于查询 FlexRay 驱动中的发送缓冲区状态(解释)。 问题 Q-347a88512db1f006 (未决)规范中未为该数据类型规定特定的错误代码、错误处理例程以及 DET 或 DEM 消息,因为它是纯粹的类型声明 [SWS_Fr_00511]。
本段文本由人工智能基于 AUTOSAR 规范 R20-11 生成。
实现者指南即将推出(复杂度 I1)
类型 Fr_RxLPduStatusType [SWS_Fr_00512] 📄 PDF
These values are used to determine if a LPdu has been received or not.
枚举类型 Fr_RxLPduStatusType 是 AUTOSAR Classic 模块 Fr 的一部分,并通过头文件 Fr_GeneralTypes.h 提供 [SWS_Fr_00512]。它用于确定是否接收到 L-PDU(FlexRay 链路层 PDU)[SWS_Fr_00512]。
该类型定义了三个离散状态值以评估接收状态 [SWS_Fr_00512]:
FR_RECEIVED(0x00):L-PDU 已成功接收 [SWS_Fr_00512]。FR_NOT_RECEIVED(0x01):L-PDU 未被接收 [SWS_Fr_00512]。FR_RECEIVED_MORE_DATA_AVAILABLE(0x02):L-PDU 已接收且存在该 L-PDU 的更多实例可用,如使用接收 FIFO 时所出现的情况 [SWS_Fr_00512]。
通过缓冲区结构进行接收操作时,该类型不仅区分是否存在接收到的数据,而且在 FIFO 操作中还额外指示是否存在更多实例 [SWS_Fr_00512]。这可能向调用方指示,在读取当前实例后,可以立即从 FIFO 中检索更多数据 [SWS_Fr_00512]。 问题 Q-0ab7cac72ff7f549 (未决)
本使用说明由 AI 生成,并基于 AUTOSAR R20-11 规范。
实现者指南即将推出(复杂度 I1)
类型 Fr_SlotAssignmentType [SWS_Fr_91002] 📄 PDF
This structure contains information about the assignment of a Flex Ray frame to a cycle and a slot ID.
结构体 Fr_SlotAssignmentType 用于存储 FlexRay 帧与通信周期及时隙 ID 的分配信息 [SWS_Fr_91002]。它在头文件 Fr_GeneralTypes.h 中定义,并汇总了在 FlexRay 通道上发送或接收帧所需的所有寻址参数 [SWS_Fr_91002]。
该结构体包含以下元素 [SWS_Fr_91002]:
Cycle(类型uint8):标识发送或接收 FlexRay 帧的周期 [SWS_Fr_91002]。SlotId(类型uint16):表示该帧在 FlexRay 通信方案中的唯一时隙 ID [SWS_Fr_91002]。channelId(类型Fr_ChannelType):指定进行传输或接收的 FlexRay 通道 [SWS_Fr_91002]。
由于 Fr_SlotAssignmentType 是纯数据结构,它不具备同步性或重入性等自身的执行语义,其本身也不会触发 DET 或 DEM 错误消息 [SWS_Fr_91002]。所包含的周期、时隙和通道值的 consistency 应当由使用它的驱动函数负责(理解)。 问题 Q-77f88375e544e298 (未决)
本段文本由人工智能生成,且仅基于 AUTOSAR Classic R20-11 的规范数据。
类型 Fr_ChannelType [SWS_Fr_00514] 📄 PDF
FlexRay channel identifier: FR_CHANNEL_A, FR_CHANNEL_B, or FR_CHANNEL_AB.
Request a governed re-review of this record. The record is not changed immediately.
- Record
AUTOSAR/AP/record/CP_MOD_Fr- Status
- unspecified
- Version
AUTOSAR/AP/record/CP_MOD_Fr@rel:R20-11#102c21f5- Content hash
102c21f5- Source
- https://www.autosar.org/fileadmin/standards/R20-11/CP/AUTOSAR_SWS_FlexRayDriver.pdf#nameddest=SWS_Fr_00032
gemini-3.8-flash-low· 2026-10-13 · 德文原文