Stm32F103RB ile HSI

timing_10[1]Elimdeki işlemci (stm32f103rb) neden olduğunu anlamadığım bir sebepten harici osilatörü çalışmıyordu. Alternatif olarak, hiç kullanmadığım HSI (high speed internal ) osilatörü devreye verdim. Kodlarda sadece bu kısmı vereceğim.

void SetSysClockHSI(void)
{
   RCC_DeInit();
   RCC_HSICmd(ENABLE);
   RCC_HCLKConfig(RCC_SYSCLK_Div1);
   RCC_PCLK1Config(RCC_HCLK_Div2);
   RCC_PCLK1Config(RCC_HCLK_Div1);
   FLASH_SetLatency(FLASH_Latency_2);
   FLASH_PrefetchBufferCmd(FLASH_PrefetchBuffer_Enable);
   RCC_PLLConfig(RCC_PLLSource_HSI_Div2, RCC_CFGR_PLLMULL16);
   RCC_PLLCmd( ENABLE);
        while (RCC_GetFlagStatus(RCC_FLAG_PLLRDY) == RESET)
        {
        }
        RCC_SYSCLKConfig( RCC_SYSCLKSource_PLLCLK);
        while (RCC_GetSYSCLKSource() != 0x08)
        {
        }
      }

iyi çalışmalar.

Bir Cevap Yazın

Aşağıya bilgilerinizi girin veya oturum açmak için bir simgeye tıklayın:

WordPress.com Logosu

WordPress.com hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Google fotoğrafı

Google hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Twitter resmi

Twitter hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Facebook fotoğrafı

Facebook hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.

%d blogcu bunu beğendi: