exponenta event banner

написать

Запись данных в характеристику или дескриптор на периферийном устройстве Bluetooth с низким энергопотреблением

Описание

Запись значений признаков

пример

write(c,data) записывает указанное data характеристику периферийного устройства Bluetooth ® с низким энергопотреблением. Attributes свойство объекта входной характеристики c должно быть "Write" и/или "WriteWithoutResponse".

пример

write(c,data,type) указывает, ожидает ли устройство отклик с помощью type.

пример

write(c,data,precision) задает точность записи данных.

пример

write(c,data,precision,type) определяет как тип ответа, так и точность данных.

Записать значения дескриптора

пример

write(d,data) записывает указанное data к дескриптору периферийного устройства Bluetooth с низким энергопотреблением. Описатель d должен иметь "Write" в своем Attributes собственность.

пример

write(d,data,precision) задает точность записи данных.

Примеры

свернуть все

Запись данных в характеристику на устройстве Bluetooth с низкоэнергетическим периферийным устройством.

Создайте подключение к ближайшему периферийному устройству Bluetooth с низким энергопотреблением.

b = ble("DemoDevice")
b = 
  ble with properties:

               Name: "DemoDevice"
            Address: "5A0B858BC07C"
          Connected: 1
           Services: [5×2 table]
    Characteristics: [12×5 table]

Show services and characteristics

Создание объекта признака, представляющего "Gender" характеристика.

c = characteristic(b,"User Data","Gender")
c = 
  Characteristic with properties:

             Name: "Gender"
             UUID: "2A8C"
       Attributes: "Read" "Write"
      Descriptors: []

Поскольку этот признак доступен для чтения и записи, в него можно записать данные и проверить изменение значений. Использовать read для получения последних данных.

data = read(c)
data = 0

Интерпретируйте данные, ссылаясь на спецификацию для этой характеристики на веб-сайте Bluetooth SIG. 0 представляет мужчин и 1 представляет женщину. Написать 1 к характеристике для обозначения самки.

write(c,1)

Для просмотра изменений в данных можно повторно выполнить считывание из признака.

data = read(c)
data = 1

Запись данных в дескриптор на периферийном устройстве Bluetooth с низким энергопотреблением.

Создайте подключение к ближайшему периферийному устройству Bluetooth с низким энергопотреблением.

b = ble("DemoDev")
b = 
  ble with properties:

               Name: "DemoDev"
            Address: "FF548EA5658F"
          Connected: 1
           Services: [5×2 table]
    Characteristics: [10×5 table]

Show services and characteristics

Создание объекта признака, представляющего "Heart Rate Measurement" характеристика.

c = characteristic(b,"Heart Rate","Heart Rate Measurement")
c = 
  Characteristic with properties:

             Name: "Heart Rate Measurement"
             UUID: "2A37"
       Attributes: "Notify"
      Descriptors: [1x3 table]
 DataAvailableFcn: []

Show descriptors

Создание объекта-дескриптора, представляющего "Client Characteristic Configuration" дескриптор.

d = descriptor(c,"Client Characteristic Configuration")
d = 
  Descriptor with properties:

          Name: "Client Characteristic Configuration"
          UUID: "2902"
    Attributes: ["Read"    "Write"]

Этот дескриптор содержит сведения о том, включено или отключено уведомление или индикация. Вы можете использовать read для получения текущих данных.

data = read(d)
data = 1×2

     0     0

Интерпретируйте эти данные, ссылаясь на спецификацию для этого дескриптора на веб-сайте Bluetooth SIG.

Это значение изменяется при изменении состояния уведомления или индикации. Например, запишите это значение, чтобы включить уведомление для "Heart Rate Measurement" характеристика. Затем проверьте изменение значений, прочитав дескриптор еще раз.

write(d,[1 0])
data = read(d)
data = 1×2

     1     0

Входные аргументы

свернуть все

Характеристика Bluetooth Low Energy периферийного устройства, указанного как characteristic объект.

Данные для записи в характеристику или дескриптор, указанные как скаляр или массив чисел. Для определения типа записываемых данных обратитесь к спецификациям признаков или дескрипторов.

Пример: write(c,[1 0]) записывает массив чисел в признак c.

Типы данных: double | uint8 | uint16 | uint32 | uint64

Тип опции ответа для признака, указанный как "withresponse" или "withoutresponse". При указании "withresponse"периферийное устройство ожидает ответа от устройства, указывающего, что запись выполнена успешно. При указании "withoutresponse"периферийное устройство не ожидает ответа. Значение по умолчанию зависит от Attributes свойство характеристики.

c.AttributesДефолт type
"Write""withresponse"
"WriteWithoutResponse""withoutresponse"
"Write" и "WriteWithoutResponse""withresponse"

Пример: write(c,5,"withoutresponse") записывает данные в признак без получения ответа.

Точность данных, указанная как "uint8", "uint16", "uint32", или "uint64".

Пример: write(d,300,"uint16") записывает данные в характеристику как беззнаковое 16-битное целое число.

Дескриптор периферийного устройства Bluetooth с низким энергопотреблением, указанный как descriptor объект.

Представлен в R2019b