Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Microprocessori e Microcontrollori
Corso di progettazione su SoC ARM
1/18
Microcontrollori e Microprocessori
Corso di progettazione su SoC ARM Prof. N. Masarone Lab.: St. 132 (S2DEL Solid State and Diamond Electronics Lab.) e.mail: info@engsistemi.com
Sezione software
ROMA
TRE
Sezione software
Microprocessori e Microcontrollori
Corso di progettazione su SoC ARM
2/18
Il sistema di sviluppo
JTAG
PC host
Target
ROMA
TRE
Sezione software
Microprocessori e Microcontrollori
Corso di progettazione su SoC ARM
3/18
editor
compilatore
builder
burner/debugger
sviluppo IDE
proprietario supporto della casa madre prestazioni ottimizzate curva di apprendimento breve ambiente opaco costo spesso elevato
open source supporto delle comunit di sviluppo prestazioni medie curva di apprendimento media ambiente trasparente costo spesso nullo
ROMA
TRE
Sezione software
Microprocessori e Microcontrollori
Corso di progettazione su SoC ARM
4/18
Eclipse una comunit open source i cui progetti mirano alla creazione di una piattaforma di sviluppo aperta, comprensiva di infrastrutture estensibili, strumenti ed applicazioni per la costruzione, il rilascio e la gestione del software nel suo intero ciclo di vita. Eclipse partita dal miglior IDE Java mai realizzato e da l si sviluppato. I leader industriali Borland, IBM, MERANT, QNX Software Systems, Rational Software, Red Hat, SuSE, TogetherSoft e Webgain formarono l'iniziale eclipse.org Board of Stewards nel novembre 2001. Entro la fine del 2003 questo consorzio iniziale giunse ad oltre 80 membri. Il 2 febbraio 2004 la Eclipse Board of Stewards annunci la trasformazione di Eclipse in una corporazione senza scopo di lucro. In origine Eclipse era un consorzio che si form quando IBM rilasci la piattaforma Eclipse come Open Source, poi divenne un organismo indipendente di guida all'evoluzione della piattaforma per aiutare sia gli sviluppatori che gli utilizzatori finali di software. Tutta la tecnologia ed il codice sorgente fornito e sviluppato da questa comunit in rapida crescita reso disponibile senza diritti di licenza con la Eclipse Public License (EPL). Tra i primi sviluppatori e consumatori strategici vi furono: Ericsson, HP, IBM, Intel, MontaVista Software, QNX, SAP e Serena Software.
ROMA
TRE
Sezione software
Microprocessori e Microcontrollori
Corso di progettazione su SoC ARM
5/18
ROMA
TRE
Sezione software
Microprocessori e Microcontrollori
Corso di progettazione su SoC ARM
6/18
http://www.fsf.org/
TRE
Sezione software
Microprocessori e Microcontrollori
Corso di progettazione su SoC ARM
7/18
Open On-Chip Debugger stato creato come parte di una Tesi scritta alla University of Applied Sciences Augsburg (FH Augsburg) da Dominic Rath nel 2005. La tesi completa si pu scaricare qui: http://openocd.berlios.de/thesis.pdf
ROMA
TRE
Sezione software
Microprocessori e Microcontrollori
Corso di progettazione su SoC ARM
8/18
Eclipse C/C++ Development Tooling - CDT Il progetto CDT (C/C++ Development Tools) fornisce un sistema di sviluppo integrato completo (Integrated Development Environment o IDE) per C e C++ su piattaforma Eclipse. Tra i partecipanti figurano:
http://www.eclipse.org/cdt/
ROMA
TRE
Sezione software
Microprocessori e Microcontrollori
Corso di progettazione su SoC ARM
9/18
TRE
Sezione software
Microprocessori e Microcontrollori
Corso di progettazione su SoC ARM
10/18
ROMA
TRE
Sezione software
Microprocessori e Microcontrollori
Corso di progettazione su SoC ARM
11/18
ROMA
TRE
Sezione software
Microprocessori e Microcontrollori
Corso di progettazione su SoC ARM
12/18
ROMA
TRE
Sezione software
Microprocessori e Microcontrollori
Corso di progettazione su SoC ARM
13/18
Progetto software
rtc.c RTC Scrittura delle librerie di base contenente le primitive dei dispositivi adottati. lcd.c LCD lcd.h rtc.h
ROMA
TRE
Sezione software
Microprocessori e Microcontrollori
Corso di progettazione su SoC ARM
14/18
Progetto software
controllo scelta della infrastruttura principale con l'identificazione dei processi che concorrono alla funzionalit. memorizzazione elaborazione acquisizione scenari d'uso interfaccia utente distribuzione
ROMA
TRE
Sezione software
Microprocessori e Microcontrollori
Corso di progettazione su SoC ARM
15/18
Progetto software
processi background interrupt service routine processo foreground
codice principale
ROMA
TRE
Sezione software
Microprocessori e Microcontrollori
Corso di progettazione su SoC ARM
16/18
reset
waitEvent
btn1Event
btn1Event
ROMA
TRE
Sezione software
Microprocessori e Microcontrollori
Corso di progettazione su SoC ARM
17/18
} }
ROMA
TRE
Sezione software
Microprocessori e Microcontrollori
Corso di progettazione su SoC ARM
18/18
state = standby; event = noEvent; while(1) { switch(state) { case standby: switch(event) { case noEvent: // display(hello); // event = waitEvent; break; case btn1Event: state = settingMenu; event = noEvent; break; } break; case settingMenu: switch(event) { case noEvent: // display(menu); // event = waitEvent; break; case btn1Event: // state = standby; event = noEvent; break; case btn2Event: // state = RTCset; event = noEvent; break; } break; default: state = standby; event = noEvent; } }
ROMA
TRE