XCP (протокол)
XCP (или) «Универсальный протокол измерений и калибровки» — это сетевой протокол, происходящий от ASAM для подключения систем калибровки к электронным блокам управления, ЭБУ. Он обеспечивает доступ для чтения и записи к переменным и содержимому памяти микроконтроллерных систем во время выполнения. Целые наборы данных можно собирать или стимулировать синхронно с событиями, запускаемыми таймерами или условиями эксплуатации. Кроме того, XCP также поддерживает программирование флэш-памяти.
ASAM заявляет: «Основной целью XCP является настройка внутренних параметров и получение текущих значений внутренних переменных ECU . Первая буква X в XCP выражает тот факт, что протокол разработан для различных шинных систем». [1]
В 2003 году протокол был стандартизирован как «ASAM MCD-1 XCP». XCP является преемником протокола калибровки CAN ( CCP ), который был разработан еще в середине 1990-х годов. В то время CAN была доминирующей сетевой системой в автомобильной промышленности. Со временем появились другие шинные системы, такие как LIN , MOST и FlexRay , что потребовало расширения протокола на другие транспортные среды. Кроме того, XCP поддерживает синхронные и асинхронные последовательные интерфейсы. Используя Ethernet или USB в качестве транспортной среды, XCP также может служить стандартизированным интерфейсом для аналоговых измерительных устройств и преобразователей аппаратных интерфейсов в эмуляторы RAM, JTAG или другие интерфейсы отладки микроконтроллеров.
Из-за широкого спектра использования основной целью разработки XCP было достижение максимально экономичной реализации в ЭБУ и высокой масштабируемости функций и использования ресурсов. XCP можно реализовать даже на 8-битных микроконтроллерах для CAN или SCI с небольшими ресурсами, и он использует весь потенциал FlexRay или Ethernet на высокопроизводительных платформах.
Будучи двухуровневым протоколом, XCP последовательно отделяет протокольный и транспортный уровни друг от друга и придерживается концепции Single-Master/Multi-Slave. XCP всегда использует один и тот же уровень протокола независимо от транспортного уровня. Буква «X» в названии означает переменный и взаимозаменяемый транспортный уровень. В настоящее время по состоянию на октябрь 2016 года ASAM определяет следующие транспортные уровни как стандартные: [2]
- XCP на CAN
- XCP на CAN FD
- XCP на SxI ( SPI , SCI )
- XCP в Ethernet ( TCP/IP и UDP/IP )
- XCP на USB
- XCP на FlexRay
Помимо поддержки других транспортных уровней, преемник протокола CCP содержит множество функциональных улучшений, таких как: [2]
- Лучшее использование ресурсов в ECU
- Синхронная стимуляция данных
- Поддержка пусковых измерений
- Оптимизированная связь с помощью команд передачи блоков
- Plug & Play Конфигурация
- Более точный сбор данных измерений путем измерения меток времени в ЭБУ (ведомом)
XCP позволяет клиенту получать доступ к памяти ЭБУ, используя формат, определенный в отдельном файле A2L. Поскольку файл формата A2L содержит всю информацию для доступа к информации, код ЭБУ не нужно перекомпилировать для доступа к различным измерениям или калибровкам. [1]
Ссылки
[ редактировать ]- ^ Jump up to: а б «АСАМ МЦД-1 ХСР» . АСАМ. 30 ноября 2017 года . Проверено 21 ноября 2019 г.
- ^ Jump up to: а б Патцер, Андреас; Заайзер, Райнер (декабрь 2016 г.). XCP — Стандартный протокол для разработки ECU . Вектор . Проверено 21 ноября 2019 г.