CC2530 系统时钟初始化

                                   CC2530 系统时钟初始化

 系统时钟
     系统时钟是从所选的主系统时钟源获得的,主系统时钟源可以是 32 MHz XOSC 或 16 MHz RCOSC。CLKCONCMD.OSC 位选择主系统时钟的源。注意要使用 RF 收发器,必须选择高速且稳定的 32 MHz 晶振。
      注意改变 CLKCONCMD.OSC 位不会立即改变系统时钟。时钟源的改变首先在 CLKCONSTA.OSC =CLKCONCMD.OSC 的时候生效。这是因为在实际改变时钟源之前需要有稳定的时钟。还要注意CLKCONCMD.CLKSPD 位反映系统时钟的频率,因此是 CLKCONCMD.OSC 位的映像。
        选择了 32 MHz XOSC 且稳定之后,即当 CLKCONSTA.OSC位从 1 变为 0,16 MHz RC 振荡器就被校准。

时钟分为:高速时钟和低速时钟

         高速时钟:CPU、串口等    

         低速时钟:看门狗定时器、睡眠定时器等

 

示例:系统时钟 设置为32MHz晶振,不分频

void InitClock(void)

{

CLKCONCMD &= ~(1<<6); /*选择32MHz晶振*/

while(!(SLEEPSTA & (1<<6))); /*等待晶振稳定*/ 

CLKCONCMD &= ~0x07;    /* 不分频*/           

SLEEPCMD |= (1<<2);/*关闭不用的RC振荡器,可省*/

 

}

查看CC2530 的数据手册,参考一下寄存器:

CC2530 系统时钟初始化_第1张图片

 

CC2530 系统时钟初始化_第2张图片

如果想深入了解,请亲自查看数据手册,会受益匪浅的。

   CC2530的很多IO接口部件运行都与时钟有密切关系,如串口控制器的波特率、 定时器的定时周期、RF电路,我们要能够正确地通过程序来操纵这些接口,必须让CC2530工作在一定的时钟频率下。
         

 

你可能感兴趣的:(CC2530)