打印

关于外部时钟HSE的设置

[复制链接]
2315|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
lpdyd|  楼主 | 2008-3-31 14:27 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
程序中的设置如下:

  RCC_DeInit();
  RCC_HSEConfig(RCC_HSE_ON);
  HSEStartUpStatus = RCC_WaitForHSEStartUp();
  if(HSEStartUpStatus == SUCCESS)
  {
    RCC_HCLKConfig(RCC_SYSCLK_Div1); 
    RCC_PCLK2Config(RCC_HCLK_Div1); 
    RCC_PCLK1Config(RCC_HCLK_Div2);
    RCC_ADCCLKConfig(RCC_PCLK2_Div6);
    RCC_PLLConfig(RCC_PLLSource_HSE_Div1, RCC_PLLMul_9);
    RCC_PLLCmd(ENABLE);
    while(RCC_GetFlagStatus(RCC_FLAG_PLLRDY) == RESET)
    {
    }
    RCC_SYSCLKConfig(RCC_SYSCLKSource_PLLCLK);
    while(RCC_GetSYSCLKSource() != 0x08)
    {
    }
将HSE作为PLL输入,倍频后作为系统时钟,结果用发光二极管的闪烁来显示.以上程序就是例程提供的.

但程序运行后,我修改了PLL的倍频系数,但发光二极管的闪烁频率未变,应该是HSE未起作用,而系统将HSI作为了系统时钟.
我加了一句:
while(HSEStartUpStatus != SUCCESS)
{
}
结果程序"陷"在这里了(发光二极管没有亮的),所以肯定HSE未起作用.

不知道咋回事,是硬件的问题还是软件的问题?

请高手指点一些经验(设置的,调试的...).
沙发
香水城| | 2008-3-31 14:53 | 只看该作者

硬件是什么样的?晶振启振了吗?

使用特权

评论回复
板凳
lpdyd|  楼主 | 2008-3-31 18:33 | 只看该作者

是硬件上的接触不良

是硬件上的接触不良,呵呵,劳香主费心了.

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

12

主题

18

帖子

0

粉丝