《電子技術應用》
您所在的位置:首頁 > 通信與網絡 > 設計應用 > VxWorks移植方法在藍牙無線耳機設計中的應用
VxWorks移植方法在藍牙無線耳機設計中的應用
EEworld
EEworld
摘要: 藍牙耳機是一種無線語音傳輸技術,是基于耳機在無線技術方面的延伸。藍牙耳機的應用范圍除了手機以外,PDA...
關鍵詞: 藍牙 Vxworks 藍牙無線
Abstract:
Key words :

關鍵字:VxWorks 藍牙無線

  藍牙耳機是一種無線語音傳輸技術,是基于耳機在無線技術方面的延伸。藍牙耳機的應用范圍除了手機以外,PDA、無繩電話應用、汽車免提工具、電話終端等,也是藍牙耳機發揮技術優勢的應用領域。本文設計的藍牙耳機支持藍牙規范1.2版本,傳輸距離達10 m,傳輸速率達723.2 kb/s,并且具有低功耗和(幾乎)無輻射等技術優點和優勢。

  1 藍牙技術

  藍牙作為一種低成本、短距離的無線連接技術標準,是由Ericsson、IBM、Intel、Nokia和Toshiba五家公司共同倡導的一種全球無線技術標準,是一種無線數據與語音通信的開放性全球規范。它以低成本的短距離無線連接為基礎,為固定設備與移動設備通信環境建立一個特別連接。其實質是建立通用的無線空中接口及其控制軟件的公開標準,實現設備問的電纜替代。

  藍牙技術規范包括協議和應用規范兩個部分。協議定義了各功能元素各自的工作方式,整個藍牙協議體系結構分為4層,即核心協議層、線纜替代協議層、電話控制協議層和采納的其他協議層;應用規范則闡述了為了實現一個特定的應用模型,各層協議間的運轉協同機制。較典型的應用規范有撥號網絡、耳機(headset)、局域網訪問和文件傳輸等。藍牙耳機的協議棧原理如圖1所示。

藍牙耳機的協議棧原理

藍牙耳機電路原理框圖

  2 硬件設計

  硬件電路信號處理與控制部分采用Zeevo公司的基于ARM7的音頻處理器ZV4301。ZV4301處理器是在一個單芯片收發器上加入一個集成RF、數字信號處理、通信處理和運算及控制處理功能的48 MHz APM7微處理器,片外擴展閃存,以實現需要技術和高度最佳化的音頻處理。

  編解碼芯片采用飛利浦公司的UDAl380音頻芯片。UDAl380是一顆專為便攜式產品所設計的單芯片立體聲音頻編解碼器,可以提供立即可用的先進音頻功能。這顆音頻編解碼器具有24位數據路徑、多重時鐘支持、DC偏移消除、支持多重數據格式以及數字靜音檢測等集成功能。本設計中,UDAl380利用與微控器接口作音控處理.并利用L3接口來控制音量。

  3 I2S總線

  本設計在硬件電路上使用基于I2S總線的音頻系統體系結構。I2S(Inter-IC Sound bus)是飛利浦公司提出的串行數字音頻總線協議。

  I2S總線只處理聲音數據,其他信號(如控制信號)必須單獨傳輸。為了使芯片的引腳盡可能少,I2S只使用了三根串行總線。這三根線分別是:提供分時復用功能的數據線(SD)、字段選擇線(聲道選擇WS)、時鐘信號線(SCK)。

  此設計中采用電源統一供電,ZV4301作為主設備,UDAl380作為從設備。ZV4301使用3個通用I/O口來模擬I2S總線。其讀寫I2S總線的數據主要包括以下幾個函數;

  word_selection(); //字選擇函數
serial_clock(); //時鐘信號函數
serial_data(); // 串行數據函數
shift_register(); //寄存器移位函數

