Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

probe-rs и cargo-embed

probe-rs — удобный набор инструментов для отладки встраиваемых систем, похожий на OpenOCD, но лучше интегрированный.

  • SWD (Serial Wire Debug) и JTAG через зонды CMSIS-DAP, ST-Link и J-Link
  • Заглушка GDB и сервер Microsoft DAP (Debug Adapter Protocol)
  • Интеграция с Cargo

cargo-embed — подкоманда cargo для сборки и прошивки бинарных файлов, вывода логов RTT (Real Time Transfers) и подключения GDB. Настраивается файлом Embed.toml в каталоге проекта.

  • CMSIS-DAP — стандартный протокол Arm поверх USB, который позволяет внутрисхемному отладчику обращаться к CoreSight Debug Access Port различных процессоров Arm Cortex. Именно его использует встроенный отладчик BBC micro:bit.
  • ST-Link — линейка внутрисхемных отладчиков от ST Microelectronics, J-Link — линейка от SEGGER.
  • Debug Access Port обычно представляет собой 5-контактный интерфейс JTAG или 2-контактный Serial Wire Debug.
  • probe-rs — библиотека, которую при желании можно интегрировать в собственные инструменты.
  • Microsoft Debug Adapter Protocol позволяет VSCode и другим IDE отлаживать код, выполняющийся на любом поддерживаемом микроконтроллере.
  • cargo-embed — бинарный файл, собранный с использованием библиотеки probe-rs.
  • RTT (Real Time Transfers) — механизм передачи данных между хостом отладки и целевым устройством через несколько кольцевых буферов.