Pagine

mercoledì 28 marzo 2012

Installazione del Plugin di MQX 3.8 per Codewarrior 10.2

 


La soluzione che oggi presentiamo è relativa all'installazione del plugin fornito insieme al sistema operativo Freescale MQX 3.8 per l'ambiente di sviluppo Freescale Codewarrior 10.2 . Tale installazione è risultata funzionare perfettamente in ambiente Windows XP ma richiede qualche piccolo accorgimento in Windows 7 dove le politiche di protezione sono più rigide.



Freescale ha rilasciato da alcune settimane la versione 10.2 del famoso IDE proprietario che dalla versione 10.x è basata sull'ambiente di sviluppo Eclipse. MQX rappresenta invece un sistema operativo per sistemi embedded, sviluppato da Freescale, che supporta la maggior parte dei microcontrollori prodotti dall'azienda. L'ultima release di questo sistema operativo è datata Dicembre 2011 ed è la 3.8.

Oltre alle primitive tipiche per la gestione dei processi, MQX, da buon sistema operativo, si interfaccia con un insieme di driver scritti da Freescale e specifici per le periferiche di ogni MCU. In questo modo il programmatore viene sollevato dal compito (arduo) di scriversi in proprio i driver per colloquiare con le periferiche.

Insieme alla release 3.8 di MQX Freescale fornisce un plugin per codewarrior che permette l'importazione automatica dei progetti di esempio tramite dei file con estensione .wsd. Tale plugin si integra con l'ambiente di sviluppo di Eclipse permettendo, inoltre, di misurare le performance del sistema operativo fornendo delle viste relative alle sue performance globali, uso dello stack e della CPU e visualizzazione della timeline dei processi. Queste misure possono essere fatte in real-time oppure salvate in un file, a patto di abilitare il kernel logging nel sistema operativo prima di programmare la MCU.

L'installazione di questo plugin sotto Windows XP non da particolari problemi ed è ben documentata nella documentazione del plugin. Prima di cominciare l'installazione bisogna chiudere il Codewarrior, poi bisogna aprire una finestra del prompt di MS-DOS e recarsi nella directory

<MQX_INSTAL_DIR>\tools\codewarrior_extensions\CW MCU v10.2\"

dove <MQX_INSTAL_DIR> è la directory di installazione di MQX. Per eseguire l'installazione viene fornito un file batch denominato install_cw10_plugin.bat che prende come parametro d'ingresso il percorso della directory di installazione di Codewarrior. Per richiamarlo si deve eseguire il comando

install_cw10_plugin.bat <CW_INSTAL_DIR>

dove <CW_INSTAL_DIR> è la directory di installazione del Codewarrior 10.2. Ad esempio, nel nostro caso si è scritto:

install_cw10_plugin.bat "C:\Freescale\CW MCU v10.2"

le virgolette sono necessarie perché nel percorso ci sono degli spazi in questo caso. Dopo l'esecuzione del comando il file batch esegue automaticamente i file necessari all'installazione e installa il plugin all'interno del sistema.

La procedura di installazione del plugin su Windows 7 è analoga a quella di Windows XP ma nel nostro caso non è andata a buon fine come si sperava. Durante l'esecuzione del file batch dal prompt MS-DOS l'installazione si è bloccata segnalando con una finestra di avviso la presenza di errori. All'interno della finestra di avviso veniva inoltre segnalato che maggiori dettagli sull'errore potevano essere trovati nel file di log. L'installazione è terminata con stato "Done" e con 17 file copiati ma non c'era traccia del plugin all'interno del Codewarrior, inoltre l'importazione automatica dei progetti non partiva trascinando nel Codewarrior i file wsd.

Il file di log denominato .log (linux style) si trova nella cartella del workspace di Codewarrior nel percorso

<WORKSPACE_DIR>\.metadata\codewarrior_ex

in cui <WORKSPACE_DIR> è la directory dell'ultimo workspace selezionato. Dall'analisi dei log nel nostro caso si è visto che il programma non riusciva ad accedere ai file contenuti nel repository locale.

La prima idea per risolvere il problema è stata quella di eseguire il prompt con privilegi di Amministratore ed eseguire quindi il batch da questo prompt ma questo non ha risolto il problema. Dal forum Freescale abbiamo trovato qui un utente che aveva lo stesso nostro problema. Anche qui in prima istanza veniva suggerito di eseguire il prompt con privilegi di amministratore e poi eseguire il batch ma anche per l'utente del forum questa soluzione non ha prodotto i risultati sperati.

La soluzione è più avanti. Un utente suggerisce di reinstallare il Codewarrior e lo stack MQX eliminando da entrambe il blocco di protezione che Windows 7 mette di default sugli eseguibili scaricati. Per annullare tale blocco bisogna cliccare col tasto destro sul file scaricato e scegliere Proprietà. In basso a destra nella finestrà c'è il pulsante "Annulla blocco" che bisogna premere per eliminare le restrizioni. Nell'immagine seguente viene mostrato la finestra e il tasto suddetto.


Tale procedura dovrà essere attuata sia per il file di installazione del Codewarrior 10.2 che per quello di MQX 3.8. A tal punto si potrà procede all'installazione separata dei due software. Dopo aver installato i due eseguibili "sbloccati" sarà possibile eseguire il prompt di MS-DOS con privilegi da Amministratore ed eseguire la procedura di installazione standard già illustrata per Windows 7. Così dovrebbe funzionare tutto e l'installazione dovrebbe terminare correttamente.

Nessun commento:

Posta un commento