創(chuàng)建并移植K10 BSP包的具體步驟和方法(三)
while((MCG_S MCG_S_IREFST_MASK) != 0x00U) {
/* 判斷FLL參考源是否為外部參考時鐘 */
}
while((MCG_S 0x0CU) != 0x08U) { //等待,直到外部參考時鐘作為MCG的輸出
}
/* 切換到 PBE 模式*/
OSC_CR = OSC_CR_ERCLKEN_MASK;
SIM_SOPT2 = (uint32_t)~(uint32_t)(SIM_SOPT2_MCGCLKSEL_MASK);
MCG_C1 = (MCG_C1_CLKS(0x02) | MCG_C1_FRDIV(0x05) | MCG_C1_IRCLKEN_MASK);
MCG_C2 = (MCG_C2_RANGE(0x02) | MCG_C2_EREFS_MASK);
MCG_C5 = MCG_C5_PRDIV(0x07);
MCG_C6 = (MCG_C6_PLLS_MASK | MCG_C6_VDIV(0x08));
while((MCG_S 0x0CU) != 0x08U) { /*等待,直到外部參考時鐘作為MCG輸出*/
}
while((MCG_S MCG_S_LOCK_MASK) == 0x00U) { /* 等待直到鎖住*/
}
/* 切換到 PEE模式 */
OSC_CR = OSC_CR_ERCLKEN_MASK;
SIM_SOPT2 = (uint32_t)~(uint32_t)(SIM_SOPT2_MCGCLKSEL_MASK);
MCG_C1 = (MCG_C1_FRDIV(0x05) | MCG_C1_IRCLKEN_MASK);
MCG_C2 = (MCG_C2_RANGE(0x02) | MCG_C2_EREFS_MASK);
MCG_C5 = MCG_C5_PRDIV(0x07);
MCG_C6 = (MCG_C6_PLLS_MASK | MCG_C6_VDIV(0x08));
while((MCG_S 0x0CU) != 0x0CU) { /* 等待,直到PLL輸出*/
評論