Uso di MPASM da linea di comando
MPASM è essenzialmente un programma DOS e può lavorare anche a
seguito di una riga di comando con lo stesso risultato. Nel mondo di Windows parrebbe che l' uso delle linee di comando sia un avanzo
inutile del passato. In pratica, però, possono esserci situazioni in cui la
praticità della linea di comando è imbattibile come efficienza e velocità di
esecuzione.
La linea di comando di MPASM si compone di vari campi ed ha una forma come
quella esemplificata qui sotto :
MPASMWIN [/<opzione>[,/<opzione>....]] [<nome_sorgente>]
Il nome_sorgente equivale al campo introdotto
con l'opzione BROWSE della finestra Window ed indica il path per raggiungere il
sorgente da assemblare e le opzioni indicano gli altri campi di
scelta della stessa finestra. L' elenco delle opzioni è riportato nella
documentazione di MPASM ; dove una opzione non è espressa, vale il default :
Option |
Default
|
Funzione
|
? |
N/A |
Display de e d e d-:zhe MPASM Help Panel |
a |
INHX8M |
Set hex file format: /a<hex-format>
dove<hex-format>
è uno dei segueti
[INHX8M | INHX8S | INHX32] |
c |
On |
Enable/Disable case sensitivity |
d |
Nessuno |
Define symbol:
/dDebug /dMax=5 /dString="abc" |
e |
On |
Enable/Disable/Set Path for error file
/e Enable
/e + Enable
/e - Disable
/e <path>error.file Enables/sets
path |
h |
N/A |
Displays the MPASM Help Panel |
l |
On |
Enable/Disable/Set Path for the listing file
/l Enable
/l + Enable
/l - Disable
/l <path>list.file Enables/sets
path |
m |
On |
Enable/Disable macro expansion |
o |
Off |
Enable/Disable/Set Path for the object file
/o Enable
/o + Enable
/o - Disable
/o <path>object.file Enables/sets
path |
p |
nessuno |
Set the processor type:
/p<processor_type>
where <processor_type> is
a PICmicro device. |
q |
Off |
Enable/Disable quiet mode (suppress screen
output) |
r |
Hex |
Defines default radix:
/r<radix>
where <radix> is
one of [ HEX | DEC | OCT ] |
t |
B |
List file tab size: /t<size> |
w |
0 |
Set message level:
/w<level>
where <level>
is one of [0|1|2]
0 – all messages
1 –
errors and warnings
2 –
errors only |
x |
Off |
Enable/Disable/Set Path for cross reference file
/x Enable
/x + Enable
/x - Disable
/x <path>xref.file Enables/sets
path |
Ad esempio il comando:
mpasmwin.exe /rDEC /p16F628 "prova.asm"
assembla il file prova.asm con base decimale e per il processore PIC 16F628.
Alcune note non secondarie
-
Non c'è ragione particolare per cambiare
i default di MPASM. Se volete cambiarli, fatelo a ragion veduta.
-
MPASM consente di abilitare alcune
opzioni relative all' ambiente di assemblaggio del processore, come la
radice di default e il processore.
Non è consigliato assemblare forzando queste opzioni, in quanto MPASM
può prelevare le stesse dal sorgente, il che è molto più pratico ed
evita possibili errori.
-
MPASM compila sorgenti scritti per
processori PIC.
Quindi, un sorgente, pure scritto con la massima correttezza sintattica, sarà
compilato solo ed esclusivamente se corrisponde a quanto previsto
da Microchip.
Quindi, sorgenti scritti per altri processori (Scenix, ARM, ST6) non
potranno essere elaborati da questo Assembler.
Analogamente, sorgenti scritti per PIC,
ma con Assembly aventi sintassi diversa da MPASM (ad esempio SASM)
probabilmente non saranno assemblati e sarà necessario modificarli o
creare un numero adeguato di macro per superare le incompatibilità tra i
testi.
Un Assembler trasforma una lista ASCII in
un file .hex. Per ottenere l' opposto esistono dei disassembler, ovvero programmi per risalire dal file .hex
alla sequenza di opcode. Ovviamente un disassembler deve essere adatto ad uno
specifico processore, in quanto ogni processore ha la sua equivalenza tra
set di istruzioni e codici binari.
In particolare, i file .hex generati compilando sorgenti scritti con
linguaggi ad alto livello saranno particolarmente complessi e una loro
"decodifica" manuale diventa una impresa al di sopra delle
normali possibilità.
|
LINKS
Il documento 33014.pdf è il MPASM™
Assembler, MPLINK™ Object Linker, MPLIB™ Object Librarian ...
Il documento 30400.pdf è il MPASM™/MPLINK™
PICmicroо MCU Quick Chart
Il
documento 51519.pdf è il MPLAB
IDE User's Guide
E' consigliabile scaricare e
consultare questi documenti per maggiori dettagli sul macro Assembler.
|