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

Seite 5 von 5 ErsteErste ... 345
Ergebnis 41 bis 48 von 48

Thema: SCL Aufruf des SFC22

  1. #41
    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


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    ist der mit W#16#0001 UND-Verknüpfte Wert der zu überprüfenden Zahl 1, ist diese ungerade
    [SIGNATUR]
    Ironie setzt Intelligenz beim Empfänger voraus.
    [/SIGNATUR]

  2. #42
    Registriert seit
    27.05.2004
    Ort
    Thüringen/Berlin
    Beiträge
    12.224
    Danke
    533
    Erhielt 2.698 Danke für 1.950 Beiträge

    Standard

    Sie dir mal den MOD - Befehl an, das ist eine Division, die dir den Rest ausgibt.

    Also:

    Rest := MyDINT MOD 2;

    Ist der Rest 1, dann ist MyDINT ungerade, ist Rest 0, dann gerade.
    Gruß
    Ralle

    ... there\'re 10 kinds of people ... those who understand binaries and those who don\'t …
    and the third kinds of people … those who love TIA-Portal

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

    BlueDogi (11.07.2014)

  4. #43
    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

    der Siemens Industry Online Support schlägt vor:

    FRAGE:
    Wie kann ich auswerten, ob ein Integer-/ Doppelintegerwert
    gerade oder ungerade ist?

    ANTWORT:
    Bei ungeraden Integer- bzw. Doppelintegerwerten steht im
    niederwertigsten Bit immer eine Eins.

    Um auf einen ungeraden Wert zu prüfen, muss also

    • bei einem Integerwert, der z.B. in MW0 liegt, auf M1.0 und
    • bei einem Doppelintegerwert, der z.B. in MD0 liegt, auf M3.0

    geprüft werden.
    aber dafür bedürfte es einer AT-Sicht in SCL, wenn die Daten nur lokal liegen.

    Sowohl AND als auch MOD haben ihre Berechtigung - natürlich find ich meinen Vorschlag viel besser!
    [SIGNATUR]
    Ironie setzt Intelligenz beim Empfänger voraus.
    [/SIGNATUR]

  5. #44
    Registriert seit
    17.10.2013
    Beiträge
    48
    Danke
    10
    Erhielt 1 Danke für 1 Beitrag

    Standard

    Zitat Zitat von vierlagig Beitrag anzeigen
    ist der mit W#16#0001 UND-Verknüpfte Wert der zu überprüfenden Zahl 1, ist diese ungerade
    Danke.
    Habe ich das richtig verstanden.
    Code:
    IF Wert & W#16#0001 THEN
    Ungerade:=1;
    END_IF;
    Ich glaube ich werd die Variante von Ralle benutzen. Danke!

  6. #45
    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

    IF (Wert AND W#16#0001 = 1) THEN
    [SIGNATUR]
    Ironie setzt Intelligenz beim Empfänger voraus.
    [/SIGNATUR]

  7. Folgender Benutzer sagt Danke zu vierlagig für den nützlichen Beitrag:

    BlueDogi (11.07.2014)

  8. #46
    Registriert seit
    17.10.2013
    Beiträge
    48
    Danke
    10
    Erhielt 1 Danke für 1 Beitrag

    Standard

    So das leuft soweit.
    Jetzt is mir aufgefallen das der neu erstellte DB keine Definierten werte hat. Also nach dem erstellen steht da kauderwälsch drin. Ich hab mir gedacht gar kein Problem bauste ne schleife und schreibst jedes Byte auf null.

    Bei dem Aufruf:
    Code:
    DB_Nr.DBB[Adresse]:= 0;
    kommt die Fehlermeldung das die Variabele DB_Nr als Block_DB definiert sein soll. bei mir ist es INT. was kann ich tun? Ist das die Lösung?
    Code:
    DB_NR:INT;
    DB_BLOCK:BLOCK_DB;
    
    bla bla
    
    DB_BLOCK:=BLOCK_DB;

  9. #47
    Registriert seit
    17.10.2013
    Beiträge
    48
    Danke
    10
    Erhielt 1 Danke für 1 Beitrag

    Standard

    Hab die lösung gefunden Von INT noch Word nach Block DB

  10. #48
    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


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Zitat Zitat von BlueDogi Beitrag anzeigen
    Ich hab mir gedacht gar kein Problem bauste ne schleife und schreibst jedes Byte auf null.
    oder benutzt die Systemfunktion FILL
    [SIGNATUR]
    Ironie setzt Intelligenz beim Empfänger voraus.
    [/SIGNATUR]

Ähnliche Themen

  1. Antworten: 3
    Letzter Beitrag: 17.04.2014, 20:38
  2. Antworten: 1
    Letzter Beitrag: 11.04.2013, 15:39
  3. Antworten: 17
    Letzter Beitrag: 08.03.2011, 10:00
  4. SCL: FB Aufruf unter SCL mit Variablen DB
    Von ThorstenK im Forum Programmierstrategien
    Antworten: 32
    Letzter Beitrag: 10.02.2011, 19:15
  5. Mehrfacher, gleichzeitiger Aufruf des SFC84
    Von Deichkind im Forum Simatic
    Antworten: 2
    Letzter Beitrag: 31.05.2010, 14:11

Stichworte

Lesezeichen

Berechtigungen

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