Birlikte Yazalım-2 Bluetooth Kontrollü Akıllı Lamba Projesi
STM32 ile Sıfırdan Akıllı Lamba Projesi: OLED Menü, DHT11 Sensör, RTC, Kronometre ve Bluetooth Saat/Hatırlatıcı Kontrolü
- Kayıtlı 31 öğrenci
- Türkçe
Açıklama
Hayalindeki çoklu fonksiyonlu cihazı sıfırdan, satır satır birlikte yazıyoruz!
"Birlikte Yazalım" serisinin ikinci kursunda, tek bir STM32 kartının nasıl gerçek bir ürüne dönüştüğünü baştan sona deneyimleyeceksin. Bu kurs tek bir sensör ya da tek bir çevre birimi göstermekle yetinmiyor; OLED ekranlı bir menü sisteminden sıcaklık-nem ölçümüne, gerçek zamanlı saatten kronometreye ve Bluetooth üzerinden mobil kontrole kadar pek çok modülü tek bir projede bir araya getiriyor.
STM32F446 mikrodenetleyici üzerinde, profesyonel gömülü sistem projelerinin nasıl planlandığını, modüllere nasıl bölündüğünü ve katman katman (HAL → Sürücü → Uygulama) nasıl inşa edildiğini göreceksin. Her dersi sıfırdan, .c ve .h dosyalarını birlikte oluşturarak, test ederek ve hataları beraber ayıklayarak ilerliyoruz. Yani kursu bitirdiğinde elinde sadece çalışan bir cihaz değil, kendi projelerinde tekrar tekrar kullanabileceğin sağlam bir proje mimarisi anlayışı da olacak.
128×64 OLED ekranda menüler arası geçişi yöneten bir durum makinesi (state machine) tasarlayacak, butonu kesme (EXTI) ile okuyup yazılımsal debounce ile kısa/uzun basışları ayırt edeceğiz. DHT11 sensörünün single-wire haberleşme protokolünü mikrosaniye hassasiyetinde TIM2 ile bit bit çözecek, dahili RTC ile gerçek zamanlı saat ve tarih gösterecek, HAL_GetTick tabanlı milisaniye hassasiyetli bir kronometre yazacağız. Son olarak HC-05 Bluetooth modülü ile telefonundan saat-tarih güncelleme ve hatırlatıcı (reminder) ekleme özelliklerini hayata geçireceğiz.
Bu kurs, mikrodenetleyici programlamada temel bilgiye sahip olan ve "birden fazla çevre birimini aynı anda nasıl yönetirim, büyük bir projeyi nasıl toparlarım?" sorusuna pratik bir cevap arayan herkes için ideal. Adım adım, acele etmeden ve her satırın neden orada olduğunu anlatarak ilerliyoruz.
Kayıt olan tüm arkadaşlara şimdiden başarılar dilerim, hadi birlikte yazalım!
📌 Bu eğitim sonunda:
- Birden fazla çevre birimini (ekran, sensör, saat, buton, buzzer) tek bir projede sorunsuz biçimde yönetebilecek,
- Büyük bir gömülü sistem projesini modüllere bölüp katmanlı bir mimari ile baştan sona kurgulayabilecek,
- OLED ekran üzerinde durum makinesi (state machine) mantığıyla çalışan, menüli ve kullanıcı dostu bir arayüz tasarlayabilecek,
- Kesme (interrupt) tabanlı buton okuma, debounce ve kısa/uzun basış algılama tekniklerini kendi projelerinde uygulayabilecek,
- DHT11 gibi zamanlama hassasiyeti gerektiren sensörlerin haberleşme protokollerini sıfırdan yazabilecek,
- RTC ve kronometre gibi zaman tabanlı fonksiyonları doğru çözünürlükte hayata geçirebilecek,
- HC-05 Bluetooth modülü ile mikrodenetleyiciyi telefondan kontrol edebilecek (saat/tarih güncelleme, hatırlatıcı ekleme),
- Ve en önemlisi: kendi gömülü sistem projelerini profesyonelce planlama, kodlama ve test etme özgüvenine sahip olacaksınız.
👤 Kimler Katılmalı?
- STM32 ve mikrodenetleyici programlamada temel bilgiye sahip olup kendini gerçek bir projeyle ileri taşımak isteyenler,
- Tek tek çevre birimi öğrenmiş ama "hepsini tek projede nasıl bir araya getiririm?" sorusuna takılanlar,
- Bitirme projesi, staj ya da portföy için somut ve etkileyici bir gömülü sistem projesi arayan mühendislik öğrencileri,
- HAL kütüphaneleri ile çalışmayı ve katmanlı proje mimarisini uygulamalı olarak öğrenmek isteyenler,
- Sensör, ekran, Bluetooth ve zaman yönetimini bir arada deneyimlemek isteyen elektronik ve gömülü sistem meraklıları,
- "Birlikte Yazalım" serisinin ilk kursunu tamamlamış ve bir sonraki seviyeye geçmek isteyen herkes.
Neler öğreneceksiniz
Geniş kapsamlı bir gömülü sistem projesini katmanlı mimari (HAL/Sürücü/Uygulama) ile sıfırdan planlama ve kurma
STM32F446 sistem saati, güç ve çevre birimi yapılandırması (SystemClock, voltaj ölçekleme, MX_Init)
SSD1306 OLED ekranın I2C ile sürülmesi ve kullanıcı dostu arayüz/menü tasarımı
Durum makinesi (state machine) mantığıyla çok menülü, genişletilebilir bir sistem yönetimi
Buton kesmesi (EXTI), yazılımsal debounce ve kısa/uzun basış algılama
DHT11 single-wire protokolünün sıfırdan yazılması, checksum doğrulama ve hata yönetimi
TIM2 ile mikrosaniye hassasiyetli gecikme (usDelay) üretimi
Dahili RTC ile gerçek zamanlı saat ve tarih yönetimi
HAL_GetTick tabanlı milisaniye hassasiyetli kronometre tasarımı (START/STOP/RESET)
GPIO ile LED kontrolü (aç/kapa/toggle, blink) ve buzzer ile sesli geri bildirim
HC-05 Bluetooth ile mobil kontrol: saat/tarih güncelleme ve hatırlatıcı ekleme
Modüllerin ayrı ayrı test edilmesi, STM32CubeIDE ile debug ve Git/GitHub ile sürüm kontrolü
- 13952 Öğrenci
- 488 Yorum
Merhaba! Derslerinize ve iş hayatınıza yardımcı olacak kurslarımıza aşağıdan erişebilirsiniz. Kurslarımız ile ilgili her türlü sorunuzu linkedin adresimizden veya kursumuza kayıt olduktan sonra katılabileceğiniz telegram kanalından iletebilirsiniz. Şimdiden kurslarımıza kayıt olan arkadaşlara başarılar diliyorum. "Öğrenme ve öğretmenin bir sınırı yoktur." --> 101 kupon kodu ile bütün kurslarımızda 😯 %60 😯 indirimden faydalanabilirsiniz <--> Eğer 1111 kupon kodu ile kurslarımıza 😯 %50 😯 indirimle kayıt olursanız da istediğiniz bir kursumu hediye ediyorum. Aldıktan sonra mail üzerinden istediğiniz kursu iletebilirsiniz <--
Birlikte sıkça alınanlar
Eğitmen
- Arif Mandal
- 13952 Öğrenci
- 488 Yorum
Merhaba! Derslerinize ve iş hayatınıza yardımcı olacak kurslarımıza aşağıdan erişebilirsiniz. Kurslarımız ile ilgili her türlü sorunuzu linkedin adresimizden veya kursumuza kayıt olduktan sonra katılabileceğiniz telegram kanalından iletebilirsiniz. Şimdiden kurslarımıza kayıt olan arkadaşlara başarılar diliyorum. "Öğrenme ve öğretmenin bir sınırı yoktur." --> 101 kupon kodu ile bütün kurslarımızda 😯 %60 😯 indirimden faydalanabilirsiniz <--> Eğer 1111 kupon kodu ile kurslarımıza 😯 %50 😯 indirimle kayıt olursanız da istediğiniz bir kursumu hediye ediyorum. Aldıktan sonra mail üzerinden istediğiniz kursu iletebilirsiniz <--
Dersler
Genel Bilgilendirme
1 SayfalarKurs Dosyaları (Kodlar, Slaytlar ve Dökümanlar)
1 Sayfalar- İçeriğe Git
Projenin Tanıtımı Genel Şablon - Kursumuzda Neler Yapacağız?
1 SayfalarKullanılan Malzemelerin Tanıtımı ve Projenin Oluşturulması
1 Sayfalar- Kullanılan Malzemelerin Tanıtımı ve Projenin Oluşturulması
Led Sürücüsünün Yazılması ve Test Edilmesi
1 Sayfalar- Led Sürücüsünün Yazılması ve Test Edilmesi
Kesmeleri Kontrol Edeceğimiz Sürücünün Yazılması-1
1 Sayfalar- Kesmeleri Kontrol Edeceğimiz Sürücünün Yazılması-1
Kesmeleri Kontrol Edeceğimiz Sürücünün Yazılması-2
1 Sayfalar- Kesmeleri Kontrol Edeceğimiz Sürücünün Yazılması-2
Buzzer Sürücüsünün Yazılması ve Test Edilmesi
1 Sayfalar- Buzzer Sürücüsünün Yazılması ve Test Edilmesi
Buzzer Sürücüsünün Non-Blocking Olarak Ayarlanması
1 Sayfalar- Buzzer Sürücüsünün Non-Blocking Olarak Ayarlanması
usDelay Sürücüsünün Yazılması
1 Sayfalar- usDelay Sürücüsünün Yazılması
DHT11 Sürücüsünün Yazılması ve Test Edilmesi
1 Sayfalar- DHT11 Sürücüsünün Yazılması ve Test Edilmesi
Kronometre Sürücüsünün Yazılması -1
1 Sayfalar- Kronometre Sürücüsünün Yazılması -1
Kronometre Sürücüsünün Yazılması -2 ve Test Edilmesi
1 Sayfalar- Kronometre Sürücüsünün Yazılması -2 ve Test Edilmesi
Kronometre Sürücüsüne Yeni Foksiyonların Eklenmesi
1 Sayfalar- Kronometre Sürücüsüne Yeni Foksiyonların Eklenmesi
RTC Foksiyonlarının Yazılması - 1
1 Sayfalar- RTC Foksiyonlarının Yazılması - 1
RTC Foksiyonlarının Yazılması - 2
1 Sayfalar- RTC Foksiyonlarının Yazılması - 2
BLUETOOTH Modülü Sürücüsünün Yazılması-1
1 Sayfalar- BLUETOOTH Modülü Sürücüsünün Yazılması-1
BLUETOOTH Modülü Sürücüsünün Yazılması-2
1 Sayfalar- BLUETOOTH Modülü Sürücüsünün Yazılması-2
128x64 Oled Ekranın Projeye Eklenmesi
1 Sayfalar- 128x64 Oled Ekranın Projeye Eklenmesi
Menu Tasarımı -1 (Led Kontrol Menüsü)
1 Sayfalar- Menu Tasarımı -1 (Led Kontrol Menüsü)
Menu Tasarımı -2 (Led Kontrol Menüsü)
1 Sayfalar- Menu Tasarımı -2 (Led Kontrol Menüsü)
Menu Tasarımı -3 (DHT11 Menüsü)
1 Sayfalar- Menu Tasarımı -3 (DHT11 Menüsü)
Menu Tasarımı -4 (Kronometre Menüsü - Start Stop)
1 Sayfalar- Menu Tasarımı -4 (Kronometre Menüsü - Start Stop)
Menu Tasarımı -5 (RTC Menüsü)
1 Sayfalar- Menu Tasarımı -5 (RTC Menüsü)
Menu Tasarımı -6 (Bluetooth Menüsü)
1 Sayfalar- Menu Tasarımı -6 (Bluetooth Menüsü)
Menu Tasarımı -7 (Açılış ve Hakkında Menülerinin Tasarımı)
1 Sayfalar- Menu Tasarımı -7 (Açılış ve Hakkında Menülerinin Tasarımı)
Projemize Low Power Eklenmesi - Sistemi Uykuya Sokma
1 Sayfalar- Projemize Low Power Eklenmesi - Sistemi Uykuya Sokma
Kullanıcı Verilerini Flash'a Kayıt Edip Geri Okuma
1 Sayfalar- Kullanıcı Verilerini Flash'a Kayıt Edip Geri Okuma
Tebrikler!
1 Sayfalar- İçeriğe Git
Bayram Aktaş
Yorumlar
Yorum yapmak için bu içeriğe sahip olman gerekir.
Teşekkürler hocam, esp32 ile de uygulama kursu çekerseniz sevinirim.
Bütün konuları öğrenebileceğimiz bir kurs olmuş, sağolun hocam😊