20802093 - ELETTRONICA DEI SISTEMI PROGRAMMABILI

L’insegnamento consente allo studente di apprendere e applicare le tecniche di progettazione dei sistemi digitali in generale e di approfondire in particolare gli aspetti che riguardano l’implementazione tramite piattaforme programmabili. Il corso analizza la struttura tipica e la tecnologia dei moderni componenti elettronici programmabili, sviluppa la capacità di progettare un sistema elettronico digitale dalle specifiche fino all’implementazione e alla verifica sperimentale del comportamento, la capacità di redazione di un rapporto tecnico relativo al progetto e alla caratterizzazione di un componente o sistema elettronico digitale.
scheda docente | materiale didattico

Programma

Introduzione
-Classificazione dei dispositivi e sistemi elettronici per applicazioni embedded
-Tecnologie e campi di applicazione

Richiami sui sistemi di numerazione e tipi di dati
-Numeri binari ed esadecimali
-Conversioni e operazioni tra numeri binari ed esadecimali
-Rappresentazione binaria di numeri interi
-Rappresentazione binaria di numeri reali

Programmazione embedded in linguaggio C
-Programmazione ad alto livello
-Compilatori
-Struttura di programmi C
-Esempi

Introduzione all’architettura ARM e alla famiglia di microcontrollori STM32
-Introduzione ai processori Cortex e Cortex-M
-Introduzione ai microcontrollori STM32
-Scheda di sviluppo Nucleo

Toolchain
-Ambiente di sviluppo STM32CubeIDE
-Tool di configurazione STM32CubeMX
-Debugging

Hardware Abstraction Layer
-Interfacciamento digitale (GPIO)
-Gestione degli Interrupt
-Clock System
-Accesso diretto alla memoria (DMA)
-Timer e Real-Time Clock
Interfacce seriali (USART)
-Analog-To-Digital Conversion
-Digital-To-Analog Conversion
-I2C
-SPI
-CAN-bus

Progettazione di sistemi embedded
-Esercitazioni
-Sviluppo di progetti

Testi Adottati

Libro di testo consigliati:

Appunti a cura del docente

Joseph You, “The Definitive Guide to ARM® Cortex®-M3 and Cortex®-M4 Processors,” Third Edition 2014, Elsevier, 2014, ISBN 978-0-12-408082-9, https://doi.org/10.1016/C2012-0-01372-5

Carmine Noviello, “Mastering STM32 - Second Edition, A step-by-step guide to the most complete ARM Cortex-M platform, using the official STM32Cube development environment,” Leanpub, 2022, http://leanpub.com/mastering-stm32-2nd



Modalità Valutazione

Sviluppo di progetti basati su sistemi programmabili: - Argomenti assegnati oppure proposti - Svolti individualmente durante l’ultima parte del corso Relazione finale da presentare in occasione della prova orale

scheda docente | materiale didattico

Programma

Introduzione ai sistemi programmabili:
Classificazione dei sistemi programmabili
Campi di applicazione

Richiami di elettronica digitale:
Reti logiche
Circuiti combinatori
Circuiti sequenziali
Logiche programmabili

Sistemi di numerazione e tipi di dati:
Numeri binari ed esadecimali
Conversioni e operazioni tra numeri binari ed esadecimali
Rappresentazione binaria di numeri interi
Rappresentazione binaria di numeri reali

Organizzazione di un microcomputer:
Struttura di base
Microcontrollori vs. microprocessori
CPU
Bus
Organizzazione della memoria
Organizzazione dell’I/O
Instruction set
Introduzione agli interrupt

Programmazione embedded in linguaggio assembly:
Programmazione a basso livello
Assembler
Caratteristiche delle istruzioni assembly
Operazioni di moltiplicazione e divisione
Allocazione dati e variabili
Subroutines e Interrupt Service Routines

Programmazione embedded in linguaggio C:
Programmazione ad alto livello
Compilatori
Struttura di programmi C
Esempi
Integrazione di codice C e assembly

