在本文中,將演示如何使用Arduino(Arduino UNO)和藍牙模組HC-05構建一個物聯網專案來控制LED燈。在這個專案中,我們將使用Android智能手機將藍牙信號發送到藍牙模組。
硬體要求
- Arduino UNO主板
- 用於連接器Arduino UNO的USB電纜
- 藍牙模組HC-05
- 跳線電線公對母線
- LED
- AC 220v/120v家用電器或9v Hi-Walt電池
軟體要求
- Arduino軟體
- Android Studio
Arduino藍牙模組的工作原理
在這個專案中,使用了三個主要組件; Android智能手機,藍牙收發器和Arduino。
Android應用程式可通過按ON按鈕將串行數據發送到藍牙模組HC-05。藍牙模組HC-05用於串行通信。它從應用程式接收數據並通過藍牙模組的TX引腳發送到Arduino的RX引腳。Arduino中上傳的代碼檢查收到的數據。如果接收數據為1
,則LED變為ON,如果接收的數據為0
,則LED變為OFF。
數字電路圖
Bluetooth Module HC-05 Arduino UNO
TX --------------------------------> RX (Pin 0)
RX --------------------------------> TX (Pin 1)
VCC --------------------------------> 5v
GND --------------------------------> GND
LED Pin Arduino UNO
Pin 1 --------------------------------> GND
Pin 2 --------------------------------> Pin 13
要進行Arduino板的編程,需要下載Arduino軟體。可以從Arduino官方網站: https://www.arduino.cc/ 下載。如下圖所示:
根據您的操作系統相容性(Windows Installer)下載Arduino軟體。
點擊下載(Download),如下所示:
下載成功後,運行安裝程式並按照說明進行操作。
當它要求安裝驅動程式軟體時,單擊然後安裝:
安裝後,打開軟體,如果它生成安全警報,則允許它。
為Arduino UNO主板寫一個程式,如果接收的數據等於1
,LED亮,如果數據等於0
,則LED熄滅。參考代碼如下:
char data = 0; //Variable for storing received data
void setup()
{
Serial.begin(9600); //Sets the 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
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
}
}
保存上面程式並進行編譯。
通過Arduino UNO USB線將Arduino設備連接到筆記本電腦(或顯示器)。在Arduino UNO上傳程式時,刪除Arduino UNO設備(如藍牙模組和LED)的所有其他連接。
編譯代碼後,將其上傳到Arduino UNO設備中。在Arduino上傳代碼之前,UNO設備確保選擇了Arduino串口,否則會生成錯誤消息“未選擇串口”。
要選擇串行端口,請打開“設備管理器” -> “端口” -> “Arduino Uno”,然後上傳代碼。
藍牙模組連接Android應用程式
- 打開藍牙連接器應用程式,然後打開設備的藍牙。
- 搜索藍牙設備以進行配對。
- 與藍牙HC-05模組配對,請輸入:0000或1234。
- 選擇配對設備HC-05以連接Android應用程式。
- 控制LED設備。
點擊“ON”按鈕,它將數據1
發送到藍牙模組,這些數據從藍牙模組傳輸到Arduino設備,並打開LED。點擊“OFF”時,Android應用程式將數據0
發送到藍牙模組,此數據從藍牙模組傳輸到Arduino,並關閉LED。