NOTICE توجه: این یک موضوع قدیمی است که آخرین پست ارسالی آن مربوط به 3252 روز قبل است . لطفا فقط پاسخ ها ، سوالات و درخواست های 100 درصد مرتبط را به آن ارسال کنید و برای درخواست ها و سوالات جدید موضوع جدیدی را ایجاد کنید
نمایش نتایج: از 1 به 2 از 2

موضوع: تنظیم کلاک سیستم

  1. #1
    کاربر علاقه مند
    تاریخ عضویت
    Sep 2008
    نوشته ها
    38
    تشکر
    5
    تشکر شده 1 بار در 1 پست

    پیش فرض تنظیم کلاک سیستم

    با سلام به همه عزیزان آیا کسی میدونه چطور میتونم کلاک سیستم را در توابع cmsis تنظیم کنم. من یه مثال دانلود کردم که با استفاده از کتابخانه cmsis هست حالا میخام با کلاک مثلا 72 مگا هرتز کار کنم اگر کسی میدنه راهنمایی کنه بگه کجای برنامه را باید تغییر بدم . ممنون از همگی دوستان

  2. # ADS
    Circuit advertisement
    تاریخ عضویت
    Always
    نوشته ها
    Many
     

  3. #2
    مدير بخش STM32 sadmonew آواتار ها
    تاریخ عضویت
    Jun 2011
    نام
    صادق محمدي
    نوشته ها
    2,002
    تشکر
    6,283
    تشکر شده 3,115 بار در 1,408 پست

    پیش فرض

    سلام
    از این مجموعه توابع برای تنظیم کلاک هسته استفاده میکنیم
    کد:
    /* RCC system reset(for debug purpose) */
      RCC_DeInit();
    
      /* Enable HSE */
      RCC_HSEConfig(RCC_HSE_ON);
    
      /* Wait till HSE is ready */
      HSEStartUpStatus = RCC_WaitForHSEStartUp();
    
      if(HSEStartUpStatus == SUCCESS)
      {
        /* Enable Prefetch Buffer */
        FLASH_PrefetchBufferCmd(FLASH_PrefetchBuffer_Enable);
    
        /* Flash 2 wait state */
        FLASH_SetLatency(FLASH_Latency_2/*FLASH_Latency_2*/);
         
        /* HCLK = SYSCLK */
        RCC_HCLKConfig(RCC_SYSCLK_Div1); 
      
        /* PCLK2 = HCLK */
        RCC_PCLK2Config(RCC_HCLK_Div1); 
    
        /* PCLK1 = HCLK/2 */
        RCC_PCLK1Config(RCC_HCLK_Div2);
    
        /* PLLCLK = 8MHz * 9 = 72 MHz ---- ferekanse 8MHz hamoon crystal vasl shode be mikro hastesh.*/
        RCC_PLLConfig(RCC_PLLSource_HSE_Div1, RCC_PLLMul_9);
    
        /* Enable PLL */ 
        RCC_PLLCmd(ENABLE);
    
        /* Wait till PLL is ready */
        while(RCC_GetFlagStatus(RCC_FLAG_PLLRDY) == RESET)
        {
        }
    
        /* Select PLL as system clock source */
        RCC_SYSCLKConfig(RCC_SYSCLKSource_PLLCLK);
    
        /* Wait till PLL is used as system clock source */
        while(RCC_GetSYSCLKSource() != 0x08)
        {
        }
      }
    یکی از مهمترین اونا تابعی است که با توجه به فرکانس کریستال متصل شده به میکرو و انتخاب ضریب میتونیم فرکانس رو تنظیم کنیم:
    کد:
    RCC_PLLConfig(RCC_PLLSource_HSE_Div1, RCC_PLLMul_9);
    اگه فرض کنید که کریستال 8 مگ را به میکرو وصل کردیم با انتخاب ضریب 9(یعنی قرار دادن مقدار RCC_PLLMul_9) در پارامتر دوم، فرکانس هسته روی 72مگاهرتز تنظیم میشه به همین راحتی.
    _____________________________________
    _____________________________________

  4. تشکرها از این نوشته :


موضوعات مشابه

  1. پاسخ: 7
    آخرين نوشته: 08-04-2015, 12:16
  2. پاسخ: 21
    آخرين نوشته: 08-05-2014, 01:12
  3. معرفی سیستم بلاگدهی درنا بلاگ
    توسط behnam6500 در انجمن گفت و گوي آزاد
    پاسخ: 7
    آخرين نوشته: 15-02-2014, 08:18
  4. یک اشتباه رایج در خنک نگه داشتن سیستم
    توسط arsalan681 در انجمن ترفندهای کامپیوتری/معرفی نرم افزار های مفید
    پاسخ: 0
    آخرين نوشته: 05-11-2010, 01:36
  5. معرفی سیستم dcs
    توسط arsalan681 در انجمن سنسور و ماژول های اندازه گیری
    پاسخ: 1
    آخرين نوشته: 08-02-2010, 21:58

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •