Forum: Mikrocontroller und Digitale Elektronik Multiplikation


von Darko Sabljo (Gast)


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

von Darko Sabljo (Gast)


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

von OliverK (Gast)


Lesenswert?

Hallo Darko!

Dein Studio hätte aber beim Simulieren aber meckern müssen, daß dieser
Controller keine Multiplikation unterstützt!?


Grüße
Oliver

von Frankl (Gast)


Lesenswert?

Studio 4 ist noch Baustelle siehe auch www.avrfreaks.net <forum>
<studio4>

von Darko Sabljo (Gast)


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

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.