serialport

Подключение к последовательному порту

Описание

A serialport объект представляет последовательный клиент для связи с последовательным портом. После создания объекта используйте запись через точку для того, чтобы задать его свойства.

Создание

Описание

пример

s = serialport(port,baudrate) соединяется с последовательным портом, заданным port со скоростью бодов baudrate.

s = serialport(port,baudrate,Name,Value) соединяется с последовательным портом и устанавливает дополнительные свойства с помощью необязательных аргументов пары "имя-значение".

s = serialportбез аргументов соединяется с последовательным портом с помощью параметров свойства последнего очищенного serialport образец объекта. Сохраненные свойства Port, BaudRate, ByteOrder, FlowControl, StopBits, DataBits, Parity, Timeout, и Terminator. См. «Свойства».

Входные параметры

расширить все

Имя последовательного порта, заданное как вектор символов или строковый скаляр. Использовать serialportlist для получения списка подключенных портов.

Пример: "COM2"

Скорость передачи данных для последовательной передачи, заданная как double.

Пример: 9600

Аргументы в виде пар имя-значение

Задайте необязательные разделенные разделенными запятой парами Name,Value аргументы. Name - имя аргумента и Value - соответствующее значение. Name должны находиться внутри кавычек. Можно задать несколько аргументов в виде пар имен и значений в любом порядке Name1,Value1,...,NameN,ValueN.

Можно использовать пары "имя-значение", чтобы задать DataBits, Parity, StopBits, FlowControl, ByteOrder, и Timeout свойства объекта. Смотрите Свойства для их типов данных и допустимых значений.

Пример: "Timeout",30

Свойства

расширить все

Свойства создания объектов

Это свойство доступно только для чтения.

Последовательный порт для подключения, возвращенный как строка.

Пример: "COM1"

Типы данных: string

Скорость связи в битах в секунду, возвращается как положительное целое число двойной точности.

Пример: 14400

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Четность, чтобы проверить, были ли данные потеряны или записаны, возвращается как "none", "even", или "odd".

Пример: "odd"

Типы данных: char | string

Количество бит для представления одного символа данных, возвращаемое как 8, 7, 6, или 5.

Пример: 8

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Шаблон бит, который указывает конец символа или всей передачи, возвращенный как 1, 1.5, или 2.

Пример: 1

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Режим управления скоростью передачи данных, возвращенный как "none", "hardware", или "software".

Пример: "software"

Типы данных: char | string

Последовательный порядок, в котором байты упорядочены в большие числовые значения, возвращается как "little-endian" или "big-endian". Установите это свойство при создании объекта с помощью аргумента пары "имя-значение". Вы также можете изменить его после создания объекта с помощью записи через точку.

Пример: "little-endian"

Типы данных: char | string

Допустимое время в секундах для завершения операций чтения и записи, возвращаемое как числовое значение. Установите это свойство при создании объекта с помощью аргумента пары "имя-значение". Вы также можете изменить его после создания объекта с помощью записи через точку.

Пример: 60

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Чтение и запись свойств

Это свойство доступно только для чтения.

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

Пример: 1024

Типы данных: double

Это свойство доступно только для чтения.

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

Пример: 512

Типы данных: double

Terminator символа для чтения и записи данных, оконечных по ASCII, возвращается как "LF", "CR", или "CR/LF"или число от 0 до 255 включительно. Если терминаторы строки чтения и записи отличаются, Terminator возвращается как массив ячеек 1x2 из этих значений. Установите это свойство с configureTerminator функция.

Пример: "CR"

Типы данных: char | string

Свойства коллбэка

Доступный режим триггера коллбэка в байтах, возвращается следующим "off", "byte", или "terminator". Этот параметр определяет, отключен ли коллбэк, вызванный количеством байтов, заданным BytesAvailableFcnCount, или инициируется терминатором строки, заданным как Terminator. Установите это свойство с configureCallback функция.

Пример: "off"

Типы данных: char | string

Количество байтов данных для запуска коллбэков, заданное как BytesAvailableFcn, вернулся в качестве дубля. Это значение используется только когда BytesAvailableFcnMode свойство "byte". Установите эти свойства с configureCallback функция.

Пример: 128

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Функция обратного вызова, инициируемая событием, доступным в байтах, возвращаемая как указатель на функцию. Событие, доступное в байтах, генерируется путем приема определенного количества байтов или терминатора строки. Это свойство пустое, пока вы не назначите указатель на функцию. Установите это свойство с configureCallback функция.

Пример: @myFcn

Типы данных: function_handle

Функция обратного вызова, вызванная событием ошибки, возвращается как указатель на функцию. Событие ошибки генерируется, когда возникает асинхронная ошибка чтения или записи. Это свойство пустое, пока вы не назначите указатель на функцию.

Пример: @myErrFcn

Типы данных: function_handle

Свойство общего назначения для пользовательских данных, возвращаемое как любой MATLAB® тип данных. Для примера можно использовать это свойство для хранения данных, когда событие запускается из функции обратного вызова.

Пример: datetime()

Функции объекта

readЧтение данных с последовательного порта
readlineСчитывайте линию строковых данных ASCII из последовательного порта
writeЗапись данных в последовательный порт
writelineЗапись линии данных ASCII в последовательный порт
flushОчистить буферы устройства последовательного порта
configureTerminatorУстановите терминатор строки для обмена строками ASCII с последовательным портом
configureCallbackУстановите функцию обратного вызова и условие триггера для связи с устройством последовательного порта
getpinstatusПолучите статус последовательного контакта
setRTSУстановите последовательный контакт RTS
setDTRУстановите последовательный контакт DTR

Примеры

свернуть все

Считайте 16 значений данных uint32 из COM3 последовательный порт.

s = serialport("COM3",9600,"Timeout",5);
data = read(s,16,"uint32");

См. также

Функции

Введенный в R2019b