TIA AUF und AUFDI werden als unzulässige Zugriffe angezeigt

Rilana

Level-1
Beiträge
2
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,
ich versuche gerade unseren Standard von Simatic auf TIA umzusetzen
Nun habe ich das Problem, dass beim Erstellen eines Typen in der Bibliothek, AUF und AUFDI als Aufrufe von Instanz- und Globaldatenbausteine nicht zulässig sind.


An sich geht es darum die DB´s zwischen zu speichern um sie nicht kaputt zu schreiben



Code:
//Register und DBs speichern
      TAR1  #temp_SaveAR1
      TAR2  #temp_SaveAR2
      L DBNO
      T     #temp_SaveDB
      L DINO
      T     #temp_SaveDI



// Register zurückschreiben und DBs wiederherstellen

      LAR1  #temp_SaveAR1
      LAR2  #temp_SaveAR2
[COLOR=#ff0000]      AUF DB [ #temp_SaveDB]
      AUF DI [ #temp_SaveDI]
[/COLOR]

Hat jemand eine Lösung oder anderen Aufruf dafür?
 
AR1, AR2 und DI-Register braucht am Ende eines Bausteins nicht wieder hergestellt werden und DB-Register: wenn nur vollqualifizierte GlobalDB-Zugriffe eingesetzt werden, dann ist der Inhalt des DB-Registers sowieso egal. Der aufrufende Baustein darf sich sowieso nicht darauf verlassen, daß AR1, AR2 und DI nicht verändert sind, außer der Aufrufer ist ein FB, da werden AR2 und DI sowieso im Hintergrund wieder hergestellt.

AR1, AR2, DB und DI können schon allein durch den Aufruf eines FB/FC verändert sein, bevor der aufgerufene Baustein überhaupt den Original-Inhalt von vor dem Aufruf zu sehen bekommt. Das Wiederherstellen schon veränderter Register ist nutzlos.

Harald
 
Zurück
Oben