Vai al contenuto

Protocollo RS232 Ascii ispirato al NMEA

Home Forum Programmazione IEC 61131 (LogicLab) Protocollo RS232 Ascii ispirato al NMEA

Stai visualizzando 2 post - dal 1 a 2 (di 2 totali)
  • Autore
    Post
  • #35616
    Michele
    Partecipante

    Abbiamo la necessità di inviare stringhe di dati da SlimLine a PC, contenenti i valori in alcune variabili. Quello che si vuole fare è costruire una stringa con i valori e inviarla su RS232. L’ispirazione è quella data dal protocollo NMEA, un esempio di stringa potrebbe essere:

    $CODICE:123,LOTTO:456,PEZZO:789,CHECK:0*XX<CR><LF>

    Dove 123 456 789 e 0 sono le nostre variabili. Avete esempi di codice per fare questo o alternative valide ?

    #38403
    Sergio Bertana
    Amministratore del forum

    Se spulci nel forum trovi esempi che eseguono la gestione della comunicazione sia su porta seriale che su TCP/IP. In generale ti ricordo che con la funzione Sysfopen puoi aprire lo stream di comunicazione (Porta seriale o socket TCP), la funzione ritorna un file pointer di tipo FILEP.

    Passando il FILEP ritornato alle funzioni Sysfgetc e Sysfread potrai ricevere dati dallo stream, con le funzioni Sysfputc e Sysfwrite potrai inviare dati sullo stream dai una occhiata a questo topic e questo topic.

    La funzione SysVarsscanf permette di controllare i dati ricevuti mentre con la SysVarsnprintf potrai comporre la stringa di dati con le tue variabili (Guarda ad esempio il programma in questo topic ed in questo topic) e poi inviarla in uscita con la Sysfwrite.

Stai visualizzando 2 post - dal 1 a 2 (di 2 totali)
  • Devi essere connesso per rispondere a questo topic.