HAL_BOARD_INIT這是一個硬件初始化函數(shù),主要初始化CC2530的時鐘,LED初始化, SLEEPCMD
&= ~OSC_PD;
\
while (!(SLEEPSTA &
XOSC_STB));
\
asm("NOP");
\
for (i=0; i<504; i++)
asm("NOP");
\
這段代碼用來開啟16M和32M的時鐘!并等待32M(外部晶振提供)穩(wěn)定。
CLKCONCMD = (CLKCONCMD_32MHZ |
OSC_32KHZ); \
while (CLKCONSTA !=
(CLKCONCMD_32MHZ | OSC_32KHZ));
\
SLEEPCMD |=
OSC_PD;
\
這段代碼開啟了32KHz的時鐘,(什么?32KHz晶振不知道到在哪里?)
32kHz的晶振主要用于低功耗的,如果我們不需要低功耗(也就是網(wǎng)絡(luò)中都是Rout節(jié)點和coordinator節(jié)點)那我們就不需要這個32KHz的晶振了。
\
PREFETCH_ENABLE();
\
|