Ανάπτυξη BLE: Τι είναι η GATT και πώς λειτουργεί;

Πίνακας περιεχομένων

Η έννοια της GATT

Για να πραγματοποιήσουμε ανάπτυξη που σχετίζεται με το BLE, πρέπει να έχουμε ορισμένες βασικές γνώσεις, φυσικά, πρέπει να είναι πολύ απλή.

GATT Ρόλος συσκευής:

Το πρώτο πράγμα που πρέπει να καταλάβετε είναι ότι η διάκριση μεταξύ αυτών των δύο ρόλων είναι σε επίπεδο υλικού και είναι σχετικές έννοιες που εμφανίζονται σε ζεύγη:

"Κεντρική συσκευή": σχετικά ισχυρή, που χρησιμοποιείται για τη σάρωση και τη σύνδεση περιφερειακών συσκευών, όπως κινητά τηλέφωνα, tablet κ.λπ.

"Περιφερειακή συσκευή": η λειτουργία είναι σχετικά απλή, η κατανάλωση ρεύματος είναι μικρή και η κεντρική συσκευή είναι συνδεδεμένη για παροχή δεδομένων, όπως βραχιολάκια, έξυπνα θερμόμετρα κ.λπ.

Στην πραγματικότητα, στο πιο θεμελιώδες επίπεδο, θα πρέπει να είναι μια διάκριση μεταξύ διαφορετικών ρόλων στη διαδικασία δημιουργίας μιας σύνδεσης. Γνωρίζουμε ότι εάν μια συσκευή Bluetooth θέλει να ενημερώσει τους άλλους για την ύπαρξή της, πρέπει να εκπέμπει συνεχώς στον έξω κόσμο, ενώ το άλλο μέρος πρέπει να σαρώσει και να απαντήσει στο πακέτο εκπομπής, ώστε να μπορέσει να πραγματοποιηθεί η σύνδεση. Σε αυτή τη διαδικασία, το άτομο που είναι υπεύθυνο για τη μετάδοση είναι το περιφερειακό και το Central είναι υπεύθυνο για τη σάρωση.

Σημείωση σχετικά με τη διαδικασία σύνδεσης μεταξύ των δύο:

Η κεντρική συσκευή μπορεί να συνδεθεί σε πολλές περιφερειακές συσκευές ταυτόχρονα. Μόλις συνδεθεί η περιφερειακή συσκευή, θα σταματήσει να εκπέμπει αμέσως και θα συνεχίσει να εκπέμπει μετά την αποσύνδεση. Μόνο μία συσκευή μπορεί να επιχειρήσει να συνδεθεί ανά πάσα στιγμή, δημιουργώντας συνδέσεις σε ουρά.

GATT πρωτόκολλο

Η τεχνολογία BLE επικοινωνεί βάσει της GATT. Το GATT είναι ένα πρωτόκολλο μετάδοσης χαρακτηριστικών. Μπορεί να θεωρηθεί ως πρωτόκολλο επιπέδου εφαρμογής για μετάδοση χαρακτηριστικών.

Η δομή του είναι πολύ απλή:   

Μπορείτε να το καταλάβετε ως xml:

Κάθε GATT αποτελείται από Υπηρεσίες που εκτελούν διαφορετικές λειτουργίες.

Κάθε Υπηρεσία αποτελείται από διαφορετικά Χαρακτηριστικά.

Κάθε Χαρακτηριστικό αποτελείται από μια τιμή και έναν ή περισσότερους Περιγραφείς.

Η υπηρεσία και το Χαρακτηριστικό είναι ισοδύναμα με ετικέτες (Η υπηρεσία είναι ισοδύναμη με την κατηγορία της και η Χαρακτηριστική είναι ισοδύναμη με το όνομά της), ενώ η τιμή περιέχει στην πραγματικότητα δεδομένα και ο Περιγραφέας είναι μια εξήγηση και περιγραφή αυτής της τιμής. Φυσικά, μπορούμε να το περιγράψουμε και να το περιγράψουμε από διαφορετικές οπτικές γωνίες. Περιγραφή, ώστε να μπορεί να υπάρχουν πολλοί περιγραφείς.

Για παράδειγμα: Το κοινό Xiaomi Mi Band είναι μια συσκευή BLE, (υποτίθεται ότι) περιέχει τρεις Υπηρεσίες, οι οποίες είναι η Υπηρεσία που παρέχει πληροφορίες συσκευής, η Υπηρεσία που παρέχει βήματα και η Υπηρεσία που ανιχνεύει τον καρδιακό ρυθμό.

