[ Pobierz całość w formacie PDF ]

oddzielonych przez znaki ':'. Katalogi bÄ™dÄ… przeszukiwane od lewej do prawej.
Zcieżka wyznaczona w opcji  includes jest przeszukiwana przed Å›cieżkÄ… ustawionÄ… jako zmienna Å›rodowiska 
ASEM51INC!
Maksymalna dÅ‚ugość Å›cieżki jest ograniczona do 255 znaków.
Opcja  define jest przydatna by wydzielić poszczególne warianty programu w linii komend, które majÄ… być 
kompilowane przy użyciu kompilacji warunkowej. Pozwala to zdefiniować symbol z wartoÅ›ciÄ… i typem w linii 
komend. Wartość i typ sÄ… opcjonalne. Typ domyÅ›lnie jest ustawiany na NUMBER (numer, wartość liczbowa), 
jeÅ›li nie zostanie wyspecyfikowany. Wartość domyÅ›lna symbolu to 0 w przypadku pominiÄ™cia definicji. Wartość 
symbolu może być dowolnÄ… staÅ‚Ä… liczbowÄ…. Typ symbolu musi być jednym z poniższych znaków:
C = CODE
D = DATA
I = IDATA
X = XDATA
B = BIT
N = NUMBER (wartość liczbowa­ typ ustawiony domyÅ›lnie)
DomyÅ›lnie kompilator generuje plik wynikowy w formacie Intel­HEX. Gdy używa siÄ™ opcji ­­omf­51, 
generowany jest plik OMF­51.
Przykłady:
0.) asem
WywoÅ‚anie bez parametrów spowoduje, Å¼e kompilator wyÅ›wietli poniższe informacje:
MCS­51 Family Macro Assembler ASEM­51 V1.3
usage: asem [options]  [
options: ­i ­­includes=path1:path2:path3
­d ­­define=symbol [:value[:type]]
­o ­­omf­51
­c ­­columns
­v ­­verbose
1.) asem program.a51
Powyższe wywoÅ‚anie spowoduje kompilacjÄ™ pliku zródÅ‚owego programu napisanego w asemblerze dla 
mikrokontrolera rodziny 8051 o nazwie program.a51 i wygenerowanie pliku w formacie Intel­HEX program.hex 
oraz pliku listingu program.lst
2.) asem tarzan.asm jane jungle.prn
 Powyższe wywoÅ‚anie spowoduje kompilacjÄ™ pliku zródÅ‚owego programu napisanego w asemblerze dla 
mikrokontrolera rodziny 8051 o nazwie tarzan.asm i wygeneruje plik w formacie Intel­HEX o nazwie jane oraz 
plik listingu jungle.prn.
3.) asem project. eprom
 Powyższe wywoÅ‚anie spowoduje kompilacjÄ™ pliku zródÅ‚owego programu napisanego w asemblerze dla 
mikrokontrolera rodziny 8051 o nazwie project oraz wygeneruje plik wyjÅ›ciowy w formacie Intel­HEX o nazwie 
eprom.lst.
4.) asem ­o rover.a51
 Powyższe wywoÅ‚anie spowoduje kompilacjÄ™ pliku zródÅ‚owego programu napisanego w asemblerze dla 
mikrokontrolera rodziny 8051 o nazwie rover.a51 i wygeneruje plik wynikowy w formacie OMF­51 o nazwie 
rover.omf oraz plik listingu rover.lst.
5.) asem sample.a51 /dev/ttyS0 /dev/null
Powyższe wywoÅ‚anie spowoduje kompilacjÄ™ pliku zródÅ‚owego programu napisanego w asemblerze dla 
mikrokontrolera rodziny 8051 o nazwie sample.a51, wysyÅ‚a plik wyjÅ›ciowy w formacie Intel­HEX do portu 
szeregowego /dev/ttyS0 oraz blokuje generowanie pliku listingu przez wysÅ‚anei jego do /dev/null.
6.) asem ­i /usr/local/include/asem­51:~/8051/inc app.a51
Powyższe wywoÅ‚anie spowoduje kompilacjÄ™ pliku zródÅ‚owego programu napisanego w asemblerze dla 
mikrokontrolera rodziny 8051 o nazwie app.a51, podczas gdy wszystkie pliki doÅ‚Ä…czane najpierw bÄ™dÄ… 
poszukiwane w bieżącym katalogu, nastÄ™pnie w /usr/local/include/asem­51 i ostatecznie w ~/8051/inc.
7.) asem  define=Eva_Board:8000H:C universal.a51
Powyższe wywoÅ‚anie spowoduje kompilacjÄ™ pliku zródÅ‚owego programu napisanego w asemblerze dla 
mikrokontrolera rodziny 8051 o nazwie universal.a51. Podczas kompilacji napotkany w kodzie programu ciÄ…g 
słów EVA_BOARD zostanie zamieniony wartoÅ›ciÄ… 8000H.
Gdy bÅ‚Ä™dy w programie zostanÄ… wykryte, odpowiednie komunikaty zostanÄ… wygenerowane. Może to wyglÄ…dać 
w nastÄ™pujÄ…cy sposób:
applicat.a51 (14): must be known on first pass
userbits.inc (6): attempt to divide by zero
defines.inc (37): symbol not defined
applicat.a51 (20): symbol not defined
applicat.a51 (27): no END statement found
Każdy bÅ‚Ä…d jest opisywany nazwÄ… pliku zródÅ‚owego, w którym wystÄ…piÅ‚, numerem lini, gdzie wystÄ…piÅ‚ oraz 
komunikatem bÅ‚Ä™du.
Taki format wyjÅ›ciowy bÅ‚Ä™dów pozwala powiÄ…zać ASEM­51 ze Å›rodowiskami IDE innych firm. DoskonaÅ‚e 
dopasowanie może zostać osiÄ…gniÄ™te przy użyciu opcji  columns. Gdy zostanie ona użyta, numery kolumn z 
bÅ‚Ä™dami sÄ… dodatkowo wyÅ›wietlane w komunikacie o bÅ‚Ä™dach:
applicat.a51(14,12): must be known on first pass
userbits.inc(6,27): attempt to divide by zero
defines.inc(37,18): symbol not defined
applicat.a51(20,18): symbol not defined
applicat.a51(27,1): no END statement found [ Pobierz caÅ‚ość w formacie PDF ]

  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • zboralski.keep.pl