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:
RS232.pdf
(190 KB)
I2C.pdf
(267 KB)
Resetowanie itp.pdf
(285 KB)
Pamięć nieulotna.pdf
(259 KB)
IR.pdf
(148 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