蓝牙协议栈 电话免提协议HFP(Hands-Free)概念讲解
零. 概述
主要介紹下藍牙協議棧(bluetooth stack) 電話免提協議HFP(Hands-Free) 協議概念介紹。
一. 聲明
本專欄文章我們會以連載的方式持續更新,本專欄計劃更新內容如下:
第一篇:藍牙綜合介紹 ,主要介紹藍牙的一些概念,產生背景,發展軌跡,市面藍牙介紹,以及藍牙開發板介紹。
第二篇:Transport層介紹,主要介紹藍牙協議棧跟藍牙芯片之前的硬件傳輸協議,比如基于UART的H4,H5,BCSP,基于USB的H2等
第三篇:傳統藍牙controller介紹,主要介紹傳統藍牙芯片的介紹,包括射頻層(RF),基帶層(baseband),鏈路管理層(LMP)等
第四篇:傳統藍牙host介紹,主要介紹傳統藍牙的協議棧,比如HCI,L2CAP,SDP,RFCOMM,HFP,SPP,HID,AVDTP,AVCTP,A2DP,AVRCP,OBEX,PBAP,MAP等等一系列的協議吧。
第五篇:低功耗藍牙controller介紹,主要介紹低功耗藍牙芯片,包括物理層(PHY),鏈路層(LL)
第六篇:低功耗藍牙host介紹,低功耗藍牙協議棧的介紹,包括HCI,L2CAP,ATT,GATT,SM等
第七篇:藍牙芯片介紹,主要介紹一些藍牙芯片的初始化流程,基于HCI vendor command的擴展
第八篇:附錄,主要介紹以上常用名詞的介紹以及一些特殊流程的介紹等。
另外,開發板如下所示,對于想學習藍牙協議棧的最好人手一套。以便更好的學習藍牙協議棧,相信我,學完這一套視頻你將擁有修改任何協議棧的能力(比如Linux下的bluez,Android下的bluedroid)。
-------------------------------------------------------------------------------------------------------------------------
CSDN學院鏈接(進入選擇你想要學習的課程):https://edu.csdn.net/lecturer/5352?spm=1002.2001.3001.4144
藍牙交流扣扣群:970324688
Github代碼:https://github.com/sj15712795029/bluetooth_stack
入手開發板:https://item.taobao.com/item.htm?spm=a1z10.1-c-s.w4004-22329603896.18.5aeb41f973iStr&id=622836061708
藍牙學習目錄:https://blog.csdn.net/XiaoXiaoPengBo/article/details/107727900
--------------------------------------------------------------------------------------------------------------------------
二. 藍牙電話免提(Hands-Free)協議概念介紹
2.1 概念介紹
HFP(Hands-Free Profile),通俗點翻譯就是免提協議,說白了就是藍牙電話協議,可以讓藍牙設備通過協議定義好的AT command控制電話,如接聽、掛斷、拒接、語音撥號等。每個功能都有基于RFCOMM協議棧之上特定的AT command和response.
2.2 HFP協議在整個藍牙中的架構
可以看到HFP是基于RFCOMM協議的,整個Local Device跟Remote Device的交互過程是:
HFP HF <-> RFCOMM <-> L2CAP <-> HCI ACL <-> CHIP <---------> CHIP <->HCI ACL <->? L2CAP <->?RFCOMM <->?HFP AG
2.3?HFP角色介紹
Audio Gateway (AG) – This is the device that is the gateway of the audio, both for input and output. Typical devices acting as Audio Gateways are cellular phones.
Hands-Free unit (HF) – This is the device acting as the Audio Gateway’s remote audio input and output mechanism. It also provides some remote control means
我們通常叫做AG,HF,舉一個最簡單的例子,手機連接我們的藍牙耳機,那么手機中的HFP的角色就是AG,我們平時用的藍牙耳機中的HFP角色就是HF.
2.4 HFP的歷史版本?
通過bluetooth SIG的官網(https://www.bluetooth.com/)我們可以看到一供有以下幾個版本:
v0.95 版本已經被棄用,此版本已經下載不到
V1.0 版本同樣被棄用,并且已經下載不到
V1.5系列的版本(1.5.0/1.5.1)被定義為老版本
V1.6 系列的版本(1.6.0/1.6.1)同樣被定義為版本
V1.7 系列的版本(1.7.0/1.7.1)也被定義為老版本
V1.7.2 版本是HFP的最新版本,在2019年1月21號正式發布(截止到我寫文章這是最新版本)
?在介紹差異之前我們來看下HFP支持的所有Feature
差異我們就從1.5說起吧,其他的下載不到了,其中序號22之前的所有特性都是V1.5版本定義,22.23.24是V1.6.0之后更新,25是V1.7.0之后更新,后面小節我們來意義介紹下特性
總結
以上是生活随笔為你收集整理的蓝牙协议栈 电话免提协议HFP(Hands-Free)概念讲解的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 特殊功能寄存器SFR
- 下一篇: 脚本自动定时打开链接_双12的自动领能量