Buradasın
Basit Web Server Uygulaması ve C# ile HTML Sayfası Oluşturma Eğitimi
youtube.com/watch?v=x9dC_E0ed7wYapay zekadan makale özeti
- Kısa
- Ayrıntılı
- Bu video, Cumhuriyet Üniversitesi Bilgisayar Mühendisliği Gömülü Sistemler dersi için Kenan Başdemir tarafından hazırlanan bir eğitim içeriğidir.
- Video iki ana bölümden oluşmaktadır. İlk bölümde Tinkercad üzerinden basit bir web server uygulamasının simülasyonu anlatılmakta, Arduino Uno R3, ESP8266 WiFi modülü, LED'ler ve dirençler kullanılarak oluşturulan devre ve ESP8266 WiFi modülünün ESP8266-H kütüphanesi ile nasıl yönetileceği gösterilmektedir. İkinci bölümde ise C# programlama dilini kullanarak HTML sayfası oluşturma süreci adım adım açıklanmaktadır.
- Eğitim içeriğinde setup ve loop fonksiyonlarının çalışma prensipleri, WiFi bağlantısı kurulumu, web sunucusu üzerinden LED kontrolü, HTML taglarının kullanımı, hit alanlarının yazdırılması, CSS bilgilerinin uygulanması ve kullanıcı işlemlerinin nasıl tamamlanacağı gibi konular detaylı olarak ele alınmaktadır.
- Web Server Uygulaması Tanıtımı
- Cumhuriyet Üniversitesi Bilgisayar Mühendisliği Gömülü Sistemler dersi için hazırlanan sekizinci sunumda basit bir web server uygulaması simüle edilecektir.
- Tinkercad üzerinden gerçekleştirilen projede, web sitesi arayüzü üzerinden iki buton kullanılarak ilk butona basıldığında LED'in yanıp sönmesi, ikinci butona basıldığında ise ikinci LED'in yanıp sönmesi sağlanacaktır.
- HTML sayfasında ilk durumda "on" yazan iki buton olacak; ilk buton ilk LED'i, ikinci buton ise ikinci LED'i yakıp söndürmekle görevli olacaktır.
- 01:54Devre ve Kullanılan Araçlar
- Devrede Arduino Uno R3, ESP8266 WiFi modülü, iki LED ve iki 1 kilo ohmluk direnç kullanılmıştır.
- Tinkercad üzerinden WiFi modülü direkt çalıştırılamadığı için, ESP8266 WiFi-H kütüphanesi kullanılarak modül yönetilebilir.
- WiFi bağlantısı için SSID (WiFi ismi) ve password (WiFi şifresi) değerleri gereklidir; varsayılan olarak SSID ve password "admin" olarak belirlenmiştir.
- 03:04Kodun Temel Yapısı
- WiFi server varsayılan olarak 80 portu üzerinden çalışması gerektiği belirtilmiştir.
- String header ile HTTP request'in header bilgisi tutulmuş ve çıkış durumu her iki LED için de "off" duruma getirilmiştir.
- GPIO pinleri (output 5 ve output 4) tanımlanmış ve saat bilgisi milisaniye olarak alınmıştır.
- 04:34Setup Kısmı
- Setup kısmında WiFi bağlantıları ve verilerin son durumları belirlenmiştir.
- Serial.begin kullanılarak 115200 portu üzerinden haberleşme sağlanmış ve pin modu output olarak ayarlanmıştır.
- Dijital write komutları kullanılarak LED'ler üzerindeki akım durumları "on" durumuna çekilmiş ve WiFi bilgi metodu kullanılarak SSID ve password değerleri gönderilmiştir.
- 06:43Loop Kısmı
- Loop kısmında kullanıcıya web sayfası görüntülenmesi ve butonlar üzerinde kontrol yapılması amaçlanmaktadır.
- WiFi client server available ile server aktiflik durumu kontrol edilmiş ve yeni bir client geldiğinde mesaj yazdırılmıştır.
- Client bağlı durumdaysa ve arada geçen süre time out değerinden küçükse, current time güncellenmiş ve client'dan bir byte değeri alınmıştır.
- 08:48Web Request ve LED Kontrolü
- Bir dökümanın sonuna gelmiş olduğunu anlamak için iki adet slash n (//) gelmesi gerekmektedir.
- Client'a HTTP tipi web request üzerinden 200 döndürülerek "okey" mesajı verilmiş ve content type'ı HTML olarak belirlenmiştir.
- Header'in içerisinden gelen bilgiye göre GPIO pin 5 ve pin 4 üzerindeki LED'lerin yanıp sönmesi sağlanmıştır.
- 11:52HTML ve CSS Kullanımı
- CLIDE print komutu ile HTML tagları açılarak hit alanları yazdırılıyor.
- CSS bilgilerinin uygulanabilmesi için style işlemleri gerçekleştiriliyor.
- C nokta print kullanarak ESP8266 ve server body içerisinde açılıyor.
- 12:32LED Durumunu Gösterme
- GPIO 5 pinine takılı olan LED'in anlık durumunu görüntüleyebilmek için state değişkeni kullanılıyor.
- Output 5 state değeri ofsa ekranda "on" olarak, ofsa "off" olarak gösterilmesi gerekiyor.
- GPIO 4 pinleri için de aynı şekilde kontrol yapılıyor ve sonuç kapalıysa açmak, açıksa kapatmak gerekiyor.
- 13:53Veri Gönderimi
- Kullanıcı işlemlerini bitirdikten sonra kullanılan satır değeri boş olarak işaretleniyor.
- C komutu ile byte değeri eklenerek satır başına gelme sağlanıyor.
- Slash header alanları boş bırakılıp client stop edilerek datanın kullanıcıya gönderilmesi sağlanıyor.