HC-05 Bluetooth modülü ile LED kontrolü
Tarih ve Adlandırma:
Bluetooth, bir telekom uzmanı Ericsson tarafından 1994 yılında icat edildi. RS-232 kablolarının bir alternatifidir. Intel tarafından desteklenen ve geliştirme ve lisanslama ile ilgilenen yukarıda belirtilen yapı oluşturulmuştur. Standartları kullanmak veya teknoloji ile ürünlerini pazarlamak isteyen herhangi bir firmanın yukarıdaki komitenin üyesi olması gerekmektedir. Organizatör üyeler:
- Ericsson
- Intel
- Microsoft
- Nokia
- Lenovo
- Toshiba
- Motorola
Bluetooth adı nasıl ortaya çıktı? Bluetooth'u başlatan şirket, Avrupa'nın tarihi ve kültürel-dilbilimsel bir parçası olan İskandinav bölgesinin bir parçası olan İsveç'ten geliyor. İsim, Harald "Bluetooth" Gormsson adlı onuncu yüzyıl Danimarka ve Norveç Kralı'nın bir sıfatından geliyor. Yerel dilde, İngilizce'ye çevrilen Blåtand veya Blåtann, 'Bluetooth' oldu. İletişim standardı fikrinin geldiği, geçmiş çağlarda Vikingleri birleştirmesiyle tanınıyordu, bu, mobil teknolojiler için tek bir birleştirici standart olan bir şeydi. Aslında logo, Kral Harald "Bluetooth" Gormsson'un baş harfleri olan "Hagall" ve "Bjarkan" adlı iki İskandinav runesinin birleşiminden oluşuyor.
Bluetooth Nasıl Çalışır?
Bluetooth, 2,4 GHz'lik standart Endüstriyel, Bilimsel ve Medikal (ISM) kısa menzilli frekans bandında çalışır. Spesifik olarak, koruma bantlarını da içeren 2400–2483,5 MHz frekans bandında çalışır. Temelde veri paketlerinin 79 belirlenmiş Bluetooth kanalı üzerinden frekansa göre bölündüğü çoklu erişim yöntemi olan Frekans Atlamalı Yayılı Spektrum (FHSS) adı verilen bir şey kullanır. Her kanalın bant genişliği 1 MHz'dir. Ancak daha yeni Bluetooth 4.0 standardı 2 MHz'lik adımlar kullanır ve bu nedenle 40 belirlenmiş kanala sahiptir. Uyarlanabilir Frekans atlamalı yayılma spektrumu (AFH) adı verilen bir FHSS varyasyonunu kullanır; bu, teorik olarak girişimli kanalları atlar ve daha iyi iletişim sağlar.
Bluetooth, esasen ana-bağımlı mimariye sahip bir protokoldür, yani bir ana cihaz 7'ye kadar cihazla iletişim kurabilir. Bu, yalnızca 1'e 1 yapılandırmayla çalışabilen önceki kablolu iletişim protokollerine göre büyük bir avantajdı ve öyle. Esasen Kişisel Alan Ağları (PAN'ler) adı verilen yeni bir standart oluşturan Bluetooth, çok daha etkili geçici ağlar ortaya çıkardı ve geleneksel ana bilgisayar tabanlı ağlar olmadan iletişime izin verdi.
HC-05 Bluetooth modülünün Pin Yapılandırması
Modül çıkışında 6 adet pin bulunmaktadır. Arka tarafa dönük, soldan sağa, bunlar aşağıdaki gibidir:
- EN AT komutları için kullanılır. Normal kullanımda bağlanması gerekli değildir.
- VCC Güç kaynağı + 5V
- GND Güç kaynağı topraklaması
- TxD Verici pim
- RxD Alma Pimi
- STATE Modül bağlı olsun veya olmasın dijital çıkış pabuç atma durumu verir.
Arduino ile arayüz oluşturan HC-05 Bluetooth modülünün Devre Şeması
Devreyi aşağıdaki şekilde bağlayın:
- Arduino UNO Rx (D0) ile Bluetooth Tx
- Arduino UNO Tx (D1) ile Bluetooth Rx
- Arduino UNO + 5V ile Bluetooth VCC
- Arduino UNO GND ile Bluetooth GND
- Şekilde gösterildiği gibi başka bir pimi bağlamanıza gerek yoktur.
NOT: Programı yüklemeden önce Arduino'nun Tx ve Rx pinlerini çıkardığınızda sahilden çıkarın. Programı yükledikten sonra onları tekrar bağlayın. Aksi takdirde bir hata alabilirsiniz.
Android uygulaması:
- Android Play Store'dan “Arduino Bluetooth Controller” Uygulamasını Android telefonunuza indirin.
- Uygulamayı açın ve HC-05 Bluetooth ile bağlanın.
- Terminal modunu seçin.
- LED'i açmak için 1'i gönderin.
- LED'i kapatmak için 0 gönderin.
int LED = 13; //led pin int info = 0;//variable for the information comming from the bluetooth module int state = 0;//simple variable for displaying the state int checking = 8; void setup() { Serial.begin(9600); //making serial connection pinMode(LED, OUTPUT); //defining LED pin digitalWrite(LED, LOW); //once the programm starts, it's going to turn of the led, as it can be missleading. pinMode(checking, OUTPUT); } void loop() { int sta = digitalRead(checking); //Serial.println(sta); if(Serial.available() > 0){ //if there is any information comming from the serial lines... info = Serial.read(); state = 0; //...than store it into the "info" variable } if(info == '1'){ //if it gets the number 1(stored in the info variable... digitalWrite(LED, HIGH); //it's gonna turn the led on(the on board one) if(state == 0){ //if the flag is 0, than display that the LED is on and than set that value to 1 Serial.println("LED ON"); //^^that will prevent the arduino sending words LED ON all the time, only when you change the state state = 1; } } else if(info == '0'){ digitalWrite(LED, LOW); //else, it's going to turn it off if(state == 0){ Serial.println("LED OFF");//display that the LED is off state = 1; } } }
Bahadır ÖZGEN
Electronic Robotic Coding Research and Development 1975 - ∞
Learn Forever
If you want, let's learn together...
https://roboticcode2020.blogspot.com/
bahadirozgen1975@gmail.com
facebook robotic.code
instagram @roboticcode
Sayfalarımı ziyaret ettiğiniz için teşekkür ederim.Bu sitede mevcut olan içerikler kendi oluşturduğum projeler yazı,resim ve videolardan oluşmaktadır.İçerik oluşturmak çok uzun sürdüğü için bazı projelerde yurtdışı kaynaklardan faydalandım.Buradaki amacım ticari değildir.Kaynağı belli olan ve bizim kaynağına ulaşabildiğimiz materyal (yazı, fotoğraf, resim, video v.b.) için ilgili konularda fotoğraflarda logo varsa v.b. not olarak gösterilecektir.Sitemizde yayınlanan tüm içerik, bizim tarafımızdan ve internet üzerinden youtube, facebook ve blog gibi paylaşıma sunulmuş kaynak sitelerden alındığı için, sitemiz yasal yükümlülüğe tabi tutulamaz. Sitemizde telif haklarının size ait olduğu bir içerik varsa ve bunu kaldırmamızı isterseniz, iletişim sayfamızdan bizimle iletişime geçtiğiniz takdirde içerik yayından kaldırılacaktır.Bu konu ve modüller ile uğraşarak, ileride çok güzel makine ve elektronik aletler yapabilirsiniz.