图4:XCP主设备和XCP从设备之间的通信
从汽车总线到标准PC接口
PC平台几乎只用作测量和标定的主设备。为了直接连接到汽车总线系统,比如CAN、LIN、 FlexRay、MOST 或 K-Line等,通常会为PC机安装一个或多个硬件接口。此外,XCP主设备也可以利用标准PC接口,例如以太网、USB和RS232等。当然,在这些解决方案中不会增加额外的硬件接口成本。带调试接口(JTAG,TRACE等)的测量和标定系统以及内存仿真器都可以通过这种方式实现。原则上,标准PC接口非常适合于连接存在于不同总线系统间的网关,比如FlexRay-on-Ethernet就可以很好地实现此功能。最后,在很多开发和测试计划中会使用到传统模拟和数字I/O通道,这些通道尤其会涉及时间-关键测量。
使用XCP的一个显著优势就在于这样一个单一标准协议满足了所有这些应用需求。如果没有XCP,就需要为每个通信通道定义一个专用的驱
动,然而在同时使用多种驱动时需要考虑性能损失,此外还会增加出现不受欢迎的相互影响的风险和不稳定性。
通用、可扩展并节约资源
一个,并且是同一个XCP驱动代码可以应用于所有的通信过程。它可以用于从低端控制器和接口发送仅仅几个字节的数据,比如集成了串行接口的8位处理器。同样的代码也可用于通过高速的网络(比如以太网)使用32位处理器发送兆字节量级的数据。XCP驱动是由强制功能和可选功能组成的,驱动的大小可以根据可用的ROM/Flash的大小进行调整。在ECU中,通过是否具有高数据吞吐量或低处理器负载和RAM尺寸来表征资源用量。