手機藍牙與單片機的通信如何實現?
很巧,我畢業設計有做這方面的內容,在這裡獻醜一下。
===================================================================
一、準備工作:1.一款帶串口的單片機6.若干杜邦線等
二、調試工作
萬事俱備,只欠東風。1.調試藍牙模塊
用杜邦線連接USB轉串口模塊和藍牙模塊。串口模塊 藍牙模塊
VCC---------&>VCCTXD----------&>RXDRXD&<----------TXDGND---------&>GND打開手機藍牙助手,連接到該藍牙模塊,成功後隨便輸入一些字元,就會在電腦上看到串口助手上有顯示該字元,前提是串口的波特率和藍牙模塊的波特率對應(默認是9600)。
2.調試單片機的串口
還是用杜邦線連接USB轉串口模塊和單片機,在電腦上打開串口調試助手調試。接線方式參考調試藍牙模塊。單片機的程序就不說了,這裡假設已經做好了。如果正常則會看到預期效果。三、連接工作
把藍牙模塊和單片機模塊連接起來,然後打開藍牙調試助手,連接藍牙模塊發送數據。這個時候,就好像你在電腦上用串口助手給單片機發送數據一樣。四、回答完畢
其他內容已經超出本題範圍。之前做的攜帶型心電監測儀,檢測到的心電信號用藍牙實時傳PC。實物丟實驗室了……上電路與布線
整體電路:布線:
布線圖右上角為藍牙模塊單片機用的是MSP430F149,藍牙模塊GC02。收發數據需要先確定模式,當時AD的精度是16位,用的是8位數據發送,所以用兩個8位(低8高8)來發送16位數據。另外要確定前後數據傳輸的頻率,例如前端AD輸出數據的頻率,後端程序接收數據的頻率等,整體頻率要匹配。
原本藍牙是與PC藍牙接的,與手機藍牙也行。下個藍牙調試助手即可,搜索對應藍牙設備即可。
單片機程序部分編寫與串口通信很類似,當時是直接從DM430-a開發板提供的串口通信模板改的。注意波特率與時鐘頻率記得不要弄錯。
另外,藍牙助手,無論是PC還是爪機只能完成簡單的數據收發。要真正實現通信功能,還要寫其他的程序來實現。當時用的是MATLAB,做了個GUI,完成數據的實時收發、處理與顯示。注意這一塊的速率也要跟上。當然如果做的不是實時就不用管這麼多了。說一個成本優先的解決方法…… 現在很多藍牙晶元,都是SoC來的,換句話說就是,人家都內置了個單片機,所有的功能,比如說透傳,其實也就是一個內部的程序。關鍵是,一般這類玩意都有SDK,大部分簡單控制下,你還多掛一個,這不是浪費錢么?有些人說,由於編程難度,想.....個人認為,這樣不止限制功能發揮,而且,我非常討厭單片機間的通訊
So...
買一片藍牙模塊,個人比較喜歡nRF51822或CC2540。讓後Google一下SDK和廠家給的各種教程,開寫吧。不僅便宜簡單低功耗,還高端→_→這個很簡單,花個幾十塊錢買個藍牙收發模塊就行。單片機有串口就行,接串口藍牙小電路板,上位機手機進行搜索連接。不過你需要進行二次開發,手機端需要開發藍牙對應的裸機驅動,因為單片機並不是以文件的形式傳輸數據的,現有的手機藍牙功能可能識別不了接收的數據。
我當年正好做過這個,看視頻,上位機是電腦,電腦接的是USB藍牙適配器(我的電腦沒有藍牙),然後寫了matlab界面,將USB介面模擬成串口用,然後對單片機傳過來的數據實時顯示。整個項目沒有對藍牙的任何理解,因為藍牙收發器已經完成了相關協議的處理,等效於單片機的串口連接著電腦。這是我當年那個項目的結構圖:視頻:飛思卡爾MCU開發賽《基於kinetis L的地震波低功耗採集系統》說話當年真青澀。上某寶買個藍牙模塊,與單片機UART口相連,簡單的話,可以用51。打開手機藍牙,搜索就行,之後輸入配對密碼。 配對密碼可以用AT指令設定。 手機上下載一個藍牙串口通信助手 。之後就可以設置波特率等。這樣單片機與手機就可以通信了。
只需要單片機加一個藍牙模塊。藍牙模塊先查到電腦usb口,配置成發送模式。再把藍牙模塊連接單片機串口。
手機了開啟藍牙進行配對,就可以通信了。
建議使用CC2540,CC2541,NRF51822等帶了單片機內核的BLE晶元
上電,與手機藍牙連接即可當成串口使用
我現在大一,因為一個實驗室的學習項目也在看這個。你也是嗎?
推薦閱讀:
※如何看待某美國投行願零費用承銷中國鐵塔IPO?
※漢能薄膜發電的原理是什麼?相對於其他光伏發電技術優勢是什麼?為什麼媒體看好李和君5年內趕超比爾蓋茨?
※如何評價AI發展出自己的語言且人類無法理解?
※如何看待facebook的機器人之間對話以超出人類的理解範圍?
※怎麼看待樂視將裁員10%?