Το χαρακτηριστικό που περιέχεται στην υπηρεσία των πληροφοριών της συσκευής περιλαμβάνει πληροφορίες κατασκευαστή, πληροφορίες υλικού, πληροφορίες έκδοσης κ.λπ. η Υπηρεσία καρδιακών παλμών περιλαμβάνει το χαρακτηριστικό καρδιακού παλμού, κ.λπ., και η τιμή στο χαρακτηριστικό καρδιακού ρυθμού περιέχει στην πραγματικότητα τα δεδομένα καρδιακού ρυθμού και ο περιγραφέας είναι η τιμή. Περιγραφή, όπως η μονάδα αξίας, η περιγραφή, η άδεια κ.λπ.

GATT C/S

Με μια προκαταρκτική κατανόηση της GATT, γνωρίζουμε ότι η GATT είναι μια τυπική λειτουργία C/S. Δεδομένου ότι είναι C/S, είναι απαραίτητο να κάνουμε διάκριση μεταξύ διακομιστή και πελάτη.

"Διακομιστής GATT" έναντι "πελάτης GATT". Το στάδιο όπου υπάρχουν αυτοί οι δύο ρόλοι είναι μετά τη δημιουργία της σύνδεσης και διακρίνονται ανάλογα με την κατάσταση του διαλόγου. Είναι εύκολο να γίνει κατανοητό ότι το μέρος που διατηρεί τα δεδομένα ονομάζεται διακομιστής GATT και το μέρος που έχει πρόσβαση στα δεδομένα ονομάζεται πελάτης GATT.

Πρόκειται για μια έννοια σε διαφορετικό επίπεδο από τον ρόλο της συσκευής που αναφέραμε προηγουμένως και είναι απαραίτητο να τη διακρίνουμε. Ας χρησιμοποιήσουμε ένα απλό παράδειγμα για να το δείξουμε:

Πάρτε το παράδειγμα ενός κινητού τηλεφώνου και ενός ρολογιού για να το καταλάβετε. Πριν αποκατασταθεί η σύνδεση μεταξύ του κινητού τηλεφώνου και του κινητού τηλεφώνου, χρησιμοποιούμε τη λειτουργία αναζήτησης Bluetooth του κινητού τηλεφώνου για να αναζητήσουμε τη συσκευή Bluetooth του ρολογιού. Κατά τη διάρκεια αυτής της διαδικασίας, είναι προφανές ότι το ρολόι εκπέμπει BLE έτσι ώστε άλλες συσκευές να γνωρίζουν την ύπαρξή του. , είναι ο ρόλος του περιφερειακού σε αυτή τη διαδικασία και το κινητό τηλέφωνο είναι υπεύθυνο για την εργασία σάρωσης και φυσικά παίζει το ρόλο του Κέντρου. αφού τα δύο δημιουργήσουν μια σύνδεση GATT, όταν το κινητό τηλέφωνο χρειάζεται να διαβάσει δεδομένα αισθητήρα, όπως τον αριθμό των βημάτων από το ρολόι, τα δύο Τα διαδραστικά δεδομένα αποθηκεύονται στο ρολόι, έτσι αυτή τη στιγμή το ρολόι είναι ο ρόλος της GATT διακομιστή και το κινητό τηλέφωνο είναι φυσικά ο πελάτης GATT. και όταν το ρολόι θέλει να διαβάσει κλήσεις SMS και άλλες πληροφορίες από το κινητό τηλέφωνο, ο φύλακας των δεδομένων γίνεται Κινητό τηλέφωνο, οπότε το κινητό τηλέφωνο είναι ο διακομιστής αυτήν τη στιγμή και το ρολόι είναι ο πελάτης.

Εξυπηρέτηση/Χαρακτηριστικό

Είχαμε ήδη μια αντιληπτική κατανόησή τους παραπάνω και, στη συνέχεια, έχουμε μερικές πρακτικές πληροφορίες:

  1. Χαρακτηριστικό είναι η μικρότερη λογική μονάδα δεδομένων.
  2. Η ανάλυση των δεδομένων που αποθηκεύονται σε τιμή και περιγραφέα καθορίζεται από τον μηχανικό διακομιστή, δεν υπάρχει καμία προδιαγραφή.
  3. Η υπηρεσία/χαρακτηριστικό έχει μια μοναδική αναγνώριση UUID, το UUID έχει και 16-bit και 128-bit, αυτό που πρέπει να καταλάβουμε είναι ότι το UUID 16-bit είναι πιστοποιημένο από τον οργανισμό Bluetooth και πρέπει να αγοραστεί, φυσικά υπάρχουν μερικά κοινά UUID 16-bit. Για παράδειγμα, το UUID της υπηρεσίας καρδιακού ρυθμού είναι 0X180D, το οποίο εκφράζεται ως 0X00001800-0000-1000-8000-00805f9b34fb στον κώδικα και τα άλλα bit είναι σταθερά. Το UUID 128-bit μπορεί να προσαρμοστεί.
  4. Οι συνδέσεις GATT είναι αποκλειστικές.

Μεταβείτε στην κορυφή