Direccionamiento, parametrización y funcionamiento de la periferia C7
Composición de
las fórmulas
Secuencia de
instrucciones
FC126
4
4-44
PORCENJ = (canal – LIF) / (LSP – LIF)
MARGEN_HEX = LSP – LIF
Valor actual = PORCENJ * (límite superior – límite inferior) + límite inferior
El bloque FC126 contiene las siguientes líneas de instrucciones:
FUNCTION FC 126 : void
var_input
Límite inferior : DWORD;
Límite superior : DWORD;
Canal : WORD;
end_var
var_output
Valor actual : DWORD;
end_var
var_temp
LIF : DWORD;
MARGEN_HEX : DWORD;
PORCENJ : DWORD;
end_var
BEGIN
// *** Distinción entre margen de medida unipolar o bipolar ***
L Límite inferior;
L 0.0;
<R;
SPB bipo;
L DW#16#000_00000;
T LIF;
SPA rech;
bipo: NOP 0;
L W#16#9400;
ITD;
T LIF;
// *** Cálculo del margen (hexadecimal) ***
rech: NOP 0;
L W#16#6C00;
ITD;
L LIF;
–D;
T MARGEN_HEX;
// ¿Límite inferior negativo?
// SI => margen de medida bipolar
// Límite inferior de margen unipolar
// Límite inferior de margen bipolar
// Límite superior igual para margen unipolar
// y bipolar
// Memorizar diferencia
Equipos completos C7-623, C7-624
C79000-G7078-C624-01