ATmega assembler

Finora ho programmato solo con il C. Adesso vorrei scendere piu a basso livello, ma nel marasma di internet purtroppo non riesco a trovare una guida sull'assembly dei mc atmega. Sono piu o meno tutte guide in c. Ho trovato una guida assembler sulla serie at90. Può andare bene per iniziare?

Reply to
Cosimo
Loading thread data ...

da

E' essenziale scaricarsi il datasheet del micro specifico e capire bene l'organizzazione della memoria, dei registri di controllo dell'MCU, dei clock, degli interrupt, del reset-vector (pu=F2 supportatarne pi=F9 di uno), e varie altre bazze di contorno.

Poi, dare un'occhiata alla tabella riassuntiva dei mnemonici con la breve descrizione funzionale ed i flag che vengono interessati.

A questo punto l'assembly diventa meno misterioso e pu=F2 essere efficacemente utilizzato.

Per una guida on-line, ti consiglio di installare AVRStudio4: nell'help c'=E8 tutto, istruzione per istruzione.

Ciao.

Reply to
and.picciati

Il giorno Thu, 15 May 2008 03:39:47 +0200, "Cosimo" ha scritto:

Si trovano diverse appnote e altra roba sul sito Atmel:

formatting link

su avrfreak (ma devi registrarti, non inviano spam)

formatting link

poi questo sito che è la bibbia degli 'assemblearisti'

formatting link

con parecchie routine già fatte, si trovano anche dei tutorial e per esempio la mitica FLOAT 128 per operazioni a 128 bits in assembler.

-- ciao Stefano

Reply to
SB

">

Ho cliccato lì e...

L'assistente di IE di Spybot-S&D ha individuato un URL noto come risorsa nociva. h-ttp://ad.yeldmanger.com/st?ad_type=iframead_size=728x90section=265907 Right Media

Reply to
Lucas

Il giorno Thu, 15 May 2008 13:43:31 +0200, "Lucas" ha scritto:

Io in Windows uso Firefox con Noscript per cui non ho il problema.

-- ciao Stefano

Reply to
SB

Come pensavo, purtroppo. Avrei voluto qualcosa di piu introduttivo, visto che l'unico linguaggio assembler che conosco è quello del ... 6502. Vedrò di capirci qualcosa.

Reply to
Cosimo

Il giorno Thu, 15 May 2008 15:48:25 +0200, "Cosimo" ha scritto:

Se tu fossi venuto dalla Z80 sarebbe stata tutta discesa.

Direi che con gli AVR ti va decisamente meglio che col 6502, visto che qui non hai solo un accumulateore e un puntatore, ma 32 registri, di cui 16 'accumulatori', nel senso che possono essere usati come sorgente o destinazione di operazioni tra registri, e 16 ' quasi accumulatori' che non supportano tutte le operazioni. Inoltre hai 3 coppie di registri puntatori X Y e Z che supportano direttamente il postincremento e il predecremento ( Z+ -Z) .

Guarda bene l'istruzione LPM che forse è quella un pò più ostica da capire per chi viene da un architettura diversa di µC.

Poi se vuoi qualche chiarimento chiedi pure!

-- ciao Stefano

Reply to
SB

Tutti quei registri mi spaventano un po' :-)

Questo è interessante

Ok

Hai già fatto abbastanza, ora mi devo studiare l' ISA.

Reply to
Cosimo

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.