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

Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 16

Thema: Pointerformat

  1. #1
    Registriert seit
    04.10.2008
    Ort
    Nürnberg
    Beiträge
    98
    Danke
    10
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo,
    ich habe da ein kleines Problem.
    Ich will einen Merker laden über indirekte Adressierung.
    Ich habe ein Datenwort in dem ein Wert steht.
    Wenn z.B. 0 drin steht soll der Merker 50.0 geladen werden. Wenn 6 drin steht M50.6. Wenn allerdings 14 drin steht bräuchte ich den Merker 51.5.
    Ich habe mal so angefangen:
    L "Aktueller Schritt".Impulse //Wert
    SLW 3
    LAR1
    U M [AR1,P#0.0]
    = "MDEIMPULS" // aktueller Merker auf den der aus dem DW ermittelten Merker übernommen wird.

    Bin leider ein bisschen aus der Übung mit Pointeradressierung. Aber es gibt da bestimmt fittere....
    Zitieren Zitieren Pointerformat  

  2. #2
    Registriert seit
    22.03.2007
    Ort
    Detmold (im Lipperland)
    Beiträge
    11.728
    Danke
    398
    Erhielt 2.406 Danke für 2.002 Beiträge

    Standard

    Hallo,
    vielleicht wäre es so ja besser :
    Code:
    L P#50.0
    L #dein_Index
    +d
    LAR1
    U M [AR1,P#0.0]
    Gruß
    LL

  3. #3
    Uwe16 ist offline Benutzer
    Themenstarter
    Registriert seit
    04.10.2008
    Ort
    Nürnberg
    Beiträge
    98
    Danke
    10
    Erhielt 0 Danke für 0 Beiträge

    Standard

    *lach* das ging aber echt schnell.
    Ich habe nur ein Datenwort (kein Datendoppelwort)ist es dann richtig wenn ich +D schreibe? Und muss ich nicht mein Datenwort erst umrechnen in Bit und Byteadresse?

  4. #4
    Registriert seit
    08.08.2007
    Ort
    Dresden
    Beiträge
    9.648
    Danke
    1.059
    Erhielt 2.046 Danke für 1.627 Beiträge

    Standard

    Zitat Zitat von Uwe16 Beitrag anzeigen
    *lach* das ging aber echt schnell.
    Ich habe nur ein Datenwort (kein Datendoppelwort)ist es dann richtig wenn ich +D schreibe? Und muss ich nicht mein Datenwort erst umrechnen in Bit und Byteadresse?
    +D bezieht sich auf den Pointer, der als 32bit-Datenraumbeansprucher daher kommt

    @Larry: schön!

    warum mach ich das dann immer so umständlich?

    Code:
    *
          L     #iBitNumber
          L     50
          +I
          L     8
          /I    
          T     #dTemp
    
          L     P##dTemp
          LAR1  
    
          L     W [AR1,P#2.0]
          SLD   3
          L     W [AR1,P#0.0]
          +D    
          LAR1  
    
          U     M [AR1,P#0.0]
    achso ... damit es keiner versteht
    [SIGNATUR]
    Ironie setzt Intelligenz beim Empfänger voraus.
    [/SIGNATUR]

  5. #5
    Uwe16 ist offline Benutzer
    Themenstarter
    Registriert seit
    04.10.2008
    Ort
    Nürnberg
    Beiträge
    98
    Danke
    10
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Vielen Dank erstmal. Ich werde es am Montag probieren. Im moment ist das Wetter einfach zuuuu schön.

    Schönes Wochenende

  6. #6
    Uwe16 ist offline Benutzer
    Themenstarter
    Registriert seit
    04.10.2008
    Ort
    Nürnberg
    Beiträge
    98
    Danke
    10
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Hat geklappt. Danke !!

  7. #7
    Uwe16 ist offline Benutzer
    Themenstarter
    Registriert seit
    04.10.2008
    Ort
    Nürnberg
    Beiträge
    98
    Danke
    10
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Zitat Zitat von Larry Laffer Beitrag anzeigen
    Hallo,
    vielleicht wäre es so ja besser :
    Code:
    L P#50.0
    L #dein_Index
    +d
    LAR1
    U M [AR1,P#0.0]
    Gruß
    LL

    Wie schauts aus wenn ich das mit einem Datenbit vom DB machen will?
    Also nicht "
    U M [AR1,P#0.0]" sondern U DB81.DBX???

  8. #8
    Registriert seit
    22.06.2009
    Ort
    Sassnitz
    Beiträge
    11.204
    Danke
    926
    Erhielt 3.293 Danke für 2.662 Beiträge

    Standard

    Code:
    L P#50.0
    L #dein_Index
    +D
    LAR1
    AUF DB81
    U DBX [AR1,P#0.0]
    Gruß
    Harald

  9. #9
    Registriert seit
    13.05.2008
    Beiträge
    316
    Danke
    43
    Erhielt 23 Danke für 15 Beiträge

    Standard

    *gelöscht*
    Geändert von Beren (04.07.2011 um 17:18 Uhr)

  10. #10
    Uwe16 ist offline Benutzer
    Themenstarter
    Registriert seit
    04.10.2008
    Ort
    Nürnberg
    Beiträge
    98
    Danke
    10
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Zitat Zitat von PN/DP Beitrag anzeigen
    Code:
    L P#50.0
    L #dein_Index
    +D
    LAR1
    AUF DB81
    U DBX [AR1,P#0.0]
    Gruß
    Harald

    Vielen Dank!!
    Jetzt aber noch eine Frage....
    Wenn ich aud ein DW schreiben will geht dass dann so in der richtung?

    L P#00.0
    L #dein_Index
    +D
    LAR1
    AUF DB81
    T DBW [AR1,P#0.0][/CODE]

Ähnliche Themen

  1. IN-Typ wird in Pointerformat umgewandelt
    Von gingele im Forum Simatic
    Antworten: 4
    Letzter Beitrag: 16.07.2010, 15:17
  2. Antworten: 7
    Letzter Beitrag: 17.10.2005, 10:54

Stichworte

Lesezeichen

Berechtigungen

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