4 #IFDEF NOT MBUS_INC THEN
7 #DEFINE MBUS_MODULE_MEDIA 1
8 #DEFINE MBUS_MODULE_PATH "B:\SYSTEM\EXT\MOD_MBUS.RMX"
10 #DEFINE MBUS_DATA_LENGTH 246
12 #DEFINE MBUS_MODCALL_ERR -999
14 #DEFINE MBUS_MODE_S2 0
15 #DEFINE MBUS_MODE_T1 1
16 #DEFINE MBUS_MODE_T2 2
17 #DEFINE MBUS_MODE_S1 3
19 #DEFINE MBUS_MODE_T1_C 10
20 #DEFINE MBUS_MODE_T2_C 11
42 STRUCT_BLOCK ALIGN mbusFrame;
73 FUNCTION ALIGN mbusInit : INT;
75 path : STRING := MBUS_MODULE_PATH;
76 media : SINT := MBUS_MODULE_MEDIA;
83 rc := fsMediaOpen(media := media);
90 rc := extModuleLoad(path:=path);
123 mode : SINT := MBUS_MODE_T1;
125 max_frames : INT := 100;
126 overwrite : BOOL := TRUE;
132 IF NOT (error = 0) THEN
156 IF NOT (error = 0) THEN
188 IF NOT (error = 0) THEN
214 FUNCTION ALIGN mbusFilterReceive;
217 frame : ACCESS mbusFrame;
222 mbusFilterReceive := INT(MODCALL("mod_mbus", "mbusFilterReceive", error));
223 IF NOT (error = 0) THEN
224 mbusFilterReceive := MBUS_MODCALL_ERR;
254 FUNCTION ALIGN mbusReceive;
256 timeout : DINT := -1;
257 manufacturer : INT := 0;
261 frame : ACCESS mbusFrame;
266 mbusReceive := INT(MODCALL("mod_mbus", "mbusReceive", error));
267 IF NOT (error = 0) THEN
268 mbusReceive := MBUS_MODCALL_ERR;
301 FUNCTION mbusInfo : INT;
305 mbusInfo := INT(MODCALL("mod_mbus", "mbusInfo", error));
306 IF NOT (error = 0) THEN
307 mbusInfo := MBUS_MODCALL_ERR;
332 FUNCTION mbusRegisterSlave : INT;
335 manufacturer : MANDATORY INT;
337 version : MANDATORY SINT;
338 type : MANDATORY SINT;
344 mbusRegisterSlave := INT(MODCALL("mod_mbus", "mbusRegisterSlave", error));
345 IF NOT (error = 0) THEN
346 mbusRegisterSlave := MBUS_MODCALL_ERR;
365 FUNCTION mbusFilterEnable : INT;
367 enable : BOOL := TRUE;
372 mbusFilterEnable := INT(MODCALL("mod_mbus", "mbusFilterEnable", error));
373 IF NOT (error = 0) THEN
374 mbusFilterEnable := MBUS_MODCALL_ERR;
395 IF NOT (error = 0) THEN