- 1、本文档共2页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
2蓝牙耳机应用层状态机的流程设计.PDF
第六章 单芯片蓝牙耳机Headset的软件设计与开发
(7)应用层执行蓝牙HS和AG之间的音频传输。
6.2.2蓝牙耳机应用层状态机的流程设计
在协议栈的通信链路建立后,可以进行应用层通信。我们假设应用层由一个
状态机在运行,如图6-4所示。
HS连接请求 用户接收呼入音频
图6-4应用层状态机
(I) 空闲状态
HS与AG之间可能已经存在ACL链接,但没有RFCOMM信道建立,也没
有SCO链路存在。当AG在内部或用户引发的事件的激发下,便发起链接建立
的请求,HS接收到建立链接的请求时,HS与AGA始建ACL,L2CAP,RFCOMM
链路,建立好 RFCOMM信道后,AG发送一个或多个AT+RING的振铃指示命
令,通知HS用户有呼入的音频连接到达。此时状态将转至来电振铃状态。
(2) 来电振铃状态
此时音频网关AG己经建立了与HS的RFCOMM信道及下层链路,并且HS
已经接收到振铃信号,这表明音频网关要求建立SCO链接,若用户小对振铃做
出响应,音频网关将中止RFCOMM信道,状态将重新回到空闲状态;若用户按
下HS上的应答键,则表示用户接收呼入音频链接的请求,这时HS将发送 NI,
控制命令AT+CKPD给AG,这时两者之间将建立SCO链接,状态转至链接状态。
(3) 呼叫状态
当用户按下HS上的应答键,用户发出呼叫音频网关的请求,这时HS将先
建立ACL链接,接着对音频网关进行SDP查询。若SDP查询成功,HS打开与
AG连接的RFCOMM信道,并发送AT十CKPD建立Sco音频连接。当Sco链
第六章 单芯片蓝牙耳机Headset的软件设计与开发
接建立后,状态将转移到连接状态,若 SCO链接建立失败,状态将转移到空闲
状态。
(4) 连接状态
连接状态下,ACL,L2CAP,RFCOMM都己经建立,而且己经执行了SDP
查询,音频通话就绪。此时用户对HS讲话,语音将通过SCO链路传送至AGo
(5) 链接断开状态
链接断开可以通过HS上的应答键完成,也可以通过AG内部事件或者用户
干预触发产生。无论哪一种原因引起,实质上都是 AG链路释放的结果,如果
HS发出了断开链接的请求,并且发送一个AT命令+CKPD到音频网关断JF链
接,于是音频网关断开 SCO链接和RFCOMM信道。当RFCOMM断开时,状
态将转换到空闲状态。而ACL链接可能处于断开状态,也有可能处于链接状态。
6.3蓝牙耳机软件程序实现
6.3.1通信链路建立过程的程序设计
在通信链路建立的过程中,程序主要采用连接管理器CM进行ACL.L2CAP,
RFCOMM链路的设计,CM内容参见第四章的介绍,其中应用程序与CM之间
的关系见图6-5。连接管理器使用消息队列0作为接收消息,而向消Q、队列 I(应
用程序)发送消息。链路的建立是以应用程序和连接管理器之间的互发消自、为主
体贯穿整个过程。应用程序发送消息指示连接管理器去完成某 一功能,连接管理
器完成任务后将返回一个回答消息,确认任务的完成,并且连接管理器可以根据
自己的需要进行修改。
BIueStack BIueStack
高层 底层
Connection
Application Libraries
Manager
图6-5连接管理器和应用层等的关系
文档评论(0)