首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 嵌入开发 > 单片机 >

STM32 钟表啊

2012-12-30 
STM32 时钟啊、、、STM32的时钟究竟是怎么回事啊?我刚学习STM32f103。但是我用的是3.5.0的库,很多例程写的时候

STM32 时钟啊、、、
STM32的时钟究竟是怎么回事啊?我刚学习STM32f103。但是我用的是3.5.0的库,很多例程写的时候都没有配置时钟,但是看了其他的程序。都有个void RCC_Configuration(void)的函数,我想问用3.5.0的库是不是默认配置了时钟了呢?如果是有默认的配置,那默认的系统时钟是多少的?
那个函数如下:void RCC_Configuration(void)
{
  ErrorStatus HSEStartUpStatus;                    //定义外部高速晶体启动状态枚举变量
  RCC_DeInit();                                    //复位RCC外部设备寄存器到默认值
  RCC_HSEConfig(RCC_HSE_ON);                       //打开外部高速晶振
  HSEStartUpStatus = RCC_WaitForHSEStartUp();      //等待外部高速时钟准备好
  if(HSEStartUpStatus == SUCCESS)                  //外部高速时钟已经准别好
  {
    FLASH_PrefetchBufferCmd(FLASH_PrefetchBuffer_Enable); //开启FLASH预读缓冲功能,加速FLASH的读取。所有程序中必须的用法.位置:RCC初始化子函数里面,时钟起振之后
    FLASH_SetLatency(FLASH_Latency_2);                    //flash操作的延时
      
    RCC_HCLKConfig(RCC_SYSCLK_Div1);               //配置AHB(HCLK)时钟等于==SYSCLK
    RCC_PCLK2Config(RCC_HCLK_Div1);                //配置APB2(PCLK2)钟==AHB时钟
    RCC_PCLK1Config(RCC_HCLK_Div2);                //配置APB1(PCLK1)钟==AHB1/2时钟
         
    RCC_PLLConfig(RCC_PLLSource_HSE_Div1, RCC_PLLMul_9);  //配置PLL时钟 == 外部高速晶体时钟 * 9 = 72MHz
    RCC_PLLCmd(ENABLE);                                   //使能PLL时钟
   
    while(RCC_GetFlagStatus(RCC_FLAG_PLLRDY) == RESET)    //等待PLL时钟就绪
    {
    }
    RCC_SYSCLKConfig(RCC_SYSCLKSource_PLLCLK);            //配置系统时钟 = PLL时钟
    while(RCC_GetSYSCLKSource() != 0x08)                  //检查PLL时钟是否作为系统时钟
    {
    }
  }
}

谁能帮我解答解答啊??
[解决办法]
stm32f10x_systick.c文件里面有个函数System_Init();已经把系统时钟初始化了,初始化为72MHZ,你要是没有看见void RCC_Configuration(void)这个函数,你一定就可以看见System_Init();这个函数
[解决办法]
默认是72MHz
[解决办法]
STM32代表的CM3芯片已经成为主流芯片了,性价比高,开发速度快,是设计者首选。因此深入学习了解该类芯片是很有发展前途的

热点排行