software:qview:qview_6:qcl_library:vc10cr32init

VC10Cr32Init

V = Variable

C = Calcolo

La funzione VC10Cr32Init fa parte di una collezione di funzioni per il calcolo del CRC di una successione di dati. La funzione VC10Cr32Init serve per inizializzare i dati e le strutture dati coinvolte nel calcolo. Le atre funzioni che fanno parte della collezione sono:

VC10Cr32Beg Inizio della procedura

VC10Cr32Udt Aggiornamento della procedura

VC10Cr32Calc Procedura di calcolo

VC10Cr32Init ( crc32arTab, crc32Value )

Inizializza l'array di almeno 256 elementi che contiene i parametri per il calcolo del CRC e il valore del CRC.

IN/OUTTIPO VARIABILENOME DI ESEMPIODIM
OUT ARRGBL crc32arTab L Array di almeno 256 elementi che contiene la tabella di parametri con cui calcolare il CRC.
OUT GLOBAL crc32Value L Variabile da inizializzare per contenere il valore del CRC.

VC10Cr32Beg ( crc32arTab, crc32Value )

Assegna il valore iniziale del CRC

IN/OUTTIPO VARIABILENOME DI ESEMPIODIM
IN ARRGBL crc32arTab L Array di almeno 256 elementi che contiene la tabella di parametri con cui calcolare il CRC.
OUT GLOBAL crc32Value L Variabile usata per contenere il valore del CRC.

VC10Cr32Udt ( crc32arTab, crc32Value, crc32DataIn )

Aggiorna il valore del CRC per ogni nuovo dato acquisito.

IN/OUTTIPO VARIABILENOME DI ESEMPIODIM
IN ARRGBL crc32arTab L Array di almeno 256 elementi che contiene la tabella di parametri con cui calcolare il CRC.
OUT GLOBAL crc32Value L Variabile usata per contenere il valore del CRC.
IN GLOBAL crc32DataIn L Nuovo valore per aggiornare il calcolo

VC10Cr32Calc ( crc32arTab, crc32Value, crc32DataIn )

Conclude il calcolo del CRC una volta che sono finiti i dati.

IN/OUTTIPO VARIABILENOME DI ESEMPIODIM
IN ARRGBL crc32arTab L Array di almeno 256 elementi che contiene la tabella di parametri con cui calcolare il CRC.
OUT GLOBAL crc32Value L Variabile da inizializzare per contenere il valore del CRC.

Esempio

VC10Cr32Init( ImedCrcTab, LImedCrcC )
 
MAIN:
 
IF Start_Calc EQ 1
         VC10Cr32Beg( ImedCrcTab, LImedCrcC )
 
         FOR (Index = 1, Index LE DIM_ARRAY, 1)
		;Aggiunge un nuovo dato al calcolo del CRC prendendolo da un array
		TmpLong = ArrayLong[Index]
		VC10Cr32Upt( ImedCrcTab, LImedCrcC, TmpLong)
         NEXT
 
         VC10Cr32Calc ( ImedCrcTab, LImedCrcC )	;Conclusione del calcolo del CRC
 
         Start_Calc = 0
ENDIF
WAIT 1
JUMP MAIN
 
END
  • Ultima modifica: 2019/08/29 17:01