Может кому пригодится... работа с ТРМ212
SP...:
Код:public string trm_set_sp(int channel, int deviceAddress, float value) { string st = ""; string nm = "SP"; IntPtr name = Marshal.StringToCoTaskMemAnsi(nm); int i = channel - 1; ConnectionError res = (ConnectionError)NativeMethods.WriteFloat24( deviceAddress + i, 0, name, value, -1); if (res == ConnectionError.Ok) { st = "ok"; } else { st = "Ошибка записи ТРМ: " + res.ToString(); } Marshal.FreeCoTaskMem(name); return st; }
PV...:
Код:public string trm_get_pv(int channel, int deviceAddress, ref float value) { string st = ""; string nm = "PV"; IntPtr name = Marshal.StringToCoTaskMemAnsi(nm); int i = channel - 1; ConnectionError res = (ConnectionError)NativeMethods.ReadFloat24( deviceAddress + i, 0, name, ref value, -1); if (res == ConnectionError.Ok) { st = "ok"; } else { st = "Ошибка чтения ТРМ: " + res.ToString(); } Marshal.FreeCoTaskMem(name); return st; }
r-S...:
Код:public string trm_set_vkl(int channel, int deviceAddress, int value) { string st = ""; string nm = "r-S"; IntPtr name = Marshal.StringToCoTaskMemAnsi(nm); int i = channel - 1; ConnectionError res = (ConnectionError)NativeMethods.WriteByte( deviceAddress + i, 0, name, value, -1); if (res == ConnectionError.Ok) { st = "ok"; } else { st = "Ошибка записи ТРМ: " + res.ToString(); } Marshal.FreeCoTaskMem(name); return st; }