在汽车控制器开发的整个过程中,标定功能是必不可少的。在开发的过程中,可以通过标定协议和标定工具,直接改变正在运行的程序中全局变量的值,不需要进行重复的代码更改,编译,烧录,提高了开发效率。
XCP全称Universal Calibration Protocol,是由ASAM (Association for Standardization of Automation and Measuring Systems,简称 ASAM)组织在2003年提出的可在不同的通信总线上进行标定的新型标定协议,这里的X代表在不同的传输层上传输(CAN、Ethernet、FlexRay、SCI、SPI、USB)。
XCP是一种通用的标准协议,可以在各种操作系统中进行实现。通常,ECU使用的实时操作系统。
01
应用场景
(1)上传ECU数据,实现对ECU内部变量进行观测。
(2)在线对ECU内部变量进行标定。
(3)ECU刷写程序或数据。
(4)数据仿真,周期性下载数据至ECU,通常用于快速原型。
02
标准介绍
XCP标准主要分为五部分:
Part 1 – Overview
XCP协议概述,包括XCP的特点描述以及XCP协议的基本原理。
Part 2 – Protocol Layer Specification
对协议层进行详细的规范和说明,包括XCP数据包类型、格式以及各命令使用说明。
Part 3 – Transport Layer Specification
该部分包含5份文档,分别对应5个不同的传输层(CAN,Ethernet/TCP_IP,FlexRay,SPI,USB),规定不同总线下传输层的实现。
Part 4 – Interface Specification
该部分对A2L描述文件、秘钥与种子加解密、数据校验功能说明。