Comunicación serie dispositivo 2AEMPCB6 – Extensión

Anuncio
1 de 2
Bellplast S.R.L
www.caipe.com
Comunicación serie dispositivo 2AEMPCB6 – Extensión
Las consecuencias del uso de esta información son responsabilidad del usuario de
las mismas. Bellplast S.R.L. no está obligada a dar soporte ni asumir ningún tipo de
responsabilidad por esta información ni trabajos derivados de esta. Usted acepta
estos términos al hacer uso de esta información.
Paquete de comunicación
Se compone de 7 bytes donde la “carga útil” son 4 bytes. Es un derivado del protocolo de
comunicación del SCD80.
Id
CMD
DL1
DH1
DL2
DH2
Dirección 1º dato
Comando
•
•
•
CheckSum (XOR)
Dirección 2º dato
Identificación
•
•
CHK
La identificación (Id) puede ser un valor entre 1 y 255.
Los comandos posibles son:
1. 7: escribe 1 valor de 1 byte a la dirección DH1:DL1. El dato viaja en DL2.
2. 8: leer 2 valores de 2 bytes consecutivos
3. 9: escribe 1 valor de 2 bytes a la dirección DH1:DL1. El dato viaja en DH2:DL2.
4. “G” (71): fuerza a grabar en la memoria no volátil los datos de la tabla.
5. “V” (86): devuelve el Nº de versión de ROM (en DH1.DL1).
La dirección se compone de una dirección (DLx) y un segmento (DHx).
DL2 y DH2 pueden ser dirección (para lectura) o dato (para escritura).
El CHK es el XOR de todos los bytes entre el 1 y el 6. El XOR de los 7 debe dar 0.
Ejemplos
Paquete de interrogación
ID
CMD
DL1
DH1
DL2
DH2
CHK
1
8
0
1
4
1
13
Nº de identificación del instrumento
Comando de lectura
} Dirección del corte
} Dirección del pre-corte 1
CHK = ID xor CMD xor DL1 xor DH1 xor DL2 xor DH2
Respuesta esperada
ID
CMD
DL1
DH1
DL2
DH2
CHK
1
8
Byte bajo
Byte alto
Byte bajo
Byte alto
Depende
Nº de identificación del instrumento
Comando de lectura
} Valor del corte
} Valor del pre-corte 1
CHK = ID xor CMD xor DL1 xor DH1 xor DL2 xor DH2
2 de 2
Bellplast S.R.L
www.caipe.com
Procedimiento
Para establecer una comunicación el dispositivo maestro (una PC) inicializa su puerto serie
(1200,n,8,1), arma el paquete de 7 bytes (ver ejemplo de la tabla) y se envía. El instrumento recibe estos 7
bytes, y si está todo en orden (el ID es el mismo que el del instrumento, el comando es reconocido y el
checksum es correcto) elabora una respuesta y la envía (hacia la PC). Esta también es de 7 bytes (ver
tabla) . El ID y el comando se repiten, las direcciones del ejemplo ahora vuelven con los datos y el
checksum dependerá del resultado de la operación (CHK = ID xor CMD xor DL1 xor DH1 xor DL2 xor DH2).
Direcciones de la tabla de seteos
NOTA: “h” se usa para indicar el byte alto de un dato, “dsb x” significa espacio reservado para x bytes y
“dsw” para words (2 bytes).
Variable
corte:
corteh:
adcgain:
pre1:
pre1h:
pre2:
pre2h:
dem1:
dem2:
dem3:
ttara:
alarma:
alarmah:
nfilt:
calibrar:
calibrah:
escal:
mop:
autocor:
nid:
pass:
chksum:
validac_t:
ctee:
cteeH:
tara:
mdisp:
initar:
Tipo
.dsw 1
.dsb 1
.dsb 1
.dsw 1
.dsb 1
.dsw 1
.dsb 1
.dsw 1
.dsw 1
.dsw 1
.dsw 1
.dsw 1
.dsb 1
.dsb 1
.dsw 1
.dsb 1
.dsb 1
.dsb 1
.dsb 1
.dsb 1
.dsw 1
.dsb 1
.dsb 1
.dsw 1
.dsw 1
.dsw 1
.dsb 1
.dsb 1
Descripción
Dirección
;corte
0
;
2
;ganancia
3
;precorte 1
4
;
6
;precorte 2
7
;
9
;demora
1
10
;
2
12
;
3
14
;tiempo tara
16
;
18
;
20
;filtro
21
;calibración
22
;3º byte calibración
24
;escala calib.
25
;modo operación
26
;autocorrección
27
;id_control
28
;reservado
29
;verificación tabla
31
;validación tabla
32
;cte de calibración calcualda (32 bit)
33
;
35
;peso de tara
37
;mostrar si/no último peso
39
;hacer tara al inicio si/no
40
Descargar