
STM32 Gömülü Yazılım Geliştirme Ortamı: STM32CubeIDE Kurulum ve Konfigürasyon Rehberi
Gömülü sistemler dünyasına profesyonel bir adım atmak için ilk ve en kritik aşama, çalışma ortamının (Toolchain) doğru kurgulanmasıdır. Bu eğitim videosunda, STMicroelectronics firmasının resmi geliştirme ortamı olan STM32CubeIDE'nin kurulumunu, ST-LINK sürücülerinin yapılandırılmasını ve ilk projeniz için gerekli olan hesap aktivasyon adımlarını adım adım inceliyoruz.
Bu videoda neler öğreneceksiniz?
Yazılım İndirme ve Kurulum: İşletim sisteminize uygun güncel sürümün seçilmesi ve kurulum aşamaları.
Donanım Sürücüleri: Bilgisayarınızın STM32 kartını tanıması için gerekli ST-LINK USB sürücülerinin yüklenmesi.
myST Hesap Aktivasyonu: CubeMX ve kütüphane indirmeleri için gerekli olan hesap bağlantısının yapılması.
İlk Bakış: IDE arayüzü ve temel konfigürasyon araçlarının tanıtımı.
Eğitim Materyali: Videonun altında yer alan "STM32 Gömülü Yazılım Geliştirme Ortamı Kurulum Rehberi" adlı PDF dosyası, videoda anlatılan tüm adımları ekran görüntüleriyle birlikte içeren kapsamlı bir dokümandır. Kurulum sırasında bu rehberi takip etmeniz, olası hataların önüne geçmenizi sağlayacaktır.
Kimin İçin Uygun?
Bilgisayar, Elektrik-Elektronik ve Mekatronik Mühendisliği öğrencileri.
ARM mimarisi ve STM32 dünyasına yeni başlayan geliştiriciler.
TEKNOFEST ve benzeri robotik yarışmaları için donanım programlama altyapısı kurmak isteyen takımlar.
STM32 ile Gömülü Sistemlere Giriş: GPIO Kontrolü ve Kara Şimşek Projesi (Deney 1)
Gömülü sistemler eğitim serimizin bu dersinde, mikrodenetleyicilerin en temel birimi olan GPIO (Genel Amaçlı Giriş/Çıkış) yapısını öğreniyoruz. STM32F407 işlemcisi üzerinde dijital sinyalleri nasıl yöneteceğimizi, bir pini nasıl çıkış (Output) yaparak LED yakacağımızı ve nasıl giriş (Input) yaparak bir butonun/anahtarın durumunu okuyacağımızı uygulamalı olarak inceliyoruz.
Bu videoda neler öğreneceksiniz?
GPIO Konfigürasyonu: STM32CubeMX arayüzü ile pinlerin modlarını (Input/Output/Pull-up) ayarlama.
Dijital Çıkış (HAL_GPIO_WritePin): 8 adet LED'in belirli bir algoritma ile (Kara Şimşek efekti) kontrol edilmesi.
Dijital Giriş (HAL_GPIO_ReadPin): Kart üzerindeki switch'lerin (anahtarların) durumuna göre program akışını değiştirme.
Algoritma Geliştirme: Döngüler ve gecikme fonksiyonları (HAL_Delay) ile dinamik animasyon oluşturma.
Deney Senaryosu: Videoda, ArmApp18 eğitim seti üzerindeki 8 LED'in sağdan sola ve soldan sağa akmasını sağlıyoruz. Ayrıca sisteme eklediğimiz kontrol anahtarlarıyla:
Animasyonun hızını değiştiriyoruz.
Animasyonu anlık olarak durduruyoruz.
Tüm LED'leri aynı anda yakma komutu veriyoruz.
Eğitim Materyali: Bu videoda uyguladığımız kod mimarisini, pin bağlantı şemalarını ve deneyin teorik altyapısını içeren "Deney 1: GPIO ve Dijital Giriş/Çıkış Uygulamaları" PDF dosyasını aşağıdan indirebilirsiniz. Dokümandaki adımları takip ederek projeyi kendi kartınızda birebir uygulayabilirsiniz.
STM32 ile Analog Veri İşleme: ADC Kullanımı ve LCD Ekran Entegrasyonu (Deney 2)
Gömülü sistemlerde sensörlerden gelen verileri anlamlandırmanın yolu ADC (Analog-to-Digital Converter) biriminden geçer. Bu dersimizde, STM32F407 mikrodenetleyicisi ile potansiyometreden gelen voltaj değerini okumayı, bu veriyi dijital olarak işlemeyi ve 16x02 LCD ekran üzerinde görüntülemeyi öğreniyoruz.
Bu videoda neler öğreneceksiniz?
ADC Yapılandırması: Sürekli dönüşüm (Continuous Conversion) modu ve 12-bit çözünürlük ayarları.
Voltaj Hesaplama: 0-4095 arasındaki ham verinin (Raw Data), matematiksel formüllerle nasıl 0-3.3V aralığına dönüştürüleceği.
LCD Ekran Sürücüleri: lcd.c ve lcd.h kütüphanelerinin projeye dahil edilmesi ve ekran üzerinde karakter/sayı yazdırma teknikleri.
Dinamik Mod Değişimi: Bir buton kontrolü ile ekranda hem ham veriyi hem de hesaplanan voltaj değerini gösterebilen bir kullanıcı arayüzü tasarımı.
Deney Senaryosu: Videoda, ArmApp18 eğitim seti üzerindeki potansiyometreyi çevirdikçe LCD ekrandaki değerlerin anlık olarak değiştiğini gözlemliyoruz. Ayrıca SW0 anahtarını kullanarak ekran modları arasında geçiş yapıyor ve "SCU BIL MUH" gibi özel karakter dizilerini ekrana yazdırıyoruz.
Eğitim Materyali: Bu deneyde kullandığımız formülleri, pin bağlantı şemasını ve C kodlarını içeren "Deney 2: Analog-Dijital Dönüştürücü (ADC) Uygulamaları" PDF dosyasını aşağıdan indirebilirsiniz.
STM32 ile Kesme (Interrupt) Mekanizması: Rotary Encoder ve EXTI Kullanımı (Deney 3)
Gömülü sistem programlamada işlemciyi sürekli meşgul etmek (polling) yerine, olay gerçekleştirdiğinde işlemciyi haberdar etmek sistem verimliliği için hayati önem taşır. Bu dersimizde, STM32F407 mikrodenetleyicisinin EXTI (External Interrupt) birimini kullanarak bir Rotary Encoder'ın hareketlerini nasıl yakalayacağımızı ve yön tespitini nasıl yapacağımızı öğreniyoruz.
Bu videoda neler öğreneceksiniz?
Kesme (Interrupt) Mantığı: Polling ve Interrupt yöntemleri arasındaki farklar ve neden kesme kullanmalıyız?
EXTI Konfigürasyonu: Yükselen kenar (Rising Edge) ve düşen kenar (Falling Edge) tetiklemeleri ile pin yapılandırması.
Rotary Encoder Çalışma Prensibi: CLK ve DT sinyalleri arasındaki faz farkını analiz ederek saat yönü (CW) ve saat yönü tersi (CCW) tespiti.
Geri Çağırma Fonksiyonları (Callbacks): HAL_GPIO_EXTI_Callback fonksiyonunun kullanımı ve kesme içinde kod yazma kuralları.
Deney Senaryosu: Videoda, ArmApp18 eğitim seti üzerindeki Rotary Encoder'ı çevirdiğimizde oluşan değişimleri anlık olarak yakalıyoruz. Encoder'ın her adımında LCD ekran üzerindeki sayaç değerini artırıp azaltıyor ve SW6 anahtarının durumuna göre ekranda yön bilgisini ("SAG" / "SOL") görselleştiriyoruz.
Eğitim Materyali: Kesme öncelikleri, encoder sinyal tabloları ve C kod mimarisini içeren "Deney 3: Harici Kesmeler (EXTI) Uygulamaları" PDF dosyasını aşağıdan indirebilirsiniz.
STM32 ile Motor Kontrolü: PWM Tekniği ve L293D Sürücü Kullanımı (Deney 5)
Gömülü sistemlerde mekanik bir hareketi kontrol etmek, sadece "aç-kapa" yapmaktan çok daha fazlasıdır. Bu dersimizde, STM32F407 üzerinde PWM (Pulse Width Modulation) sinyalleri üreterek bir DC motorun hızını nasıl hassas bir şekilde ayarlayacağımızı ve L293D motor sürücü entegresi üzerinden yön kontrolünü nasıl gerçekleştireceğimizi öğreniyoruz.
Bu videoda neler öğreneceksiniz?
PWM Mantığı ve Duty Cycle: Dijital sinyalin "Lojik 1" süresini değiştirerek ortalama gerilimi kontrol etme teorisi.
Timer PWM Modu Yapılandırması: STM32CubeMX üzerinde Timer birimini PWM nesli için hazırlama (Prescaler ve Period ayarları).
Motor Sürücü (L293D) Entegrasyonu: Mikrodenetleyici pinlerinden gelen düşük akımlı sinyallerle yüksek akımlı motorların güvenli kontrolü.
Hız ve Yön Algoritması: Klavye (Tuş Takımı) üzerinden gelen komutlara göre motorun devir sayısını artırıp azaltma ve dönüş yönünü (CW/CCW) anlık değiştirme.
Deney Senaryosu: Videoda, ArmApp-18 eğitim seti üzerindeki DC motoru kontrol ediyoruz. Menü tuş takımındaki "Yukarı" ve "Aşağı" butonlarını kullanarak motorun hızını (Duty Cycle değerini) değiştiriyor, LCD ekran üzerinde anlık hız yüzdesini ve yön bilgisini ("ILERI" / "GERI") gözlemliyoruz.
Eğitim Materyali: PWM frekans hesaplamalarını, L293D bağlantı şemasını ve motor kontrol kodlarını içeren "Deney 5: Darbe Genişlik Modülasyonu (PWM) Uygulamaları" PDF dosyasını aşağıdan indirebilirsiniz.
Gömülü sistemler dünyasına profesyonel bir giriş yapmaya hazır mısınız? Bu kurs, teorik bilgilerin ötesine geçerek tamamen uygulama odaklı bir mühendislik eğitimi sunar. Sivas Cumhuriyet Üniversitesi müfredatıyla tam uyumlu ve ArmApp-18 eğitim seti üzerinde kurgulanan bu eğitimde, STM32F407 mikrodenetleyicisinin tüm kritik birimlerini adım adım öğreneceksiniz. Kurs boyunca sadece kod yazmakla kalmayacak, bir mühendisin karşılaşabileceği gerçek donanımsal senaryoları bizzat deneyimleyeceksiniz.
Eğitim sürecinde STM32CubeIDE ortamında profesyonel kod yazım tekniklerini geliştirecek, donanım yapılandırmalarını (CubeMX) optimize etmeyi öğrenecek ve gerçek donanımlar üzerinde anlık sonuçları gözlemleyeceksiniz. Kurs içeriği; temel dijital giriş/çıkış işlemlerinden (Kara Şimşek projesi), mikrodenetleyicinin verimliliğini artıran karmaşık kesme (Interrupt) mekanizmalarına; analog sensör verilerinin (ADC) hassas bir şekilde okunup LCD ekranlarda görselleştirilmesinden, DC motorların PWM tekniğiyle hız ve yön kontrolüne kadar çok geniş bir yelpaze sunmaktadır.
Sektörde standart kabul edilen UART ve I2C haberleşme protokollerini sadece teorik şemalarla değil, Python tabanlı bilgisayar arayüzleri, OLED paneller ve Grafik LCD entegrasyonları ile uçtan uca deneyimleyeceksiniz. Kursun final aşamasında ise, UART kesmeleri ve Grafik LCD mimarisini birleştiren gerçek zamanlı bir oyun projesi tasarlayarak, sistemlerin yüksek hızda nasıl senkronize edildiğini derinlemesine kavrayacaksınız.
Bu kursu başarıyla tamamladığınızda; otonom araçlardan IoT çözümlerine, endüstriyel otomasyon cihazlarından savunma sanayii uygulamalarına kadar pek çok alanda ileri seviye projeler geliştirebilecek teknik yetkinliğe sahip olacaksınız. Mühendislik vizyonunuzu teknik bir üst seviyeye taşımak, donanım ile yazılımın kusursuz uyumunu keşfetmek ve sektörde aranan bir geliştirici olmak için bu kapsamlı yolculukta aramıza katılın!