0

我目前正在为诊断服务创建验收测试。

如何将值写入 DID 的内存?

示例测试步骤:

[SWC]

将 0x1A1B1C1D 写入 DID=0xFE88 的内存

[SWC] 表示这一步必须在 SWC 中进行。

谢谢!

4

2 回答 2

1

如何访问测试目标?可以调试吗?

  1. 我想到的第一种方法是在调试中运行,找到 DID 变量并直接修改值......

  2. 如果调试端口不可用,您可能会在映射文件中找到 DID 分配的地址,并且可以实现一个简单的 hack 程序通过将值写入该地址来准备值。

  3. 如果上述不合适,您可以使用 UDS 0x2E 服务(通过标识符写入数据)来修改 DID 值。这种方法不需要任何开发,只需要 UDS 服务。

于 2018-02-24T08:57:16.287 回答
1

对 DID 进行实际写入是 Dcm 的工作。Dcm 能够通过基于端口的连接从应用软件组件获取值,但软件组件永远不能直接写入 DID。

因此,您需要在将值馈送到 Dcm 服务组件公开的兼容 PortPrototype 的应用程序一侧定义一个 PortPrototype,并且需要将后者配置为将接收到的值放入正确的 DID 中。

于 2017-12-07T20:43:53.327 回答