发布于 2003-07-20 22:30:44
0楼
Only for your reference and Overflow/underflow limitation value can be changed when be need.
///FC41 Analog Input Reading
///N1 Analog input
L #INPUT_FROM_Board // Input from Board
ITD
DTR
T #in_real // Input from Board converted to temp real
L #MAX_REAL // Max real value
L #MIN_REAL // Min real value
-R
T #max_min // Max minus min real value
L #in_real
L #max_min
*R
L 2.764800e+004
/R
L #MIN_REAL
+R
T #cal_temp // Save temperary
L #MIN_REAL
L #cal_temp
<=R // Check output is >= Min.real
JC M001
L #MIN_REAL // If output < Min real, Load Min.real
M001: T #INPUT_VALUE // Output for real value
///N2 Analog input Set/Reset alarm bit
//Overflow when above 32511
//Underflow when below –4864
L #INPUT_FROM_Board // Input from Board, integer format
L 32511
>I // Input above over-range = Overflow
JC M003
TAK
L -4864
JC M003
JU M004
M003: S #OUT_OF_RANGE_ALARM // Set out of range alarm bit
JU M002
M004: R #OUT_OF_RANGE_ALARM // Reset out of range alarm bit
M002: NOP 0