打印
[STM32F0]

请问:STM32F030K6外部晶振不工作,啥原因?

[复制链接]
2525|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
hopewise|  楼主 | 2014-11-12 17:19 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
刚学STM32F030K6,函数void Stm32_Clock_Init(uint8_t PLL)是抄原子的,如下
void Stm32_Clock_Init(uint8_t PLL)
{
            uint8_t temp=0;   
            MYRCC_DeInit();                                    复位并配置向量表
              RCC->CR|=0x00010000;                 选用外部晶振
            while(!(RCC->CR &=0X00020000)); 等待外部时钟就绪
            RCC->CFGR=0X00000400;            
            PLL-=2;                        
            RCC->CFGR|=PLL<<18;                    倍频到48MHZ        
            RCC->CFGR|=1<<16;                              PLLSRC ON
            FLASH->ACR|=0x32;                      
            RCC->CR|=0x01000000;                   PLLON(Bit24)   
            while(!(RCC->CR &=0X02000000));   等待 PLLPLLPLL锁
            RCC->CFGR|=0x00000002;              PLL作为系统时钟
            while(temp!=0x02)                            等待 PLLPLLPLL作为系统时钟设置成功
            {   
                       temp=RCC->CFGR>>2;         
                       temp&=0x03;                 
            }                
           RCC->APB2ENR|=1<<0;                   使能SYSCFG时钟
                           
}



沙发
mmuuss586| | 2014-11-12 17:48 | 只看该作者
看你上面的程序没啥问题,是不是其它文件不对;

https://bbs.21ic.com/forum.php?mod=viewthread&tid=681830
你参考清风的例程看看;

使用特权

评论回复
板凳
hopewise|  楼主 | 2014-11-12 17:55 | 只看该作者
我直接操作寄存器的,测出OSC-IN和OSC-OUT脚没信号输出,仿真时第1条指令不执行,也说明外部晶振不起振。

使用特权

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

本版积分规则

46

主题

468

帖子

3

粉丝