Autosar E2E及其实现(基于E2E_P01)
发布网友
发布时间:2024-09-30 06:10
我来回答
共1个回答
热心网友
时间:2024-11-24 03:49
前言
E2E保护在高安全性信号传输中发挥关键作用。在信号传递过程中,软硬件因素可能导致发送端和接收端数据不一致,此时E2E能快速检测异常,确保系统响应。本文以Profile1为例,详细介绍相关定义和使用方法。
E2E依赖于CRC函数,如Crc_CalculateCRC8。
E2E开发错误包括:E2E_E_INPUTERR_NULL、E2E_E_INPUTERR_WRONG、E2E_E_INTERR、E2E_E_WRONGSTATE。
类型定义中,定义了E2E库可见的数据类型,如CounterOffset、CRCOffset、DataID、DataIDNibbleOffset等。其中,DataIDMode用于指明ID使用方式,如E2E_P01_DATAID_BOTH、E2E_P01_DATAID_ALT、E2E_P01_DATAID_LOW、E2E_P01_DATAID_NIBBLE。
E2E_P01ConfigType包含了CounterOffset、CRCOffset、DataID、DataIDNibbleOffset等属性,以及DataLength、MaxDeltaCounterInit、MaxNoNewOrRepeatedData、SyncCounterInit等参数。
E2E_P01DataIDMode详细介绍了不同ID配置选项,如E2E_P01_DATAID_BOTH、E2E_P01_DATAID_ALT、E2E_P01_DATAID_LOW、E2E_P01_DATAID_NIBBLE。
E2E_P01CheckStateType定义了LastValidCounter、MaxDeltaCounter、WaitForFirstData、NewDataAvailable、LostData、Status等状态属性。
E2E_P01CheckStatusType中,E2E_P01STATUS_OK、E2E_P01STATUS_NONEWDATA、E2E_P01STATUS_WRONGCRC、E2E_P01STATUS_SYNC、E2E_P01STATUS_INITIAL、E2E_P01STATUS_REPEATED、E2E_P01STATUS_OKSOMELOST、E2E_P01STATUS_WRONGSEQUENCE等状态描述了数据验证结果。
函数定义包括E2E_P01Protect、E2E_P01ProtectInit、E2E_P01Check、E2E_P01CheckInit、E2E_P01MapStatusToSM等。
数据流发送接收涉及配置项解释,并提供发送和接收步骤示例。
代码实现包括发送与接收过程,确保CRC和计数器正确计算与验证。
总结:E2E作为功能安全实现的核心,有效保护数据传输安全,适用于对安全有高要求的场景。