Forum: Mikrocontroller und Digitale Elektronik jump befehl (schieberegister)


von bocajuniors (Gast)


Lesenswert?

hallo zusammen,

komme nicht weiter unzwar sollen 8 led lampen durch 1 sekunde erzeugt 
werden.......dann springt (jmp) es von hinten - vorne

es handelt sich um schieberegister....

ich habe es so gemacht ,aber ich bin mir nicht sicher ob es stimmt,


Zeit von 1s:

µ8 mov R8,#08
µ7 mov R7,#FFh
µ6 mov R6,#FFh
µ5 mov R5,#FFh
µ4 mov R4,#FFh
µ3 mov R3,#FFh
µ2 mov R2,#FFh
µ1 mov R1,#FFh
DJNZ R1, µ1
DJNZ R2, µ2
DJNZ R3, µ3
DJNZ R4, µ4
DJNZ R5, µ5
DJNZ R6, µ6
DJNZ R7, µ7
DJNZ R8, µ8
JMP µ; Springt zum anfang zurück

von Johann L. (gjlayde) Benutzerseite


Lesenswert?

Nein. Schon die R1-Schleife hängt sich auf, weil R1 immer wieder mit ff 
geladen wird und der Wert nie auf 0 kommen kann.

von bocajuniors (Gast)


Lesenswert?

was kann man den verändern...?

mfg

von bocajuniors (Gast)


Lesenswert?

Kann mir denn keiner helfen?

mfg

von (prx) A. K. (prx)


Lesenswert?

bocajuniors wrote:

> komme nicht weiter unzwar sollen 8 led lampen durch 1 sekunde erzeugt
> werden.......dann springt (jmp) es von hinten - vorne

Dieser Satz ist mir nicht verständlich.

von Falk B. (falk)


Lesenswert?

@  bocajuniors (Gast)

>Kann mir denn keiner helfen?

Der Herr Duden vielleicht.

Formulier mal ein paar klare Sätze. Dieses hingekotzte Kaudelwelsch 
versteht kein Schwein.

MFg
Falk

von Siggi (Gast)


Lesenswert?

... versteht kein Schwein ...

@ Falk Brunner

Da DU es nicht verstehst, bleibt wohl nur ein Schluß ...

@ bocajuniors

... µ1 mov R1,#FFh
... DJNZ R1, µ1


   mov R1,#FFh
µ1 DJNZ R1, µ1

von Peter D. (peda)


Lesenswert?

bocajuniors wrote:
> ich habe es so gemacht ,aber ich bin mir nicht sicher ob es stimmt,

Dann simuliere es doch einfach.
Läuft es überhaupt fehlerfrei durch den Assembler?

Wenn Du Hilfe willst, dann wirf uns nicht so lustlos ein paar 
Codebrocken hin, wie dem Hund einen Knochen.

Du mußt schon beschreiben, was Du Dir dabei gedacht hast und die Zeilen 
kommentieren.

Hast Du überhaupt erstmal nen Ablaufplan gemacht?
Man fängt ja einen Hausbau auch nicht mit dem Dachboden an.


Peter

von M. Н. (Gast)


Lesenswert?

Wenn du eine Zeitschleife in Assembler brauchst 1s bei 1MHz:

; =============================
;    Warte
;     1000000 Zyklen:
; -----------------------------
; warte 999999 Zyklen:
          mov  R17, #09h
µ0  mov  R18, #BCh
µ1  mov R19, #C4h
µ2  djnz r19, µ2
    djnz r18, µ1
    djnz r17, µ0
; -----------------------------
; warte 1 Zyklus:
          nop
; =============================


bei 2 MHz musst du halt die schleife für 1s 2-mal ausführen usw....

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.