linux下bluetooth程式設計(一)基礎概念

Vincent_Song發表於2011-09-17
 

一:Bluetooth基本概念:

 

Bluetooth是愛立信、諾基亞、東芝、IBM和Intel 5家公司在1998年聯合推出的一項無線網路技術。其宗旨是提供一種短距離、低成本的無線傳輸應用技術。在行業協會籌備階段,需要一個極具有表現力的名字來命名這項高新技術。行業組織人員,在經過一夜關於歐洲歷史和未來無限技術發展的討論後,有些人認為用Blatand國王的名字命名再合適不過了。Blatand國王將現在的挪威,瑞典和丹麥統一起來;就如同這項即將面世的技術,將標準不一的短距離無線傳輸技術統一起來。

Intel負責半導體晶片和傳輸軟體的開發,愛立信負責無線射頻和行動電話軟體的開發,IBM和東芝負責膝上型電腦介面規格的開發。

 

藍芽是無線資料和語音傳輸的開放式標準,它將各種通訊裝置、計算機及其終端裝置、各種數字資料系統、甚至家用電器採用無線方式聯接起來。它的傳輸距離為10cm~10m,如果增加功率或是加上某些外設便可達到100m的傳輸距離。它採用2.4GHz ISM頻段和調頻、跳頻技術,使用權向糾錯編碼、ARQ、TDD和基帶協議。TDMA每時隙為0.625μs,基帶符合速率為1Mb/s。藍芽支援64kb/s實時語音傳輸和資料傳輸,語音編碼為CVSD,發射功率分別為1mW、2.5mW和100mW,並使用全球統一的48位元的裝置識別碼。由於藍芽採用無線介面來代替有線電纜連線,具有很強的移植性,並且適用於多種場合,加上該技術功耗低、對人體危害小,而且應用簡單、容易實現,所以易於推廣。

 

藍芽技術的系統結構分為三大部分:底層硬體模組、中間協議層和高層應用。底層硬體部分包括無線跳頻(RF)、基帶(BB)和鏈路管理(LM)。無線跳頻層通過2.4GHz無需授權的ISM頻段的微波,實現資料位流的過濾和傳輸,本層協議主要定義了藍芽收發器在此頻帶正常工作所需要滿足的條件。基帶負責跳頻以及藍芽資料和資訊幀的傳輸。鏈路管理負責連線、建立和拆除鏈路並進行安全控制。

 

關於bluetooth協議棧,接下來再談。

 

 

當前已經實現的Bluetooth協議棧有以下各種:

1. Widcomm:  第一個windows上的協議棧,由Widcomm公司開發,也就是現在的Broadcom.

 
2. Microsoft Windows stack: Windows XP SP2中包括了這個內建的協議棧,開發者也可以呼叫其API開發第三方軟體。

 
3. Toshiba stack: 它也是基於Windows的,不支援第三方開發,但它把協議棧授權給一些laptop商(sony, asus等,我的本本上就是Toshiba的)。它支援的Profile有: SPP, DUN, FAX, LAP, OPP, FTP, HID, HCRP, PAN, BIP, HSP, HFP , A2DP, AVRCP, GAVDP)

 
4. BlueSoleil: 著名的IVT公司的產品.該產品可以用於桌面和嵌入式,他也支援第三方開發,DUN, FAX, HFP, HSP, LAP, OBEX, OPP, PAN SPP, AV, BIP, FTP, GAP, HID, SDAP, and SYNC。

5. Bluez: Linux官方協議棧,該協議棧的上層用Socket封裝,便於開發者使用,通過DBUS與其它應用程式通訊。

6. Affix: NOKIA公司的協議棧,在Symbian系統上執行.

 

7. BlueDragon:東軟公司產品,好像2002年6月就通過了藍芽的認證,支援的Profile:SDP、Serial-DevB、AVCTP、AVRCP-Controller、AVRCP-Target、Headset-AG、Headset-HS、OPP-Client、OPP-Server、CT-GW、CT-Term、Intercom、FT-Server、FT-Client、GAP、SDAP、Serial-DevA、AVDTP、GAVDP、A2DP-Source、A2DP-Sink.

8. BlueMagic:美國Open Interface 公司for portable embedded divce的協議棧,iphone(apple),nav-u(sony)等很多電子產品都用該商業的協議棧,BlueMagic 3.0是第一個通過bluetooth 協議棧1.1認證的協議棧,那麼我現在就在用它,那麼該棧用起來簡單,API清晰明瞭。實現了的profile有:HCI,L2CAP,RFCOMM,A/V,Remote,Control,A/V,Streaming,BIP,BPP,DUN,FAX,FTP,GAP,Hands-Free,and,Headset,HCRP,HID,OBEX,OPP,PAN,BNEP,PBAP,SAP,SPP,Synchronization,SyncML,Telephony,XML.
9. BCHS-Bluecore Host Software: 藍芽晶片CSR的協議棧,同時他也提供了一些上層應用的Profile的庫,當然了它也是為嵌入式產品了,支援的Profile有:A2DP,AVRCP,PBAP,BIP,BPP,CTP,DUN,FAX,FM API,FTP GAP,GAVDP,GOEP,HCRP,Headset,HF1.5,HID,ICP,JSR82,LAP Message Access Profile,OPP,PAN,SAP,SDAP,SPP,SYNC,SYNC ML。

10. Windows CE:微軟給Windows CE開發的協議棧,但是windows ce本身也支援其它的協議棧

11. BlueLet:IVT公司for embedded product的清量級協議棧。

相關文章