Merhaba arkadaşlar Nesnelerin İnterneti Kategorisinin ilk makalesini Espressif Systems Firmasının en küçük ve en ucuz üyesi ESP-01’i nasıl güncelleriz ve Ardiuno’nun IDE’si ile nasıl kod yükleyip WIFI Ağımıza bağlamaktan bahsedelim…

Öncelikle burdan Güncelleme Dosyalarımızı ve ESP Flasher Programını indiriyoruz.

Ben Seri Bağlantı için USB ESP TTL Modülünü kullanacağım

Bu modülü kullanarak yazılım güncelleme ve kod yükleme yapmak için GND İLE I00 pinlerini aşağıda ki görselde ki gibi kısa devre etmemiz gerek

Aşağıda ki görselde ki gibi güncelleme dosyalarını ve adreslerini seçip güncelleme işlemine başlıyoruz.

(F) Flasher butonuyla güncelleme işlemini başlatıyoruz.
GÜNCELLEME İŞLEMİ TAMAM !

Şimdi de nesnelerin interneti dedik durduk bu ESP’nin MCU çipine kod yükleyip marifetini görelim.

Bilgisayarımızda halihazırda bulunan Arduino IDE Programını açıp kod yüklemeden önce ESP Kartına kod yüklememiz için ESP8266 Kütüphanesini yüklememiz gerekiyor, Bu kütüphaneyi yükleyebilmek için IDE Programından Dosya > Tercihler > Ek Devre Kartları Yöneticisi URL’leri kutucuğuna “https://arduino.esp8266.com/stable/package_esp8266com_index.json” adresini yazıp ardın.
Araçlar > Kart Yöneticisi > Arama kutucuğuna ESP8266 Yazıp çıkan kütüphaneyi yüklüyoruz

Kartımızın Seçimini de bu şekilde yaptıktan sonra kod yükleme işlemini gerçekleştirebiliriz.

ESP-01 ile WEB üzerinden ESP-01 için üretilmiş hazır role kartını kontrol edelim

Aşağıda ki kodda bulunan WIFI Bilgileri ve Pin bilgilerini kendinize göre düzenleyip Kartınıza yükleyin.

Yükleme işlemini tamamladıktan sonra belirlediğiniz GPIO’yu kontrol etmek için

http://8266_IP//gpio/1 Roleyi Açar
http://8266_IP//gpio/0 Roleyi Kapatır

#include <ESP8266WiFi.h>

const char* ssid = "WIFI ISMINIZ";
const char* password = "WIFI ŞİFRENIZ";

// Create an instance of the server
// specify the port to listen on as an argument
WiFiServer server(80);

void setup() {
  Serial.begin(115200);
  delay(10);

  // prepare GPIO2
  pinMode(0, OUTPUT);
  digitalWrite(0, 0);

  // Connect to WiFi network
  Serial.println();
  Serial.println();
  Serial.print("Connecting to ");
  Serial.println(ssid);

  WiFi.begin(ssid, password);

  while (WiFi.status() != WL_CONNECTED) {
    delay(500);
    Serial.print(".");
  }
  Serial.println("");
  Serial.println("WiFi connected");

  // Start the server
  server.begin();
  Serial.println("Server started");

  // Print the IP address
  Serial.println(WiFi.localIP());
}

void loop() {
  // Check if a client has connected
  WiFiClient client = server.available();
  if (!client) {
    return;
  }

  // Wait until the client sends some data
  Serial.println("new client");
  while (!client.available()) {
    delay(1);
  }

  // Read the first line of the request
  String req = client.readStringUntil('\r');
  Serial.println(req);
  client.flush();

  // Match the request
  int val;
  if (req.indexOf("/gpio/0") != -1)
    val = 0;
  else if (req.indexOf("/gpio/1") != -1)
    val = 1;
  else {
    Serial.println("invalid request");
    client.stop();
    return;
  }

  // Set GPIO2 according to the request
  digitalWrite(0, val);

  client.flush();

  // Prepare the response
  String s = "HTTP/1.1 200 OK\r\nContent-Type: text/html\r\n\r\n<!DOCTYPE HTML>\r\n<html>\r\nGPIO is now ";
  s += (val) ? "high" : "low";
  s += "</html>\n";

  // Send the response to the client
  client.print(s);
  delay(1);
  Serial.println("Client disonnected");

  // The client will actually be disconnected
  // when the function returns and 'client' object is destroyed
}

Konu ile alakalı sormak istediklerinizi bu makale altında yorum olarak gönderebilirsiniz.

3 comments
  • Mehmetali
    07 Ocak 2020 at 17:55

    Teşekkür ederim ilyas hocam çok açıklayıcı bir makale olmuş

    Yanıtla
  • Cafer
    16 Temmuz 2022 at 01:01

    öncelikle elinize sağlık fakat bir kere açınca veya kapanınca bir daha gönderdiğimiz komutu algılamıyor ve tepki vermiyor.

    Yanıtla
    • iLyaS • Gönderi Sahibi •
      17 Ekim 2022 at 12:11

      Kullanmış olduğunuz ESP’de arıza olabilir daha önce böyle bir sorunla karşılaşmadım

      Yanıtla

Yorum Yaz

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Bu site, istenmeyenleri azaltmak için Akismet kullanıyor. Yorum verilerinizin nasıl işlendiği hakkında daha fazla bilgi edinin.