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

Ergebnis 1 bis 8 von 8

Thema: Pointer und Schleifenzähler

  1. #1
    Registriert seit
    28.02.2007
    Beiträge
    86
    Danke
    3
    Erhielt 6 Danke für 6 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    hey leute,

    mal ne bescheidene frage, habe in den anhang mal meine programmierung mti einem pointer und schleifenzähler gepackt.

    jetzt die frage dazu, wieso wird das adressregister (ar1) nicht erhöht, was ist daran falsch? also der schleifenzähler funktioniert. nur schreibt er mir die Daten immer auf das selbe ziel im datenbaustein. er erhöht das doppelwort im db nicht. sieht einer einen fehler in der programmierung oder kann mir einen andern tip geben?

    danke

    bis denne
    Angehängte Grafiken Angehängte Grafiken
    Zitieren Zitieren Pointer und Schleifenzähler  

  2. #2
    Registriert seit
    22.03.2007
    Ort
    Detmold (im Lipperland)
    Beiträge
    11.797
    Danke
    398
    Erhielt 2.418 Danke für 2.014 Beiträge

    Standard

    Du hast am Ende vergessen wieder nach "HOCH" zu springen ...
    Sprich : hinter der letzten Anweisung T MW 30 mußt du den Befehl einfügen SPA Hoch

  3. #3
    Registriert seit
    28.02.2007
    Beiträge
    86
    Danke
    3
    Erhielt 6 Danke für 6 Beiträge

    Standard

    Funktioniert aber trotzdem nicht.

    nochmal die genau beschreibung, was ich vorher, vielleicht hat jemand sonst ne idee:

    ich möchte bei jedem aufruf des ob35 (alle 6ms) einen wert (real) aus einem db in einen anderen db fortlaufend speichern. dies soll 400 mal geschehen.

    bis denne

  4. #4
    Registriert seit
    20.11.2006
    Ort
    Hamburg
    Beiträge
    225
    Danke
    35
    Erhielt 35 Danke für 32 Beiträge

    Standard

    Mein Vorschlag wäre, benutze die Information, die im MW30 steht um das AR1 mit Informationen zu versorgen.

    Wenn ich das richtig sehe, wird bei dir nur anfangs festgelgt, was im AR1 steht. Schon beim zweiten Schleifendurchlauf ist unsicher, was im AR1 steht.

    Code:
         L MW     30                           //Abbruchkriterium prüfen
         L 400 
         >I
         SPB END
         L MW      30                          //4byte
         L 4
         *I
         T MW     30
         L MW     30                           //Pointer erzeugen
         SLD 3
         LAR1
         L DB11.DBD10                          //Quelle
         AUF DB   5
         T DBD[AR1,P#0.0]                      //Information schreiben
         L MW     30                           //Laufvariable inkrementieren
         L 1
         +I
         T MW     30
    End: NOP 0
    Geändert von Dotzi (11.05.2007 um 13:22 Uhr)

  5. #5
    Registriert seit
    22.03.2007
    Ort
    Detmold (im Lipperland)
    Beiträge
    11.797
    Danke
    398
    Erhielt 2.418 Danke für 2.014 Beiträge

    Standard

    Hallo,
    ich hatte deine Schleifen-Routine nicht in Verbindung mit der Werte-Aufzeichnung gebracht ... jetzt ist der Groschen gefallen ...

    Das AR1-Register hat beim neuen Aufruf des OB35 NICHT mehr den Wert, den es beim letzten Durchlauf beim Verlassen hatte. Du mußt den Pointer also auch noch irgendwo zwischenspeichern und beim neuen Aufruf wieder laden . Vergiß also meinen letzten Beitrag. Der war in diesem Zusammenhang Quatsch.

  6. #6
    Registriert seit
    28.02.2007
    Beiträge
    86
    Danke
    3
    Erhielt 6 Danke für 6 Beiträge

    Standard

    könnte man denn den pointer dann an den schleifenzähler koppeln?

    l mw30 //schleifenzähler
    l p#4.0
    *D
    LAR1


    würde soetwas funtionieren? bin mir total unsicher bei der multiplikation!

  7. #7
    Registriert seit
    22.03.2007
    Ort
    Detmold (im Lipperland)
    Beiträge
    11.797
    Danke
    398
    Erhielt 2.418 Danke für 2.014 Beiträge

    Standard

    Nicht so, aber :

    L MW30
    ITD
    L 4
    *D
    SLD 3
    T dw_Pointer

    AUF DB 100
    L Wert_Real
    T DBD [dw_Pointer]

    hierbei ist dw_Pointer ein DWORD und Wert_Real dein Anlaogwert ...

  8. #8
    Registriert seit
    28.02.2007
    Beiträge
    86
    Danke
    3
    Erhielt 6 Danke für 6 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    An allen einen besten Dank!

Ähnliche Themen

  1. Pointer
    Von OB1 im Forum Simatic
    Antworten: 5
    Letzter Beitrag: 20.02.2009, 17:52
  2. Antworten: 4
    Letzter Beitrag: 10.03.2008, 10:02
  3. DB und Pointer
    Von PhilippL im Forum Simatic
    Antworten: 8
    Letzter Beitrag: 12.09.2007, 07:02
  4. db und pointer
    Von fbeine im Forum Simatic
    Antworten: 26
    Letzter Beitrag: 13.03.2006, 10:02

Lesezeichen

Berechtigungen

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