A91x9M0 如何超頻 CPU High Speed到 Max=48Mhz
Xtal:16Mhz開3倍頻至48Mhz的設定方式:
void EnableHS ( void ) { /*48M*/ RADIO->CLOCKCTRL = 0x0011381F; //XRC 7 POWER->XRC_CTRL = 0x0200C041; //MCRC 2 if( (FLASH->WAIT_STATE_Item.IS_PLL_Mode) == 0 ) { //ws_cfg(for "new ws_cfg") //EN_PLL + ws_cfg //IS_PLL_Mode + EN_PLL + ws_cfg FLASH->WAIT_STATE = 0x00000003; FLASH->WAIT_STATE = 0x00000007; FLASH->WAIT_STATE = 0x0000002F;//b0~1:ws_cfg=3, b2:EN_PLL=1, b3:IS_PLL_Mode=1, b5:MCUSWS=1 } }
Xtal:24Mhz開2倍頻至48Mhz的設定方式:
void EnableHS ( void ){ RADIO->CLOCKCTRL = 0x0011581F; POWER->XRC_CTRL = 0x0200C0C1; if( (FLASH->WAIT_STATE_Item.IS_PLL_Mode) == 0 ) { //ws_cfg(for "new ws_cfg") //EN_PLL + ws_cfg //IS_PLL_Mode + EN_PLL + ws_cfg FLASH->WAIT_STATE = 0x00000003; FLASH->WAIT_STATE = 0x00000007; FLASH->WAIT_STATE = 0x0000002F;//b0~1:ws_cfg=3, b2:EN_PLL=1, b3:IS_PLL_Mode=1, b5:MCUSWS=1 }}
void EnableCache ( void ){ // Enable the cache in auto power and auto invalidate mode (CCR[0].EN = 1), enable the statistics logic CCR[6].STATISTIC_EN = 1, enable prefetch (CCR[5].SET_PREFETCH = 1) CACHE->CCRItem.EN = ENABLE; CACHE->CCRItem.STATISTIC_EN = ENABLE; CACHE->CCRItem.SET_PREFETCH = ENABLE; // Poll till the cache is enabled (SR[1:0].CS=1) while ( CACHE->SRItem.CS == CACHE_ENABLED );}