Conferência de quadros seriais

calculadora CRC Modbus

Calcule a partir dos bytes sem CRC ou verifique o quadro completo com seus dois bytes finais.

calculadora CRC Modbus

Bytes do quadro (hex)

Pares completos, espaços, linhas ou vírgulas; prefixo 0x apenas para um byte.

Resultado

O processamento fica nesta aba. As entradas não são enviadas nem salvas.

Opções

Parâmetros CRC-16/MODBUS fixos

Largura 16 · Polinômio 8005 (refletido A001) · Início FFFF · RefIn/RefOut true · XorOut 0000

CRC coincidente não valida funções, registradores ou comunicação com equipamentos.

Informe bytes ou carregue o exemplo.

O programa mostra CDC5, mas a captura termina em C5 CD. A calculadora CRC Modbus separa o número da ordem de transmissão para evitar uma alteração desnecessária em um cálculo correto. São duas formas de apresentar o mesmo resultado.

Para gerar o CRC Modbus RTU, informe endereço, função e dados sem a soma antiga. Para verificar um frame recebido, escolha o modo que inclui CRC. A quebra de linha apenas separa bytes; não inicia outro quadro hexadecimal.

Por que usar esta calculadora CRC Modbus

Não confundir valor e envio

A calculadora CRC Modbus retorna CDC5 para 01 03 00 00 00 0A e acrescenta C5 CD no padrão byte baixo primeiro. Trocar para byte alto primeiro altera somente o par CRC, sem inverter o endereço do registrador ou os dados.

Dois bytes CRC de cores diferentes mudam da ordem numérica para a ordem de envio ao final de um quadro.

Manter a captura original disponível

O verificador apresenta o par recebido e o esperado mesmo quando não conferem. O quadro reconstruído aparece em uma saída separada. Isso permite analisar a diferença sem apagar os bytes que chegaram e originaram a investigação.

Os bytes recebidos e recalculados são comparados lado a lado, destacando um byte diferente.

Defina o trecho e a ordem antes de comparar

01

Escolha se o CRC já está na entrada

Calcular usa todos os bytes informados. Verificar retira exatamente os dois últimos e os compara com o cálculo do restante. A ferramenta não detecta automaticamente uma soma anterior. O exemplo respeita o modo e a ordem selecionados e exige aplicar a prévia.

02

Comece pela ordem do protocolo

No RTU, o byte baixo do CRC vai primeiro. Essa regra não decide a interpretação dos dados dos registradores. A ordem inversa é apenas diagnóstico e permanece marcada como não padrão. Se ambos os bytes forem iguais, a troca não revela um erro de ordem.

03

Espere a atualização antes de copiar

O automático aguarda 350 ms após mudanças. Desative-o para usar o botão ou Ctrl/Cmd+Enter. Mudar entrada, modo ou ordem bloqueia os resultados antigos imediatamente. Exemplo e Limpar têm prévia e uma ação de desfazer que recupera entrada e resultado.

Confira o quadro junto com a soma

Parâmetros fixos e visíveis

CRC-16/MODBUS usa largura 16, polinômio 8005, forma refletida A001, início FFFF, reflexão na entrada e saída e XOR final 0000. Os bytes 31 a 39 produzem 4B37. Não há uma configuração que mude o modelo sem deixar de chamar o resultado de Modbus.

Entrada hexadecimal sem suposições

Aceita grupos com quantidade par de dígitos, contínuos ou separados por espaços, linhas ou vírgulas. O prefixo 0x vale para um único byte. Grupos ímpares e caracteres estranhos geram erro com linha e coluna, sem remover trechos do log silenciosamente.

Comparação que preserva o recebido

O resultado traz o número CRC, bytes alto e baixo, par esperado e quadro completo. A verificação mantém também o par recebido e a conclusão. Uma divergência ainda é um cálculo concluído, e seu relatório pode ser exportado para diagnóstico.

Relatório com as condições do teste

Copie os bytes CRC ou o quadro reconstruído. O JSON inclui modo, ordem, parâmetros, trecho calculado, bytes recebidos e resultado da comparação. Outra pessoa pode reproduzir a conferência sem adivinhar o significado de quatro dígitos isolados.

O alcance de um CRC que confere

Um quadro RTU por vez
Calcular permite 2–254 bytes sem CRC; Verificar permite 4–256 com CRC. O texto pode ter até 4096 caracteres. Arquivos grandes e vários quadros por linha não são processados. As pausas que delimitam quadros seriais não são inferidas de quebras de linha.
Sem validar equipamento ou comando
Um CRC correto não confirma endereço, função, registrador ou resposta do equipamento. A página não abre conexão nem transmite quadros. CRC detecta erros acidentais; não autentica o emissor nem protege contra alterações intencionais.
Sem LRC, MBAP ou parâmetros livres
A ferramenta trata o CRC do RTU. Não monta o LRC do ASCII ou cabeçalhos MBAP de TCP. Para outros polinômios, valores iniciais ou reflexões, use o calculador geral de somas. A largura em bits não identifica sozinha o algoritmo.
Sem correção automática
Calcular não remove um possível CRC já existente. Verificar não troca os bytes até encontrar uma coincidência. A ordem alto–baixo fica marcada como não padrão. O quadro reconstruído não sobrescreve a entrada nem acrescenta outro CRC a ela.
Apenas bytes informados explicitamente
Não há importação de arquivo, URL, array C ou log de captura. Remova offsets, colchetes e comentários antes de colar. Os rascunhos não têm histórico persistente. A prévia conta caracteres, e uma ação de desfazer recupera o estado anterior.

Dúvidas sobre a calculadora CRC Modbus

Quais polinômio e valor inicial são usados?

O modelo usa polinômio 8005, cuja forma refletida é A001, e registrador inicial FFFF. Entrada e saída são refletidas e o XOR final é 0000. Esses parâmetros ficam visíveis para comparar com o código do seu equipamento.

Qual byte do CRC é transmitido primeiro?

O byte baixo. Para o número CDC5, os bytes finais são C5 CD. Não confunda essa regra do CRC com a representação de registradores. A opção inversa existe somente para diagnosticar capturas e é identificada como não padrão.

O CRC antigo deve participar do cálculo?

Não ao gerar a soma da mensagem original. Na verificação, ele deve estar presente porque a ferramenta separa os dois últimos bytes antes de recalcular. Calcular sobre um quadro completo válido pode dar resíduo 0000, que não substitui a soma do trecho original.

Todo algoritmo CRC-16 dá o mesmo resultado?

Não. A largura é apenas um parâmetro. MODBUS, ARC e variantes chamadas CCITT podem usar polinômios, inicializações ou reflexões diferentes. Esta página fixa MODBUS; compare os modelos completos quando dois programas produzirem valores diferentes.

O que significa o endereço 0x00?

Em Modbus serial, é o endereço de broadcast: os servidores não respondem a uma transmissão desse tipo. Isso pode explicar ausência de resposta apesar de um CRC correto. A página calcula os bytes, mas não verifica se a função usada é adequada para broadcast.

Ainda tem uma dúvida?

Confira a próxima captura

Use a calculadora CRC Modbus para conferir uma captura por vez e guarde os bytes recebidos antes de ajustar o programa que transmite o quadro.