<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 藍牙無線耳機設(shè)計及VxWorks移植方法

          藍牙無線耳機設(shè)計及VxWorks移植方法

          作者: 時間:2014-11-21 來源:網(wǎng)絡(luò) 收藏

            程序編寫函數(shù)主要包括以下7個。

          本文引用地址:http://www.ex-cimer.com/article/265769.htm

            (1)系統(tǒng)引導(dǎo)函數(shù)

            操作系統(tǒng)在一些板級系統(tǒng)初始化后自動執(zhí)行tUsrRoot()函數(shù),以完成初始化。

            tUsrRoot()

            …… //必要初始化程序

            vInitializeLmp(); //LMP初始化完成

            vInitializeL2cap(); //L2CAP初始化完成

            vInitializeSdp(); //SDP初始化完成

            vInitializeRf(); //RFCOMM初始化完成

            vInitializeHA(); //HeadsetApplication初始化完成

            exit(); //退出

            (2)系統(tǒng)初始化函數(shù)(以L2CAP為例)

            typedet

            {MSG_IDSdpToL2cap;

            MSG_ID L2capToSdp;

            MSG_ID RfToL2cap;

            MSG_ID L2capToRf;

            MSG_lD HAToSdp;

            MSG_ID SdpToHA;

            MSG_ID HAToRf;

            MSG_ID RfToHA;

            }MSG_QUEUE_ID//定義消息隊列1D結(jié)構(gòu)體類型

            MSG_QUEUE_ID MsgQueueld; //定義全局消息隊列ID結(jié)構(gòu)體,用于存放每個消息隊列的ID

            vInitlalizeL2caD();//L2CAP初始化,包括初始化全局變量、創(chuàng)建定時器、創(chuàng)建消息

            //隊列、創(chuàng)建并啟動任務(wù)

            (3)LMP軟件設(shè)計

            基帶程序運行在芯片的信號處理單元中,而LMP程序運行在芯片的微處理器中,它們通過郵箱來交換信息。只要任何一方向郵箱發(fā)送了信息,郵箱就會產(chǎn)生中斷信號,另外一方可以在中斷服務(wù)程序中進行信息讀取和處理。其處理函數(shù)為;

            vLmpDealFromBB()

            //處理來自BaseBand層的消息以建立連接,對來自BaseBand層

            //的操作碼

            決定接受與否,并進行鑒權(quán)、加密、處理或斷開等操作

            (4)L2CAP軟件的設(shè)計

            tL2capDealMsgFromSdp()

            //處理來自SDP層的消息SdpToL2eap,生成L2CAP數(shù)據(jù)包,把數(shù)據(jù)傳BaseBand層

            tL2capDealMsgFromRf()

            //處理來自RFCOMM層的消息RfToL2cap,生成L2CAP數(shù)據(jù)包,把數(shù)據(jù)傳BaseBand層

            vL2capDealMsgFromBB()

            //處理來自BaseBand層的消息,在處理器郵箱中斷程序被調(diào)用

            (5)SDP軟件的設(shè)計

            tSdpDealMsgFromL2cap()

            //處理來自L2CAP的消息L2capToSdp,并上報搜索到的服務(wù)的屬性

            tSdpDealMsgFromHA()

            //處理來自HeadsetApplieation的消息HAToSdp,對上報信息進行應(yīng)答

            (6)RFOOMM軟件的設(shè)計

            tRfDealMsgFromHA()

            //處理來自HeadsetApplication的消息HAToRf,生成RFCOMM數(shù)據(jù)包,傳送給L2CAP

            tRfDealMsgFromL2cap()

            //處理來自L2CAP的消息L2capToRf,對不同的幀進行處理

            (7)HeadsetApplication軟件的設(shè)計

            tHADealMsgFronaSdp()

            //處理來自SDP的消息SdpToHA,判斷是否正常并處理

            tHADeaIMsgFromRf()

            //處理來自RFCMM的消息RfToHA,對AT命令及其應(yīng)答作出處理

            5 語音傳輸建立過程

            耳機系統(tǒng)工作時總是藍牙語音網(wǎng)關(guān)(AG)和藍牙耳機(HS)成對出現(xiàn)的。其通信所用到的協(xié)議棧及實體如圖4所示。

            

           

            藍牙設(shè)備連結(jié)的建立遵循底層到高層的原則,即搜索藍牙設(shè)備、建立鏈路、服務(wù)搜索、建立信道、建立連接和數(shù)據(jù)傳輸。

            以下是音頻連接建立的全過程。(以AG主動發(fā)起連接請求為例。)

            ①AG首先發(fā)起查詢,通過查詢AG獲得HS的藍牙地址。

           ?、贏G在應(yīng)用層的驅(qū)動下向查詢到的HS發(fā)起一個page進程。當接收到HS返回的應(yīng)答信號時,AG與HS之間的ACL鏈接已經(jīng)成功建立。

           ?、垡坏〢CL鏈接建立,即可以被用來傳送振鈴信號。振鈴信號的發(fā)送是通過AT命令RING來完成的。

           ?、蹵CL鏈接好后,接著建立L2CAP鏈路。AG首先在信令信道上發(fā)送一個鏈接請求信令L2CAP_req,要求建立信道標號為0x0040的L2CAP。當HS返回鏈接響應(yīng)信號時,表明0x0040信道已經(jīng)建立好。然后對此信道進行配置,配置完信道后,就可以利用此CID(信道標識符)為0x0040的L2CAP信道進行SDP查詢。

            ⑤AG在L2CAP信道上發(fā)送一個SDP查詢包。SDP查詢包將查詢SDP服務(wù)器端HS是否具有所需要的服務(wù)。若查詢成功,在ACL鏈路上,AG再建立一條標號為0x0041的l.2CAP鏈路,用來傳輸RFCOMM數(shù)據(jù);同時,斷開用作SDP查詢的標號為0x0040的L2CAP鏈路。

            ⑥當CID為0x004l的L2CAP信道建立好之后,首先建立控制信道DICIO,AG在信道上發(fā)送一個SABM幀,即要求建立RFCOMM層上的Channel O。如果響應(yīng)方HS希望建立鏈接,返回一個VA幀,表明已經(jīng)建立好了Channel 0這條RFCOMM信道。此信道為控制信道,用來傳送攜帶控制信息和命令的UIM幀。如果響應(yīng)方HS不希望建立鏈接,返回一個DM幀。其次建立數(shù)據(jù)信道,先是對數(shù)據(jù)傳送信道的參數(shù)進行協(xié)商,協(xié)商命令PN參數(shù)包括對將要建立的信道Channel 1的優(yōu)先級,最大幀長等,當雙方協(xié)商好后建立傳輸數(shù)據(jù)的信道Channell。

           ?、咄ㄟ^RFooMM信道傳輸HS控制層的AT命令,即在RFCOMM數(shù)據(jù)傳送信道Channe1上利用UIH幀傳送AT+CKPD命令。當接收到對方的響應(yīng)后,就可以開始建立SCO鏈接。

           ?、郒CI(主機控制接口)發(fā)一個WRITE_VOICE_SETTING命令,對音頻狀態(tài)進行一些設(shè)置。當接收到AG的建立SC0鏈接

            的請求時,若HS允許,發(fā)送一個接收的HCI命令,在命令完成之后,傳輸音頻信號的SC0鏈路就建立好了,此時就可以進行語音通信。

            結(jié)語

            本文給出了藍牙及藍牙耳機系統(tǒng)的基本概念及其在軟硬件方面的具體實現(xiàn)。藍牙耳機使用戶擺脫線纜的束縛,能夠在較大的自由空間內(nèi)通話。由于采用專用的聲音編解碼芯片和標準音頻取樣率44.1 kHz,并經(jīng)過先進的信號處理技術(shù),能夠使聲音效果接近CD音質(zhì),這樣也使藍牙耳機真正取代有線耳機成為可能。

          藍牙技術(shù)相關(guān)文章:藍牙技術(shù)原理

          上一頁 1 2 下一頁

          關(guān)鍵詞: 藍牙 VxWorks

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();