Approfondire le conoscenze dei microcalcolatori acquisite con il corso “Microcalcolatori 1” con l’analisi di dettagli implementativi utilizzati nelle architetture moderne concernenti l’ottimizzazione dell’esecuzione e con lo studio delle periferiche più evolute integrate nei microcontrollori. Conoscere tecnica del pipelining utilizzata nelle architetture moderne. Conoscere cosa sono le memorie cache, come sono organizzate, ed essere in grado di valutarne i vantaggi e gli svantaggi del loro uso. Studiare i protocolli di comunicazione seriale sincrono SPI e I2C e sapere come funzionano le omonime periferiche integrate in un microcontrollore, in particolare per quanto riguarda la loro configurazione ed il loro utilizzo in applicazioni pratiche. Studiare i principi di conversione di un segnale analogico in digitale e viceversa ed essere in grado di svolgere queste conversioni con un microcontrollore sfruttando le periferiche ADC e DAC integrate nel microcontrollore in applicazioni partiche. Analizzare la periferica DMA, valutare quando il suo utilizzo porta dei benefici tangibili ed essere in grado di configurarla ed utilizzarla per ottimizzare l’uso della CPU. Realizzare, debuggare, e testare applicazioni di complessità crescente, utilizzando tutte le periferiche studiate, e facendo in modo che le applicazioni sviluppate siano ottimizzate in termini d’esecuzione.