-> Hier kostenlos registrieren
Hallo,
ich habe mal eine Frage zu MicroWin ( Version v4.?? Stand: 10/2008 )
Wie funktioniert da ein FC- Aufruf mit Übergabe eines MB ?
Ist JMP ein absoluter Sprung oder wird nur gesprungen, wenn Mx.x= 1 ?
Ich habe das Progi eigentlich in s7 geschrieben. Da weiß ich, wie was funktioniert.
Danach hatte ich die lustige Idee, das s7- Progi einfach als AWL- Quelle zu exportieren und in MicroWin als AWL- Quelle zu importieren.
Naja... importiert wurden zumindest die Kommentare richtig. Jede Programmzeile mußte nachbearbeitet werden.
Das ist mir auch soweit geglückt. Selbst das DB- Handling (heist in MicroWin z.B.: VB6 (vergleichbar mit DB1.DBB6) oder VW für WORD etc.
habe ich rausgefunden.
Nur dieses blöde Übergabe- Byte zum FC5 wird nix.
Der FC5 wird abgearbeitet.
Normalerweise sollte er nicht mehrfach in einem Zyklus aufgerufen werden ( JMP- Befehl ). Selbst, wenn JMP ein absoluter Sprung wäre, müßte doch zumindest erstmal irgendwas bei Erfüllung einer Mx.x- Bedingung übergeben werden ( auch wenn es das falsche MB wäre), aber es passiert gar nix.
Im FC 5 ist eine temp. Variable UebByte als Byte (IN) deklariert.
ich habe mal eine Frage zu MicroWin ( Version v4.?? Stand: 10/2008 )
Wie funktioniert da ein FC- Aufruf mit Übergabe eines MB ?
Code:
U M0.0
JMP 1 // soll springen, wenn M0.0= 1
Call MB16, FC5 // sonst FC5 aufrufen und MB16 übergeben
//
LBL 1 // der Rest ist nach dem selben Strickmuster, nur mit anderem
U M0.1 // Übergabe- MB
JMP 2
Call MB18, FC5
//
...
LBL 14
U M1.7
JMP 15
Call MB44, FC5
//
LBL 15 // soll wie NOP 0 funktionieren
Ich habe das Progi eigentlich in s7 geschrieben. Da weiß ich, wie was funktioniert.
Danach hatte ich die lustige Idee, das s7- Progi einfach als AWL- Quelle zu exportieren und in MicroWin als AWL- Quelle zu importieren.
Naja... importiert wurden zumindest die Kommentare richtig. Jede Programmzeile mußte nachbearbeitet werden.
Das ist mir auch soweit geglückt. Selbst das DB- Handling (heist in MicroWin z.B.: VB6 (vergleichbar mit DB1.DBB6) oder VW für WORD etc.
habe ich rausgefunden.
Nur dieses blöde Übergabe- Byte zum FC5 wird nix.
Der FC5 wird abgearbeitet.
Normalerweise sollte er nicht mehrfach in einem Zyklus aufgerufen werden ( JMP- Befehl ). Selbst, wenn JMP ein absoluter Sprung wäre, müßte doch zumindest erstmal irgendwas bei Erfüllung einer Mx.x- Bedingung übergeben werden ( auch wenn es das falsche MB wäre), aber es passiert gar nix.
Im FC 5 ist eine temp. Variable UebByte als Byte (IN) deklariert.