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

Ergebnis 1 bis 6 von 6

Thema: max. Adressierung Adressregister

  1. #1
    Registriert seit
    16.03.2010
    Beiträge
    4
    Danke
    4
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Moin,

    folgendes Problem:

    L P#7476.0
    LAR1 P#92.0
    +AR1

    steht dann folgende Adresse im AR1

    2096528.0

    Gibts da vielleicht einen maximal adressierbaren Bereich?

    Eigentlich sollte doch ein Bereichszeiger mit der Byte Adresse (16 Bit) bis 65535.X adressierbar sein, oder habe ich irgendwo einen Denkfehler?

    mfg Daniel
    Zitieren Zitieren max. Adressierung Adressregister  

  2. #2
    Registriert seit
    29.03.2004
    Beiträge
    5.731
    Danke
    143
    Erhielt 1.685 Danke für 1.225 Beiträge

    Standard

    Die Begrenzung liegt im Befehl +AR1, welcher nur bei Werten im Bereich von -32768 ... +32767 korrekt arbeitet.
    Deine Konstante P#7476.0 bedeutet aber eine Konstante vom Wert 7476 * 8 = 59808.

    Wenn du mit so großen Werten hantieren willst, muss du die Addition der Adressregister selber machen (+D), aber vorher selber die Bereichskennung ausmaskieren und nach der Berechnung wieder einbauen.

  3. Folgender Benutzer sagt Danke zu Thomas_v2.1 für den nützlichen Beitrag:

    dan_mue (17.08.2010)

  4. #3
    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,

    wie kommst Du auf 2096528.0?

    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. #4
    Registriert seit
    11.05.2005
    Ort
    Baden-Württemberg
    Beiträge
    669
    Danke
    113
    Erhielt 153 Danke für 124 Beiträge

    Standard

    Hi,

    ohne jetzt testen zu können würde ich sagen, das geht so:

    Code:
    LAR1 P#7476.0
    L P#92.0
    +AR1
    so sollte ein Pointer auf 7568 im AR1 stehen.
    Soll das so sein?

    Micha
    "arbeite klug, nicht hart" - deutsches Sprichwort

  6. #5
    Registriert seit
    07.12.2007
    Beiträge
    49
    Danke
    5
    Erhielt 7 Danke für 7 Beiträge

    Standard

    Zitat Zitat von SPSKILLER Beitrag anzeigen

    Code:
    LAR1 P#7476.0
    L P#92.0
    +AR1

    Hab ich auch schon so gemacht, funktioniert.



    Gruß

  7. #6
    dan_mue ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    16.03.2010
    Beiträge
    4
    Danke
    4
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Zitat Zitat von Thomas_v2.1 Beitrag anzeigen
    Die Begrenzung liegt im Befehl +AR1, welcher nur bei Werten im Bereich von -32768 ... +32767 korrekt arbeitet.
    Deine Konstante P#7476.0 bedeutet aber eine Konstante vom Wert 7476 * 8 = 59808.

    Wenn du mit so großen Werten hantieren willst, muss du die Addition der Adressregister selber machen (+D), aber vorher selber die Bereichskennung ausmaskieren und nach der Berechnung wieder einbauen.
    Hallo Thomas,

    besten Dank, das ist das Problem...werde somit, wie du vorgeschlagen hast, die Addition ins AR1 ohne +AR1 machen.

    mfg Daniel

Ähnliche Themen

  1. Adressregister im FB
    Von moggi im Forum Simatic
    Antworten: 11
    Letzter Beitrag: 02.03.2011, 09:58
  2. Adressregister und Pointer
    Von jan820813 im Forum Simatic
    Antworten: 4
    Letzter Beitrag: 29.03.2008, 18:54
  3. Arbeiten mit Adressregister
    Von psum im Forum Simatic
    Antworten: 4
    Letzter Beitrag: 17.03.2006, 13:45
  4. Antworten: 4
    Letzter Beitrag: 16.09.2004, 12:30
  5. Adressregister
    Von Ralle im Forum Simatic
    Antworten: 5
    Letzter Beitrag: 31.08.2004, 10:46

Lesezeichen

Berechtigungen

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