STM32F103 ve CUBEMX ile LED BLINK Uygulaması

ST Firmasının ucuz ve popüler mikrodenetleyicisi olan STM32F103CB serisi ile uygulamalarımıza başlıyoruz.

İlk uygulama olarak LED blink yapacağız. Bunun için ilk olarak kullanacağımız board u inceleyerek başlayacağız.

  • – 72 MHz Maksimum çalışma frekansı
  • 128 Kbyte   Flash Bellek
    – 20 Kbyte   SRAM  Bellek
  • – 2.0 to 3.6 V Çalışma gerilimi
  • –  4-16 MHz  Kristal osilatör girişi
  • – Dahili 8 MHz RC osilatör
    – Dahili 40 kHz RC osilatör
    – Ayrıa RTC için kullanılmak üzere 32 kHz osilatör
  • 2 x 12-bit, ADC
    – 2 x I2C
  • – 3 USART
  • – 2 SPI

Gibi temel özellikleri olan bir MCU dur.  37 Adet pin I/O pini olarak kullanılabilir.

  1. CUBEMX programımızı başlatıyoruz ve ACCESS TO MCU SELECTOR sekmesini tıklayarak MCU seçimini yapıyoruz.
  • STM32F130CB yazarak kullanmak istediğimiz işlemcimizin ekrana gelmesini sağlıyoruz. Sonra 2 numaralı işlemci ismi olan yere çift tıklama ile projenin başlatılmasını sağlıyoruz.
  • System Core sekmesine, sonra da SYS bölümüne tıklıyoruz. 3 Numaralı bölümde “Serial wire” seçeneğini seçiyoruz. Bu seçim yazdığımız kod için “DEBUG” (hata ayıklama modu) işlemleri içindir.
  • “RCC” sekmesinde High Speed Clock (HSE) Crystal/Ceramic Resonator sekmesini seçiyoruz. ( Bu seçim eğer kart üzerindeki kristali kullanacak isek seçilmelidir). Seçim yapıldıktan sonra pin görünümünde RCC_OSC_IN ve RCC_OSC_OUT pinlerinin kullanıldığını 3 numaralı bölümde göreceksiniz.
  • Kartımız üzerinde PC13 pinine bağlı olan LED i kullanacağımız için PC13 pini üzerinde sağ tıklayarak GPIO_Output özelliği seçilecektir.
  • Program üzerindeki sekmelerden “Clock Configuration” sekmesi seçilir. 2 Numaralı bölümde ise çalıştırılmak istenen frekans seçilir. (maksimum 72 MHz) Seçim işlemi yapıldıktan sonra wizard otomatik olarak ayarlama işlemlerini yapacaktır.
  • “Project Manager” sekmesi seçilir. Sol menüde Project seçilir. Project name kısmına projemizin ismi (bizimki blink) yazılır. Project Location bölümünde ise projenin nereye kaydedileceği seçilir. Toolchain/IDE bölümünde MDK-ARM ( Bu keil demektir.) seçilir.
  • Sol menüdeki Code Generator sekmesi tıklanır. 3 Numaralı bölüm seçilir. Bu projemiz için sadece gerekli olan dosyaları projeye ekleyecektir.
  • “GENERATE CODE” sekmesi tıklanarak proje oluşturulur. Gelen pencerede Open Project seçilerek projenin açılması sağlanır.
  1. KEIL editöründe açılan projemize eklememiz gereken led yakma-söndürme kodlarıdır.
  2. Bunun için 1 numaralı bölümden main.c dosyası açılır.

HAL_GPIO_Toggle(GPIOC,GPIO_PIN_13);

HAL_Delay(500);

Komutları yazılır.

3 numaralı buton tıklanır, proje derlenir. Hatasız olarak derleme yapılmış ise 4 numaralı buton tıklanarak kodların karta yüklenmesi sağlanır.

Bu aşamadan sonra kart beslemesi kesilip yeniden verilerek ya da debug işlemi başlatılarak LED yak-söndür çalıştırılır.