《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設(shè)計應(yīng)用 > 基于藍(lán)牙的無線接入點設(shè)計
基于藍(lán)牙的無線接入點設(shè)計
來源:微型機與應(yīng)用2010年第18期
何國泉1,鄒云康2,趙進(jìn)輝1
(1.江西農(nóng)業(yè)大學(xué) 工學(xué)院,江西 南昌330045;2.東華理工大學(xué) 信工學(xué)院,江西 撫州34400
摘要: 以51單片機P89V51RD2為主控制器、ROK101008為藍(lán)牙模塊、W3100A為TCP/IP硬件協(xié)議棧、以太網(wǎng)網(wǎng)卡芯片RTL8201為網(wǎng)絡(luò)接口,介紹了一種基于藍(lán)牙的無線接入點的硬件結(jié)構(gòu)和軟件流程。該設(shè)計支持TCP/IP協(xié)議和藍(lán)牙協(xié)議,具備藍(lán)牙設(shè)備的無線上網(wǎng)功能,通過Internet實現(xiàn)數(shù)據(jù)的遠(yuǎn)程傳輸。
Abstract:
Key words :

摘  要:51單片機P89V51RD2為主控制器、ROK101008藍(lán)牙模塊、W3100ATCP/IP硬件協(xié)議棧、以太網(wǎng)網(wǎng)卡芯片RTL8201為網(wǎng)絡(luò)接口,介紹了一種基于藍(lán)牙的無線接入點的硬件結(jié)構(gòu)和軟件流程。該設(shè)計支持TCP/IP協(xié)議和藍(lán)牙協(xié)議,具備藍(lán)牙設(shè)備的無線上網(wǎng)功能,通過Internet實現(xiàn)數(shù)據(jù)的遠(yuǎn)程傳輸。
關(guān)鍵詞: 藍(lán)牙技術(shù);無線接入技術(shù);以太網(wǎng);互聯(lián)網(wǎng)

無線接入技術(shù)是實現(xiàn)無線網(wǎng)接入有線網(wǎng)的網(wǎng)絡(luò)通信技術(shù),其典型應(yīng)用就是無線接入點。無線接入點是一個用于將無線網(wǎng)與有線網(wǎng)連接到一起,使無線客戶端和有線網(wǎng)絡(luò)之間能夠相互發(fā)送和接收數(shù)據(jù)的裝置,是無線移動終端設(shè)備接入到Internet的網(wǎng)絡(luò)接口。無線移動終端可通過無線接入點訪問Internet資源[1]。
    基于藍(lán)牙的無線接入點就是實現(xiàn)藍(lán)牙無線移動終端接入Internet的網(wǎng)絡(luò)接口,其主要功能是通過藍(lán)牙無線傳輸技術(shù),使藍(lán)牙設(shè)備接入Internet網(wǎng),實現(xiàn)一個或數(shù)個藍(lán)牙設(shè)備的無線上網(wǎng)功能。
1 藍(lán)牙接入點的組成
    藍(lán)牙接入點的結(jié)構(gòu)框圖如圖1所示。它由前端和后端兩部分組成,前端部分由藍(lán)牙模塊和單片機組成,構(gòu)成藍(lán)牙收/發(fā)模塊,主要功能是通過藍(lán)牙協(xié)議,與其他藍(lán)牙設(shè)備建立無線鏈接,實現(xiàn)藍(lán)牙設(shè)備間的無線通信;后端則由單片機和TCP/IP協(xié)議棧芯片、以太網(wǎng)網(wǎng)卡芯片組成,構(gòu)成單片機網(wǎng)絡(luò)接口模塊,主要功能是通過TCP/IP協(xié)議棧芯片、網(wǎng)卡芯片,再經(jīng)RJ45接入Internet,根據(jù)TCP/IP協(xié)議,與Internet上的服務(wù)器進(jìn)行通信,實現(xiàn)數(shù)據(jù)的遠(yuǎn)程傳輸。這樣,通過藍(lán)牙接入點就可實現(xiàn)從藍(lán)牙網(wǎng)接入到Internet網(wǎng),完成藍(lán)牙協(xié)議與TCP/IP協(xié)議的轉(zhuǎn)換。藍(lán)牙接入點為其他藍(lán)牙設(shè)備提供了無線上網(wǎng)途徑。

2 藍(lán)牙接入點的設(shè)計
    由圖1可知,藍(lán)牙接入點的設(shè)計包括藍(lán)牙收/發(fā)模塊的設(shè)計和單片機網(wǎng)絡(luò)接口模塊的設(shè)計,每個模塊又包括硬件設(shè)計和軟體設(shè)計兩部分。
2.1 藍(lán)牙收/發(fā)模塊設(shè)計
2.1.1 硬件設(shè)計

    藍(lán)牙收/發(fā)模塊主要由單片機通過異步串行通信接口與藍(lán)牙模塊連接而成。由于單片機與藍(lán)牙模塊的工作電壓不一定相同,不僅需要考慮電源變換問題,還需要考慮邏輯電平的轉(zhuǎn)換問題。若所選單片機與藍(lán)牙模塊都是+3.3 V供電,則可把單片機的UART串口與藍(lán)牙模塊的UART串口直接相連接。
    在本設(shè)計中,所選用的單片機P89V51RD2是+5 V供電,ROK101008是+3.3 V供電,需要進(jìn)行電源變換。電源變換電路比較簡單,采用電源變換芯片AMS1117-3.3即可。至于邏輯電平轉(zhuǎn)換,可在P89V51RD2與ROK101008之間接入IDT公司的電平轉(zhuǎn)換芯片IDT74FCT164245T,其連接示意圖如圖2所示。

2.1.2 軟體設(shè)計
    藍(lán)牙收/發(fā)模塊的軟體設(shè)計包括藍(lán)牙鏈接和數(shù)據(jù)的收/發(fā)兩部分。藍(lán)牙設(shè)備間的通信主要是通過單片機向藍(lán)牙模塊發(fā)送HCI指令、接收HCI事件的形式實現(xiàn)[2-3]。當(dāng)兩個藍(lán)牙模塊鏈接成功后,就可以按照藍(lán)牙規(guī)范規(guī)定的ACL數(shù)據(jù)包格式收/發(fā)數(shù)據(jù)。
    本系統(tǒng)設(shè)計的是藍(lán)牙終端點對點的鏈接,其通信流程如圖3所示。由圖可知,藍(lán)牙通信過程主要有藍(lán)牙模塊的初始化、查詢、鏈接、數(shù)據(jù)通信和鏈接斷開等幾個過程。實現(xiàn)時,可以將藍(lán)牙指令以函數(shù)的形式封裝成一個HCI指令接口函數(shù)庫。編寫HCI驅(qū)動程序時,可直接從函數(shù)庫中調(diào)用HCI指令函數(shù),對藍(lán)牙設(shè)備進(jìn)行基本操作,如對藍(lán)牙設(shè)備進(jìn)行復(fù)位、讀取藍(lán)牙設(shè)備的地址、初始化、查詢、建立鏈接、收發(fā)數(shù)據(jù)和斷開鏈接等[4]。

2.2 單片機網(wǎng)絡(luò)接口模塊設(shè)計
2.2.1 硬件設(shè)計

    單片機網(wǎng)絡(luò)接口模塊主要由單片機P89V51RD2、TCP/IP硬件協(xié)議棧芯片W3100A及物理收發(fā)芯片RTL8201BL組成,完成單片機與Internet間的通信。
    W3100A芯片提供了直接總線模式(Direct Bus I/F)、間接總線模式(Indirect Bus I/F)和I2C總線模式(I2C Bus I/F)三種不同的接口模式與MCU相連接。為了提高數(shù)據(jù)的網(wǎng)絡(luò)傳輸速率,本設(shè)計采用直接總線模式和時鐘工作模式。單片機與W3100A的硬件連接示意圖如圖4所示。

    W3100A是韓國Wiznet公司專門為以太網(wǎng)互聯(lián)和嵌入式設(shè)備推出的一款硬件TCP/IP協(xié)議棧芯片。在芯片硬件中安裝了簡單的TCP/IP協(xié)議棧,實現(xiàn)了軟件硬化,降低了軟件開發(fā)的開銷及難度。W3100A提供MII接口與PHY芯片RTL8201BL相連。
2.2.2 軟體設(shè)計
    對于W3100A,可配置成客戶端,也可配置成服務(wù)器端。W3100A的客戶端工作模式與服務(wù)器端工作模式基本相同,不同的地方是,只要把客戶端工作流程中發(fā)起鏈接請求處改成偵聽鏈接請求,則客戶端工作模式就變成了服務(wù)器端工作模式。本設(shè)計中把W3100A配置成客戶端,在建立起與PC服務(wù)器的連接后,就可實現(xiàn)數(shù)據(jù)的發(fā)送和接收。整個過程的建立基于TCP協(xié)議??蛻舳酥鞒绦虻牧鞒倘鐖D5所示。從客戶端主程序的流程可以看出,客戶端的工作過程包括初始化、建立鏈接、收發(fā)數(shù)據(jù)和終止鏈接四個步驟。在所有初始化及參數(shù)設(shè)置完成以后,就可發(fā)起鏈接請求。若鏈接失敗,則返回重新執(zhí)行SOCKET初始化程序。若鏈接成功,程序?qū)⒆x取SOCKET狀態(tài)寄存器的內(nèi)容,判斷SOCKET所處的狀態(tài),然后,根據(jù)SOCKET所處狀態(tài)的不同進(jìn)行相應(yīng)的處理。整個TCP/IP的工作過程都是建立在W3100A的中斷機制基礎(chǔ)之上。

    W3100A芯片的工作方式類似于Windows的Socket API,WIZnet公司為W3100A提供了專門的Socket API軟件包,只要調(diào)用Socket API函數(shù),就可很方便地用單片機C語言來編寫單片機的網(wǎng)絡(luò)通信接口程序。
    藍(lán)牙技術(shù)以其成本低、組網(wǎng)靈活等優(yōu)點正成為當(dāng)今世界的一個研究熱點,是下一代無線個人區(qū)域網(wǎng)(WPAN)的理想實現(xiàn)技術(shù)。與目前的IEEE802.11以太網(wǎng)無線接入技術(shù)相比,基于藍(lán)牙的無線接入技術(shù)在小區(qū)域組網(wǎng)中更具優(yōu)勢。作為藍(lán)牙無線接入技術(shù)的典型應(yīng)用,藍(lán)牙接入點具有廣泛的應(yīng)用前景,如機器人、遠(yuǎn)程監(jiān)控、數(shù)據(jù)遠(yuǎn)程傳輸及無線上網(wǎng)等。可以預(yù)見,在不久的將來,基于藍(lán)牙技術(shù)的移動通信產(chǎn)品及移動互聯(lián)網(wǎng)必將在工農(nóng)業(yè)生產(chǎn)和人們的生活中應(yīng)用越來越廣泛。
參考文獻(xiàn)
[1] 黎連業(yè),郭春芳,向東明.無線網(wǎng)絡(luò)及其應(yīng)用技術(shù)[M].北京:清華大學(xué)出版社,2004.
[2] 何國泉,李躍忠,黃志紅.基于HCI層的單片機對藍(lán)牙模塊的控制[J].科技廣場,2005(1):43-46.
[3] 金純,許光辰.藍(lán)牙技術(shù)[M].北京:電子工業(yè)出版社,2001.
[4] 王瀾.藍(lán)牙技術(shù)及其在測試與監(jiān)控系統(tǒng)中的應(yīng)用探討[J].中國鐵道科學(xué),2002,23(6):24-29.

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。