Добрый день.
Подтолкните советом, пожалуйста. Запутался в трех соснах, порыл весь форум, ничего не нашел.
Пытаюсь организовать считывание через 485 порт по протоколу Modbus данных из другого контроллера. Сразу запнулся на функции открытия порта - не открывает. Код следующий:
Код:
PROGRAM MODBUS
VAR
	Sett				: COM_Settings;
	Sett2				: COM_SettingsEx;
	port_opened			: INT:=0;
	Res				: SysCom.RTS_IEC_RESULT;
END_VAR
-----------------------------------------------------------
IF (port_opened=0) THEN
	SysComClose(0);	(* закрытие порта *)
	SysComOpen(0,Res);
	SysComGetSettings(0,ADR(Sett),ADR(Sett2));	

	Sett.sPort:=SYS_COMPORT_NONE; 
	Sett.ulBaudrate:=SYS_BR_19200;
	Sett.byParity:=SYS_NOPARITY;
	Sett.ulTimeout:=0;
	Sett.byStopBits:=SYS_ONESTOPBIT;
	Sett.ulBufferSize:=0;
	Res:=SysComSetSettings(0, ADR(Sett),ADR(Sett2));
	IF Res=0 THEN (* запуск порта*)
		port_opened:=2;

	ELSE
		//Res:=SysComClose(hCom:=COM_Handle);	
		port_opened:=-1;
	END_IF
END_IF
В итоге, port_opened=-1. Ни одна функция не отрабатывает корректно. Res в последнем присваивании = 1. SysComOpen возвращает 16#FFFFFFFF.