Struttura del corso

Introduzione ai sistemi embedded Programming

  • Cosa sono i sistemi embedded?
  • Sfide e considerazioni nello sviluppo di sistemi embedded
  • Introduzione a Rust per sistemi embedded

Impostazione dell'ambiente di sviluppo

  • Installazione Rust per lo sviluppo di sistemi embedded
  • Configurazione degli strumenti e dell'ambiente di sviluppo
  • Esplorazione di piattaforme di sviluppo embedded e microcontroller

Rust Elementi essenziali del linguaggio per i sistemi embedded

  • Panoramica della sintassi Rust e dei concetti relativi ai sistemi embedded
  • Gestione e proprietà della memoria nella programmazione di sistemi embedded
  • Gestione degli interrupt e della programmazione di basso livello con Rust

Utilizzo di periferiche e driver di periferica

  • Interfacciamento con pin GPIO (General Purpose Input/Output)
  • Timer, contatori e PWM (Pulse Width Modulation)
  • Comunicazione UART (Universal Asynchronous Receiver-Transmitter)
  • Protocolli SPI (Serial Peripheral Interface) e I2C (Inter-Integrated Circuit)

Concorrenza e tempo reale Programming

  • Multitasking e concorrenza nei sistemi embedded
  • Meccanismi di sincronizzazione per i requisiti in tempo reale
  • Pianificazione in tempo reale e prioritizzazione delle attività in Rust

Astrazioni di basso livello e hardware Access

  • Utilizzo di registri mappati in memoria e accesso diretto all'hardware
  • Utilizzo delle librerie HAL (Hardware Abstraction Layer) in Rust
  • Implementazione di astrazioni di basso livello per un controllo hardware efficiente

Debug e test di applicazioni embedded

  • Tecniche e strumenti di debug per sistemi embedded
  • Test unitari e test di integrazione per applicazioni embedded
  • Profilatura e ottimizzazione del codice incorporato

Potenza Management e ottimizzazione a bassa potenza

  • Tecniche per la gestione dei consumi energetici nei sistemi embedded
  • Ottimizzazione del codice per il funzionamento a basso consumo

Considerazioni sulla sicurezza e sulla protezione

  • Sicurezza della memoria e procedure di codifica sicura nei sistemi embedded
  • Gestione degli errori e tolleranza ai guasti in Rust per sistemi embedded
  • Protocolli di comunicazione sicuri e crittografia nelle applicazioni embedded

Riepilogo e prossime tappe

Requisiti

  • Conoscenza di base dei concetti di programmazione
  • Familiarità con un linguaggio di programmazione (ad esempio C o C++)
  • Conoscenza dei microcontrollori e delle loro periferiche
  • Una conoscenza generale dello sviluppo di sistemi embedded

Pubblico

  • Gli sviluppatori
  • Ingegneri dei sistemi embedded
 21 ore

Numero di Partecipanti



Prezzo per Partecipante

Recensioni (4)

Corsi relativi

Combined C/C++, JAVA and Web Application Security

28 ore

Advanced Java Security

21 ore

Combined JAVA, PHP and Web Application Security

28 ore

Standard Java Security

14 ore

Categorie relative