*
CALL "CREAT_DB" (
LOW_LIMIT := #wDbNumber,// Bereich der DB-Nummer
UP_LIMIT := #wDbNumber,// angeben
COUNT := #wDbLength,// Länge übergeben
RET_VAL := #iCreateReturn,// Fehlercode
DB_NUMBER := #wDbNumber);// DB Nummer zur weiterbearbeitung
Ich habe das ganze jetzt mal ausgeführt.
OB1 ruft FC1 auf, dieser den FB1 auf. Der FB1 ruft mein Hauptprogramm FB2(Multiinstanz) auf. An den FB2 habe ich an IN1(Block_DB) den DB400 geschrieben.
Quellcode im FB2:
AUF #IN1 \\ aufruf des BLOCK_DB
L DBNO
T #DBNummer \\ DBNummer als WORD
call "creat_DB"
Low_Limit:= #DBNummer
UP_Limit:= #DBNummer
RET_Val:= #Falsche_DB_Nummer \\Stat:INT
DB_Nummer:=#DB_Nummer \\ INOUT:WORD
So "funktioniert" es erst mal. Allerdings steht im RET_VAL der Wert 32945(online)
Darüberhinaus, wann wird der DB denn erstellt?? Kriege ich den im Simatic Manager nicht zu sehen??
Den DB siehst du ausschließlich im Online-Bausteinordner.
Morgen ja, heute hab ich kein so schwarzes Teil mehr rumliegen ...
Obgleich ich mich natürlich frage ob mich das wirklich interessiert.
Bisher war ich für mich persönlich nämlich schwer dagegen solche Siemens-Specials zu nutzen.
Ich bin was das anbelangt vermutlich eher konservativ ...
Zu deiner Frage:
Könnte es nicht sein, das die CPU ausschließlich Bausteine aus dem RAM löschen kann,
Offline Projektierte sind ja auf jeden Fall aufer Flash-Karte.
Allerdings steht da bei jedem DB als Ladespeicher "RAM", morgen das ganze also mal mit richtiger CPU...
Das funktioniert (mit PLC-SIM) problemlos.
Funktioniert in beide Richtungen,
CPU -> Step7 -> CPU
We use cookies and similar technologies for the following purposes:
Do you accept cookies and these technologies?
We use cookies and similar technologies for the following purposes:
Do you accept cookies and these technologies?