日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

linux 蓝牙编程,实战Linux Bluetooth编程(三) HCI层编程

發布時間:2025/4/16 linux 53 豆豆
生活随笔 收集整理的這篇文章主要介紹了 linux 蓝牙编程,实战Linux Bluetooth编程(三) HCI层编程 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1. HCI層協議概述:

HCI提供一套統一的方法來訪問Bluetooth底層。如圖所示:

從圖上可以看出,Host Controller Interface(HCI)??就是用來溝通Host和Module。Host通常就是PC, Module則是以各種物理連接形式(USB,serial,pc-card等)連接到PC上的bluetooth Dongle。

在Host這一端:application,SDP,L2cap等協議都是軟件形式提出的(Bluez中是以kernel層程序)。在Module這一端:Link Manager, BB, 等協議都是硬件中firmware提供的。

而HCI則比較特殊,它一部分在軟件中實現,用來給上層協議和程序提供訪問接口(Bluez中,hci.c hci_usb.c,hci_sock.c等).另一部分也是在Firmware中實現,用來將軟件部分的指令等用底層協議明白的方式傳遞給底層。

居于PC的上層程序與協議和居于Modules的下層協議之間通過HCI溝通,有4種不同形式的傳輸:Commands, Event, ACL Data, SCO/eSCO Data。

1.1. HCI Command:

HCI Command是Host向Modules發送命令的一種方式。HCI Command Packet結構如下:

OpCode用來唯一標識HCI Command.它由2部分組成,10bit的Opcode Command. 6bit的Opcode Group。

1.1.1: OpCode Group:

Linux Kernel(BlueZ)中,~/include/net/bluetooth/hci.h中定義了OpCode Group。

#define OGF_LINK_CTL?0x01

#define OGF_LINK_POLICY?0x02

#define OGF_HOST_CTL?0x03

#define OGF_INFO_PARAM?0x04

#define OGF_STATUS_PARAM?0x05

它們代表了不同的Command Group:

OGF_LINK_CTL: Link control,這個Command Group中的Command允許Host控制與其它bluetooth device 的連接。

OGF_LINK_POLICY?:Link Policy。這個Command Group中的Command允許調整Link Manager control.

OGF_HOST_CTL: Control and Baseband.

1.1.2: Opcode Command:

用來在同一個Group內唯一識別Command。~/include/net/bluetooth/hci.h中定義。

1.2: HCI Event:

Modules向Host發送一些信息,使用HCI Event。Event Packet結構如下:

HCI Event分3種:Command complete Event, Command States Event,Command Subsequently Completend.

Command complete Event: 如果Host發送的Command可以立刻有結果,則會發送此類Event。也就是說,如果發送的Command只與本地Modules有關,不與remote設備打交道,則使用Command complete Event。例如:HCI_Read_Buffer_Size.

Command States Event:如果Host發送

總結

以上是生活随笔為你收集整理的linux 蓝牙编程,实战Linux Bluetooth编程(三) HCI层编程的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。