Mündəricat:
- Addım 1: BLE Cihazını Tarayın
- Addım 2: Cihazı birləşdirin
- Addım 3: Cihaz xüsusiyyətlərini əldə edin
- Addım 4: Cihazın adını oxuyun
- Addım 5: BPM -ni oxuyun
- Addım 6: Bədən Sensorunun Yerini Oxuyun
Video: CSR1010 və Dragonboard 410c istifadə edərək BLE Cihazından Dəyərlərin Oxunması: 6 Addım
2024 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2024-01-30 07:47
Bu təlimat, Linaro ilə Dragonboard 410c istifadə edərək BLE cihazı CSR1010 -dan dəyərlərin necə oxunacağını göstərir
Bu nümunədə, CSR1010 nəbz sensoru emulyasiya edir.
Addım 1: BLE Cihazını Tarayın
Bu addımda, BT müştərinizin BLE cihazlarını skan etməyə hazır olub olmadığını yoxlayın.
kök@linaro-alip:/home/linaro# sudo hcitool lescan
LE Scan… 18: EE: 69: 00: CE: 00 (naməlum) 18: EE: 69: 00: CE: 00 (naməlum) EE: 52: 5B: 04: 00: 02 CSR HR Sensoru
Addım 2: Cihazı birləşdirin
Cihazımızı bağlamaq üçün gatttool istifadə edəcəyik
-b: Cihazın MAC ünvanı
-t: LE ünvan növü. İctimai və ya təsadüfi ola bilər, cihaz xüsusiyyətlərini yoxlamaq lazımdır. Bu vəziyyətdə ictimaiyyət üçün açıqdır.
-I: gatttool interaktiv rejimi. Cihaza cmds göndərmək istəyi açılacaq
root@linaro -alip:/home/linaro# sudo gatttool -b EE: 52: 5B: 04: 00: 02 -t ictimai -
Sorğu açıldıqdan sonra cihaza connect cmd göndərə bilərik.
[EE: 52: 5B: 04: 00: 02] [LE]> connectEE -ə qoşulmaq üçün cəhd: 52: 5B: 04: 00: 02
Bağlantı uğurlu oldu
[EE: 52: 5B: 04: 00: 02] [LE]>
Addım 3: Cihaz xüsusiyyətlərini əldə edin
Cihaz qoşulduqdan sonra cmd "birincisini" göndərərək bütün mövcud xidmətləri oxuya bilərik.
UUID xidmətinə əsaslanaraq, GATT spesifikasiyasında xidmət növünü kəşf edə bilərik
www.bluetooth.com/specifications/gatt/services
Addım 4: Cihazın adını oxuyun
Ümumi Giriş Profilində (uuid = 1800) oxunan xüsusiyyətləri araşdıraq. Əvvəlcə ilk şəkildə təsvir olunan xidmət sapı dəyərlərini almalıyıq, bu halda 5-dən 11-ə qədər başlayır. İndi cmd char-desc istifadə edərək bu intervaldakı bütün tutacaqları əldə edə bilərik.
[EE: 52: 5B: 04: 00: 02] [LE]> char-desc 05 11handle: 0x0005, uuid: 00002800-0000-1000-8000-00805f9b34fb sapı: 0x0006, uuid: 00002803-0000-1000-8000- 00805f9b34fb qolu: 0x0007, uuid: 00002a00-0000-1000-8000-00805f9b34fb sapı: 0x0008, uuid: 00002803-0000-1000-8000-00805f9b34fb sapı: 0x0009, uuid: 00002a01-00300000000000 uuid: 00002803-0000-1000-8000-00805f9b34fb sapı: 0x000b, uuid: 00002a04-0000-1000-8000-00805f9b34fb sapı: 0x000c, uuid: 00002800-0000-1000-8000-00805f9b34f3: 0x000b -1000-8000-00805f9b34fb sapı: 0x000e, uuid: 00002a37-0000-1000-8000-00805f9b34fb sapı: 0x000f, uuid: 00002902-0000-1000-8000-00805f9b34fb sapı: 0x0010, uuid: 00002 00805f9b34fb sapı: 0x0011, uuid: 00002a38-0000-1000-8000-00805f9b34fb
Ümumi Giriş Profili spesifikasiyasına görə, UUID 2A00 Cihaz Adına istinad edir.
2a00 -un cihazımızdakı 0x0007 sapı olduğunu nəzərə alsaq, gəlin dəyəri oxuyaq
[EE: 52: 5B: 04: 00: 02] [LE]> char-read-hnd 7Xarakterik dəyər/təsvir: 43 53 52 20 48 52 20 53 65 6e 73 6f 72
Hex'i ASCII -ə çevirən cihazın adı: '' CSR HR Sensor ''
Addım 5: BPM -ni oxuyun
[EE: 52: 5B: 04: 00: 02] [LE]> birincil idarəetmə qolu: 0x0001, son grp sapı: 0x0004 uuid: 00001801-0000-1000-8000-00805f9b34fb attr sapı: 0x0005, son grp sapı: 0x000b uuid: 00001800-0000-1000-8000-00805f9b34fb attr tutacağı: 0x000c, son tutma qolu: 0x0013 uuid: 0000180d-0000-1000-8000-00805f9b34fb attr tutacağı: 0x0014, son tutma qolu: 0x0017 uuid: 0000180f-0000-1000 00805f9b34fb attr tutacaq: 0x0018, son tutma qolu: 0x0021 uuid: 00001016-d102-11e1-9b23-00025b00a5a5 attr sapı: 0x0022, son grp sapı: 0xffff uuid: 0000180a-0000-1000-8000-00b5f9b34f
Ürək dərəcəsi xidməti UUID 0x180d -dir, buna görə tutma aralığı 0x000c -dən 0x0013 -ə qədərdir
[EE: 52: 5B: 04: 00: 02] [LE]> simvol 0x00c 0x0013
sap: 0x000c, uuid: 00002800-0000-1000-8000-00805f9b34fb sapı: 0x000d, uuid: 00002803-0000-1000-8000-00805f9b34fb sapı: 0x000e, uuid: 00002a37-0000-1000-8000-00f5f: 00002902-0000-1000-8000-00805f9b34fb sapı: 0x0010, uuid: 00002803-0000-1000-8000-00805f9b34fb sapı: 0x0011, uuid: 00002a38-0000-1000-8000-00805f9b34fb u0000: 00x00-00 1000-8000-00805f9b34fb sapı: 0x0013, uuid: 00002a39-0000-1000-8000-00805f9b34fb
Bütün Xarakterik Bəyannamələri oxumaq (UUID 0x2803).
[EE: 52: 5B: 04: 00: 02] [LE]> char-read-hnd 0x000d
Xarakterik dəyər/təsvir: 10 0e 00 37 2a [EE: 52: 5B: 04: 00: 02] [LE]> char-read-hnd 0x0010 Xarakterik dəyər/təsvir: 02 11 00 38 2a [EE: 52: 5B: 04:00:02] [LE]> char-read-hnd 0x0012 Xarakterik dəyər/təsvir: 08 13 00 39 2a
Diqqət yetirin:
- qolu 0x000d, bit 10 ilə xidmət 2a37 (Ürək Hızı Ölçümü) üçün CCCD -dir (XƏBƏRDARLIQ)
- qolu 0x0010, 02 bitli 2a38 xidməti (Bədən Sensorunun yeri) üçün CCCD -dir (oxu dəstəyi)
- qolu 0x0012, bit 2 ilə xidmət 2a39 (Ürək Nəzarəti Nöqtəsi) üçün CCCD -dir (WRITE dəstəyi)
İndi bilirik ki, Nəbz Ölçmə yalnız bildirişlə işləyir. Bu o deməkdir ki, əvvəlcə CCCD -də (UUID 0x2902) dəyər dəyişikliyi üçün qeydiyyatdan keçməliyik, bu halda bu vəziyyətdə 0xf idarə olunur.
[EE: 52: 5B: 04: 00: 02] [LE]> char-write-req 0x00f 0100
Bildiriş sapı = 0x000e dəyəri: 16 65 f3 01 Xarakterik dəyər uğurla yazıldı Bildiriş sapı = 0x000e dəyəri: 16 6d fa 01 Bildiriş sapı = 0x000e dəyəri: 16 6d fa 01 Bildiriş sapı = 0x000e dəyəri: 16 6c f9 01 Bildiriş sapı = 0x000e dəyəri: 16 6a f7 01 Bildiriş sapı = 0x000e dəyəri: 16 69 f6 01
Profil spesifikasiyasına görə, ikinci hex sayı BPM məlumatlarıdır.
BPM:
6d = 109
6d = 109
6c = 108
6a = 106
69 = 105
Addım 6: Bədən Sensorunun Yerini Oxuyun
Bədən Sensorunun yeri UUID 0x2A38 -dir. Təsvirçisinə görə, bu xüsusiyyət əsas oxumağı dəstəkləyir, buna görə də dəyərini birbaşa oxuya bilərik.
[EE: 52: 5B: 04: 00: 02] [LE]> char-read-hnd 0x11Xarakterik dəyər/deskriptor: 03
SIG spesifikasiyasına görə, 03 "Barmaq" deməkdir
Tövsiyə:
Köhnə Laptop Şarj Cihazından İstifadə Edilən Sadə Dəzgah Gücü: 5 addım
Köhnə Laptop Şarj Cihazından İstifadə Edilən Sadə Dəzgah Güc Təchizatı: Deməli bu mənim tezgahımın enerji təchizatıdır, əlavə etmək / bağlamaq üçün yalnız 4 telli çox sadə bir quruluşdur. Əsas güc, maksimum 19v və 3.4A ötürə bilən köhnə bir laptop şarj cihazından gəlir. Laptop şarj cihazının 2 telli bir versiyası olduğunu xatırlatmaq yerinə düşər
160A Fırçalanmış Elektron Sürət Nəzarətçisi və Servo Test Cihazından istifadə edərək DC Dişli Mühərrikini Necə İdarə Edmək olar: 3 addım
160A Fırçalanmış Elektron Sürət Nəzarətçisindən və Servo Test Cihazından istifadə edərək DC Dişli Mühərrikini Necə İdarə etmək olar: Xüsusiyyətlər: Gərginlik: 2-3S Lipo və ya 6-9 NiMH Davamlı cərəyan: 35A Burst cərəyanı: 160A BEC: 5V / 1A, xətti rejim Modları: 1. irəli &tərsinə; 2. irəli &əyləc; 3. irəli & əyləc & tərs Çəki: 34g Ölçü: 42*28*17mm
Arduino Uno ilə LM35 Temperatur Sensorundan İstifadə İstiliyinin Oxunması: 4 Addım
Arduino Uno ilə LM35 Temperatur Sensorundan İstifadə İstiliyinin Oxunması: Salam uşaqlar bu təlimatlarda LM35 -in Arduino ilə necə istifadə olunacağını öyrənəcəyik. Lm35, -55 ° C ilə 150 ° C arasındakı temperatur dəyərlərini oxuya bilən bir temperatur sensoru. İstiliklə mütənasib olaraq analog gərginlik verən 3 terminallı bir cihazdır. Yüksək
Arduino istifadə edərək Xarici EEPROM -a məlumatların oxunması və yazılması: 5 addım
Arduino istifadə edərək Xarici EEPROM-a Məlumatların Oxunması və Yazılması: EEPROM, Elektriklə Silinə bilən Proqramlaşdırıla bilən Yalnız Oxunan Yaddaş deməkdir. Bu o deməkdir ki, lövhə söndürüldükdə belə, EEPROM çipi hələ də proqramı saxlayır
HW30A Fırçasız Motor Sürət Nəzarətçisindən və Servo Test Cihazından istifadə edərək Drone Quadcopter Fırçasız DC Motorunu Necə Çalışdırmaq olar: 3 addım
HW30A Fırçasız Motor Sürət Nəzarətçisi və Servo Test Cihazından istifadə edərək Drone Quadcopter Fırçasız DC Motoru Necə Çalışdırmaq olar: Təsvir: Bu cihaz Servo Motor Test Cihazı adlanır, servo motoru servo mühərrikə sadə bir fişlə bağlamaq və ona enerji təchiz etməklə istifadə edilə bilər. Cihaz, elektrik sürət tənzimləyicisi (ESC) üçün bir siqnal generatoru olaraq da istifadə edilə bilər, sonra edə bilməzsiniz