BLE хөгжүүлэлт: ТХЕХ гэж юу вэ, энэ нь хэрхэн ажилладаг вэ?

Гарчиг

ТХЕХ-ийн үзэл баримтлал

BLE-тэй холбоотой хөгжлийг хэрэгжүүлэхийн тулд бид тодорхой үндсэн мэдлэгтэй байх ёстой, мэдээжийн хэрэг, энэ нь маш энгийн байх ёстой.

ТХЕХ Төхөөрөмжийн үүрэг:

Хамгийн түрүүнд ойлгох ёстой зүйл бол эдгээр хоёр үүргийн ялгаа нь техник хангамжийн түвшинд байдаг бөгөөд эдгээр нь хосоороо харагддаг харьцангуй ойлголтууд юм.

"Төв төхөөрөмж": харьцангуй хүчирхэг, гар утас, таблет гэх мэт захын төхөөрөмжүүдийг сканнердах, холбоход ашигладаг.

"Захын төхөөрөмж": функц нь харьцангуй энгийн, цахилгаан зарцуулалт бага, төв төхөөрөмж нь бугуйвч, ухаалаг термометр гэх мэт өгөгдлийг өгөхийн тулд холбогдсон.

Үнэн хэрэгтээ, хамгийн үндсэн түвшинд энэ нь харилцаа холбоо тогтоох үйл явц дахь янз бүрийн үүргүүдийн хоорондын ялгаа байх ёстой. Хэрэв Bluetooth төхөөрөмж бусдад өөрийн оршин тогтнолыг мэдэгдэхийг хүсч байвал гадаад ертөнцөд тасралтгүй цацаж байх ёстой бөгөөд нөгөө тал нь дамжуулалтын багцыг сканнердаж, хариу илгээх шаардлагатай бөгөөд ингэснээр холболт бий болно. Энэ үйл явцад өргөн нэвтрүүлгийг хариуцах хүн нь захын төхөөрөмж бөгөөд төв нь сканнердах үүрэгтэй.

Энэ хоёрын хоорондох холболтын үйл явцын талаар анхаарна уу:

Төв төхөөрөмж нь хэд хэдэн дагалдах төхөөрөмжтэй зэрэг холбогдох боломжтой. Захын төхөөрөмж холбогдсон үед шууд цацахаа зогсоож, салгасны дараа үргэлжлүүлэн цацах болно. Зөвхөн нэг төхөөрөмж хүссэн үедээ холбогдохыг оролдож, холболтыг дараалалд оруулж болно.

ТХЕХ протокол

BLE технологи нь ТХЕХ-ийн үндсэн дээр харилцдаг. GATT нь шинж чанарыг дамжуулах протокол юм. Үүнийг атрибут дамжуулах хэрэглээний түвшний протокол гэж үзэж болно.

Түүний бүтэц нь маш энгийн:   

Та үүнийг xml гэж ойлгож болно:

ТХЕХ бүр өөр өөр үүрэг гүйцэтгэдэг үйлчилгээнүүдээс бүрддэг;

Үйлчилгээ бүр өөр өөр шинж чанараас бүрддэг;

Шинж чанар бүр нь утга ба нэг буюу хэд хэдэн Тодорхойлогчоос бүрдэнэ;

Үйлчилгээ ба Шинж чанар нь шошготой тэнцэх (Үйлчилгээ нь ангилалтай нь дүйцэх ба Characteristic нь түүний нэртэй тэнцүү), харин утга нь үнэндээ өгөгдлийг агуулдаг бөгөөд Тодорхойлогч нь энэ утгын тайлбар ба тайлбар юм. Мэдээжийн хэрэг, бид үүнийг янз бүрийн өнцгөөс тодорхойлж, дүрсэлж болно. Тодорхойлолт, тиймээс олон тодорхойлогч байж болно.

Жишээ нь: Нийтлэг Xiaomi Mi Band нь BLE төхөөрөмж бөгөөд энэ нь төхөөрөмжийн мэдээллээр хангадаг үйлчилгээ, алхмуудыг хангадаг үйлчилгээ, зүрхний цохилтыг илрүүлдэг үйлчилгээ гэсэн гурван үйлчилгээг агуулдаг;

