CANoe CAPL TCP DoIP通信问题
目录
- 问题
- Class: TcpSocket
- demo示例
- client注释掉
- 配置TCP/IP stack
- 改demo代码
- 过滤IP,与需要的IP建立连接
问题
使用CANoe进行DoIP通信时,如果是标准的DoIP节点,可以使用DoIP相关函数进行通信。
以下两篇文章是按照此方式实现的。
十六、DoIP诊断通信 1 (专栏:从零开始搭建一个UDS诊断自动化测试CANoe工程)
十七、DoIP诊断通信 2 (专栏:从零开始搭建一个UDS诊断自动化测试CANoe工程)
如果TCP链接的建立不是由Tester主动发起,而是由控制器主动发起的话,控制器作为client,是不符合协议规定的方向的,这时候就不能直接使用DoIP相关函数了,只能通过TCP socket的方式去建立连接。
在我们使用TCP去建立连接的时候,ECU内部如果有两个不同的IP都需要建立TCP连接,CANoe是没办法在一个网络上实现的。
那我们也需要可以控制去与哪个IP建立连接,我们现在说的情况都是ECU主动建立TCP连接的情况,不是CANoe去主动建立连接。