Интерфейс последовательного порта Поиска и устранения проблем

Последовательная передача является низкоуровневым протоколом для передачи между двумя или больше устройствами. Обычно, одно устройство является компьютером, и другое устройство может быть другим компьютером или a:

  • модем

  • принтер

  • научный прибор, такой как осциллограф или функциональный преобразователь

Последовательный порт отправляет и получает байты информации последовательным способом — 1 бит за один раз. Эти байты передаются с помощью или двоичного формата или текста (ASCII) формат.

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

Поддерживаемые платформы

Интерфейс последовательного порта поддерживается на этих платформах:

  • Linux® 64-bit

  • macOS 64-bit

  • Microsoft® Windows® 64-bit

Интерфейс последовательного порта поддерживается на тех же платформах как MATLAB. Для обновлений списка в настоящее время поддерживаемых платформ см. https://www.mathworks.com/support/sysreq/current_release/.

Требования адаптера

Используйте стандарт интерфейса RS-232 с коммуникацией последовательного порта. За эти годы несколько стандартов последовательного порта для соединения компьютеров к периферийным устройствам были разработаны. Эти стандарты включают RS-232, RS-422 и RS-485 — все из которых поддерживаются объектом последовательного порта. Из них наиболее широко используемый стандарт является RS-232, который обозначает Рекомендуемый стандарт номер 232.

В этом руководстве это принято, вы используете стандарт RS-232.

Необходимо соединить эти два устройства последовательным кабелем. Для получения дополнительной информации смотрите Соединяющий Двух Устройств Последовательным кабелем.

Последовательные порты состоят из двух типов сигнала: сигналы данных и управляющие сигналы. Чтобы поддержать эти типы сигнала, а также сигнальную землю, стандарт RS-232 задает 25-контактную связь. Однако большинство PC и платформ UNIX® используют 9-контактную связь. На самом деле только три контакта требуются для коммуникаций последовательного порта: один для получения данных, один для передачи данных, и один для сигнальной земли. Для получения дополнительной информации смотрите Сигналы Последовательного порта и Назначения контактов.

Настройка и связь

  1. Убедитесь, что у вас есть правильный инструментальный драйвер, установленный для вашего устройства. Обратитесь к своей документации устройства и веб-сайту поставщика.

  2. Убедитесь, что ваше устройство поддерживается в Instrument Control Toolbox™. Смотрите, что Мое Оборудование Поддержано?.

  3. Убедитесь, что Instrument Control Toolbox распознает ваши последовательные порты, при помощи instrhwinfo функция с serialport 'interfaceName' . Например:

    info = instrhwinfo("serialport")
    ans = 
    
      HardwareInfo with properties:
    
               AllSerialPorts: {"COM1"}
         AvailableSerialPorts: {"COM1"}
        ObjectConstructorName: {"serialport("COM1", 38400);"}

    Если бы ваш компьютер имеет больше чем один последовательный порт, ваш выход выглядел бы так:

    info = instrhwinfo("serialport")
    info = 
    
      HardwareInfo with properties:
    
               AllSerialPorts: [3×1 string]
         AvailableSerialPorts: [3×1 string]
        ObjectConstructorName: [3×1 string]
  4. В этом примере выход перечислил три порта. Перечислите доступные последовательные порты:

    info.AvailableSerialPorts
    ans = 
    
      3×1 string array
    
        "COM1"
        "COM3"
        "COM4"

    Совет

    Можно также использовать диспетчер устройств Windows, чтобы видеть список доступных последовательных портов.

  5. Убедитесь, что можно создать объект последовательного порта. Необходимо обеспечить один аргумент, чтобы создать объект, имя доступного порта. Например, создайте последовательный объект под названием s использование порта COM1.

    s = serialport("COM1");

    Если вы не получаете ошибку, объект был создан успешно.

  6. Когда вы соединились, можно связаться с устройством. Если у вас есть проблемы при отправке или получении, вы, возможно, должны сконфигурировать коммуникационные настройки, такие как BaudRateDataBitsЧетностьStopBits, или Terminator. Убедитесь, что вы конфигурируете эти коммуникационные параметры, чтобы совпадать с теми из подключенного устройства.

    Смотрите Запись и Чтение текстовых Данных и Запись и Чтение Двоичных Данных для коммуникационных примеров.

Другие советы Поиска и устранения проблем для последовательного порта

Проверьте порт

Проверьте, что последовательный порт (COM) перечислен в Панели управления Windows Control Panel> Диспетчер устройств> Порты.

Отправка и получение

Если у вас есть проблемы при отправке или получении, вы, возможно, должны сконфигурировать коммуникационные настройки, такие как BaudRateDataBitsЧетностьStopBits, или Terminator. Убедитесь, что вы конфигурируете эти коммуникационные параметры, чтобы совпадать с теми из подключенного устройства.

ВИЗА

Для последовательной передачи можно также использовать VISA с именем ресурса VISA, столь же заданным в утилите поставщика VISA, такой как Эксперт по Связи Keysight.

Стороннее программное обеспечение

Для поиска и устранения неисправностей коммуникации последовательного порта можно также использовать стороннее программное обеспечение последовательной передачи, такое как PuTTY или Термин Tera, чтобы изолировать проблему.

Неправильные данные

При выполнении связи двоичных данных с read и write, убедитесь правильный тип данных – например, int16uint16'double' – используется с read и write. Необходимо использовать совпадающий тип данных в качестве инструментального использования.

При чтении и записывании данные типы кроме uint8 или int8, убедитесь ByteOrder правильно.