今天分享一個提升MCU系統(tǒng)穩(wěn)定性、增強(qiáng)抗干擾能力的小技巧:如無必要,勿增“主頻”!
就是說:MCU的運(yùn)行主頻率越低,系統(tǒng)的穩(wěn)定性就越好,抗干擾的能力就越強(qiáng)。如果你對產(chǎn)品穩(wěn)定性要求高,那MCU運(yùn)行主頻率的設(shè)定,在滿足系統(tǒng)需求的情況下,要盡量往低的方向來設(shè)定。
這里,我們還是使用CW32來做一個演示,
演示視頻如下 :
http://www.1cnz.cn/v/339708/
從視頻中,我們可以看到,CW32一開始是在主頻48MHz運(yùn)行,后面重新設(shè)定到64MHz運(yùn)行。在黑色“打狗棒”的超強(qiáng)威力攻擊下,CW32在64MHz運(yùn)行時,復(fù)位頻繁,而在48MHz時,只是偶爾有復(fù)位。
當(dāng)然,因?yàn)镃W32本身的芯片設(shè)計(jì),就具有強(qiáng)大的抗干擾能力,所以,視頻中的現(xiàn)象,不同主頻下,現(xiàn)象對比不那么的明顯。有興趣的讀者,可以使用ST或其他芯片,做個實(shí)驗(yàn),現(xiàn)象對比就很明顯了。
有關(guān)時鐘配置的的核心源碼解析如下:
void RCC_Configuration(void) { /* 0. HSI使能并校準(zhǔn) */ RCC_HSI_Enable(RCC_HSIOSC_DIV6); /* 1. 設(shè)置HCLK和PCLK的分頻系數(shù)*/ RCC_HCLKPRS_Config(RCC_HCLK_DIV1); RCC_PCLKPRS_Config(RCC_PCLK_DIV1); /* 2. 使能PLL,通過PLL倍頻到64MHz */ RCC_PLL_Enable(RCC_PLLSOURCE_HSI, 8000000, 8); // HSI 默認(rèn)輸出頻率8MHz __RCC_FLASH_CLK_ENABLE(); FLASH_SetLatency(FLASH_Latency_3); /* 3. 時鐘切換到PLL */ RCC_SysClk_Switch(RCC_SYSCLKSRC_PLL); RCC_SystemCoreClockUpdate(64000000); }
以上代碼為64MHZ的配置。可根據(jù)視頻中的講解配置為48M。
接下來還有更多有趣的測試,如果喜歡請點(diǎn)贊、關(guān)注!
歡迎各位讀者留言交流!
審核編輯:湯梓紅
-
芯片
+關(guān)注
關(guān)注
455文章
50714瀏覽量
423147 -
mcu
+關(guān)注
關(guān)注
146文章
17123瀏覽量
350992 -
抗干擾
+關(guān)注
關(guān)注
4文章
316瀏覽量
34573
發(fā)布評論請先 登錄
相關(guān)推薦
評論