Arduino Programlamalı HC-05 Bluetooth Modülü

İçindekiler

HC-05 Bluetooth Module

HC-05 Bluetooth Modülüne Giriş

HC-05 Bluetooth Modülü, iki cihaz arasında kablosuz iletişim sağlamak için kullanılan, düşük güç tüketimli bir kablosuz modüldür. 2,4 GHz ISM bandında çalışır ve veri aktarımı ile kontrol sinyallerinin iletilmesinde kullanılabilir. Robotik, ev otomasyonu ve diğer tüketici elektroniği alanlarında yaygın olarak kullanılmaktadır. Basit bir seri port protokolüne sahiptir ve akıllı telefonlar, tabletler ve bilgisayarlar gibi cihazları birbirine bağlamak için kullanılabilir. Ayrıca, cihazları ev Wi-Fi ağına bağlamak için de kullanılabilir. Bir örnek olarak, HC-05 Bluetooth Modülünü kullanarak bir akıllı telefonu bir robot koluna bağlayarak, kullanıcının akıllı telefonuyla robot kolunu kontrol etmesini sağlamak verilebilir.

Çam Yapılandırması

HC-05 Bluetooth modülü, projelerinize iki yönlü kablosuz işlevsellik kazandırabilen popüler bir Bluetooth modülüdür. 6 pini vardır: Key, Vcc, GND, TXD, RXD, State.
Bu pimler, bir cihazdan diğerine veri göndermek için kullanılır. Ayrıca, komut ve veri modları arasında geçiş yapmayı sağlayan bir etkinleştirme pimi de bulunmaktadır. Komut modunda çalışmak için Key/EN pini yüksek, veri modunda çalışmak için ise düşük olmalıdır. Ayrıca, Vcc ve Ground pinleri, besleme voltajından +5V ile modüle güç sağlamak için kullanılır. Bu pinler sayesinde HC-05, veri kaydı, tüketici uygulamaları ve kablosuz robotlar gibi çeşitli uygulamalar için kullanılabilir.

HC 05 Bluetooth Module Circuit%20Connections

Devre Şeması

HC-05 Bluetooth Modülünü Arduino'ya bağlamak için bir devre şemasına ihtiyacınız vardır. HC-05 Bluetooth modülü ile Arduino arasındaki bağlantının devre şeması oldukça basit ve anlaşılması kolaydır. Bu şema, HC-05 Bluetooth modülü, Arduino Uno kartı, devre tahtası ve bağlantı kablolarından oluşur.

60880abf5482cf6f149ca193552528ebdf1f92a4

Arduino ile Bluetooth Modülünü Nasıl Programlayabilirim?

Bu yazıda, HC-05 Bluetooth modülünü programlamak için Arduino UNO kartını kullanıyoruz. Genel olarak, iki adım atılması gerekiyor:

  • Bluetooth Modülünde AT Modunu Ayarlama
  • Programlama ve Hata Ayıklama

HC-05 Bluetooth Modülünde AT Modunu Ayarlama

AT modunun amacı, HC-05 Bluetooth modülünün orijinal parametrelerini değiştirmektir. Temel parametreler arasında başlıca şunlar yer alır: Bluetooth adı, mod ve eşleştirme şifresi vb. Elbette, Bluetooth modülünde AT modunu etkinleştirmenin iki yolu vardır:

  1. USB-TTL ve seri port hata ayıklama yazılımını kullanma
  2. Arduino ve Bluetooth modülünü kullanma

Burada esas olarak ikinci yöntemi tanıtacağız.

1). Malzemelerin Hazırlanması:

  • ArduinoUNO * 1
  • HC-05 Bluetooth seri port modülü *1
  • Mini LED ışık *1
  • Dupont kablosu *4

2). Bluetooth Modülünü Arduino UNO'ya bağlama:

Bluetooth modülünde AT modunu etkinleştirmek için kabloları Arduino UNO kartına doğru şekilde bağlamalısınız:

  • Arduino 5V – VCC
  • Arduino GND – GND
  • Arduino Pin10 – TXD
  • Arduino Pin11 – RXD

Gücü açmadan önce devre bağlantılarını kontrol etmeyi unutmayın ve pinlerde kısa devre oluşmasını önleyin.

Connect the Arduino UNO board and HC-05 bluetooth module

3). Bluetooth Modülü için Arduino UNO Kod Yazma:

Şimdi, Arduino IDE üzerinde HC-05 Bluetooth modülü için bir program kodu yazmamız gerekiyor. Bu program, Arduino IDE’deki seri monitör aracılığıyla Bluetooth modülünü kurmamızı sağlıyor. Kod şu şekildedir:

				
					#include <SoftwareSerial.h> 

// Pin10-RX,connectting the TXD of HC05
// Pin11-TX,connectting the RXD of HC05

SoftwareSerial BT(10, 11); 
char val;
void setup() {
  Serial.begin(38400); 
  Serial.println("BT is ready!");

  // HC-05 default,38400

  BT.begin(38400);
}
void loop() {
  if (Serial.available()) {
    val = Serial.read();
    BT.print(val);
  }
  if (BT.available()) {
    val = BT.read();
    Serial.print(val);
  }
}
				
			

4). Arduino IDE Seri Monitörü ile Kodda Hata Ayıklama:

Öncelikle Arduino UNO'nun gücünü kapatın, ardından Bluetooth modülündeki siyah düğmeyi basılı tutun ve sonra Arduino'yu açın.

