Asembler.pdf
(
158 KB
)
Pobierz
Programowanie mikrokontrolerów Asembler AVR, cz¦±¢ 1
Programowaniemikrokontrolerów
AsemblerAVR,cz¦±¢1
MarcinEngelMarcinPeczarski
22pa¹dziernika2008
StrukturaprogramuwAsemblerze
I
Programzaczynasi¦dyrektyw¡
.INCLUDE
,którawł¡cza
definicjeniezb¦dnedlakonkretnegomodelumikrokontrolera.
I
DlaATmega16b¦dzieto
.INCLUDE"m16def.inc"
I
lub
.INCLUDE"C:\VMLAB\include\m16def.inc"
I
lub
.INCLUDE"C:\PROGRA~1\vmlab\include\m16def.inc"
I
Wł¡czanyplikzawieradyrektyw¦:
.DEVICEATmega16
I
Dyrektywy
.INCLUDE
mo»emyrównie»u»y¢wdowolnym
miejscuprogramudowł¡czeniakoduumieszczonegowinnym
pliku.
StrukturaprogramuwAsemblerze,cd.
I
Programskładasi¦ztrzechsegmentówodpowiadaj¡cych
poszczególnymprzestrzeniomadresowymmikrokontrolera:
.DSEG ;segmentdanych,SRAM
.ESEG ;segmentdanychnieulotnych,EEPROM
.CSEG ;segmentkodu,FLASH
I
Segmentymo»nadowolnieprzeplata¢.
Definiowaniestałychsymbolicznych
I
Stałemo»emydefiniowa¢nast¦puj¡co
.EQUstała=wyra»enie
.SETstała=wyra»enie
I
Dyrektywa
.EQU
działajednorazowo.
I
Dyrektywa
.SET
pozwalanawielokrotneprzedefiniowywanie
stałej.
I
Przykłady:
.EQUSYS_FREQ=16
.EQUBLINKER_HALF_PERIOD=3*SYS_FREQ
Alternatywnenazwyrejestrów
I
Abypoprawi¢czytelno±¢kodu,rejestrommo»naprzypisywa¢
nazwydyrektyw¡
.DEF
iuniewa»nia¢tenazwydyrektyw¡
.UNDEF
.
I
Wtensposóbzdefiniowanorejestry
XL
,
XH
,
YL
,
YH
,
ZL
i
ZH
.
I
Przykład:
.DEFAKUMULATOR=R16
LDIAKUMULATOR,7 ;wykonasi¦LDIR16,7
.UNDEFAKUMULATOR
.DEFAKUMULATOR=R17
LDIAKUMULATOR,8 ;wykonasi¦LDIR17,8
Plik z chomika:
roman61
Inne pliki z tego folderu:
Wstep.pdf
(290 KB)
Wejscia_analogowe.pdf
(317 KB)
PWM.pdf
(432 KB)
Przerwania_liczniki.pdf
(368 KB)
Klawiatury.pdf
(256 KB)
Inne foldery tego chomika:
• Katalog półprzewodników VRT DVD2009 +crack
• Katalogi - Układy scalone
• Katalogi - Układy scalone(1)
• Katalogi - Wielka baza układów scalonych
• Katalogi - Wielka baza układów scalonych(1)
Zgłoś jeśli
naruszono regulamin