pyOCD
pyOCD — это пакет Python с открытым исходным кодом для программирования и отладки микроконтроллеров Arm Cortex-M. Он использует различные типы USB-отладочных зондов. Пакет полностью кроссплатформенный и поддерживает Linux, macOS и Windows.
Предоставляется инструмент командной строки, который охватывает большинство случаев использования, или вы можете использовать Python API для низкоуровневого управления целью. Общее применение Python API — запуск и управление CI-тестами.
Поддерживается более 70 популярных микроконтроллеров. Кроме того, благодаря использованию CMSIS-Packs поддерживается практически каждое устройство Cortex-M на рынке.
Инструмент командной строки pyocd даёт вам полный контроль над устройством с помощью следующих подкоманд:
API и инструменты предоставляют следующие функции:
Настройка и настройка поддерживаются через файлы конфигурации и пользовательские скрипты.
Требования
Статус
PyOCD функционально надёжен и полностью пригоден для использования.
Python API считается частично нестабильным, поскольку мы реструктурируем и очищаем его перед выпуском версии 1.0.
Документация
Документация pyOCD находится в каталоге docs/. Помимо руководств пользователя, вы можете создать справочную документацию с помощью Doxygen и предоставленного файла конфигурации (docs/Doxyfile).
Установка
Последнюю стабильную версию pyOCD можно установить через pip следующим образом:
$ pip install -U pyocd
Последняя версия пакета pyOCD доступна на PyPI, а также на GitHub.
Чтобы установить последнюю предварительную версию из HEAD основной ветки, вы можете сделать следующее:
$ pip install --pre -U https://github.com/mbedmicro/pyOCD/archive/master.zip
Вы также можете установить непосредственно из исходного кода, клонировав репозиторий git и запустив:
$ python setup.py install
Обратите внимание, что в зависимости от вашей операционной системы у вас могут возникнуть проблемы с разрешениями при выполнении этих команд. У вас есть несколько вариантов:
Для получения информации об установке и использовании на не-x86 системах, таких как Raspberry Pi, см. соответствующую документацию. Установка libusb
Libusb — это зависимость для всех поддерживаемых операционных систем. Pyusb — обычный пакет Python, который устанавливается вместе с pyOCD. Однако libusb представляет собой двоичную разделяемую библиотеку, которая не устанавливается автоматически через pip dependency management.
Способ установки libusb зависит от вашей ОС:
brew install libusb
.Правила udev в Linux
В Linux, особенно Ubuntu 16.04+, необходимо настроить правила udev, чтобы позволить pyOCD получать доступ к отладочным пробникам из пользовательского пространства. В противном случае вам придётся запускать pyOCD как root, используя sudo, что крайне не рекомендуется. (Никогда не запускайте pyOCD от имени root на любой ОС.)
Чтобы помочь с этим, примеры файлов правил udev включены в pyOCD в папке udev. Папка содержит подробные инструкции.
Поддержка целей
См. документацию по поддержке целей (docs/target_support.md), чтобы узнать, как проверить, есть ли у используемых вами микроконтроллеров встроенная поддержка, и как установить поддержку для дополнительных микроконтроллеров через CMSIS-Packs.
Автономный сервер GDB
После установки pyOCD через pip или setup.py вы сможете выполнить следующую команду, чтобы запустить сервер GDB на базе pyOCD:
$ pyocd gdbserver
Дополнительную помощь можно получить, выполнив команду pyocd gdbserver --help
.
Пример сеанса командной строки GDB, показывающий, как подключиться к работающему pyocd gdbserver
и загрузить прошивку:
$ arm-none-eabi-gdb application.elf
<gdb> target remote localhost:3333
<gdb> load
<gdb> monitor reset
Подкоманда pyocd gdbserver
также может использоваться в качестве замены OpenOCD в существующих установках. Основное отличие заключается в наборе команд монитора gdb.
Рекомендуемая настройка GDB и IDE
Рекомендуемый набор инструментов для разработки встраиваемых устройств Arm Cortex-M — GNU Arm Embedded, предоставляемый компанией Arm. GDB входит в этот набор инструментов.
Сервер GDB хорошо работает с Eclipse и подключаемыми модулями GNU MCU Eclipse. GNU MCU Eclipse полностью поддерживает pyOCD с включённым плагином отладки pyOCD.
Для просмотра значений периферийных регистров можно использовать встроенный просмотрщик регистров GNU MCU Eclipse или установить плагин Embedded System Register Viewer. Их можно установить внутри Eclipse, используя следующие адреса серверов обновлений программного обеспечения:
В Eclipse выберите пункт меню «Справка -> Установить новое программное обеспечение...». Затем либо нажмите кнопку «Добавить...» и заполните имя и URL-адрес сверху (по одному разу для каждого сайта), либо просто скопируйте URL-адрес в поле, где указано «введите или выберите сайт». Затем вы можете выбрать программное обеспечение для установки и нажать «Далее», чтобы начать процесс.
Настройка разработки
Инструкции по настройке среды разработки для pyOCD см. в руководстве для разработчиков (docs/developers_guide.md).
Вклад
Мы приветствуем вклад в pyOCD во всех областях. Подробные требования к вкладам см. в руководящих принципах вклада (CONTRIBUTING.md).
Чтобы сообщить об ошибках, создайте проблему в проекте GitHub.
Лицензия
PyOCD лицензирован с разрешительной лицензией. Лицензия Apache 2.0. Полный текст лицензии смотрите в файле LICENSE.
Copyright © 2006-2019 Arm Ltd и другие (см. отдельные исходные файлы).
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )