BLE-ûntwikkeling: Wat is GATT en hoe wurket it?

Table of Contents

It konsept fan GATT

Om BLE-relatearre ûntwikkeling út te fieren, moatte wy bepaalde basiskennis hawwe, fansels, it moat heul ienfâldich wêze.

GATT Rol apparaat:

It earste ding om te begripen is dat it ûnderskied tusken dizze twa rollen op it hardwarenivo is, en it binne relative begripen dy't yn pearen ferskine:

"Sintraal apparaat": relatyf krêftich, brûkt om perifeare apparaten te scannen en te ferbinen, lykas mobile tillefoans, tablets, ensfh.

"Perifeare apparaat": de funksje is relatyf ienfâldich, it enerzjyferbrûk is lyts, en it sintrale apparaat is ferbûn om gegevens te leverjen, lykas wristbands, tûke thermometers, ensfh.

Yn feite moat it op it meast fûnemintele nivo in ûnderskied wêze tusken ferskate rollen yn it proses fan it oprjochtsjen fan in ferbining. Wy witte dat as in Bluetooth-apparaat oaren witte litte wol fan it bestean, it kontinu útstjoere moat nei de bûtenwrâld, wylst de oare partij it útstjoerpakket scan en antwurdzje moat, sadat de ferbining makke wurde kin. Yn dit proses is de persoan dy't ferantwurdlik is foar de útstjoering Perifeare , en Sintraal is ferantwurdlik foar it scannen.

Opmerking oer it ferbiningsproses tusken de twa:

It sintrale apparaat kin tagelyk ferbine mei meardere perifeare apparaten. Sadree't it perifeare apparaat ferbûn is, sil it fuortendaliks stopje mei útstjoeren, en trochgean mei útstjoeren nei disconnection. Allinnich ien apparaat kin besykje op elk momint te ferbinen, ferbiningen yn 'e wachtrige.

GATT Protokol

BLE technology kommunisearret basearre op GATT. GATT is in attribút oerdracht protokol. It kin wurde beskôge as in applikaasjelaachprotokol foar attribúttransmission.

Syn struktuer is hiel simpel:   

Jo kinne it begripe as xml:

Elts GATT is gearstald út Tsjinsten dy't útfiere ferskillende funksjes;

Eltse Service is gearstald út ferskillende Characteristic;

Elts Characteristic bestiet út in wearde en ien of mear Descriptors;

Service en karakteristyk binne lykweardich oan tags (Tsjinst is lykweardich oan syn kategory, en karakteristyk is lykweardich oan syn namme), wylst wearde eins befettet gegevens, en Descriptor is in útlis en beskriuwing fan dizze wearde. Fansels kinne wy ​​it út ferskate hoeken beskriuwe en beskriuwe. Beskriuwing, sadat d'r meardere beskriuwers kinne wêze.

Bygelyks: De mienskiplike Xiaomi Mi Band is in BLE-apparaat, (oannommen) befettet trije Tsjinsten, dat binne de Tsjinst dy't apparaatynformaasje leveret, de Tsjinst dy't stappen leveret, en de Tsjinst dy't hertslach detektearret;

De karakteristyk befette yn 'e tsjinst fan' e apparaatynformaasje omfettet fabrikantynformaasje, hardwareynformaasje, ferzjeynformaasje, ensfh .; de hertslach Service befettet de hertslach karakteristyk, ensfh., En de wearde yn 'e hertslach karakteristyk befettet eins de hertslachgegevens, en de beskriuwer is de wearde. Beskriuwing, lykas de ienheid fan wearde, beskriuwing, tastimming, ensfh.

GATT C/S

Mei in foarriedige begryp fan GATT, wy witte dat GATT is in typysk C / S modus. Sûnt it is C / S, is it nedich foar ús in ûnderskied tusken Server en client.

"GATT-tsjinner" tsjin "GATT-kliïnt". It poadium dêr't dizze twa rollen bestean is neidat de ferbining is oprjochte, en se wurde ûnderskieden neffens de status fan 'e dialooch. It is maklik te begripen dat de partij dy't de gegevens hâldt, de GATT-tsjinner hjit, en de partij dy't tagong hat ta de gegevens hjit de GATT-kliïnt.

Dit is in konsept op in oar nivo fan it apparaat rol wy neamd earder, en it is nedich om te ûnderskieden it. Litte wy in ienfâldich foarbyld brûke om te yllustrearjen:

Nim it foarbyld fan in mobile tillefoan en in horloazje om te yllustrearjen. Foardat de ferbining tusken de mobile tillefoan en de mobile tillefoan is fêststeld, brûke wy de Bluetooth-sykfunksje fan 'e mobile tillefoan om te sykjen nei it Bluetooth-apparaat fan it horloazje. Tidens dit proses is it dúdlik dat it horloazje BLE útstjoert, sadat oare apparaten it bestean witte. , it is de rol fan perifeare yn dit proses, en de mobile telefoan is ferantwurdlik foar de skennen taak, en fansels spilet de rol fan Center; neidat de twa in GATT-ferbining meitsje, as de mobile tillefoan sensorgegevens moat lêze, lykas it oantal stappen fan it horloazje, de twa De ynteraktive gegevens wurde opslein yn it horloazje, dus op dit stuit is it horloazje de rol fan 'e GATT tsjinner, en de mobile telefoan is fansels de GATT client; en as it horloazje wol SMS-oproppen en oare ynformaasje fan 'e mobile tillefoan lêze, wurdt de hoeder fan' e gegevens Mobile telefoan, sadat de mobile tillefoan op dit stuit de tsjinner is, en it horloazje is de kliïnt.

Service / Characteristic

Wy hawwe hjirboppe al in perceptueel begryp fan har, en dan hawwe wy wat praktyske ynformaasje:

  1. Karakteristyk is de lytste logyske ienheid fan gegevens.
  2. De analyze fan gegevens opslein yn wearde en descriptor wurdt bepaald troch de Server-yngenieur, d'r is gjin spesifikaasje.
  3. Tsjinst / karakteristyk hat in unike UUID-identifikaasje, UUID hat sawol 16-bit as 128-bit, wat wy moatte begripe is dat de 16-bit UUID is sertifisearre troch de Bluetooth-organisaasje en moat wurde kocht, fansels binne d'r guon gewoane ones 16-bit UUID. Bygelyks, de UUID fan de Heart Rate tsjinst is 0X180D, dat wurdt útdrukt as 0X00001800-0000-1000-8000-00805f9b34fb yn de koade, en oare bits wurde fêst. De 128-bit UUID kin oanpast wurde.
  4. GATT ferbinings binne eksklusyf.

Scroll nei boppen