Среда разработки Unimod PRO 2 (версия 2.3.40)
 Руководство по программированию
×

PORT_OPEN - открытие COM порта


Назначение.
Функциональный блок PORT_OPEN применяется для открытия COM-порта.
Входные параметры.
Название параметра
Тип данных
Краткое описание
RUN
BOOLEAN
  • RUN=TRUE - запуск блока и открытие COM-порта;
  • RUN=FALSE - остановка блока без закрытия порта.
COM
INTEGER
Номер последовательного COM-порта или юнита.
BAUD_RATE
INTEGER
Скорость передачи данных в бит/с: 1200, 2400, 4800, 9600, 14400, 19200, 38400, 57600 и 115200. Диапазон поддерживаемых значений зависит от типа мастер-модуля и описан в руководстве по эксплуатации на конкретное устройство.
DATA_BITS
INTEGER
Количество бит данных в одном сообщении:
  • 0 - по умолчанию передаются 8 бит данных;
  • 8 - явное определение передачи 8 бит данных;
  • 5 .. 7 - возможность передачи от 5 до 7 бит данных поддерживается не на всех устройствах, зависит от модели мастер-модуля и описана в руководстве по эксплуатации на конкретное устройство.
STOP_BITS
INTEGER
Количество стоповых бит при передаче данных, допустимы значения 1 или 2.
PARITY
INTEGER
Режим контроля четности при передаче данных:
  • 0 - четность не контролируется, 1 стоповый бит;
  • 1 - четность не контролируется, 2 стоповых бита;
  • 2 - режим EVEN, один бит четности равен единице при четном количестве единиц в битах данных;
  • 3 - режим ODD, один бит четности равен единице при нечетном количестве единиц в битах данных;
  • 4 - режим SPACE, один бит четности всегда равен 0;
  • 5 - режим MARK, один бит четности всегда равен 1.
Режимы MARK и SPACE не влияют на возможность контроля ошибок.
FLOW_CTRL
INTEGER
Не используется, должен быть равен 0
PARAM
INTEGER
Не используется, должен быть равен 0
 
Выходные параметры.
Название параметра
Тип данных
Краткое описание
PORT_ID
INTEGER
Идентификатор файла порта
READY
BOOLEAN
Флаг открытия порта:
  • TRUE - порт открыт
  • FALSE - возникновение ошибки
FAULT
INTEGER
Код завершения операции:
  • 0 - выполнено успешно
  • 1 - ошибка открытия (некорректные параметры)
  • 3 - системная ошибка при работе с портом
 
Обмен данными через открытый COM-порт.
Для передачи данных используйте функциональный блок FL_WR.
Для приема данных используйте функциональный блок FL_RD.
 
Для определения количества принятых и доступных для считывания данных используйте функциональный блок PORT_CTRL.
Пример синтаксиса на языке ST.
//задаем номер порта и скорость передачи данных
Block.COM := 1;
Block.BAUD_RATE := 9600;
//количество бит данных и стоповых бит
Block.DATA_BITS := 5;
Block.STOP_BITS := 1;
//выбираем режим контроля четности ODD
Block.PARITY := 3;
//разрешение на запуск блока
Block.RUN := true;
//вызов функционального блока PORT_OPEN
Block.PORT_OPEN();
//чтение выходных параметров
Block.PORT_ID
Block.READY
Block.FAULT