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

Тема: Не могу подключить МВА8 с помощью OWEN_IO

  1. #1

    По умолчанию Не могу подключить МВА8 с помощью OWEN_IO

    В Delphi пытаюсь прочитать данные с МВА8:
    if (not InitLib) then ShowMessage('Ошибка загрузки библиотеки');
    OpenPort(2,2,0,1,0,0);
    res:=ReadIEEE32(16,0,'rEAd',val,tm,-1);
    if(res>=0) then
    Memo1.Lines.Add('Read='+FloatToStr(val/6/3)+' Time='+FloatToStr(tm/5))
    else
    begin
    Memo1.Lines.Add('Ошибка чтения! '+IntToStr(res));
    LastErrToStr(errStr);
    Memo1.Lines.Add(errStr);
    end;
    Пишет "Ошибка чтения! -104"
    а дальше вместо букв квадраты.
    ReadUInt(hh,0,'bPS',val1,-1);-выдает тоже самое.
    как узнать код ошибки?

  2. #2

    По умолчанию

    Нупомогите пожалуйста. Замучила уже эта ошибка -104.
    Может есть какие-то тонкости в настройке МВА?
    Спасибо.

  3. #3

    По умолчанию

    Надо использовать функцию из библиотеки LastErrToStr
    для получения сетевой ошибки, и далее посмотреть в описании к библиотеке что это за ошибка

  4. #4
    Пользователь
    Регистрация
    08.01.2011
    Адрес
    Брянск
    Сообщений
    158

    По умолчанию

    у меня тоже квадраты вместо кода ошибки...

  5. #5

    По умолчанию

    Потому что у вас delphi современный, и строка воспринимает как юникодную, а она -- ANSI.

    -104 -- прибор вернул код ошибки nErr. Вызовите int GetDeviceLastErr(), и посмотрите, что прибор хочет.

  6. #6

    По умолчанию

    Все будет работать если в Описании функций использовать PAnsiChar вместо PChar.

  7. #7

    По умолчанию

    Огромное спасибо!!! Как приятно осознавать, что твоя проблема была решена много лет назад!

    Вот уже 2 день сижу-маюсь и не понимаю почему старая программа (писал даааавным-давно на Delphi 7), которую сейчас неспешно переписываю на Delphi 10 не хотела видеть прибор и ругалась " ERR_NERR (-104) прибор вернул код сетевой ошибки nErr "

    Было до:
    PHP код:
    ...
    Type
    ...
      
    TProcOwenIO=function (adr,adr_type,is_read:DWORD;command,params:pchar;var param_sz:integer):integer;stdcall;
    ...
    var
      ...
      
    params:array [0..7of char;
      ... 
    Стало:
    PHP код:
    ...
    Type
    ...
      
    TProcOwenIO=function (adr,adr_type,is_read:DWORD;command,params:PAnsiChar;var param_sz:integer):integer;stdcall;
    ...
    var
      ...
      
    params:array [0..7of AnsiChar;
      ... 
    И ТРМ-148 прислал мне через АС-4 в ответку то, как его зовут! Ну прямо подарок под конец праздников!

    А вообще, сейчас кому-то актуальны примеры программ на Delphi 2010 для работы с ТРМ-200 ТРМ-210 и ТРМ 148 ? Суть - греют емкости с заданными температурами и замеряют температуру и давление внутри них. Если начальство позволит, то выложу исходники сюда.
    Последний раз редактировалось minaevn; 11.05.2015 в 20:33.

  8. #8
    Пользователь Аватар для capzap
    Регистрация
    25.02.2011
    Адрес
    Киров
    Сообщений
    10,391

    По умолчанию

    Цитата Сообщение от minaevn Посмотреть сообщение
    Огромное спасибо!!! Как приятно осознавать, что твоя проблема была решена много лет назад!

    Вот уже 2 день сижу-маюсь и не понимаю почему старая программа (писал даааавным-давно на Delphi 7), которую сейчас неспешно переписываю на Delphi 10 не хотела видеть прибор и ругалась " ERR_NERR (-104) прибор вернул код сетевой ошибки nErr "

    Было до:


    Стало:


    И ТРМ-148 прислал мне через АС-4 в ответку то, как его зовут! Ну прямо подарок под конец праздников!

    А вообще, сейчас кому-то актуальны примеры программ на Delphi 2010 для работы с ТРМ-200 ТРМ-210 и ТРМ 148 ? Суть - греют емкости с заданными температурами и замеряют температуру и давление внутри них. Если начальство позволит, то выложу исходники сюда.
    считаете, что подняв тему от 11-ого года, все ринутся посмотреть Ваши исходники
    Bad programmers worry about the code. Good programmers worry about data structures and their relationships

  9. #9

    По умолчанию

    а фиг знает. Сам бы глянул с удовольствием пример заведомо рабочей программы. Кстати, ту писал вроде на основе чьего-то примера.

Ваши права

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