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

Ergebnis 1 bis 2 von 2

Thema: Speicher kopieren? (so a la "memcpy" möglich?)

  1. #1
    Registriert seit
    14.09.2011
    Beiträge
    109
    Danke
    17
    Erhielt 5 Danke für 5 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Moin,

    um das Fetch/Write in TIA/SCL neu zu implemtieren, da Siemens' dumme Herrlichkeit FB210 gestichen hat,
    lese ich Daten via TCP/IP in einem Buffer (im L#/I-DB des FBs) ein.

    Um den elegant zu verarbeiten, soll möchte ich aus dem Buffer/Empfangspeicher die Daten umkopieren in eine vorbereitete Struktur.

    z.B. für den Monitor in einen "dummy" DB:
    #ret_val := MOVE_BLK_VARIANT(SRC := #buffer, COUNT := 16, SRC_INDEX := 0, DEST_INDEX := 0, DEST => p#db1.dbx 0.0 dint 4);

    b.z.w:
    #ret_val := MOVE_BLK_VARIANT(SRC := #buffer, COUNT := 16, SRC_INDEX := 0, DEST_INDEX := 0, DEST => #telegram);

    Hinter #telegramm verbirgt sich eine Lokale, statische Struktur Variable, 16 Bytes groß, die die RFC1006 Struktur beinhaltet.

    Im Prinzip will ich ein "memcpy wie in C" machen.
    Jedocch Antwortet das MOVE_BLK_VARIANT mit 8084 := Datentypen stimmen nicht. WTF? Genau die sollen/müssen ja "egal" sein, 16 ... n Bytes sind zu kopieren. Mehr nicht.

    Idee, was falsch ist?

    Euer Jojo
    Geändert von shadowdb (01.06.2016 um 14:48 Uhr) Grund: Gelöst
    Zitieren Zitieren [gelöst] Speicher kopieren? (so a la "memcpy" möglich?)  

  2. #2
    Avatar von shadowdb
    shadowdb ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    14.09.2011
    Beiträge
    109
    Danke
    17
    Erhielt 5 Danke für 5 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Selber gefunden.

    Die Lösung war, Serialize, Desrialize verwenden.
    z.B.;
    Code:
    #ret_val := Deserialize(SRC_ARRAY := #buffer, DEST_VARIABLE => #tel, POS := #buffer_pos);
    Unter dem Mäntelchen "not invented here" wird da wohl bei Siemens sehr viel vermurkst ...
    Jojo

Ähnliche Themen

  1. Antworten: 2
    Letzter Beitrag: 14.01.2010, 18:46
  2. Antworten: 5
    Letzter Beitrag: 28.10.2009, 20:26
  3. Wincc- In "C" Dateien, verschieben, kopieren, löschen?
    Von Bosga im Forum Programmierstrategien
    Antworten: 3
    Letzter Beitrag: 26.12.2008, 16:54
  4. Projekt kopieren Verzeichnis "HMIEs" flex 07
    Von extrusion1982 im Forum HMI
    Antworten: 0
    Letzter Beitrag: 19.03.2008, 18:40
  5. Antworten: 9
    Letzter Beitrag: 25.10.2006, 08:47

Stichworte

Lesezeichen

Berechtigungen

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