Агуулгын хүснэгт:
- Алхам 1: BLE төхөөрөмжийг скан хийх
- Алхам 2: төхөөрөмжийг холбох
- Алхам 3: Төхөөрөмжийн шинж чанарыг олж авах
- Алхам 4: Төхөөрөмжийн нэрийг уншина уу
- Алхам 5: BPM -ийг унших
- Алхам 6: Биеийн мэдрэгчийн байршлыг уншина уу
2024 Зохиолч: John Day | [email protected]. Хамгийн сүүлд өөрчлөгдсөн: 2024-01-30 11:04
Энэхүү заавар нь Linaro -тай Dragonboard 410c ашиглан BLE төхөөрөмж CSR1010 -аас утгыг хэрхэн уншихыг харуулав
Энэ жишээнд CSR1010 нь зүрхний цохилтын мэдрэгчийг дуурайж байна.
Алхам 1: BLE төхөөрөмжийг скан хийх
Энэ алхамд таны BT үйлчлүүлэгч BLE төхөөрөмжийг скан хийхэд бэлэн байгаа эсэхийг шалгаарай.
root@linaro-alip:/home/linaro# sudo hcitool lescan
LE Scan… 18: EE: 69: 00: CE: 00 (тодорхойгүй) 18: EE: 69: 00: CE: 00 (үл мэдэгдэх) EE: 52: 5B: 04: 00: 02 CSR HR Sensor
Алхам 2: төхөөрөмжийг холбох
Бид gatttool ашиглан төхөөрөмжөө холбох болно
-b: Төхөөрөмжийн MAC хаяг
-t: LE хаягийн төрөл. Нийтийн болон санамсаргүй байдлаар байж болох тул төхөөрөмжийн тодорхойлолтыг шалгах шаардлагатай. Энэ тохиолдолд нийтэд ил болно.
-Би: gatttool интерактив горим. Энэ нь cmds -ийг төхөөрөмж рүү илгээх хүсэлтийг нээнэ
root@linaro -alip:/home/linaro# sudo gatttool -b EE: 52: 5B: 04: 00: 02 -t public -I
Тушаал нээгдсэний дараа бид төхөөрөмж рүү connect cmd илгээж болно.
[EE: 52: 5B: 04: 00: 02] [LE]> connectEE рүү холбогдохыг оролдож байна: 52: 5B: 04: 00: 02
Холболт амжилттай боллоо
[EE: 52: 5B: 04: 00: 02] [LE]>
Алхам 3: Төхөөрөмжийн шинж чанарыг олж авах
Төхөөрөмжийг холбосны дараа бид cmd "үндсэн" илгээж, боломжтой бүх үйлчилгээг унших боломжтой болно.
UUID үйлчилгээний үндсэн дээр бид GATT -ийн тодорхойлолтоос үйлчилгээний төрлийг олж мэдэх боломжтой
www.bluetooth.com/specifications/gatt/services
Алхам 4: Төхөөрөмжийн нэрийг уншина уу
Ерөнхий хандалтын профайл (uuid = 1800) дээрх шинж чанаруудыг судалж үзье. Эхлээд бид эхний зурган дээр тайлбарласан үйлчилгээний бариулын утгыг авах ёстой бөгөөд энэ тохиолдолд 5-11 хооронд эхэлнэ. Одоо бид cmd char-desc ашиглан энэ интервал дахь бүх бариулыг авах боломжтой.
[EE: 52: 5B: 04: 00: 02] [LE]> char-desc 05 11 бариул: 0x0005, uuid: 00002800-0000-1000-8000-00805f9b34fb бариул: 0x0006, uuid: 00002803-0000-1000-8000- 00805f9b34fb бариул: 0x0007, uuid: 00002a00-0000-1000-8000-00805f9b34fb бариул: 0x0008, uuid: 00002803-0000-1000-8000-00805f9b34fb бариул: 0x0009, uuid: 00002a01-0000 uuid: 00002803-0000-1000-8000-00805f9b34fb бариул: 0x000b, uuid: 00002a04-0000-1000-8000-00805f9b34fb бариул: 0x000c, uuid: 00002800-0000-1000-8000-00805f9b3000f00 -1000-8000-00805f9b34fb бариул: 0x000e, uuid: 00002a37-0000-1000-8000-00805f9b34fb бариул: 0x000f, uuid: 00002902-0000-1000-8000-00805f9b34fb бариул: 0x0010, uuid: 00002000000 00805f9b34fb бариул: 0x0011, uuid: 00002a38-0000-1000-8000-00805f9b34fb
Ерөнхий хандалтын профайлын тодорхойлолтын дагуу UUID 2A00 нь төхөөрөмжийн нэрийг хэлнэ.
2a00 бол манай төхөөрөмжийн 0x0007 бариул гэдгийг харгалзан үзээд утгыг нь уншъя
[EE: 52: 5B: 04: 00: 02] [LE]> char-read-hnd 7 Онцлог утга/тайлбарлагч: 43 53 52 20 48 52 20 53 65 6e 73 6f 72
Hex -ийг ASCII болгон хөрвүүлэхэд төхөөрөмжийн нэр нь: "CSR HR Sensor"
Алхам 5: BPM -ийг унших
[EE: 52: 5B: 04: 00: 02] [LE]> primattr бариул: 0x0001, end grp handle: 0x0004 uuid: 00001801-0000-1000-8000-00805f9b34fb attr handle: 0x0005, end grp handle: 0x000b uuid: 00001800-0000-1000-8000-00805f9b34fb attr бариул: 0x000c, төгсгөлийн grp бариул: 0x0013 uuid: 0000180d-0000-1000-8000-00805f9b34fb attr бариул: 0x0014, төгсгөлийн grp бариул: 0x0017 uuid: 0000180f-0000-1000 00805f9b34fb attr бариул: 0x0018, төгсгөлийн grp бариул: 0x0021 uuid: 00001016-d102-11e1-9b23-00025b00a5a5 attr бариул: 0x0022, төгсгөлийн grp бариул: 0xffff uuid: 0000180a-0000-1000-8000-00805f9b34f
Зүрхний цохилтын үйлчилгээний UUID нь 0x180d хэмжээтэй тул бариулын интервал 0x000c -ээс 0x0013 хүртэл байна.
[EE: 52: 5B: 04: 00: 02] [LE]> char-desc 0x00c 0x0013
бариул: 0x000c, uuid: 00002800-0000-1000-8000-00805f9b34fb бариул: 0x000d, uuid: 00002803-0000-1000-8000-00805f9b34fb бариул: 0x000e, uuid: 00002a37-0000-1000-8000-00fff: 00002902-0000-1000-8000-00805f9b34fb бариул: 0x0010, uuid: 00002803-0000-1000-8000-00805f9b34fb бариул: 0x0011, uuid: 00002a38-0000-1000-8000-00805f9b34fb бариул: 0x0010, 00x0000 1000-8000-00805f9b34fb бариул: 0x0013, uuid: 00002a39-0000-1000-8000-00805f9b34fb
Бүх шинж чанарын мэдэгдлийг унших (UUID 0x2803).
[EE: 52: 5B: 04: 00: 02] [LE]> char-read-hnd 0x000d
Онцлог утга/тодорхойлогч: 10 0e 00 37 2a [EE: 52: 5B: 04: 00: 02] [LE]> char-read-hnd 0x0010 Онцлог утга/тодорхойлогч: 02 11 00 38 2a [EE: 52: 5B: 04:00:02] [LE]> char-read-hnd 0x0012 Онцлог утга/тайлбарлагч: 08 13 00 39 2a
Үүнийг анхаарна уу:
- 0x000d бариул нь 2a37 (Зүрхний цохилтыг хэмжих) үйлчилгээний 10 -р битийн CCCD юм (мэдэгдэлийг дэмжих)
- 0x0010 бариул нь 2a38 (Биеийн мэдрэгчийн байршил) үйлчилгээний 02 -р битийн CCCD юм (READ -ийг дэмждэг)
- 0x0012 бариул нь 2a39 (Зүрхний цохилтыг хянах цэг) үйлчилгээний CCCD бөгөөд бит нь 08 (Бичихийг дэмждэг)
Зүрхний цохилтын хэмжилт нь зөвхөн мэдэгдлийн дагуу ажилладаг гэдгийг бид одоо мэдэж байна. Энэ нь эхлээд CCCD (UUID 0x2902) дахь утгын өөрчлөлтийг бүртгэх ёстой гэсэн үг бөгөөд энэ тохиолдолд 0xf бариултай болно.
[EE: 52: 5B: 04: 00: 02] [LE]> char-write-req 0x00f 0100
Мэдэгдлийн бариул = 0x000e утга: 16 65 f3 01 Онцлог утгыг амжилттай бичсэн Мэдэгдлийн бариул = 0x000e утга: 16 6d fa 01 Мэдэгдлийн бариул = 0x000e утга: 16 6d fa 01 Мэдэгдлийн бариул = 0x000e утга: 16 6c f9 01 Мэдэгдлийн бариул = 0x000e утга: 16 6a f7 01 Мэдэгдлийн бариул = 0x000e утга: 16 69 f6 01
Профайлын тодорхойлолтын дагуу хоёр дахь зургаан өнцөгт дугаар нь BPM мэдээлэл юм.
BPM:
6d = 109
6d = 109
6c = 108
6а = 106
69 = 105
Алхам 6: Биеийн мэдрэгчийн байршлыг уншина уу
Биеийн мэдрэгчийн байршил нь UUID 0x2A38 юм. Тодорхойлогчийн хэлснээр энэ шинж чанар нь үндсэн уншилтыг дэмждэг тул бид түүний утгыг шууд уншиж чаддаг.
[EE: 52: 5B: 04: 00: 02] [LE]> char-read-hnd 0x11 Онцлог утга/тайлбарлагч: 03
SIG -ийн дагуу 03 нь "хуруу" гэсэн утгатай.
Зөвлөмж болгож буй:
Нэг аналог зүү ашиглан олон аналог утгыг хэрхэн унших вэ: 6 алхам (зурагтай)
Нэг аналог зүү ашиглан олон тооны аналог утгыг хэрхэн унших вэ: Энэхүү гарын авлагад би зөвхөн нэг аналог оролтын зүү ашиглан олон аналог утгыг хэрхэн уншихыг танд үзүүлэх болно
NodeMCU ашиглан IOT ThingSpeak -д чичиргээ мэдрэгчийн утгыг байршуулах: 4 алхам
NodeMCU ашиглан IOT ThingSpeak -д чичиргээ мэдрэгчийн утгыг байршуулж байна: Чичиргээний улмаас эвдэрч гэмтсэн хэд хэдэн чухал машин эсвэл үнэтэй тоног төхөөрөмж байдаг. Ийм тохиолдолд машин эсвэл тоног төхөөрөмж чичиргээ үүсгэж байгаа эсэхийг олж мэдэхийн тулд чичиргээ мэдрэгч шаардлагатай болно. Тухайн объектыг таньж байна
Arduino Uno ашиглан LM35 температур мэдрэгч ашиглан температурыг унших: 4 алхам
Arduino Uno ашиглан LM35 температур мэдрэгч ашиглан температурыг унших: Сайн байна уу залуусаа, бид LM35 -ийг Arduino -той хэрхэн ашиглах талаар сурах болно. Lm35 нь -55 ° C -аас 150 ° C хүртэлх температурын утгыг унших боломжтой температур мэдрэгч юм. Энэ нь температуртай пропорциональ аналог хүчдэл өгдөг 3 терминал төхөөрөмж юм. Өндөр
Android болон Linux үйлдлийн системтэй DragonBoard 410c дээр GPIO зүү ашиглан програм хөгжүүлэх: 6 алхам
Android болон Линукс үйлдлийн системтэй DragonBoard 410c дээр GPIO зүү ашиглан програм хөгжүүлэх: Энэхүү гарын авлагын зорилго нь DragonBoard 410c бага хурдтай өргөтгөл дээр GPIO зүү ашиглан програм хөгжүүлэхэд шаардлагатай мэдээллийг харуулах явдал юм. Энэхүү гарын авлагад Андройд SYS -тэй GPIO зүү ашиглан програм хөгжүүлэх талаархи мэдээллийг толилуулж байна
Blynk -ийг ашиглан Андройд төхөөрөмжөөс дуугаралт ба удирдлагыг хянах: 4 алхам
Blynk -ийг ашиглан Андройдоос дуугаралт ба удирдлагыг хянах: Энэхүү зааварчилгаанд би GUI болон IOT -ийн bluetooth ашиглан arduino -г андроид руу хэрхэн холбохыг танд хэлэх болно! arduino -ийн сонголт) LED -ийг асааж, дуугаруулагчийг хянах