BREVE GUIDA ALL UTILIZZO DI BFTC Rev. 1.0.0 11 Ottobre 2014 Digital Technology Art srl Digital Technology Art srl BFTC Introduzione 1
INDICE INTRODUZIONE INSTALLAZIONE IMPOSTARE IL PLUG IN CREARE UN NUOVO PROGETTO MENU CONTESTUALE SCHEDA PROJECT SCHEDA CONFIG SCHEDA CONFIG MAKE SCHEDA CONFIG STACK SCHEDA CONFIG LIBRERIA SCHEDA CONFIG LIBRERIA GCC SCHEDA CONFIG INCLUDE SCHEDA CONFIG MACRO SCHEDA HARDWARE NOTE PER SHARKDUINO CONCLUSIONI Digital Technology Art srl BFTC Introduzione 2
INTRODUZIONE mdi ha un plug in chiamato BFTC questo implementa un IDE per il Toolchain della GNU per BLACKFIN di Analog Device. Troviamo sempre presente su mdi questo plug in, esso é dedicato allo sviluppo di applicazioni o librerie per DSP della serie BLACKFIN presenti nei prodotti della Digital Technology Art. L'ambiente di sviluppo permette di: Creare il file di progetto Editare i sorgenti C Compilare e linkare tutto il progetto Caricare in flash il binario Lanciare una emulazione terminale per il debug del programma Digital Technology Art srl BFTC Introduzione 3
INSTALLAZIONE Per installare l'applicazione basta eseguire il programma di setup MDI_Setup.exe e seguire le indicazioni visualizzate dalle pagine di istallazione. La seconda operazione da effettuare é quella di richiedere una licensa di abilitazione di mdi, senza questa licensa mdi non permetterá di salvare i files creati o modificati. La licenza é assolutamente gratuita per richiederla inviare una email a: info@digitaltechnologyart.com Il contenuto della email é di tre righe: Azienda/Istituto Nome Cognome Email In poche ore riceverete un file XML che andrá a sovrascrivere quello presente nella cartella CONFIG presente nella cartella BIN. Adesso possiamo lanciare mdi con doppio click sull'icona presente sul desktop: Comparirá: Digital Technology Art srl BFTC Introduzione 4
Se l'icona che presenta la finestra visualizzata é la seguente: Saltate questa parte perché mdi é pronto all'utilizzo. IMPOSTARE IL PLUG IN In questo passo imposteremo BFTC come applicazione di partenza di mdi. Selezionate la voce Task bar dal menu Window: A questo punto la finestra del Task bar si sará aperta, adesso selezionate dal combo box in alto (APPLICATION LIST) BFTC Infine selezionate Start nel gruppo MANAGEMENT Fatta questa operazione mdi é pronto ad operare con BFTC e sará cosi per sempre, a meno che non si decida di cambiare... Digital Technology Art srl BFTC Introduzione 5
CREARE UN NUOVO PROGETTO Selezionate l'icona Si aprirá una finestra: oppure File > New Adesso é importante specificare: 1. Il nome che diamo al progetto che vogliamo creare 2. Il cammino dove il nostro progetto sará creato, per il momento non vi consiglio di cambiare quello che vi viene proposto. 3. Decidere se quello che si va a creare é una libreria o una applicazione 4. Infine premere questo pulsante per finalizzare la creazione del progetto. Tutti i restanti controlli ed impostazioni possono essere successivamente cambiati in ogni momento. Fatta questa operazione vi comparirá la pagina principale di BFTC dove viene visualizzato l'albero dei files presenti nel progetto. MENU CONTESTUALE É possibile interagire con la lista dei files e cartelle dell'albero di progetto con l'interazione del mouse: 1. Un doppio click sul file lo apre in un text editor 2. Selezionando una cartella od un file premendo il tasto di destra del mouse compare un menu contestuale. Digital Technology Art srl BFTC Introduzione 6
Aprendo molti file del progetto potremmo trovarci con il desktop molto affollato e con le finestre non facilmente raggiungibili. Digital Technology Art srl BFTC Introduzione 7
É consigliabile che scegliate questo modo di visualizzazione per avere piú ordine sul desktop. Digital Technology Art srl BFTC Introduzione 8
Selezionando questo modo di visualizzazione avremo Dalla lista dei file presenti ci si rende conto che in automatico vengono creati diversi files: config.h config.c main.h main.c Sono il file di base del progetto ed in particolare uno di questi: config riporta tutte le impostazioni hardware del DSP e software relative al progetto. É assolutamente sconsigliato effettuare modifiche a questo file in quanto verrebbero sovrascritte ad ogni variazione delle impostazioni hardware! Adesso selezionate la scheda BFTC e dal menu lanciate il comando MAKE dall'icona Tutti i file del progetto verranno compilati e collegati alla fine (se non ci sono errori) verrá prodotto un file di binario (.LDR) Durante la compilazione si attiva una finestra di log dove vengono riportati tutti i messaggi diagnostici ed informativi del compilatore e del linker alla fine del processo si attiva in automatico una seconda applicazione mdi chiamata ISP che vi permette immediatamente di caricare nella FLASH del Vs. hardware il firmware creato. Digital Technology Art srl BFTC Introduzione 9
Alla fine della compilazione potrebbe comparirvi qualcosa del genere: 1. Finestra di LOG dove viene riportato l esito della compilazione e dell UPLOAD. 2. Finestra di dialogo dove si puó aprire una emulazione terminale. Digital Technology Art srl BFTC Introduzione 10
IMPOSTAZIONI BFTC ha diverse pagine dedicate alla configurazione software ed hardware, proviamo ad esaminarle: SCHEDA PROJECT 1 Toolbar di BFTC 2 MAKE compilazione e collegamento di tutti i sorgenti e librerie 3 Cancella tutti i file oggetto compilati costringendo la compilazione di tutti i moduli 4 Lancia ISP, applicazione per il caricamento in FLASH di un binario o per l'apertura del terminale 5 Apre una emulazione terminale 6 TOUCH del progetto, causa la rigenerazione dei file di configurazione 7 GREP, funzione che ricerca in tutti i moduli sorgente un testo 8 Apre e permette di editare la libreria EMBEDDED 9 Visualizza l help della libreria EMBEDDED 10 Apre un file di progetto 11 Salva il progetto 12 Cartella che visualizza i files di progetto 13 Editor che contiene note di testo relative al progetto 14 Editor che contiene informazioni alla storia delle revisioni relative al progetto 15 Scheda relativa ad i file di progetto 16 Scheda che accede all'impostazione della creazione del codice 17 Scheda che accede all'impostazione delle periferiche del DSP Digital Technology Art srl BFTC Introduzione 11
SCHEDA CONFIG Questa scheda gestisce le opzioni di compilazione e collegamento. 1. Scheda dedicata alla modilità di creazione del codice 2. Configurazione del loader 3. Ricerca dei file di inclusione 4. Librerie utente impiegate 5. Librerie GCC Digital Technology Art srl BFTC Introduzione 12
SCHEDA CONFIG MAKE 1. Impostazione ottimizzazione del codice 2. Definizioni passate al compilatore. 3. Cammino dove viene memorizzato il file binario di output 4. Abilitando questo controllo la finestra di LOG viene automaticamente pulita all inizio di ogni compilazione 5. Scegliendo DEBUG vengono riportate nel file binario in uscita anche le informazioni necessarie al tracciamento del programma. Inutile se non si dispone di un emulatore JTAG. Digital Technology Art srl BFTC Introduzione 13
SCHEDA CONFIG LOADER Scheda che permette di impostare il LOADER. 1. Se abilitato esegue dopo la compilazione, se non ha dato errori, il caricamento del binario prodotto 2. Porta seriale utilizzata per il caricamento 3. Parametri aggiuntivi che possono essere settati per il comando LDR 4. Stabilisce dove viene caricato il codice prodotto: RAM or FLASH Digital Technology Art srl BFTC Introduzione 14
SCHEDA CONFIG LIBRERIA UTENTE Scheda che permette di impostare le librerie utilizzate. 1 Lista delle librerie utente (compresa estensione) separate dalla virgola 2 Cammino per raggiunger le librerie proprietarie Digital Technology Art 3 Selezione delle librerie EMBEDDED Documentazione della libreria EMBEDDED si trova qui: http://www.digitaltechnologyart.com/dtadocs/sharkduino/sdk/index.html Digital Technology Art srl BFTC Introduzione 15
SCHEDA CONFIG LIBRERIA GCC Scheda che permette di impostare le librerie utilizzate dal GCC. Queste sono le librerie specifiche per Blackfin: mfast fp Fast floating point library libbfdsp The DSP run time library which contains a broad collection of functions that are commonly required by signal processing applications. See: http://blackfin.uclinux.org/doku.php?id=toolchain:libbfdsp libbfinbsp the library for GNU Low level OS Support Digital Technology Art srl BFTC Introduzione 16
SCHEDA CONFIG INCLUDE Scheda che permette di impostare le locazioni dove andare a ricercare i file di include utilizzati. Le varie locazioni sono separate dalla virgola. Digital Technology Art srl BFTC Introduzione 17
SCHEDA HARDWARE Da questa scheda si ha la possibilitá di configurare le periferiche del DSP e di impostare alcuni parametri specifici dell hardware utilizzato. Tutte le impostazioni fatte in queste schede saranno poi convertite in codice C e salvate all interno dei file config.c e config.h 1. Scelta della piattaforma hardware utilizzata 2. Scelta DSP utilizzato 3. Selezione CORE del DSP 4. Frequenza del quarzo utilizzata dal microcontrollore 5. Dimensione dello stack (non cambiare) 6. Dimensione della BSS (non cambiare) 7. Indirizzo base stack pointer (non cambiare) 8. Indirizzo base BSS (non cambiare) Digital Technology Art srl BFTC Introduzione 18
SCHEDA HARDWARE PORT Questa scheda permette di configurare la memoria del nostro hardware e di indicarne il suo utilizzo. 1. Cartella che seleziona la porta del DSP 2. Indicazione del bit 3. Selezione funzione del bit 4. Se GPIO seleziona se ingresso o uscita 5. Se GPIO in uscita imposta il valore iniziale 6. Etichetta richiamabile dal programma che identifica il bit 7. Commento di uso del bit Digital Technology Art srl BFTC Introduzione 19
NOTE PER SHARKDUINO Sharkduino per potersi collegare a BFTC ed eseguire i codici prodotti deve avere sempre essere impostato la modalitá di boot in posizione 6. Anche quando si vuole caricare la FLASH interna occorre sempre partire dallo stessa modalitá di BOOT, poi una volta caricata si puó selezionare la posizione 4 per far eseguire a Sharkduino il codice li memorizzato ad ogni sua accensione o RESET. A proposito del RESET premere sempre questo bottone prima di lanciare ISP!!! FLASH BOOT RAM BOOT Digital Technology Art srl BFTC Introduzione 20
CONCLUSIONI Questa non si puó certo chiamare una guida esaustiva, ma solo una breve introduzione, maggiori dettagli possono essere trovati nel manuale del GCC integrato nell help mdi ed al manuale hardware del DSP raggiungibile da BFTC. Si consiglia inoltre di partire sempre da un progetto di esempio normalmente fornito con i nostri prodotti. Links utili: http://www.analog.com/en/content/uclinux_blackfin_users_community/fca.html http://www.analog.com/en/processors dsp/blackfin/products/index.html http://sourceforge.net/projects/adi toolchain/ https://gcc.gnu.org/ Digital Technology Art srl Via Tosco Romagnola 187 56021 Cascina (PI) Italy www.digitaltechnologyart.com info@digitaltechnologyart.com Digital Technology Art srl BFTC Introduzione 21