antony28
19-08-2007, 23:20
L’idea di base da cui è nato questo lavoro è stata quella di sviluppare e permettere il funzionamento di software embedded su una classe di microcontrollori della ST Microelectronics
(STR710, STR730, STR750, basati sul core ARM7TDMI) utilizzando soluzioni open*source, e di scrivere successivamente un tutorial su come utilizzare queste soluzioni.
Al giorno d’oggi sul mercato sono presenti molti IDE proprietari (IAR, RealView, ecc.) che consentono compilazione e download del codice prodotto sul microcontrollore prescelto in modo semplice e veloce, ma le licenze per questi ambienti di sviluppo costano migliaia di euro l’anno.
Inoltre, le interfacce utilizzate da questi IDE sono spesso proprietarie e costose. Dunque, se questo problema è meno sentito nell’industria dove i capitali non dovrebbero mancare, in ambito universitario un tale costo diventa molto oneroso se non insostenibile, soprattutto in una realtà come la nostra (quella italiana) che non è molto generosa e disponibile nei confronti della ricerca.
Di conseguenza poter utilizzare soluzioni gratuite che permettano di compilare e scaricare codice in un’ampia gamma di micro presenti sul mercato, utilizzando interfacce a basso costo, diventa un’ottima soluzione al problema economico posto prima.
Se a questo si aggiunge che tutti i programmi utilizzati sono open*source, si capisce come queste soluzioni vadano sempre più migliorando e potrebbero supportare domani caratteristiche che oggi non funzionano ancora.
L’attuale svantaggio di queste soluzioni sta nel fatto che esse costituiscono un ambiente ancora poco maturo e poco supportato, benché in espansione; quindi la loro installazione e configurazione è un passo cruciale e il più delle volte problematico per il corretto utilizzo.
Da qui la necessità di fare chiarezza, di vagliare le soluzioni presenti alla ricerca di quelle migliori,
di dare una mano allo sviluppo delle parti e delle specifiche mancanti e infine di rendere fruibile
questa conoscenza attraverso un tutorial, simile a quello già presente per la serie Atmel AT91SAM7S scritto da James P. Lynch.
Inoltre, vista la crescente diffusione del sistema operativo GNU/Linux, abbiamo deciso di effettuare i nostri test sia su Windows che su questo sistema operativo.
In fin dei conti, il nostro lavoro si è svolto secondo diverse fasi:
* Ricerca e test delle varie soluzioni gratuite e/o open*source, sia per Windows che per Linux.
* Sviluppo e test delle parti mancanti o frammentarie, attraverso l’aiuto fornito da datasheet e reference manual.
* Scrittura del presente documento, che costituisce da un lato una relazione sul lavoro svolto, ma nello stesso tempo anche un tutorial dettagliato e facilmente fruibile anche da utenti non esperti
Infine è doveroso notare che questo lavoro è da considerarsi come una versione preliminare, sia perchè, come già detto, i tool open*source sono in continuo miglioramento, sia perchè ci sono caratteristiche da noi implementate che potrebbero essere non del tutto corrette e altre ancora da implementare, sebbene quelle principali ci siano tutte e sembrino funzionare correttamente.
Inoltre questa soluzione è in grado di essere applicata anche ad altri microcontrollori, che richiederanno comunque svariati test. Proprio per dimostrare quest’ultima affermazione e anche perchè ormai ci eravamo appassionati a quanto trattato, nonostante non ci fosse stato richiesto abbiamo creato i file di configurazione e il template anche per il microcontrollore STR72x (che non abbiamo testato) e abbiamo deciso di cominciare le prove con la serie STR9, in particolare utilizzando una board con microcontrollore STR912: i risultati sono positivi, anche se ancora molto preliminari, e li abbiamo sintetizzati nell’appendice C.
Detto questo, passiamo a descrivere quali sono le parti principali di questo documento: dopo questo capitolo, dedicato ad introdurre il lavoro, i programmi e l’hardware utilizzato, il capitolo 2 introdurrà come installare i vari tool sia su Windows che su Linux; il capitolo 3 invece analizzerà da vicino i file di configurazione, le modifiche da noi apportate e le relative motivazioni. Infine le appendici, la prima delle quali è da considerarsi una guida ad Insight ed Eclipse un po’ più avanzata di quella presente nel tutorial al capitolo 2; l’appendice B approfondisce le estensioni di GCC e la modalità
Thumb e infine l’appendice C descrive l’esperienza con la board STR912. Buona lettura!
Download pdf e file a questo (http://www.intilinux.com/howto/311/using-open-source-tools-for-str7xx-cross-development/) indirizzo.
(STR710, STR730, STR750, basati sul core ARM7TDMI) utilizzando soluzioni open*source, e di scrivere successivamente un tutorial su come utilizzare queste soluzioni.
Al giorno d’oggi sul mercato sono presenti molti IDE proprietari (IAR, RealView, ecc.) che consentono compilazione e download del codice prodotto sul microcontrollore prescelto in modo semplice e veloce, ma le licenze per questi ambienti di sviluppo costano migliaia di euro l’anno.
Inoltre, le interfacce utilizzate da questi IDE sono spesso proprietarie e costose. Dunque, se questo problema è meno sentito nell’industria dove i capitali non dovrebbero mancare, in ambito universitario un tale costo diventa molto oneroso se non insostenibile, soprattutto in una realtà come la nostra (quella italiana) che non è molto generosa e disponibile nei confronti della ricerca.
Di conseguenza poter utilizzare soluzioni gratuite che permettano di compilare e scaricare codice in un’ampia gamma di micro presenti sul mercato, utilizzando interfacce a basso costo, diventa un’ottima soluzione al problema economico posto prima.
Se a questo si aggiunge che tutti i programmi utilizzati sono open*source, si capisce come queste soluzioni vadano sempre più migliorando e potrebbero supportare domani caratteristiche che oggi non funzionano ancora.
L’attuale svantaggio di queste soluzioni sta nel fatto che esse costituiscono un ambiente ancora poco maturo e poco supportato, benché in espansione; quindi la loro installazione e configurazione è un passo cruciale e il più delle volte problematico per il corretto utilizzo.
Da qui la necessità di fare chiarezza, di vagliare le soluzioni presenti alla ricerca di quelle migliori,
di dare una mano allo sviluppo delle parti e delle specifiche mancanti e infine di rendere fruibile
questa conoscenza attraverso un tutorial, simile a quello già presente per la serie Atmel AT91SAM7S scritto da James P. Lynch.
Inoltre, vista la crescente diffusione del sistema operativo GNU/Linux, abbiamo deciso di effettuare i nostri test sia su Windows che su questo sistema operativo.
In fin dei conti, il nostro lavoro si è svolto secondo diverse fasi:
* Ricerca e test delle varie soluzioni gratuite e/o open*source, sia per Windows che per Linux.
* Sviluppo e test delle parti mancanti o frammentarie, attraverso l’aiuto fornito da datasheet e reference manual.
* Scrittura del presente documento, che costituisce da un lato una relazione sul lavoro svolto, ma nello stesso tempo anche un tutorial dettagliato e facilmente fruibile anche da utenti non esperti
Infine è doveroso notare che questo lavoro è da considerarsi come una versione preliminare, sia perchè, come già detto, i tool open*source sono in continuo miglioramento, sia perchè ci sono caratteristiche da noi implementate che potrebbero essere non del tutto corrette e altre ancora da implementare, sebbene quelle principali ci siano tutte e sembrino funzionare correttamente.
Inoltre questa soluzione è in grado di essere applicata anche ad altri microcontrollori, che richiederanno comunque svariati test. Proprio per dimostrare quest’ultima affermazione e anche perchè ormai ci eravamo appassionati a quanto trattato, nonostante non ci fosse stato richiesto abbiamo creato i file di configurazione e il template anche per il microcontrollore STR72x (che non abbiamo testato) e abbiamo deciso di cominciare le prove con la serie STR9, in particolare utilizzando una board con microcontrollore STR912: i risultati sono positivi, anche se ancora molto preliminari, e li abbiamo sintetizzati nell’appendice C.
Detto questo, passiamo a descrivere quali sono le parti principali di questo documento: dopo questo capitolo, dedicato ad introdurre il lavoro, i programmi e l’hardware utilizzato, il capitolo 2 introdurrà come installare i vari tool sia su Windows che su Linux; il capitolo 3 invece analizzerà da vicino i file di configurazione, le modifiche da noi apportate e le relative motivazioni. Infine le appendici, la prima delle quali è da considerarsi una guida ad Insight ed Eclipse un po’ più avanzata di quella presente nel tutorial al capitolo 2; l’appendice B approfondisce le estensioni di GCC e la modalità
Thumb e infine l’appendice C descrive l’esperienza con la board STR912. Buona lettura!
Download pdf e file a questo (http://www.intilinux.com/howto/311/using-open-source-tools-for-str7xx-cross-development/) indirizzo.