AnnexF/weigh_st.txt
author Mario de Sousa <msousa@fe.up.pt>
Tue, 25 Dec 2018 12:15:29 +0000
changeset 1077 b37de6a9ad7f
parent 0 fb772792efd1
permissions -rwxr-xr-x
partial fix to issue #76 - calculate task periods with 1ms (instead of 1ns) resolution. Allows for tasks with periods larger than 4.295s, but smaller than 50 days.
FUNCTION WEIGH : WORD     (* BCD encoded *)
  VAR_INPUT  (* "EN" input is used to indicate "scale ready" *)
    weigh_command : BOOL;
    gross_weight : WORD ; (* BCD encoded *)
    tare_weight : INT ;
  END_VAR
(* Function Body *)
IF weigh_command THEN
  WEIGH := INT_TO_BCD (BCD_TO_INT(gross_weight) - tare_weight);
END_IF ;

END_FUNCTION                     (* Implicit "ENO" *)