Төхөөрөмжийн мэдээллийн үйлчилгээнд агуулагдах шинж чанар нь үйлдвэрлэгчийн мэдээлэл, техник хангамжийн мэдээлэл, хувилбарын мэдээлэл гэх мэт; зүрхний цохилт Үйлчилгээ нь зүрхний цохилтын үзүүлэлт гэх мэтийг агуулдаг ба зүрхний цохилтын үзүүлэлтийн утга нь зүрхний цохилтын өгөгдлийг агуулдаг бөгөөд тодорхойлогч нь утга юм. Тодорхойлолт, тухайлбал үнэ цэнийн нэгж, тодорхойлолт, зөвшөөрөл гэх мэт.

GATT C/S

ТХЕХ-ийн талаарх урьдчилсан ойлголттой бол бид ТХЕХ нь ердийн C/S горим гэдгийг мэднэ. Энэ нь C/S учраас сервер болон үйлчлүүлэгч хоёрыг ялгах шаардлагатай.

"GATT сервер" эсрэг "GATT үйлчлүүлэгч". Эдгээр хоёр үүрэг бий болсон үе шат нь холболт тогтоосны дараа байдаг бөгөөд харилцан ярианы төлөв байдлын дагуу ялгагдана. Мэдээллийг эзэмшиж буй талыг ТХЕХ-ийн сервер, мэдээлэлд ханддаг талыг ТХЕХ-ийн клиент гэж нэрлэдэг гэдгийг ойлгоход хялбар байдаг.

Энэ нь бидний өмнө дурьдсан төхөөрөмжийн дүрээс өөр түвшний ойлголт бөгөөд үүнийг ялгах шаардлагатай байна. Энгийн жишээг ашиглан тайлбарлая:

Үүнийг харуулахын тулд гар утас, цагны жишээг авч үзье. Гар утас болон гар утасны хооронд холболт үүсэхээс өмнө бид гар утасны Bluetooth хайлтын функцийг ашиглан цагны Bluetooth төхөөрөмжийг хайдаг. Энэ процессын явцад цаг нь BLE-г цацаж байгаа нь илт байгаа бөгөөд ингэснээр бусад төхөөрөмжүүд түүний оршин тогтнолыг мэддэг. , энэ нь энэ үйл явцад захын үүрэг гүйцэтгэдэг бөгөөд гар утас нь сканнердах ажлыг хариуцдаг бөгөөд угаасаа Төвийн үүргийг гүйцэтгэдэг; Энэ хоёр нь GATT холболт үүсгэсний дараа гар утас нь цагны алхмын тоо гэх мэт мэдрэгчийн өгөгдлийг унших шаардлагатай үед хоёр интерактив өгөгдөл нь цаганд хадгалагддаг тул энэ үед цаг нь GATT-ийн үүрэг юм. сервер, гар утас нь угаасаа ТХЕХ-ийн үйлчлүүлэгч юм; Мөн цаг нь гар утаснаас SMS дуудлага болон бусад мэдээллийг уншихыг хүсэх үед мэдээллийн асран хамгаалагч нь гар утас болдог тул гар утас нь энэ үед сервер, цаг нь үйлчлүүлэгч юм.

Үйлчилгээ/шинж чанар

Дээр дурдсан зүйлсийн талаар бид аль хэдийн ойлголттой болсон бөгөөд дараа нь бидэнд практик мэдээлэл байна:

  1. Шинж чанар нь өгөгдлийн хамгийн жижиг логик нэгж юм.
  2. Утга болон тодорхойлогчд хадгалагдсан өгөгдлийн шинжилгээг серверийн инженер тодорхойлдог бөгөөд ямар ч тодорхойлолт байхгүй.
  3. Үйлчилгээ/шинж чанар нь өвөрмөц UUID таних тэмдэгтэй, UUID нь 16 бит ба 128 битийн аль алинтай, бидний ойлгох ёстой зүйл бол 16 битийн UUID нь Bluetooth байгууллагаас баталгаажсан бөгөөд худалдан авах шаардлагатай, мэдээжийн хэрэг зарим нийтлэг зүйл байдаг. нэг нь 16 бит UUID. Жишээ нь, Зүрхний цохилтын үйлчилгээний UUID нь 0X180D бөгөөд энэ нь кодонд 0X00001800-0000-1000-8000-00805f9b34fb хэлбэрээр илэрхийлэгдэх ба бусад битүүд нь тогтмол байна. 128 битийн UUID-г өөрчлөх боломжтой.
  4. ТХЕХ-ийн холболтууд нь онцгой.

TOP хүртэл гүйлгэж