# erklären eines Programms



## woseitsihr (1 Juli 2010)

Hallo,

kann mir jemand diesen Ausschnitt eines Programms erklären??

Danke schonmal ;-)


  U     M    144.1
      =     #STGL44ARB
      U     M    145.1
      =     #STGL45ARB
      U     M    146.1
      =     #STGL46ARB

      L     0
      T     #fill_0
      CALL  SFC   21
       BVAL   :=#fill_0
       RET_VAL:=#retv
       BLK    :=P#M 101.0 BYTE 90

      U     M      0.6
      ON    M     40.2
      SPB   END2
      U     #STGL44ARB
      =     M    144.1
      U     #STGL45ARB
      =     M    145.1
      U     #STGL46ARB
      =     M    146.1
END2: NOP   0


----------



## TommyG (1 Juli 2010)

Moin,

bist Du so gut, und schreibst mal, mit welcher Hardware Du arbeitest? Bei den CPU's sind so manche SFC's hardwareabhängig (Also einige CPU's können die, andere nicht..).

Sonst Guck mal bei der Hilfe des SFC 21 rein, also in der Bibliothek die F1 drücken, nachdem Du den Bautein markiert hast. Komme momentan nicht dazu selbst tiefer reinzugehen, hat abe afak was mit Profibus und Datenübertragung zu tun...

Geht es Dir nur um die Funktion, oder versuchts Du ein PRob zu knacken?

Die '#' deuten auch auf Lokaldaten hin, also evtl 'black box'...

Greetz, Tom,

aus dem herrlich warmen Italien...


----------



## vierlagig (1 Juli 2010)

sfc21? fill ... einfaches überschreiben eines datenbereichs, in diesem fall 90 byte ab M101.0 mit einem vorgegebenen wert, in diesem fall 0

und da in diesen 90byte auch die M144.1, M145.1 und M146.1 liegen werden diese vorm überschreiben temporär gesichert und am ende wieder hergestellt.


----------

