• Buradasın

    STM32 ARM Programlama: PWM Konfigürasyonu Eğitimi

    youtube.com/watch?v=gHtRYdWuOh4

    Yapay zekadan makale özeti

    • Bu video, Soner Botaş tarafından sunulan "Nükleer 64 Geliştirme Kartı" serisinin dokuzuncu bölümüdür ve STM32 ARM programlama uygulamaları geliştirmektedir.
    • Video, PWM (Pulse Width Modulation) konusunu ele almaktadır. İçerikte öncelikle timerların içindeki birimler ve PWM oluşturan birim hakkında bilgi verilmekte, ardından STM32F401R için timer ayarları gösterilmektedir. Daha sonra kod yazımı aşamasına geçilerek, GPIO pin konfigürasyonu, timer konfigürasyonu ve output compare modu detaylı olarak açıklanmaktadır.
    • Eğitimde OCN polarity, tier output, compar polarity gibi ayarlar anlatılmakta, duty cycle hesaplaması açıklanmakta ve GTM32 için çevre birimi aktifleştirme, CMD fonksiyonu yazma ve while döngüsü içinde PWM oluşturma kodları gösterilmektedir. Video sonunda, oluşturulan PWM'in LED parlaklığını nasıl etkilediği osiroskop veya PC8 ile gözlemlenebileceği belirtilmektedir.
    00:01PWM ve Timer Tanıtımı
    • Soner Botaş, STM32 ARM programlama uygulamaları serisinin dokuzuncu videosunda PWM konusunu anlatacak.
    • PWM ile çalışırken timerların içerisindeki birimlerden bahsedilecek.
    • STM32F4X için sistem ayarları yapılarak çalışma frekansı 84 MHz olarak ayarlandı.
    01:15Timer Özellikleri
    • STM32F401R için Timer 1 16 bitlik advanced kontrollü bir timer olarak tanımlanmıştır.
    • Timer 2 16 bitlik bir değer sayabiliyor ve updown olarak auto-reload durumu gerçekleştirebiliyor.
    • PWM için Timer 3 kullanılacak ve PC8 pininin Timer 3'ün Channel 3 pinini oluşturduğu belirtilmiştir.
    03:09Kod Hazırlığı
    • Kodda Type Def yapıları tanımlanıyor ve Timer için Time Base int structure int type def yapısı kullanılıyor.
    • Output Compare (OC) yapısı, Timer'ın bir birimi olarak tanımlanıyor ve PWM oluşturan birim olarak kullanılıyor.
    • GPIO konfigürasyonları için B1 clock hattı aktif ediliyor ve PC8 pininin alternatif fonksiyonu Timer olarak tanımlanıyor.
    08:39Timer Konfigürasyonu
    • Timer konfigürasyonları için PWM-Config fonksiyonu kullanılıyor ve Timer 3'ün clock hattı aktif ediliyor.
    • Prescaler değeri 41 olarak ayarlanıyor ve periyot değeri 999 olarak belirleniyor.
    • Timer counter modu yukarı sayma olarak ayarlanıyor ve Timer 3 yapısı aktif ediliyor.
    13:17Output Compare Modları
    • Output Compare modu, çıkışlardaki farklılıkları gösteren farklı modlardan oluşuyor.
    • PWM-1 modunda, seçilen değer yüzdelik olarak %25 high-low olarak değerlendiriliyor.
    • PWM-2 modunda ise, seçilen değer %75 high-25 low olarak değerlendiriliyor.
    15:32PWM Modunu Ayarlama
    • PWM modunu seçtikten sonra OCN polarite, tier output, compair polarity, poly ve high seçenekleri kullanılabilir.
    • Duty cycle değeri yüzde 25 olarak seçildiğinde, 125-175 değerleri tam tersi olarak değerlendirilir.
    • Timer OC int structure time output state seçeneği ile durum aktif edilir.
    16:40CMD Fonksiyonu ve Timer Ayarları
    • CMD fonksiyonu yazarak time 3 çevre birimi aktif edilir.
    • GTM 32 için çevre birimi kullanmak için CMD fonksiyonunda aktif etmek gerekir.
    • PWM için timer'da interap değerlendirilebilir, ancak bu örnekte vileda çalıştırılacaktır.
    18:06Duty Cycle Hesabı
    • Duty cycle, darbe uzunluğunun hesabıdır ve yüzde 25, 50, 75 ve 100 duty cycle olarak değerlendirilebilir.
    • Duty cycle değerleri periyot olarak alınır ve periyot 1000 olarak değerlendirilir.
    • Yüzde 25 duty cycle için time periyot artı bir duty cycle formülü kullanılır.
    18:57PWM Konfigürasyonu
    • GPU config fonksiyonu çağrılır ve PWM konfigürasyonu yapılır.
    • Timer'ın PWM oluşturduğu kod, PWM değerini belirleyen koddur.
    • Fonksiyonun içerisine yazılan değer periyot değerleridir ve başlangıç değeri sıfır olarak değerlendirilir.
    20:05Sonsuz Döngü ve PWM Oluşturma
    • Sonsuz döngü içinde for döngüsü kullanılarak cycle değeri 0'dan başlayıp 100'e kadar gider ve sonra tekrar 0'a döner.
    • For döngüsünde i değeri 1000'e kadar sayılır ve 999'da biter.
    • Timer OC int structure fonksiyonu ile time output compa 3 channel aktif edilir.
    22:53Kod Çalıştırma ve Sonuç
    • Kod çalıştırıldığında osiroskop yardımıyla PWM görülebilir.
    • Osiroskop olmayanlar PC8'e bir LED bağlayarak ve delay fonksiyonunun zamanını arttırarak gerilimin değişimini gözlemleyebilirler.
    • LED hiç yanmıyorken zamanla parlaklığının arttığı görülecektir.

    Yanıtı değerlendir

  • Yazeka sinir ağı makaleleri veya videoları özetliyor