Перейдите свой код к bluetooth Интерфейс

Новый набор функций MATLAB® и свойств оказывает поддержку для связи с устройствами Bluetooth®. Bluetooth функция, ее объектные функции и ее свойства не рекомендуются. Используйте bluetooth (чувствительный к регистру) интерфейс вместо этого.

Узнайте bluetooth-устройства

В этом примере показано, как обнаружить bluetooth-устройства с помощью рекомендуемой функциональности.

ФункциональностьИспользуйте это вместо этого
instrhwinfo('Bluetooth')
bluetoothlist

Для получения дополнительной информации смотрите bluetoothlist.

Свяжите с bluetooth-устройством

Эти примеры показывают, как связать с bluetooth-устройством и отключиться от него с помощью рекомендуемой функциональности.

ФункциональностьИспользуйте это вместо этого
b = Bluetooth('NXT',3)
fopen(b)
b = bluetooth("NXT",3)
fclose(b)
delete(b)
clear b
clear b

Для получения дополнительной информации смотрите bluetooth.

Запишите и чтение

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

ФункциональностьИспользуйте это вместо этого
% b is a Bluetooth object
fwrite(b,1:5)
data = fread(b,5)
data =

     1
     2
     3
     4
     5
% b is a bluetooth object
write(b,1:5)
data = read(b,5)
data =

     1     2     3     4     5
% b is a Bluetooth object
command = "start";
fwrite(b,command,"char")
% b is a bluetooth object
command = "start";
write(b,command,"char")
% b is a bluetooth object
command = "start";
write(b,command,"string")
% b is a Bluetooth object
length = 5;
data = fread(b,length,"char")
resp =

   104
   101
   108
   108
   111
data = char(data)'
resp =

    'hello'
% b is a bluetooth object
length = 5;
data = read(b,length,"string")
data =

    "hello"

Для получения дополнительной информации смотрите write или read.

Считайте отключенную строку

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

ФункциональностьИспользуйте это вместо этого
% b is a Bluetooth object
data = fscanf(b,"%e")
data =

    11.9000

Для спецификатора формата "%e"fscanf возвращает терминатор строки, и пользователь должен удалить его из строки.

% b is a bluetooth object
data = readline(b)
data = 

    "11.9"
data = sscanf(data,"%e")
data =

    11.9000
% b is a Bluetooth object
data = fgetl(b)
data =

    'hello'

fgetl чтения, пока заданный терминатор строки не достигнут и затем отбрасывает терминатор строки.

% b is a bluetooth object
data = readline(b)
data = 

    "hello"

readline чтения, пока заданный терминатор строки не достигнут и затем отбрасывает терминатор строки. Нет никакой опции, чтобы включать терминатор строки.

% b is a Bluetooth object
data = fgets(b)
data =

    'hello
     '

fgets чтения, пока заданный терминатор строки не достигнут и затем возвращает терминатор строки.

Для получения дополнительной информации смотрите readline.

Отправьте команду

В этом примере показано, как записать отключенные данные о строке с помощью рекомендуемой функциональности.

ФункциональностьИспользуйте это вместо этого
% b is a Bluetooth object
b.Terminator = "CR/LF"
channel = 1;
fprintf(b,"id is %d",channel);
% b is a bluetooth object
configureTerminator(b,"CR/LF")
channel = 1;
str = sprintf("id is %d",channel);
writeline(b,str)

writeline автоматически добавляет терминатор строки записи.

Для получения дополнительной информации смотрите configureTerminator или writeline.

Запишите и считанные Обратные данные

В этом примере показано, как записать текст и считать назад данные с помощью рекомендуемой функциональности.

ФункциональностьИспользуйте это вместо этого
% b is a Bluetooth object
data = query(b,'ctrlcmd')
data =

    'success'
% b is a bluetooth object
writeline(b,"ctrlcmd")
data = readline(b)
data = 

    "success"

Для получения дополнительной информации смотрите writeline или readline.

Считайте и проанализируйте данные о строке

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

ФункциональностьИспользуйте это вместо этого
% b is a Bluetooth object
data = scanstr(b,';')
data =

  3×1 cell array

    {'a'}
    {'b'}
    {'c'}
% b is a bluetooth object
data = readline(b)
data = 

    "a;b;c"
data = strsplit(data,";")
data = 

  1×3 string array

    "a"    "b"    "c"

Для получения дополнительной информации смотрите readline.

Сбросьте данные из памяти

В этом примере показано, как сбросить данные из буфера с помощью рекомендуемой функциональности.

ФункциональностьИспользуйте это вместо этого
% b is a Bluetooth object
flushinput(b)
% b is a bluetooth object
flush(b,"input")
% b is a Bluetooth object
flushoutput(b)
% b is a bluetooth object
flush(b,"output")
% b is a Bluetooth object
flushinput(b)
flushoutput(b)
% b is a bluetooth object
flush(b)

Для получения дополнительной информации смотрите flush.

Установите Терминатора

В этом примере показано, как установить терминатор строки с помощью рекомендуемой функциональности.

ФункциональностьИспользуйте это вместо этого
% b is a Bluetooth object
b.Terminator = "CR/LF";
% b is a bluetooth object
configureTerminator(b,"CR/LF")
% b is a Bluetooth object
b.Terminator = {"CR/LF" [10]};
% b is a bluetooth object
configureTerminator(b,"CR/LF",10)

Для получения дополнительной информации смотрите configureTerminator.

Настройте функцию обратного вызова

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

ФункциональностьИспользуйте это вместо этого
% b is a Bluetooth object
b.BytesAvailableFcnCount = 5
b.BytesAvailableFcnMode = "byte"
b.BytesAvailableFcn = @mycallback

function mycallback(src,evt)
   data = fread(src,src.BytesAvailableFcnCount);
   disp(evt)
   disp(evt.Data)
end
    Type: 'BytesAvailable'
    Data: [1×1 struct]

    AbsTime: [2019 12 21 16 35 9.7032]
% b is a bluetooth object
configureCallback(b,"byte",5,@mycallback);

function mycallback(src,evt)
   data = read(src,src.BytesAvailableFcnCount);
   disp(evt)
end
  ByteAvailableInfo with properties:

    BytesAvailableFcnCount: 5
                   AbsTime: 21-Dec-2019 12:23:01
% b is a Bluetooth object
b.Terminator = "LF/CR"
b.BytesAvailableFcnMode = "terminator"
b.BytesAvailableFcn = @mycallback

function mycallback(src,evt)
   data = fscanf(src,'%s');
   disp(evt)
   disp(evt.Data)
end
    Type: 'BytesAvailable'
    Data: [1×1 struct]

    AbsTime: [2019 12 21 16 35 9.7032]
% b is a bluetooth object
configureTerminator(b,"LF/CR")
configureCallback(b,"terminator",@mycallback);

function mycallback(src,evt)
   data = readline(src);
   disp(evt)
end
  TerminatorAvailableInfo with properties:

                   AbsTime: 21-Dec-2019 12:23:01

Для получения дополнительной информации смотрите configureCallback.

Смотрите также

|

Похожие темы