compilatore per avr

Pensavo di passare ai micro della Atmel avete consigli sul compilatore da usare? con google si trova di tutto, mi dite un po i pro e i contro dei principali?

Reply to
gulp
Loading thread data ...

gulp:

Per l'assembly e il debugging c'è l'AVRstudio4, scaricabile gratuitamente dal sito Atmel.

Il compilatore GNU GCC (WinAVR) è disponibile su

formatting link
sito di riferimento per gli AVR.

Personalmente uso CodeVision (la versione free è scaricabile da AVRfreaks) perché mi lascia una decina di registri liberi per processare gli interrupt senza mettere e togliere roba dallo stack.

Reply to
F. Bertolazzi

"F. Bertolazzi" ha scritto nel messaggio:

Grazie per le informazioni, nel messagggio avevo comunque tralasciato che intendevo compilatore "C" mi spiegheresti questa storia degli interrupt? non e' il compilatore che crea il codice per gli interrupt? li scrivi forse direttamente in assembler?

Il motivo dell' uso di CodVision e' legato solo alla questione dei registri liberi?

Reply to
gulp

gulp:

Sì, e, già che c'è, scrive anche il resto del programma. :D

Ciò che il compilatore genera automaticamente è il codice per salvare nello stack i registri che servono all'interrupt handler. Se l'handler usa solo registri che il compilatore ignora (nel caso di CodeVision da R2 a R14 inclusi), non salva nulla, rendendo l'interrupt assai più veloce.

Qualche volta, se è il caso. Altrimenti basta a dire a CodeVision che il dato tale è nel registro tale e scrivere in C. Ricordandosi però di non usare costanti immediate ( o sapere che dovrai salvare almeno un registro "alto"), dato che il primi 16 registri dell'AVR non le possono utilizzare direttamente.

Boh, quando ho iniziato con gli AVR c'erano solo il compilatore IAR (costosissimo) e CodeVision, assai più economico. Dato che va bene, non ho mai pensato di cambiare...

Ah, ha un Wizard molto comodo che ti produce il codice per inizializzare le periferiche che non credo WinAVR abbia.

Reply to
F. Bertolazzi

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.