Bu projemizde deneyap mini ile ıot uygulaması gerçekleştirmek istedik. Kartımızda bulunan wifi modülü ile ağa bağlanacak daha sonra bu ağ üzerinden kartımıza bağlı olan servo motorumuzu kontrol edeceğiz.
Bu projemizde deneyap mini ile ıot uygulaması gerçekleştirmek istedik. Kartımızda bulunan wifi modülü ile ağa bağlanacak daha sonra bu ağ üzerinden kartımıza bağlı olan servo motorumuzu kontrol edeceğiz.
#include
#include
#include
#include
#include
#include
ISR_servo_t servo=
{
-1, D5
};
const char *ssid = "********";
const char *password = "*******";
WiFiServer server (80);
void setup() {
Serial.begin(115200);
WiFi.begin(ssid, password);
Serial.print("WİFİ AĞINA BAĞLANILIYOR");
while (WiFi.status() != WL_CONNECTED)
{
Serial.println("Bağlanılıyor....");
delay(300);
}
Serial.println("IP adresine bağlandı: ");
Serial.print(WiFi.localIP());
server.begin();
Serial.println("Server baslatildi");
ESP32_ISR_Servos.useTimer(USE_ESP32_TIMER_NO);
servo.servoIndex=ESP32_ISR_Servos.setupServo(servo.servoPin, MIN_MICROS, MAX_MICROS); // Seri haberlesme baslatildi
}
void loop() {
WiFiClient client = server.available(); // Baglanti talepleri dinleniyor
if(client) // Istemci varligi kontrol ediliyor
{
Serial.println("Yeni istemci talebi geldi.");
String currentLine = ""; // Istemciden gelen veriyi tutmak icin String degiskeni tanimlaniyor
while(client.connected())
{
if(client.available()) // Istemciden veri kontrolu yapiliyor
{
char c = client.read(); // Veri okunuyor
if (c == '\n') // "Yeni Satir" karakteri geldi mi
{
if(currentLine.length() == 0) // Satirda bulunan veri sayisi sifir mi (istemci talepte bulunmus)
{
client.println("HTTP/1.1 200 OK");
// Yanit kodu (e.g. HTTP/1.1 200 OK)
client.println("Content-type:text/html");
// Istemciye icerik turu ile ilgili bilgi gonderiliyor
client.println();
client.print("
Deneyap Mini Wifi ile Lamba Kontrolu
");
client.print("
");
// Icerik gonderiliyor
client.print("
"); // Icerik gonderiliyor
client.println();
break;
}
else // Satirdaki veri sayisi sifir degilse, satir temizleniyor
{
currentLine = "";
}
}
else if(c != '\r') // Veri "Satir Basi" harici baska bir karakter mi
{
currentLine += c; // Gelen veriyi satir sonuna ekle
}
if(currentLine.endsWith("GET /H")) // Istemciden gelen talebi kontrol et, "GET /H" ya da "GET /L":
{
ESP32_ISR_Servos.setPosition(servo.servoIndex,-45); // GET /H ledi yakar
delay(1000);
ESP32_ISR_Servos.setPosition(servo.servoIndex,0);
}
if(currentLine.endsWith("GET /L"))
{
ESP32_ISR_Servos.setPosition(servo.servoIndex,90);
delay(1000);
ESP32_ISR_Servos.setPosition(servo.servoIndex,0); // GET /L ledi sondurur
}
}
}
client.stop(); // Yanittan sonra http baglantisi durdurulur ve yeni istemci talebi beklenir
Serial.println("Client Disconnected.");
}
}