HC-05 Bluetooth Modülü Kurulumu ve Kütüphane Kullanımı - Turkish Tutorial

in #utopian-io6 years ago (edited)

Giriş / Introduction

This is a Turkish tutorial of an open source Arduino library, which lets use HC-05 Bluetooth Module with your Arduino microcontroller which can be used for various bluetooth connection projects. I will show you how to install the library to Arduino IDE and make an example project with the library, throughout this tutorial.

Merhaba, bu yazıda Arduino mikrokontrolörünüze, HC-05 Bluetooth modülünü kullanmanızı sağlayan açık kaynak bir kütüphaneden bahsedeceğim. HC-05 Bluetooth modülü ile bir çok farklı bluetooth bağlantı gerektiren proje yapabilir, telefon veya bilgisayar gibi aletlerden bu projeleri kontrol edebilirsiniz. Yazı boyunca HC-05 Bluetooth modülü kütüphanesinin kurulumunu ve HC-05 Bluetooth modülü yapacağımız örnek bir proje kodlarını görebilirsiniz.

Neler Öğreneceğim?

Bu rehberde öğrenecekleriniz:

  • HC-05 Bluetooth modülü Arduino kütüphanesini Arduino IDE’sine yükleme.
  • HC-05 Bluetooth modülü kütüphanesini, kütüphane fonksiyonları ile beraber kullanabilme.
  • HC-05 Bluetooth modülü ile isim değiştirme projesini gerçekleştirebilme.

Gereksinimler

Bu rehberin gereksinimleri:

Zorluk

Bu rehberin zorluğu:

  • Basit

im.png

Çeşitli cihazlar Bluetooth teknolojisi ile haberleşir. Görüntü kaynağı (Royalty free)



Rehber İçeriği

HC-05 Kütüphanesin Arduino IDE’sine Kurulumu

1. https://github.com/jdunmire/HC05 adresinden kütüphaneyi indirin.
indir.png

2. Arduino programını açıp sırasıyla Sketch->Include Library->Add .ZIP Library seçeneklerini seçin.

ekle.png

3. HC05-master.zip dosyasını seçin ve Open'a tıklayın.


HC-05 Kütüphanesi Kullanımı ve Örnek Proje

Arduino HC-05 kütüphanesinin kullanımını basit bir örnek ile adım adım göstereceğim. Bu örnek projemizde HC-05 Bluetooth modülümüzü Arduino’muza bağlayarak, HC-05 modülünün kurulumunu gerçekleştirip ardından modülün ekranda görünecek olan ismini değiştireceğiz. HC-05 Bluetooth modülünün Arduino’ya bağlantısı aşağıda gösterilmiştir.

Kütüphanenin temellerini öğrendikten sonra başka projelerde kullanırsanız lütfen yorumlarda belirtin.

baglanti.png

HC-05 Bluetooth modülünün Arduino'ya bağlantı şeması. Fritzing programında çizilmiştir.

1. Yeni bir sketch açın ve "Bluetooth_Deneme" olarak kaydedin.

2. Öncelikle kütüphanelerimizi sketch’imize eklemek için, kodun en başına, #include <Arduino.h>, #include <HC05.h> yazın. Ardından HC-05 Bluetooth modülü ve Arduino arasında seri bağlantıyı mümkün kılacak olan #ifdef HC05_SOFTWARE_SERIAL ve #include <SoftwareSerial.h> kodlarını ekleyin.

1.PNG

3. Kütüphaneyi ekledikten sonra Arduino’da kullanacağınız “KEY”, “State”, “RX”, “TX” pinleri belirleyen kodu yazın. Ardından bluetooth modülünün ismini tanımlayacak komutu yani (AT+NAME) kodunu ekleyin.

2.PNG

4. void setup() fonksiyonunun içine 9600 baud rate'de seri haberleşmeyi başlatacak kodu ekleyin.

3.PNG

5. void loop() fonksiyonunun içinde, 32 karakterlik yeni ismi tutacak bir string oluşturun. Kullanıcının gireceği yeni modül isminin ne olacağını kullanıcıya soran (ekrana yansıtan) ve kullanıcıdan yeni ismi alan komutları ekleyin. Ardından kullanıcının cevap verebilmesi için 100mslik bir timeout oluşturun.

4.PNG

6. Kullanıcıdan cevap beklerken çalışacak bir while döngüsünü oluşturun. While döngüsünün içine bluetooth modülü seri olarak bağlıysa aşağıdaki komutları çalıştıracak bir if koşulu ekleyin. If koşulunun içine kullanıcının serial monitorde yazdığı ismi okuyan ve daha önce oluşturduğumuz stringe kaydeden kodu yazın.

