Передача данных по интерфейсу Bluetooth

Можно считать и записать оба текстовых данные (базирующийся ASCII) и двоичные данные. Для текстовых данных используйте fscanf и fprintf функции. Для двоичных данных используйте fread и fwrite функции.

Этот пример использует робота LEGO Mindstorm NXT с RemoteName из C3PO то, что вы обнаружили в Viewing Bluetooth Device Properties. Дополнительную информацию см. в том разделе по свойствам просмотра и обнаружению устройств.

Связываться с устройством NXT:

  1. Определите, какие устройства Bluetooth® доступны от вашего компьютера.

    instrhwinfo('Bluetooth')
  2. Просмотрите список устройств с помощью RemoteNames свойство.

    ans.RemoteNames
  3. В этом случае, C3PO удаленное имя робота NXT и показано в выходе. Отобразите информацию об этом устройстве с помощью Bluetooth взаимодействуйте через интерфейс и RemoteName свойство.

    instrhwinfo('Bluetooth','C3PO')

    Instrument Control Toolbox™ отображает информацию об устройстве.

  4. Создайте объект Bluetooth под названием bt использование канала 1 из устройства NXT.

    bt = Bluetooth('C3PO', 1);
  5. Соединение с устройством.

    fopen(bt)
  6. Отправьте сообщение в удаленное устройство с помощью fwrite функция.

    В этом примере определенные символы отправляются в устройство что это конкретное устройство (робот NXT C3PO) понимает. Можно записать в устройство, затем запросить объект, как показано здесь, чтобы видеть, что значения были отправлены.

  7. Считайте данные из удаленного устройства с помощью fread функция.

    Вы видите тот ValuesSent 4, которые являются этими четырьмя символами, отправленными в fwrite(2,0,1,155 ). Это также показывает тот 35 байты доступны. Таким образом, можно затем использовать fread функционируйте и дайте ему 35 байтов, чтобы считать символы из удаленного устройства.

    Устройство возвращает символы, показанные сюда. Возвращенными символами является C3PO, который является RemoteName из устройства. Это было ответом на указания, которые были отправлены к нему. См. документацию для своего устройства для этого типа специфичной для устройства информации о коммуникации.

  8. Вымойтесь путем удаления и очистки объекта.

    fclose(bt);
    clear('bt');

Примечание

Этот пример использует fread и fwrite функции. Чтобы считать и записать основанные на тексте данные, используйте fscanf и fprintf функции.

Примечание

Можно сделать асинхронное чтение и запись данных с помощью интерфейса 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 для Функций.