Можно считать и записать оба текстовых данные (базирующийся ASCII) и двоичные данные. Для текстовых данных используйте функции fprintf
и fscanf
. Для двоичных данных используйте функции fwrite
и fread
.
Этот пример использует робота LEGO Mindstorm NXT с RemoteName
C3PO
, который вы обнаружили в Viewing Bluetooth Device Properties. Дополнительную информацию см. в том разделе по свойствам просмотра и обнаружению устройств.
Связываться с устройством NXT:
Определите, какие устройства Bluetooth® доступны от вашего компьютера.
instrhwinfo('Bluetooth')
Просмотрите список устройств с помощью свойства RemoteNames
.
ans.RemoteNames
В этом случае C3PO
является удаленным именем робота NXT и показан в выводе. Отобразите информацию об этом устройстве с помощью интерфейса Bluetooth
и свойства RemoteName
.
instrhwinfo('Bluetooth','C3PO')
Instrument Control Toolbox™ отображает информацию об устройстве.
Создайте объект Bluetooth под названием bt
с помощью канала 1
устройства NXT.
bt = Bluetooth('C3PO', 1);
Соединение с устройством.
fopen(bt)
Отправьте сообщение в удаленное устройство с помощью функции fwrite
.
В этом примере определенные символы отправляются в устройство, которое понимает это конкретное устройство (робот NXT C3PO
). Можно записать в устройство, затем запросить объект, как показано здесь, чтобы видеть, что значения были отправлены.
Считайте данные из удаленного устройства с помощью функции fread
.
Вы видите, что ValuesSent
является 4
, которые являются этими четырьмя символами, отправленными в fwrite
(2,0,1,155
). Это также показывает, что байты 35
доступны. Таким образом, можно затем использовать функцию fread
и дать ей 35 байтов, чтобы считать символы из удаленного устройства.
Устройство возвращает символы, показанные сюда. Возвращенными символами является C3PO
, который является RemoteName
устройства. Это было ответом на указания, которые были отправлены к нему. См. документацию для своего устройства для этого типа специфичной для устройства информации о коммуникации.
Вымойтесь путем удаления и очистки объекта.
fclose(bt); clear('bt');
Этот пример использует функции fwrite
и fread
. Чтобы считать и записать основанные на тексте данные, используйте функции fprintf
и fscanf
.
Можно сделать асинхронное чтение и запись данных с помощью интерфейса Bluetooth. Это подобно тем же операциям с помощью Последовательного интерфейса Instrument Control Toolbox. Для получения дополнительной информации смотрите Асинхронную Запись и Операции чтения.
Другая функциональность
Следующие функции могут использоваться с объектом Bluetooth.
Функция | Цель |
---|---|
binblockwrite | Запишите binblock данные в инструмент |
fgetl | Прочитайте строку текста от инструмента и отбросьте терминатор строки |
flushinput | Удалите данные из входного буфера |
fopen | Объект интерфейса Connect оснастить |
fread | Считайте двоичные данные из инструмента |
fwrite | Запишите двоичные данные в инструмент |
methods | Имена метода класса и описания |
readasync | Считайте данные асинхронно из инструмента |
scanstr | Считайте данные из инструмента, отформатируйте как текст, и синтаксический анализ |
binblockread | Считайте binblock данные из инструмента |
fclose | Отключите интерфейсный объект от инструмента |
fgets | Прочитайте строку текста от инструмента и включайте терминатор строки |
flushoutput | Удалите данные из буфера вывода |
fprintf | Запишите текст в инструмент |
fscanf | Считайте данные из инструмента и отформатируйте как текст |
query | Запишите текст в инструмент и считайте данные из инструмента |
record | Данные записи и информация о событии к файлу |
stopasync | Остановите асинхронные операции чтения и операции записи |
Для получения дополнительной информации об этих функциях, см. документацию функций.
Чтобы получить список опций, можно использовать на функции, нажать клавишу Tab после ввода функции на командной строке MATLAB®. Список расширяется, и можно прокрутить, чтобы выбрать свойство или значение. Для получения информации об использовании этой функции завершения вкладки "Дополнительно" смотрите Используя Заполнение клавишей Tab для Функций.