單片機初學者不看這篇等於白學一年,這是智能時代的基石:手機藍牙實現與單片機的通信
作為一個畢業6年的嵌入式從業者,很巧,我畢業設計有做這方面的內容,在這裡獻醜一下。
===================================================================
一、準備工作:
1.一款帶串口的單片機
2.USB轉串口模塊(自己焊接的,所以很醜,當然也可以用學習板上的串口部分)
3.藍牙轉串口模塊
4.如果你的手機系統是Android的,下載個android藍牙調試助手
5.電腦上安裝一個串口調試助手
6.若干杜邦線等
二、調試工作
萬事俱備,只欠東風。
1.調試藍牙模塊
用杜邦線連接USB轉串口模塊和藍牙模塊。
串口模塊藍牙模塊
VCC--------->VCC
TXD---------->RXD
RXD
GND--------->GND
打開手機藍牙助手,連接到該藍牙模塊,成功後隨便輸入一些字符,就會在電腦上看到串口助手上有顯示該字符,前提是串口的波特率和藍牙模塊的波特率對應(默認是9600)。
2.調試單片機的串口
還是用杜邦線連接USB轉串口模塊和單片機,在電腦上打開串口調試助手調試。
接線方式參考調試藍牙模塊。
單片機的程序就不說了,這裡假設已經做好了。如果正常則會看到預期效果。
三、連接工作
把藍牙模塊和單片機模塊連接起來,然後打開藍牙調試助手,連接藍牙模塊發送數據。
這個時候,就好像你在電腦上用串口助手給單片機發送數據一樣。
四、回答完畢
其他內容已經超出本題範圍。
五、總結
這種類似的問題應該使勁問我,我們是專業的團隊。
再發一個我之前做的可攜式心電監測儀,檢測到的心電信號用藍牙實時傳PC。實物丟實驗室了……上電路與布線
整體電路:
布線:
布線圖右上角為藍牙模塊
單片機用的是MSP430F149,藍牙模塊GC02。收發數據需要先確定模式,當時AD的精度是16位,用的是8位數據發送,所以用兩個8位(低8高8)來發送16位數據。另外要確定前後數據傳輸的頻率,例如前端AD輸出數據的頻率,後端程序接收數據的頻率等,整體頻率要匹配。
原本藍牙是與PC藍牙接的,與手機藍牙也行。下個藍牙調試助手即可,搜索對應藍牙設備即可。
單片機程序部分編寫與串口通信很類似,當時是直接從DM430-a開發板提供的串口通信模板改的。注意波特率與時鐘頻率記得不要弄錯。
另外,藍牙助手,無論是PC還是爪機只能完成簡單的數據收發。要真正實現通信功能,還要寫其他的程序來實現。當時用的是MATLAB,做了個GUI,完成數據的實時收發、處理與顯示。注意這一塊的速率也要跟上。當然如果做的不是實時就不用管這麼多了。
說了這麼多,大家記得留意下方評論第一條(或者私信我)有干貨~