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.
Dauer 14 Stunden
Schulungsübersicht
Erste Schritte mit Embedded Rust
- Überblick über das no_std-, core- und embedded-Rust-Ökosystem
- Auswahl eines Ziels und Verständnis von Target-Triple
- Einstellung von rustup, cargo und Target-Toolchains
Werkzeuge, Build- und Debugging-Workflow
- Verwendung von cargo, cargo-embed, probe-run und OpenOCD-Workflows
- Flashen und Debugging mit Hardware-Probes (ST-Link, JLink)
- CI-Erważungen für den Build von Embedded-Rust-Firmware
Hardware-Abstraktion und Peripherie-Zugriff
- Verständnis der embedded-hal-Traits und Muster für Treiber
- Peripherie-Zugriff-Crates (PACs) und Device-Crates (svd2rust)
- Schreiben und Verwenden von HAL-Treibern und Board-Support-Crates (BSCs)
Speichersicherheit, Parallelität & Echtzeit
- Sichere Muster für gemeinsame Zustände und mutable Referenzen in Interrupts
- RTIC und andere Parallelitätsmodelle für Echtzeitsysteme
- Verwendung von Heap vs. Stack, Allocator und Vermeidung dynamischer Zuweisung
Fehlerbehandlung, Tests & Zuverlässigkeit
- Muster für die Fehlerbehandlung in ressourcenbeschränkten Umgebungen
- Unit-Tests auf dem Host vs. Integrationstests auf der Hardware
- Fehleranalyse, Logging und Post-mortem-Strategien
Performance, Energie & Ressourcenoptimierung
- Benchmarking, Messung und Optimierung von Hot-Spots
- 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, Signieren der Firmware und Update-Strategien
- Erwägungen zur Lieferkette und Abhängigkeitsmanagement
- Roadmap für die Migration von C-Firmware auf Rust und Ressourcen der Community
Zusammenfassung und nächste Schritte
Voraussetzungen
- Verständnis der zentralen Rust-Konzepte: Ownership, Borrowing, Lebensdauern (Lifetimes)
- Erfahrung beim Schreiben nicht-triviale Rust-Programme (fortgeschrittenes Rust-Niveau)
- Vertrautheit mit Embedded-Konzepten: memory-mapped I/O, Interrupts, Peripheriegeräte
Zielgruppe
- Embedded-Firmware-Ingenieur:innen, die Rust einführen möchten
- Software-Entwickler:innen mit Rust-Erfahrung, die den Übergang zu niedrigschichtigen Systemen planen
- Technische Leiter:innen, die die Eignung von Rust für die Entwicklung von Embedded-Produkten bewerten
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