Braucht man so was überhaupt in ST? Die Standard-Konstruktionen IF-THEN-ELSE, FOR, WHILE, REPEAT, CASE decken doch die ganze Breite ab. Freundlicherweise übernimmt der Compiler die Generierung der Sprungziele. Eben deshalb kennt ST diese Elemente nicht.
Was die Anzahl der Bausteine angeht - mit welcher Mager-Version schaffst Du eigentlich? Hilft nur Aufbohren. Ich habe CoDeSys 2.3, das läßt deutlich mehr als nur 10 Bausteine zu.
Gruss Rolf
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Z80-CPU in Asembler geschrieben (läuft jetzt noch in
einer Produktionsanlage), möchte dieses in eine neue
SPS-Hardware implementieren. Eine Seqenztabelle
beschreibt alle Aktionen übersichtlich und einfach -
bis zur Anzeige des in xx Sek. nicht erreichten Endschalters.
Kann man AS-Transitionen und S5/S7-Äquivalente
vergessen.
Kenne mich in "C" aus, da sind ja auch bedingte
Sprünge möglich. Wenn Projekt fertig, stelle ich es hier
für allg. Weiterverwendung zum Download.
Meine CoDeSys-Version: 2.3.4.7
Gruss Bernd
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Anonymous
-
2006-05-16
Originally created by: Bernhard Werner
Hallo Kelle,
der einzige Grund warum es in ST keine Sprünge gibt, ist die Norm IEC 61131-3, die das nicht vorsieht. Natürlich geht es in der Regel ohne Sprünge, aber wenn jemand Sprünge verwenden will, dann soll er das doch auch tun dürfen.
In der neuen Version 3.0 sind Sprünge in ST möglich. Und zwar mit der Syntax
JMP _label;
_label:
Bernhard Werner
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hallo,
in AWL kann man auf Marken springen,
warum nicht in ST ?
Ist in ST viel übersichtlicher, da mein Programm
recht komplex ist (viel Bit-Schieberei mit bedingten
Sprüngen und Struct-Array-Aktionen).
... und soeben meldet CoDeSys, dass ich meine
10 Bausteine verbraucht habe ...
Was mache ich jetzt ?
Gruss Bernd
Braucht man so was überhaupt in ST? Die Standard-Konstruktionen IF-THEN-ELSE, FOR, WHILE, REPEAT, CASE decken doch die ganze Breite ab. Freundlicherweise übernimmt der Compiler die Generierung der Sprungziele. Eben deshalb kennt ST diese Elemente nicht.
Was die Anzahl der Bausteine angeht - mit welcher Mager-Version schaffst Du eigentlich? Hilft nur Aufbohren. Ich habe CoDeSys 2.3, das läßt deutlich mehr als nur 10 Bausteine zu.
Gruss Rolf
Hallo Rolf,
danke für die schnelle Antwort.
Habe vor 20 Jahren ein SPS-Programm für
Z80-CPU in Asembler geschrieben (läuft jetzt noch in
einer Produktionsanlage), möchte dieses in eine neue
SPS-Hardware implementieren. Eine Seqenztabelle
beschreibt alle Aktionen übersichtlich und einfach -
bis zur Anzeige des in xx Sek. nicht erreichten Endschalters.
Kann man AS-Transitionen und S5/S7-Äquivalente
vergessen.
Kenne mich in "C" aus, da sind ja auch bedingte
Sprünge möglich. Wenn Projekt fertig, stelle ich es hier
für allg. Weiterverwendung zum Download.
Meine CoDeSys-Version: 2.3.4.7
Gruss Bernd
Originally created by: Bernhard Werner
Hallo Kelle,
der einzige Grund warum es in ST keine Sprünge gibt, ist die Norm IEC 61131-3, die das nicht vorsieht. Natürlich geht es in der Regel ohne Sprünge, aber wenn jemand Sprünge verwenden will, dann soll er das doch auch tun dürfen.
In der neuen Version 3.0 sind Sprünge in ST möglich. Und zwar mit der Syntax
JMP _label;
_label:
Bernhard Werner
Hallo Herr Werner,
danke für die Info.
Wann wird die Version 3
zu erwarten sein ?
Originally created by: Andy :-)
Hallo Kelle,
Sprünge benötigt man nicht wirklich in ST...
Du kannst aber an FB's und Prog's in ST sogenannte "Aktionen" anhängen und diese dann bedingt ausführen (fast wie Sprungmarken)
grüsse
Andy