ce上的藍芽開發,分為驅動和應用。ce下的藍芽整體比較複雜,有提供一些元件可以直接使用,相對於在mobile5.0上面還是麻煩多了,一些藍芽的應用,對於我們這些不是專業做藍芽方面的人員來說,難於入手。跌跌碰碰總算也是實現了藍芽的一些基本功能,滿足藍芽的基本應用(ce5.0下通過pda上的藍芽和gps藍芽通訊,藍芽裝置間檔案傳輸等)。在完成藍芽模組,做的記錄不多,把以前一些記錄整理上來,作為ce上藍芽開發參考。
藍芽協議棧的體系結構:
rfcomm (serial cable emulation protocol) 是藍芽的ts07.10協議的介面卡。這服務是基於com埠模擬工具和源於點對點協議。多路技術和流控基於裝置和應用程式也在這裡執行。
l2cap (logical link control and adaptation protocol) 是底層基於藍芽通訊多路技術協議的連線。l2cpa不執行流控。它依賴藍芽硬體提供的乙個可靠的裝置對裝置基帶鏈路。
ce下的藍芽
藍芽裝置驅動作為乙個流裝置驅動被執行,它被device.exe載入。藍芽協議棧包含在微軟的pb底下。最後的應用程式和包依賴於oem和設計模板。這協議棧是有標準元件的,所以它可以使用作為乙個多用途的軟體棧,被預設連線,或它可以被分開使用。(可以自己定製?)
預設連線在下面的兩個dll
btd.dll是藍芽裝置驅動包含所有的協議層。它被device.exe載入,被afd使用,提供給tdi。執行在它自己的com虛擬埠。通過ioctls來進行控制。
btdrt.dll是乙個實時的thunk dll,提供標準應用程式介面給使用者程式設計。通過ioctl訪問驅動和提供**函式。
每一層都被直接連線入裝置驅動,包括hci傳輸,dll連線後,是不能被代替和擴充套件的,因為協議棧層apis是不能被標準輸出的。
然而,每一步連線都是使用者控制的,每一層都作為乙個庫提供出來,任何一層都可以被代替,因此方便以後的更新。大部分可以使用來建立乙個裝置,有乙個可更換的hci傳輸,所以傳輸支援可以被安裝為特殊的藍芽卡。
在hci,每一層都可以被公開。擴充可以被寫實現sco,acl協議是類似l2cap,和控制器管理命令。
每層都允許多介面去設定它,每個上層的介面可以限制乙個子集的連線權力,rfcomm和sdp必須只連線在它們自己的p**(protocol/service multiplexer);sco棧也只是操作cso連線;自定義的軟體棧也只能影響乙個定義好的藍芽裝置連線。
Windows Mobile上的藍芽點對點通訊
實驗室做短距離通訊,藍芽是其中主要技術之一。研究生入學複試的時候,大老闆跟我們說,藍芽的起源和一位彈鋼琴的人有關,因為藍芽用到了跳頻,這個和手指在各個琴鍵之間跳動的現象有一定的聯絡。各學科之間的碰撞,會出現一些奇妙的火花。在 windows mobile 平台上,如何來實現藍芽通訊呢?有好多人已經做...
藍芽耳機出口歐盟要做什麼CE的哪些指令?
任何國家的產品要進入歐盟 歐洲自由 區必須進行ce認證,在產品上加貼ce標誌。因此ce認證是產品進入歐盟及歐洲 自由區國家市場的通行證,所以辦理ce認證是可以找華夏檢測檢測比較好的。通常帶無線模組產品都要做red指令 如藍芽耳機,藍芽音箱,wifi機械人 藍芽耳機是帶無線模組的產品,它是要做ce r...
開發系統板 (CE9260 1)
開發系統板 ce9260 1 產品特點 ce9260 1 主處理器基於atmel at91sam9260構建,arm926ej s 最大主頻210mhz 200mips 64mb sdram 8mb nor flash 64mb nand flash 10 100mbps自適應乙太網 sd儲存卡介面...