Kursplan
Kom igång med inbyggd Rust
- Översikt över no_std, core och ecosystemet för inbyggd Rust
- Välja en målplattform och förstå target triples (måltrippler)
- Konfigurera rustup, cargo och måltoolchains
Verktyg, bygg- & felsökningsarbetsflöde
- Använda cargo, cargo-embed, probe-run och OpenOCD-arbetsflöden
- Flashning och felsökning med hårdvaruprob (ST-Link, JLink)
- CI-overväganden för att bygga inbyggd Rust-firmware
Hårdvaraabstraktion och periferiåtkomst
- Förstå embedded-hal-egenskaper och drivrutinsmönster
- Periferiåtkomscrat (PACs) och enhetscrat (svd2rust)
- Skriva och använda HAL-drivrutiner och board support crates (BSCs)
Minnessäkerhet, samtidighet & realtid
- Säkra mönster för delat tillstånd och muterbara referenser i avbrott
- RTIC och andra samtidighetsmodeller för realtidsystem
- Heap vs. stack-användning, allokatörer och undvikande av dynamisk allokeringsanvändning
Felhantering, testning & pålitlighet
- Felhanteringsmönster i begränsade miljöer
- Enhetstestning på värd vs. integrationstestning på hårdvara
- Felanalys, loggning och post-mortem-strategier
Prestanda, energi & resursoptimisering
- Mätning och optimering av kritiska sökvägar
- Tekniker för kodstorleksreduktion och länkarskript
- Energihanteringsstrategier och mönster för låg-energi-design
Distribuering, säkerhet & ecosystemets bästa praxis
- Säker start, firmware-signering och uppdateringsstrategier
- Leveranskedjans överväganden och beroendehantering
- Vägledning för att migrera C-firmware till Rust och gemenskapens resurser
Sammanfattning och nästa steg
Krav
- Förståelse för grundläggande Rust-koncept: ägande, låning, livstider
- Erfarenhet av att skriva icke-triviala Rust-program (avancerad Rust)
- Kännedom om inbyggda koncept: minnesmappning, avbrott, periferier
Målgrupp
- Inbyggda firmware-utvecklare som vill använda Rust
- Programvaruutvecklare med erfarenhet av Rust som övergår till lågnivåsystem
- Tekniska ledare som utvärderar Rust för inbyggd produktutveckling
Vittnesmål (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
Tränaren var verkligen snäll och kunnig och gick den extra milen för att förklara saker som jag inte visste
Felix - Microchip Technology Inc
Kurs - Embedded C Application Design Principles for Automotive Professionals
Maskintolkat
The aquisition of useful knowlwdge and clarification of some things I was not sure of peviously.