大家好! 今天主要來簡單介紹一下, 怎麼透過Arduino板子及藍芽模組(HC-05)來跟Android手機做個連接. 讓手機上的App軟體可以控制麵包板上的LED燈開與關.
1. 首先我們必須先去下載一個App軟體, 名字叫作 " LED Controller "
這個軟體, 我們可以去以下這個網站下載.
https://github.com/Mayoogh/Arduino-Bluetooth-Basic
最主要我們要能下載到 "LED Controller.apk" 這個檔案. 我們可以使用電腦下載後,
再藉由E-mail附加此檔案寄信到自己的信箱, 然後用手機去開啟便可以安裝.
以下就是這個軟體的icon. 安裝好了, 當然我們就可以在手機上開啟這個Free軟體.
2. 接下來, 這邊使用了一個類似Arduino UNO的板子叫做Funduino, 當然它的功能是跟Arduino UNO一樣, 只是它多了一些讓USER方便使用的針腳.
怎麼接線, 請參考下面的接線圖.
整體的接線圖如上, 其中藍芽模組是使用型號為HC-05.
LED在麵包板上, 正極(長腳)會串接一個220歐姆的電阻, 避免LED燒掉, 然後接到MB上Power插孔的5V,負極則接到Power插孔的接地Gnd.
HC-05上面的接線如左, 其中Vcc請接到數字接口Pin 13, GND則接到數字接口Pin 的GND.
RXD則接到數字接口Pin1(TX).
TXD則接到數字接口Pin0(RX).
請注意: RXD跟TXD接到主板上的TX跟RX是正好相反喔!
3. 燒錄程序, 這個程序的來源同樣來自https://github.com/Mayoogh/Arduino-Bluetooth-Basic
程序內容如下:
/*
* Bluetooh Basic: LED ON OFF - Avishkar
* Coder - Mayoogh Girish
* Website - http://bit.do/Avishkar
* Download the App :
* This program lets you to control a LED on pin 13 of arduino using a bluetooth module
*/
char data = 0; //Variable for storing received data
void setup()
{
Serial.begin(9600); //Sets the data rate in bits per second (baud) for serial data transmission
pinMode(13, OUTPUT); //Sets digital pin 13 as output pin
}
void loop()
{
if(Serial.available() > 0) // Send data only when you receive data:
{
data = Serial.read(); //Read the incoming data and store it into variable data
Serial.print(data); //Print Value inside data in Serial monitor
Serial.print("\n"); //New line
if(data == '1') //Checks whether value of data is equal to 1
digitalWrite(13, HIGH); //If value is 1 then LED turns ON
else if(data == '0') //Checks whether value of data is equal to 0
digitalWrite(13, LOW); //If value is 0 then LED turns OFF
}
}
4. 接下來, 我們可以開始進行測試了. 當然首先需要進行藍芽連線. HC-05的連線密碼一般是0000 或者 1234, 自己試試應該可以. 接著開啟" LED Controller "這個App程式.
此程式的第一個畫面, 就是讓你確認藍芽模組配對無誤, 接著進入第二個畫面, 即是一個簡單的ON跟OFF開關, 很清楚地, 當你按下ON時LED就會亮燈, 當你按下OFF時LED就會熄滅. 若操作無誤, LED有正常運作, 這樣就算完成了這個課程.
PS : 你也可以參考Arduino官方網站的教學說明.
https://create.arduino.cc/projecthub/user206876468/arduino-bluetooth-basic-tutorial-d8b737?ref=platform&ref_id=424_trending___&offset=120
沒有留言:
張貼留言