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 eingebettetem Rust
- Überblick über das no_std-, core- und embedded-Rust-Ökosystem
- Auswahl eines Ziels und Verständnis von Target-Triplets
- Einrichtung von rustup, cargo und Zieltoolchains
Tooling, Build- & Debug-Arbeitsablauf
- Nutzung von cargo, cargo-embed, probe-run und OpenOCD
- Bespielen und Debuggen mit Hardware-Probes (ST-Link, JLink)
- CI-Aspekte beim Bauen von eingebetteter Rust-Firmware
Hardwareabstraktion und Peripheriezugriff
- Verständnis der embedded-hal-Traits und Treiber-Muster
- Peripheral Access Crates (PACs) und Device Crates (svd2rust)
- Schreiben und Nutzen von HAL-Treibern und Board Support Crates (BSCs)
Speichersicherheit, Nebenläufigkeit & Echtzeit
- Sichere Muster für gemeinsamen Zustand und mutable References bei Interrupts
- RTIC und andere Nebenläufigkeitsmodelle für Echtzeitsysteme
- Heap- versus Stack-Nutzung, Allocatoren und Vermeidung dynamischer Allokation
Fehlerbehandlung, Testen & Zuverlässigkeit
- Fehlerbehandlungsmuster in ressourcenbeschränkten Umgebungen
- Unit-Tests auf dem Host versus Integrationstests auf der Hardware
- Fehleranalyse, Logging und Post-Mortem-Strategien
Performance, Leistung & Ressourcenoptimierung
- Benchmarking, Messung und Optimierung kritischer Pfade
- Techniken zur Verkleinerung der Codegröße und Linker-Skripte
- Leistungsmanagementstrategien und Low-Power-Designmuster
Bereitstellung, Sicherheit & Best Practices des Ökosystems
- Sicherer Boot, Firmware-Signierung und Update-Strategien
- Supply-Chain-Aspekte und Abhängigkeitsmanagement
- Roadmap für die Migration von C-Firmware zu Rust sowie Community-Ressourcen
Zusammenfassung und nächste Schritte
Voraussetzungen
- Verständnis der grundlegenden Rust-Konzepte: Ownership, Borrowing, Lifetimes
- Praxiserfahrung im Schreiben nicht-trivialer Rust-Programme (mittlere Rust-Kenntnisse)
- Vertrautheit mit eingebetteten Konzepten: memory-mapped I/O, Interrupts, Peripheriegeräte
Zielgruppe
- Embedded-Firmware-Ingenieure, die Rust einführen möchten
- Softwareingenieure mit Rust-Erfahrung, die in den Bereich low-level systems wechseln möchten
- Technische Leiter, die Rust für die Entwicklung eingebetteter Produkte bewerten
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