KRCOMPortConnector.pas

Классы

Класс TKRCOMPortConnector

Родительский класс TKRConnector

Интерфейсы: IKRCOMPortSets

TKRCOMPortConnector – коннектор, осуществляющий связь с удаленным устройством через последовательный порт. Для вывода формы настройки параметров порта можно использовать компонент TKRCOMPortSets. Подробное описание работы с коннекторами можно прочитать в статье «Принцип работы коннекторов в Delphi компонентах».

Свойства класса TKRCOMPortConnector
  • Port – имя порта, к которому будет подключаться коннектор
  • Parity – четность последовательного порта
  • StopBits – количество стоп битов последовательного порта
  • BaudRate – скорость последовательного порта
  • DataBits – количество битов данных последовательного порта
  • FlowControl – управление потоком последовательного порта
 
Поделиться:
0
Сергей Кинаш
27.04.2021 13:55
 
Здравствуйте, Руслан.
Возникла такая проблема. Создаю runtime экземпляр класса TKRCOMPortConnector
Так вот, этот участок кода в VCL Form Applacation работает как надо. Активация проходит: KRModbusMaster1.Connector.Stat=cstConnected

Но если я этот же участок кода помещаю в dll, то
KRModbusMaster1.Connector.Stat = sctNotActive, хотя KRCOMPortConnector1.Active = true

Подскажите пожалуйста что я мог упустить?
Показать полностью
13
Руслан Кандирал
27.04.2021 14:15
Сергей Кинаш
 
Коннектор находится в состоянии sctNotActive до тех пор пока не будет отправлен хотя бы один пакет методом Send. То есть, пока вы ничего ни куда не отправляете, он(коннектор) ничего и не делает.
Показать полностью
0
Сергей Кинаш
27.04.2021 14:28
Руслан Кандирал
 
Я делал по "примеру передачи данных по протоколу Modbus на Delphi". Там явно ничего методом Send не отправляется. Может неявно, не знаю.
Ещё раз напомню, что если запускать этот участок кода из обычного VCL exe-шника, то всё работает. Но если скопипастить его в dll, то sctNotActive, хотя KRCOMPortConnector1.Active = true
Показать полностью
13
Руслан Кандирал
27.04.2021 14:37
Сергей Кинаш
 
Передача данных и подключение выполняются в одной процедуре _exec
https://github.com/kandiral/Kandiral/blo...

Процедура _exec вызывается только в том случае если во входящей очереди коннектора есть хотя-бы одно сообщение(пакет)
https://kandiral.ru/delphi/princip_rabot...

В "пример передачи данных по протоколу Modbus на Delphi" метод Send коннектора вызывается в KRModbusMaster

Получается, что в "обычном VCL exe-шнике" вы что-то отправляете в коннектор, а в DLL нет
Показать полностью
0
Сергей Кинаш
27.04.2021 14:41
Руслан Кандирал
 
Спасибо, будем искать.
Показать полностью
13
Руслан Кандирал
27.04.2021 14:06
Сергей Кинаш
 
Здравствуйте, Сергей!

Какую версию компонентов используете?
Показать полностью
0
Сергей Кинаш
27.04.2021 14:15
Руслан Кандирал
 
от 30.03.2021
RAD Studio 10.2
Показать полностью

Новости сайта

18.07.2021 14:30
Новая статья по экспорту Google Sheet в MS Excel
Экспорт таблиц Google Sheets в файл MS Excel с помощью Google Script, а также сохранение на Google Drive и отправка на e-mail
30.03.2021 14:53
Обновлен набор компонентов для Delphi
Пакет компонентов для Delphi обновлен до версии от 30.03.2021 г.
14.03.2021 04:54
Обновлен скрипт экспорта Google таблиц в PDF
Добавлены новые возможности при экспорте Google таблиц в PDF файл
22.01.2021 11:45
Обновлен пакет компонентов для Delphi
В пакет компонентов для Delphi было внесено большое количество изменений, касающиеся протокола Modbus и мультиязычности

Популярные статьи

Экспорт таблиц Google Sheets в PDF файл, на email и на Google диск
Экспорт таблиц Google Sheets в PDF файл с помощью Google Script с последующим скачиванием или сохранением на Google Drive или отправкой на почту
Инструкция по установке компонентов на Delphi
Подробная инструкция по установке компонентов на Delphi с видео обзором
Пример передачи данных по протоколу Modbus на Delphi
Пример передачи данных с контроллера ОВЕН ПЛК100 в программу на Delphi по протоколу Modbus
Modbus Slave на Arduino
Реализация клиентской части протокола Modbus RTU и Modbus ASCII для контроллеров Arduino