MSP430 G2553 基本時鍾模塊+ (Basic Clock Module+)


一、時鍾源

MSP430的Basic Clock Module+支持的時鍾源有:

  • DCOCLK:內部數字控制振盪器,Internal digitally contrlled oscillator。所有MSP430芯片都有。
    MSP430G2553的DCO支持的最大頻率一般為16MHz,且保存了1MHz、8MHz、12MHz、16MHz四個頻率的校正信息。

  • VLOCLK:內部超低功耗、低頻振盪器,Internal very low power, low frequency oscillator,典型頻率12kHz。所有MSP430芯片都有。使用方便,但精准性不是太高。
    MSP430G2553的VLO頻率在4kHz到20kHz之間,且受溫度、供電電壓影響較大。

  • LFXT1CLK:低頻/高頻晶體振盪器,Low-frequency/high-frequency oscillator。可以是32.768kHz的晶體或外部時鍾(LF模式時),或者是400kHz到16MHz的晶體/晶振/外部時鍾源(HF模式時)。不是所有MSP430芯片都支持。
    MSP430G2553支持的低頻晶體(LFXT1)的典型頻率是32.768kHz,且不支持HF模式。

  • XT2CLK:高頻振盪器,high-frequency oscillator,頻率范圍最多支持400kHz到16MHz,可以是晶體/晶振/外部時鍾源。不是所有的MSP430芯片都支持。
    MSP430G2553不支持XT2。

二、時鍾信號

MSP430的Basic Clock Module+包含了三個時鍾信號:

  • MCLK:主時鍾,Master clock。可以從以上四個時鍾源中選擇其一作為MCLK來源,並支持1/2/4/8分頻。用於CPU和系統。

  • SMCLK:子主時鍾,Sub-main clock,可以從以上四個時鍾源中選擇其一作為SMCLK來源,並支持1/2/4/8分頻。用於特定的外設。

  • ACLK:輔助時鍾,Auxiliary clock,可選擇LFXT1CLK或VLOCLK作為ACLK來源,並支持1/2/4/8分頻。用於特定的外設,特別是低功耗待機時。

典型的時鍾系統框圖如下圖:

留意只有DCO和VLO是所有MSP430的標配,其他的要看具體型號:

 

三、DCO頻率設置

調整DCO頻率可以通過修改BCSCTL1寄存器中的RESELx位段、DCOCTL寄存器的DCOx、MODx位段來實現。如,若要設置DCO頻率為1MHz左右,通過查數據手冊中“DCO Frequency”表可得0.8MHz~1.5MHz頻率對應設置參數為(7,3),即RSELx=7, DCOx=3, MODx=0。但這樣做誤差很大。

BCSCTL1 &= ~BIT3;  // set to DCO(7,3)
BCSCTL1 |= BIT0 + BIT1 + BIT2;
DCOCTL &= ~BIT7;
DCOCTL |= BIT5 + BIT6;

更好的方法是直接將BCSCTL1和DCOCTL寄存器設置成已校准好的值。

BCSCTL1 = CALBC1_1MHZ;
DCOCTL = CALDCO_1MHZ;

這樣做的頻率誤差如下圖所示。

四、ACLK時鍾源設置

ACLK時鍾來源由BCSCTL3寄存器中的LFXT1Sx位段設置,可以切換為LFXT1、VLOCLK或外部時鍾源;由BCSCTL1寄存器中的DIVAx位段設置分頻比。當設置為LFXT1時,還需要根據板子情況設置effective capacitance。

如設置ACLK來源為VLOCLK、四分頻:

BCSCTL3 |= LFXT1S_2; //VLO mode
BCSCTL1 |= DIVA_2;   //ACLK divided by 4

設置ACLK來源為LFXT1、八分頻:

BCSCTL3 |= LFXT1S_0; //32k crystal selected
BCSCTL3 |= XCAP_2;   //~8.5pF effective capacitance (for G2553)
BCSCTL1 |= DIVA_3;   //ACLK divided by 8


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM