版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
摘要隨著科學(xué)技術(shù)的開展和人們生活水平的提高,人們越來越注重自己生活環(huán)境的舒適、平安與便利。近年來興起的智能家居系統(tǒng)滿足了人們的這種需求,它有效地在家居環(huán)境中組建家庭信息網(wǎng)絡(luò),將各種家電產(chǎn)品結(jié)合成一個有機整體,對家電設(shè)備進行集中或異地的智能化控制與管理,并且能夠與外界進行信息交流。藍牙技術(shù)作為一種無線數(shù)據(jù)與語音通信的開放性全球標(biāo)準,可提供低功耗、短距離的無線空中接口,在各種固定與移動設(shè)備之間實現(xiàn)無線通信。在移動通信、無線數(shù)據(jù)采集、無線遙控與遙測、計算機網(wǎng)絡(luò)及自動控制等多種領(lǐng)域,藍牙技術(shù)都有著廣泛的應(yīng)用。應(yīng)用設(shè)計的藍牙軟硬件接口,本文開發(fā)了一個基于藍牙模塊的智能家居控制系統(tǒng),在該系統(tǒng)中,上位機端通過USB控制藍牙適配器,其發(fā)送的控制指令由下位機端藍牙模塊接收后傳給單片機,并在單片機端編寫了一個根本的藍牙及模擬家電控制程序,從而實現(xiàn)了PC與模擬家電的無線控制功能。本文提供的藍牙軟硬件接口方案及數(shù)據(jù)傳輸模塊,不僅可以用來進一步開發(fā)藍牙高層協(xié)議,而且還可作為通用的接口函數(shù)和模塊應(yīng)用到多種無線場合。關(guān)鍵字:藍牙技術(shù);智能家居;藍牙模塊ABSTRACTWiththedevelopmentofscienceandtechnology,andtheimprovementofpeople’slivingstandards,peoplearepayingmoreandmoreattentiontothecomfortablity,safetyandconvenienceoftheirlivingenvironment.Theemergenceofsmarthomesysteminrecentyears,justmeetstheneedsofpeople.Iteffectivelyconstitutesappliancesintoahomeinformationnetworkandmakesallkindsofappliancescombinedintoanorganicwhole.Itcanintelligentlycontrolapplianceslocallyorremotely,andexchangeinformationwiththeoutsideworld.AsagloballyopenwirelessdataandspeechcommunicationspecificationBluetoo—thtechnologycanprovidelow-power、shortdistancewirelessairinterfaceandimplementwirelesscommunicationbetweenvariousfixedandmobileequipments.Bluetoothtechnologyhasawiderangeofapplicationsinmobilecommunications,wirelessdatacollections,wirelessremotecontrolandsensingComputernetworkandautomaticcontrolandotherareas.Usingthebluetoothhardwareandsoftwareinterfacedesigned,ThispaperdevelopedansmarthomefurnishingcontrolsystembasedonBluetoothmodule.Inthesystem,ThePCsideiscontrolledbyUSBbluetoothadapter.It’scontrolinstructionisreceivedbythelowerendofBluetoothmodulewhichsentittothemicrocontroller.AbasicbluetoothandhomeappliancecontrolsimulationprogramwaspreparedintheMCU.So,thesystemcanrealizewirelesscontrolfunctionofPCandsimulationofelectricalappliances.Andthen,datacanbetransmittedbetweenthetwoparts.Afterthat,afurtherdevelopmentwhichisfiletransmissionisimplemented.Keywords:Bluetoothtechnology;smarthome;Bluetoothmoudule目錄前言1第一章緒論21.1課題研究背景21.2智能家居的開展?fàn)顩r21.3未來智能家居的開展趨勢31.4研究的目的和意義31.5課題研究的內(nèi)容4第二章藍牙技術(shù)介紹52.1藍牙系統(tǒng)組成52.2藍牙協(xié)議棧62.3藍牙控制器接口(HCI)分析62.3.1HCI概述62.3.2HCI傳輸層72.3.3HCI分組格式8第三章設(shè)計方案及模塊介紹103.1藍牙家居控制系統(tǒng)組成結(jié)構(gòu)103.2主要硬件模塊介紹10第四章系統(tǒng)硬件設(shè)計144.1下位機模塊設(shè)計14PC機與藍牙模塊的連接164.3單片機與家用電器的連接17系統(tǒng)電源模塊原理圖17第五章系統(tǒng)軟件設(shè)計195.1單片機端軟件設(shè)計195.2PC端軟件設(shè)計24第六章系統(tǒng)測試與分析29結(jié)論31致謝32參考文獻33附錄34前言隨著科學(xué)技術(shù)的開展和人們生活水平的提高,人們越來越注重自己生活環(huán)境的舒適、平安與便利。近年來興起的智能家居系統(tǒng)滿足了人們的這種需求,它有效地在家居環(huán)境中組建家庭信息網(wǎng)絡(luò),將各種家電產(chǎn)品結(jié)合成一個有機整體,對家電設(shè)備進行集中或異地的智能化控制與管理,并且能夠與外界進行信息交流。首先,在研究藍牙SPP應(yīng)用模型和我國《家庭控制子網(wǎng)通信協(xié)議標(biāo)準》的根底上,經(jīng)過比擬當(dāng)前各種家庭內(nèi)部組網(wǎng)技術(shù)的優(yōu)劣,選擇了基于藍牙協(xié)議的家庭控制子網(wǎng)的實現(xiàn)方案。該方案使用藍牙SPP模型來承載通用設(shè)備控制協(xié)議,降低了家庭控制子網(wǎng)組網(wǎng)過程中的難度,符合實際應(yīng)用場景。其次,研究并提出了智能家居系統(tǒng)實現(xiàn)過程中處于核心地位的智能家居控制器的軟硬件設(shè)計方案。在硬件方面,選用Samsung公司具有較高性價比的ARM9芯片S3C2410作為其CPU,完成了智能家居控制器的電源、顯示、輸入、存儲以及無線藍牙和GPRS的模塊的電路設(shè)計;在軟件方面,成功地將U-boot、嵌入式Linux內(nèi)核和藍牙協(xié)議棧BlueZ移植到了智能家居控制器目標(biāo)板上,并在Linux內(nèi)核中為系統(tǒng)各個硬件模塊添加了相應(yīng)的驅(qū)動程序。最后,對藍牙模塊進行了測試,實現(xiàn)了藍牙的點對點通信,并且為系統(tǒng)開發(fā)了局部常用的界面。對研究工作做了總結(jié),列出了所實現(xiàn)的研究成果以及有待實現(xiàn)的智能家居控制系統(tǒng)的功能。第一章緒論1.1課題研究背景智能家居,或稱智能住宅,在英文中常用SmartHome、Intelligenthome,與此含義相近的還有家庭自動化(HomeAutomation)、電子家庭(ElectronicHome、E-home)、數(shù)字家園(Digitalfamily)、網(wǎng)絡(luò)家居(NetworkHome),智能建筑(IntelligentBuilding)。智能家居是以住宅為平臺,兼?zhèn)浣ㄖ⒕W(wǎng)絡(luò)通訊、信息家電、設(shè)備自動化,集系統(tǒng)、結(jié)構(gòu)、效勞、管理為一體的高效、舒適、平安、便利、環(huán)保的居住環(huán)境。智能家居是在家庭產(chǎn)品自動化、智能化的根底上,通過網(wǎng)絡(luò)按擬人化的要求而實現(xiàn)的。智能家居可以定義為一個過程或者一個系統(tǒng),利用先進的計算機技術(shù)、網(wǎng)絡(luò)通訊技術(shù)、綜合布線技術(shù)、無線技術(shù)、將與家居生活有關(guān)的各種子系統(tǒng),有機地結(jié)合在一起。與普通家居相比,由原來的被動靜止結(jié)構(gòu)轉(zhuǎn)變?yōu)榫哂心軇又悄艿墓ぞ撸峁┤轿坏男畔⒔粨Q功能,幫助家庭與外部保持信息交流暢通。智能家居強調(diào)人的主觀能動性,要求重視人與居住環(huán)境的協(xié)調(diào),能夠隨心所欲地控制室內(nèi)居住環(huán)境。1.2智能家居的開展?fàn)顩r智能家居從上世紀八十年代興起于日本和歐美,九十年代末引入中國,目前美國有7000萬家庭依靠智能家庭網(wǎng)絡(luò)設(shè)備生活。近年來,以美國微軟公司及摩托羅拉公司等為首的一批國際知名企業(yè)先后進入智能家庭網(wǎng)絡(luò)的研究及開發(fā)領(lǐng)域,分辨開發(fā)了“夢幻之家〞、“家庭主任〞、“居所之門〞等家庭智能設(shè)備,3COM公司研發(fā)出家用無線網(wǎng)關(guān)等網(wǎng)絡(luò)產(chǎn)品,并與Microsoft聯(lián)手開發(fā)通用式即插即用的家庭網(wǎng)絡(luò)系統(tǒng)。該系統(tǒng)方便地連接家電與網(wǎng)絡(luò),可以高速傳輸文字、語音、視聽等咨詢。這套產(chǎn)品也適用于小型辦公室。國內(nèi)廠商也在進行智能化家庭網(wǎng)絡(luò)產(chǎn)品的研發(fā)和生產(chǎn),一大批大型IT企業(yè)利用自身在資金與技術(shù)等方面的優(yōu)勢,在低端市場上已占據(jù)了相當(dāng)重要的地位。清華同方在智能化家庭網(wǎng)絡(luò)領(lǐng)域與建設(shè)部智能化專家委員會共同設(shè)立了智能住宅開放實驗室,還取得了著名綜合布線廠商西蒙、百通全線產(chǎn)品在中國的總代理資格。北京德達創(chuàng)先科技集團先后開發(fā)了LDM-2000,智能家居控制器、HomeNet網(wǎng)絡(luò)化綜合管理系統(tǒng),并開通了中國智能建筑效勞網(wǎng)絡(luò)提供智能化建筑的在線咨詢與在線技術(shù)支持該網(wǎng)站已成為國內(nèi)建筑化領(lǐng)域的權(quán)威網(wǎng)站。1.3未來智能家居的開展趨勢如何使家居環(huán)境變得便利、舒適、人性化、智能化,真正提高人們的生活品質(zhì),才是智能家居系統(tǒng)的開展方向,其開展趨勢主要有以下幾個方面:(1)向個性化方向開展人們可以根據(jù)自己的需要和喜好,選擇不同的功能,智能家居開展將不斷滿足人們要求個性化的需求。(2)向系統(tǒng)高度集成化方向開展信息家電控制功能、呼叫對講功能、自動化管理功能、安防監(jiān)控功能、設(shè)備自檢功能等多種功能將被集成在一起,統(tǒng)一調(diào)度,從而降低本錢。隨著科學(xué)技術(shù)的不斷開展,系統(tǒng)的集成度將越來越高。(3)向網(wǎng)絡(luò)化方向開展網(wǎng)絡(luò)化是計算機、通訊、電子和物聯(lián)網(wǎng)等多種技術(shù)開展的必然趨勢,也是智能家居智能化的一個重要表達。(4)向綠色環(huán)保方向開展環(huán)保是全球的要求,智能家居如何利用現(xiàn)有技術(shù)減少功耗、降低對社區(qū)和家庭的環(huán)境污染,提高生活環(huán)境的質(zhì)量,是智能化的一個重要目標(biāo)。研究的目的和意義隨著經(jīng)濟的開展和后PC、物聯(lián)網(wǎng)時代的到來,人們對自身居住環(huán)境的要求在不斷地提高,智能化家居將逐漸成為中國家居市場的主流。目前,在上海、北京、廣州、深圳等經(jīng)濟比擬興旺的地區(qū)都已經(jīng)建立了一批智能型住宅小區(qū),并且正飛速地向其他地區(qū)輻射。智能家居將大大改變?nèi)藗兊娜粘I詈凸ぷ鞣绞?,帶動傳統(tǒng)家電制造業(yè)、房屋智能化裝修、社區(qū)信息效勞、以及房地產(chǎn)業(yè)等相關(guān)產(chǎn)業(yè)的蓬勃開展。家居智能化、建筑信息化以及相關(guān)技術(shù)產(chǎn)品正在得到飛速地開展,智能化家居將很快將會走入人們的生活。建設(shè)部已將智能化住宅小區(qū)列為國家重點開展方向,智能化小區(qū)包括了智能家居的設(shè)計,智能家居建設(shè)是智能小區(qū)建設(shè)的一局部。目前,國家已經(jīng)投入了大量的財力和人力在設(shè)計和開發(fā)符合中國國情的智能家居,因此嵌入式智能家居工程的應(yīng)用前景非常廣闊的。但是,由于智能家居市場的開展還處于初級階段,智能家居的中的信息設(shè)備之間的通信還不是很標(biāo)準。為此早在2005年,國家已經(jīng)制定出了《家庭網(wǎng)絡(luò)系統(tǒng)體系結(jié)構(gòu)及參考模型家庭控制子網(wǎng)通信協(xié)議標(biāo)準》、《家庭控制子網(wǎng)通信協(xié)議標(biāo)準》等標(biāo)準來推動和管理中國智能家居市場的健康地開展。智能家居控制器是智能家居的核心器件,人們只需一個控制器就可以控制家中的所有電器設(shè)備。本文主要研究了智能家居網(wǎng)絡(luò)的組建,智能家居控制器的設(shè)計,這是智能家居實現(xiàn)過程中的重要內(nèi)容,具有廣泛的現(xiàn)實意義,為將來的智能家居提供了一種可行的設(shè)計方案。1.5課題研究的內(nèi)容主要通過使各種各樣的智能家電都遵守藍牙協(xié)議構(gòu)建家庭控制子網(wǎng),在完成智能家居控制器硬件與軟件設(shè)計的根底上,將控制器應(yīng)用到了網(wǎng)絡(luò)化的智能家居系統(tǒng)中。課題研究主要內(nèi)容具體如下:(1)通信協(xié)議的選擇分析家庭內(nèi)部網(wǎng)絡(luò)的體系結(jié)構(gòu),對當(dāng)前智能家居組網(wǎng)協(xié)議進行研究和比擬,選定了一個符合家庭內(nèi)部組網(wǎng)具體要求的通信協(xié)議。(2)智能家居控制器硬件的設(shè)計首先,根據(jù)對智能家居控制器的具體要求例如功耗、本錢、體積等,為其選擇一個性價比比擬高的CPU;然后,分別對其余各個功能模塊進行硬件電路的設(shè)計與調(diào)試。(3)智能家居控制器軟件的設(shè)計。給出軟件流程框圖,包括運行在單片機和PC機上程序,本論文中均采用C語言進行編寫第二章藍牙技術(shù)介紹2.1藍牙系統(tǒng)組成典型的藍牙系統(tǒng)可分為5個單元,即無線射頻單元、鏈路控制單元、鏈路管理單元、藍牙協(xié)議軟件單元和主機應(yīng)用軟件單元。(1)無線射頻單元藍牙是以無線LAN的IEEE802.11標(biāo)準技術(shù)為根底的,使用2.4GHzISM全球通自由波段。藍牙天線屬于微帶天線,空中接口建立在天線電平為0dBm根底上,遵從FCC(FederalCommunicationsCommission,美國聯(lián)邦通信委員會.)有關(guān)OdBm電平的ISM頻段的標(biāo)準。由于采用擴頻技術(shù),發(fā)射功率可以到達100mW。系統(tǒng)最大跳頻速率為1600跳/秒,在2.402GHz和2.480GHz之間,采用79個間隔為1MHz的頻點來實現(xiàn)【31。系統(tǒng)設(shè)計通信距離為10cm~10m,如增大發(fā)射功率,其距離可長達100m。(2)鏈路控制單元藍牙的鏈路控制單元,又稱基帶單元,包括3個集成芯片:連接控制器、基帶處理器以及射頻傳輸/接收器,此外還使用了3—5個單獨調(diào)諧元件。綜述鏈路控制單元描述了基帶鏈路控制器的數(shù)字信號處理標(biāo)準?;鶐ф溌房刂破髫撠?zé)處理基帶協(xié)議和其它一些低層常規(guī)協(xié)議。鏈路控制單元的主要功能包括:建立物理鏈路及網(wǎng)絡(luò)連接,包括面向連接的同步鏈路SCO(SynchronousConnectionOriented)鏈路、異步鏈路ACL(AsynchronousConnectionless)鏈路及匹克網(wǎng);過失控制;在物理層提供驗證和加密,其中驗證基于“請求.響應(yīng)〞運算法那么實現(xiàn),為用戶建立一個個人的信任域,而加密那么用來保護連接中的個人信息。(3)鏈路管理單元鏈路管理器LM(LinkManager)軟件模塊設(shè)計了鏈路的數(shù)據(jù)設(shè)置、鑒權(quán)、鏈路硬件配置和其它一些協(xié)議。鏈路管理器能夠發(fā)現(xiàn)其它藍牙設(shè)備的鏈路管理器,并通過鏈路管理協(xié)議LMP(LinkMallagerProtoc01)建立通信聯(lián)系。鏈路管理器提供諸如發(fā)送和接收數(shù)據(jù)、設(shè)備號請求、鏈路地址查詢、建立連接、鑒權(quán)、鏈路模式協(xié)商和建立、設(shè)備模式的切換等功能。2.2藍牙協(xié)議棧藍牙協(xié)議棧體系結(jié)構(gòu)為分層結(jié)構(gòu),具體如圖2.1所示。圖2.1藍牙協(xié)議棧體系結(jié)構(gòu)藍牙技術(shù)標(biāo)準的目的是使符合該標(biāo)準的各種應(yīng)用之間能夠?qū)崿F(xiàn)互操作15J?;ゲ僮鞯倪h端設(shè)備需要使用相同的協(xié)議棧,不同的應(yīng)用需要不同的協(xié)議棧。并不是任何應(yīng)用都必須使用全部協(xié)議,而是可以只使用其中的一層或多層。但是,所有的應(yīng)用都要使用藍牙技術(shù)標(biāo)準中的數(shù)據(jù)鏈路層和物理層。藍牙控制器接口(HCI)分析HCI概述主機控制器接口(HCI)處于藍牙協(xié)議棧的中間層,它提供了藍牙主機訪問藍牙主機控制器的基帶與鏈路控制器、鏈路管理器、狀態(tài)存放器等硬件的統(tǒng)一接口。藍牙主機控制器(BluctoothHostController)是藍牙芯片的主要組成局部,其內(nèi)部硬件結(jié)構(gòu)如圖2.2所示。鏈路控制器提供了藍牙基帶功能以及物理層協(xié)議的硬件和軟件實現(xiàn);CPU核提供了鏈路管理器和鏈路控制器的固件局部的運行環(huán)境,使得主機控制器可獨立于主機進行查詢和過濾呼叫請求。圖2.2藍牙主機控制器內(nèi)部硬件結(jié)構(gòu)圖硬件方面,主機控制器集成了無線電收發(fā)器、基帶控制器、Flash存儲器等局部,其中基帶控制器大多是以ARM為根底的芯片,通過接口控制無線電收發(fā)器,提供物理接H(USB/UART/PCM等)。藍牙模塊通過這些接口與主機上對應(yīng)的接口相連接,構(gòu)成藍牙系統(tǒng)的硬件連接。HCI就是基于這些物理接口定義相應(yīng)的傳輸層實現(xiàn)主機與主機控制器間的數(shù)據(jù)交換。兩個藍牙設(shè)備通過HCI層進行數(shù)據(jù)傳輸?shù)倪^程如圖2.3所示。圖2.3藍牙設(shè)備通過HCI層數(shù)據(jù)傳輸過程HCI傳輸層HCI傳輸層是指在藍牙主機與主機控制器間相連的物理接口,它介于主機控制器驅(qū)動程序和主機控制器之間,主要目的是實現(xiàn)傳輸?shù)耐该餍?,即從藍牙模塊外看HCI看到的是HCI傳輸層,物理總線是屏蔽的,從而使得HCI固件能在不影響傳輸層的情況下升級。.3HCI分組格式HCI提供了藍牙主機與藍牙主機控制器交換信息的接口,這些信息以分組的形式進行交互。主機可以向主機控制器發(fā)送HCI指令分組、ACL數(shù)據(jù)分組和SCO數(shù)據(jù)分組;主機控制器可以向主機返回HCI事件分組、ACL數(shù)據(jù)分組和SCO數(shù)據(jù)分組。如下圖即為各HCl分組的流向示意圖。圖HCl分組流向示意(1)HCI指令分組HCI指令分組用于從主機向主機控制器發(fā)送指令。HCI指令分組的格式如表所示。表2.1HCI指令分組格式HCI指令分組由操作碼,參數(shù)長度和指令參數(shù)列表組成。(2)HCI事件分組主機向主機控制器發(fā)送指令分組以后,主機控制器就會返回相應(yīng)的事件分組,其中攜帶有指令的執(zhí)行情況以及相關(guān)聯(lián)的信息。主機必須具有接收255字節(jié)的HCI事件分組的能力,其中還不包括HCI事件分組頭。HCI事件分組的格式如表2.4所示。表HCI事件分組格式HCI事件分組由事件碼、參數(shù)長度和事件參數(shù)列表組成事件碼(EventCode)大小為1字節(jié),用于唯一地標(biāo)識事件的類型,取值范圍為0x00-0xff。參數(shù)長度以字節(jié)度量。事件參數(shù)列表存放了與相對應(yīng)的指令關(guān)聯(lián)的返回事件參數(shù),大小一般為8的倍數(shù)。(3)HCI數(shù)據(jù)分組HCI數(shù)據(jù)分組用于在主機和主機控制器之間交換數(shù)據(jù)。HCI數(shù)據(jù)分組分為ACL數(shù)據(jù)分組和SCO數(shù)據(jù)分組兩類,各自有不同的格式,在此只討論ACL數(shù)據(jù)分組格式。HCIACL數(shù)據(jù)分組用于在主機與主機控制器間進行異步鏈路的數(shù)據(jù)交換,它的分組格式如表2.5所示。表HCIACL數(shù)據(jù)分組格式第三章設(shè)計方案及模塊介紹3.1藍牙家居控制系統(tǒng)組成結(jié)構(gòu)基于藍牙技術(shù)的智能家居系統(tǒng),其硬件組成主要包括藍牙模塊、MCU、PC及受控設(shè)備等組成??傮w構(gòu)成如圖3.1所示。結(jié)構(gòu)框圖中前半局部為中心控制局部,主要由PC機、藍牙無線收發(fā)模塊組成;后半局部為多個受控單元,主要由受控電器、單片機、藍牙模塊組成。
在受控單元中,藍牙模塊和單片機之間通過串口輸入HCI指令實行數(shù)據(jù)通信。其工作過程是:PC機發(fā)送一條控制命令,通過串口發(fā)送給藍牙模塊,并由藍牙模塊發(fā)送出去,這條指令被多個藍牙模塊接收后由單片機進行識別,并作出相應(yīng)的動作,最終完成對家電的控制。在本設(shè)計中作為通信局部的藍牙模塊均采用的是ROK101008,單片機選用性價比擬高的C8051F120.主要硬件模塊介紹3.愛立信藍牙模塊ROK101008簡介愛立信ROK101008是愛立信(Ericsson)公司出品的適用于短距離通信的無線/基帶模塊,它集成度高、功耗小、完全兼容藍牙1.0B協(xié)議標(biāo)準,可嵌入到任何需要藍牙功能的設(shè)備中。它同時支持數(shù)據(jù)和語音的傳輸,輸出功率滿足Class2的要求。它提供有UART、PCM接口,可方便地實現(xiàn)與主機之間的通信。它在UART接口上的最高傳輸速率為460Kb/s,缺省波特率是57.6Kb/s,可支持的波特率為300、600,900,1200、2400,4800,9600、19200,38400157600,115200、230400,60800bit/s,并有一個128字節(jié)的FIFO隊列111】。它采用壓縮結(jié)構(gòu)(3.3×1.7X0.365cm),金表層覆蓋,外觀圖如圖3.2所示。圖3.2愛立信ROK101008藍牙模塊外觀圖ROK101008的系統(tǒng)結(jié)構(gòu)圖如圖3.3所示。處于模塊底層的是無線層(Radio)和基帶)縣(Baseband),以硬件的形式存在;處于模塊中上層的,是鏈路管理器(LM)和HCI,以固件的形式存在。圖3.3愛立信ROK101008藍牙模塊系統(tǒng)結(jié)構(gòu)圖ROK101008由基帶控制器(Baseband)、快閃式存儲器(FlashMemory)、無線電收發(fā)器(PBA31301/2)、電壓調(diào)節(jié)器(VoltageRegulation)、13MHz晶振(13MHzCrystal)共5局部組成,其內(nèi)部結(jié)構(gòu)框圖如圖3.4所示。圖3.4愛立信ROK101008藍牙模塊內(nèi)部結(jié)構(gòu)框圖①基帶控$1J-器(Baseband):是一個以ARM7一Thumb為根底的的芯片,通過接口控制無線電收發(fā)器的運行。ROK101008的基帶控制器提供UART和PCM兩種接口。②快閃式存儲器r(FlashMemory):閃存和基帶控制器同時使用。③無線電收發(fā)器(PBA31301/2):PBA31301/2是短距離微波無線電收發(fā)器,其天線濾波器、RX和TX不平衡變壓器都集成在電路中,可作為嵌入式結(jié)構(gòu)應(yīng)用。④電壓調(diào)節(jié)器:(VoltageRegulation):Vcc典型值是3.3V,產(chǎn)生兩個可調(diào)電壓。⑤13MHz晶振(13MHzCrystal):晶振提供頻率為13MHz的內(nèi)置時鐘。愛立信ROK101008藍牙模塊芯片詳細的引腳封裝如圖3.5所示。圖3.5愛立信監(jiān)牙模塊ROK101008芯片引腳封裝圖引腳號排列按照從左向右依次為A、B、C、R、T,其中每個字母代表一列,每列又按從下到上依次為1、2、3、4、5、6。常用的局部引腳的說明如表3.1所示:表3.1愛立信ROK101008藍牙模塊芯片局部引腳說明藍牙適配器模塊
藍牙適配器圖片藍牙〔Bluetooth〕是無線網(wǎng)絡(luò)傳輸技術(shù)的一種,原本是用來取代紅外的。與紅外技術(shù)相比,藍牙無需對準就能傳輸數(shù)據(jù),傳輸距離小于10米〔紅外的傳輸距離在幾米以內(nèi)〕。而在信號放大器的幫助下,通訊距離甚至可達100米左右。藍牙技術(shù)非常適合耗電量低的數(shù)碼設(shè)備相互分享數(shù)據(jù),如、掌上電腦等。藍牙標(biāo)準中廣為應(yīng)用的成熟版本為1.1、2.0、3.0、4.0,帶寬約1M-24Mbps〔USB1.1接口的帶寬為12Mbps,USB2.0接口的帶寬為480Mbps,局域網(wǎng)帶寬為10Mbps/100Mbps/1000Mbps,火線IEEE1394帶寬為400Mbps。所以說,藍牙非常適合于傳送小的文件〔10MB以下的圖片、鈴聲、電子書、文稿等等〕,方便與速度兼得。目前最新版本是2.1+EDR版本。第四章系統(tǒng)硬件設(shè)計4.1下位機模塊設(shè)計單片機C8051F120簡介微控制器(MCu)是藍牙應(yīng)用系統(tǒng)的核心,它的選擇將直接影響到系統(tǒng)的性能。C8051F120是Cygnal公司的一種與8051兼容的高速SOC單片機,它具有高速CIP.51內(nèi)核、靈活的I/O交叉開關(guān)、先進的時鐘系統(tǒng)、JTAG系統(tǒng)調(diào)試接口以及多源復(fù)位系統(tǒng)。它性能卓越,內(nèi)核采用流水線結(jié)構(gòu),速度可達100MIPS,比普通的51快40倍,而且在資源豐富、體積小、功耗低、集成度高且調(diào)試方便。下面列出了它的一些主要特性:●高速、流水線結(jié)構(gòu)的8051兼容的CIP.51內(nèi)核;●真正8位500ksps的ADC,帶PGA和8通道模擬多路開關(guān);●2周期的16×16的乘法和累加引擎;●8448(8K+256)字節(jié)的片內(nèi)RAM;●可尋址64K字節(jié)地址空間的外部數(shù)據(jù)存儲器接口;●硬件實現(xiàn)的SPI、SMBus/12C和兩個UART串行接El[10l;●5個通用的16位定時器;●具有6個捕捉/比擬模塊的可編程計數(shù)器/定時器陣列;●FLASH存儲器具有在系統(tǒng)中重新編程能力,可用于非易失性數(shù)據(jù)存儲,并允許現(xiàn)場更新固件;●片內(nèi)JTAG調(diào)試電路允許非侵入式(不占用片內(nèi)資源)、全速、在系統(tǒng)測試;●可在工業(yè)溫度范NI(.45"C一+85。c)N用2.7V~3.6V的電壓工作?!馛8051F120為100腳TQFP封裝。單片機與藍牙模塊的連接單片機與藍牙模塊的硬件連接比擬簡單,其原理如圖4.1所示:圖單片機C8051F120通過UART連接藍牙模塊示意圖圖中的①、②、③分別標(biāo)出了連接中需要注意的3個地方。①數(shù)據(jù)線和信號線單片機C8051F120具有兩個UART,在此選用UART0。在編程時候可通過交叉開關(guān)設(shè)置,將UART0分配到兩個管腳上,例如P0.0(TXD)和P0.I(RXD),分別與藍牙模塊的RXD(AS)和TXD(B5)相連,用于傳輸控制信號。另外,單片機端需另外分配兩個管腳,例如P1.6和P1.7,分別作為流量控制信號CTS和RTS,分別與藍牙模塊的RTS(A6)和CTS(B6)相連。假設(shè)CTS為1那么允許對方發(fā)送,假設(shè)CTS為0那么禁止對方發(fā)送。②藍牙模塊電源線藍牙模塊的電壓管理器共有3個輸入,分別是Vcc(C6)、Vcc_io(C4)和ON(C2)。Vcc提供電源電壓,典型值是3.3V:Vetio為UART提供一個獨立的電源回路,可以與單片機邏輯接口相同,可以連接到Vcc;ON信號控制內(nèi)部電壓穩(wěn)壓器導(dǎo)通或關(guān)斷。將Vcc、Vccio和ON連接在一起使用時,不需要考慮藍牙模塊的加電順序;否那么,那么要嚴格按照“GND.Vet—ON.Vccio〞的順序加電,斷電時候順序相反。在此處采用前者,將Vet、Vccio和ON一起連接到3.3V的外部電源上。③藍牙模塊天線藍牙模塊ANT管腳連接到50歐的天線,天線的電壓駐波比小于2:1。在本課題的實驗板的設(shè)計中,單片機和藍牙模塊是焊接在一個PCB板上的。由于藍牙模塊采用平面封裝,而且引腳很密集,要想直接焊接到PCB板上很困難,而且天線也很難焊接上去。因而自行設(shè)計了一個輔助電路板,先將藍牙模塊焊接到此輔助電路板上,然后將要用到的藍牙模塊的局部引腳引出來,通過插座將藍牙模塊連接到PCB板上,這樣就使得藍牙模塊的裝卸變得很方便。輔助電路板引出的管腳有GND.地線、VCC.3.3V、數(shù)據(jù)收發(fā)線RXD和TXD、流控線RTS和CTS、使能信號線.EN、復(fù)位信號線.RESET,其中BTEN即圖4.6中的ON信號,實際應(yīng)用中將它與VCC接在一起,其他的與單片機相連。圖4.2所示。圖藍牙模塊ROKl01008輔助電路板引出管腳圖PC機與藍牙模塊的連接PC端硬件連接比擬簡單,將藍牙USB適配器直接通過USB連接到PC上即可。圖4.3PC端硬件結(jié)構(gòu)圖需要注意的是,插上適配器后,如果是在XP系統(tǒng)下,系統(tǒng)會自動裝載藍牙適配器驅(qū)動程序,因為在此是要開發(fā)自己的基于HCI層的應(yīng)用程序,而自動安裝的驅(qū)動程序是針對高級應(yīng)用開發(fā)的,覆蓋了HCI層,因此需要將其卸載,安裝針對特定適配器的硬件驅(qū)動程序。此處使用的藍牙USB適配器是CSRBlueCore04,安裝CSRUSBDriver1.18,安裝成功后可在“設(shè)備管理器’’.“通用串行總線控制器"中查找到“CSRBlueCoreBluetooth",如下圖。圖CSRBlueCoreBluetooth安裝成功示意圖4.3單片機與家用電器的連接家用電器控制模塊其主要功能是根據(jù)接收系統(tǒng)中心控制模塊的命令,以控制電視機開關(guān)為例,將控制電視機開關(guān)的單片機引腳設(shè)定為p1^3,當(dāng)該引腳為高電平時繼電器吸合,電視開,當(dāng)為低電平時繼電器斷開,電視機關(guān)。4.5家電控制電路原理圖C8051F120收到中心控制器發(fā)送的控制信號后P1.3引腳變?yōu)楦唠娖剑?dāng)光耦合器導(dǎo)通,呆滯繼電器吸合,給信息插座通電,從而接通家用電器。當(dāng)有警情是P1.4和P1.5變?yōu)楦唠娖剑瑔纹瑱C那么通過TXD和RXD發(fā)送報警信號,當(dāng)藍牙模塊輸出到中心控制器。在上述電路中電阻R1的選擇至關(guān)重要,他影響著2N45開通與關(guān)閉的性能。R1較小時,可減小開關(guān)時間與開關(guān)損耗,R1較大時那么相反。一般根據(jù)產(chǎn)品手冊上提供的數(shù)據(jù)作為參考,在參考值〔48歐姆〕的1倍到10倍見選取,在這里選取5倍的參考值,即240歐姆。系統(tǒng)電源模塊原理圖C8051F120微控制器的內(nèi)核和I/O使用同一電源電壓,只需。圖4.4所示,輸入9V直流電源,電感L1用于限制瞬態(tài)電流,經(jīng)過C1、C2濾波,然后通過SPX1117M-3.3將電源穩(wěn)壓至3.3V,其輸出用了一個4.7uf的電容來改善瞬態(tài)響應(yīng)和穩(wěn)定性。當(dāng)正確連接電源后,LED發(fā)光作為電源工作指示燈.為了降低噪聲和出錯幾率,我們用電感L2、L3將數(shù)字電源和模擬電源隔離。圖系統(tǒng)中有些外圍器件的工作電壓為5V,比方控制家電的局部,所以我們還需要5V穩(wěn)壓電路,如圖4.5所示,其工作原理是輸入9V的直流電源,經(jīng)C8、C9濾波,然后通過LM78L05將電源穩(wěn)壓至5V.圖5V供電原理圖SPX1117M是Sipex公司生產(chǎn)的LDO芯片,其特點是輸出電流最大,輸出電壓高,穩(wěn)定性好。其輸出蒂娜劉可到達800MA,輸出電壓的精度在+-1%以內(nèi)還具有電流限制和熱保護功能,被廣泛用于手持設(shè)備、數(shù)字家電和工控領(lǐng)域第五章系統(tǒng)軟件設(shè)計系統(tǒng)的軟件設(shè)計分為單片機端軟件設(shè)計和PC端軟件設(shè)計兩大塊。5.1單片機端軟件設(shè)計單片機端軟件采用嵌入式C語言的編程,開發(fā)環(huán)境為Keil,在本設(shè)計中只需完成藍牙根本數(shù)據(jù)傳輸即可。此局部軟件包括初始化、藍牙交互、處理數(shù)據(jù)三個局部。初始化包括系統(tǒng)初始化和藍牙初始化。系統(tǒng)初始化包括系統(tǒng)時鐘初始化、管腳分配、串口初始化、定時器初始化等,藍牙初始化是通過UART給藍牙模塊發(fā)送一系列初始化指令,藍牙模塊返回事件,交互完成一系列的復(fù)位、鑒權(quán)、讀地址等初始化操作。藍牙交互就是初始化完成后,假設(shè)本地藍牙作從設(shè)備,那么等待遠端藍牙設(shè)備的建鏈請求,如果接受請求,那么繼續(xù)等待建鏈成功,獲得一個連接句柄,從而即可進行數(shù)據(jù)交換;假設(shè)本地藍牙作主設(shè)備,那么進行一系列主動查詢、建鏈、發(fā)送數(shù)據(jù)、斷鏈等操作。處理數(shù)據(jù)就是將有效數(shù)據(jù)轉(zhuǎn)存到相應(yīng)位置等一系列后續(xù)操作。需要注意的是,在程序的主循環(huán)中,需要實時判斷串口接收緩沖區(qū)是否有數(shù)據(jù),有數(shù)據(jù)那么調(diào)用HCI狀態(tài)機進行處理。程序流程如圖5.1所示。系統(tǒng)時鐘初始化用來設(shè)置和啟動系統(tǒng)時鐘。在這里采用外部24M外部振蕩器提供系統(tǒng)時鐘。首先使能24M外部晶振并等待外部晶振就緒,然后利用PLL將其倍頻為96M作為系統(tǒng)時鐘。管腳分配用來將UART0的TX和RX分配到管腳p0.O和p0.1,并將pO.0設(shè)為輸出模式、p0.1設(shè)為輸入模式。串口初始化調(diào)用單片機UART接12函數(shù)uart_rest0、uart_init0實現(xiàn),其中uart_initoqb涉及具體單片機存放器的操作包括設(shè)置UART0工作模式、設(shè)置定時器、設(shè)置波特率等。定時器初始化局部實現(xiàn)對定時器1初始化和啟動,定時間隔為lOms。在系統(tǒng)初始化完成之后,就需要開始對藍牙設(shè)備進行操作。對藍牙設(shè)備的操作需要構(gòu)造一個藍牙HCI設(shè)備控制結(jié)構(gòu)體hcidev。藍牙設(shè)備操作的復(fù)雜性造成此結(jié)構(gòu)體也相對復(fù)雜,具體如下圖:①UART控制結(jié)構(gòu)體uartdev變量ud,唯一的標(biāo)識一個串口連接。②藍牙HCI設(shè)備信息結(jié)構(gòu)體hcidevinfo變量hd—info,保存藍牙地址、設(shè)備類型、緩沖區(qū)大小等。③藍牙HCI設(shè)備連接控制結(jié)構(gòu)體hcidevcon變量hdcon,保存連接狀態(tài)、連接句柄、遠端地址、時隙等。④藍牙HCI設(shè)備設(shè)置結(jié)構(gòu)體hcidevset變量hdset,保存用戶設(shè)置信息,包括掃描允許、連接超時、鑒權(quán)允許、查詢參數(shù)等。⑤藍牙HCI設(shè)備標(biāo)志位結(jié)構(gòu)體hci—dev_flags變量hd_flags,標(biāo)識查詢和連接狀態(tài)。圖5.2藍牙HCl控制結(jié)構(gòu)體hci—dev數(shù)據(jù)結(jié)構(gòu)圖因為此系統(tǒng)中只有一個單片機只與一個UART0相連的藍牙模塊,即藍牙HCI設(shè)備是唯一的,因此此結(jié)構(gòu)體應(yīng)該定義為全局變量并且整個程序運行空間內(nèi)只允許定義一個,為便于討論,假設(shè)定義此變量為hd,即:藍牙初始化包括藍牙HCI復(fù)位、藍牙參數(shù)設(shè)定和藍牙一系列初始化指令的發(fā)送。藍牙HCI復(fù)位主要完成對hd各項默認值的設(shè)置,包括將hd.hd—info中的acl_num和acl一1en全置0,cmd—num置1,以防止藍牙讀緩沖區(qū)大小指令Read—Buffer—Size執(zhí)行失敗后得到未定義的值;將hd.hd—con中的con—status的值賦為NOTCONNECTED,將conhandle的值設(shè)為.1等等;藍牙參數(shù)設(shè)定通過對hd.hdset相應(yīng)參數(shù)直接賦值實現(xiàn),可根據(jù)具體需要進行不同的設(shè)置;藍牙初始化指令的發(fā)送是藍牙設(shè)備初始化的關(guān)鍵。在此可調(diào)用藍牙HCI指令接口完成。至于具體需要哪些指令來進行初始化,可根據(jù)需要增減,但有一些指令是必備的。在此提供兩個初始化指令集合initl和init2,其中btinitnecessary為強制性、必備的指令集,bt_init_optional是非強制性、可選的指令集,見表5.1。調(diào)用HCI指令接口函數(shù)時需要傳入相應(yīng)參數(shù)列表結(jié)構(gòu)體,結(jié)構(gòu)體各項的參數(shù)值從已設(shè)定的hd.hdset中提取。各指令之間最好是加2.5ms的延時,在保證前一條指令執(zhí)行成功后才發(fā)送下一條指令。指令包的流控由hd.hdinfo.cmdnum控制。初始化指令集在進入藍牙根本數(shù)據(jù)傳輸實驗工程之前,設(shè)置了一個標(biāo)志位btrole,用戶可選擇本地藍牙的角色即是作為主設(shè)備還是從設(shè)備進入實驗。不管是作為主設(shè)備還是從設(shè)備,藍牙初始化局部是相同的。初始化完成以后,本地藍牙作主設(shè)備時,首先要主動發(fā)起查詢,查詢到遠端藍牙設(shè)備之后,要主動發(fā)起連接,連接建立以后,數(shù)據(jù)可以在本地藍牙和遠端藍牙之間進行傳輸,既可由本地藍牙發(fā)往遠端藍牙,也可由遠端藍牙發(fā)往本地藍牙。本地藍牙作從設(shè)備時,循環(huán)等待遠端藍牙的連接請求,收到連接請求事件以后,通知用戶決定是否接受此次連接請求。假設(shè)接受,那么發(fā)送HCIAccept_Connection,假設(shè)拒絕,那么發(fā)送HCI_reject_connection_request。單片機端和PC端之間的藍牙連接建立完成后,就可以在兩者之間進行數(shù)據(jù)的傳輸了。由于單片機端不支持數(shù)據(jù)輸入,因而本系統(tǒng)采用PC端錄入數(shù)據(jù),向單片機端發(fā)送,單片機端接收到數(shù)據(jù)后。這就涉及到數(shù)據(jù)的檢測和處理。HCI狀態(tài)機在檢測到ACL數(shù)據(jù)分組到來后經(jīng)過一系列的處理,將實際所傳數(shù)據(jù)存儲在一個數(shù)據(jù)接收緩沖區(qū)里,主機對標(biāo)志位data_ready_flag的檢測放在主循環(huán).ready程序中,從而保證數(shù)據(jù)能及時得到處理。單片機端作從設(shè)備時,假設(shè)設(shè)置為自動回傳翻開,還可將已接收數(shù)據(jù)回傳給PC。單片機程序:以控制電視機開關(guān)為例:設(shè)定0X00表示關(guān),0x01表示開Voidbt_basic〔〕{display_interface();\\顯示界面Uart_init();\\串口初始化HCI_init();\\Hci設(shè)備初始化Clear_data_rev_buf();\\清空接收數(shù)據(jù)緩沖區(qū)Hci_param_set(hd);\\設(shè)置HCI設(shè)備參數(shù)TV_0n_off=P1^3;\\p1^3在電路連接時控制電視}While〔1〕{\\如果UART接收緩沖區(qū)非空,那么調(diào)用狀態(tài)機處理。if(hci_buf_status!=HCI_BUFEMPTY){HCI_state();}If(local_bt_role)\\假設(shè)由PC機發(fā)送數(shù)據(jù),單片機接收數(shù)據(jù){if(event_evcode==CONNECTlONREQUEST.)\\藍牙連接請求HCIAccept_Connection;hci_event_connection_request(event.param);if(event_evcode==CONNECTIONCOMPIETE)\\表示藍牙設(shè)備已連接{oder=Hci_rev_acl_data(…));\\接收控制信息Switch(oder){case0x00TV_on_off=0;\\電視關(guān)Case0x01TV_on_off=1;\\電視開}}If(event_evcode==DISCONNECTION_COMP)hci_event_disconnection_complete(event.param);\\斷開連接}}5.2PC端軟件設(shè)計PC端采用面向?qū)ο蟮腃++編程,在VC++6.0開發(fā)平臺下實現(xiàn)了基于藍牙HCI層通信的根本數(shù)據(jù)傳輸控制程序。PC端操作系統(tǒng)為XP,采用的藍牙設(shè)備為藍牙USB適配器,適配器內(nèi)嵌藍牙芯片為CSR(CambridgeSiliconRadio)公司的BlueCore04。藍牙USB適配器和PC之間通過USB接口進行連接和通信,因而數(shù)據(jù)的傳輸利用的是藍牙HCIUSB傳輸層。USB是由“通用串行總線實施論壇〞組織公開發(fā)布推廣的一種串行接口標(biāo)準。藍牙沒有為USB接口開發(fā)新的協(xié)議,而是使用已有的USB協(xié)議。在驅(qū)動程序方面,一方面,xP系統(tǒng)自身會提供底層的硬件驅(qū)動程序和簡單的上層應(yīng)用程序,在藍牙USB適配器連接到PC之后,會自動裝載;另一方面,不同的藍牙芯片廠家會提供不同的藍牙USB適配器的硬件驅(qū)動程序,便于技術(shù)人員進行針對特定應(yīng)用的開發(fā)。由于XP系統(tǒng)自帶的驅(qū)動直接面向應(yīng)用,屏蔽了HCI層,所以在此處采用CSR公司提供的藍牙USB驅(qū)動csrbc01.inf',對應(yīng)于此驅(qū)動附有一系列的控制字。安裝好藍牙USB適配器之后,在VC++6.0編程平臺中,采用WindowsAPI函數(shù),結(jié)合驅(qū)動程序提供的一系列控制字,就可以實現(xiàn)對藍牙USB適配器的訪問。PC端基于HCIUSB傳輸層開發(fā)藍牙通信的步驟和流程類似于上文中單片機基于藍牙HCIUART層的開發(fā),它們都遵循藍牙HCI層的一般通信流程,區(qū)別就在于利用的HCI傳輸層不同。利用HCIUSB傳輸層傳輸時,數(shù)據(jù)是通過USB端點來收發(fā)的,USB端點分為4大類,分別是控制端點、塊端點、中斷端點和同步端點。不同的端點實現(xiàn)不同的功能??刂贫它c用來配置和控制USB設(shè)備,在此處可用于主機(PC)向主機控制器(藍牙USB適配器)發(fā)送HCI指令分組。塊端點用來傳送ACL數(shù)據(jù)分組。中斷端點用來保證HCI事件分組的及時接收。同步端點用來傳輸SCO數(shù)據(jù)分組。由此可見,在采用USB傳輸層時,不同的HCl分組可由不同的端點類別來區(qū)分,因而不需要再像HCIUART傳輸層那樣在分組前面加分組指示器。圖5.3PC端藍牙根本數(shù)據(jù)傳輸模塊流程圖程序的實現(xiàn)采用基于對話框的MFC編程。在程序中構(gòu)造了一個USBStack類負責(zé)對藍牙USB適配器的控制,包括翻開設(shè)備、發(fā)送HCI指令分組、收發(fā)ACL數(shù)據(jù)分組、接收HCI事件分組等。類內(nèi)部對藍牙USB適配器的訪問通過WindowsAPI函數(shù)配合CSRBlueCore控制字實現(xiàn),具體的類的細節(jié)參照CSR公司提供的CSRUSBDongle開發(fā)文檔((CSRUSB圖5.4USBStack類定義PC端的主要函數(shù)列表當(dāng)只有一個藍牙USB適配器連接到PC上時,適配器的訪問路徑默認為“\\\\\.\\CSRO〞,當(dāng)插上第二個藍牙USB適配器時,第二個適配器的訪問路徑默認為“\\\\.\\CSRl’’,以此類推。此處默認只連有一個適配器,那么翻開藍牙設(shè)備時,調(diào)用m_bt.open_connection(“\\\.\\CSR0〞)完成藍牙適配器的翻開和兩個后臺線checkhcievent0和check—acl—data(),此處采用多線程編程線程checkhcievent0和check—acl—data()分別用于實時接收主控制器返回的HCI事件分組和ACL事件分組藍牙設(shè)備翻開以后,要對藍牙進行初始化。類似于單片機端對藍牙模塊的初始化操作,在此也可靈活選擇初始化指令集和各初始化指令的參數(shù),由于在此處只是實現(xiàn)一個根本的測試程序,所以對這些指令的參數(shù)的選擇只是按一般的需要進行設(shè)置和取值,比方HCI_Write_Scan_Enable指令的掃描允許參數(shù)直接設(shè)為0x03表示查詢掃描和呼叫掃描同時允許,以下的指令參數(shù)的設(shè)定類似,不再贅述。指令分組也直接采用了十六進制數(shù)串集中發(fā)送出去,指令與指令之間采用了一定的延時以保證主機控制器指令緩沖區(qū)不會溢出,下面給出了藍牙初始化指令集的代碼例如(限于篇幅,下文中的查詢、建立連接等操作不再給出代碼,只作文字說明)。初始化完成之后,PC會收到藍牙返回的多個HCI事件,從中捕獲讀緩沖區(qū)大小事件和讀本地藍牙地址事件,解析出主機控制器指令緩沖區(qū)和數(shù)據(jù)緩沖區(qū)大小將其保存,解析出本地藍牙地址將其保存并顯示,然后就可以進行對周圍藍牙設(shè)備的查詢。查詢完成后,PC捕獲藍牙返回的查詢結(jié)果事件,從中解析出查詢到的遠端藍牙的地址,將其保存在m_bt.remotebdaddr[6],根據(jù)獲得的遠端藍牙地址,可發(fā)起建立連接請求,其中分組類型參數(shù)選用Ox0008,表示建立的連接為DMl類型。與遠端藍牙連接建立完成后,會返回建立連接完成事件,需要注意的是,假設(shè)建立連接時當(dāng)前在兩端藍牙設(shè)備之間已經(jīng)存在連接,那么只會返回最大時隙改變事件。因而發(fā)送建立連接請求指令之后,要捕獲返回的事件,假設(shè)是連接建立完成事件或最大時隙改變事件且status參數(shù)為O,那么表示建立連接成功,否那么失敗,要重新發(fā)起連接請求。連接建立成功之后,就可以進行數(shù)據(jù)的收發(fā)了。數(shù)據(jù)的傳送是以ACL數(shù)據(jù)分組的格式進行的。首先要根據(jù)已建立連接的連接句柄和PB、BC標(biāo)志組合ACL分組頭,然后根據(jù)要發(fā)送數(shù)據(jù)的總長度獲知ACL數(shù)據(jù)分組的長度和L2CAP分組的長度,再設(shè)定L2CAPCID,最后才是真正要發(fā)送的數(shù)據(jù)的寫入,具體的格式在上文中已給出。在此處,構(gòu)造一個ACL
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二期別墅裝修2024年專用勞務(wù)合同
- 二零二五產(chǎn)學(xué)研產(chǎn)學(xué)研合作項目風(fēng)險防控協(xié)議:風(fēng)險共擔(dān)與利益共享3篇
- 2025年中國塑料假發(fā)市場調(diào)查研究報告
- 文學(xué)思潮中的陳國棟視角-深度研究
- 2025至2031年中國葡萄選果機行業(yè)投資前景及策略咨詢研究報告
- 2025年新能源充電樁安裝與運營管理服務(wù)合同2篇
- 氫能源經(jīng)濟體系構(gòu)建-深度研究
- 二零二五年度電梯安裝與智能化改造及運營服務(wù)合同模板2篇
- 二零二五年度中小企業(yè)周轉(zhuǎn)借款合同模板3篇
- 2025至2030年中國纏繞袋數(shù)據(jù)監(jiān)測研究報告
- 2024年中國科學(xué)技術(shù)大學(xué)少年創(chuàng)新班數(shù)學(xué)試題真題(答案詳解)
- 家長心理健康教育知識講座
- GB/T 292-2023滾動軸承角接觸球軸承外形尺寸
- 軍人結(jié)婚函調(diào)報告表
- 民用無人駕駛航空器實名制登記管理規(guī)定
- 北京地鐵6號線
- 航空油料計量統(tǒng)計員(初級)理論考試復(fù)習(xí)題庫大全-上(單選題匯總)
- 諒解書(標(biāo)準樣本)
- 西班牙語構(gòu)詞.前后綴
- 《工程測試技術(shù)》全套教學(xué)課件
評論
0/150
提交評論