martedì 24 novembre 2015

A.S. 2015/16 - Esercitazioni di laboratorio per la materia TECNOLOGIA E PROGETTAZIONE/3

ESERCITAZIONE 4_2 - Termostato



OBIETTIVI DISCIPLINARI
- Utilizzo del convertitore ADC integrato nelle schede launchpad

PROCEDIMENTO / SPECIFICHE INIZIALI
Consegnare la relazione tecnica
- Definire le specifiche che il progetto deve soddisfare: tempeatura, intervalli di campionamento,...
-

GRIGLIA DI VALUTAZIONE:
[3 punti] - relazione: premesse teoriche/specifiche
[2 punti] - relazione: diagramma di flusso (Main, L7_SYS, L4, ...)
[3 punti] - implementazione del codice in C
[1 punto] - convenzioni di scrittura codice (intestazione, commenti, nomi var, ...)
[1 punto] - relazione: collaudo

RIFERIMENTI / LINK
ESERCITAZIONE 3_2 - Protocolli per rete di sensori
Definizione di una suite di protocolli per implementare la comunicazione all'interno di una rete di sensori con microcontrollori Cortex Arm M4


GRIGLIA DI VALUTAZIONE:
[3 punti] - relazione: premesse teoriche/specifiche
[2 punti] - relazione: diagramma di flusso (Main, L7_SYS, L4, ...)
[3 punti] - implementazione del codice in C
[1 punto] - convenzioni di scrittura codice (intestazione, commenti, nomi var, ...)
[1 punto] - relazione: collaudo

LINK

-------------------------------------------------------------------------------------------------------------
ESERCITAZIONE 2_2 - Comunicazione seriale tra schede Launchpad
Trasmissione e ricezione di semplici comandi tra due schede

OBIETTIVI DISCIPLINARI
- Utilizzo delle librerie TivaWare o EvalbotWare per la comunicazione seriale
- Implementazione di un algoritmo non bloccante per la ricetrasmissione di comandi tramite l'Uart

PROCEDIMENTO / SPECIFICHE INIZIALI
- Consegnare la relazione tecnica
- alla pressione del pulsante 1 viene inviato il comando 'a'; alla pressione del pulsante 2 viene inviato il comando 'b'; alla pressione del pulsante 1 e 2 viene inviato il comando 'c'; alla ricezione del comandi: 'a' -> accende il led rosso; 'b' -> accende il led blu; 'c' -> accende il led verde;

GRIGLIA DI VALUTAZIONE:
[3 punti] - relazione: premesse teoriche/specifiche - descrizione dell'uart, della trasmissione rs232, delle librerie TivaWare relative all'uart, descrizione del blocco uart presente all'interno del microcontrollore Tiva
[2 punti] - relazione: diagramma di flusso (Main, UartTaskTx, UartTaskRx)
[3 punti] - implementazione del codice in C (Main, UartTaskTx, UartTaskRx)
[1 punto] - convenzioni di scrittura codice (intestazione, commenti, nomi var, ...)
[1 punto] - relazione: collaudo

RIFERIMENTI
- ARM® Cortex®-M4F Based MCU TM4C123G LaunchPad™ Evaluation Kit
- [PDF] Tiva™ C Series TM4C123G LaunchPad Evaluation Board - User Guide
- [PDF] TivaWare™ Peripheral Driver Library - User Guide
- [PDF] Tiva™ C Series TM4C123GH6PM Microcontroller Data Sheet (Rev. E)
-------------------------------------------------------------------------------------------------------------
ESERCITAZIONE 1 (5G) - Lampeggio led
Lampeggio dei led presenti sulla scheda EvalBot usando temporizzazioni software e interazione con i pulsanti

OBIETTIVI / ARGOMENTI TRATTATI
- Imparare ad usare l'ambiente di lavoro CCS
- Creazione di un progetto in CCS
- Utilizzare le librerie software del TI
- Configurazione dell'hw del microcontrollore senza l'utilizzo di librerie esterne

PROCEDIMENTO / SPECIFICHE INIZIALI
Consegnare la relazione tecnica
- Iniziare la descrizione della scheda EvalBot
- Verificare che sulla postazione di lavoro siano installati e disponibili:
  + la scheda Evalbot 
  + i driver delle schede
  + Code composer studio 6
  + StellarisWare Evalbot
- Creazione di un progetto all'interno dell'IDE CCS
  + Impostare come device l'Arm Stellaris LM3S9B92
  + Impostare come connessione al device ICDI (In-Circuit Debug Interface)
  + Come template impostare Empty Project with main.c
- Ricavare dallo schematic dove sono collegati P1, P2, BMP1, BMP2, L1 e L2
- Scrivere la routine void SoftDelay(int delay);
Scrivere la routine void Init_GPIO_PortX(int port);
Scrivere la routine main che contiene le seguenti sezioni:
  + inizializzazioni
  + mainloop
Scrivere la routine GpioPollInout che se:
  + P1 press -> L1 toggle
  + P2 press -> L2 toggle
  + ...

GRIGLIA DI VALUTAZIONE:
[2 punti] - relazione: premesse teoriche/specifiche - come va inizializzato l'hw
[2 punti] - relazione: diagramma di flusso
[2 punti] - implementazione del codice in assembler (blinky_white, blinky_switch)
[2 punti] - utilizzo dell'ambiente di sviluppo (creazione progetto, debug)
[1 punto] - convenzioni di scrittura codice (intestazione, commenti, nomi var, ...)
[1 punto] - relazione: collaudo

RIFERIMENTI / LINK
- http://www.ti.com/tool/ccstudio
ESERCITAZIONE 1 5H - Esercizi su pulsanti e led 
0) Verifica e installazione dei driver per le schede launchpad, software mdk Keil uVision e LmFlashProgrammer.
Lettura del firmware presente sulla LaunchPad e salvataggio su file
1) Utilizzo di un framework per la programmazione in c delle schede launchpad
2) Creazione di una routine SoftDelay per il lampeggio dei led utilizzando il "Arm_FB_Framework"
3) Creazione progetto per il lampeggio dei led basato su un singolo file main.c
4) Operazioni di input output sui pin generici del microcontrollore

OBIETTIVI
- Installazione e configurazione dell'ambiente di lavoro per la programmazione delle schede Launchpad
- utilizzo di un framework esistente per la programmazione delle schede
- Identificare gli step per utilizzare l'hardware minimo della scheda

PROCEDIMENTO / SPECIFICHE INIZIALI
MANUALI
Stellaris® LM4F120 LaunchPad Evaluation Kit - EK-LM4F120XL
Tiva™ C Series TM4C123G LaunchPad Evaluation Board - User Guide
- [PDF] Cortex-M3 Technical Reference Manual

RIFERIMENTI
https://github.com/filippo-bilardo/Arm_FB_Framework-A10
http://fb-labs.blogspot.it/2013/05/prima-esercitazione-in-assembler-su-arm.html
http://fb-labs.blogspot.it/2014/12/esercitazioni-tecnologia3.html
http://fb-labs.blogspot.it/2013/04/convenzioni-per-la-scrittura-di-codice.html
http://users.ece.utexas.edu/~valvano/Volume1/E-Book/C6_MicrocontrollerPorts.htm
[pdf] Struttura del codice di un programma C

TM4C123G LaunchPad Workshop
Getting Started With the Tiva C Series TM4C123G LaunchPad Workshop
ARM Optimizing C/C++ Compiler
ARM Assembly Language Tools User's Guide
-------------------------------------------------------------------------------------------------------------
prima versione 17/09/15

Nessun commento:

Posta un commento