Obiettivi del Corso
Il corso mira all’acquisizione degli elementi di base per la realizzazione di applicazioni software su sistemi embedded fornendo un’introduzione alle principali architetture ed ambienti software per lo sviluppo di applicazioni, con riferimento a sistemi embedded di piccole e medie capacità elaborative, nonché a quelle maggiormente diffuse.
Sinottico delle lezioni
Teoria | Esercitazioni | Materiale Didattico | |
---|---|---|---|
Week 1 | L1(3h): Introduzione ai sistemi embedded. Architetture hardware e software comuni. Problematiche principali nel programmare sistemi embedded. L2(2h): Macchine combinatorie e macchine sequenziali. Macchine sequenziali in logica cablata e in logica programmata. |
Dispense |
|
Week 2 | L3(2h): Presentazione del sistema STM32F4 utilizzato nel corso. |
P1(3h): Progettazione e Realizzazione di una macchina sequenziale in logica programmata. |
Slides |
Week 3 | L4(4h): L’acquisizione e l’attuazione. Sensori ed attuatori binari: diodi led, relè, pulsanti. Il problema del bouncing: soluzioni hardware e software. Resistenze di Pull-up e Pull-down. Introduzione al GPIO. Open Collector Bus. |
P2(1h): Utilizzo di sensori ed attuatori di base su STM32F4 |
|
Week 4 | L5(3h): Comunicazione Seriale. Protocolli seriali asincroni: RS-232 Protocolli seriali sincroni: SPI, I2C Interfacce comuni: TTL, UART |
P3(2h): Utilizzo dei protocolli seriali su STM32F4 per la comunicazione con RTC. |
Esercizi |
Week 5 | Lab1(5h): Midterm Project |
||
Week 6 | L6(3h): Acquisizione e generazione di grandezze analogiche. Conversione A/D e D/A. Sensori ed attuatori avanzati: termometro, barometro, accelerometro, compasso, joystick. L7(2h): Come leggere un datasheet: introduzione alla realizzazione di un driver per sensori analogici partendo dal datasheet. |
|
|
Week 7 | L8(2h): Utilizzo dei Timer e PWM. Interfacciarsi con un display LCD. |
P4(2h): Lettura di un sensore analogico tramite DAC. P5(1h): Utilizzo del PWM su STM32F4. |
Dispense |
Week 8 | L9(3h): RTOS per STM32F4 (Seminario a cura di ST-Microelectronics). |
P6(2h): Realizzare un applicativo per il sistema ChibiOS (Seminario a cura di ST-Microelectronics). |
Dispense Esercizi |
Week 9 | L10(3h): Introduzione al principio di funzionamento dei motori elettrici. Controllare un motore elettrico: controllare la velocità con PWM, controllare la direzione con H-Bridge. L11(2h): Motori in retroazione: encoders e servo motori. |
|
|
Week 10 | L12(3h): Introduzione alle Smart Cards (Seminario a cura di ST-Microelectronics). |
P7(2h): Controllare un motore DC tramite PWM ed H-Bridge con STM32F4 |
Dispense Esercizi |
Week 11/12 | Lab2(10h): Final Project |