AG
Все записи

Ограничения Rust в embedded

1 min read
RustC++Embeddedbare-metalКИХ

Ограничения Rust в embedded:

  • Сложность разработки из-за отсутствия полной поддержки bare-metal. Для работы без ОС часто требуется ручная настройка и адаптация crates.
  • Система borrow checker увеличивает время сборки, что замедляет итерации в крупных проектах.
  • Несмотря на extern "C", взаимодействие с существующими C-библиотеками может требовать дополнительных обёрток.

C++ универсален и пригоден для большинства embedded-задач благодаря оптимальному балансу между производительностью, контролем ресурсов и современными возможностями.

Для меня самый полезный пример embedded кода C++20 - Фильтр с Конечной Импульсной Характеристикой (КИХ). Он воплощает все полезные фичи C++20 и хорошо интегрируется с кодом. Посмотреть можно на моем GitHub.

  • Инкапсуляция в классе
  • Вычисление коэффициентов на этапе компиляции (constexpr)
  • Параметры фильтра устанавливаются через параметры шаблона