Вы видите список соседних периферийных устройств Bluetooth® Low Energy с помощью blelist. После того, как вы идентифицируете свое устройство в списке, можно установить связь с ним от MATLAB® с помощью ble.
Отсканируйте для Bluetooth Низкие энергетические периферийные устройства из MATLAB с помощью blelist. Эта функция перечисляет все соседние периферийные устройства, которые рекламируют данные. Можно просмотреть данные о рекламе для каждого устройства в MATLAB, чтобы определить, является ли это соединяемым. Если ваше устройство не появляется в списке, убедитесь, что это включается, поблизости, и отключается от любых других устройств или приложений. Затем отсканируйте для него снова.
list = blelist
list=5×5 table
Index Name Address RSSI Advertisement
_____ __________________ ______________ ____ _____________
1 "Gear Fit2 (E16A)" "8498663EE16A" -54 [1×1 struct]
2 "" "2C4D2724754D" -69 [1×1 struct]
3 "" "1B75E09FD18F" -70 [1×1 struct]
4 "" "4F7D6DAF9FCE" -75 [1×1 struct]
5 "" "7B8ADB5851BD" -76 [1×1 struct]
Устройства сортируются по RSSI, который представляет силу сигнала. Если существует несколько перечисленных устройств, используйте Name поле, чтобы идентифицировать ваше устройство.
Данные о рекламе для каждого устройства содержат данные, заданные в Типовом профиле доступа (GAP) SIG Bluetooth. Type поле в данных о рекламе Advertisement показывает состояние связи. Просмотрите данные о рекламе первого устройства.
list.Advertisement(1)
ans = struct with fields:
Type: ["Connectable Undirected" "Scan Response"]
Appearance: "Generic Watch"
ShortenedLocalName: []
CompleteLocalName: "Gear Fit2 (E16A)"
TxPowerLevel: []
SlaveConnectionIntervalRange: []
ManufacturerSpecificData: [0 117 1 0 2 0 1 3 0]
ServiceData: []
CompleteServiceUUIDs: []
IncompleteServiceUUIDs: []
ServiceSolicitationUUIDs: []
Можно использовать аргументы пары "имя-значение", чтобы перечислить только устройства с конкретным именем.
Например, перечислите все периферийные устройства с именами начиная со строки "UA".
list = blelist("Name","UA")
list=2×5 table
Index Name Address RSSI Advertisement
_____ ___________________ ______________ ____ _____________
1 "UA E39 MODULE" "84DD20E39AB6" -84 [1×1 struct]
2 "UA Footpod 239AE2" "0CF3EE239AE2" -87 [1×1 struct]Для устройств, которые являются рекламными услугами, можно использовать аргументы пары "имя-значение", чтобы перечислить только устройства с заданным сервисом. Сервисное имя и сервис UUID оба допустимы.
Например, перечислите все периферийные устройства, которые рекламируют Heart Rate сервис.
list = blelist("Services","Heart Rate")
list=1×5 table
Index Name Address RSSI Advertisement
_____ ___________________ ______________ ____ _____________
1 "UA E39 MODULE" "84DD20E39AB6" -84 [1×1 struct] Можно увеличить количество времени сканирования MATLAB для соседних устройств. Это полезно, если ваше устройство имеет высокий рекламный интервал и не появляется в списке со значением тайм-аута по умолчанию трех секунд.
list = blelist("Timeout",10);После того, как вы обнаруживаете свое устройство, устанавливаете связь между MATLAB и периферийным устройством с помощью ble. Задайте имя устройства или адрес от blelist вывод .
b = ble("Gear Fit2 (E16A)")b =
ble with properties:
Name: "Gear Fit2 (E16A)"
Address: "8498663EE16A"
Connected: 1
Services: [2×2 table]
Characteristics: [3×5 table]
Show services and characteristicsПосле создания связи с вашим устройством можно работать с Characteristics перечисленный в ble свойства. Смотрите работу с Характеристиками устройства и Дескрипторами для получения дополнительной информации, и затем продвигается.