BCC (Carácter de comprobación de bloque)
dispone de una función de cálculo de BCC automático que detecta los errores de comunicación en los datos
MicroSmart
entrantes. Si se designa un código BCC en el formato de recepción de una instrucción RXD, MicroSmart calcula un valor
de BCC para una posición de inicio especificada hasta la posición inmediatamente anterior a BCC y compara el resultado
del cálculo con el código BCC en los datos entrantes recibidos. La posición de inicio para el cálculo de BCC se puede
especificar desde el primer byte hasta el 15º. El BCC puede ser de 1 ó 2 dígitos.
Los módulos de la CPU actualizados también pueden usar ADD-2comp, Modbus-ASCII y Modbus-RTU para calcular el BCC.
Cuando no se utiliza un delimitador de fin en la instrucción RXD, el código BCC se debe insertar al final del formato de
recepción designado en el operando de origen S1. Cuando sí se utiliza, el código BCC debe estar inmediatamente antes o
después del delimitador de fin. MicroSmart lee un número especificado de dígitos BCC en los datos entrantes en función
del formato de recepción para calcular y comparar el código BCC recibido con los resultados del cálculo de BCC.
Posición de inicio de cálculo de BCC
La posición de inicio para el cálculo de BCC se puede especificar desde el primer byte hasta el 15º. El BCC se calcula para
el intervalo que comienza en la posición designada hasta el byte inmediatamente anterior al BCC de los datos de recepción.
Ejemplo: Los datos recibidos constan de 17 bytes más 2 dígitos BCC.
(1) Posición de inicio de cálculo = 1
1º
2º
3º
STX
"A"
"B"
(2) Posición de inicio de cálculo = 2
1º
2º
3º
STX
"A"
"B"
Fórmula de cálculo de BCC
La fórmula de cálculo de BCC se puede seleccionar desde operaciones mediante XOR (OR exclusivo), ADD (suma), ADD-
2comp, Modbus ASCII o Modbus RTU.
Ejemplo: Los datos entrantes constan de 41h, 42h, 43h y 44h.
(1) Fórmula de cálculo de BCC = XOR
Resultado del cálculo = 41h ⊕ 42h ⊕ 43h ⊕ 44h = 04h
(2) Fórmula de cálculo de BCC = ADD
Resultado del cálculo = 41h + 42h + 43h + 44h = 10Ah → 0Ah (Sólo los últimos 2 o 1 dígito se usan como BCC.)
(3) Fórmula de cálculo de BCC = ADD-2comp
Resultado del cálculo = FEh, F6h (2 dígitos sin conversión digital)
(4) Fórmula de cálculo de BCC = Modbus ASCII
Resultado del cálculo = 88 (ASCII)
(5) Fórmula de cálculo de BCC = Modbus RTU
Resultado del cálculo = 85h 0Fh (binario)
4º
5º
6º
"C"
"D"
"E"
Intervalo de cálculo de BCC
4º
5º
6º
"C"
"D"
"E"
Intervalo de cálculo de BCC
M
ANUAL DEL USUARIO DE
17: I
NSTRUCCIONES DE COMUNICACIÓN DEL USUARIO
15º
16º
17º
18º
19º
"0"
CR
LF
BCC
BCC
BCC
(2 dígitos)
15º
16º
17º
18º
19º
"0"
CR
LF
BCC
BCC
BCC
(2 dígitos)
M
S
FC5A
ICRO
MART
17-21