Arduino和藍牙模組控制LED專案

在本文中,將演示如何使用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。

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/ 下載。如下圖所示:

Arduino下載

根據您的操作系統相容性(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應用程式

  1. 打開藍牙連接器應用程式,然後打開設備的藍牙。

  1. 搜索藍牙設備以進行配對。

搜索藍牙

  1. 與藍牙HC-05模組配對,請輸入:0000或1234。

藍牙配對

  1. 選擇配對設備HC-05以連接Android應用程式。

連接Android應用程式

  1. 控制LED設備。

控制LED設備

點擊“ON”按鈕,它將數據1發送到藍牙模組,這些數據從藍牙模組傳輸到Arduino設備,並打開LED。點擊“OFF”時,Android應用程式將數據0發送到藍牙模組,此數據從藍牙模組傳輸到Arduino,並關閉LED。

LED關閉

LED開啟


上一篇: 物聯網會話層協議 下一篇: Arduino設備和4通道繼電器模組控制照明