22
MU-38-Q
P = checksum-paridad de la trama , calculada como la suma desde la D
hasta el último dato X. Puede ser cualquier código ASCII entre 0 y 255 a
excepción de 0, '*' y 'Z'.
Z = fin de trama.
Comentarios sobre el cálculo de paridad.
/*
texto_libre[] = Array de caracteres que contiene el texto de una
texto_libre[0]= "*"
texto_libre[1]= "D"
......
texto_libre[ultimo_dato_antes_de_paridad]= último dígito de
*/
paridad=0;
for (n=1;n<=( ultimo_dato_antes_de_paridad);n++)
{
paridad+=texto_libre[n];
}
paridad &= 0xFF; // modulo 256
//cambio de paridad para eliminar caracteres de control en el carácter
if (paridad == '*') paridad = paridad +1;
if (paridad == 'Z') paridad = paridad +1;
if (paridad == 0)
otro_caracter(paridad); // añadir el carácter de
otro_caracter('Z'); // añadir el fin de la trama. texto_libre[]
Nota. Entre el último dato enviado y la paridad no existe tabulador en la
trama. Después de *D tampoco se coloca tabulador.
*NNRR1Z
•
Para solicitar las siguientes
enviará la orden
*= inicio trama
NN = dirección del periférico.
RR1 = Solicitud de la siguiente trama de datos
Z = fin de comando.
•
Repetir la orden
el periférico conteste con
*NNRR2Z
•
Si se detecta error en una trama, se puede utilizar el comando
*NNRR2Z
Manual de Operación y de Instalación
trama.
datos que se va a enviar.
de paridad.
paridad = paridad +1;
texto_libre[]
tramas que forman el registro , el maestro
*NNRR1Z,
donde:
*NNRR1Z
tantas veces como sea necesario, hasta que
*FINZ
que es el final de registro.
para solicitar la repetición de la última trama enviada.
Datasol MET
Datasol MET
Datasol MET
Datasol MET
paridad a la trama