Bluetooth modülünün gösterge ışığı 2 saniyelik bir sıklıkta yanıp sönüyorsa, bu, Bluetooth modülünün AT moduna doğru bir şekilde girdiğini gösterir.

Arduino IDE'nin seri monitörünü açın ve doğru bağlantı noktasını seçin. Çıkış formatını Both: NL & CR olarak ve baud hızını 38400 olarak ayarlayın; seri monitörde BT is ready! mesajının görüntülendiğini görebilirsiniz.

Ardından AT yazın; her şey normalse, seri monitörde OK mesajı görüntülenir.

Open Serial Monitor of Arduino IDE

5). Bluetooth Modülü için AT Komutlarının Ayarlanması:

Bluetooth modülü AT moduna doğru bir şekilde geçtiğinde, ona AT komutları ekleyebiliriz. Yaygın olarak kullanılan AT komutları şunlardır:

				
					AT                  // check if the module is responding
AT+NAME             // set or get the name of the device
AT+ADDR             // get the Bluetooth address of the module
AT+ROLE             // set or get the role of the module
AT+PSWD             // set or get the password of the device
AT+UART             // set or get the UART interface settings
AT+RESET            // reset the module

				
			

Normal şartlar altında, komut gönderildikten sonra "OK" yanıtı alınır. Herhangi bir yanıt alınmazsa, kablolamanın doğru olup olmadığını ve Bluetooth modülünün AT moduna girip girmediğini kontrol edin.

AT komutunu ayarladıktan sonra, gücü yeniden başlatın. Bu sırada, Bluetooth modülünün gösterge ışığı hızlı bir şekilde yanıp sönecektir; bu, Bluetooth modülünün normal çalışma moduna girdiğini gösterir.

Programlama ve Hata Giderme

Bluetooth modülünün AT kurulumunu tamamladıktan sonra, modül üzerinde programlama denemelerine başlayabiliriz. Bu denemede, Arduino UNO kartındaki LED ışığının çalışmasını cep telefonu aracılığıyla kontrol etmeyi sağlayan bir program yazacağız.

1). Arduino Devre Tasarımı:

Buradaki devre tasarımı nispeten basittir ve temel olarak iki bölümden oluşur:

  • Arduino ve HC05 modülü bağlantısı
  • Arduino ve LED bağlantısı

Burada dikkat edilmesi gereken iki nokta vardır: Arduino üzerindeki TXD, HC05 modülündeki RXD terminaline bağlanmalı ve Arduino üzerindeki RXD, HC05 modülündeki TXD'ye bağlanmalıdır. Aşağıdaki şekilde, LED'im doğrudan Arduino'nun Pin13'üne bağlanmıştır. Ancak aslında, LED ışığının tasarımına göre bir seri direncin gerekli olup olmadığını dikkate almalısınız.

Connect the Arduino UNO board and LED light

2). Arduino UNO Kartına Program Kodunu Ekleme:

LED yanıp sönme kodu şu şekildedir:

				
					void setup()

{
  // Set the baud rate to 38400

  Serial.begin(38400);
  pinMode(13, OUTPUT);
}
void loop()
{
  while(Serial.available())
  {
    char c=Serial.read();
      if(c=='1')
      {
        Serial.println("BT is ready!");
        
        // Return to the phone debugging program

        Serial.write("Serial--13--high");
        digitalWrite(13, HIGH);
      }
     if(c=='2')
     {
       Serial.write("Serial--13--low");
       digitalWrite(13, LOW);
     }
  }
}
				
			

3). Programın mobil cihazda hata ayıklaması:

Bluetooth seri bağlantı noktası modülü hata ayıklama yazılımının kurulumu:

Bluetooth seri bağlantı noktası modülü, veri aktarımı için Bluetooth cihazları arasında bir seri bağlantı noktası oluşturabilen SPP protokolüne (Serial Port Profile) dayalıdır ve Bluetooth işlevine sahip elektronik cihazlarda yaygın olarak kullanılmaktadır. Android ve iOS platformlarında farklı Bluetooth seri bağlantı noktası modülü hata ayıklama yazılımları bulunmaktadır.

LED Yanıp Sönme Programında Hata Giderme:

Yazılım indirilip kurulduktan sonra, önce cep telefonunun Bluetooth ayarlarını açıyoruz, Bluetooth modülünü arayıp ona bağlanıyoruz. Ardından Bluetooth seri bağlantı noktası hata ayıklama yazılımını açıyoruz ve yazılımın Bluetooth modülüne bağlanmasını sağlıyoruz. Artık yazılımda aşağıdaki hata ayıklama komutlarını girebilir ve farklı sonuçları görebiliriz:

  • "1" – LED ışığı yanar, hata ayıklama yazılımında Serial–13–high değerini döndürür.
  • "2" – LED kapalıdır, hata ayıklama yazılımında Serial–13–low değerini döndürür.

Sonuç

Bu makalede, Arduino'da HC05 Bluetooth modülünü programlamanın temel bilgilerini ve önemli adımlarını öğrenebileceksiniz.

Abone ol

Aylık blog güncellemeleri, teknoloji haberleri ve vaka analizleri almak için abone listemize katılın. Asla spam göndermeyeceğiz ve istediğiniz zaman aboneliğinizi iptal edebilirsiniz.

Yazar Hakkında

Picture of Aidan Taylor
Aidan Taylor

I am Aidan Taylor and I have over 10 years of experience in the field of PCB Reverse Engineering, PCB design and IC Unlock.

Yardıma mı ihtiyacınız var?

Scroll to Top

Instant Quote