BLE дамуы: GATT дегеніміз не және ол қалай жұмыс істейді?

Мазмұны

ГАТТ тұжырымдамасы

BLE-мен байланысты дамуды жүзеге асыру үшін бізде белгілі бір негізгі білім болуы керек, әрине, бұл өте қарапайым болуы керек.

ГАТТ Құрылғы рөлі:

Түсінетін бірінші нәрсе - бұл екі рөл арасындағы айырмашылық аппараттық деңгейде және олар жұпта пайда болатын салыстырмалы ұғымдар:

«Орталық құрылғы»: салыстырмалы түрде қуатты, перифериялық құрылғыларды сканерлеу және қосу үшін пайдаланылады, мысалы, ұялы телефондар, планшеттер және т.б.

«Шеткі құрылғы»: функция салыстырмалы түрде қарапайым, қуат тұтынуы аз және орталық құрылғы білезік, смарт термометрлер және т.б. сияқты деректерді қамтамасыз ету үшін қосылған.

Шындығында, ең іргелі деңгейде бұл байланыс орнату процесіндегі әртүрлі рөлдердің арасындағы айырмашылық болуы керек. Біз білеміз, егер Bluetooth құрылғысы басқаларға өзінің бар екенін білдіргісі келсе, ол сыртқы әлемге үздіксіз хабар таратуы керек, ал екінші тарап байланыс орнату үшін сканерлеу және тарату пакетіне жауап беруі керек. Бұл процесте хабар таратуға жауапты тұлға перифериялық , ал Орталық сканерлеуге жауапты.

Екі арасындағы байланыс процесі туралы ескертпе:

Орталық құрылғы бір уақытта бірнеше перифериялық құрылғыларға қосыла алады. Перифериялық құрылғы қосылғаннан кейін ол хабар таратуды дереу тоқтатады және ажыратылғаннан кейін хабар таратуды жалғастырады. Кез келген уақытта қосылуға бір құрылғы ғана әрекет ете алады, қосылымдарды кезекке қояды.

ГАТТ Хаттама

BLE технологиясы GATT негізінде байланысады. GATT – атрибуттарды жіберу хаттамасы. Оны атрибуттарды жіберуге арналған қолданбалы деңгей протоколы ретінде қарастыруға болады.

Оның құрылымы өте қарапайым:   

Сіз оны xml ретінде түсінуге болады:

Әрбір ГАТТ әртүрлі функцияларды орындайтын Қызметтерден тұрады;

Әрбір Қызмет әртүрлі сипаттамадан тұрады;

Әрбір сипаттама мәннен және бір немесе бірнеше Дескриптордан тұрады;

Қызмет және Сипаттама тегтерге баламалы (Қызмет оның санатына баламалы, ал Сипаттама оның атауына баламалы), ал мән шын мәнінде деректерді қамтиды, ал Дескриптор бұл мәннің түсіндірмесі мен сипаттамасы болып табылады. Әрине, біз оны әртүрлі қырынан сипаттап, сипаттай аламыз. Сипаттама, сондықтан бірнеше Дескриптор болуы мүмкін.

Мысалы:Кәдімгі Xiaomi Mi Band - BLE құрылғысы, оның құрамында үш Қызмет бар, олар құрылғы ақпаратын беретін Қызмет, қадамдарды қамтамасыз ететін Қызмет және жүрек соғу жиілігін анықтайтын Қызмет;

Құрылғы ақпаратының қызметінде қамтылған сипаттамаға өндіруші ақпараты, аппараттық ақпарат, нұсқа ақпараты және т.б. кіреді; жүрек соғу жиілігі Қызмет жүрек соғу жиілігі сипаттамасын және т.б. қамтиды, ал жүрек соғу жиілігі сипаттамасындағы мән шын мәнінде жүрек соғу жиілігі деректерін қамтиды, ал дескриптор мән болып табылады. Сипаттама, мысалы, мән бірлігі, сипаттама, рұқсат және т.б.

GATT C/S

ГАТТ-ны алдын ала түсіну арқылы біз GATT типтік C/S режимі екенін білеміз. Бұл C/S болғандықтан, сервер мен клиентті ажырата білуіміз керек.

«GATT сервері» және «GATT клиенті». Бұл екі рөлдің өмір сүретін кезеңі байланыс орнатылғаннан кейін болады және олар диалог мәртебесіне қарай ажыратылады. Деректерді ұстайтын тарапты ГАТТ сервері, ал деректерге қол жеткізетін тарапты ГАТТ клиенті деп атайтынын түсіну оңай.

Бұл біз бұрын айтқан құрылғы рөлінен басқа деңгейдегі ұғым және оны ажырата білу керек. Түсіндіру үшін қарапайым мысалды қолданайық:

Мысал ретінде ұялы телефон мен сағатты алайық. Ұялы телефон мен ұялы телефон арасындағы байланыс орнатылмай тұрып, сағаттың Bluetooth құрылғысын іздеу үшін ұялы телефонның Bluetooth іздеу функциясын қолданамыз. Бұл процесс барысында басқа құрылғылар оның бар екенін білуі үшін сағат BLE тарататыны анық. , бұл осы процесте перифериялық құрылғының рөлі, ал ұялы телефон сканерлеу тапсырмасына жауап береді және табиғи түрде Орталықтың рөлін атқарады; екеуі GATT байланысын орнатқаннан кейін, ұялы телефон сағаттан қадамдар саны сияқты сенсорлық деректерді оқуы қажет болғанда, екеуі интерактивті деректер сағатта сақталады, сондықтан бұл уақытта сағат GATT рөлі болып табылады. сервер, ал ұялы телефон табиғи түрде GATT клиенті болып табылады; және сағат ұялы телефоннан SMS қоңырауларын және басқа ақпаратты оқығысы келгенде, деректердің қамқоршысы Ұялы телефонға айналады, сондықтан ұялы телефон бұл уақытта сервер, ал сағат клиент болып табылады.

Қызмет/сипаттама

Бізде жоғарыда олар туралы перцептивті түсінік бар, содан кейін бізде практикалық ақпарат бар:

  1. Сипаттама деректердің ең кіші логикалық бірлігі болып табылады.
  2. Мән мен дескрипторда сақталған деректерді талдауды Сервер инженері анықтайды, спецификация жоқ.
  3. Қызметте/сипаттамада бірегей UUID идентификациясы бар, UUID-де 16-биттік те, 128-биттік те бар, біз түсінуіміз керек, 16-биттік UUID Bluetooth ұйымымен сертификатталған және оны сатып алу қажет, әрине, кейбір жалпылар бар. 16-биттік UUID. Мысалы, Жүрек соғу жиілігі қызметінің UUID коды 0X180D, ол кодта 0X00001800-0000-1000-8000-00805f9b34fb ретінде көрсетіледі, ал басқа биттер бекітілген. 128-биттік UUID теңшеуге болады.
  4. GATT қосылымдары ерекше.

Топ Scroll