Vai al contenuto

Creare stringa con valore di HH:MM:SS

Home Forum Terminali operatore (Weintek) Creare stringa con valore di HH:MM:SS

Stai visualizzando 2 post - dal 1 a 2 (di 2 totali)
  • Autore
    Post
  • #78787
    Anonimo
    Inattivo

    Ho la necessità di creare da macro una stringa con il valore di 3 Word (Sarebbero HH:MM:SS).

    Ho dato una occhiata alle funzioni stringa ma non trovo una soluzione, qualcuno ha qualche esempio?

    #78789
    Sergio Bertana
    Amministratore del forum

    Se ho ben capito quello che ti serve è qualcosa di simile a quello che vedi nello screenshot.

    Ecco la macro eseguita a tempo che genera la stringa

    macro_command main()
    short Hour=0, Minute=0, Second=0
    char AValue[2]=""
    char Result[32]="The time is:"
    
    GetData(Hour, "Local HMI", LW, 9019, 1) //LW-9019 (16bit) : local hour
    DEC2ASCII(Hour, AValue[0], 2) //Stringa ASCII con valore (2 cifre)
    StringCat(AValue[0], Result[0]) //Aggiungo a risultato il valore
    StringCat(":", Result[0])
    
    GetData(Minute, "Local HMI", LW, 9018, 1) //LW-9018 (16bit) : local minute
    DEC2ASCII(Minute, AValue[0], 2) //Stringa ASCII con valore (2 cifre)
    StringCat(AValue[0], Result[0]) //Aggiungo a risultato il valore
    StringCat(":", Result[0])
    
    GetData(Second, "Local HMI", LW, 9017, 1) //LW-9017 (16bit) : local second
    DEC2ASCII(Second, AValue[0], 2) //Stringa ASCII con valore (2 cifre)
    StringCat(AValue[0], Result[0]) //Aggiungo a risultato il valore
    
    SetData(Result[0], "Local HMI", LW, 20, 32) //Salvo risultato in LW-20
    
    TRACE("Result=%s", Result[0]) //Trace valore e stringa risultato
    end macro_command
Stai visualizzando 2 post - dal 1 a 2 (di 2 totali)
  • Devi essere connesso per rispondere a questo topic.