STEMMA
profiluri
un profil nu există de fapt pe perifericul BLE în sine, este simplu o colecție predefinită de servicii care a fost compilată fie de Bluetooth SIG, fie de designerii periferici. Profilul ritmului cardiac, de exemplu, combină serviciul de ritm cardiac și serviciul de informații despre dispozitiv. Lista completă a profilurilor bazate pe GATT adoptate oficial poate fi văzută aici: Prezentare generală a profilurilor.
servicii
serviciile sunt utilizate pentru a descompune datele în entități logice și conțin bucăți specifice de date numite caracteristici. Un serviciu poate avea una sau mai multe caracteristici și fiecare serviciu se distinge de alte servicii prin intermediul unui ID numeric unic numit UUID, care poate fi fie pe 16 biți (pentru serviciile BLE adoptate oficial), fie pe 128 biți (pentru servicii personalizate).
o listă completă a serviciilor BLE adoptate oficial poate fi văzută pe pagina de servicii a portalului pentru dezvoltatori Bluetooth. Dacă vă uitați la Serviciul de ritm cardiac, de exemplu, putem vedea că acest serviciu adoptat oficial are un UUID pe 16 biți de 0x180D și conține până la 3 caracteristici, deși numai primul este obligatoriu: măsurarea ritmului cardiac, locația senzorului corpului și punctul de Control al ritmului cardiac.
caracteristici
conceptul de cel mai scăzut nivel în tranzacțiile GATT este caracteristica, care încapsulează un singur punct de date (deși poate conține o serie de date conexe, cum ar fi valorile X/Y/Z dintr-un accelerometru cu 3 axe etc.).
în mod similar serviciilor, fiecare caracteristică se distinge printr-un UUID predefinit pe 16 biți sau pe 128 biți și sunteți liber să utilizați caracteristicile standard definite de Bluetooth SIG (care asigură interoperabilitatea și HW/SW activat pentru BLE) sau să definiți propriile caracteristici personalizate pe care numai perifericul și SW-ul dvs. le înțeleg.
de exemplu, caracteristica de măsurare a ritmului cardiac este obligatorie pentru serviciul de ritm cardiac și utilizează un UUID de 0x2A37. Începe cu o singură valoare pe 8 biți care descrie formatul de date HRM (dacă datele sunt UINT8 sau UINT16 etc.), și continuă să includă datele de măsurare a ritmului cardiac care se potrivește cu acest octet de configurare.
caracteristicile sunt principalul punct în care veți interacționa cu perifericul BLE, deci este important să înțelegeți conceptul. Ele sunt, de asemenea, utilizate pentru a trimite date înapoi la perifericul BLE, din moment ce sunt, de asemenea, posibilitatea de a scrie la caracteristică. Puteți implementa o interfață simplă de tip UART cu un serviciu UART personalizat și două caracteristici, una pentru canalul TX și una pentru canalul RX, unde o caracteristică ar putea fi configurată doar pentru citire, iar cealaltă ar avea privilegii de scriere.