我有一个情况 当我从独木舟发出诊断请求时。 ECU响应(响应已正确接收,但响应未决)。一段时间后,我从ECU得到了积极的回应。我只想通过删除响应未决响应将当前响应从当前总线发送到另一条总线。我该如何使用Capl做到这一点?
答案 0 :(得分:0)
您需要实现一个网关。即连接到两条总线的节点。对于一条总线,该节点充当另一总线的测试器(发送请求并侦听响应),该节点充当ECU。
您使用on diagResponse CAN1.*
监听一条总线中的响应,如果是肯定响应,则使用diagSendResponse CAN2.<responseMessage>
将其发送到另一条总线上
用实际的总线名称替换CAN1和CAN2。
还请检查名为 Diagnostics Gateway 的应用说明或CANoe随附的类似内容。
另一种选择是不在应用程序层上执行此操作,而是在数据层上执行此操作。即不是通过侦听和转发诊断消息,而是通过侦听传输的数据。 对您来说更有意义的取决于您的确切设置。但细节未知。