紀利琴 王健 熊偉
【摘 要】藍牙通信,作為一種短距離的數(shù)據(jù)通信方式,應(yīng)用非常廣泛。但基于單片機的藍牙設(shè)備之間的通信,許多人在實際開發(fā)、設(shè)計時,總是遇到不同的問題,無法實現(xiàn)。本文運用51單片機作為藍牙設(shè)備的控制器,實現(xiàn)了基于藍牙通信的數(shù)據(jù)傳輸,并詳細介紹了設(shè)計調(diào)試的過程,給電子愛好者或設(shè)計開發(fā)者提供一定的方法及經(jīng)驗。
【關(guān)鍵字】藍牙通信;單片機;配置
中圖分類號: TP368.1文獻標識碼: A文章編號: 2095-2457(2019)19-0042-001
DOI:10.19694/j.cnki.issn2095-2457.2019.19.018
0 引言
目前,使用較為廣泛的短距離無線數(shù)據(jù)傳輸方式有藍牙通信(Bluetooth),紅外通信(IrDA)、Zig-Bee通信以及無線局域網(wǎng)(Wi-Fi)通信等等。其中,藍牙通信以其體積小、集成度高、開放的標準接口等特點,廣泛應(yīng)用于移動終端設(shè)備、智能家電、醫(yī)療器械、工業(yè)自動控制等領(lǐng)域[1]。然基于藍牙通信的設(shè)備多以單片機與PC機、手機藍牙與單片機、PC機與PC機等方式實現(xiàn),單片機與單片機基于藍牙的通信,理論上可以,但沒有實際實現(xiàn)的例子。本設(shè)計實現(xiàn)的即是單片機與單片機之間通過藍牙的方式進行通信。
1 組成框圖
本設(shè)計組成框圖見圖1所示,其中將一方設(shè)為主機,另一方設(shè)為從機。主機在結(jié)構(gòu)上由單片機和藍牙通信模塊組成,從機同樣由單片機與藍牙模塊組成,且為了測試兩則通信的成功與否,在從機單片機端,輸出用八個指示燈指示通信的狀態(tài)。
主機單片機和從機單片機均為51單片機,藍牙通信模塊均為HC08。
2 硬件設(shè)計
主機由單片機最小系統(tǒng)模塊和藍牙模塊組成, 藍牙HC08模塊與單片機之間的通信有4根線,2根電源線,2根信號線。單片機與藍牙模塊之間的通信為串行通信,即一個發(fā)送信號線、一個接收信號線。單片機與藍牙模塊連接圖見圖2左圖所示。
從機由單片機最小系統(tǒng)電路、藍牙模塊和輸出指示電路組成。其中單片機與藍牙之間的通信與主機相同,也是由4根線組成。其中輸出指示電路設(shè)置了8個綠色指示燈。具體電路見圖2右圖所示。
3 軟件設(shè)計
主機完成的功能主要是利用串行通信口接收數(shù)據(jù),然后用指示燈指示接收的數(shù)據(jù)。因此主機軟件設(shè)計部分主要包括初始化部分、接收數(shù)據(jù)部分、數(shù)據(jù)輸出指示部分。其中初始化主要是完成對串口的初始化以及設(shè)置指示燈的初始狀態(tài)。設(shè)計的流程如圖3所示。
從機部分主要完成的功能是定時利用串行通信口發(fā)送數(shù)據(jù)。因此軟件設(shè)計部分主要包括系統(tǒng)初始化、定時發(fā)送數(shù)據(jù)。其中初始化包括對串行口的初始化以及定時器的初始化。流程圖見圖4所示。軟件設(shè)計時,注意主機串口通信的波特率設(shè)置一定要與從機的串口通信波特率一致。
4 系統(tǒng)的調(diào)試
利用藍牙方式進行通信,首先需要對通信的兩個藍牙模塊進行設(shè)置,方法為取其中的一個藍牙模塊利用USB-TTL轉(zhuǎn)接模塊連接電腦,然后給藍牙模塊重新復(fù)位,進入配置模式(藍牙上的燈進行閃爍),接著在電腦上打開一個串口調(diào)試助手,設(shè)置波特率、數(shù)據(jù)格式、密碼、地址以及主機/從機模式、連接方式(地址連接)以及綁定對方的地址等。設(shè)置完畢后換取另一個藍牙模塊進行配置設(shè)置。兩個模塊設(shè)置時,波特率、數(shù)據(jù)格式、連接方式需要一致,而需要配置的地址不同,且一個設(shè)置為主機模式,一個設(shè)置為從機模式,并綁定地址時,綁定的是對方的地址[2]。
配置成功后,將兩個藍牙模塊分別連接相應(yīng)的主機、從機單片機,上電,進行藍牙配對。當兩個藍牙模塊配對沒有成功時,兩個模塊指示燈均閃爍,當成功后,藍牙模塊指示燈常亮,表示建立通信了。
在主機單片機、從機單片機均下載設(shè)計好的通信程序后,上電,并使藍牙模塊配對成功后,接收機從機指示燈指示接收的數(shù)據(jù)。
5 結(jié)論
首先,基于藍牙方式的通信,需要首先配置藍牙模塊,注意配置的參數(shù)。其次,在藍牙設(shè)備與藍牙設(shè)備配對連接成功后,兩設(shè)備之間的通信可以看作是串口之間的通信,程序的設(shè)計按照串口通信程序設(shè)計即可。最后,使用51單片機的串口通信,實現(xiàn)基于藍牙設(shè)備之間的通信,51單片機最小系統(tǒng)中采用的晶振頻率為11.0592MHZ,切忌雙方的晶振頻率不一致。
【參考文獻】
[1]李國瑞.物聯(lián)網(wǎng)中常用的幾種短距離無線通信技術(shù)[J].信息通信,2017,178:213,214.
[2]曾甜甜.一種基于藍牙技術(shù)和單片機的數(shù)據(jù)傳輸系統(tǒng)的設(shè)計和實現(xiàn)[J].計算機與信息技術(shù),2007,23.