I2S總線讀寫時序

  4 軟件設計

  VxWorks操作系統是美國WindRiver公司于1983年設計開發的一種嵌入式實時操作系統。良好的持續發展能力、支持多種硬件環境、高性能的內核以及友好的用戶開發環境,使之成為所有獨立于處理器實時系統中最具特色的操作系統。

  在該設計中,軟件協議全部下載到藍牙設備內核處理器的外置閃存中,操作通過人機接口控制。基于VxWorks的軟件編寫工作主要包括:BSP包的改動、程序的編寫和操作系統的裁減。由于VxWorks的高度靈活性,可以很容易地對這一操作系統進行定制或作適當開發,來滿足系統的實際應用需要。BSP包的改動指根據目標硬件實際配置修改系統的配置參數宏(MAC-RO),主要修改config.h、makefile.h、bspname.h文件。

  程序編寫函數主要包括以下7個。

  (1)系統引導函數

  VxWorks操作系統在一些板級系統初始化后自動執行tUsrRoot()函數,以完成初始化。

  tUsrRoot()
…… //必要初始化程序
vInitializeLmp(); //LMP初始化完成
vInitializeL2cap(); //L2CAP初始化完成
vInitializeSdp(); //SDP初始化完成
vInitializeRf(); //RFCOMM初始化完成
vInitializeHA(); //HeadsetApplication初始化完成
exit(); //退出

  (2)系統初始化函數(以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結構體類型
MSG_QUEUE_ID MsgQueueld; //定義全局消息隊列ID結構體,用于存放每個消息隊列的ID
vInitlalizeL2caD();//L2CAP初始化,包括初始化全局變量、創建定時器、創建消息
//隊列、創建并啟動任務

  (3)LMP軟件設計

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

  vLmpDealFromBB()
//處理來自BaseBand層的消息以建立連接,對來自BaseBand層
//的操作碼

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

(4)L2CAP軟件的設計

  tL2capDealMsgFromSdp()
//處理來自SDP層的消息SdpToL2eap,生成L2CAP數據包,把數據傳BaseBand層
tL2capDealMsgFromRf()
//處理來自RFCOMM層的消息RfToL2cap,生成L2CAP數據包,把數據傳BaseBand層
vL2capDealMsgFromBB()
//處理來自BaseBand層的消息,在處理器郵箱中斷程序被調用

  (5)SDP軟件的設計

  tSdpDealMsgFromL2cap()
//處理來自L2CAP的消息L2capToSdp,并上報搜索到的服務的屬性
tSdpDealMsgFromHA()
//處理來自HeadsetApplieation的消息HAToSdp,對上報信息進行應答

  (6)RFOOMM軟件的設計

  tRfDealMsgFromHA()
//處理來自HeadsetApplication的消息HAToRf,生成RFCOMM數據包,傳送給L2CAP
tRfDealMsgFromL2cap()
//處理來自L2CAP的消息L2capToRf,對不同的幀進行處理

  (7)HeadsetApplication軟件的設計

  tHADealMsgFronaSdp()
//處理來自SDP的消息SdpToHA,判斷是否正常并處理
tHADeaIMsgFromRf()
//處理來自RFCMM的消息RfToHA,對AT命令及其應答作出處理

  5 語音傳輸建立過程

  藍牙耳機系統工作時總是藍牙語音網關(AG)和藍牙耳機(HS)成對出現的。其通信所用到的協議棧及實體如圖4所示。

通信所用到的協議棧及實體

   藍牙設備連結的建立遵循底層到高層的原則,即搜索藍牙設備、建立鏈路、服務搜索、建立信道、建立連接和數據傳輸。

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

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

  ②AG在應用層的驅動下向查詢到的HS發起一個page進程。當接收到HS返回的應答信號時,AG與HS之間的ACL鏈接已經成功建立。

  ③一旦ACL鏈接建立,即可以被用來傳送振鈴信號。振鈴信號的發送是通過AT命令RING來完成的。

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

  ⑤AG在L2CAP信道上發送一個SDP查詢包。SDP查詢包將查詢SDP服務器端HS是否具有所需要的服務。若查詢成功,在ACL鏈路上,AG再建立一條標號為0x0041的l.2CAP鏈路,用來傳輸RFCOMM數據;同時,斷開用作SDP查詢的標號為0x0040的L2CAP鏈路。   ⑥當CID為0x004l的L2CAP信道建立好之后,首先建立控制信道DICIO,AG在信道上發送一個SABM幀,即要求建立RFCOMM層上的Channel O。如果響應方HS希望建立鏈接,返回一個VA幀,表明已經建立好了Channel 0這條RFCOMM信道。此信道為控制信道,用來傳送攜帶控制信息和命令的UIM幀。如果響應方HS不希望建立鏈接,返回一個DM幀。其次建立數據信道,先是對數據傳送信道的參數進行協商,協商命令PN參數包括對將要建立的信道Channel 1的優先級,最大幀長等,當雙方協商好后建立傳輸數據的信道Channell。

  ⑦通過RFooMM信道傳輸HS控制層的AT命令,即在RFCOMM數據傳送信道Channe1上利用UIH幀傳送AT+CKPD命令。當接收到對方的響應后,就可以開始建立SCO鏈接。

  ⑧HCI(主機控制接口)發一個WRITE_VOICE_SETTING命令,對音頻狀態進行一些設置。當接收到AG的建立SC0鏈接的請求時,若HS允許,發送一個接收的HCI命令,在命令完成之后,傳輸音頻信號的SC0鏈路就建立好了,此時就可以進行語音通信。

  結語

  由于采用專用的聲音編解碼芯片和標準音頻取樣率44.1 kHz,并經過先進的信號處理技術,能夠使聲音效果接近CD音質,這樣也使藍牙耳機真正取代有線耳機成為可能。

 

 

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
亚洲免费在线观看视频| 久久久久久久久综合| 欧美一区二区三区免费在线看| 91久久精品日日躁夜夜躁欧美| 国产日韩欧美精品在线| 欧美系列电影免费观看| 欧美日韩亚洲三区| 欧美精品一区在线发布| 欧美国产精品一区| 欧美成人福利视频| 久久综合久色欧美综合狠狠| 久久久国产视频91| 久久精品国产99精品国产亚洲性色| 性欧美1819sex性高清| 亚洲欧美在线免费| 午夜精品一区二区三区电影天堂| 亚洲一区二区少妇| 亚洲午夜电影在线观看| 中日韩美女免费视频网站在线观看| 亚洲美洲欧洲综合国产一区| 亚洲日本免费| 日韩一区二区电影网| 一本久道久久久| 在线一区二区三区四区五区| 亚洲神马久久| 亚洲综合久久久久| 欧美亚洲一区二区在线| 欧美一区日本一区韩国一区| 久久精品欧洲| 美女网站在线免费欧美精品| 欧美成人网在线| 欧美乱人伦中文字幕在线| 欧美日韩在线直播| 国产精品免费小视频| 国产麻豆午夜三级精品| 国产亚洲亚洲| 尤物九九久久国产精品的特点 | 国产精品视频一区二区三区| 国产精品视频久久久| 国产欧美日韩亚洲| 国产日韩精品一区二区三区在线| 国产欧美日韩一区二区三区在线观看 | 在线天堂一区av电影| 亚洲一区二区三区影院| 久久成人资源| 日韩视频在线免费观看| 亚洲欧美国产日韩天堂区| 久久精品国产亚洲一区二区| 媚黑女一区二区| 欧美丝袜一区二区| 国产一区二区三区四区三区四| 亚洲国产精品嫩草影院| 一区二区三区成人| 欧美一区二区在线免费观看| 亚洲毛片在线观看| 午夜久久电影网| 你懂的成人av| 国产精品性做久久久久久| 精品51国产黑色丝袜高跟鞋| 日韩小视频在线观看专区| 亚洲欧美综合国产精品一区| 亚洲日本成人女熟在线观看| 亚洲欧美一区二区三区在线| 老巨人导航500精品| 欧美三区在线| 狠狠干综合网| 一区二区激情视频| 久久精品成人| 亚洲性夜色噜噜噜7777| 久久精品国产一区二区三| 欧美理论电影在线播放| 国产一区二区三区精品欧美日韩一区二区三区| 亚洲国产99| 性感少妇一区| 亚洲图片你懂的| 老司机免费视频久久| 国产精品久久久久毛片大屁完整版| 尤物yw午夜国产精品视频明星| 亚洲视频在线观看一区| 亚洲日韩欧美视频一区| 久久成人18免费网站| 欧美精品一区二区三区一线天视频| 国产欧美日本一区视频| 亚洲美女91| 亚洲国产精品综合| 久久电影一区| 国产精品国产三级国产普通话三级 | 亚洲国产成人av在线| 小黄鸭精品密入口导航| 欧美日韩国产精品自在自线| 国内精品久久久久伊人av| 亚洲天堂av在线免费| 日韩视频中文字幕| 麻豆国产精品777777在线| 国产乱子伦一区二区三区国色天香| 亚洲免费观看| 亚洲人成网站色ww在线| 久久国产一区二区| 国产精品久久久久久影视 | 欧美一区=区| 亚洲欧美日韩电影| 欧美日韩精品免费在线观看视频 | 伊人久久亚洲美女图片| 亚洲男人的天堂在线| 亚洲一区二区三区四区在线观看| 欧美成人精品福利| 韩国美女久久| 欧美在线免费看| 欧美在线一级va免费观看| 欧美亚洲成人精品| 亚洲乱码国产乱码精品精天堂 | 国产日韩欧美高清| 亚洲系列中文字幕| 亚洲专区一区| 欧美新色视频| 夜夜夜精品看看| 一区二区三区视频观看| 欧美日韩精品欧美日韩精品| 亚洲精品美女| 9久re热视频在线精品| 欧美精品播放| 亚洲欧洲在线视频| 日韩一二三在线视频播| 欧美激情欧美狂野欧美精品 | 亚洲国产三级网| 蜜桃av一区二区在线观看| 一区在线影院| 亚洲国内精品在线| 欧美肥婆bbw| 亚洲国产一区二区视频| 亚洲精品视频在线| 欧美美女bb生活片| 日韩一区二区精品| 亚洲在线观看免费视频| 国产精品免费小视频| 亚洲免费影视第一页| 久久国产日韩| 激情小说另类小说亚洲欧美| 亚洲国产精品国自产拍av秋霞 | 国产精品揄拍一区二区| 欧美一区二区日韩一区二区| 久久在线视频在线| 亚洲激情av| 亚洲性夜色噜噜噜7777| 国产精品久久久久永久免费观看| 亚洲欧美激情四射在线日| 久久久久九九九| 亚洲成人在线视频网站| 一本一本久久| 国产精品日韩在线观看| 欧美在线影院| 美国十次了思思久久精品导航| 亚洲欧洲在线看| 亚洲欧美日韩一区二区在线 | 亚洲日本激情| 欧美日韩一区二区视频在线观看| 亚洲午夜精品一区二区三区他趣| 久久er精品视频| 雨宫琴音一区二区在线| 一本久久综合亚洲鲁鲁| 国产精品亚洲综合久久| 久久gogo国模啪啪人体图| 欧美激情aⅴ一区二区三区| 一本到12不卡视频在线dvd| 欧美一区二区免费| 亚洲成色www久久网站| 亚洲婷婷综合色高清在线| 国产欧美日韩精品专区| 亚洲激情网站| 国产精品国产一区二区| 亚洲第一久久影院| 欧美午夜精品久久久久免费视| 欧美一级在线播放| 欧美精品在线播放| 午夜精品久久久久久久99热浪潮| 欧美gay视频| 亚洲一区二区三| 欧美大色视频| 午夜激情亚洲| 欧美另类专区| 久久国产精品99久久久久久老狼 | 亚洲国产日韩欧美一区二区三区| 欧美日韩另类视频| 欧美在线视频全部完| 欧美日韩一区二区三区在线看| 欧美亚洲日本一区| 欧美日韩精品二区第二页| 欧美中文字幕在线播放| 欧美日韩国产不卡| 欧美资源在线| 国产精品xvideos88| 亚洲激情啪啪| 国产日韩一区二区三区在线| 一区二区三欧美| 狠狠噜噜久久| 亚洲免费在线观看| 最新中文字幕一区二区三区| 久久九九电影| 亚洲一区二区在线播放| 欧美理论在线播放|