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

Ergebnis 1 bis 3 von 3

Thema: DB Adresse Berechnen

  1. #1
    BlackDice Gast

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Moin zusammen,
    ich versuche grade eine Variable Adresse zu berechnen und dann in diese Adresse einen Wert rein zu schreiben. Ich denke dass der obere Teil funktioniert nur bleibt mein Programm in der Zeile "L DBD [AR1,P#0.0]" stehen.

    Code:
          L     14      
          LAR1  
    
          L     #Pos1
          L     4
          *I    
    
          +AR1  
    
    
          U     "S1F"
          U     #1
          FP    M      4.0
          SPBNB _005
          L     "S1E"
          L     DBD [AR1,P#0.0]
          +R    
          T     DBD [AR1,P#0.0]
    _005: NOP   0

    BlackDice
    Geändert von BlackDice (30.09.2016 um 11:03 Uhr)
    Zitieren Zitieren Gelöst: DB Adresse Berechnen  

  2. "- Wo öffnest Du den DB auf den sich Dein "L DBD..." bezieht?
    - Adressen sind Bitadressen. Zur Adressierung von Byte/Word/DWord muß die Byte/Word/DWord-Nummer mit 8 multipliziert werden.
    - Beginnt Deine Tabelle bei DBB14? Dann mußt Du P#14.0 addieren oder zunächst alles in Byte-Adresse berechnen und dann mit 8 multiplizieren.

    Code:
          L     #PosSilo1
          L     4          //Größe Tabelleneinträge: REAL (DBD) ist 4 Bytes
          *I
          L     14         //Anfang der Tabelle: DBD14
          +D
          SLD   3          //(entspricht *8) Byte-Adresse-->Bitadresse P#xx.0
          LAR1
    
          U     "S1F"
          U     #Silo1
          FP    M      4.0
          SPBNB _005
          L     "S1E"
          AUF   "MeinDB"
          L     DBD [AR1,P#0.0]
          +R    
          T     DBD [AR1,P#0.0]
    _005: NOP   0
    Harald"


  3. #2
    Registriert seit
    22.06.2009
    Ort
    Sassnitz
    Beiträge
    10.767
    Danke
    884
    Erhielt 3.158 Danke für 2.559 Beiträge

    Standard

    - Wo öffnest Du den DB auf den sich Dein "L DBD..." bezieht?
    - Adressen sind Bitadressen. Zur Adressierung von Byte/Word/DWord muß die Byte/Word/DWord-Nummer mit 8 multipliziert werden.
    - Beginnt Deine Tabelle bei DBB14? Dann mußt Du P#14.0 addieren oder zunächst alles in Byte-Adresse berechnen und dann mit 8 multiplizieren.

    Code:
          L     #PosSilo1
          L     4          //Größe Tabelleneinträge: REAL (DBD) ist 4 Bytes
          *I
          L     14         //Anfang der Tabelle: DBD14
          +D
          SLD   3          //(entspricht *8) Byte-Adresse-->Bitadresse P#xx.0
          LAR1
    
          U     "S1F"
          U     #Silo1
          FP    M      4.0
          SPBNB _005
          L     "S1E"
          AUF   "MeinDB"
          L     DBD [AR1,P#0.0]
          +R    
          T     DBD [AR1,P#0.0]
    _005: NOP   0
    Harald
    Es ist immer wieder überraschend, wie etwas plötzlich funktioniert, sobald man alles richtig macht.

    FAQ: Linkliste SIMATIC-Kommunikation über Ethernet

  4. #3
    BlackDice Gast

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Danke das klappt.

    Code:
          L     MW    45
          L     4
          *I    
    
          L     14
          +D    
          SLD   3
          LAR1  
    
          U     "S1F"
          U     #S1
          FP    M      4.0
    
          SPBNB _005
          L     "S1E"
          AUF   DB     1
          L     DBD [AR1,P#0.0]
          +R    
          T     DBD [AR1,P#0.0]
    _005: NOP   0
    Geändert von BlackDice (30.09.2016 um 11:04 Uhr)

Ähnliche Themen

  1. Antworten: 1
    Letzter Beitrag: 26.07.2012, 15:19
  2. Antworten: 15
    Letzter Beitrag: 09.09.2011, 10:56
  3. 2^x berechnen
    Von TimoK im Forum Simatic
    Antworten: 4
    Letzter Beitrag: 23.02.2010, 09:31
  4. Anlagengeschwindikeit berechnen
    Von Adenauer im Forum Simatic
    Antworten: 7
    Letzter Beitrag: 07.03.2006, 17:02
  5. Heizleistung berechnen
    Von Kojote im Forum Stammtisch
    Antworten: 2
    Letzter Beitrag: 26.01.2006, 09:27

Lesezeichen

Berechtigungen

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