66594

[i] Зачем программатор CMSIS-DAP переходит на протокол v2?


Зачем для выпускаемого устройства "Комплект универсального программатора для микросхем с ядром CORTEX-M и архитектурой RISC ТСКЯ.468998.109" была разработана новая версия программного обеспечения, обеспечивающего работу с протоколом CMSIS-DAP v2?

Программатор CMSIS-DAP от "Миландр" изначально работал по протоколу CMSIS-DAP v1, который является проверенным, стабильным, но не самым быстрым решением. Мы решили переработать программное обеспечение программатора под работу с протоколом CMSIS-DAP v2.

Главная проблема

Протокол v1 передаёт данные через USB-класс HID - тот же механизм, что и у клавиатуры или мыши. Такое применение надежно, однако, оно не рассчитано на быструю передачу больших объёмов данных: жесткое ограничение на объем порции данных и обмен через фиксированные промежутки времени. Это приводит к тому, что отладка части микроконтроллеров выполняется крайне медленно, вплоть до очень долгих пауз между точками останова.

Протокол v2 для работы использует транзакции BULK (класс Vendor) - механизм, изначально созданный для быстрого обмена данными. Ограничения v1 в нём отсутствуют, шина USB используется гораздо эффективнее.

Важно отметить, что сама компания ARM, автор стандарта CMSIS-DAP, официально считает протокол v1 устаревшим и рекомендует для новых разработок закладывать актуальную версию v2.

Что мы сделали

  • Реализовали протокол v2 в прошивке программатора, получив ощутимый прирост (в несколько раз) скорости программирования и отладки.
  • Увеличили максимальную длину цепочки JTAG с 8 до 16 устройств для сценариев с несколькими микросхемами на одной плате.
  • Сохранили полную обратную совместимость с версией v1: программатор одновременно поддерживает обе версии протокола. Ваши текущие скрипты, сторонние утилиты и рабочие процессы, рассчитанные на v1, продолжат работать без изменений - переходить на v2 можно постепенно, когда это будет удобно.

Заодно обновили и программу для ПК

Пока работали над v2, обновили и саму программу CMSIS-DAP, доступную на сайте:

  • Полностью переработан графический интерфейс.
  • Добавлена тёмная тема - переключение "на лету".
  • К вопросу о том, как обновиться, мы сообщаем, что обновление прошивки программатора доступно прямо из интерфейса программы (с возможностью выполнить откат к старой версии), с проверкой текущего подключения.
  • Добавлен выбор загрузчиков для микросхем в металлокерамическом и пластиковом корпусах. Загрузчики при этом переботаны.
  • Переработан раздел "Справка" - более понятные формулировки, актуальное описание функций.
  • Улучшена работа интерфейса при разных масштабах экрана.
  • Улучшена работа с HEX-файлами различного форматирования.
  • Множество косметических изменений для лучшего опыта взаимодействия: понятные подписи полей ввода, исправленные значения по умолчанию, более ясные сообщения программы.

Полный список изменений представлен в файле changelog.txt, который поставляется вместе с программой.

Где скачать?

Как и всегда, все программное обеспечение, выпускаемое компанией "Миландр", доступно для загрузки на официальном сайте компании.

По вопросам технической поддержки, замечаниям и предложениям - support@milandr.ru


Был ли ответ полезным?