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

Ergebnis 1 bis 5 von 5

Thema: Word_to_S5time

  1. #1
    Registriert seit
    21.10.2009
    Beiträge
    3
    Danke
    1
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo.

    Ich versuche mit Hilfe von SCL eine Zeit, welche in einem MW steht in eine Variable vom Datentyp S5TIME zu schreiben (und umgekehrt).
    Der MW und der S5TIME Datentyp dürften ansich ja beide Word-breite haben, jedoch meldet mir der Compiler einen "Ungültigen Datentyp".
    Die Zeit-Daten im MW kommen von einem anderen Programm und sind bereits vom Bit-Muster her wie die S5TIME aufgebaut.

    Folgendende Typumwandlung erkennt zwar der Compiler, aber inhaltlich ist das natürlich Mist.
    Code:
    [...]
     TV := "TIM_S5TI"(DINT_TO_TIME(INT_TO_DINT(WORD_BCD_TO_INT( MW77 ))))
    [...]
    Zitieren Zitieren Word_to_S5time  

  2. #2
    Registriert seit
    25.06.2008
    Ort
    Blomberg/Lippe
    Beiträge
    1.293
    Danke
    51
    Erhielt 130 Danke für 124 Beiträge

    Standard

    Sowas ähnliches hat schonmal jemand gefragt, vielleicht hilft das weiter.
    http://www.sps-forum.de/showthread.p...highlight=time
    Gruß
    Mobi


    „Das Einfache kompliziert zu machen ist alltäglich. Das Komplizierte einfach zu machen –
    das ist Kreativität“ (Charles Mingus).

  3. #3
    Lump ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    21.10.2009
    Beiträge
    3
    Danke
    1
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Danke für die schnelle Anwort, aber der Thread war mir bekannt. Hilft mir nur leider nicht weiter.
    Ich möchte ja keinen Integer-Wert o.ä. umrechnen. Der Wert liegt im Bitmuster ansich ja schon vor.
    In AWL dürfte das glaub ich auch keine Probleme machen, da es ja eigentlich egal sein dürfte ob ich einen S5TIME oder ein WORD in den akku lade.
    Ich bin aber leider gezwungen in SCL zu arbeiten.

    Bsp.:
    Die Variable "Zeit" vom Typ (S5TIME) soll den Inhalt des Merkes MW77 welcher z.B. den Wert W#16#3010 hat übernehmen.

    Code:
    MW 77 := W#16#3010   // funktioniert
    Zeit := MW 77 // ungültiger Typ -> wie umgehe ich das?
    Geändert von Lump (21.10.2009 um 12:37 Uhr)

  4. #4
    Registriert seit
    22.03.2007
    Ort
    Detmold (im Lipperland)
    Beiträge
    11.716
    Danke
    398
    Erhielt 2.398 Danke für 1.998 Beiträge

    Standard

    ... hast du es schon mal mit AT versucht ?
    Also :
    Code:
    myTime_WORD : WORD ;
    myTime_S5Time AT myTime_WORD : S5TIME ;
    Gruß
    LL

  5. Folgender Benutzer sagt Danke zu Larry Laffer für den nützlichen Beitrag:

    Lump (21.10.2009)

  6. #5
    Lump ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    21.10.2009
    Beiträge
    3
    Danke
    1
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    nein habe ich nicht, werde es probieren und Bericht erstatten

    edit: Problem gelöst! Dankeschön! Kannte diesen Union-Operator vorher noch nicht.
    Geändert von Lump (21.10.2009 um 14:44 Uhr)

Lesezeichen

Berechtigungen

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