Principi base di interfacciamento:
Alimentazione
Clock
Power-on reset
Bootstrap

Periferiche embedded:
Tipologie di interrupt
Gestione degli interrupt
Timer e contatori
Memorie embedded
Arbitraggio del bus
Accesso diretto alla memoria (DMA)

Interfacciamento con il mondo esterno:
Porte di ingresso-uscita general purpose (GPIO)
Interfacciamento di dispositivi tramite GPIO
Interfacciamento di interruttori e pulsanti
Interfacciamento di LED
Interfacciamento di display
Interfacciamento di carichi in corrente continua
Interfacciamento di carichi in corrente alternata
Interfacciamento di motori

Comunicazione seriale:
Comunicazione di dati
Tipologie di canali seriali
UART
USB
SPI
I2C
1-Wire

Elaborazione di segnali analogici:
Sensori, Interfacciamento e condizionamento dei segnali
Amplificatori Operazionali
Comparatori
Campionamento
Convertitori ADC e DAC

Testi Adottati

Libro di testo consigliati:

Manuel Jiménez, Rogelio Palomera, Isidoro Couvertier, “Introduction to Embedded Systems: Using Microcontrollers and the MSP430“, Springer Science & Business Media, 11 set 2013.

Paolo Spirito, “Elettronica digitale”, McGraw-Hill Companies, 2002.


Materiale per le esercitazioni:

PAGINA WEB SCHEDA DI SVILUPPO - Texas Instruments MSP-EXP430FR5739
http://www.ti.com/tool/msp-exp430fr5739

GUIDA SCHEDA DI SVILUPPO - MSP-EXP430FR5739 Experimenter Board User's Guide (Rev. B)
http://www.ti.com/lit/ug/slau343b/slau343b.pdf

GUIDA MICROCONTROLLORE- MSP430FR57xx Family User's Guide (Rev. C)
http://www.ti.com.cn/cn/lit/ug/slau272c/slau272c.pdf

DATASHEET MICROCONTROLLORE - MSP430FR573x Mixed-Signal Microcontrollers (Rev. J)
http://www.ti.com/lit/ds/slas639j/slas639j.pdf

AMBIENTE DI SVILUPPO -Texas Instruments Code Composer Studio (IDE) v5 Windows/Linux
http://www.ti.com/tool/ccstudio

Bibliografia Di Riferimento

Libro di testo consigliati: Manuel Jiménez, Rogelio Palomera, Isidoro Couvertier, “Introduction to Embedded Systems: Using Microcontrollers and the MSP430“, Springer Science & Business Media, 11 set 2013. Paolo Spirito, “Elettronica digitale”, McGraw-Hill Companies, 2002. Materiale per le esercitazioni: PAGINA WEB SCHEDA DI SVILUPPO - Texas Instruments MSP-EXP430FR5739 http://www.ti.com/tool/msp-exp430fr5739 GUIDA SCHEDA DI SVILUPPO - MSP-EXP430FR5739 Experimenter Board User's Guide (Rev. B) http://www.ti.com/lit/ug/slau343b/slau343b.pdf GUIDA MICROCONTROLLORE- MSP430FR57xx Family User's Guide (Rev. C) http://www.ti.com.cn/cn/lit/ug/slau272c/slau272c.pdf DATASHEET MICROCONTROLLORE - MSP430FR573x Mixed-Signal Microcontrollers (Rev. J) http://www.ti.com/lit/ds/slas639j/slas639j.pdf AMBIENTE DI SVILUPPO -Texas Instruments Code Composer Studio (IDE) v5 Windows/Linux http://www.ti.com/tool/ccstudio

Modalità Erogazione

Lezioni frontali ed esercitazioni in aula

Modalità Valutazione

La verifica dell'apprendimento avviene attraverso due modalità distinte, a scelta dello studente: a. Sviluppo e discussione di un progetto, concordato con il docente, di un sistema elettronico basato su microcontrollore. b. Esame orale sul programma completo del corso.