1.首先是藍牙APP, 易安卓編寫的,說編寫其實我只是修改了其中的一些內(nèi)容,兩張界面和代碼截圖,非常簡單,功能也很簡單,程序前后修改了兩次主要地方,主要原因是測試 的時候發(fā)現(xiàn)第一種程序會出現(xiàn)錯誤,在單片機哪里會仔細說明!操作界面,很簡單,打開之后打開藍牙,然后點擊搜索設(shè)備,找到你的模塊名字,點擊之后就可以連接了,連接之后下面會顯示藍牙的名稱和地址信息
2.單片機程序, 這個程序也很簡單,只要學過一些單片機程序的人應(yīng)該都知道吧,串口通信,設(shè)置好通信的波特率,初始化工作做好,然后在串口中斷程序里寫上你要做的事情就可 以了,這里雖然說11.0592的晶振定時器初值為fd,但是如果用12m的晶振也是可以的,差距不多,沒有問題。(說的不怎么專業(yè),我也不是很專業(yè)的 人,所以請大神誤噴,見笑了!)這里是修改前后的程序不一樣的地方,前面的程序是單片機沒接收到數(shù)據(jù)之后讀取前一次的IO狀態(tài),然后改變其狀態(tài),但是測試 的時候發(fā)現(xiàn)讀取狀態(tài)有錯誤,估計是我的電路有問題,第一個繼電器可以正常工作,第二個和第三個都有問題,當?shù)谝粋€關(guān)閉的時候可以打開,但是當打開的了卻不 能關(guān)閉,只能用關(guān)閉所有的命令來關(guān)閉,(找了一下午也沒發(fā)現(xiàn)問題,元件換了幾個都沒找到,后來放棄了),后來就換了后面程序,直接發(fā)送狀態(tài)命令,不用判斷 當前的狀態(tài)了,我覺得后面這種可能更好!而且實際測試的時候也可以,沒有問題。(補充一下,我發(fā)現(xiàn)12M的晶振不能用11.0592M的數(shù)據(jù),原因是定時 器計數(shù)產(chǎn)生的波特率與9600差距有點大,誤差到達了8.5%左右,理論上誤差要小于4%才能正常通信,所以通信有錯誤,雖然能通信,但是數(shù)據(jù)不對,后來 我把晶振換回來就可以了,看來要實踐才知道真理。)
第 一、二張是修改之前的程序,有問題,最后一張是修改之后的,沒有問題,后來仔細想了一下,后面一種才是正確的,前面一種的改變狀態(tài)可能會出現(xiàn)錯誤,就是手 機上顯示的開關(guān)是關(guān)的,然而實際電路中的電路是開著的(這也是沒有數(shù)據(jù)回傳的原因吧,現(xiàn)在只是單向的手機發(fā),模塊接的形式,以后再研究)!,但是后面一種 不會出現(xiàn)這個問題!
3.實物電路連接,我也是在測試,所以先用LED 等來代替繼電器輸出,然后才用到繼電器上面。單片機直接放在我做的最小系統(tǒng)版上面,然后用導(dǎo)線來連接到藍牙開關(guān)的小板子上,等測試無誤之后再安裝在上面, 不然不好寫程序上去。輸出接的是一個小電機,用的一個12v蓄電池代替220V電源,如果要用220V的電源,要注意安全了!提醒一下,絕緣一定要做好, 畢竟不是開玩笑的。簡單說一下電路連接,首先你得需要焊接一個51單片機最小系統(tǒng)板,(如果這個都不會,那你需要先學習一下,不然肯定是沒辦法做的)然后是由三極管驅(qū)動繼電器的電路,記得加二極管,不然三極管很有幾率被擊穿,最后是藍牙模塊與單片機的連接,電源接好,一般藍牙模塊都是寬電壓的,所以直接接到5V電源上,與單片機共用電源,不用什么電壓轉(zhuǎn)換,很方便的,把藍牙模塊的TX與單片機的RX連接,就是P3.0那個引腳,RX接單片機的TX,就是P3.1那個引腳,至于繼電器哪里你需要接成常開還是常閉的模式就你自己決定了,當然還要加一點錄濾波的,因為繼電器啟動的一瞬間電流很大,擔心是單片機死機!這些就是主要的東西了!)
前一張是之前測試用的,后面一張是后來直接把單片機裝上去的,看著沒有那么亂了,可以看到,當手機上的開關(guān)23打開時,電路板上的燈23也是兩的,表明繼電器已經(jīng)被打開了。
4.打完收工,作品完成好 了至此最簡單的藍牙開關(guān)就做好了,可以躺在床上遙控在遠處的風扇了(好吧你們都用的是空調(diào),當我沒說!),定時關(guān)機(這個功能沒做,不過原理都一樣,自由 發(fā)揮了),其他神馬的!
感興趣的同學可以試一下,比如說高級一點的外網(wǎng)控制的,把電腦作為服務(wù)器,把藍牙模塊接好,和控制器連接起來,然后讓手機與電腦通 過互聯(lián)網(wǎng)通信,用手機給電腦發(fā)送指令,再通過電腦給藍牙模塊發(fā)送指令,比如提前開個空調(diào)什么的(提前開風扇沒用,還是開你們的空調(diào)吧),然后其他什么的東 西就自己發(fā)揮了!我想這個應(yīng)該是屬于傳說中的物聯(lián)網(wǎng)吧,雖然沒有那么高大上,但是原理是一樣的。
-
單片機
+關(guān)注
關(guān)注
6044文章
44648瀏覽量
640147 -
藍牙
+關(guān)注
關(guān)注
114文章
5892瀏覽量
171594
原文標題:51單片機做的藍牙開關(guān)
文章出處:【微信號:mcu168,微信公眾號:硬件攻城獅】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
用SST單片機做ISP的下載程序
你的單片機程序怎么調(diào)試?我教你用Keil uVision2軟件如何調(diào)試資料下載

一步一步教你用Zview擬合交流阻抗譜

51單片機藍牙小車(精要版)

評論