基于藍牙的無(wú)線(xiàn)接入點(diǎn)設計
以51單片機P89V51RD2為主控制器、ROK101008為藍牙模塊、W3100A為T(mén)CP/IP硬件協(xié)議棧、以太網(wǎng)網(wǎng)卡芯片RTL8201為網(wǎng)絡(luò )接口,介紹了一種基于藍牙的無(wú)線(xiàn)接入點(diǎn)的硬件結構和軟件流程。該設計支持TCP/IP協(xié)議和藍牙協(xié)議,具備藍牙設備的無(wú)線(xiàn)上網(wǎng)功能,通過(guò)Internet實(shí)現數據的遠程傳輸。
本文引用地址:http://dyxdggzs.com/article/155675.htm無(wú)線(xiàn)接入技術(shù)是實(shí)現無(wú)線(xiàn)網(wǎng)接入有線(xiàn)網(wǎng)的網(wǎng)絡(luò )通信技術(shù),其典型應用就是無(wú)線(xiàn)接入點(diǎn)。無(wú)線(xiàn)接入點(diǎn)是一個(gè)用于將無(wú)線(xiàn)網(wǎng)與有線(xiàn)網(wǎng)連接到一起,使無(wú)線(xiàn)客戶(hù)端和有線(xiàn)網(wǎng)絡(luò )之間能夠相互發(fā)送和接收數據的裝置,是無(wú)線(xiàn)移動(dòng)終端設備接入到Internet的網(wǎng)絡(luò )接口。無(wú)線(xiàn)移動(dòng)終端可通過(guò)無(wú)線(xiàn)接入點(diǎn)訪(fǎng)問(wèn)Internet資源。
基于藍牙的無(wú)線(xiàn)接入點(diǎn)就是實(shí)現藍牙無(wú)線(xiàn)移動(dòng)終端接入Internet的網(wǎng)絡(luò )接口,其主要功能是通過(guò)藍牙無(wú)線(xiàn)傳輸技術(shù),使藍牙設備接入Internet網(wǎng),實(shí)現一個(gè)或數個(gè)藍牙設備的無(wú)線(xiàn)上網(wǎng)功能。
1 藍牙接入點(diǎn)的組成
藍牙接入點(diǎn)的結構框圖如圖1所示。它由前端和后端兩部分組成,前端部分由藍牙模塊和單片機組成,構成藍牙收/發(fā)模塊,主要功能是通過(guò)藍牙協(xié)議,與其他藍牙設備建立無(wú)線(xiàn)鏈接,實(shí)現藍牙設備間的無(wú)線(xiàn)通信;后端則由單片機和TCP/IP協(xié)議棧芯片、以太網(wǎng)網(wǎng)卡芯片組成,構成單片機網(wǎng)絡(luò )接口模塊,主要功能是通過(guò)TCP/IP協(xié)議棧芯片、網(wǎng)卡芯片,再經(jīng)RJ45接入Internet,根據TCP/IP協(xié)議,與Internet上的服務(wù)器進(jìn)行通信,實(shí)現數據的遠程傳輸。這樣,通過(guò)藍牙接入點(diǎn)就可實(shí)現從藍牙網(wǎng)接入到Internet網(wǎng),完成藍牙協(xié)議與TCP/IP協(xié)議的轉換。藍牙接入點(diǎn)為其他藍牙設備提供了無(wú)線(xiàn)上網(wǎng)途徑。
2 藍牙接入點(diǎn)的設計
由圖1可知,藍牙接入點(diǎn)的設計包括藍牙收/發(fā)模塊的設計和單片機網(wǎng)絡(luò )接口模塊的設計,每個(gè)模塊又包括硬件設計和軟體設計兩部分。
2.1 藍牙收/發(fā)模塊設計
2.1.1 硬件設計
藍牙收/發(fā)模塊主要由單片機通過(guò)異步串行通信接口與藍牙模塊連接而成。由于單片機與藍牙模塊的工作電壓不一定相同,不僅需要考慮電源變換問(wèn)題,還需要考慮邏輯電平的轉換問(wèn)題。若所選單片機與藍牙模塊都是+3.3 V供電,則可把單片機的UART串口與藍牙模塊的UART串口直接相連接。
在本設計中,所選用的單片機P89V51RD2是+5 V供電,ROK101008是+3.3 V供電,需要進(jìn)行電源變換。電源變換電路比較簡(jiǎn)單,采用電源變換芯片AMS1117-3.3即可。至于邏輯電平轉換,可在P89V51RD2與ROK101008之間接入IDT公司的電平轉換芯片IDT74FCT164245T,其連接示意圖如圖2所示。
2.1.2 軟體設計
藍牙收/發(fā)模塊的軟體設計包括藍牙鏈接和數據的收/發(fā)兩部分。藍牙設備間的通信主要是通過(guò)單片機向藍牙模塊發(fā)送HCI指令、接收HCI事件的形式實(shí)現。當兩個(gè)藍牙模塊鏈接成功后,就可以按照藍牙規范規定的ACL數據包格式收/發(fā)數據。
本系統設計的是藍牙終端點(diǎn)對點(diǎn)的鏈接,其通信流程如圖3所示。由圖可知,藍牙通信過(guò)程主要有藍牙模塊的初始化、查詢(xún)、鏈接、數據通信和鏈接斷開(kāi)等幾個(gè)過(guò)程。實(shí)現時(shí),可以將藍牙指令以函數的形式封裝成一個(gè)HCI指令接口函數庫。編寫(xiě)HCI驅動(dòng)程序時(shí),可直接從函數庫中調用HCI指令函數,對藍牙設備進(jìn)行基本操作,如對藍牙設備進(jìn)行復位、讀取藍牙設備的地址、初始化、查詢(xún)、建立鏈接、收發(fā)數據和斷開(kāi)鏈接等。
tcp/ip相關(guān)文章:tcp/ip是什么
評論