Arduino ile HC06 bluetooth modülünü kullanarak telefondan komutlar verdiğimiz bir uygulama paylaşmıştım, ESP8266 ise hazırladığınız Arduino devresine wi-fi üzerinden erişebilmenize, komutlar gönderebilmenize ve Thingspeak gibi servisleri uzaktan kullanabilmenize olanak sağlaması açısından çok işlevsel bir modül. Bu yazıda ESP8266 Wi-Fi modülü ile IP adresi almak, tarayıcıda bu IP adresi ile ESP8266 Wi-Fi modülünün ürettiği HTML sayfayı görüntülemek ve RX-TX pinlerini kullanarak bağlantı yapmayı göstermek istiyorum. Günün ilerleyen saatlerinde basit uygulamalar ile uzaktan komutlar vereceğimiz örnekler de hazırlayarak paylaşacağım.
Öncelikle ESP8266 modülünün arkasındaki pinler ve açıklamaları şu şekilde:
Önemli not: ESP8266 modülü 3.3V enerji ile beslenmelidir, 5V kullanmanız durumunda modüle zarar vermeniz kuvvetle muhtemeldir.
Şimdi ESP8266 ve Arduino'yu nasıl bağladığımı göstermek istiyorum:
Aşağıdaki kodlar, sadece Arduino ile ESP8266 Wi-Fi modülünün bağlantısını kurmak ve merhaba dünya html mesajı almak için kullanılabilir, ilerleyen uygulamalarda Türkçe karakter desteği ve bootstrap eklemek gibi örnekleri de paylaşacağım.
Serial monitörü 115200 olarak ayarlayarak aşağıdaki kodlar ile şu konsol mesajları gelmelidir:
Proje Kodları:
#define ag_ismi "xxx"
#define ag_sifresi "xxx"
void setup()
{
Serial.begin(115200);
Serial.println("AT");
pinMode(13,OUTPUT);
delay(3000);
if(Serial.find("OK")){
Serial.println("AT+CWMODE=1");
delay(2000);
String baglantiKomutu=String("AT+CWJAP=\"")+ag_ismi+"\",\""+ag_sifresi+"\"";
Serial.println(baglantiKomutu);
delay(5000);
}
Serial.print("AT+CIPMUX=1\r\n");
delay(200);
Serial.print("AT+CIPSERVER=1,80\r\n");
delay(1000);
}
void loop(){
if(Serial.available()>0){
if(Serial.find("+IPD,")){
digitalWrite(13,HIGH); //bağlantı kurulunca ledi yak
delay(2000);
digitalWrite(13,LOW);
String metin = "<h1> Merhaba Reitix</h1>";
String cipsend = "AT+CIPSEND=";
cipsend +="0";
cipsend +=",";
cipsend += metin.length();
cipsend += "\r\n";
Serial.print(cipsend);
delay(500);
Serial.println(metin);
Serial.println("AT+CIPCLOSE=0");
}
else
Serial.print("bağlantı bekleniyor-");
}
}
Üstteki kodlar, ESP8266 modülü modeme bağlantı kurduğunda 13. pindeki led ışığı yakacak şekilde kodlandığı için bir adet led ışık eklerseniz bağlantının sağlandığını görebilirsiniz. Bağlanmanız gereken IP adresini ise modem arayüzünden görmenizi ve bu adres üzerinden elle giriş yaparak arayüze erişmenizi tavsiye ederim.
Kodlar çalıştırıldığında görmeniz gereken html sayfası şu şekilde: