基于SmartPhone的藍牙遙控系統設計與實(shí)現

發(fā)布時(shí)間:2010-12-25 20:04    發(fā)布者:designer
關(guān)鍵詞: SmartPhone , 藍牙 , 遙控系統
1.引言

藍牙技術(shù)是一種解決短距離無(wú)線(xiàn)通信的技術(shù),它的優(yōu)勢在于可擺脫設備間的電纜連接 的束縛,并且能使10 一l00m 距離內具有藍牙接口的不同設備之間實(shí)現互連,因此藍牙在 短技術(shù)短距數據傳輸中具有非常廣闊的應用。

Windows Mobile 系統是Microsoft 公司為智能移動(dòng)終端設備設計的嵌入式操作系統, Windows Mobile 系統主要針對兩大手持設備領(lǐng)域:Pocket Pc 和Smartphone,隨著(zhù)技術(shù)的發(fā) 展,以Windows Mobile for Smartphone 為系統的智能手機使用越來(lái)越廣泛,而且廣泛內嵌藍 牙模塊,為開(kāi)發(fā)基于SmartPhone 的藍牙應用系統提供了必要條件。

本文在 Windows Mobile 5.0 平臺和.NET CF 環(huán)境下,設計并實(shí)現SmartPhone 藍牙遙控器系統,成功實(shí)現了Smartphone 對PC(或筆記本)中幻燈片的遙控播放和控制,與市場(chǎng)上目前的產(chǎn)品相比,該系統不需要購買(mǎi)額外的硬件設備,只需利用已有設備,在SmartPhone 平臺中具有廣泛的應用前景。

2.Windows Mobile 中藍牙通信協(xié)議棧

Windows Mobile 系統下的藍牙通信協(xié)議棧底層部分包括無(wú)線(xiàn)跳頻、基帶(Base Band)和 鏈路管理(Link Manager)。Base Band 負責跳頻和藍牙數據及信息幀的傳輸,確保Piconet 網(wǎng)內各藍牙設備單元之間由射頻構成的物理連接,該層使用查詢(xún)和尋呼進(jìn)程來(lái)使不同設備間的 發(fā)送頻率和時(shí)鐘同步,基帶數據分組提供同步定向連接SCO 和異步無(wú)定向連接ACL 兩種物 理連接方式,在同一射頻上可實(shí)現多路數據傳輸。Link Manager Protocol 負責藍牙組件間連接的建立和拆除以及身份鑒別和加密等鏈路安全和控制。其結構如圖1 所示。





HCI(Host Controller InteRFace)分為硬件和軟件部分,硬件部分用來(lái)傳遞HCI 命令至藍牙的硬件核心層,軟件部分是訪(fǎng)問(wèn)藍牙設備的基本接口,能夠控制藍牙的連接和傳輸。邏輯鏈路控制適應協(xié)議(L2CAP)是高層協(xié)議和低層協(xié)議之間的一個(gè)適配協(xié)議,通過(guò)協(xié)議的復用、 分用及重組為高層提供數據業(yè)務(wù)和分類(lèi)提取。SDP 協(xié)議用來(lái)查詢(xún)設備的信息、服務(wù)及服務(wù) 特征,并在查詢(xún)后建立藍牙設備間的連接。在應用層實(shí)現藍牙通信時(shí)有兩種方式可以選擇:一是利用模擬串口,在Windows Mobile 中不是真正的串口而是虛擬串口,這種虛擬串口建 立在RFCOMM 通道上,虛擬串口是用來(lái)仿真RS-232 控制和數據信號的串行仿真協(xié)議,操 作虛擬串口時(shí)如同操作真正的串口。第二種通信方式則利用Winsock 協(xié)議,Winsock 對藍牙 的支持依賴(lài)于設備中安裝的Winsock 協(xié)議棧。使用虛擬串口實(shí)現藍牙設備間的通信,在數據通信量不大的情況下更加方便快捷,所以本設計采用的第一種通信方式。

3.系統設計與實(shí)現

3.1 系統結構

系統分為 SmartPhone 端和PC 端。首先SmartPhone 端與PC 端通過(guò)虛擬串行口建立藍牙 的通信連接,然后SmartPhone 端通過(guò)鍵盤(pán)或觸摸屏向PC 端發(fā)送文件打開(kāi)、幻燈片播放、 翻頁(yè)、關(guān)閉、窗口放大、窗口縮小、文件關(guān)閉等指令,PC 端在收到指令后調用后臺Office Powerpoint 控制程序,實(shí)現對Powerpoint 對應的操作,同時(shí)PC 端傳回Powerpoint 播放的狀 態(tài)信息在SmartPhone 端進(jìn)行顯示。


   



3.2 藍牙設備間的數據傳輸

SmartPhone 端在利用藍牙模塊與PC 端進(jìn)行通信前,首先要對PC 端的藍牙設備進(jìn)行查詢(xún)搜索,來(lái)獲得設備的名稱(chēng)、地址、所提供的服務(wù)等相關(guān)信息。在以往的系統設計中,設備 查詢(xún)需要調用相關(guān)的藍牙API 函數來(lái)遍歷取得通信范圍內的藍牙設備信息,并將結果信息 存入系統定義的WSAQUERYSET 數據結構中,然后再通過(guò)注冊虛擬串口,實(shí)現設備間的藍牙串行通信,整個(gè)過(guò)程復雜并且容易出錯,或者有的系統干脆采用手工指定的方式。本系統則采取一種新的方法,通過(guò)讀取系統的注冊表,來(lái)查詢(xún)相關(guān)的藍牙設備名稱(chēng)、服務(wù)以及使用 的虛擬串口號。在Windows Mobile 5.0 平臺中, 注冊表HKEY_LOCAL_MACHINESOFTWAREMicrosoftBluetoothDevice 下存儲了藍牙設備的設備名稱(chēng)、16 位字符的ID 號以及設備的CLASS , 而 HKEY_LOCAL_MACHINESOFTWAREMicrosoftBluetoothSerialPorts 下則存儲了藍牙連接所使用的虛擬串口號,但不包含系統保留的串口標識。在這個(gè)鍵值下系統為每一個(gè)匹配的 設備都設定了一個(gè)藍牙串口號,而且可以通過(guò)指定"New Outgoing Port"值設定設備的新虛擬 串口號。

