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

Ergebnis 1 bis 4 von 4

Thema: Pointer in SCL

  1. #1
    Registriert seit
    14.05.2007
    Beiträge
    29
    Danke
    13
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Tag auch!

    In einem FB möchte ich mir ein Array anlegen in dem ich
    mit Hilfe einer Funktion Adressen reinschreibe bzw. entferne.

    Dazu möchte ich einen Pointer zur Hife nehmen, damit ich immer weiß
    an welcher Stelle ich mich im Array befinde.

    Jetzt weiß ich nicht so genau wie ich so einen Pointer in der Funktion
    und im FB anlegen soll.
    Hat vielleicht einer ein kleines Beispiel, von dem ich mir den Umgang mit
    einem Pointer in einem solchen Fall abgucken kann?

    Wie gesagt es ist halt in SCL.

    Danke für alle Anworten.
    Zitieren Zitieren Pointer in SCL  

  2. #2
    Registriert seit
    27.05.2004
    Ort
    Thüringen/Berlin
    Beiträge
    12.218
    Danke
    533
    Erhielt 2.696 Danke für 1.948 Beiträge

    Standard

    Wenn du in SCL auf ein ARRAY indiziert zugreifen willst, kannst du daß mit einem einfachen Index machen.

    Beispiele aus der SCL-Hilfe von Step7:

    Code:
    STATUS_1:= DB11.DW[ZAEHLER]; 
    STATUS_2:= DB12.DX[WNR, BITNR]; 
    STATUS_1:= Datenbasis1.DW[ZAEHLER]; 
    STATUS_2:= Datenbasis2.DX[WNR, BITNR];  
    STATUS_1:= WORD_TO_BLOCK_DB(INDEX).DW[ZAEHLER];
    Die Indizierung muss den folgenden Regeln entsprechen:
    • Bei einem Zugriff, der vom Datentyp BYTE, WORD oder DWORD ist, müssen Sie genau einen Index verwenden. Der Index wird als Byteadresse interpretiert. Die Zugriffsbreite wird durch das Größen-Präfix festgelegt.
    • Bei einem Zugriff, der vom Datentyp BOOL ist, müssen Sie zwei Indizes benutzen. Der erste Index spezifiziert die Byteadresse, der zweite Index die Bitposition innerhalb des Bytes.
    • Jeder Index muss dabei ein arithmetischer Ausdruck vom Datentyp INT (0 - 32767) sein
    Gruß
    Ralle

    ... there\'re 10 kinds of people ... those who understand binaries and those who don\'t …
    and the third kinds of people … those who love TIA-Portal

  3. #3
    broesel ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    14.05.2007
    Beiträge
    29
    Danke
    13
    Erhielt 0 Danke für 0 Beiträge

    Standard

    OK Ralle ich werde es mal auf diesem Weg probieren!

    Vielleicht kannst du mir noch die filgenden zwei Fragen beantworten:

    1.Ein Feld des Arrays bzw. den Inhalt lösche ich doch, in dem ich es auf Null setze oder?

    2.Wie schreibe ich in einen globalen Datenbaustein DB1 die Adresse eines anderen Globalen Datenbausteins DB2 ( DB2.4 zum Beispiel)?


    Danke Ralle!

  4. #4
    Registriert seit
    27.05.2004
    Ort
    Thüringen/Berlin
    Beiträge
    12.218
    Danke
    533
    Erhielt 2.696 Danke für 1.948 Beiträge

    Beitrag


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    1. Ja, schreibst eine Null rein oder bei Bool setzt das Bit zurück.
    2. Wenn du das in SCL wieder auslesen willst würde ich es wie folgt machen:

    1 DWord: 1.Byte --> DB-Nummer
    2. Byte --> Byte-Nummer
    3. Byte --> Bit-Nummer

    Das ganze dann mit den oben beschriebenen Mechanismen zusammenboseln.

    Hier noch ein anderer Link:

    http://www.sps-forum.de/showthread.p...ht=Pointer+SCL
    Gruß
    Ralle

    ... there\'re 10 kinds of people ... those who understand binaries and those who don\'t …
    and the third kinds of people … those who love TIA-Portal

  5. Folgender Benutzer sagt Danke zu Ralle für den nützlichen Beitrag:

    broesel (16.05.2007)

Ähnliche Themen

  1. Pointer und Co
    Von mkd im Forum Simatic
    Antworten: 8
    Letzter Beitrag: 31.07.2008, 14:30
  2. SCL: Pointer
    Von dinner4one im Forum Simatic
    Antworten: 6
    Letzter Beitrag: 06.07.2008, 18:07
  3. Pointer in SCL ?
    Von AndreK im Forum Simatic
    Antworten: 8
    Letzter Beitrag: 27.04.2008, 21:24
  4. DB und Pointer
    Von PhilippL im Forum Simatic
    Antworten: 8
    Letzter Beitrag: 12.09.2007, 07:02
  5. VKE und Pointer im FC...
    Von halorenzen im Forum Simatic
    Antworten: 3
    Letzter Beitrag: 23.07.2004, 13:16

Lesezeichen

Berechtigungen

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