- 🍅 我是蚂蚁小兵,专注于车载诊断领域,尤其擅长于对CANoe工具的使用
- 🍅 寻找组织 ,答疑解惑,摸鱼聊天,博客源码,点击加入👉【相亲相爱一家人】
- 🍅 玩转CANoe,博客目录大全,点击跳转👉
🍅 🍅 🍅 🍅 🍅 🍅 🍅 🍅 🍅 🍅 🍅 🍅 🍅 🍅 🍅 🍅 🍅- 🍅KB 编号:KB0020260
- 🍅发布日期:2024-12-10
- 🍅阅读量:1394
- 🍅文章由AI自动生成,来源:https://support.vector.com/kb?id=kb_article_view&sys_kb_id=KB0020260
🍅 🍅 🍅 🍅 🍅 🍅 🍅 🍅 🍅 🍅 🍅 🍅 🍅 🍅 🍅 🍅 🍅
目录
- 📙 AUTOSAR ASRPDUIL - 通过 CAPL 实现用户自定义的端到端(E2EE)校验和报文计数器
- 问题:
- 解决方案:
- **Workaround:**
- 示例工程:
- 其他信息:
- 例如写代码片段:
- 记事本:
📙 AUTOSAR ASRPDUIL - 通过 CAPL 实现用户自定义的端到端(E2EE)校验和报文计数器
请注意,此文章是由机器基于英文版自动翻译的。更多详情
问题:
使用交互层 ASRPDUIL/ASRPDUIL2 时,IL 没有填入 E2EE 信号。可能是数据库出了问题,数据库中不包含必要的 E2EE 信息。在这种情况下,CANoe 无法自动填充这些标记。
解决方案:
您可能需要向数据库提供商检查是否已有更新/修正版本。修改 AUTOSAR 数据库并非易事,通常只能由数据库提供商考虑。
Workaround:
ASRPDUIL 提供了一个 CAPL 回调applPDUILTxPending,允许您直接在 CAPL 中实现自己的 E2EE 实现。如果在发送方节点的 CAPL 代码中指定了回调,交互层就会在总线上发送 PDU 之前调用它。在这里,您可以访问 PDU 的各种属性(name,ID,payloadLength, …)以及作为data[]数组的有效载荷。用户可以读写data[]数组。之后,PDU 经修改后可在总线上发送。
您可通过以下方式在 CANoe 帮助中找到该功能的细节说明:CAPL functions | AUTOSAR PDU IL | applPDUILTxPending
示例工程:
在该示例中,您可以找到 CANoe ≥ 11.0 的示例配置,演示如何使用回调。
其他信息:
如果您想使用另一个/自己的 E2EE CAPL 实现,而不是交互层实现,情况也很类似。如果数据库已正确填写并包含必要的 E2EE 信息。在这种情况下,您可以在"applPDUILTxPending - PDU FaultInjection Concerning Checksum (E2E) Calculation of the ASRPDUIL "中找到更多信息。
例如写代码片段:
(Shortened - please find a heavily commented version in the CAPL code of the sample configuration) dword applPDUILTxPending (dword busContext, dword longID, dword shortID, char name[], dword & aPayloadLength, byte data[]) { int i, j; byte xor; if(strncmp(name, "aPDU_1", elcount(name)) == 0 && aPayloadLength == 8) { data[6] = i & 0x0F; i++; i = i % 16; xor = 0x00; for(j = 0; j < 7; ++j) { xor = xor ^ data[j]; } data[7] = xor; } return 1; }记事本:
- 您可以在 CANoe 在线帮助中找到有关 ASRPDUIL 和可用功能的更多信息
- 请注意,CANoe 帮助中仅描述了 ASRPDUIL2 的功能。这些功能的前缀为 AR。如果使用 “ASRPDUIL”,函数的调用方式将有所不同,例如,不是
ARILFaultInj… 而是ILFaultInj… (参见 "交互层配置无法在仿真创建中打开")。 - 在数据库中配置的校验和计算之外,在 CAPL 中实现用户自定义的校验和计算由用户负责。在 CAPL 中执行自己的校验和计算时,Vector 支持助理无法提供帮助,请理解这一点
- CANoe 提供了不同的辅助功能(例如:
Crc_CalculateCRC8,对应于 Autosar Profile 1 计算),可以使用这些功能来减少用户方面的实施工作。但这些并不是根据特定 AUTOSAR 配置文件进行的全部实际校验和计算。通常还需要额外的步骤。关于实际校验和计算算法,您可以参考相应的规范(例如,AUTOSAR 规范可在https://www.autosar.org/上获取)。
- 🚩要有最朴素的生活,最遥远的梦想,即使明天天寒地冻,路遥马亡!
- 🚩如果这篇博客对你有帮助,请“点赞” “评论”“收藏” 一键三连哦!
📎 本文 PDF 原文: KB0020260_AUTOSAR_ASRPDUIL_-_通过_CAPL_实现用户自定义的端到端_E2EE_校验和报文计数器.pdf