WEG SSW-06 V1.6X Manual De La Comunicación página 29

Ocultar thumbs Ver también para SSW-06 V1.6X:
Tabla de contenido

Publicidad

Apendices
uchCRCLo = uchCRCHi ^ auchCRCHi[uIndex};
uchCRCHi = auchCRCLo[uIndex];
}
return (uchCRCHi << 8 | uchCRCLo);
}
Apêndice B - Cálculo del CRC utilizando desplazamiento de registradores
En este ítem es descripto el algoritmo para el cálculo del CRC utilizado en la comunicación Modbus-RTU, a
través del desplazamiento de registradores. El algoritmo fue obtenido y es explicado en los documentos
referenciados en el ítem 5.
El cálculo del CRC es iniciado primeramente cargándose una variable de 16 bits (referenciado a partir de ahora
como variable CRC) con el valor 0xFFFF. después ejecutase los pasos de acuerdo con la siguiente rutina:
1. Sometiese el primero byte del mensaje (solamente los bits de datos - start bit , paridad y stop bit no son
utilizados) hay una lógica XOR (OU exclusivo) con los 8 bits menos significativos de la variable CRC,
regresando el resultado en la propia variable CRC.
2. Entonces, la variable CRC es desplazada una posición hacia derecha, en dirección al bit menos
significativo, y la posición del bit más significativo es llenada con 0 (cero).
3. Después este desplazamiento, el bit de
analizado, ocurriendo lo siguiente:
Si el valor del bit es 0 (cero), nada es hecho
Si el valor del bit es 1, el contenido de la variable CRC es sometido a una lógica XOR con un valor
constante de 0xA001 y el resultado es retornado a la variable CRC.
4. Repiten los pasos 2 y 3 hasta que ocho desplazamientos tengan sido hechos.
5. Repiten los pasos de 1 a 4, utilizando el próximo byte del mensaje, hasta que toda el mensaje tenga sido
procesado.
El contenido final de la variable CRC es el valor del campo CRC que es transmitido en el final del telegrama. La
parte menos significativa es transmitida primero (CRC-) y en seguida la parte más significativa (CRC+).
flag
(bit que fue desplazado para fuera de la variable CRC) es
SSW-06 | 29

Publicidad

Tabla de contenido
loading

Tabla de contenido