/*系统时钟选择32MHZ*/
CLKCONCMD&=~(1<<6);
CLKCONSTA&=~(1<<6);
但这远远不够,初始化时钟,还需要让时钟恢复稳定。因此把上面代码改为
void CLOCKinit()
{
/*晶振选择为32MHZ*/
CLKCONCMD&=~0X40;
/*等待晶振稳定*/
while(!(SLEEPSTA&0X40));
/*TICHSPD128分频,CLKSPD不分频*/
CLKCONCMD&=~0x47;
/*关闭不用的RC振荡器*/
SLEEPCMD|=0x04;
}
是不是很简单呢?