Konsep GATT

Untuk menjalankan pembangunan yang berkaitan dengan BLE, Kita mesti mempunyai pengetahuan asas tertentu, Sudah tentu, Ia mesti sangat mudah.

Gatt Peranan peranti:

Perkara pertama yang perlu difahami ialah perbezaan antara kedua -dua peranan ini adalah di peringkat perkakasan, Dan mereka adalah konsep relatif yang muncul secara berpasangan:

“Peranti pusat”: agak berkuasa, digunakan untuk mengimbas dan menyambungkan peranti periferal, seperti telefon bimbit, tablet, dll.

“Peranti periferal”: Fungsinya agak mudah, penggunaan kuasa kecil, dan peranti pusat disambungkan untuk menyediakan data, seperti gelang tangan, termometer pintar, dll.

Sebenarnya, Pada tahap yang paling asas, ia harus menjadi perbezaan antara peranan yang berbeza dalam proses mewujudkan sambungan. Kami tahu bahawa jika peranti Bluetooth mahu membiarkan orang lain mengetahui kewujudannya, ia perlu disiarkan secara berterusan ke dunia luar, sementara pihak lain perlu mengimbas dan membalas paket siaran, supaya sambungan dapat diwujudkan. Dalam proses ini, Orang yang bertanggungjawab untuk penyiaran adalah persis , dan Central bertanggungjawab untuk mengimbas.

Perhatikan mengenai proses sambungan antara kedua -dua:

Peranti pusat boleh menyambung ke pelbagai peranti periferal pada masa yang sama. Apabila peranti periferal disambungkan, ia akan berhenti penyiaran dengan segera, dan teruskan penyiaran selepas pemotongan. Hanya satu peranti boleh cuba menyambung pada bila -bila masa, Sambungan beratur.

Gatt Protokol

Teknologi BLO berkomunikasi berdasarkan GATT. Gatt adalah protokol penghantaran atribut. Ia boleh dianggap sebagai protokol lapisan aplikasi untuk penghantaran atribut.

Strukturnya sangat mudah:   

1671506971 1

Anda boleh memahaminya sebagai XML:

Setiap GATT terdiri daripada perkhidmatan yang melaksanakan fungsi yang berbeza;

Setiap perkhidmatan terdiri daripada ciri yang berbeza;

Setiap ciri terdiri daripada nilai dan satu atau lebih deskriptor;

Perkhidmatan dan ciri bersamaan dengan tag (Perkhidmatan bersamaan dengan kategorinya, dan ciri bersamaan dengan namanya), sementara nilai sebenarnya mengandungi data, dan deskriptor adalah penjelasan dan perihalan nilai ini. Sudah tentu, kita dapat menerangkan dan menerangkannya dari sudut yang berbeza. Penerangan, Oleh itu, terdapat banyak deskriptor.

Contohnya:Band Xiaomi Mi biasa adalah peranti BLE, (diandaikan) ia mengandungi tiga perkhidmatan, yang merupakan perkhidmatan yang memberikan maklumat peranti, Perkhidmatan yang menyediakan langkah, dan perkhidmatan yang mengesan kadar denyutan jantung;

Ciri yang terkandung dalam perkhidmatan maklumat peranti termasuk maklumat pengilang, maklumat perkakasan, maklumat versi, dll.; Perkhidmatan kadar jantung merangkumi ciri denyutan jantung, dll., dan nilai dalam kadar denyutan jantung sebenarnya mengandungi data kadar jantung, dan deskriptor adalah nilainya. Penerangan, seperti unit nilai, Penerangan, kebenaran, dll.

Gatt c/s

Dengan pemahaman awal mengenai GATT, Kami tahu bahawa GATT adalah mod C/S biasa. Kerana ia adalah c/s, Anda perlu membezakan antara pelayan dan pelanggan.

“Pelayan gatt” vs. “Pelanggan Gatt”. Tahap di mana kedua -dua peranan ini wujud selepas sambungan ditubuhkan, dan mereka dibezakan mengikut status dialog. Sangat mudah difahami bahawa pihak yang memegang data dipanggil pelayan gatt, Dan pihak yang mengakses data dipanggil klien gatt.

Ini adalah konsep pada tahap yang berbeza dari peranan peranti yang kami sebutkan tadi, dan perlu membezakannya. Mari kita gunakan contoh mudah untuk menggambarkan:

Ambil contoh telefon bimbit dan jam tangan untuk menggambarkan. Sebelum sambungan antara telefon bimbit dan telefon bimbit ditubuhkan, Kami menggunakan fungsi carian Bluetooth telefon bimbit untuk mencari peranti Bluetooth jam. Semasa proses ini, jelas bahawa jam tangan itu disiarkan sehingga peranti lain mengetahui kewujudannya. , Ini adalah peranan periferal dalam proses ini, Dan telefon bimbit bertanggungjawab untuk tugas pengimbasan, dan secara semula jadi memainkan peranan pusat; Setelah kedua -duanya menubuhkan sambungan GATT, Apabila telefon bimbit perlu membaca data sensor seperti bilangan langkah dari jam tangan, Dua data interaktif disimpan dalam jam tangan, Jadi pada masa ini jam tangan adalah peranan pelayan gatt, dan telefon bimbit secara semula jadi pelanggan GATT; Dan apabila jam tangan ingin membaca panggilan SMS dan maklumat lain dari telefon bimbit, penjaga data menjadi telefon bimbit, Jadi telefon bimbit adalah pelayan pada masa ini, Dan jam tangan adalah pelanggan.

Perkhidmatan/ciri

Kami sudah mempunyai pemahaman persepsi tentang mereka di atas, Dan kemudian kami mempunyai beberapa maklumat praktikal:

  1. Ciri adalah unit data logik terkecil.
  2. Analisis data yang disimpan dalam nilai dan deskriptor ditentukan oleh jurutera pelayan, Tidak ada spesifikasi.
  3. Perkhidmatan/ciri mempunyai pengenalan uuid yang unik, Uuid mempunyai 16-bit dan 128-bit, Apa yang perlu kita fahami ialah UUID 16-bit disahkan oleh organisasi Bluetooth dan perlu dibeli, Sudah tentu terdapat beberapa uuid 16-bit yang biasa., Uuid perkhidmatan denyutan jantung adalah 0x180d, yang dinyatakan sebagai 0x0000001800-0000-1000-8000-00805F9B34FB dalam kod, dan bit lain diperbaiki. Uuid 128-bit boleh disesuaikan.
  4. Sambungan GATT adalah eksklusif.