Newsgroup: it.hobby.elettronica.digitale
Titolo: Luminary e toolchain: ARRGGGHH

Ciao a tutti!
E' arrivata la demoboard del luminary 3S6965. Siccome non voglio
comprare licenze o cose simili (più che altro perché mi fanno una
manfrina senza fine per questioni gestionali, roba che ci vogliono dei
mesi per acquistare quello che serve), ho installato i tool codesourcery
free, eclipse, openocd e pensavo: "bene, adesso carico il demo e inizio
a giocare". 
Dunque: il demo di freertos
(
http://www.freertos.org/portLM3Sxxxx_Eclipse.html
) si builda, la flash
viene programmata, il debugger funziona! Solo che c'è tanta roba per un
niubbo come me (ad esempio: ci sono tre driver per tre diversi display
oled, ma non so come si faccia a selezionare quale usare...) ho deciso
di scaricare la libreria di driver della luminary (DriverLib) e volevo
provare l'esempio "Hello World"... Ci sono tutti i sorgenti, il
makefile, ma non so cosa fare su eclipse... 
Non c'è il bottone sacro "Project Wizard", e io che sono cresciuto nella
bambagia degli ide commerciali (evviva CodeWarrior!) adesso sono un po'
imbarazzato... 
Qualche suggerimento?

 Qualche suggerimento?
Sul forum Luminary ho postato un messaggio con una guida per i niubbi 
come me. Non ha avuto successo visto che nessuno ha risposto, ma magari 
potrebbe darti una mano.
Ciao
Marco / iw2nzm

 potrebbe darti una mano.
Marco sei un grande! Post in perfetto stile open source community :-)
Adesso me la studio per bene poi lascio un post sul forum!

 Adesso me la studio per bene poi lascio un post sul forum!
Se trovi strafalcioni, aggiunte o modifiche fammi sapere!
Ciao
Marco / iw2nzm

 Se trovi strafalcioni, aggiunte o modifiche fammi sapere!
Ho seguito tutto fino alla fine. Un appunto:
al punto tre della configurazione dei tool codesourcery, ho dovuto aggiungere
al path anche il percorso /arm-none-eabi/bin oltre che al /bin, perchè
altrimenti quando eclipse chiama il gcc non riesce a trovarlo. 
Però non sono riuscito a vedere il fatidico "hello world". Dunque: eseguo
l'openocd, e nella console scrive:
"Open On-Chip Debugger 1.0 (2008-07-01-18:49) svn:737M
$URL: 
http://svn.berlios.de/svnroot/repos/openocd/trunk/src/openocd.c
 $
Info:    options.c:50 configuration_output_handler(): jtag_speed: 10, 10
Info:    jtag.c:1389 jtag_examine_chain(): JTAG device found: 0x3ba00477
(Manufacturer: 0x23b, Part: 0xba00, Version: 0x3)"
Sembra che vada tutto bene. Poi non capisco come devo fare il debug (punto 7
della guida). Con il tasto destro sul progetto "hello" seleziono 'debug as', e
poi 'debug configurations' (mi sarei aspettato la voce 'Zylin o simile', ma è
lo stesso), premo il tasto 'debug' e salta fuori questa trafila di errori:
"source .gdbinit
target remote localhost:3333
localhost:3333: Impossibile stabilire la connessione. Rifiuto persistente del
computer di destinazione.
monitor flash cond_write_image erase "path to the bin file" 0 bin
"monitor" command not supported by this target.
No registers.
b ResetISR
Breakpoint 1 at 0x5b6
monitor soft_reset_
"monitor" command not supported by this target.
monitor sleep 500
"monitor" command not supported by this target.
continue
The program is not being run.
clear ResetISR"
Se interpreto bene, sembra che il arm-none-eabi-gdb non possa eseguire il
comando "monitor"... Cosa si può fare?

 comando "monitor"... Cosa si può fare?
