周鋒 吳頻頻 王素梅
摘 要:本文論述了一種基于藍(lán)牙的數(shù)據(jù)傳輸方法,并且在微處理器控制系統(tǒng)下予以實(shí)現(xiàn)。該傳輸方案有3個(gè)特點(diǎn):針對(duì)數(shù)據(jù)特點(diǎn),數(shù)據(jù)流量小,串口通信;借用廣泛使用的安卓智能移動(dòng)客戶端(智能手機(jī))顯示,較少設(shè)備硬件;傳輸方式傳輸穩(wěn)定,通用性強(qiáng)。本文介紹的藍(lán)牙傳輸方法,硬件上使用了藍(lán)牙4.0技術(shù),藍(lán)牙模塊設(shè)計(jì)RS232通信接口,可以廣泛應(yīng)用電子設(shè)備無線通信;軟件上獨(dú)自開發(fā)APP應(yīng)用軟件,支持RS232通訊中常用的ASCII碼和16進(jìn)制2種通信協(xié)議。本算法在某移動(dòng)式綜合氣象站(ASCII碼協(xié)議)和某微型氣象站(16進(jìn)制協(xié)議)中得到了成功使用,從數(shù)臺(tái)設(shè)備連續(xù)運(yùn)行一年的情形來看,數(shù)據(jù)的輸出效果良好,交互快捷有效,傳輸穩(wěn)定,APP軟件運(yùn)行穩(wěn)定。
關(guān)鍵詞:數(shù)據(jù)傳輸;藍(lán)牙4.0;APP軟件;智能移動(dòng)終端
中圖分類號(hào):TP368.12 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1003-5168(2018)14-0027-03
A Method and Application of Data Transmission Based on Bluetooth
ZHOU Feng1 WU Pinpin2 WANG Sumei3
(1.CAMA (Luoyang) Environment Monitoring Co., Ltd.,Luoyang Henan 471009;2. Luoyang Vocational & Technical College, Luoyang Henan 471008;3. Shandong Polytechnic College, Jining Shandong 272063)
Abstract: This paper discussed a data transmission method based on Bluetooth and was implemented under the microprocessor control system. The transmission scheme had three characteristics: the data traffic was small, the serial port communication was small, and the widely used Android smart mobile client (smart phone) displays, less device hardware; transmission mode was stable and versatile. The Bluetooth transmission method introduced in this paper used Bluetooth 4.0 technology and Bluetooth module to design RS232 communication interface. It could be widely used for wireless communication of electronic devices. APP software was developed on the software alone. It supported the common ASCII code and two kinds of communication protocols in the RS232 communication. This algorithm had been successfully used in a mobile integrated weather station (ASCII code Protocol) and a micro meteorological station (16). From the case of a year of continuous operation of several devices, the output of the data was good, the interaction was fast and effective, the transmission was stable, and the APP software was stable.
Keywords: data transmission;Bluetooth 4.0;APP software;intelligent mobile terminal
1 研究背景
數(shù)據(jù)傳輸在微處理器系統(tǒng)中有重要意義。早期的微處理器系統(tǒng),由于技術(shù)原因,數(shù)據(jù)傳輸采用有線串口通信(RS232,485等)傳輸,需要配置電腦等顯示設(shè)備,通常的接收設(shè)備都是具備串口的各種形式的電腦[1]。該傳輸方式需要滿足以下幾個(gè)要求:其一,接受設(shè)備需要在微處理器系統(tǒng)的最大傳輸距離內(nèi);其二:接收設(shè)備需要和微處理器系統(tǒng)同時(shí)開機(jī)[2]。隨著傳輸技術(shù)的發(fā)展,短距離無線傳輸技術(shù)(如ZigBee等)應(yīng)運(yùn)而生,但這些無線數(shù)據(jù)傳輸模式仍然為點(diǎn)到點(diǎn)的傳輸模式,需要專用的數(shù)據(jù)顯示和接收設(shè)備(計(jì)算機(jī)),只斷開微處理器系統(tǒng)和顯示設(shè)備之間物理連接信號(hào)線。
為了實(shí)現(xiàn)真正意義上的無線傳輸,本文在微處理器系統(tǒng)的通信接口連接藍(lán)牙芯片,通過加密處理,實(shí)現(xiàn)微處理器系統(tǒng)的藍(lán)牙芯片與智能移動(dòng)終端直連,通過定制APP軟件,按照定制通信協(xié)議,實(shí)現(xiàn)微處理器系統(tǒng)數(shù)據(jù)與APP軟件的雙向交互。微處理器系統(tǒng)上傳的數(shù)據(jù)可在智能移動(dòng)終端上顯示和存儲(chǔ)。智能移動(dòng)終端的廣泛普及和使用,為實(shí)現(xiàn)真正意義上的無線傳輸提供了必備條件。野外保障系統(tǒng)由于受使用環(huán)境、設(shè)備供電和運(yùn)輸?shù)鹊南拗?,采用藍(lán)牙傳輸、智能移動(dòng)終端接收數(shù)據(jù)的交互方式顯得十分必要。
2 數(shù)據(jù)備份和單片機(jī)系統(tǒng)的整體介紹
近年來,無線傳輸在微處理器系統(tǒng)中被廣泛使用,而數(shù)據(jù)傳輸方式也較多,包括點(diǎn)對(duì)點(diǎn)傳輸、GPRS長距離無線傳輸、藍(lán)牙和Wi-Fi傳輸?shù)?。本文主要介紹藍(lán)牙傳輸。微處理器系統(tǒng)通過TTL電平或者RS232與藍(lán)牙模式連接,具體連接方式[1]如圖1所示。微處理器把采集到的最新數(shù)據(jù)按照算法規(guī)定的格式和順序存到指定的緩存里面,新數(shù)據(jù)覆蓋上個(gè)周期的數(shù)據(jù),根據(jù)時(shí)序信號(hào),把緩存中的數(shù)據(jù)通過RS232輸出,而寫入位置和寫入的字節(jié)數(shù)遵循通信機(jī)制。在數(shù)據(jù)傳輸前,藍(lán)牙模塊需要與智能移動(dòng)終端APP建立連接,首次通信需要通過密碼驗(yàn)證,防止設(shè)備傳輸?shù)臄?shù)據(jù)被竊。在APP軟件中需要選擇對(duì)應(yīng)的數(shù)據(jù)傳輸協(xié)議,如果使用ASCII碼傳輸,則采用ASCII碼協(xié)議,否則選擇16進(jìn)制協(xié)議[3]。
3 藍(lán)牙4.0模塊
藍(lán)牙4.0是藍(lán)牙3.0+HS規(guī)范的補(bǔ)充,專門面向?qū)Τ杀竞凸亩加休^高要求的無線方案。其主要具有以下幾方面特點(diǎn):超低的峰值、平均和待機(jī)模式功耗;不同廠商設(shè)備交互性;無線覆蓋范圍增強(qiáng);完全向下兼容;低延遲。藍(lán)牙4.0支持雙模式和單模式兩種傳輸方式。雙模式中,低功耗藍(lán)牙功能集成在現(xiàn)有的經(jīng)典藍(lán)牙控制器中,或在現(xiàn)有經(jīng)典藍(lán)牙技術(shù)芯片上增加低功耗堆棧,整體架構(gòu)基本不變,因此成本增加有限。單模式面向高度集成、緊湊的設(shè)備,使用一個(gè)輕量級(jí)連接層提供超低功耗的待機(jī)模式操作、簡(jiǎn)單設(shè)備恢復(fù)和可靠的點(diǎn)對(duì)多點(diǎn)的數(shù)據(jù)傳輸,能讓聯(lián)網(wǎng)傳感器在藍(lán)牙傳輸中安排好低功耗藍(lán)牙流量的次序。此外,其還具有高級(jí)節(jié)能和安全加密連接?;谏鲜鰞?yōu)勢(shì),藍(lán)牙4.0可廣泛用于衛(wèi)生保健、體育健身、家庭娛樂和安全保障等諸多領(lǐng)域。
本文采用的藍(lán)牙模塊詳細(xì)電路結(jié)構(gòu)具有以下幾方面特點(diǎn)。①該藍(lán)牙模塊使用主從模塊,引出VCC、GND、TXD、RXD和KEY接口引腳、藍(lán)牙連接狀態(tài)引出腳(STATE),未連接輸出低,連接后輸出高。②LED指示藍(lán)牙連接狀態(tài),快閃表示沒有藍(lán)牙連接,慢閃表示進(jìn)入AT模式,雙閃表示藍(lán)牙已連接并打開了端口。③底板設(shè)置防反接二極管,帶3.3V的LDO,輸入電壓3.6~6V,未配對(duì)時(shí)電流約30mA,配對(duì)后約10mA,輸入電壓禁止超過7V。④接口電平3.3V,可以直接連接各種單片機(jī)(51,AVR,PIC,ARM和MSP430等),5V單片機(jī)也可直接連接。⑤空曠地的有效距離為20m(功率等級(jí)為CLASS 2),超過20m數(shù)據(jù)通信質(zhì)量變差,數(shù)據(jù)傳輸易丟包。⑥配對(duì)以后當(dāng)全雙工串口使用,無需了解任何藍(lán)牙協(xié)議,支持8位數(shù)據(jù)位、1位停止位,可設(shè)置奇偶校驗(yàn)的通信格式,不支持其他格式。⑦可以通過拉按鍵進(jìn)入AT命令模式設(shè)置參數(shù)和查詢信息。⑧體積小巧,工廠貼片生產(chǎn),保證貼片質(zhì)量,并套透明熱縮管,有一定的防靜電能力。⑨可通過AT命令切換為主機(jī)或者從機(jī)模式,也可通過AT命令連接指定設(shè)備。⑩支持4 800~57 600bps的標(biāo)準(zhǔn)波特率。
4 移動(dòng)客戶端及APP軟件
藍(lán)牙數(shù)據(jù)接收設(shè)備采用安卓系統(tǒng)的智能移動(dòng)終端,在智能移動(dòng)終端開發(fā)藍(lán)牙數(shù)據(jù)接收APP軟件。APP軟件工作流程圖見圖2。[開啟APP][開啟藍(lán)牙接收][查找準(zhǔn)備連接藍(lán)牙模塊][是否有過連接?][是][否][輸入密碼][建立配對(duì)][選擇交互協(xié)議][采用16進(jìn)制協(xié)議][采用ASCII協(xié)議][選擇裝備建立連接][設(shè)備型號(hào)][按照設(shè)置周期發(fā)送][招測(cè)命令][接收,解析、存儲(chǔ)][顯示數(shù)據(jù)][開始下個(gè)周期交互]
圖2 APP軟件數(shù)據(jù)解析結(jié)構(gòu)及工作流程圖
APP軟件完成藍(lán)牙模式的查找,與藍(lán)牙模塊建立加密連接(第一次連接需要輸入連接密碼),然后選擇準(zhǔn)備建立連接的設(shè)備型號(hào)。APP軟件設(shè)置完成后,在微處理器正常工作時(shí),即可與微處理器系統(tǒng)進(jìn)行正常交互,實(shí)現(xiàn)對(duì)微處理器通過藍(lán)牙上傳的數(shù)據(jù)進(jìn)行招測(cè)或者自動(dòng)接收數(shù)據(jù),并對(duì)數(shù)據(jù)進(jìn)行解析、存儲(chǔ)、顯示。
APP工作過程如下。第一步:開啟APP軟件,點(diǎn)擊允許藍(lán)牙傳輸,搜索設(shè)備后會(huì)有“CAMA1”(定義藍(lán)牙名字,可以變更)設(shè)備出現(xiàn),第一次連接需要輸入密碼“1234”(藍(lán)牙配對(duì)密碼,可以重置)。如果找不設(shè)備,需要開啟電源箱,查看電源是否有電。依據(jù)藍(lán)牙模塊指示燈閃爍狀態(tài)判斷是否正常工作。配對(duì)成功后指示燈長亮。第二步,選擇需要連接的設(shè)備(WS600-6要素站),選擇設(shè)備后要選中“顯示接收數(shù)據(jù)記錄”和“本地存儲(chǔ)接收數(shù)據(jù)”,否則數(shù)據(jù)不能在接收終端上存儲(chǔ)。第三步,上述設(shè)置完成后,APP提示與設(shè)備連接正常,等待數(shù)據(jù)上傳,數(shù)據(jù)默認(rèn)10s(可以設(shè)定間隔)刷新一次。詳情界面見圖3。
5 藍(lán)牙傳輸方法的實(shí)現(xiàn)
本文論述藍(lán)牙傳輸方式在凱邁(洛陽)環(huán)測(cè)有限公司新開發(fā)某便攜式自動(dòng)氣象站中的應(yīng)用。該便攜式自動(dòng)氣象站為科研、軍事和應(yīng)急等氣象信息野外保障,需要實(shí)時(shí)顯示和記錄保障地區(qū)的氣象信息。藍(lán)牙傳輸方式在凱邁(洛陽)環(huán)測(cè)有限公司新開發(fā)某便攜式自動(dòng)氣象站中應(yīng)用的整機(jī)結(jié)構(gòu)框圖如圖4所示,ZQX-3為傳感器,內(nèi)置藍(lán)牙4.0模塊,蓄電池為傳感器和藍(lán)牙模塊供電;數(shù)據(jù)接收APP客戶端為一款安卓的三星平板電腦,續(xù)航時(shí)間超過30h。APP接收的數(shù)據(jù)以TXT格式文件存儲(chǔ)在智能移動(dòng)客戶端內(nèi),按天存儲(chǔ),一天存儲(chǔ)2個(gè)TXT文件,分別存儲(chǔ)ASCII碼文件和16進(jìn)制文件,數(shù)據(jù)存儲(chǔ)如圖5所示。
6 結(jié)語
本文介紹的藍(lán)牙傳輸方法,由于功耗低,大大降低了便攜式氣象站數(shù)據(jù)傳輸模塊的功耗;在設(shè)備蓄電池容量確定時(shí),延長整機(jī)續(xù)航時(shí)間;使用無線傳輸模式,解決便攜式氣象設(shè)備和顯示設(shè)備的(筆記本電腦)連接線,減少設(shè)備使用局限性。智能可移動(dòng)終端取代顯示器(筆記本電腦),解決了筆記本電腦工作需要交流供電和續(xù)航時(shí)間短的問題,從而擴(kuò)大了野外設(shè)備使用范圍,延長了工作時(shí)間。從一年來的運(yùn)行效果來看,該無線藍(lán)牙數(shù)據(jù)傳輸模塊運(yùn)行正常,傳輸穩(wěn)定,抗干擾能力強(qiáng),APP軟件無死機(jī)現(xiàn)象發(fā)生。
參考文獻(xiàn):
[1]張剛毅:?jiǎn)纹瑱C(jī)原理及應(yīng)用[M].北京:高等教育出版社,2003.
[2]譚浩強(qiáng).C語言設(shè)計(jì)[M].北京:清華大學(xué)出版社,2005.
[3]李黃,自動(dòng)氣象站實(shí)用手冊(cè)[M].北京:氣象出版社,2007.