Kursplan
Komme i gang med Embedded Rust
- Oversikt over no_std, core, og embedded Rust-økosystem
- Velge en målplattform og forstå målplattformstrenger
- Oppsette rustup, cargo, og målplattformskjedetøy
Verktøy, Bygging & Feilsøking
- Bruke cargo, cargo-embed, probe-run, og OpenOCD arbeidsflyter
- Flashing og feilsøking med maskinvaresondere (ST-Link, JLink)
- CI-overveielser for bygging av embedded Rust firmware
Hardwareabstraksjon og tilgang til periferienheter
- Forstå embedded-hal egenskapene og drivere
- Periferi tilgangsbibliotek (PACs) og enhetsbibliotek (svd2rust)
- Skrive og bruke HAL drivere og støttebibliotek for plater (BSCs)
Minnebeskyttelse, samhandling & sanntid
- Sikre mønstre for delt tilstand og mutable referanser i avbrudd
- RTIC og andre samhandlingsmodeller for sanntidsystemer
- Bruk av heap vs. stack, tilordner og unngå dynamisk tilordning
Feilbehandling, testing & pålitelighet
- Feilbehandlingsmønstre i begrensede miljøer
- Enhetstesting på vert vs. integrasjonstesting på maskinvare
- Feilanalyse, logging, og post-mortem strategier
Ytelse, strøm & ressursoptimalisering
- Benchmarking, måling og optimalisering av kritiske veier
- Teknikker for redusere kodestørrelse og linker-skript
- Strømstyringsstrategier og lavstrømsdesignmønstre
Utplassering, sikkerhet & beste praksiser for økosystem
- Sikker oppstart, firmware-signering, og oppdateringsstrategier
- Overveielser for forsyningskjeden og avhengighetsstyring
- Vegviser for å migrere C-firmware til Rust og ressurser fra samfunnet
Oppsummering og neste trinn
Krav
- Forståelse av kjernekonsepter i Rust: eierskap, låning, livstid
- Erfaring med å skrive ikke-trivielle Rust-programmer (mellomnivå Rust)
- Kjennskap med embeddet konsepter: minne-avbildet I/O, avbrudd, periferienheter
Målgruppe
- Embedded firmware-ingeniører som ønsker å overgå til Rust
- Programvareingeniører med Rust-erfaring som overgår til lavnivåsystemer
- Tekniske ledere som vurderer Rust for embedded produktutvikling
Referanser (5)
He answers my questions very well explained.
Khaled Almarzooqi - Beamtrail
Kurs - Circuits and Electronics Fundamentals
Sean was a dynamic speaker and the hands-on exercises were very interesting and I can see how they will be really applicable.
Temira Koenig - Yeshiva University
Kurs - Raspberry Pi for Beginners
That the trainer adapts to our needs
Eduardo Fontecha - ORMAZABAL PROTECTION & AUTOMATION S.L.U.
Kurs - The Yocto Project - An Overview - hands-on
Treneren var veldig snill og kunnskapsrik, og gikk den ekstra milen for å forklare ting jeg ikke visste
Felix - Microchip Technology Inc
Kurs - Embedded C Application Design Principles for Automotive Professionals
Maskinoversatt
The aquisition of useful knowlwdge and clarification of some things I was not sure of peviously.