Multiplikation

Gast #52458
Lesenswert?

Hi Leute,
also ich zweifel grad an mir ;)
warscheinlich ist es auch nur irgendwie ein Flüchtikeitsfehler, aber
mal zur Erklärung.
Ich habe einen Wert, den im mit 10 Multiplizieren möchte. Mein
Controller ist ein 90S4433. Der ja nen Hardwaremultiplier hat wenn ich
mich nicht irre.
Also benutzte ich den befehl "mul"
hier mal mein Quellcode:

heiz_schalt_ein:

           ldi temp2,10
;temp wert zehner
           mov temp1,r22
           rcall BITSWAP
     mul temp1,temp2
     mov temp3,r0

;temp wert einer
           mov temp1,r23
           swap temp1
           rcall BITSWAP

           add temp3,temp1

so.. also ich will temp1 mit temp2 multiplizieren, und laut instruction
Set wird das Ergebnis in R0 und R1 gechrieben.
Nun hab ich das in den Controller geschrieben und es funzt nicht, dann
dacht ich mir, simulier es doch mal in AVRStudio 4 und da macht ers
auch nicht. Mach ich da irgendwie was falsch? Warscheinlich... sonst
würde es ja gehen :)
aber vielleicht könnte mir ja jemand einen Tip geben, wär euch sehr
dankbar!

Gruss
Darko
Gast #52459
Lesenswert?

hi.. man ist das Peinlich!
Ich hab zwar im Instruction Set den Befehl gelesen, aber nun nochmal
die Datenblätter gechecked und gesehen das das wohl erst ab den Megas
implementiert ist. mist :)

naja..

trotzdem danke die sich vielleicht schon den kopf zerbrochen haben :)

Gruss
Darko
Gast #52462
Lesenswert?

Hi Oliver,

ja, also das hätt ich eigentlich auch erwartet, oder das es zumindest
ne compilerwarnung gibt... aber leider nix :(
nun gut, hab die Multiplikation halt von Hand gelöst :)

@Frankl  leider stimmts wohl, das es absolut unausgereift ist :(

gruss Darko

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