zavolone Inserito: 30 settembre 2002 Segnala Inserito: 30 settembre 2002 Qualcuno ha disponibile un programma per il calcolo delcaracttere di controllo sulla comunicazione crc 16 bit? Grazie
ppm Inserita: 2 ottobre 2002 Segnala Inserita: 2 ottobre 2002 Ciao Zavolone, ci sono parecchi esempi in rete di questo algoritmo ma sarebbe utile sapere quale tipo di linguaggio vuoi usare o se è per un PLC.In ogni caso è meglio, e piú rapido, usare una tabella prefabbricata da cui "estrarre il seme" che viene usato nella routine di calcolo. Vedi per esempio http://www.summitinstruments.com/library/tn410.htmUn'alternativa è di fabbricare la tabella dinamicamente tramite una routine apposita che viene chiamata solo una volta: vedi http://www.ptb.de/de/org/1/11/114/infos/crc16.htm e anche http://remus.rutgers.edu/~rhoads/Code/code.html che è una raccolta molto interessante di algoritmi di programmazione.Per un PLC occorre un pó di lavoro per adattare il codice, ma è solo una questione di tempo e debug. Esistono anche alcuni programmi tipo "calcolatrice" per verificare i dati: vedi CRCcalc in http://www.aerospacesoftware.com/shareware.html.Saluti
zavolone Inserita: 4 ottobre 2002 Autore Segnala Inserita: 4 ottobre 2002 ppm+Oct 2 2002, 06:23 AM-->(ppm @ Oct 2 2002, 06:23 AM)Grazie per le informazioni.In effetti esistoni differenti CRC a 16 bit e questo mi ha fatto tribulare non poco.Dovendo effetuare una gestione con plc non potevo usare la tabella precompilata che come ho potuto vedere viene utilizzata da quasi tutti coloro che efettuano questo controllo tramite PC.Ho quindi recuperato la rutin come tu hai indicato realizzata in assembler e caricata su una scheda intelligente ASc02 della Omron che già avevo installata nel PLC risolvendo il problema.Mi è rimasto un piccolo dubbio , se il carattere di controllo CRCh o CRCl corrisponde al carattere cr di fine stringa questo mi crea dei problemi in quanto il sistema lo prende come fine stringa e quindi non capisce più niente , c'è un sistema per evitarlo?
Messaggi consigliati
Crea un account o accedi per commentare
Devi essere un utente per poter lasciare un commento
Crea un account
Registrati per un nuovo account nella nostra comunità. è facile!
Registra un nuovo accountAccedi
Hai già un account? Accedi qui.
Accedi ora