hc-06 bluetooth'da AT komutları nasıl kullanılır.

Başlatan Recep METE, 18 Mayıs 2015, 11:03:41

Recep METE

#45
Arkadaşım bir de aşağıya yazdığım gibi dener misin.Olmazsa haberimiz olsun ama ben bu kodlarla çalıştırdım.

UART haberleşme protokolü ile RX ve TX bacaklarından kolayca kullanılabilen bu modüller, AT komutu denilen özel bir komut serisi ile iç ayarlarının değişmesine izin vermektedir. Bu şekilde Bluetooth modülünüzün ismini, Baud Rate'ini, Pin kodunu değiştirebilirsiniz.

Uygulamamızı HC-06 Bluetooth modül ve Arduino Uno ile gerçekleştireceğz.



Arduino üzerinden AT komutları Bluetooth modül ayarlarını yapabiliriz. Bunun için Arduino'ya aşağıdaki kodu yüklememiz ve modül ile Arduino bağlantısını aşağıdaki şekilde görüldüğü gibi yapmamız gerekmektedir:


HC-06 Arduino Bağlantı Şeması

//Arduino üzerinden AT komutları ile Bluetooth modül haberleşme kodu

#include <SoftwareSerial.h>  //  Seri Haberleşme kütüphanesini ekledik
SoftwareSerial BTSerial(10, 11); // RX, TX  // BT için ayrıca bir Seri Haberleşme pini tanımladık(BURAYA DİKKAT-TX-10,RX-11 NOLU BACAĞA BAĞLANACAK)
void setup() {
Serial.begin(9600);
Serial.println("Enter AT commands:");
BTSerial.begin(9600);  //BT Seri haberleşmesini 9600 ile başlattık*
}
void loop()
{
if (BTSerial.available())
Serial.write(BTSerial.read());
if (Serial.available())
BTSerial.write(Serial.read());
}

*Bluetooth modüllerin default Baud Rate'i 9600, default pin kodu 1234'tür!

Gerekli bağlantıları yapıp kodu Arduino'ya yükledikten sonra Serial Monitörü açarsanız karşınıza "Enter AT commands:" yazısı gelecektir. Bu yazıdan sonra artık AT komutlarımızı Serial Monitör'e yazarak ve cevapları da oradan görerek haberleşebiliriz.

İlk yapmamız gereken "AT" yazıp Enter'a basmak. Cevap olarak "OK" geldiyse her şey yolundadır.

Önce Bluetooth modülümüzün ismini değiştirelim, bunun için Serial Monitör'e: "AT+NAMEvereceğiniz_isim" şeklinde komut yazmanız. Alacağınız cevap "OKName" olacaktır. Artık telefondan cihazı arattığınızda ismi "vereceğiniz_isim" olarak görünecektir.

Şimdi modülün Baud Rate'ini değiştirelim. Bunun için gereken komut "AT+BAUDx" tir. x değeri için şöyle bir tablo yapmışlar:
1---------1200
2---------2400
3---------4800
4---------9600
5---------19200
6---------38400
7---------57600
8---------115200

Bu tablodan istediğiniz Baud Rate değerinin karşılığındaki numarayı x değeri yerine yazarak komutu gönderebilirsiniz. Örneğin, "AT+BAUD7" komutunu yollarsak, karşılığında alacağımız cevap "OK57600" olacaktır.

Şimdi tekrar Serial Monitör'e "AT" yazıp cevap olarak "OK" bekleyelim.

Gelmiyor değil mi? Demek ki bir şeyler yolunda değil. :)

Biraz önce Baud Rate ayarı yaparak 57600'e çekmiştik. Fakat kullandığımız yazılımda halen 9600 ile BTSerial iletişimi açık. O değeri 57600 yapıp Arduino'ya kodu attığımızda tekrar modül ile konuşmaya başlayabiliriz.
]
printf(lcd_putc,"\f  Ne kadar okursan oku, bilgine, yakışır şekilde davranmıyorsan cahilsin demektir.  \n   semfero");d

wtrk

Hocam modül suan yanımda değil..
Verdiğiniz bilgileri uygulayarak deneyeceğim..
Duruma göre size haber ederimm.
Teşekkürler..
NoBody Can Stop Me!!!!!

fiducial

Merhaba arkadaşlar,
AT komutları hakkında birşey sormak istiyorum. Uart ile at komutu gonderirken ascii karşılıklarını mı gönderiyoruz bu konuyu çok anlayamadım. Yani A'nın ascii karşılığı sonra T'nin ascii karşılığı daha sonra sırasıyla girilecek tüm karakterlerin ascii karşılıklarını mı girmemiz gerekiyor. Yardımcı olabilirseniz çok sevinirim

mdargut

Alıntı yapılan: fiducial - 15 Mart 2016, 23:19:24
Merhaba arkadaşlar,
AT komutları hakkında birşey sormak istiyorum. Uart ile at komutu gonderirken ascii karşılıklarını mı gönderiyoruz bu konuyu çok anlayamadım. Yani A'nın ascii karşılığı sonra T'nin ascii karşılığı daha sonra sırasıyla girilecek tüm karakterlerin ascii karşılıklarını mı girmemiz gerekiyor. Yardımcı olabilirseniz çok sevinirim
Aynen öyle. Bütün mesajı string olarak göndereceksin.

elektronikDelisi

aramızda bir elektrik var..

fiducial