簡(jiǎn)述藍(lán)牙協(xié)議棧-完整版
項(xiàng)目剛好做到藍(lán)牙了,也不是很忙,講講自己最近一段時(shí)間做的東西。
提到協(xié)議棧,都會(huì)想到與開(kāi)放式系統(tǒng)互聯(lián)(OSI)協(xié)議棧的 ,OSI協(xié)議棧定義了廠商們?nèi)绾尾拍苌a(chǎn)可以與其它廠商的產(chǎn)品一起工作的產(chǎn)品。協(xié)議棧是指一組協(xié)議的集合,舉個(gè)例子,把大象裝到冰箱里,總共要3步。每步就是一個(gè)協(xié)議,3步組成一個(gè)協(xié)議棧。把應(yīng)用層數(shù)據(jù)包發(fā)出去,也要好幾步,TCP/UDP頭,IP頭,ether頭,每步也是一個(gè)協(xié)議。另外每層都有一些特殊的協(xié)議。所有這些統(tǒng)稱協(xié)議棧。
簡(jiǎn)單的來(lái)說(shuō),藍(lán)牙協(xié)議棧就是SIG(Special Intersted Group)定義的一組協(xié)議的規(guī)范,目標(biāo)是允許遵循規(guī)范的藍(lán)牙應(yīng)用應(yīng)用能夠進(jìn)行相互間操作,圖1-1就是完整的藍(lán)牙協(xié)議棧和部分profile:
圖1-1
接著介紹下藍(lán)牙里面profile的定義,profile既是配置文件,配置文件定義了可能的應(yīng)用,藍(lán)牙配置文件表達(dá)了一般行為,藍(lán)牙設(shè)備可以通過(guò)這些行為與其它設(shè)備進(jìn)行通信。藍(lán)牙技術(shù)定義了廣泛的配置文件,描述了許多不同類型的使用案例。按照藍(lán)牙規(guī)格中提供的指導(dǎo),開(kāi)發(fā)商可以創(chuàng)建應(yīng)用程序以與其它符合藍(lán)牙規(guī)格的設(shè)備協(xié)同工作。 到目前為止,藍(lán)牙一共有22個(gè)profile,在這里我就不詳細(xì)介紹圖1-1的協(xié)議和每個(gè)Profile了,在www.bluetooth.com上有詳細(xì)的文檔說(shuō)明。
在這里我想詳細(xì)介紹下已經(jīng)實(shí)現(xiàn)了r的協(xié)議棧。
- Widcomm: 第一個(gè)windows上的協(xié)議棧,由Widcomm公司開(kāi)發(fā),也就是現(xiàn)在的Broadcom .
- Microsoft Windows stack: Windows XP SP2中包括了這個(gè)內(nèi)建的協(xié)議棧,開(kāi)發(fā)者也可以調(diào)用其API開(kāi)發(fā)第三方軟件。
- Toshiba stack: 它也是基于Windows的,不支持第三方開(kāi)發(fā),但它把協(xié)議棧授權(quán)給一些laptop商(sony, asus等,我的本本上就是Toshiba的)。它支持的Profile有: SPP, DUN, FAX, LAP, OPP, FTP, HID, HCRP, PAN, BIP, HSP, HFP , A2DP, AVRCP, GAVDP)
- BlueSoleil: 著名的IVT公司的產(chǎn)品,這個(gè)應(yīng)該是個(gè)中國(guó)公司,值得自豪。該產(chǎn)品可以用于桌面和嵌入式,他也支持第三方開(kāi)發(fā),DUN, FAX, HFP, HSP, LAP, OBEX, OPP, PAN SPP, AV, BIP, FTP, GAP, HID, SDAP, and SYNC。
- Bluez: Linux官方協(xié)議棧,該協(xié)議棧的上層用Socket封裝,便于開(kāi)發(fā)者使用,通過(guò)DBUS與其它應(yīng)用程序通信。那么最近我的工作就是移植bluez 4.x到板子上。
- Affix: NOKIA公司的協(xié)議棧,在Symbian系統(tǒng)上運(yùn)行,具體的沒(méi)找到資料
- BlueDragon:東軟公司產(chǎn)品,值得驕傲,好像2002年6月就通過(guò)了藍(lán)牙的認(rèn)證,支持的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,但到現(xiàn)在我沒(méi)怎么聽(tīng)過(guò)這個(gè)協(xié)議棧的應(yīng)用,難得是個(gè)爛尾樓??
- BlueMagic:美國(guó)Open Interface 公司for portable embedded divce的協(xié)議棧,iphone(apple),nav-u(sony)等很多電子產(chǎn)品都用該商業(yè)的協(xié)議棧,BlueMagic 3.0是第一個(gè)通過(guò)bluetooth 協(xié)議棧1.1認(rèn)證的協(xié)議棧,那么我現(xiàn)在就在用它,那么該棧用起來(lái)簡(jiǎn)單,API清晰明了。實(shí)現(xiàn)了的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.
- BCHS-Bluecore Host Software: 藍(lán)牙芯片CSR的協(xié)議棧,同時(shí)他也提供了一些上層應(yīng)用的Profile的庫(kù),當(dāng)然了它也是為嵌入式產(chǎn)品了,支持的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。
- Windows CE:微軟給Windows CE開(kāi)發(fā)的協(xié)議棧,但是windows ce本身也支持其它的協(xié)議棧
- BlueLet:IVT公司for embedded product的清量級(jí)協(xié)議棧。
我們是基于BlueMagic3的,最近呢也在研究bluez 4的移植和profile工作,后面我會(huì)再針對(duì)bluez做詳細(xì)介紹。
時(shí)間有限,簡(jiǎn)單的寫(xiě)了下,如果各位網(wǎng)友知道一些協(xié)議棧的動(dòng)態(tài),或?qū)ξ覍?xiě)的有補(bǔ)充,請(qǐng)給我留言,我會(huì)及時(shí)改正,
posted on 2008-12-14 11:50 攀升 閱讀(14628) 評(píng)論(4) 編輯 收藏 引用 所屬分類: Linux