Vielen Dank für die Zusendung Ihrer Anfrage! Eines unserer Teammitglieder wird Sie in Kürze kontaktieren.
Vielen Dank, dass Sie Ihre Buchung abgeschickt haben! Eines unserer Teammitglieder wird Sie in Kürze kontaktieren.
Schulungsübersicht
Erste Schritte mit Embedded Rust
- Überblick über no_std, core und das Ökosystem für eingebettete Rust-Entwicklung
- Auswahl eines Ziels und Verständnis von Target Triples
- Einstellung von rustup, cargo und Toolchains für bestimmte Ziele
Tooling, Build- & Debug-Workflow
- Nutzung von cargo, cargo-embed, probe-run und OpenOCD-Workflows
- Firmware-Flashing und Debugging mit Hardware-Proben (ST-Link, JLink)
- Berücksichtigung von CI-Aspekten beim Bauen von Embedded-Rust-Firmware
Hardware-Abstraktion und Peripheriezugriff
- Verständnis der embedded-hal-Traits und Treiber-Muster
- Peripheriezugriff-Code-Bibliotheken (PACs) und Geräte-Code-Bibliotheken (svd2rust)
- Schreiben und Nutzen von HAL-Treibern und Board-Support-Code-Bibliotheken (BSCs)
Speicher Sicherheit, Parallelverarbeitung & Echtzeit
- Sichere Muster für geteilten Zustand und mutierbare Referenzen in Unterbrechungen
- RTIC und andere Parallelverarbeitungsmodelle für Echtzeitsysteme
- Nutzung von Heap gegenüber Stack, Allocatoren und Vermeidung dynamischer Zuweisung
Fehlerbehandlung, Testen & Zuverlässigkeit
- Fehlerbehandlungsmuster in ressourcenbeschränkten Umgebungen
- Unittests auf dem Host gegenüber Integrationstests auf der Hardware
- Fehleranalyse, Logging und Post-mortem-Strategien
Leistung, Leistungsaufnahme & Ressourcenoptimierung
- Benchmarks, Messung und Optimierung von Hot-Paths
- Techniken zur Reduzierung der Codegröße und Linker-Skripte
- Strategien für das Energiemanagement und Entwurfsmuster für niedrigen Stromverbrauch
Deployment, Sicherheit & Best Practices im Ökosystem
- Sicherer Boot, Firmware-Signierung und Update-Strategien
- Berücksichtigung der Lieferkette und Verwaltung von Abhängigkeiten
- Roadmap für die Migration von C-Firmware zu Rust und Community-Ressourcen
Zusammenfassung und nächste Schritte
Voraussetzungen
- Verständnis der zentralen Konzepte von Rust: Ownership, Borrowing, Lifetimes
- Erfahrung im Schreiben nicht-triviale Rust-Programme (Rust auf mittlerem Niveau)
- Vertrautheit mit Konzepten eingebetteter Systeme: Memory-Mapped I/O, Unterbrechungen, Peripheriegeräte
Zielgruppe
- Embedded-Firmware-Ingenieure, die Rust übernehmen möchten
- Software-Ingenieure mit Rust-Erfahrung, die in low-level-Systeme wechseln
- Technische Leiter, die Rust für die Entwicklung eingebetteter Produkte evaluieren
14 Stunden
Erfahrungsberichte (1)
Die Fähigkeit, auch fortgeschrittene Themen anzusprechen, selbst wenn sie zunächst nicht geplant waren.
Gabriel Chouinard - Spark Microsystems
Kurs - FreeRTOS: Programming for Real Time Operating Systems
Maschinelle Übersetzung