在线时间0 小时
UID122382
ST金币0
蝴蝶豆0
注册时间2008-4-18
新手上路
- 最后登录
- 1970-1-1
|
楼主 |
发表于 2012-10-2 15:40:10
|
显示全部楼层
a0a.1 0b0c
RE:STM32F105 USB HID RCC設定
這是我的RCC設定
void RCC_Configuration(void)
{
RCC_DeInit(); // RCC system reset(for debug purpose)
RCC_HSEConfig(RCC_HSE_ON); // Enable HSE
while(RCC_GetFlagStatus(RCC_FLAG_HSERDY) == 0); // wait until the HSI is ready
RCC_SYSCLKConfig(RCC_SYSCLKSource_HSE);
RCC_PREDIV1Config(RCC_PREDIV1_Source_HSE, RCC_PREDIV1_Div2);
RCC_PLLConfig(RCC_PLLSource_PREDIV1, RCC_PLLMul_9);
RCC_PLLCmd(ENABLE);
while(RCC_GetFlagStatus(RCC_FLAG_PLLRDY) == 0); // wait until the PLL is ready
RCC_HCLKConfig(RCC_SYSCLK_Div1); // HCLK = SYSCLK
RCC_PCLK1Config(RCC_HCLK_Div2); // PCLK1 = HCLK/2
RCC_PCLK2Config(RCC_HCLK_Div1); // PCLK2 = HCLK
RCC_ADCCLKConfig(RCC_PCLK2_Div8); // ADCCLK = PCLK2/8
FLASH_SetLatency(FLASH_Latency_2);
FLASH_HalfCycleAccessCmd(FLASH_HalfCycleAccess_Disable);
FLASH_PrefetchBufferCmd(FLASH_PrefetchBuffer_Enable);
RCC_SYSCLKConfig(RCC_SYSCLKSource_PLLCLK); // Select PLL as system clock source
RCC_PREDIV2Config(RCC_PREDIV2_Div4); // 16MHz / 4 = 4MHz
RCC_PLL2Config(RCC_PLL2Mul_10); // 4MHz * 10 = 40MHz
RCC_PLL2Cmd(ENABLE);
while(RCC_GetFlagStatus(RCC_FLAG_PLL2RDY) == RESET);
RCC_APB1PeriphClockCmd(RCC_APB1Periph_CAN1, ENABLE);
RCC_APB1PeriphClockCmd(RCC_APB1Periph_CAN2, ENABLE);
RCC_OTGFSCLKConfig(RCC_OTGFSCLKSource_PLLVCO_Div3); // Select USBCLK source
RCC_AHBPeriphClockCmd(RCC_AHBPeriph_OTG_FS, ENABLE) ; // Enable the USB clock
RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO, ENABLE);
} |
|