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

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

Thema: Bitzugriff auf Word im FB (Temp oder Stat Bereich)

  1. #1
    Registriert seit
    06.02.2007
    Beiträge
    105
    Danke
    10
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Guten Abend,
    wie kann ich auf ein einzelnes Bit einer Word-Variable zugreifen, wenn diese lokal im FB angelegt wurde.
    Z.B. #Hilfsmerker -> Typ Word
    Die Funktion #Hilfsmerker.5 funktioniert bei mir nicht.

    Analog:
    MW10
    Zugriff über M10.5 unproblematisch.

    Wäre für eine Lösung des Problems dankbar.
    Zitieren Zitieren Bitzugriff auf Word im FB (Temp oder Stat Bereich)  

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

    Standard

    Das gewünschte Bit mit einer Wortoperation ausmaskieren und vergleichen.

  3. #3
    Registriert seit
    08.02.2007
    Ort
    A-2320
    Beiträge
    2.252
    Danke
    244
    Erhielt 332 Danke für 303 Beiträge

    Standard

    Code:
          L     P##TEMP0 //Name des Hilsmerkerwortes
          LAR1  
          U      [AR1,P#1.5] //Bei Frage warum nicht 0.5 bitte neuen Thread eröffnen
          =     #BIT

  4. #4
    mwissen ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    06.02.2007
    Beiträge
    105
    Danke
    10
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Danke für die schnelle Information.
    Hat mir sehr geholfen. Warum nicht 0.5 ist mir klar.
    Nochmals danke.

  5. #5
    Registriert seit
    06.10.2003
    Beiträge
    3.411
    Danke
    451
    Erhielt 506 Danke für 408 Beiträge

    Standard

    Zitat Zitat von mwissen Beitrag anzeigen
    ..Warum nicht 0.5 ist mir klar..
    Mir ist es nicht klar.
    Es gibt viel mehr Leute, die freiwillig aufgeben, als solche, die echt scheitern.
    Henry Ford

  6. #6
    Registriert seit
    05.10.2006
    Beiträge
    324
    Danke
    11
    Erhielt 8 Danke für 7 Beiträge

    Standard

    Warum nicht einfach ausmaskieren:

    Code:
    L #Hilfsmerker
    L W#16#8000 //Bitmaske für 1000 0000 0000 0000
    UW

  7. #7
    Registriert seit
    22.06.2009
    Ort
    Sassnitz
    Beiträge
    11.186
    Danke
    923
    Erhielt 3.292 Danke für 2.661 Beiträge

    Standard

    Zitat Zitat von Onkel Dagobert Beitrag anzeigen
    Mir ist es nicht klar.
    Weil Siemens Mehrbyte-Variablen im Big-Endian im Speicher ablegt: zuerst das höherwertige Byte, danach das niederwertige Byte.
    Beispiel: Liegt ein Word in LW0, dann liegen die höherwertigen Bits .8 bis .15 in LB0 und die niederwertigen Bits .0 bis .7 in LB1. Word.5 liegt also an Adresse L1.5

    Harald
    Es ist immer wieder überraschend, wie etwas plötzlich funktioniert, sobald man alles richtig macht.

    FAQ: Linkliste SIMATIC-Kommunikation über Ethernet

  8. #8
    Registriert seit
    15.04.2011
    Beiträge
    1.122
    Danke
    229
    Erhielt 208 Danke für 176 Beiträge

    Standard

    Hallo PN/DP,

    wobei die Aussage des TE von #Hilfsmerker.5 und bei MW10 dann M10.5 verwirrend ist.

    Zitat Zitat von mwissen Beitrag anzeigen
    Guten Abend,
    wie kann ich auf ein einzelnes Bit einer Word-Variable zugreifen, wenn diese lokal im FB angelegt wurde.
    Z.B. #Hilfsmerker -> Typ Word
    Die Funktion #Hilfsmerker.5 funktioniert bei mir nicht.

    Analog:
    MW10
    Zugriff über M10.5 unproblematisch.

    Wäre für eine Lösung des Problems dankbar.
    Gruß
    190B

  9. #9
    Registriert seit
    22.06.2009
    Ort
    Sassnitz
    Beiträge
    11.186
    Danke
    923
    Erhielt 3.292 Danke für 2.661 Beiträge

    Standard

    Zitat Zitat von Pico1184 Beitrag anzeigen
    Warum nicht einfach ausmaskieren:

    Code:
    L #Hilfsmerker
    L W#16#8000 //Bitmaske für 1000 0000 0000 0000
    UW
    Hmm, dieser Hinweis auf das Standard-Vorgehen kam doch schon von Thomas_v2.1 gleich die erste Antwort im Beitrag #2.
    Und wenn schon Beispiel-Code gezeigt wird, dann sollte er auch korrekt sein:
    Code:
    L  #Hilfsmerker
    UW W#16#0020 //Bitmaske für 0000 0000 0010 0000 für #Hilfsmerker.5
    U  <>0
    Harald
    Es ist immer wieder überraschend, wie etwas plötzlich funktioniert, sobald man alles richtig macht.

    FAQ: Linkliste SIMATIC-Kommunikation über Ethernet

  10. #10
    Registriert seit
    22.06.2009
    Ort
    Sassnitz
    Beiträge
    11.186
    Danke
    923
    Erhielt 3.292 Danke für 2.661 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Zitat Zitat von 190B Beitrag anzeigen
    wobei die Aussage des TE von #Hilfsmerker.5 und bei MW10 dann M10.5 verwirrend ist.
    Nicht nur verwirrend, sondern falsch.
    Doch bei TE sind wir da mal nicht so pingelig, immerhin hat er eine klar verständliche Frage formuliert.

    Harald
    Es ist immer wieder überraschend, wie etwas plötzlich funktioniert, sobald man alles richtig macht.

    FAQ: Linkliste SIMATIC-Kommunikation über Ethernet

Ähnliche Themen

  1. Pointer FB (STAT, TEMP)
    Von saarlaender im Forum Simatic
    Antworten: 20
    Letzter Beitrag: 20.08.2012, 22:44
  2. Temp-Bereich in FC/FB bei Weckalarmaufruf?
    Von M0.0 im Forum Simatic
    Antworten: 6
    Letzter Beitrag: 24.02.2011, 21:07
  3. Antworten: 8
    Letzter Beitrag: 30.11.2009, 15:28
  4. Antworten: 15
    Letzter Beitrag: 13.09.2007, 19:51
  5. Stat und Temp Variablen
    Von Anonymous im Forum Simatic
    Antworten: 14
    Letzter Beitrag: 13.07.2004, 11:20

Lesezeichen

Berechtigungen

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