Настройка среды разработки
Работа с микроконтроллерами требует нескольких инструментов: нам предстоит иметь дело с архитектурой, отличной от архитектуры вашего компьютера, и запускать и отлаживать программы на «удалённом» устройстве.
Документация
Но инструменты — не всё. Без документации работать с микроконтроллерами практически невозможно. Официальная техническая документация MB2 находится по адресу https://tech.microbit.org. В книге мы будем ссылаться и на другую техническую документацию.
Инструменты
Мы будем использовать все перечисленные ниже инструменты. Там, где минимальная версия не указана, должна подойти любая свежая версия, но мы указываем версию, которую проверяли сами.
-
Rust 1.79.0 или более новый тулчейн.
-
gdb-multiarch. Это отладчик. Самая старая проверенная версия — 10.2, но и другие версии, скорее всего, тоже подойдут. Еслиgdb-multiarchнедоступен в вашем дистрибутиве или платформе, подойдёт иarm-none-eabi-gdb. Кроме того, некоторые обычные сборкиgdbподдерживают несколько архитектур: подробнее об этом рассказано в главе про отладку этой книги. -
cargo-binutils. Версия 0.3.6 или новее. -
probe-rs-tools. Версия 0.24.0 или новее. -
minicomв Linux и macOS. Проверенная версия: 2.7.1. Другие версии, скорее всего, тоже подойдут. -
PuTTYв Windows.
Далее выполните универсальные инструкции по установке некоторых инструментов:
rustc и Cargo
Установите rustup, следуя инструкциям на https://rustup.rs.
Если rustup у вас уже установлен, убедитесь, что вы используете канал stable и что ваш стабильный тулчейн обновлён. Команда rustc -V должна выводить дату и версию не старше той, что показана ниже:
$ rustc -V
rustc 1.79.0 (129f3b996 2024-06-10)
cargo-binutils
$ rustup component add llvm-tools
$ cargo install cargo-binutils --vers '^0.3'
$ cargo size --version
cargo-size 0.3.6
probe-rs-tools
ПРИМЕЧАНИЕ Если в системе уже установлены старые версии probe-run, probe-rs или cargo-embed, удалите их перед этим шагом: они могут впоследствии вызвать проблемы. В частности, probe-run официально больше не существует. При необходимости попробуйте такие команды:
$ cargo uninstall cargo-embed
$ cargo uninstall probe-run
$ cargo uninstall probe-rs
$ cargo uninstall probe-rs-cli
Чтобы установить probe-rs-tools, перейдите на https://probe.rs и следуйте актуальным инструкциям по установке.
-
ПРИМЕЧАНИЕ Если вы предпочитаете установить
probe-rs-toolsчерезcargo install, можно попробовать следующие шаги. С этим способом часто возникают сбои, но попробовать его вы можете.-
Обновите Rust до самой свежей стабильной версии.
-
Установите необходимые зависимости для
probe-rs-tools. (Ссылка ведёт на часть общей документацииprobe-rs, набора инструментов для отладки встраиваемых систем.) -
Попробуйте установку:
$ cargo install --locked probe-rs-tools
-
Установка probe-rs-tools поставит несколько полезных инструментов, в том числе probe-rs и cargo-embed (который обычно запускается как команда Cargo). Перед тем как двигаться дальше, проверьте, что всё работает.
$ cargo embed --version
cargo-embed 0.24.0 (git commit: crates.io)
Этот репозиторий
Книга также содержит небольшие проекты на Rust, которые используются в разных главах. Проще всего воспользоваться ими, скачав исходный код книги. Сделать это можно одним из следующих способов:
-
Откройте репозиторий, нажмите зелёную кнопку «Code», а затем «Download ZIP». Книга находится в каталоге
discovery-mb2. -
Склонируйте его с помощью
git(если вы знаетеgit, он у вас, скорее всего, уже установлен) из того же репозитория, который указан выше для ZIP-архива.
Инструкции для конкретной ОС
Теперь следуйте инструкциям для вашей операционной системы: