exponenta event banner

читать

Считывание данных с последовательного порта

Описание

пример

data = read(device,count,datatype) считывает количество значений, указанных count в форме, указанной datatype от последовательного порта device. Для всех числовых datatype типы, data - вектор строки с двойными значениями. Для типа текста datatype значения "char" или "string", data относится к указанному типу. Функция приостанавливает выполнение MATLAB ® до тех пор, пока не будет считано заданное количество значений или не наступит тайм-аут.

Примеры

свернуть все

Создайте подключение к устройству последовательного порта. В этом примере последовательный порт в COM3 подключается к устройству закольцовывания.

device = serialport("COM3",9600)
device = 

  Serialport with properties:

                 Port: "COM3"
             BaudRate: 9600
    NumBytesAvailable: 0

  Show all properties, functions

Запишите значения [1,2,3,4,5] в формате uint8.

write(device,1:5,"uint8")

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

read(device,5,"uint8")
ans = 1×5

     1     2     3     4     5

Входные аргументы

свернуть все

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

Пример: read(device,20,"uint32") считывает данные из подключения последовательного порта device.

Число считываемых значений, указанное как положительное целое значение. Если count больше, чем NumBytesAvailable имущество deviceфункция приостанавливает выполнение MATLAB и ожидает, пока не будет считан указанный объем данных или не наступит тайм-аут.

Пример: read(device,5,"uint32") считывает пять значений данных uint32. Каждое значение uint32 составляет четыре байта, всего считано 20 байтов.

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

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

Пример: read(device,5,"int16") считывает пять значений данных uint16. Каждое значение uint16 составляет два байта, всего считано 10 байтов.

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

См. также

Функции

Представлен в R2019b