Форум TRACE MODE: техническая поддержка Послать новую тему / Post New Topic  Послать ответ / Post A Reply
мой профиль / my profile авторизация / login | регистрация / register | поиск / search | часто задаваемые вопросы / faq | начало / forum home

  Следующая старая тема / next oldest topic   Следующая новая тема / next newest topic
» Форум TRACE MODE: техническая поддержка » ТЕХНИЧЕСКАЯ ПОДДЕРЖКА / TECHNICAL SUPPORT TRACE MODE 6 » Драйверы / Device Drivers » Опрос данных с платы

   
Автор / Author Тема / Topic: Опрос данных с платы
jasper1
Junior Member / Новичок
Участник № / Member № 9434


Icon 1 отправлено / posted      Профиль для / Profile for jasper1           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Добрый день.

Подскажите, каким образом рекомендуется принимать данные с платы производителя СКБ ИС ЛИР-941-PCI-9pin-G2. Возможно уже реализовывали опрос с похожими платами этого производителя.
С данной платой поставляется драйвер для windows и библиотека dll.
по возможности прошу прислать пример использования внешней библиотеки.

спасибо.

Сообщения / Posts 8 | Из / From: Russia  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
АдАстра. Техподдержка
Administrator
Участник № / Member № 4


Icon 1 отправлено / posted      Профиль для / Profile for АдАстра. Техподдержка           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Можно попробовать через программу на ST. Описано в справке в разделе: Программирование алгоритмов - Программирование алгоритмов в TRACE MODE 6 - Описание языка Техно ST - Функции Техно ST - Внешние библиотеки функций. Там все банально должно быть, но если возникли трудности, напишите запрос на почту техподдержки (почта указана в Личном кабинете в разделе "Обратиться за технической поддержкой").
Сообщения / Posts 17315 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
jasper1
Junior Member / Новичок
Участник № / Member № 9434


Icon 1 отправлено / posted      Профиль для / Profile for jasper1           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Можете подсказать, каким образом передавать в функцию аргумент типа char?
Сообщения / Posts 8 | Из / From: Russia  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
АдАстра. Техподдержка
Administrator
Участник № / Member № 4


Icon 1 отправлено / posted      Профиль для / Profile for АдАстра. Техподдержка           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Char - символьный тип данных.
Используйте String.
Подробнее в Справочной Системе - Программирование алгоритмов - Описание языка ST - Переменные и константы ST - Определение переменных и констант

Сообщения / Posts 17315 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
jasper1
Junior Member / Новичок
Участник № / Member № 9434


Icon 1 отправлено / posted      Профиль для / Profile for jasper1           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
да, я так и делаю.
но проблема в том, что не понятно какой формат записи для строковой переменной у которой передается первый символ должен быть?

Сообщения / Posts 8 | Из / From: Russia  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
АдАстра. Техподдержка
Administrator
Участник № / Member № 4


Icon 1 отправлено / posted      Профиль для / Profile for АдАстра. Техподдержка           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
STRING (WCHAR*) – 256 символов в кодировке utf-8 (см. также Строковые константы Техно ST );

Описание в справке в разделе: Программирование алгоритмов - Программирование алгоритмов в TRACE MODE 6 - Описание языка Техно ST - Функции Техно ST - Внешние библиотеки функций

При взаимодействии с внешней библиотекой строка передается в формате Unicode (16 бит). Переменная TRACE MODE должна иметь тип данных STRING, указатель на строку в DLL – WCHAR. Для перевода из WCHAR в CHAR в DLL может использоваться функция WideCharToMultiByte.

Сообщения / Posts 17315 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
jasper1
Junior Member / Новичок
Участник № / Member № 9434


Icon 1 отправлено / posted      Профиль для / Profile for jasper1           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
С описанием из справочной системы ознакомился первым делом.
Т.е. передать символ из переменной нельзя, передается вся переменная, а библиотека должна сама уметь разбирать на символы.
В таком случае непонятен следующий вопрос: аргументам функции можно назначить тип char, но передавать я так понимаю можно только константу. Верно ли это утверждение?
и второй вопрос (для экономии времени на эксперименты): в библиотеке, которую мне необходимо подключить, тип возвращаемого значения bool. например:
LIR_API bool __stdcall Open_Driver_LIR_X (char plata_number , HANDLE &hFile);
LIR_API bool __stdcall AbsReadKanalData(HANDLE hFile, UCHAR kanal_number, ULONG &data);
возможно ли из trace mode вызывать такие функции (с типом возвращаемого значения bool)?

пример проекта с подключением библиотеки вы можете предоставить?

Сообщения / Posts 8 | Из / From: Russia  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
jasper1
Junior Member / Новичок
Участник № / Member № 9434


Icon 1 отправлено / posted      Профиль для / Profile for jasper1           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
непонятен следующий вопрос: аргументам функции можно назначить тип char, но передавать я так понимаю можно только константу. Верно ли это утверждение?
и второй вопрос: в библиотеке, которую мне необходимо подключить, тип возвращаемого значения bool. например:
LIR_API bool __stdcall Open_Driver_LIR_X (char plata_number , HANDLE &hFile);
LIR_API bool __stdcall AbsReadKanalData(HANDLE hFile, UCHAR kanal_number, ULONG &data);
возможно ли из trace mode вызывать такие функции (с типом возвращаемого значения bool)?

Сообщения / Posts 8 | Из / From: Russia  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
jasper1
Junior Member / Новичок
Участник № / Member № 9434


Icon 1 отправлено / posted      Профиль для / Profile for jasper1           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Добрый день.
При запуске проекта с использованием внешней библиотеки в файле профайлера возникает ошибка
(15:52:53) WRN_LOAD:Templates load error 22,ID=0 Type=1.
в папке RTM_1 библиотека есть с тем же именем, что и в проекте.
есть ли какие то ограничения на имя библиотеки?
необходимо ли регистрировать библиотеку в системе (про это в документации ничего не сказано)?

Сообщения / Posts 8 | Из / From: Russia  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
АдАстра. Техподдержка
Administrator
Участник № / Member № 4


Icon 1 отправлено / posted      Профиль для / Profile for АдАстра. Техподдержка           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Добрый день.
Любую внешнюю библиотеку (dll-файл), если она не windows'овая, необходимо регистрировать.

Если библиотека не зарегистрирована, то при запуске проекта как раз будет сообщение о библиотеке, которой нет.

Сообщения / Posts 17315 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
   

Quick Reply
Сообщение / Message:

HTML код не разрешен. / HTML is not enabled.
UBB код разрешен. / UBB Code is enabled.

Значки Graemlins / Instant Graemlins
   


Послать новую тему / Post New Topic  Послать ответ / Post A Reply Закрыть тему / Close Topic   Feature Topic   Переместить топик / Move Topic   Удалить топик / Delete Topic Следующая старая тема / next oldest topic   Следующая новая тема / next newest topic
 - Printer-friendly view of this topic
Перейти к / Hop To


Новости АСУ ТП / News | SCADA / HMI | Обучение / Trainings | Свяжитесь с нами / Contact Us



Powered by Infopop Corporation
UBB.classic™ 6.7.2