Zuviel Werbung? - > Hier kostenlos beim SPS-Forum registrieren

Ergebnis 1 bis 4 von 4

Thema: Nochmal Lokaldaten

  1. #1
    Registriert seit
    27.05.2004
    Ort
    Thüringen/Berlin
    Beiträge
    12.261
    Danke
    537
    Erhielt 2.707 Danke für 1.956 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Wenn ich in einem FB statische und temporäre Variablen definiere und dann den Befehl L LW40 ausführe, woher werden die Daten genommen ?


    Hier ein Ausschnitt der Deklaration:

    Code:
    VAR
      Stepcounter : BYTE ;	
      Anlauf_Stat : BOOL ;	
      Aktiv_Stat : BOOL ;	
      fn_Busy : BOOL ;	
      fn_Error : INT ;	
      Res01 : ARRAY  [0 .. 6 ] OF BYTE ;	
      Send : STRUCT 	
       Zustand : "PNOZMULTI_O";	
       Tabellennummer : BYTE ;	
       Segmentnummer : BYTE ;	
       Byte_0 : BYTE ;	
       Byte_1 : BYTE ;	
       Byte_2 : BYTE ;	
       Byte_3 : BYTE ;	
       Byte_4 : BYTE ;	
       Byte_5 : BYTE ;	
       Byte_6 : BYTE ;	
       Byte_7 : BYTE ;	
       Byte_8 : BYTE ;	
       Byte_9 : BYTE ;	
       Byte_10 : BYTE ;	
       Byte_11 : BYTE ;	
       Byte_12 : BYTE ;	
       Byte_13_reserviert : BYTE ;	
      END_STRUCT ;	
      
      .
      .  mehrere Struct-Var (ca. 180 Byte)
      .
      	
    END_VAR
    VAR_TEMP
      Ret_Val_Temp : INT ;	
    END_VAR
    Eigentlich gibt es das LW 40 nicht, oder? Es sei denn, die statischen Variablen liegen auch im Lokaldaten-Bereich ???

    Es gibt aber keine Fehlermeldung etc., also keine Prüfung, ob der FB überhaupt diesen Bereich soweit belegt ?


    Gruß Ralle !
    Zitieren Zitieren Nochmal Lokaldaten  

  2. #2
    Registriert seit
    19.06.2003
    Beiträge
    2.200
    Danke
    85
    Erhielt 259 Danke für 175 Beiträge

    Standard

    Vom Word ab Byte [40+Position des Stackpointers] des Stacks
    Es hindert dich keiner daran, einen Baustein aufzurufen, der dahin schreibt und einen nächsten, der davon iiest.
    Um es gut zu verstehen, probier mal fogendes:
    FC1
    L KF1
    L LW0
    L KF2
    L LW2
    L KF3
    L LW2
    L KF4
    L LW2

    FC3
    L KF11
    L LW0
    L KF12
    L LW2
    L KF13
    L LW2
    L KF14
    L LW2

    FC2
    L LW0
    T DB1DW0
    L LW2
    T DB1DW2
    L LW4
    T DB1DW4
    L LW6
    T DB1DW6

    FC2
    L LW0
    T DB1DW0
    L LW2
    T DB1DW2
    L LW4
    T DB1DW4
    L LW6
    T DB1DW6

    FC4
    Temp word in
    L LW0
    T DB2DW0
    L LW2
    T DB2DW2
    L LW4
    T DB2DW4
    L LW6
    T DB2DW6

    nun kannst du FC1 oder 3 aufrufen, danach FC2 (ohne Parameter) oder FC4 (mit einem Parameter) und durch beobachten der Werte in DB1 und DB2 sehen, wo deine Daten bleiben.

  3. #3
    Avatar von Ralle
    Ralle ist offline Super-Moderator
    Themenstarter
    Registriert seit
    27.05.2004
    Ort
    Thüringen/Berlin
    Beiträge
    12.261
    Danke
    537
    Erhielt 2.707 Danke für 1.956 Beiträge

    Standard

    @Zottel

    Danke erstmal, das probier ich aus...

    und laß dann wohl besser die Finger davon !

    Gruß Ralle !

  4. #4
    Registriert seit
    11.07.2004
    Ort
    D-63741
    Beiträge
    18
    Danke
    0
    Erhielt 1 Danke für 1 Beitrag

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    @Ralle

    L LW40 - temporaere Variable, wird aus dem lokalen Stack geladen, Variable liegt im lokalen Speicher, der dem Funktionsbaustein fuer die Zeit seiner Bearbeitung zugeordnet ist und nach der Bearbeitung des FB's geloescht und wieder anderen Bausteinen zur Verfuegung gestellt wird.

    L DIW40 -statische Variable, wird aus dem jeweiligen Instanz-Datenbaustein geladen, der dem FB zugeordnet ist..

    Viel Spass beim Ausprobieren..

Ähnliche Themen

  1. Und nochmal SCL output
    Von vollmi im Forum Simatic
    Antworten: 0
    Letzter Beitrag: 27.04.2009, 09:07
  2. nochmal schrittkette
    Von Anonymous im Forum Simatic
    Antworten: 10
    Letzter Beitrag: 17.01.2006, 16:24
  3. Nochmal Programmierbefehle PS3???
    Von apachler im Forum Sonstige Steuerungen
    Antworten: 4
    Letzter Beitrag: 08.12.2005, 15:16
  4. nochmal vbg4 / bgva2
    Von blitz123456 im Forum Elektronik
    Antworten: 8
    Letzter Beitrag: 11.11.2003, 16:38

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •