Введение
Содержание материала
Это учебный материал Ferrous Systems «Embedded Rust на Espressif». Он разделён на два практикума: вводный и продвинутый. Вводный знакомит с основами разработки встраиваемых систем и с тем, как заставить плату взаимодействовать с внешним миром: реагировать на команды и отправлять данные с датчиков.
Продвинутый практикум развивает эти темы: обработка прерываний, низкоуровневый доступ к периферии и написание собственных драйверов.
Вы можете присоединиться к сообществу esp-rs в Matrix и задавать там любые технические вопросы. Сообщество открыто для всех.
⚠️ Эта книга использует экосистему
std(esp-idf-hal,esp-idf-sys,esp-idf-svc). Её поддерживает сообщество, и эти крейты официально не поддерживаются Espressif.Espressif официально поддерживает подход
no_stdчерезesp-hal. Эквивалентный материал для официально поддерживаемого подхода см. в курсе поno_std.
Переводы
Эта книга переведена добровольцами. Если вы хотите, чтобы ваш перевод был указан здесь, откройте PR с его добавлением.
Плата
Rust ESP Board обязательна1 для работы с этой книгой: эмуляторы вроде QEMU не поддерживаются.
Дизайн и изображения платы, распиновка и схемы также доступны в этом репозитории.
Если вы записались на один из курсов, плату вам предоставит Espressif.
Мы в первую очередь работаем с платформой ESP32-C3 — микроконтроллером на архитектуре RISC-V с широкими возможностями для IoT: встроенными Wi-Fi и Bluetooth 5 (LE), а также большими объёмами RAM и flash-памяти для сложных приложений. Значительная часть курса применима и к Xtensa, другой архитектуре Espressif, в частности к ESP32-S3. Общие принципы низкоуровневого доступа тоже сохраняются, но работа с конкретным железом во многом отличается. При необходимости обращайтесь к техническим справочным руководствам (C3, S3) или к другим техническим документам.
Знание Rust
- Базовый Rust, как в The Rust Book, главы 1–6. Глава 4 «Владение» не обязательна для полного понимания.
- The Rust on ESP Book не обязательна, но очень рекомендуется: она поможет разобраться в экосистеме Rust на ESP и во многих концепциях, которые будут разбираться на курсе.
-
Вводную часть можно пройти и на ESP32-C3-DevKitC-02, но мы этого не рекомендуем. Курс заметно проще проходить на том же оборудовании. ↩