Prenez contact avec nous

Plan du cours

Démarrage avec Rust embarqué

  • Aperçu de l'écosystème Rust embarqué, no_std et core
  • Choix de la cible et compréhension des triplets de cible
  • Configuration de rustup, cargo et des chaînes d'outils de cible

Outils, flux de compilation et de débogage

  • Utilisation des flux de travail cargo, cargo-embed, probe-run et OpenOCD
  • Flashez et déboguez avec des sondes matérielles (ST-Link, JLink)
  • Considérations CI pour la construction du micrologiciel Rust embarqué

Abstraction du matériel et accès aux périphériques

  • Compréhension des traits embedded-hal et des motifs de pilote
  • Crates d'accès aux périphériques (PAC) et crates de dispositifs (svd2rust)
  • Écriture et utilisation des pilotes HAL et des crates de support de carte (BSC)

Sûreté de la mémoire, concurrence et temps réel

  • Modèles sûrs pour les états partagés et les références mutables dans les interruptions
  • RTIC et autres modèles de concurrence pour les systèmes temps réel
  • Utilisation de la pile vs tas, allocateurs et évitement de l'allocation dynamique

Gestion des erreurs, tests et fiabilité

  • Modèles de gestion des erreurs dans les environnements contraints
  • Tests unitaires sur l'hôte vs tests d'intégration sur le matériel
  • Analyse des défauts, journalisation et stratégies post-mortem

Performance, consommation et optimisation des ressources

  • Évaluation des performances, mesure et optimisation des chemins critiques
  • Techniques de réduction de la taille du code et scripts d'éditeur de liens
  • Stratégies de gestion de l'alimentation et motifs de conception basse consommation

Déploiement, sécurité et meilleures pratiques de l'écosystème

  • Démarrage sécurisé, signature du micrologiciel et stratégies de mise à jour
  • Considérations sur la chaîne d'approvisionnement et gestion des dépendances
  • Feuille de route pour la migration du micrologiciel C vers Rust et ressources communautaires

Résumé et prochaines étapes

Pré requis

  • Compréhension des concepts fondamentaux de Rust : propriété, emprunt, durée de vie
  • Expérience dans l'écriture de programmes Rust non trivial (Rust intermédiaire)
  • Connaissance des concepts embarqués : E/S mappées en mémoire, interruptions, périphériques

Public cible

  • Ingénieurs en micrologiciel embarqué souhaitant adopter Rust
  • Ingénieurs logiciels avec de l'expérience en Rust qui souhaitent passer aux systèmes bas niveau
  • Chefs techniques évaluant Rust pour le développement de produits embarqués
 14 Heures

Nombre de participants


Prix par participant

Nos clients témoignent (1)

Cours à venir

Catégories Similaires