利用這種新的機制就不在需要使用傳統的RegisterDevice()方法去注冊虛擬串口號 然后使用,而是通過(guò)查詢(xún)或設定注冊表進(jìn)行使用,而不與別的串口相沖突。通過(guò)對以上方法獲得設備及虛擬串口號的信息后,再利用這些信息實(shí)現 SmartPhone 端 和PC 端的藍牙通信。通信過(guò)程的流程圖如圖2 所示:





3.3 Powerpoint 控制解決方案

系統采用方便靈活的Microsoft Office 自動(dòng)化方法將 Office 功能并入自定義解決方案 中。Office 基于 COM,因此必須使用 COM 的編程方式。.NET Framework 中使用COM Interop 集實(shí)現與早期 COM 的通信。COM Interop 的作用是在 .NET 代碼與COM 對象之 間添加一個(gè)“填充程序”。在項目中添加對 COM 服務(wù)器的引用時(shí),.NET 使用類(lèi)型信息生 成運行庫可調用包裝 (RCW) 的代碼。這些托管代碼將被編譯到單獨的Interop 程序集中, 并由 .NET Framework 訪(fǎng)問(wèn),RCW 充當托管代碼與 COM 服務(wù)器之間的媒介。

由于 OFFICE COM 服務(wù)器能夠支持 .NET,它可以提供一個(gè)安裝并注冊到全局程序集緩 存中的主 Interop 程序集 (PIA)。這些程序集都是共享程序集,PIA 被視為在 .NET 項目中 引用早期 COM 服務(wù)器的最佳方法。

從類(lèi)型庫創(chuàng )建的 Interop 程序集使用早期綁定與 COM 項目進(jìn)行通信。為了讓綁定細節保持通用狀態(tài),除了綁定外,另一個(gè)重要問(wèn)題是對象實(shí)例化。如果使用 Interop 程序集, Office 應用程序的 RCW 將在使用 New 運算符時(shí)控制對象實(shí)例化。RCW 隱含調用相應的 COM 例程來(lái)創(chuàng )建該應用程序的新實(shí)例供代碼使用。

本系統通過(guò)引用互操作程序集 Microsoft.Office.Interop.PowerPoint 實(shí)現Office 自動(dòng)化過(guò) 程,利用.NET 編寫(xiě)應用程序來(lái)實(shí)現在PC 端控制Powerpoint 應用程序。PC 端通過(guò)藍牙通信 接收SmartPhone 端發(fā)來(lái)的指令,利用 Powerpoint 的自動(dòng)化功能實(shí)現文檔的打開(kāi)、關(guān)閉、縮 放、播放等控制功能,并且將獲得的Powerpoint 的總頁(yè)數、當前播放頁(yè)等信息返回給 SmartPhone 端進(jìn)行顯示。理論上來(lái)說(shuō)通過(guò)用戶(hù)界面手動(dòng)執行的操作幾乎都可以通過(guò)該解決方案來(lái)執行。主要控制代碼如下:






4.結束語(yǔ)

本文就藍牙遙控系統提出了相應解決方案,進(jìn)行了設計與開(kāi)發(fā), 系統完成后經(jīng)過(guò)測試運行良好,可方便快捷的實(shí)現對Powerpoint 進(jìn)行遙控控制。按照以上給出的設計框架和方法,對系統進(jìn)行擴展后,完全可以實(shí)現對其它多種應用軟件的遙控,實(shí)現通用藍牙遙控器系統。

本文創(chuàng )新點(diǎn)是系統采用了一種全新的方法以獲得藍牙通信所需的參數,與傳統方法 相比更加簡(jiǎn)單、方便,不易出錯。并且系統使用了Office 自動(dòng)化技術(shù)實(shí)現對powerpoint 的 全面控制,該系統不需要購買(mǎi)額外的硬件設備,只需利用已有設備,在SmartPhone 平臺中具有廣泛的應用前景。
本文地址:http://selenalain.com/thread-47791-1-1.html     【打印本頁(yè)】

本站部分文章為轉載或網(wǎng)友發(fā)布,目的在于傳遞和分享信息,并不代表本網(wǎng)贊同其觀(guān)點(diǎn)和對其真實(shí)性負責;文章版權歸原作者及原出處所有,如涉及作品內容、版權和其它問(wèn)題,我們將根據著(zhù)作權人的要求,第一時(shí)間更正或刪除。
您需要登錄后才可以發(fā)表評論 登錄 | 立即注冊

相關(guān)視頻

關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點(diǎn)地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權所有   京ICP備16069177號 | 京公網(wǎng)安備11010502021702
快速回復 返回頂部 返回列表
午夜高清国产拍精品福利|亚洲色精品88色婷婷七月丁香|91久久精品无码一区|99久久国语露脸精品|动漫卡通亚洲综合专区48页