張松林
(南京機電職業(yè)技術學院,211135)
Arduino控制器和手機藍牙交互通信的方法和實現(xiàn)
張松林
(南京機電職業(yè)技術學院,211135)
本文介紹Arduino控制器外接藍牙與手機手機相互通信,可以實現(xiàn)手機軟件通過app軟件經過藍牙來控制和顯示控制器的內容。該技術可以應用于各種控制裝置和設備,比如智能家居等。
Arduino;藍牙
Arduino 是一款便捷靈活、方便上手的開源電子原型平臺,包含硬件(各種型號的arduino板)和軟件(arduino IDE). Arduino能通過各種各樣的傳感器來感知環(huán)境,通過控制燈光、馬達和其他的裝置來反饋、影響環(huán)境。板子上的微控制器可以通過Arduino的編程語言來編寫程序,編譯成二進制文件,燒錄進微控制器 對Arduino的編程是利用 Arduino編程語言和Arduino開發(fā)環(huán)境來實現(xiàn)的。基于Arduino的項目,可以只包含Arduino,也可以包含Arduino和其他一些在PC上運行的軟件,他們之間進行通信來實現(xiàn)。也可以用手機藍牙和arduino板進行通信。如何實現(xiàn)手機和目前應用較廣的控制裝置聯(lián)系起來并能可控可顯示或監(jiān)視那?這就是本文要解決的。
該設計的硬件總體如圖1
圖1 硬件框圖
控制器與手機通信時通過藍牙模塊來實現(xiàn)的,手機(安卓系統(tǒng))里下載安裝“bluetooth spp”類型軟件,為了方便調試,加入一個LED用起顯示手機控制信號能否控制LED,此LED接于arduino控制板12腳。
軟件部分主要是arduino控制板與藍牙模塊通信,為了調試,特寫簡單通信程序代碼,代碼如下:
char val; //定義變量
int ledpin=12; //定義控制板12腳
void setup() //啟動通信,通信波特率為9600
{
Serial.begin(9600);
pinMode(ledpin,OUTPUT); //定義12腳為輸出,控制LED(高電平有效)
}
void loop() //主循環(huán)程序
{
val=Serial.read(); //調用藍牙庫,讀藍牙給的信息
if(val=='a')
{
digitalWrite(ledpin,HIGH); //藍牙的信息是字符“a”時點亮LED
Serial.println("LED ON!"); //藍牙的信息是字符“a”時發(fā)送數(shù)據(jù)給藍牙,手機接收到并軟件界面顯示”LED ON!”//
}
else if(val=='b')
{
digitalWrite(ledpin,LOW); //藍牙的信息是字符“b”時LED燈熄滅
Serial.println("LED OFF!"); //藍牙的信息是字符“b”時發(fā)送數(shù)據(jù)給藍牙,手機接收到并軟件界面顯示”LED OFF!”//
} }
3.1 程序調試
將程序下載到板子上,先用arduino IDE軟件進行測試,看看結果,如果結果如下就可以確定程序沒問題,測試步驟如下:
●發(fā)送"a",串口監(jiān)視器返回"LED ON!",同時可看到板載LED點亮。表示通信正常,監(jiān)視器顯示如圖2
●同上操作發(fā)送“b”, 串口監(jiān)視器返回"LED OFF!",同時可看到板載LED點熄滅。
3.2 藍牙調試
搭建好硬件后,用安卓手機下載“bluetooth spp”軟件,搜索連接藍牙,輸入藍牙默認密碼配對并連接藍牙模塊,后打開藍牙串口助手軟件,軟件里輸入“a”點擊發(fā)送后看到藍牙軟件界面里有LED ON!和LED燈被點亮。如圖3:
同樣的方式在輸入“b”就關閉LED燈并顯示LED OFF!了,到此調試完成。
其實手機通過藍牙和控制板通信比較簡單,難點是控制板和藍牙的通信,這是一個非常復雜的過程,必須要經驗豐富的高級電子工程師來編寫,但有了Arduino后,我們可以通過直接調用藍牙庫就可以實現(xiàn)了。所以對于剛畢業(yè)的學生或電子開發(fā)新手,該控制板是一個不錯選擇,它能DIY或開發(fā)出各種功能電子設備。
崔才豪,張玉華,楊樹財?shù)?利用Arduino控制板的光引導運動小車設計[J].自動化儀表,2011,32(9):5-7,11. DOI:10.3969/j.issn.1000-0380.2011.09.002.
And the realization method of the Arduino controller and the mobile phone Bluetoothcommunication.
Zhang Songlin
(Nanjing Career Technical College,211135)
This paper introduces a Arduino controller connected with the Bluetooth mobile phone communication between mobile phone software,can be achieved through the app software through the Bluetooth controller to control and display the contents of the. The technology can be applied to various control devices and equipment,such as intelligent home.
Arduino;bluetooth
圖2 串口監(jiān)視器界面
圖3 軟件顯示