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
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
Hallo Darko! Dein Studio hätte aber beim Simulieren aber meckern müssen, daß dieser Controller keine Multiplikation unterstützt!? Grüße Oliver
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.