Pause zwischen AWL befehlen

dir ist klar dass du damit die zykluszeit verlängerst?

SFC47 "WAIT" macht das, was du willst ...

sollte ich nachfragen wofür? vielleicht macht es ja mehr sinn, die entsprechende sequenz ein paar zyklen zu überspringen?! tut der zykluszeit nicht ganz so weh :rolleyes:
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Was willst du genau erreichen? Du kannst auch eine Art Schrittkette bauen, für jeden AWL-Befehl einen Schritt und zwischen den Schritten per Timer eine Wartezeit einfügen, dann geht das nicht über die Zykluszeit. Ist aber schon etwas Aufwand, aber wofür das Ganze???
 
für ein ganz einfaches Lauflicht was ich mir so vorgestellt habe:
L 1
T AB 0
L 2
T AB 0
L 4
T AB 0

und dazwischen Wartezeiten.
 
Lauflicht

Hi, ginge schon..
ist aber keine gute Idee..Wie wäre es mit einem Schieberegister(MBxx), wo nach einer Zeit(Flanke) immer nach links geschoben wird..und dann:

L MBxx
T ABxx


V.
 
Wie lange soll diese artezeit sein? Wie wärs wenn du dir dir CPU Taktmerker zur hilfe nimmst. Bei länderenZeiten kannst du die positive flanke auch alls anstoß für Timer verwenden.
 
// Rücksetzen

u(
L MB 0
L 256
> I
)
spb res
spa ok

res: L 0 // Abhängik ob alle Lichter aus sein sollen 0 od. 1
T MB 0

ok: Nop 0

// -- Ausgangsbyte ändern

U "Merkbit_1s"
FP M10.0
spb LL
Spa End

LL: L MB 0
T AB 0

L MB 0
L 2
*I
T MB 0

End: Nop 0


//////////////////////////////////////////////////////////////////////////////////

oder Schieberegister

/////////////////////////////////////////////////////////////////////////////////

// Rücksetzen

u(
L MW 0
L 256
> I
)
spb res
spa ok

res: L 0 // Abhängik ob alle Lichter aus sein sollen 0 od. 1
T MB 0

ok: Nop 0

// Ausgangsbyte ändern

U "Merkbit_1s"
FP M10.0
spb LL
Spa End

LL: L MW 0 // 0 0 0 0 0 0 0 1
SLW 1 // 0 0 0 0 0 0 1 0
T MW 0

L MB 0
T AB 0

End: Nop 0

-----------------------------------------------------------------------

Ich hoffe ich hab da jetzt keinen Hund reingebaut aber den Ansatz kannst du verwenden denke ich
 
Code:
*
      U     E      0.0                  // start
      FP    M     10.0
      SPBN  ll
      L     L#16843009                  // 0000 0001 0000 0001 0000 0001 0000 0001
      T     MD    12                    // laden

ll:   U     M      2.5                  // cpu-takt 1hz
      FP    M     10.1
      SPBN  end
      L     MD    12                    // MW12
      RLD   1                           // um eins nach links (rotierend)
      T     MD    12
end:  L     MB    13                    // ein byte von MW12
      T     AB     0                    // auf ausgang schreiben
 
Zuletzt bearbeitet:
Besser ist, die Bit's im AKKU zu rotieren, weil sonst irgendwann alles aus dem AKKU "rausgeschoben" ist und dann bleibts dunkel.;)

Code:
      U     E      0.0            // start
      FP    M     10.0
      SPBN  lali
      L     L#16843009            // 0000 0001 0000 0001 0000 0001 0000 0001
      T     MD    12              // laden
lali: U     M     2.5            // cpu-takt 1hz
      FP    M     10.1
      SPBN  end
      L     MD    12              // MD12
      RLD   1                     // um eins nach links
      T     MD    12
end:  L     MB    15              // ein byte von MW12
      T     AB     0              // auf ausgang schreiben
 
Zuviel Werbung?
-> Hier kostenlos registrieren
@ohgn: mist, jetz warste doch schneller ... hab überlegt, was schreibt er jetz... nochmal geguckt ... sch***e ... du mußt rotieren ... schnell ändern ... und dann sowas ... mist :cry:

:rolleyes:
 
Zurück
Oben