serial функция требует имени последовательного порта, соединенного с вашим устройством как входной параметр. Кроме того, можно сконфигурировать значения свойств во время создания объекта. Чтобы создать объект последовательного порта, сопоставленный с последовательным портом, войдите:
s = serial('port');Это создает объект последовательного порта, сопоставленный с последовательным портом, заданным 'port'. Если 'port' не существует, или если это будет использоваться, вы не сможете соединить объект последовательного порта с устройством. 'port' имя объекта будет зависеть от платформы, что последовательный порт работает.
seriallist функция возвращает список всех последовательных портов в системе. Список включает виртуальные последовательные порты, обеспеченные USB-to-serial устройствами и Bluetooth Serial Port Profile устройствами. Это предоставляет список последовательных портов, к которым вы имеете доступ на вашем компьютере и могли использовать в коммуникации последовательного порта. Например:
seriallist ans = 1×2 string array "COM1" "COM3"
Эта таблица показывает пример последовательных конструкторов на других платформах:
Платформа | Последовательный конструктор |
|---|---|
Linux® 64-bit |
serial('/dev/ttyS0'); |
macOS 64-bit |
serial('/dev/tty.KeySerial1'); |
Microsoft® Windows® 64-bit |
serial('com1'); |
Объект последовательного порта s теперь существует в рабочей области MATLAB®. Отобразить класс s, используйте whos команда.
whos s Name Size Bytes Class s 1x1 512 serial object Grand total is 11 elements using 512 bytes
В первый раз вы пытаетесь получить доступ к последовательному порту в MATLAB с помощью s = последовательный ( вызовите, убедитесь, что порт свободен и не уже открыт ни в каком другом приложении. Если порт открыт в другом приложении, MATLAB не может получить доступ к нему. Если вы получили доступ в MATLAB, можно открыть тот же порт в других приложениях, и MATLAB продолжит использовать его наряду с любым другим приложением, которое имеет его открытый также. 'port')
Если объект последовательного порта создается, следующие свойства являются автоматически присвоенными значениями. Эти свойства общего назначения предоставляют описательную информацию об объекте последовательного порта на основе типа объекта и последовательного порта.
Описательные свойства общего назначения
Отобразите значения этих свойств для s с get функция. На платформе Windows это будет выглядеть так:
get(s,{'Name','Port','Type'})
ans =
'Serial-COM1' 'COM1' 'serial'Можно сконфигурировать свойства последовательного порта во время создания объекта. serial принимает имена свойства и значения свойств в том же формате как set функция. Например, можно задать имя свойства / пары значения свойства.
s = serial('port','BaudRate',4800,'Parity','even');Если вы задаете недопустимое имя свойства, объект не создается. Однако, если вы задаете недопустимое значение для некоторых свойств (например, BaudRate установлен в 50), объектная сила быть созданным, но вам не сообщают о недопустимом значении, пока вы не соединяете объект с устройством с fopen функция.
Объект последовательного порта предоставляет вам удобное отображение, которое обобщает важную настройку и информацию состояния. Можно вызвать сводные данные отображения эти три пути:
Введите имя переменной объекта последовательного порта в командной строке.
Исключите точку с запятой при создании объекта последовательного порта.
Исключите точку с запятой при конфигурировании свойств с помощью записи через точку.
Чтобы отобразить итоговую информацию с помощью браузера Рабочей области, щелкните правой кнопкой по инструменту, возражают и выбирают Display Summary из контекстного меню.
Сводные данные отображения для объекта последовательного порта s на платформе Windows:
Serial Port Object : Serial-COM1 Communication Settings Port: COM1 BaudRate: 9600 Terminator: 'LF' Communication State Status: closed RecordStatus: off
Read/Write State TransferStatus: idle BytesAvailable: 0 ValuesReceived: 0 ValuesSent: 0
В MATLAB вы создаете массив из существующих переменных путем конкатенации тех переменных вместе. То же самое верно для объектов последовательного порта. Например, предположите, что вы создаете объекты последовательного порта s1 и s2 на платформе Windows.
s1 = serial('COM1');
s2 = serial('COM2');Создайте массив объекта последовательного порта, состоя из s1 и s2, использование обычного синтаксиса MATLAB. Создать массив строк x, Введите:
x = [s1 s2] Instrument Object Array Index: Type: Status: Name: 1 serial closed Serial-COM1 2 serial closed Serial-COM2
Создать массив столбца y, Введите:
y = [s1;s2];
Обратите внимание на то, что вы не можете создать матрицу объектов последовательного порта. Например, вы не можете создать матрицу:
z = [s1 s2;s1 s2]; ??? Error using ==> serial/vertcat Only a row or column vector of instrument objects can be created.
В зависимости от вашего приложения вы можете хотеть передать массив объектов последовательного порта к функции. Например, чтобы сконфигурировать скорость в бодах и четность для s1 и s2 использование одного вызова set:
set(x,'BaudRate',19200,'Parity','even')