Вы видите список соседних периферийных устройств 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
свойства. Смотрите работу с Характеристиками устройства и Дескрипторами для получения дополнительной информации, и затем продвигается.