Показано с 1 по 3 из 3

Тема: owen_io.dll + C#

Комбинированный просмотр

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1

    По умолчанию

    Ответ сам себе ( по доброй традиции форума )
    для чтения параметра "rEAd" прибора МВ110-8а добавка к адресу и "индекс" должны быть равны (номер канала -1 ) .
    для чтения канала 4 мы имеем:
    Код:
    ConnectionError res = (ConnectionError)NativeMethods.ReadIEEE32(
                        deviceAddress + 3, 0, name, ref value, ref time , 3);

  2. #2

    По умолчанию

    Может кому пригодится... работа с ТРМ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;
            }

Похожие темы

  1. owen_io.dll + VB6
    от mastech в разделе Помощь Разработчикам
    Ответов: 2
    Последнее сообщение: 16.08.2011, 11:27
  2. ТРМ148 и owen_io.dll
    от mlab в разделе Сервисное ПО
    Ответов: 2
    Последнее сообщение: 08.07.2009, 11:16
  3. использование owen_io.dll
    от Alor в разделе Эксплуатация
    Ответов: 0
    Последнее сообщение: 29.04.2008, 14:34
  4. owen_io.dll
    от Arkady в разделе Помощь Разработчикам
    Ответов: 8
    Последнее сообщение: 27.07.2007, 06:36
  5. owen_io.dll
    от Vladimir в разделе Помощь Разработчикам
    Ответов: 4
    Последнее сообщение: 27.04.2007, 14:13

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •