Inspección de tramas serie

calculadora CRC Modbus

Calcula sin el CRC final o verifica una trama completa que incluya sus dos bytes CRC.

calculadora CRC Modbus

Bytes de la trama (hex)

Pares completos, espacios, saltos o comas; prefijo 0x solo para un byte.

Resultado

El procesamiento queda en esta pestaña. Las entradas no se envían ni se guardan.

Opciones

Parámetros CRC-16/MODBUS fijos

Anchura 16 · Polinomio 8005 (reflejado A001) · Inicio FFFF · RefIn/RefOut true · XorOut 0000

La coincidencia del CRC no valida funciones, registros ni comunicación con dispositivos.

Introduce bytes o carga el ejemplo.

Un registro puede mostrar CDC5 y la captura terminar en C5 CD sin que exista un error de cálculo. La calculadora CRC Modbus separa el valor numérico del orden de transmisión para que puedas comparar representaciones equivalentes antes de cambiar tu código.

Para generar una suma de comprobación, introduce dirección, función y datos sin el CRC anterior. Para verificar una trama recibida, elige el modo de verificación: separará sus dos últimos bytes. Un salto de línea separa bytes, no inicia otra trama.

Por qué usar esta calculadora CRC Modbus

Distinguir número y transmisión

La calculadora CRC Modbus obtiene CDC5 para 01 03 00 00 00 0A y añade C5 CD en el orden estándar. Elegir el byte alto primero solo afecta al par CRC; no invierte la dirección del registro ni los demás datos.

Dos bytes CRC de colores distintos cambian del orden numérico al de transmisión antes de añadirse a una trama.

Conservar una captura que no coincide

La salida mantiene los bytes recibidos junto a los esperados. La trama reconstruida aparece por separado y nunca reemplaza la entrada. Así puedes estudiar la diferencia sin borrar la evidencia del problema que estás investigando.

Los bytes recibidos y recalculados aparecen juntos, con un byte diferente destacado.

Elegir el intervalo y el orden correctos

01

Indicar si la entrada incluye CRC

Calcular procesa todos los bytes introducidos. Verificar aparta exactamente los dos últimos. La herramienta no adivina si ya existe una suma. El ejemplo sigue el modo y el orden seleccionados y muestra una vista previa antes de sustituir la entrada.

02

Empezar por el byte bajo

CRC-16 Modbus RTU transmite primero el byte bajo. Esto es independiente del orden de los datos de un registro. La opción de byte alto sirve para diagnóstico y sigue marcada como no estándar aunque coincida. Dos bytes iguales no permiten detectar una inversión.

03

Exportar solo después de actualizar

El cálculo automático espera 350 ms tras un cambio. Si lo desactivas, usa el botón o Ctrl/Cmd+Enter. Cambiar datos, modo u orden bloquea al instante los resultados anteriores. Ejemplo y Vaciar permiten revisar y deshacer una sustitución, incluido el resultado.

Comparar la suma y la trama

Modelo CRC-16/MODBUS fijo

La anchura es 16 bits, el polinomio 8005, su forma reflejada A001, el valor inicial FFFF y el XOR final 0000, con ambas reflexiones activadas. Los bytes 31 a 39 dan 4B37. Los parámetros están visibles y no pueden cambiarse a otra variante por accidente.

Bytes hexadecimales sin limpieza oculta

Admite grupos de longitud par, seguidos o separados por espacios, saltos o comas. El prefijo 0x solo corresponde a un byte. Un dígito suelto o carácter inválido provoca un error con línea y columna; no se eliminan fragmentos del registro de forma silenciosa.

Valor recibido y valor esperado

El resultado incluye el CRC numérico, los bytes alto y bajo, el par esperado y la trama completa. En verificación se conserva también el par recibido. Una discrepancia es una comparación terminada, por lo que se puede exportar su informe de diagnóstico.

Informes que conservan el contexto

Copia el par CRC o la trama reconstruida. El JSON contiene modo, orden, parámetros, bytes cubiertos, valor recibido y resultado de comparación. Quien revise el informe puede repetir el cálculo sin deducir el significado de cuatro cifras aisladas.

Límites de una comprobación correcta

Una sola trama con límites definidos
Calcular acepta 2–254 bytes sin CRC; Verificar, 4–256 con CRC. El texto no puede superar 4096 caracteres. No se procesan archivos grandes ni varias tramas por líneas: un salto de texto no representa las pausas de una conexión serie.
No comprueba el equipo ni el comando
Un CRC coincidente no valida funciones, registros, direcciones ni respuestas del dispositivo. La página no abre conexiones ni envía tramas. CRC detecta errores accidentales, pero no autentica al emisor ni protege frente a cambios maliciosos.
No genera otros formatos Modbus
LRC de ASCII, cabeceras MBAP de TCP y polinomios personalizados quedan fuera. Para otra inicialización o reflexión utiliza la herramienta general de sumas. Tener la misma anchura no significa emplear el mismo algoritmo.
Sin detección ni reparación automática
Calcular no elimina un supuesto CRC previo. Verificar no intercambia bytes hasta obtener una coincidencia. El orden alto–bajo permanece marcado como no estándar y la reconstrucción nunca se escribe en la entrada original.
Solo bytes introducidos expresamente
No hay importación de archivos, URL, arrays C ni registros de captura. Elimina tú los offsets, corchetes y comentarios. Los borradores no tienen historial persistente. La vista previa muestra cantidades de caracteres y permite restaurar una vez el estado anterior.

Preguntas sobre la calculadora CRC Modbus

¿Un CRC protege igual que un hash criptográfico?

No. CRC está pensado para detectar errores accidentales de los datos. No demuestra su origen ni evita una modificación deliberada. Una coincidencia no sustituye a la autenticación o a la validación del significado de un comando.

¿Cómo elijo la variante CRC del protocolo?

Consulta el modelo completo indicado por el protocolo, no solo su anchura. Aquí MODBUS está fijado. Compara polinomio, valor inicial, reflexión y XOR final con los de tu implementación para saber si estás calculando lo mismo.

¿Por qué no coincide el CRC esperado?

Revisa los bytes incluidos y si has vuelto a calcular sobre un CRC anterior. Después compara representaciones equivalentes: CDC5 y C5 CD pueden expresar un mismo resultado. Una variante diferente también puede producir valores distintos con la misma anchura.

¿Qué diferencia hay entre CRC-16 MODBUS y CCITT?

Cambian el polinomio y otros parámetros del modelo. MODBUS usa 8005 e inicialización FFFF. CCITT puede referirse a varias variantes y conviene consultar su definición exacta. Sus valores no son intercambiables por ocupar ambos dos bytes.

¿Puedo calcular con datos binarios en lugar de texto?

Sí: representa los bytes reales en hexadecimal. 01 es un byte de valor uno, no los caracteres 0 y 1 codificados. No se importan archivos ni se convierten codificaciones de texto; siguen aplicándose los límites de una trama RTU.

¿Te queda alguna duda?

Comprobar la siguiente captura

Usa la calculadora CRC Modbus para comparar una captura con tu emisor y conserva los bytes recibidos antes de modificar el programa.