blob: 6f712a424ee2d997fa57d201b4198437e3d1a420 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
|
ORGANIZATION_BLOCK OB 1
BEGIN
CALL FC 1
CALL FC 2
CALL FC 3
CALL FB 1, DB 2 (
INPUT_VAR := 1
)
END_ORGANIZATION_BLOCK
FUNCTION FC 1: VOID
BEGIN
U E 0.0
= A 0.0
END_FUNCTION
FUNCTION FC 2: VOID
TITLE = Shift register
BEGIN
UN T 10
= M 0.0
L S5T#200MS
SV T 10
L MD 4
L 1
==D
S M 0.1
RRD 1
==D
R M 0.1
L MD 4
UD L#-1
L 1
SPZ _001
TAK
U M 0.0
SPBN _001
U M 0.1
SPBN _000
RLD 2
_000: RRD 1
_001: T MD 4
L MD 4
T AD 4
TAD
T AD 8
END_FUNCTION
FUNCTION FC 3: VOID
TITLE = DB usage example
BEGIN
AUF DB 1
L DBD 2
T MD 16
END_FUNCTION
FUNCTION_BLOCK FB 1
VAR_INPUT
INPUT_VAR : INT
END_VAR
BEGIN
NOP 0
END_FUNCTION_BLOCK
DATA_BLOCK DB 1
TITLE = This is global DB 1
STRUCT
VAR1 : INT // DBW0: VAR1 => 16 bit signed int
VAR2 : DWORD // DBD2: VAR2 => 32 bit unsigned dword
VAR3 : WORD // DBW6: VAR3 => 16 bit unsigned word
END_STRUCT
BEGIN
VAR1 := 1337
VAR2 := DW#16#DEADBEEF
VAR3 := B#(1, 2)
END_DATA_BLOCK
DATA_BLOCK DB 2
TITLE = This is an instance DB for FB 1
FB 1
BEGIN
INPUT_VAR := 123
END_DATA_BLOCK
|