msp430-assembler, pushM und popM - illegal mnemonic for specified core?

#5620099
Lesenswert?

Hi,

habe gerade die eigentlich sehr praktischen Befehle pushm und popm im 
msp430-familyguide entdeckt (siehe Anhang).

"[E0002]illegal mnemonic for specified core" meckert CCSv5/gmake für die 
jeweiligen Zeilen.

pushm.w und popm.w habe ich versucht. *.w wäre hier ja aber sowieso 
default.

Mit separaten push und pop je Register funktioniert alles.

Wird nicht zur Sache tun, denk ich mal, aber ich verwende so ein 
msp430g2553-LaunchPad. Der Befehlssatz sind doch bei allen der gleiche, 
oder etwa nicht?

CCS erkennt die auch als Befehle an -farblich meine ich.

Syntax ist genau wie im Beispiel:
1
pushm.w #2, r5
2
;[...]
3
popm.w #2, r5

Wenn ich die Befehle groß schreibe, wie im Familyguide, erkennt CCS sie 
nicht als Befehle an (farblich). Mit Groß- und Kleinschreibung wird das 
aber nichts zu tun haben, oder? Hab auch dazu mal zumindest nichts 
gefunden...

Kennt jemand von euch das Problem? Funktionieren die Befehle bei euch?

Danke!
Angehängte Dateien:
Persönliche Seite #5620174
Lesenswert?

Man kann recht leicht an der kombinierten Größe des Flash-ROMs und des 
RAMs erkennen, welcher Kern verwendet wird; wenn es in der gleichen 
Unterfamilie eine Variante mit mehr als 64 kByte gibt, wird der 
MSP430X-Kern (mit 20-Bit-Adressierung), sonst aber nur der MSP430-Kern 
(mit 16-Bit-Adressierung) verwendet.

Daß bei der Beschreibung der einzelnen Befehle (wie im Eröffnungsposting 
gezeigt) im "Family User's Guide" (hier slau144j.pdf) der Hinweis fehlt, 
daß der betreffende Befehl nur auf MSP430X verfügbar ist, das ist 
allerdings unschön, das hätte TI da jeweils noch dazuschreiben können.
#5620179
Lesenswert?

Ahh. Ok. Danke euch dreien.

Das X in MSP430X steht für Extended und heißt nicht alle MSP430 (wie 
z.B. Version 5.x). Was gelernt.

Dabei verwenden pushm.w und popm.w im Gegensatz zu pushm.a/popm.a die 4 
Extended-Bits gar nicht.

Schade.


Rufus Τ. F. schrieb:
> Daß bei der Beschreibung der einzelnen Befehle (wie im Eröffnungsposting
> gezeigt) im "Family User's Guide" (hier slau144j.pdf) der Hinweis fehlt,
> daß der betreffende Befehl nur auf MSP430X verfügbar ist, das ist
> allerdings unschön, das hätte TI da jeweils noch dazuschreiben können.

Allerdings. Hat mich über eine Stunde gekostet.
Persönliche Seite #5624057
Lesenswert?

Bernd B. schrieb:
> das "X" ist auf dem Gehäuse des MSP eingedruckt, wenn zutreffend oder
> nicht, wenn nicht.

Solange nicht explizit im Datenblatt steht, daß das so gehandhabt wird, 
halte ich das für reinen Zufall.

Auf meinem 'F5438 steht ausgeschrieben(!) "MSP430F5438" drauf.

Vor allem ist es überflüssig, weil im Datenblatt (in das man ja sowieso 
sehen sollte) drinsteht, welcher Kern verwendet wird.

Dein 'FR2355 verwendet den Xv2-Kern, aber hat keinerlei Grund für 
20-Bit-Adressierung, weil keiner der Verwandten dafür ausreichend 
Adressraum nutzt.

Wobei die Information gut versteckt ist, sie findet sich im 
'FR2355-Datenblatt schon auf Seite 109.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren