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

Seite 2 von 3 ErsteErste 123 LetzteLetzte
Ergebnis 11 bis 20 von 21

Thema: Pointer zu DWord, symbolische Parametrierung

  1. #11
    Limette ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    25.10.2010
    Beiträge
    239
    Danke
    107
    Erhielt 2 Danke für 2 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Zitat Zitat von PN/DP Beitrag anzeigen
    Bei mir schon


    Zitat Zitat von PN/DP Beitrag anzeigen
    Nur soviel: Falls Du mit "addiere 2 oder 3 dazu" meinst, aus P#2.0 ein P#4.0 oder P#5.0 zu machen, dann beachte, daß Du zu Deiner Adresse P#2.0 oder P#3.0 addieren mußt ( P#x.0 = x * 8 ).

    Harald

    Genau das habe ich gemeint. ok ok.

  2. #12
    Registriert seit
    19.06.2005
    Ort
    in Bayern ganz oben
    Beiträge
    1.360
    Danke
    188
    Erhielt 372 Danke für 290 Beiträge

    Standard

    Ägypten

    Gruss Daniel
    Erfahrung ist eine nützliche Sache. Leider macht man sie immer erst kurz nachdem man sie brauchte...

    OSCAT.lib Step 7

    Open Source Community for Automation Technolgy

    SPS-Forum Chat (Mibbit) | SPS-Forum Chat (MIRC)

  3. #13
    Limette ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    25.10.2010
    Beiträge
    239
    Danke
    107
    Erhielt 2 Danke für 2 Beiträge

    Standard

    Zitat Zitat von PN/DP Beitrag anzeigen

    FC1
    [CODE]
    // IN : Start_DB : Block_DB
    // : Start_Adresse : Int
    // TEMP: Start_OffsetPtr : DWord

    // aus #Start_Adresse (INT) einen Adresspointer (P#) machen :
    L #Start_Adresse // ( 2 )
    SLD 3 // ( 2 -> P#2.0 )
    T #Start_OffsetPtr // in LD für speicherindirekte Adressierung

    Harald
    Danke.
    Das funktioniert wie es soll. . hast mich ja also doch verstanden.
    Noch eine Frage, rein interessehalber:
    mit SLD 3 wird ja ( 2 -> P#2.0 ) Integer zu Pointer gemacht. wenn ich dieses SLD 3 ( Schiebe links Doppelwort) auskommentiere und dafür gleich einen Pointer als Start_Adresse lade, funktioniert mein SCL file nicht mehr.

    Code:
    // IN  : Start_DB : Block_DB
    //     : Start_Adresse : Pointer
    // TEMP: Start_OffsetPtr : DWord
    
    // aus #Start_Adresse (INT) einen Adresspointer (P#) machen :
          L     P##Start_Adresse          // ( 2 )
    //      SLD   3                       // ( 2 -> P#2.0 )
          T     #Start_OffsetPtr        // in LD für speicherindirekte Adressierung

  4. #14
    Registriert seit
    19.06.2005
    Ort
    in Bayern ganz oben
    Beiträge
    1.360
    Danke
    188
    Erhielt 372 Danke für 290 Beiträge

    Standard

    Hi,

    warum ist das wohl so. Weil ein Pointer die Adresse enthält und nicht den Wert. Außerdem hat er eine Länge von 6 Bytes. Wie viel Bytes hat Start_OffsetPtr? Geht das mit dem L und T überhaupt?

    Gruss Daniel
    Erfahrung ist eine nützliche Sache. Leider macht man sie immer erst kurz nachdem man sie brauchte...

    OSCAT.lib Step 7

    Open Source Community for Automation Technolgy

    SPS-Forum Chat (Mibbit) | SPS-Forum Chat (MIRC)

  5. #15
    Registriert seit
    19.06.2005
    Ort
    in Bayern ganz oben
    Beiträge
    1.360
    Danke
    188
    Erhielt 372 Danke für 290 Beiträge

    Standard

    Was hat Dein SCL Baustein für Parameter und was soll da ran?
    Alles andere ist Rätselraten.

    Gruss Daniel
    Erfahrung ist eine nützliche Sache. Leider macht man sie immer erst kurz nachdem man sie brauchte...

    OSCAT.lib Step 7

    Open Source Community for Automation Technolgy

    SPS-Forum Chat (Mibbit) | SPS-Forum Chat (MIRC)

  6. #16
    Limette ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    25.10.2010
    Beiträge
    239
    Danke
    107
    Erhielt 2 Danke für 2 Beiträge

    Standard

    Zitat Zitat von dalbi Beitrag anzeigen
    Hi,

    warum ist das wohl so. Weil ein Pointer die Adresse enthält und nicht den Wert. Außerdem hat er eine Länge von 6 Bytes. Wie viel Bytes hat Start_OffsetPtr? Geht das mit dem L und T überhaupt?

    Gruss Daniel
    Das mit dem Pointer war mir nicht ganz klar.
    Ja ok, das DWord hat nur 4b...hätte ja sein können dass es die 2 byte irgendwie automatisch wegschneidet^^. aber gut, ich ziehe die frage zurück.


    Edit:
    naja, es funkioniert ja jetzt. Aber hier hast du sie nachträglich.

    Aus dem SCL:

    Code:
    FUNCTION_BLOCK FB7000
    VAR_INPUT
     Status1: BYTE;
     Status2: BYTE;
     Status3: BYTE;
     Value1 : WORD;
     Value2 : WORD;
     Value3 : WORD;
    END_VAR
    
    VAR_OUTPUT
     Control1: BYTE;
     Control2: BYTE;
     Control3: BYTE;
    END_VAR

  7. #17
    Registriert seit
    19.06.2005
    Ort
    in Bayern ganz oben
    Beiträge
    1.360
    Danke
    188
    Erhielt 372 Danke für 290 Beiträge

    Standard

    Hi,

    Danke, jetzt hab ich es glaube auch verstanden.
    Sind die Werte in Deinem DB genau so angelegt wie die Parameter des Bausteins? z.b. Als Struct somit könntest Du direkt an deinen Start die Struktur hängen z.b. "DB_XY".FB7000_1 und es wäre symbolisch.

    Oder ist Start von irgendwas anderem abhängig? Sprich ändert sich der Wert im Programm.

    Gruss Daniel
    Erfahrung ist eine nützliche Sache. Leider macht man sie immer erst kurz nachdem man sie brauchte...

    OSCAT.lib Step 7

    Open Source Community for Automation Technolgy

    SPS-Forum Chat (Mibbit) | SPS-Forum Chat (MIRC)

  8. Folgender Benutzer sagt Danke zu dalbi für den nützlichen Beitrag:

    Limette (27.03.2011)

  9. #18
    Limette ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    25.10.2010
    Beiträge
    239
    Danke
    107
    Erhielt 2 Danke für 2 Beiträge

    Standard

    Zitat Zitat von dalbi Beitrag anzeigen
    Hi,

    Danke, jetzt hab ich es glaube auch verstanden.
    Sind die Werte in Deinem DB genau so angelegt wie die Parameter des Bausteins? z.b. Als Struct somit könntest Du direkt an deinen Start die Struktur hängen z.b. "DB_XY".FB7000_1 und es wäre symbolisch.

    Oder ist Start von irgendwas anderem abhängig? Sprich ändert sich der Wert im Programm.

    Gruss Daniel
    Jup, die sind genau so angelegt.
    Ah ok, das hört sich interessant an. Ich bin mal froh dass es so läuft wie es soll, aber danke trotzdem.
    Mit Start soll eigentlich nur das SCL file gestartet werden.

  10. #19
    Registriert seit
    11.07.2007
    Beiträge
    29
    Danke
    4
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Sind die Werte in Deinem DB genau so angelegt wie die Parameter des Bausteins? z.b. Als Struct somit könntest Du direkt an deinen Start die Struktur hängen z.b. "DB_XY".FB7000_1 und es wäre symbolisch.
    Hallo Dalbi,

    das mit der Struktur klingt interessant. Hab's gleich mal ausprobiert. Leider meckert er über den Strukturparameter "X1 ist keine Komponente von DB_SCHROTT". Was mache ich hier falsch?

    Gruß Thomas
    Angehängte Grafiken Angehängte Grafiken

  11. #20
    Registriert seit
    28.02.2006
    Ort
    Ostsee 5 min zum Strand
    Beiträge
    780
    Danke
    92
    Erhielt 110 Danke für 98 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Ist der DB schon gespeichert? hast du unter Datei "Zugriffe prüfen und aktualisieren" schon probiert?
    Gruß von der Ostsee

    Nordischerjung
    _____________________

    Wenn man seinem Paßbild ähnlich zu sehen beginnt, sollte man schleunigst Urlaub machen. (Vico Torriani, schw. Entertainer)

    Ich habe eine Diät gemacht und fettem Essen und Alkohol abgeschworen - in zwei Wochen verlor ich 14 Tage. (Joe E. Lewis)

Ähnliche Themen

  1. IO-Link Parametrierung
    Von Felixx91 im Forum Simatic
    Antworten: 2
    Letzter Beitrag: 09.08.2011, 13:34
  2. Parametrierung FB41
    Von Walter Kiefer im Forum Simatic
    Antworten: 4
    Letzter Beitrag: 09.12.2010, 12:58
  3. FB-Parametrierung überwachen
    Von mueckerich im Forum Simatic
    Antworten: 23
    Letzter Beitrag: 27.05.2009, 18:29
  4. Parametrierung CP 443-1
    Von -Andreas- im Forum Simatic
    Antworten: 6
    Letzter Beitrag: 09.11.2006, 22:16
  5. CP143+ H1 Parametrierung
    Von dna909 im Forum Feldbusse
    Antworten: 3
    Letzter Beitrag: 29.06.2006, 21:08

Lesezeichen

Berechtigungen

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