write функция синхронно записывает данные к удаленному хосту, соединенному с tcpclient объект. Сначала задайте данные, затем запишите данные. Функция ожидает, пока конкретное количество значений не записано в удаленный хост.
В этом примере, tcpclient объект t уже существует.
% Create a variable called data data = 1:10; % Write the data to the object t write(t, data)
Примечание
Для любой операции чтения или операции записи, тип данных преобразован в uint8 для передачи данных. Это затем преобразовано назад в тип данных, который вы устанавливаете, если вы задали другой тип данных.
read функция синхронно считывает данные из удаленного хоста, соединенного с tcpclient возразите и возвращает данные. Существует три опции чтения:
Считайте все доступные байты (никакие аргументы).
Опционально задайте количество байтов, чтобы читать.
Опционально задайте тип данных.
Если вы не задаете размер, значение по умолчанию читало, использует BytesAvailable значение свойства, которое равно количеству байтов, доступных во входном буфере.
В этих примерах, tcpclient объект t уже существует.
% Read all bytes available. read(t) % Specify the number of bytes to read, 5 in this case. read(t,5) % Specify the number of bytes to read, 10, and the data type, double. read(t,10,"double")
Примечание
Для любой операции чтения или операции записи, тип данных преобразован в uint8 для передачи данных. Это затем преобразовано назад в тип данных, который вы устанавливаете, если вы задали другой тип данных.
Одно из первичного использования коммуникации TCP/IP должно получить данные из сервера. В этом примере показано, как получить и отобразить данные на графике из удаленной метеостанции.
Примечание
IP-адресом в этом примере не является рабочий IP-адрес. Пример показывает, как связать с удаленным сервером. Замените адресом, показанным здесь с IP-адресом или именем хоста сервера, с которым вы хотите связаться.
Создайте tcpclient объект с помощью адреса, показанного здесь и порт 1045.
t = tcpclient("172.28.154.231",1045)t =
tcpclient with properties:
Address: '172.28.154.231'
Port: 1045
NumBytesAvailable: 0
Show all properties, functions
Получите данные с помощью read функция. Задайте количество байтов, чтобы читать как 30, для 10 выборок от трех датчиков (температура, давление и влажность). Задайте тип данных как double.
data = read(t,30,"double");Изменитесь 1 30 данные в 10 3 данные, чтобы показать одному столбцу каждого для температуры, давления и влажности.
data = reshape(data,[3,10]);
Постройте температуру.
subplot(311); plot(data(:,1));
Постройте давление.
subplot(312); plot(data(:,2));
Постройте влажность.
subplot(313); plot(data(:,3));
Закройте связь между объектом клиента TCP/IP и удаленным хостом путем очистки объекта.
clear tВ этом примере вы читаете страницу из Редактора RFC веб-сайт с помощью объекта TCP/IP.
Создайте объект TCP/IP. Порт 80 стандартный порт для веб-серверов.
t = tcpclient("www.rfc-editor.org",80);Установите Terminator свойство объекта TCP/IP.
configureTerminator(t,"LF","CR/LF");
Можно теперь связаться с сервером с помощью writeline и readline функции.
Чтобы попросить, чтобы веб-сервер отправил веб-страницу, используйте GET команда. Можно попросить текстовый файл из Редактора RFC, использование веб-сайта 'ПОЛУЧАЕТ .(path/filename)'
writeline(t,"GET /rfc/rfc793.txt");Сервер получает команду и передает веб-страницу обратно. Вы видите, передали ли какие-либо данные обратно путем рассмотрения NumBytesAvailable свойство объекта.
t.NumBytesAvailable
Теперь можно начать считывать данные о веб-странице. По умолчанию, readline читает одну строку за один раз. Можно прочитать строки данных до NumBytesAvailable значение 0. Обратите внимание на то, что вы не видите представленную веб-страницу; данные о файле HTML прокручивают на экране.
while (t.NumBytesAvailable > 0) A = readline(t) end
Если вы хотите сделать больше коммуникации, можно продолжить читать и записывать данные. Если вы сделаны с объектом, очистите его.
clear t