Вы создаете объект последовательного порта с функцией serial
. serial
требует имени последовательного порта, соединенного с вашим устройством как входной параметр. Как описано в Configuring Properties Во время Создания объекта, можно также сконфигурировать значения свойств во время создания объекта.
Каждый объект последовательного порта сопоставлен с одним последовательным портом. Например, чтобы создать объект последовательного порта, сопоставленный с последовательным портом, входят
s = serial('port');
Это создает объект последовательного порта, сопоставленный с последовательным портом, заданным 'port'
. Если 'port'
не будет существовать, или если он будет использоваться, вы не сможете соединить объект последовательного порта с устройством. имя объекта 'port'
будет зависеть от платформы, что последовательный порт работает.
instrhwinfo('serial')
предоставляет список доступных последовательных портов.
Можно также использовать функцию 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 = serial('com1')
, убедитесь, что порт свободен и не уже открыт ни в каком другом приложении. Если порт открыт в другом приложении, MATLAB не может получить доступ к нему. Если вы получили доступ в MATLAB, можно открыть тот же порт в других приложениях, и MATLAB продолжит использовать его наряду с любым другим приложением, которое имеет его открытый также.
Если объект последовательного порта создается, следующие свойства являются автоматически присвоенными значениями. Эти свойства общего назначения предоставляют информацию об объекте последовательного порта на основе типа объекта и последовательного порта.
Последовательный порт описательные свойства
Чтобы получить список опций, можно использовать на функции, нажать клавишу Tab после ввода функции на командной строке MATLAB. Список расширяется, и можно прокрутить, чтобы выбрать свойство или значение. Для получения информации об использовании этой функции завершения вкладки "Дополнительно" смотрите Используя Заполнение клавишей Tab для Функций.
Можно отобразить значения этих свойств для s
s.Name
ans = 'Serial-COM1'
s.Port
ans = 'COM1'
s.Type
ans = 'serial'
Последовательный порт не заблокирован приложением MATLAB, таким образом, другие приложения или другие экземпляры Окна Команды MATLAB могут получить доступ к тому же последовательному порту. Этот результат силы в конфликте, с непредсказуемыми результатами.
Объект последовательного порта обеспечивает удобное отображение, которое обобщает важную настройку и информацию состояния. Можно вызвать сводные данные отображения эти три пути:
Введите имя переменной объекта последовательного порта в командной строке.
Исключите точку с запятой при создании объекта последовательного порта.
Исключите точку с запятой при конфигурировании свойств с помощью записи через точку.
Можно также отобразить итоговую информацию через браузер Рабочей области путем щелчка правой кнопкой по инструментальному объекту и выбора Display Summary из контекстного меню.
Сводные данные отображения для объекта последовательного порта s
на машине Windows даны здесь.
s = serial('COM1')
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