分解MSP430G2553的時鐘系統(tǒng)
MSP430G2553系統(tǒng)時鐘和振蕩器
本文引用地址:http://cafeforensic.com/article/201710/366354.htm時鐘系統(tǒng)由基本時鐘模塊提供支持,此時鐘模塊支持一個32768Hz手表晶體振蕩器、一個內(nèi)部超低功耗低頻振蕩器和一個內(nèi)部數(shù)字控制振蕩器(DCO)?;緯r鐘模塊專為同時滿足低系統(tǒng)成本及低功耗要求而設(shè)計。內(nèi)部DCO提供了一個快速接通時鐘源并可在不到1µs的時間里實現(xiàn)穩(wěn)定?;緯r鐘模塊提供了以下時鐘信號:
•輔助時鐘(ACLK),此時鐘由一個32768Hz手表晶振或內(nèi)部LF振蕩器提供信號源。
•主時鐘(MCLK),CPU所采用的系統(tǒng)時鐘。
•系統(tǒng)子時鐘(SMCLK),外設(shè)模塊所采用的子系統(tǒng)時鐘。
用于校準DCO輸出頻率的DCO設(shè)定值存儲于信息內(nèi)存的A段中。
主DCO特性
1,MSP430G2553能做到超低功耗,合理的時鐘模塊是功不可沒的。但是功能強大的時鐘模塊設(shè)置起來也相對復(fù)雜一些。
2,MSP430G2553的時鐘源有:
?。?),外接低頻晶振LFXT1CLK:低頻模式接手表晶體32768Hz,高頻模式450KHz~8MHz;
?。?),外接高速晶振XT2CLK:8MHz;
?。?),內(nèi)部數(shù)字控制振蕩器DCO:是一個可控的RC振蕩器,頻率在0~16MHz;
(4),超低功耗低頻振蕩器VLO:不可控,4~20KHz 典型值為12KHz;
3,時鐘模塊:430的時鐘模塊有MCLK SMCLK ACLK :
(1),主系統(tǒng)時鐘MCLK:提供給MSP430的CPU時鐘。可以來自LFXT1CLK XT2CLK DCO VLO可選,默認為DCO。
?。?),子系統(tǒng)時鐘SMCLK: 提供給高速外設(shè)??梢詠碜訪FXT1CLK XT2CLK DCO VLO可選,默認為DCO。
?。?),輔助系統(tǒng)時鐘ACLK:提供給低速外設(shè)??蓙碜訪FXT1CLK VLO。
4,內(nèi)部的振蕩器DCO和VLO提供的時鐘頻率不是很精確,隨外部環(huán)境變化較大。
7,系統(tǒng)上電后默認使用的是DCO時鐘,DCO默認的頻率大概為800KHz,但我用示波器觀察的為1.086MHz左右,當(dāng)DCO設(shè)置的過高時,用示波器可以看到波形不再是方波,而是類似于正弦波。
DCO可以用CCS提供的宏定義進行相對比較精確的設(shè)置,如下:
DCOCTL = CALDCO_12MHZ; //DCO設(shè)為12MHz 這種方法設(shè)DCO頻率比較精確,實際測得為12.08MHz左右 正弦波
BCSCTL1 = CALBC1_12MHZ;
用這種方法可以設(shè)置1,8,12,16MHz
宏定義如下:
#ifndef __DisableCalData
SFR_8BIT(CALDCO_16MHZ);
SFR_8BIT(CALBC1_16MHZ);
SFR_8BIT(CALDCO_12MHZ);
SFR_8BIT(CALBC1_12MHZ);
SFR_8BIT(CALDCO_8MHZ);
SFR_8BIT(CALBC1_8MHZ);
SFR_8BIT(CALDCO_1MHZ);
SFR_8BIT(CALBC1_1MHZ);
#endif
評論