XCP(Universal Measurement and Calibration Protocol)模块为汽车 ECU 提供测量(Measurement)和标定(Calibration)能力。R4.2.1 起 Xcp 不再限于"ECU 开发用"。
Xcp / XCP / CAN / FlexRay / Ethernet / SPI / DAQ / STIM / CTO / DTO / A2L / Flash / PGM / Memory / Resource Protection
[1] AUTOSAR SWS CAN Interface
[2] AUTOSAR SWS FlexRay Interface
[2] AUTOSAR SWS Ethernet Interface
[4] AUTOSAR SWS Socket Adaptor
[5] AUTOSAR SRS XCP
[6] ASAM XCP Specification (Part 1 - 5)
Xcp 应:
Xcp 依赖:CanIf / FrIf / EthIf / SoAd / Spi(传输层)/ Det(开发错误)。
Xcp 协议分两层:
Xcp 资源保护状态机:
void Xcp_Init(const Xcp_ConfigType* ConfigPtr):初始化。
void Xcp_DeInit(void):去初始化。
Std_ReturnType Xcp_Connect(void):连接主控机。
Std_ReturnType Xcp_Disconnect(void):断开。
Std_ReturnType Xcp_DaqListStart(uint16 DaqListNumber):启动 DAQ 列表。
Std_ReturnType Xcp_DaqListStop(uint16 DaqListNumber):停止 DAQ 列表。
Std_ReturnType Xcp_DaqListConfigure(uint16 DaqListNumber, uint16 EventChannel, uint8 Prescaler, uint8 DtoCount):配置 DAQ 列表。
Std_ReturnType Xcp_StimListStart(uint16 StimListNumber):启动 STIM 列表。
Std_ReturnType Xcp_StimListStop(uint16 StimListNumber):停止 STIM 列表。
Std_ReturnType Xcp_FlashProgramStart(void):启动 Flash 编程。
Std_ReturnType Xcp_FlashProgramStop(void):停止 Flash 编程。
void Xcp_GetVersionInfo(Std_VersionInfoType* versioninfo):获取版本信息。
Xcp 配置类:
XCP_E_UNINIT:模块未初始化。
XCP_E_PARAM_POINTER:参数指针为空。
XCP_E_PARAM:参数无效。
XCP_E_INVALID_STATE:状态无效。
XCP_E_BUSY:模块忙。
校对轮次:L1 自动校对(2026-06-13)