Вариант 2:
Owen.jpg
Ну или:Код:function_block FIFO10_ var_input PUSH, POP, SH : bool; // Втолнуть, вытолкнуть, сдвинуть очередь end_var var_output Q1, Q2, Q3, Q4, Q5, Q6, Q7, Q8, Q9, Q10 : bool; end_var var Q : udint; // Стек rtPUSH, rtPOP, rtSH : SYS.RTRIG; // Фиксатор кнопок end_var rtPUSH(I:=PUSH); rtPOP(I:=POP); rtSH(I:=SH); if rtPUSH.Q then Q.0 := TRUE; end_if if rtPOP.Q then Q.9 := FALSE; end_if if rtSH.Q then Q := shl(Q, 1); end_if Q1 := Q.0; Q2 := Q.1; Q3 := Q.2; Q4 := Q.3; Q5 := Q.4; Q6 := Q.5; Q7 := Q.6; Q8 := Q.7; Q9 := Q.8; Q10 := Q.9; end_function_block
Owen1.jpg




Ответить с цитированием