Развој на BLE: Што е ГАТТ и како функционира?

Содржина

Концептот на ГАТТ

За да извршиме развој поврзан со BLE, мора да имаме одредени основни знаења, се разбира, тоа мора да биде многу едноставно.

ГАТТ Улога на уредот:

Првото нешто што треба да се разбере е дека разликата помеѓу овие две улоги е на хардверско ниво и тие се релативни концепти кои се појавуваат во парови:

„Централен уред“: релативно моќен, кој се користи за скенирање и поврзување на периферни уреди, како што се мобилни телефони, таблети итн.

„Периферен уред“: функцијата е релативно едноставна, потрошувачката на енергија е мала, а централниот уред е поврзан за да обезбеди податоци, како што се нараквици, паметни термометри итн.

Всушност, на најфундаментално ниво, тоа треба да биде разлика помеѓу различни улоги во процесот на воспоставување врска. Знаеме дека ако некој Bluetooth уред сака да ги извести другите за своето постоење, тој треба постојано да се емитува во надворешниот свет, додека другата страна треба да го скенира и да одговори на емитуваниот пакет, за да може да се воспостави врската. Во овој процес, одговорното лице за емитување е периферно, а Централно е одговорно за скенирање.

Забелешка за процесот на поврзување помеѓу двете:

Централниот уред може да се поврзе со повеќе периферни уреди истовремено. Штом периферниот уред ќе се поврзе, тој веднаш ќе престане да се емитува и ќе продолжи да се емитува по исклучувањето.Само еден уред може да се обиде да се поврзе во секое време, поставувајќи врски во редица.

ГАТТ протокол

BLE технологијата комуницира врз основа на ГАТТ. ГАТТ е протокол за пренос на атрибути. Може да се смета како протокол за апликациски слој за пренос на атрибути.

Неговата структура е многу едноставна:   

Можете да го разберете како xml:

Секој ГАТТ е составен од Услуги кои вршат различни функции;

Секоја услуга е составена од различни Карактеристики;

Секоја карактеристика се состои од вредност и еден или повеќе дескриптори;

Услугата и Карактеристиката се еквивалентни на ознаките (Услугата е еквивалентна на нејзината категорија, а Карактеристиката е еквивалентна на нејзиното име), додека вредноста всушност содржи податоци, а дескрипторот е објаснување и опис на оваа вредност. Се разбира, можеме да го опишеме и опишеме од различни агли. Опис, така што може да има повеќе дескриптори.

На пример: Заедничкиот Xiaomi Mi Band е уред BLE, (претпоставено) содржи три Услуги, кои се Услугата што обезбедува информации за уредот, Услугата што обезбедува чекори и Услугата што открива срцев ритам;

Карактеристиката содржана во услугата на информациите за уредот вклучува информации за производителот, информации за хардверот, информации за верзијата итн.; Услугата за отчукувањата на срцето ја вклучува карактеристиката на срцевиот ритам итн., а вредноста во карактеристиката на срцевиот ритам всушност ги содржи податоците за отчукувањата на срцето, а дескрипторот е вредноста. Опис, како единица вредност, опис, дозвола итн.

ГАТТ C/S

Со прелиминарното разбирање на ГАТТ, знаеме дека ГАТТ е типичен C/S режим. Бидејќи е C/S, неопходно е да направиме разлика помеѓу Сервер и клиент.

„ГАТТ сервер“ наспроти „ГАТТ клиент“. Фазата во која постојат овие две улоги е откако ќе се воспостави врската и тие се разликуваат според статусот на дијалогот. Лесно е да се разбере дека страната што ги чува податоците се нарекува ГАТТ сервер, а партијата што пристапува до податоците се нарекува клиент на ГАТТ.

Ова е концепт на различно ниво од улогата на уредот што ја споменавме претходно, и неопходно е да се разликува. Ајде да користиме едноставен пример за илустрација:

Земете го примерот на мобилен телефон и часовник за илустрација. Пред да се воспостави врската помеѓу мобилниот телефон и мобилниот телефон, ја користиме функцијата за пребарување Bluetooth на мобилниот телефон за пребарување на Bluetooth уредот на часовникот. За време на овој процес, очигледно е дека часовникот емитува BLE, така што другите уреди го знаат неговото постоење. , тоа е улогата на периферен уред во овој процес, а мобилниот телефон е одговорен за задачата за скенирање и природно ја игра улогата на Центар; откако двајцата ќе воспостават GATT конекција, кога мобилниот телефон треба да ги чита податоците од сензорот како што е бројот на чекори од часовникот, двата Интерактивните податоци се зачувуваат во часовникот, така што во овој момент часовникот е улогата на GATT сервер, а мобилниот телефон е природно клиентот ГАТТ; и кога часовникот сака да чита СМС повици и други информации од мобилниот телефон, чуварот на податоците станува Мобилен телефон, така што мобилниот телефон е серверот во овој момент, а часовникот е клиентот.

Услуга/Карактеристика

Погоре веќе имавме перцептивно разбирање за нив, а потоа имаме неколку практични информации:

  1. Карактеристика е најмалата логичка единица на податоци.
  2. Анализата на податоците зачувани во вредност и дескриптор ја одредува инженерот на серверот, нема спецификација.
  3. Услугата/Карактеристиката има уникатна UUID идентификација, UUID има и 16-битна и 128-битна, она што треба да го разбереме е дека 16-битниот UUID е сертифициран од организацијата Bluetooth и треба да се купи, секако има некои заеднички оние 16-битни UUID. На пример, UUID на услугата Heart Rate е 0X180D, што се изразува како 0X00001800-0000-1000-8000-00805f9b34fb во кодот, а другите битови се поправени. 128-битниот UUID може да се приспособи.
  4. ГАТТ врските се ексклузивни.

Дојдете до врв