Zähler programmieren

googy

Level-1
Beiträge
64
Reaktionspunkte
1
Zuviel Werbung?
-> Hier kostenlos registrieren
Kann mir vielleicht einer einen Beispiel geben , wie man einen Zähler so programmieren könnte, dass er einen Merker z.B. MW120
5 mal erhöht.

Bsp:
erter Durchlauf -> Merker 120.0
zweiter Durchlauf -> Merker 120.1

usw.
 
???
wollst du zählen oder schieben ?
Für Schieben lautet der Befehl dafür "SRW 1"
Flanken-Steuerung nicht vergessen ...

Gruß
LL
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Willst du den den Wert des MW's erhöhen oder willst du ein Bit schieben oder willst du je nach Zählwert einen anderen Merker setzen oder bin ich zu blöd deine Frage zu verstehen? :confused:

Edit: Da hats einer noch früher nicht verstanden.
 
Zuletzt bearbeitet:
Ich möchte, dass ein Zylinder 5 mal ausfährt.
Dazu brauche ich doch einen Zähler.

Kann ich eiene Merker erstellen, der bis 5 hochzählt?
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Kann ich eiene Merker erstellen, der bis 5 hochzählt?

Code:
*
      U     #xImpuls        //der zählimpuls
      FP    #xHelpFlag      //die flankenauswertung
      SPBN  res
      L     #iCounter       //z.b. ein merkerwort
      +     1
      T     #iCounter       //inkrementierter wert
res:  U     #xReset         //der resetimpuls
      SPBN  end
      L     0               //nullt
      T     #iCounter       //das z.b. merkerwort
end:  NOP   0

der einfachste zähler, der mir grad einfällt
 
Zuviel Werbung?
-> Hier kostenlos registrieren
sogar mit sternchen *ROFL*

ich habe bei meinem beispiel die lokale adressierung gewählt, da mir der abstand zwischen operanden kennzeichen und adresse nicht geläufig ist und es nur schnell im editor zusammen geschrieben habe :rolleyes:

@larry: ich glaub du hast recht, das ist bei diesem fall wohl angebrachter :cool:
 
Versteht mich bitte nicht falsch aber ich bin ein Anfänger
und möchte die Funktionsweise eines Zählers anhand des Beispiels nachvollziehen.

Hier ist ein Screenshot.

Wie erstelle ich ein Programm, welches mir (siehe Anhang), nach dem klicken auf MB 110.0 dem den Merker 120 erhöht.(Bis 5)
 

Anhänge

  • 2.JPG
    2.JPG
    124,8 KB · Aufrufe: 91
Ist soweit alles richtig?

Wie bringe ich jetzt den Zähler dazu hochzuzählen?
 

Anhänge

  • 3.JPG
    3.JPG
    143,1 KB · Aufrufe: 41
Wie erstelle ich ein Programm, welches mir (siehe Anhang), nach dem klicken auf MB 110.0 dem den Merker 120 erhöht.(Bis 5)

Code:
*
      U     M    110.0        //der zählimpuls
      FP    M    110.1        //die flankenauswertung
      SPBN  res
      L     MB   120          //z.b. ein merkerwort
      +     1
      T     MB   120          //inkrementierter wert
res:  U     M    110.2        //der resetimpuls
      SPBN  end
      L     0                 //nullt
      T     MB   120          //das z.b. merkerwort
end:  NOP   0
 
Zuletzt bearbeitet:
Code:
*
      U     M    110.0        //der zählimpuls
      FP    M    110.1        //die flankenauswertung
      SPBN  res
      L     MB   120          //z.b. ein merkerwort
      +     1
      T     MB   120          //inkrementierter wert
res:  U     M    110.2        //der resetimpuls
      SPBN  end
      L     0                 //nullt
      T     MB   120          //das z.b. merkerwort
end:  NOP   0

Könntest du einen Screenshot von den Zähler posten.
Ich kann die Darstellung nicht ändern.

Weitere Frage: Bei dem Zählen, den ich erstellt habe. Warum wird dort der Merker 121 verändert?
Er taucht doch im Zähler nicht auf:confused:
 
Könntest du einen Screenshot von den Zähler posten.
Ich kann die Darstellung nicht ändern.

nein, da nur im editor geproggt
da fehlen paar noppen um es in KUP darstellen zu können

Weitere Frage: Bei dem Zählen, den ich erstellt habe. Warum wird dort der Merker 121 verändert?
Er taucht doch im Zähler nicht auf:confused:

wohl taucht er auf! das MW120 besteht aus MB 120 und MB 121 und da siemens mit little endian arbeitet steht das LSB im zweiten byte
 
Zurück
Oben