Newsgroup: it.hobby.elettronica.digitale
Titolo: Iniziare con ARM

Un saluto a tutto il NG.
Vorrei avvicinarmi agli ARM ma non so da dove iniziare.
Per caso qualcuno sa indicarmi una risorsa in rete per cominciare a capirci 
qualcosa: è veroche  l'ambiente di sviluppo è sempre lo stesso per tutti i 
micro di tutte le case produttrici? e che micro di case diverse sono 
"compatibili" ?
Un grazie anticipato.
Gabriele. 
 
 

 "compatibili" ?
 
Prima di tutto ti conviene stabilire se vuoi utilizzare un 
microcontrollore (con memorie e periferiche integrate) oppure un 
microprocessore (con memorie RAM e FLASH esterne).
Se vuoi farci girare Linux, la scelta ricade per forza sulla seconda 
opzione. Se hai in mente altri RTOS oppure applicazioni senza sistema 
operativo, allora la prima opzione va bene.
 
Come ben sai, molti produttori hanno a catalogo micro basati su core ARM 
e molti hanno anche ambienti di sviluppo dedicati (tipo il Codewarrior 
della Freescale per i microcontrollori Kinetis).
 
In genere esiste un compilatore C GNU (gcc) per ARM, ma configurarlo ed 
utilizzarlo per compilare per qualsiasi produttore/famiglia/dispositivo 
è veramente durissima senza l'ausilio dei tool messi a disposizione 
dalla casa produttrice.
 
Il più famoso gcc per ARM (per quello che ne so io) è quello della 
CodeSourcery che ne distribuisce una versione, solo a riga di comando, 
completamente gratuita. Ovviamente sta a te sbatterti per configurare un 
IDE (spesso si usa Eclipse) in modo che possa usare quel gcc in modo 
corretto.
 
 

 
 
devi ( l'OP ) procurarti anche il programmatore HW per il micro, 
tipicamente JTAG, ma esistono anche micro che di programmano via seriale 
ed anche direttamente via USB ( NXP sicuramente ) esistono alcune 
alternative hardware "interessanti" come l' mbed o LPCEXPRESSO per 
iniziare a provare micro ARM

 integra col Codesourcery
 
Ma è a pagamento, giusto? Non che questo sia un problema, ma è meglio 
precisarlo quando si parla anche di tool GNU.

 precisarlo quando si parla anche di tool GNU.
 
bella domanda! il compilatore keil full e' sicuramente a pagamento, la 
versione limitata completa dell'ide non mi sembra essere a pagamento e 
probabilmente e' scaricabile dal sito ( viene sicuramente fornito con le 
schede di valutazione keil )
quello che sicuramente si perde e' la possiblita' del debug via JTAG
 
altra alternativa ( ma andrebbe testata ) e' l'accoppiata 
CodeBlocks+CodeSourcery/gcc x ARM

 operativo, allora la prima opzione va bene.
 
Direi di rimanere sulla prima opzione, senza sistema operativo.
L'idea era quella di "sposare" un'architettura e relativi sistemi di 
sviluppo
senza saltare da un micro all'altro, anche di marche diverse.
A questo punto, a  parte le prestazioni  (che comunque sarebbero sprecate)
quali sono i vantaggi di sostituire le applicazioni per microcontrollori ad 
8 e 16 bit con ARM?
 
Gabriele.
 
 
 

 ad 8 e 16 bit con ARM?
 
NESSSUN 
 
 

 CodeBlocks+CodeSourcery/gcc x ARM
 
Perchè non semplicemente l'onnipresente Eclipse + CodeSourcery/gcc?

 8 e 16 bit con ARM?
 
Il vantaggio è proprio nelle rapporto prezzo/prestazioni: hai dei micro 
a 32 bit che costano quanto dei vecchi 8 o 16 bit.  Con questi micro ti 
puoi permettere cose che non potevi permetterti... e l'appetito vien 
mangiando.
 
Se poi riesci a configurarti un IDE+compilatore comune per tutti gli ARM 
(ma il lavoraccio sarebbe enorme), allora hai ottenuto un altro vantaggio.


non lo so, forse perche' sono rimasto traumatizzato da Ecplipse da 
piccolo (cit.), ma ripeto NON lo sconsiglio solo propongo eventuali 
alternative

 sono rimasto traumatizzato da Ecplipse da piccolo (cit.), 
 
E chi no?


ah non lo so, sembra che a qualcuno piaccia ;-)
 
vero e' che molti lo trovano comodo/utile perche' supporta vari 
linguaggi/suite di compilatazione

 linguaggi/suite di compilatazione
 
Mi consola non essere l'unico al quale eclipse gli fa venire un po'
di senso di nausea!
Ma a parte questo, io che non ho mai usato ARM presto dovrò
lavorarci. Vi chiedo, 4000 mips dhrystones è molto per un ARM?
O è un valore medio? Grazie.


ARM e' un contenitore MOLTO grande, si passa da microcontrollori da 
40/100 MHz (clock interno) a veri e propri microprocessori con clock da 
1 GHz ( e piu' ) magari affiancati da un DSP o una GPU
 
solo per citarne alcuni
ARM7
ARM9
ARM11
Cortex M0 M3 M4 assorititi ( questi ultimamente sono molto in voga nella 
sezione controllori )
 
per cui la domanda e' quanto meno "vaga"

 
 
ho imparato ad amarlo ma ammetto che se non c'è li pacchetto già pronto per 
le mie esigenze (tipo CDT, QT, Yagarto o simili) neanche ci provo a 
litigarci per inserire una nuova toolchain ecc....
 
-- 
"Non è mai troppo tardi per imparare a suonare..."
"Sì bhè, magari alle 3 di notte evita."

 per cui la domanda e' quanto meno "vaga"
 
Mi rispondo da solo: gli ARM a seconda della versione, eseguono da 0,9
a 1,5
dhrystone mips al secondo per MHz.
4000 dhrystone mips al secondo sono quindi al top assoluto.

 dhrystone mips al secondo 
 
Una nota: l'acronimo MIPS tecnicamente contiene già la nozione di "per 
second", secondo me è superfluo aggiungere "al secondo".

 second", secondo me è superfluo aggiungere "al secondo".
 
Chiedo venia. Più che superfluo è proprio sbagliato!
Saluti.