5.PNG

7. Kullanıcının atadığı yeni 32 harflik ismi HC-05 Bluetooth modülüne atayacak komutları ekleyin.

6.PNG

8. Kullanıcıdan yeni isim alma işlemi gerçekleştiğinde 1000ms delay ile çalışacak bir if koşulu oluşturun. If koşulunun sağlandığında değişikliğin olduğunu ekrana yansıtacak ve modülü disconnect edecek komutları ekleyin.

7.PNG


Kapanış

Bu yazımda Arduino mikrokontrolörü için "jdunmire" adlı GitHub kullanıcısı tarafından yazılmış "HC-05" kütüphanesinin kurulumu, HC-05 Bluetooth modülü kullanarak, modülün ayarlarını ve kurulumunu yaparak kütüphanenin kullanımını gösterdim. Umuyorum ki vermiş olduğum bilgileri beğenirsiniz, okuduğunuz için teşekkürler. Başka yazılarda görüşmek dileğiyle.
Kütüphane hakkında daha fazla bilgi ve kaynak için aşağıdaki linki kullanabilirsiniz.

Github: https://github.com/jdunmire/HC05



Kodlar

#include <Arduino.h>
#include <HC05.h>
#ifdef HC05_SOFTWARE_SERIAL   // Modülün seri bağlantısını mümkün kılar.
#include <SoftwareSerial.h>

HC05 btSerial = HC05(3, 2, 0, 1);  // KEY, State, RX, TX bağlantılarını atar.

String BluetoothIsim("AT+NAME=");  // Bluetooth modülünün ismini tanımlayacak komut (AT+NAME).


void setup(){
  
  Serial.begin(9600);     // 9600 baud rate'de seri haberleşmeyi başlatır.
    
}


void loop(){
  
  char buffer[32];
  size_t gelen = 0;
  bool waiting = true;
  String YeniIsim;      // Yeni ismi tutacak string.

  btSerial.println("");   // Yeni ismin ne olacağını kullanıcıya sorar.
  btSerial.print("Yeni isim? ");

  btSerial.setTimeout(100);  // Kullanıcının cevap verebilmesi için 100mslik bir timeout oluşturur.

  while (waiting)
  {
    if (btSerial.available())   // Bluetooth modülü seri olarak bağlıysa aşağıdaki komutları çalıştırır.
    {
      gelen = btSerial.readBytes(buffer, 32);
      for (size_t i = 0; i < gelen; i++)
      {
        if (buffer[i] != '\n')
        {
          YeniIsim += buffer[i];
          btSerial.print(buffer[i]);
        }
        else
        {
          btSerial.println(" ");
          waiting = false;
          break;
        }
      }
    }
    delay(100);
  }

  YeniIsim.toCharArray(buffer, 32);     // Kullanıcının atadığı yeni ismi cihaza tanımlar.
  YeniIsim = BluetoothIsim + YeniIsim;
  YeniIsim.toCharArray(buffer, 32);


  if (btSerial.cmd(buffer,1000))  // Değişikliğin olduğunu ekrana yansıtır ve modülü disconnect eder.
  {
    btSerial.println("Modülün ismi değiştirildi.");
    btSerial.println("Değişikliğin gerçekleşmesi için modüle yeniden bağlanın.");
    btSerial.println("Bağlantı kesiliyor...");
    btSerial.flush();
    btSerial.cmd("AT+DISC", 1000);    // Modülü disconnect eden komut.
  }
}



Posted on Utopian.io - Rewarding Open Source Contributors

Sort:  

Thank you for the contribution. It has been approved.

You can contact us on Discord.
[utopian-moderator]

Hey @drencolha I am @utopian-io. I have just upvoted you!

Achievements

  • You have less than 500 followers. Just gave you a gift to help you succeed!
  • Seems like you contribute quite often. AMAZING!

Suggestions

  • Contribute more often to get higher and higher rewards. I wish to see you often!
  • Work on your followers to increase the votes/rewards. I follow what humans do and my vote is mainly based on that. Good luck!

Get Noticed!

  • Did you know project owners can manually vote with their own voting power or by voting power delegated to their projects? Ask the project owner to review your contributions!

Community-Driven Witness!

I am the first and only Steem Community-Driven Witness. Participate on Discord. Lets GROW TOGETHER!

mooncryption-utopian-witness-gif

Up-vote this comment to grow my power and help Open Source contributions like this one. Want to chat? Join me on Discord https://discord.gg/Pc8HG9x

Coin Marketplace

STEEM 0.34
TRX 0.11
JST 0.034
BTC 66344.62
ETH 3214.81
USDT 1.00
SBD 4.37