Schulungsübersicht
Erste Schritte mit eingebettetem Rust
- Übersicht über no_std, core und die eingebettete Rust-Ökosysteme
- Auswahl eines Ziels und Verständnis von Zieltripeln
- Einrichtung von rustup, cargo und Zieltoolchains
Werkzeuge, Build- & Debug-Ablauf
- Verwenden von cargo, cargo-embed, probe-run und OpenOCD Workflows
- Flaschen und Debuggen mit Hardware-Proben (ST-Link, JLink)
- CI-Betrachtungen für die Erstellung von eingebettetem Rust-Firmware
Hardwareabstraktion und Peripheriezugriff
- Verständnis von embedded-hal-Traits und Treibermustern
- Peripheriezugriffs-Crates (PACs) und Gerätecrates (svd2rust)
- Schreiben und Verwenden von HAL-Treibern und Boardsupport-Crates (BSCs)
Speichersicherheit, Parallelität & Echtzeit
- Sicherheitsmuster für gemeinsame Zustände und veränderliche Referenzen in Interrupts
- RTIC und andere Parallelitätsmodelle für Echtzeitsysteme
- Heap vs. Stack-Verwendung, Allokatoren und Vermeidung dynamischer Allokation
Fehlerbehandlung, Test & Zuverlässigkeit
- Fehlerbehandlungs-Muster in eingeschränkten Umgebungen
- Unit-Testing auf dem Host vs. Integrations-Testing auf der Hardware
- Fehlanalysen, Logging und Post-mortem-Strategien
Leistung, Strom & Ressourcenoptimierung
- Benchmarking, Messung und Optimierung von heißen Pfaden
- Techniken zur Reduktion der Codesize und Linker-Skripte
- Stromverwaltungsstrategien und Low-Power-Design-Muster
Bereitstellung, Sicherheit & Ökosystem-Best Practices
- Secure Boot, Firmware-Signierung und Aktualisierungsstrategien
- Lieferkettengesichtspunkte und Abhängigkeitsmanagement
- Roadmap zur Migration von C-Firmware zu Rust und Community-Ressourcen
Zusammenfassung und Nächste Schritte
Voraussetzungen
- Verständnis der Kernkonzepte von Rust: Besitz, Leihen, Lebensdauer
- Erfahrung im Schreiben nicht trivialer Rust-Programme (fortgeschrittenes Rust)
- Vertrautheit mit eingebetteten Konzepten: memory-mapped I/O, Interrupts, Peripheriegeräte
Zielgruppe
- Eingebettete Firmware-Ingenieure, die Rust aufnehmen möchten
- Software-Ingenieure mit Rust-Erfahrung, die zu Low-Level-Systemen wechseln
- Technische Leiter, die Rust für eingebettete Produktentwicklung evaluiert
Erfahrungsberichte (5)
Er beantwortet meine Fragen sehr gut erklärt.
Khaled Almarzooqi - Beamtrail
Kurs - Circuits and Electronics Fundamentals
Maschinelle Übersetzung
Sean war ein dynamischer Redner und die praktischen Übungen waren sehr interessant. Ich kann sehen, wie sie sich wirklich anwenden lassen.
Temira Koenig - Yeshiva University
Kurs - Raspberry Pi for Beginners
Maschinelle Übersetzung
Dass der Trainer sich an unsere Bedürfnisse anpasst
Eduardo Fontecha - ORMAZABAL PROTECTION & AUTOMATION S.L.U.
Kurs - The Yocto Project - An Overview - hands-on
Maschinelle Übersetzung
Der Trainer war sehr freundlich und kenntnisreich und hat sich die Mühe gemacht, mir Dinge zu erklären, die ich nicht kannte.
Felix - Microchip Technology Inc
Kurs - Embedded C Application Design Principles for Automotive Professionals
Maschinelle Übersetzung
Die Erwerbung nützlicher Kenntnisse und Klarstellung einiger Dinge, die ich zuvor nicht sicher kannte.
Kenneth Mahoney - University of Glasgow
Kurs - Arduino: Programming a Microcontroller for Beginners
Maschinelle Übersetzung