Bu yazımızda kodumuza gecikme ekleyeceğiz.
#include "stm32f4xx.h" #include "stm32f4xx_rcc.h" #include "stm32f4xx_gpio.h" int main(void) { /* GPIO init */ // LED PIN AYARI RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOA, ENABLE); // A portunun saat darbesini aktifleştidik. GPIO_InitTypeDef GPIO_InitStructure; GPIO_InitStructure.GPIO_Pin = GPIO_Pin_5; // 5 numaralı pin için ayarlıyoruz. GPIO_InitStructure.GPIO_OType = GPIO_OType_PP; // Pin çıkış tipini ayarladık. GPIO_InitStructure.GPIO_Mode = GPIO_Mode_OUT; // Pinimizi output olarak ayarladık. GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_NOPULL; // Pull Up direncini pasif yaptık. GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; // Pinin maksimum çalışma frekansını ayarladık. GPIO_Init(GPIOA, &GPIO_InitStructure); // Ayarları uyguluyoruz. int i; while(1) { GPIO_ToggleBits(GPIOA, GPIO_Pin_5); // Ledi tersliyoruz. for (i = 0; i < 1000000; ++i); // Bekleme } }
For döngüsü ile basit bir bekleme oluşturduk. Kodu kite yüklediğinizde ledin yanıp söndüğünü görebilirsiniz.
Proje dosyasını linkten indirebilirsiniz. –>coide_dongu_gecikme_uygulamasi