Sbagliavo io: non facevo le cose nella sequenza giusta.
Però quando passo nella modalità debug di eclipse e provo a fare l'esecuzione a
step non funziona. su cinque volte quattro non riesce a trovare le informazioni
di debug e non vedo niente nella finestra del sorgente. Ho provato a modificare
il comando che mette il breakpoint sulla resetisr per metterlo sul main (b
main). Funziona, poi appena faccio lo step si incasina e di nuovo non trova più
i sorgenti in c. In ogni caso il display è bello che morto...
Sarà che domani sono in ferie quindi sono già in clima di vacanza, ma questa
cosa di eclipse più gcc più toolchain opensource mi sembra una devastazione di
tempo e risorse incredibile. Probabilmente ci metterò ancora qualche giorno a
mettere in piedi tutto, più svariate ore di tempo perso per quando il meccanismo
si incaglierà, che sommate costano moooolto di più dei due o tremila euro di un
ide pronto all'uso...
Boh, ci riproverò la settimana prossima.

 darti una mano.
Perchč non la posti anche qui? Potrebbe essere
piů apprezzata... :-)
Anche io volevo iniziare a giocherellare con i micro
Luminary, ma mi č mancato il tempo di studiarmi
tutta la parte relativa alla toolchain: ho letto che il
GCC "nativo" (tipo WinArm) non supporta ancora
il CortexM3, e quindi bisogna integrarlo con parte
della catena proveniente da CodeSourcery... e a
quel punto ho esaurito il tempo e la volgia per
dedicarmici... :-)
A.D.

 monitor flash cond_write_image erase "path to the bin file" 0 bin
ehm... "path to the bin file" significa che devi inserire il percorso 
completo di dove risiede il file bin generato dal compilatore :)
Marco / iw2nzm

 dedicarmici... :-)
Io ho fatto parecchia fatica a far funzionare il tutto... ma mi rendo 
conto che ho anche poca esperienza in merito. Ad ogni modo la toolchain 
basata su Eclipse e la versione Lite di CodeSourcery permette di 
sviluppare in un ambiente che ritengo anche migliore di parecchi IDE 
commerciali a costo zero.
Ciao!
Marco / iw2nzm

 Eccola!
Eh, giusto, chi è la ficacciona con gli occhiali della homepage? :D
Oltre che "for dummies", è anche "for Windows", vero? Non l'amore mio
occhialuto che avete recuperato su web, dico la guida.
Ti ringrazio comunque.
Speriamo di aver tempo, almeno ad Agosto, per i giochini nuovi...

 Eccola!
Grazie!
Ora non ho piů scuse per non provarci... :-)
A.D.

 Speriamo di aver tempo, almeno ad Agosto, per i giochini nuovi...
Buon divertimento :)
Marco / iw2nzm

 Ora non ho più scuse per non provarci... :-)
Eh eh, ottimo!
Marco / iw2nzm

 completo di dove risiede il file bin generato dal compilatore :)
Guardando il tutoria di FreeRTOS ci sono due script per OpenOCD: uno programma
la flash con il file .bin, l'altro fa partire il server di debug.
Nel tuo tutorial non c'è la parte di programmazione della flash. Può essere
quello che mi blocca?

 completo di dove risiede il file bin generato dal compilatore :)
AHHHHHH!!!! L'ho capito adesso.... Che pirlotto...
Ragazzi, c'è proprio bisogno di ferie :(

 Qualche suggerimento?
Un grazie a Marco per l'aiuto :-)
Prime impressioni del giochino nuovo: molto bello! 
Ero completamente a digiuno di eclipse + toolchain, e adesso che sto
iniziando a capirci qualcosa mi sta venendo un'acquolina in bocca che non
sto a raccontare nei dettagli :-P
Il meccanismo degli script è decisamente potente: gil strumenti a riga di
comando ci sono tutti (e sono sufficienti per fare tutto), eclipse è fatto
apposta per essere configurato, e con un po' di lavoro di sartoria ci si
ritaglia esattamente quello che serve. 
Il sistema di debug gdb è notevole, soprattutto in velocità: il debugger
jtag nativo freescale è decisamente più triste, e costa un bel po'!
Io che sono abituato a questi benedetti micro dsp freescale ho goduto
abbastanza a vedere lo script per il linker: flash e ram, basta!
Domandona: il/lo FT2232 viene customizzato tramite la sua eprommettina. La
luminary fornisce il contenuto? L'idea di usare un'unica porta usb per il
debug via jtag e per la comunicazione tramite una virtual com port mi
piace molto, però non capisco bene come è architettata.
Oltretutto, i tecnici ed il centro computer sarebbero felicissimi di non
dovere più cercare portatili con la porta seriale per fare l'update del
firmware!