新手上路
- 积分
- 35
- 金钱
- 35
- 注册时间
- 2016-5-25
- 在线时间
- 6 小时
|
1金钱
本帖最后由 tsxdz 于 2018-4-1 18:09 编辑
使用STM32F103RFT6,FLASH为768K,96KRAM,64脚。
移植程序了,结果发现卡在系统时钟初始化了上(用的原子的程序)。
开始使用外部时钟,发现总是卡在while(!(RCC->CR>>17));//等待外部时钟就绪。
于是使用内部时钟,程序如下:
void Stm32_Clock_Init(u8 PLL)
{
unsigned char temp=0;
MYRCC_DeInit();
//RCC->CR|=0x00010000;
//while(!(RCC->CR>>17));
RCC->CR|=0x00000001;
while(!(RCC->CR>>1));
RCC->CFGR=0X00000400; //APB1=DIV2;APB2=DIV1;AHB=DIV1;
PLL-=2;
RCC->CFGR|=PLL<<18;
RCC->CFGR|=1<<16;
FLASH->ACR|=0x32;
RCC->CR|=0x01000000; //PLLON
while(!((RCC->CR>>25)&0x01));
RCC->CFGR|=0x00000002;
while(temp!=0x02)
{
temp=RCC->CFGR>>2;
temp&=0x03;
}
}
结果发现卡在while(!((RCC->CR>>25)&0x01));//等待PLL锁定这句上了。
倍频参数用9,然后改为8,都一样卡在这里了。
本人新手,初次移植程序。头都大了。大神们帮帮我。
|
|